资源简介
一个可以显示时间、温度的报警闹铃系统。实现了日期滚动显示,温度滚动显示。一些小的方面还需要自己去完善一下。
代码片段和文件信息
sbit scl1 = P3^3;
sbit sda1 = P3^4;
/*************起始信号**************/
//工作条件sda 产生下降沿 scl 为高电平;
void star_24c02 ()
{
sda1 = 1;
scl1 = 1;
sda1 = 0;
scl1 = 0; //时钟信号复位
}
/*************终止信号**************/
//终止条件sda数据信号产生下降沿 scl 时钟信号为高电平
void stop_24c02()
{
sda1 = 0;
scl1 = 1;
sda1 = 1;
}
/**************应答信号**************/
void ack_24c02()
{
uchar i= 255;
scl1 = 1;
while(sda1 && i--);
scl1 = 0;
}
/**************I2C总线初始化*********/
void init_24c02(void)
{
sda1 = 1;
scl1 = 0;
}
/**************读取一个字节**************/
uchar read_onebyte_24c02(void)
{
uchar i dat;
sda1 = 1;//释放总线
for(i = 0;i < 8;i++)
{
scl1 = 1;
dat = dat<<1;
if(sda1)dat = dat|0x01;//先读取高位,放到dat 的低位;
scl1 = 0;
}
sda1 = 1;
scl1 = 0;
return (dat);
}
/*************写入一个字节**************/
void write_onebyte_24c02(uchar dat)
{
uchar i;
for(i = 0;i < 8;i++)
{
sda1 = (bit)(dat & 0x80);
dat = dat << 1;
scl1 = 1;
scl1 = 0;
}
sda1 = 1;scl1 = 0;
}
/*************对某个地址写入一个字节的数据***/
void write_add_dat_24c02(uchar adduchar dat)
{
star_24c02();
write_onebyte_24c02(0xa0);
ack_24c02();
write_onebyte_24c02(add);
ack_24c02();
write_onebyte_24c02(dat);
ack_24c02();
stop_24c02();
}
/*************读取某个地址一个字节的数据*****/
uchar read_add_dat_24c02(uchar add)
{
uchar dat;
star_24c02(); //开始
write_onebyte_24c02(0xa0); //从站地址
ack_24c02(); //应答
write_onebyte_24c02(add); //字节地址
ack_24c02(); //应答
star_24c02(); //开始
write_onebyte_24c02(0xa1); //从站地址
ack_24c02(); //应答
dat = read_onebyte_24c02(); //读取数据
stop_24c02(); //结束
return(dat);
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-12-21 18:46 单片机课程\
目录 0 2017-12-21 20:20 单片机课程\仿真\
文件 57722 2017-12-21 20:20 单片机课程\仿真\电路.DSN
文件 1078 2017-12-21 20:20 单片机课程\仿真\电路.PWI
目录 0 2017-12-21 20:20 单片机课程\程序\
文件 1800 2017-12-21 18:59 单片机课程\程序\at24c02.c
文件 3894 2017-12-21 20:19 单片机课程\程序\display.c
文件 2689 2017-12-21 20:18 单片机课程\程序\ds1302.c
文件 1493 2017-12-21 19:18 单片机课程\程序\key.c
文件 2215 2017-12-21 20:20 单片机课程\程序\main.c
文件 6160 2017-12-21 20:20 单片机课程\程序\main.LST
文件 32388 2017-12-21 20:20 单片机课程\程序\main.OBJ
文件 26056 2017-12-21 20:20 单片机课程\程序\程序
文件 8463 2017-12-21 20:20 单片机课程\程序\程序.hex
文件 25 2017-12-21 20:20 单片机课程\程序\程序.lnp
文件 33346 2017-12-21 20:20 单片机课程\程序\程序.M51
文件 73540 2017-12-21 20:20 单片机课程\程序\程序.plg
文件 58533 2017-12-21 20:20 单片机课程\程序\程序.uvopt
文件 13226 2017-12-21 20:20 单片机课程\程序\程序.uvproj
文件 0 2017-12-21 18:54 单片机课程\程序\程序_uvproj.bak
- 上一篇:模式识别作业-习题解答+代码.docx
- 下一篇:信号与系统.zip
相关资源
- 单片机仿真软件proteus6.7免安装绿色版
- 基于SPCE061A单片机的图形液晶模块的驱
- 基于SPCE061A单片机汇编语实现的流水灯
- 基于SPCE061A单片机的图形液晶模块的驱
- 物联网家居系统中基于单片机的多路
- 基于IAP15F2K61S2单片机的多路温度巡检
- 如何用单片机控制舵机及程序详细
- 单片机控制舵机电路图
- 基于MSP430单片机的实时多任务操作系
- 基于STM32F103C8单片机的晶联讯电子JL
- 广联达6.0写锁包,2020年11月最新
- 基于51单片机的交通信号灯程序
- 14284969_《STM32单片机应用与全案例实践
- GSM监控系统51单片机设计
- 精选单片机设计与制作30例
- 中颖单片机入门与实战
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
- 基于32位单片机MC68HC376的高可靠性系统
- MC68HC08单片机程序设计速成
- PIC单片机人机接口模块4×4行列式
- PIC单片机人机接口模块4×4行列式
- 基于51单片机的多通道数据采集范围控
- ADC0832ADC0809DAC0832三种芯片程序,c程序
- 数据采集系统——ADC0808的应用
- 基于51单片机的直流电机转速控制及显
- 单片机控制步进电机PMW的驱动与放大
- 单片机驱动4相步进电机proteus仿真
- 使用PIC单片机开发的简易数字电压表
- 飞思卡尔单片机.s19文件方法详解
评论
共有 条评论