全球旧事资料 分类
K,形成下降沿脉冲读数据如果读出的数据是1将1取出,写在dat的最高位将SCLK置于高电平,为下降沿读数据时做好准备稍作等待,使硬件做好准备连续读8个二进制位数据
fdelay2同理,根据如下所述的时序图,写操作程序为:
voidWrite1302uchardatuchariSCLK0delay2fori0i8iDATAdat0x01在后)delay2SCLK1delay2SCLK0dat1稍作等待,使硬件做好准备上升沿写入数据稍作等待,使硬件做好准备重新拉低SCLK,形成脉冲将dat的各数据位右移1位,准备写入下一个数据位取出dat的第0位数据写入1302(低位在前,高位拉低SCLK,为脉冲上升沿写入数据做好准备稍作等待,使硬件做好准备连续写8个二进制位数据
322LCD1602读写程序和DS1302一样,LCD1602也有自己的读写时序,时序图如下:写的时候按
f照LCD1602的原理可知,RSL,RWL,D0D7指令码,E高脉冲;从原理图再来理解,首先是将RS拉低,RW拉低(复位后都为高电平),延时一段时间TSP1将使能端口拉高,这个时候才可以写入有效的数据。
写操作时序读操作时序
LCD1602读写操作时序
按照此时序图,编制的写数据程序如下:voidwrite_dateuchardatelcdrw0写数据线必须为低电平才允许写入命令或数据lcdrs1RS数据线为高时可以写入数据(为低为写入指令)lcde
0拉低使能信号电平,为上升沿写入数据做好准备delay1短暂延时,使硬件做好准备P0date将数据送往P0口delay1lcde
1上升沿将数据写入液晶模块delay1lcde
0拉低使能信号在这个程序中,没有读的程序。原因是51单片机的速度和LCD1602的处理速度差不多,不再需要向1602读取前面的数据就已经处理完毕,直接向里边写数据就可以了,所以程序中省去了读的操作。
4
调试与设计结果
f将Keil软件生成HEX文件写入AT89C52单片机后,能够成功的显示日期和时间基本上完成了时钟的功能。
参考文献
1DS1302中文资料广州广州周立功单片机发展有限公司20072冯大捷基于DS1302的电子时钟设计J海南师范大学自动教育学系《科技世界》2012年02期
fr
好听全球资料 返回顶部