ImageVerifierCode 换一换
格式:DOCX , 页数:6 ,大小:16.10KB ,
资源ID:21251170      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/21251170.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(51单片机+带字库液晶12864+DS1302数字时钟C源程序无按键修改功能Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

51单片机+带字库液晶12864+DS1302数字时钟C源程序无按键修改功能Word文档格式.docx

1、sbit RST = P35;/ DS1302 复位bit ReadRTC_Flag;/读 DS1302 全局变量/* 12864 端口定义*/#define LCD_data P0/带字库液晶 12864 数据口sbit LCD_RS = P24;/寄存器选择输入sbit LCD_RW = P25;/液晶读/写控制sbit LCD_EN = P26;/液晶使能控制sbitPSB=P21;/并口控制RES=P23;uchar code dis1 = 电子设计天地; /液晶显示的汉字uchar code dis2 = 有志者,事竟成!uchar code dis4 = 0,123456789 u

2、nsigned char temp;#define delayNOP(); _nop_();_nop_(); void lcd_pos(uchar X,uchar Y); /确定显示位置unsigned char l_tmpdate7=0,7,16,19,10,1,9;/秒分时日月周年 09-10-19 16:07:00code unsigned char write_rtc_address7=0x80,0x82,0x84,0x86,0x88,0x8a,0x8c; /秒分时日月周年 最低位读写位code unsigned char read_rtc_address7=0x81,0x83,0x8

3、5,0x87,0x89,0x8b,0x8d;void Write_Ds1302_byte(unsigned char temp);void Write_Ds1302( unsigned char address,unsigned char dat ); unsigned char Read_Ds1302 ( unsigned char address );void Read_RTC(void);/read RTC void Set_RTC(void); /set RTCvoid InitTIMER0(void);/inital timer0/*/* */* 延时函数 */void delay(

4、unsigned int m) /延时程序unsigned int i,j; for(i=0;im;i+)for(j=0;j10;j+);/*检查 LCD 忙状态 */*lcd_busy 为 1 时,忙,等待。lcd-busy 为 0 时,闲,可写指令与数据。 */*/ bit lcd_busy()bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP();result = (bit)(P0&0x80); LCD_EN = 0; return(result);/*写指令数据到 LCD */*RS=L,RW=L,E=高脉冲,D0-D7=指

5、令码。void lcd_wcmd(uchar cmd)while(lcd_busy(); LCD_RW = 0; _nop_();P0 = cmd; delay(1);/*写显示数据到 LCD */*RS=H,RW=L,E=高脉冲,D0-D7=数据。/*/ void lcd_wdat(uchar dat) LCD_RS = 1;P0 = dat;/* LCD 初始化设定 */*/ void lcd_init()P0=0xFF;P2=0xFF;delay(40);PSB=1; /并口方式。delay(1);RES=0;RES=1;delay(10); lcd_wcmd(0x30); delay(

6、100); delay(37); lcd_wcmd(0x08); lcd_wcmd(0x10);lcd_wcmd(0x0C); /显示开,关光标 delay(100);lcd_wcmd(0x01); /清除 LCD 的显示内容 delay(100);lcd_wcmd(0x06);void main()uchar i; InitTIMER0();Set_RTC(); lcd_init();/初始化 LCDwhile(1)if(ReadRTC_Flag)ReadRTC_Flag=0;Read_RTC();lcd_pos(0,0); /设置显示位置为第一行的第 1 个字符i = 0;while(di

7、s1i != 0) /显示字符lcd_wdat(dis1i); i+;lcd_pos(1,0); /设置显示位置为第二行的第 1 个字符while(dis2i !lcd_wdat(dis2i); /显示字符i+;lcd_pos(2,0);lcd_wdat(dis4l_tmpdate6/16); /DS1302 是 BCD 码,进行处理得到十位与个位数。lcd_pos(2,1);lcd_wdat(dis4l_tmpdate6%16);lcd_pos(2,2);lcd_wdat(-);lcd_pos(2,3);lcd_wdat(dis4l_tmpdate4/16);lcd_pos(2,4);lcd

8、_wdat(dis4l_tmpdate4%16);lcd_pos(2,5);lcd_pos(2,6);lcd_wdat(dis4l_tmpdate3/16);lcd_pos(2,7);lcd_wdat(dis4l_tmpdate3%16); /设置显示位置为第三行的第 1 个字符lcd_pos(3,0); /设置显示位置为第四行的第 1 个字符lcd_wdat(dis4l_tmpdate2/16); lcd_pos(3,1);lcd_wdat(dis4l_tmpdate2%16); lcd_pos(3,2);: lcd_pos(3,3);lcd_wdat(dis4l_tmpdate1/16); lcd_pos(3,4);lcd_wdat(dis4l_tmpdate1%16); lcd_pos(3,5); lcd_pos(3,6);lcd_wdat(dis4l_tmpdate0/16);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1