嵌入式系统课程设计报告哈工程万年历.docVIP

嵌入式系统课程设计报告哈工程万年历.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文档。上传文档
查看更多
嵌入式系统课程设计报告哈工程万年历

课程设计报告 数字万年历的设计与实现 班级: 学号: 姓名: 教师评语: 教师签名: 2015年9月 课程设计题目 数字万年历的设计与实现 主要内容 显示年、月、日和时间,支持LED和LCD显示 时间显示方式两种:文本方式,图形方式 时间日期设置功能,闹钟设置功能,整点报时功能 显示当日周数功能,显示当月日历功能 支持触摸屏操作和小键盘输入 采用的工具方法 UP-NETARM3000 嵌入式开发平台 ADS1.2集成开发环境 JTAG仿真器驱动程序 超级终端通信程序 进度安排 第1天 系统的初步设计 第2-5天 编代码,实现系统功能 第6-7天 系统的调试与完善 参考资料 [1]《基于ARM的嵌入式系统设计实验与实践教程》,清华大学出版社,2011. [2]《嵌入式系统开发原理与实践》,清华大学出版社,2005. [3]《ARM微处理器应用开发技术详解与实例分析》电子科技大学出版社,2007 1. 题目 数字万年历的设计与实现 2. 系统简介 二十一世纪的今天,最具代表性的计时产品就是电子万年历,它是近代世界钟表业界的第三次革命。使计时产品的走时日差从分级缩小到1/600万秒,从原有传统指针计时的方式发展为人们日常更为熟悉的夜光数字显示方式,直观明了,并增加了全自动日期、星期以及其他日常附属信息的显示功能,它更符合消费者的生活需求。因此,电子万年历的出现带来了钟表计时业界跨跃性的进步。 如今电子万年历飞入了寻常百姓家,挂式、台式以及带装饰画面等丰富的电子万年历数不胜数,不但满足了精准的计时需求,还将计时带上了科技时尚的味道。ARM嵌入式技术可进行多种功能的设置,如闹钟、报时、日历查询、语音等;并改善了很多原有石英钟不能解决的问题,例如:数字夜光显示、数据存储以及全自动温度检测等功能;这给传统计时消费带来了新的动力,越来越多的消费者选择了电子万年历。所以,我们这次嵌入式课程设计的题目选为电子万年历。 本数字万年历系统实现了以下功能: 1.显示年、月、日和时间,支持LED和LCD两种方式显示; 2.时间显示方式有两种:文本方式,图形方式; 3.时钟加入背景图片,并且图片可以根据季节变化,整体界面美观; 4.能通过小键盘调节万年历的年、月、日、时、分、秒; 5.定时闹钟提醒功能和整点报时功能; 6.显示当月日历,显示当天星期功能; 7.掉电后无需重新设置时间和日期。 3. 系统设计 本次设计是基于ARM微处理芯片并用ADS1.2开发完成的,该万年历能够显示年、月、日、星期、时、分、秒,还有闹钟和整点报时功能,并且可任意设定时间和日期。显示年、月、日和时间的方式均支持LED和LCD显示,时间的LCD显示方式又分为两种,一种是文本方式,另一种是图形方式,再配上背景图片,界面非常美观。它还支持触摸屏操作和小键盘,修改时间和日期可以通过小键盘来调节。并且掉电后无需重新设置时间和日期。本系统采用多任务设计。除了系统已定义的任务外,再定义了Main_Task_Prio、Rtc_Disp_Task_Prio和LED_Display_Task_Prio三个任务,任务优先级分别为12、14和和11。通过Main_Task_Prio任务中响应键盘和触摸屏消息,可以对时钟和闹钟进行设置。通过Rtc_Disp_Task实现系统时钟和日历的显示和更新,并判断闹钟时间是否到达并做到达后的相应处理以及判断是否到达整点并进行整点报时。通过LED_Display_Task_Prio实现LED对时间、日期的显示和更新。使用多任务系统中的信号量保证多个任务同时对系统的一个资源(系统时钟)访问而不产生冲突。 3.1 LED显示时间和日期 万年历启动后,按下“NumLock”按键可以切换LED显示日期或时间,其中年、月、日、时、分、秒均为2位数字,并且每两个数字之间用“-”隔开,并且其显示的时间和日期与LCD屏幕上的时间和日期保持一致,其实现函数是在任务LED_Display_Task_Prio中,任务实时获取系统当前的时间和星期存放于led_currenttime中,再根据显示时间或日期的标识符led_flag的数值来进入不同的分支以显示时间或日期,其中currenttime是一个自定义的结构体,它存放了当前时间的年、月、日、时、分、秒。通过函数Get_Rtc(led_currenttime)取得当前的时间信息,并通过调用LED相关的API函数将时间显示出来,通过WriteSDIO(ZLG7289_CMD_DATA0|0)使得,第一个数码管亮,同样使用WriteSDIO(ZLG7289_CMD_DATA0|1)数码管以方式0译码,第二个数码管亮,按照同样的方法就可以使得其

文档评论(0)

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

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

1亿VIP精品文档

相关文档