带温度显示的万年历汇.docVIP

  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文档。上传文档
查看更多
带温度显示的万年历汇

单片机课程设计报告 题目 : 带温度显示的万年历 院系 : 电气信息工程系 专业 : 通信工程 组长 : 学号 : 组员1 : 学号 : 组员2 : 学号 : 组员3 : 学号 : 组员4 : 学号 : 指导教师 : 201*年12月18日 带温度显示的万年历 设计报告 一、选题目的和意义: 二十一世纪的今天,最具代表性的计时产品就是电子万年历,它是近代世界钟表业界的第三次革命。第一次是摆和摆轮游丝的发明,相对稳定的机械振荡频率源使钟表的走时差从分级缩小到秒级,代表性的产品就是带有摆或摆轮游丝的机械钟或表。第二次革命是石英晶体振荡器的应用,发明了走时精度更高的石英电子钟表,使钟表的走时月差从分级缩小到秒级。第三次革命就是单片机数码计时技术的应用(电子万年历),使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期、温度以及其他日常附属信息的显示功能,它更符合消费者的生活需求!因此,电子万年历的出现带来了钟表计时业界跨跃性的进步……  我国生产的电子万年历有很多种,总体上来说以研究多功能电子万年历为主,使万年历除了原有的显示时间,日期等基本功能外,还具有闹铃,报警等功能。商家生产的电子万年历更从质量,价格,实用上考虑,不断的改进电子万年历的设计,使其更加的具有市场。 图(1) 系统框图 2、设计步骤 (1)将LCD液晶的数据口接到P0口,P0口接上拉电阻,P2.0、P2.1、P2.2分别接到1602的RS、RW和E端口。 (2)将DS1302的SCLK,I/O,复位键接到P1.0,P1.1,P1.2; (3)将温度芯片DS18B20接到P2.3。 (4)按键接到P3口上,通过P3.7来控制蜂鸣器的发声,起到闹钟的目的。 四、实验设计(相关原理框图): 1、主程序流程图(2) 图(2) 主程序流程图 时间调整部分的设计流程图(3): 图(3) 时间调整 主程序: #include reg52.h #include intrins.h #include ds1302.h #include LCD1602.h #include ds18b20.h #define uchar unsigned char #define uint unsigned int sbit gon=P3^4 ; sbit e=P3^3 ; sbit xiang=P3^7; sbit jia=P3^6 ; sbit jian=P3^5 ; sbit a1=P1^3; sbit a2=P1^4 ; sbit a3=P1^5 ; sbit a4=P1^6 ; sbit a5=P1^7 ; void gong_neng(); void dingshi(); void key(); uchar times[9]; uchar date[9]; uchar huan; uchar tp=0,temp1=0,temp2=0,temp3=0,temp4=0,temp5=0,neng=0,d_shi=0,d_fen=5,d_shi_g=0, d_fen_g=5,d_shi_s=0,d_fen_s=0,d_flag=0,kai=0,s_flag=0,mingzi=0,temp6=0,temp7=0; uint deng=0; void change() { // 时间的转换 times[0]=time_1302[2]/10+0; times[1]=time_1302[2]%10+0; times[2]=:; times[3]=time_1302[1]/10+0; times[4]=time_1302[1]%10+0; times[5]=:; times[6]=time_1302[0]/10+0; times[7]=time_1302[0]%10+0; // 日期的转换 date[0]=time_1302[6]/10+

文档评论(0)

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

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

1亿VIP精品文档

相关文档