- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用AT89C51与DS1302做万年历c语言编程
//写的时候,是低电平改变数据,上升沿送入数据//读的时候,是低电平读入数据,下降沿使得从设备把数据放到总线上 //读的时候,是低电平读,但没有读出,提供下降沿使得从设备把数据放到总线上#includereg51.h#includeintrins.h#define uchar unsigned char#define uint unsigned intsbit rs=P2^4;sbit rw=P2^5;sbit en=P3^6;sbit reset=P3^3;sbit sclk=P3^0;sbit io=P3^1;uchar str1[]=date of today is:;uchar init[]={0x00,0x00,0x21,0x21,0x10,0x01,0x04};//秒,分,时,日,月,星期,年//void delay(){uchar j;for(j=250;j0;j--);}//-------------------液晶模块-----------------//void en_toggle(){??en=0;??//_nop_();delay();??en=1;delay();// _nop_();??en=0;}?????????????//注意必须加延时,否则会出问题的void is_ready(){???P2=0x00;//设置为输入口 //注意:现实中应该送0xff???rs=0;???rw=1;???en=1;???while(bflag);?? en=0;}void write_cmd(uchar cmd){??is_ready();??rs=0;??rw=0;??P2=cmd;??en_toggle();??_nop_();}void write_data(uchar indata){??is_ready();??rs=1;??rw=0;??P2=indata;??en_toggle();??_nop_();}void write_str(uchar addr,uchar *p){uchar i; write_cmd(addr);while(p[i]!=\0){write_data(p[i]);??i++;}}void write_position(uchar row,uchar col){uchar p;if(row==1){p=0x80+col-1;??write_cmd(p);}else{p=0xc0+col-1;??write_cmd(p);???}}void init_lcd(){write_cmd(0x38);write_cmd(0x0c);write_cmd(0x06);write_cmd(0x01);//清屏幕}//------------液晶模块结束---------------------
//-----------ds1302模块开始-------------------//注意点:sclk的上升沿输入数据,sclk的下跳沿输出数据//读写时都是从第0位开始void write_byte(uchar inbyte){uchar i;for(i=8;i0;i--){??sclk=0;???//写的时候低电平改变数据??if(inbyte0x01)??????io=1;??else??????io=0; ??sclk=1;??//写的时候高电平,把数据写入ds1302??_nop_();??inbyte=inbyte1;}}uchar read_byte() //sclk的下跳沿读数据{uchar i,temp=0; io=1;??????????//设置为输入口for(i=7;i0;i--){???sclk=0;???if(io==1)???temp=temp|0x80;???else???temp=temp0x7f;???sclk=1;???????//产生下跳沿???temp=temp1;}return (temp);}//----------往ds1302的某个地址写入数据-------------void write_ds1302(uchar cmd,uchar indata){??reset=1;??write_byte(cmd);??write_byte(indata);??reset=0;??sclk=0;}//----------读ds1302某地址的的数据-----------------uchar rea
您可能关注的文档
- 莫让数形结合能力培养机会流失——以椭圆标准方程推导教学为例.pdf
- C++二进制输入输出流接口设计.pdf
- 物权变动原因————基于法律变动与非基于法律变动区别.doc
- 三大诉讼法比较(强烈推荐).doc
- 浅论我国物权变动模式.doc
- 农夫山泉水测试步骤与话术4.26.doc
- 基于线路图分析的汽车后排背板生产线改进研究.pdf
- HY-7P.8-08二氧化碳产品OPRP与HACCP计划.doc
- 臧小林《中国报业》:担任助理职务领导干部角色定位与媒体应对策略分析4.26.doc
- 张勤主编(畜牧兽医)生物统计学方面习题作业与答案.doc
- 上海海洋大学《海洋环境分析技术》课件-21化学发光分析法.pdf
- 上海海洋大学《海洋环境分析技术》课件-20分子荧光分析法.pdf
- 上海海洋大学《海洋环境分析技术》课件-22色谱分离过程.pdf
- 上海海洋大学《海洋环境分析技术》课件-25气相色谱仪与固定液.pdf
- 上海海洋大学《海洋环境分析技术》课件-24色谱定性定量方法.pdf
- 上海海洋大学《海洋环境分析技术》课件-26气相色谱检测器.pdf
- 上海海洋大学《海洋环境分析技术》课件-29液相色谱固定相与流动相.pdf
- 上海海洋大学《海洋环境分析技术》课件-27气相色谱分离条件的选择.pdf
- 上海海洋大学《海洋环境分析技术》课件-28液相色谱仪器与类型.pdf
- 上海海洋大学《海洋环境分析技术》课件-3 原子光谱和分析光谱.pdf
文档评论(0)