AVR实验报告.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文档。上传文档
查看更多
数字温度计及可预置时钟设计报告 小组队员:何永秋,叶子荣,姚杰铃 (班级:10电子1班,学号:201024121101 201024121112 201024121128) 指导老师:元泽怀 摘 要:本系统采用AVR单片机的atmel16芯片来实现时钟的显示和温度的显示,而且时钟还可以预置闹钟和调整时间,而且温度计还有预警功能,给生活带来无数的信息以及能为我们的工作带来一定的方便,可预置闹钟性能好,而且精准,能及时反映当时是否到达预置时间,温度报警器更加能发挥它的预警功能,能使我们了解到温度的重要性。而且两个作品结合起来是能使材料使用减少很多的优点。 关键词:温度计,atmel16单片机,闹钟,断电保留时间 1、方案论证与比较 方案一:采用单片机作为核心控制器,分别用两个atmel16来分别控制两个装置,实现闹钟和温度计的使用。这样可以很好的使用书本上的理论知识就能解决有关的材料运用以及制作方便,而且大体,程序比较简单,因为书本上都能找到有关的材料,只要略修改一下就能使用了。图一和图二分别为闹钟和温度计的概念图。 方案二:我们直接运用所学到的知识,把方案一的分开改为综合,也就是说,我们使用一个单片机,就能做出两个不同功能的实验品,而且,这样做的好处是能减少使用的空间以及材料,我们社会现在主张的是绿色生活,低能耗,低输出,高收入,所以我们现在使用材料大大减少,所以也适应现今社会的大潮流,我们也能实现低碳生活的标准,实验品也能通过我们的程序员来修改,把空出的PC口来运用成为我们的作品。下图能为你解析我们的作品的实际概念图。 综上所述,在方案二中,由于使用的材料还有空间比较少,而且能实现出一个单片机做出两个作品的优先性,所以我们使用了方案二,毕竟现今社会的大潮流是低能耗,我们也要使用减少材料和空间的新型工艺。 2、系统设计与理论分析 2.1、单片机系统图 2.2、温度模块的主要功能 (1)测温范围-30℃~+120℃。 (2)测量误差在±0.5℃之内。 (3)能正常显示测量的温度。 (4)增加了温控功能,并可修改设置温控的上下限。 (5)增加了温控报警功能。 (6)主要使用了DS1820来实现以上功能。 2.3、数字电子钟模块的主要功能: (1)时钟可以显示年月日、时分秒。 (2)可预置闹钟,时钟到达预置的时间时,蜂鸣器能发出声音。 (3)主要使用了DS1302来实现以上功能。 2.4、LED显示器的作用图 用红外来远控增加和减少 红外修改定时器的时间之后,用红外把时间存到EEP 红外切换更改的状态 红外按一下可以显示星期几,最高温度最低温度。再一下就是闹钟的开关。 3、主要软件的程序图和流程图。 #include iom16v.h #define uchar unsigned char //变量类型的宏定义 #define uint unsigned int /*修改以下端口就行*/ #define RTC_DDR DDRC #define RTC_PORT PORTC #define RTC_PIN PINC #define RTC_CLK PC5 //时钟 #define RTC_DATA PC6 //数据 #define RTC_CS PC7 //复位 //读写命令 #define RD 0x01 //读 #define WR 0x00 //写 //寄存器地址 #define C_SEC 0x80 //秒 #define C_MIN 0x82 //分 #define C_HR 0x84 //时 #define C_DAY 0x86 //日 #define C_MTH 0x88 //月 #define C_WK 0x8A //星期 DATE #define C_YR 0x8C //年 #define C_WP 0x8E //控制(写保护) #define C_BURST 0xBE //时钟多字节 //配置 #define CLK_HALT 0x80 //停止时钟控制位 SECOND bit7 #define CLK_START 0x00 //启动时钟 #define M12_24 0x80 //12/24小时值选择位 HOUR bit7 #define PROTECT 0x80 //写保护控制位 CONTROL bit7 #define UPROTECT 0x00 //写保护控制位 CONTROL bit7 /***********************

文档评论(0)

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

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

1亿VIP精品文档

相关文档