1602用四线驱动+DS1302+DS18B20+89C52构成的带温度时钟_修正.docVIP

1602用四线驱动+DS1302+DS18B20+89C52构成的带温度时钟_修正.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1602用四线驱动DS1302DS18B2089C52构成的带温度时钟_修正

1602用四线驱动+DS1302+DS18B20+89C52构成的带温度时钟_修正 //1602用四线驱动+DS1302+DS18B20+89C52构成的带温度时钟 Post By:2011-1-23 22:01:00 [只看该作者] //1602四线驱动+DS1302+DS18B20+89C52构成的带温度时钟 //用的是以前做pt2322 5.1声道的控制部分旧layout,没来得及改了所以没有开关,和未有DS18B20直接拉了几条线到学习板上 //直上程序供分享: /*===================================================== 用AMC1602BR-B-Y6WFD-SP四线驱动+DS1302+DS18B20+89C52构成的带温度时钟 P0^0=接YJD1602的 4脚 RS P0^1=接YJD1602的 5脚 RW P0^2=接YJD1602的 6脚 EN P0^4=接YJD1602的11脚 D4 P0^5=接YJD1602的12脚 D5 P0^6=接YJD1602的13脚 D6 P0^7=接YJD1602的14脚 D7 程序编写:LBQ691477940 23-01-2011 16:30 源程序在我的LCD屏不能使用,上网查没找到这个程序的修正版,只好自己动手 本人基本没有完整的编写过程序,大部分都是修改别人的作品,这次只能自己动手 型幸好当初买 1602屏的时候有要过资料,参照资料,化了两天编写测试程序,结果 发现是屏的主控芯片的问题,初始化要求的时序不同,作者的这个屏不知道是什么 主控,我的屏除了作者的这个程序有问题,其它的在网上搜的都可以运行,包含4线 但是,我把别人的初始化程序一直到这个程序里,同样不能运行,没有明白,后来发现 资料上的一段汇编的初始程序,尝试着用C写出来,同时写了个测试字符的程序,在实 板调试通过后,移植到这程序里,同时修改了三个显示数据的命令,结果程序运行了 兴奋之余,发到百度上,当初就是在百度下载的这个程序,没有经过作者同意,希望对 感兴趣的人有所帮助 s210603 2011.12.04 ======================================================*/ #include reg52.h #include intrins.h #define nop _nop_() #define PtData P0 //定义连接口线 #define uint unsigned int #define uchar unsigned char sbit BF = P0^7;//判断LCM是否忙 sbit rs=P0^0;//接YJD1602的4脚 sbit rw=P0^1;//接YJD1602的5脚 sbit en=P0^2;//接YJD1602的6脚 sbit DQ=P2^7; sbit spk=P2^3; sbit a0=ACC^0; sbit a1=ACC^1; sbit a2=ACC^2; sbit a3=ACC^3; sbit a4=ACC^4; sbit a5=ACC^5; sbit a6=ACC^6; sbit a7=ACC^7; sbit k1=P1^7; //调整模式 sbit k2=P1^6; //+按钮 sbit k3=P1^5; //-按钮 sbit k4=P1^4; sbit clock_clk =P2^2;//ds1302_clk(时钟线7) sbit clock_dat =P2^1;//ds1302_dat(数据线6) sbit clock_Rst =P2^0;//ds1302_Rst(复位线5) uint idata tdat; //温度值变量 char idata sett; //模式计数变量 char tflag; //温度正负标志 char idata disp_buf1[16];//1602显示缓冲区1(即上排16个字符) char idata disp_buf2[16];//1602显示缓冲区2(即下排16个字符) char idata timedata[7];//存放时间值变量 uchar code table[]= YJD1602 CLOCK ; char idata temdata[5]; //存放温度值变量 uchar i; uchar code self_dat[]={ 0x00,0x00,0x00,0x00,0xff,0x00,0x00,0x00, //一,代码 0x04 0x00,0x00,0x00,0x0e,0x00,0xff,0x00,0x00, //二,代

文档评论(0)

bh10099 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档