C51课程设计报告(液晶时钟).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文档。上传文档
查看更多
C51课程设计报告(液晶时钟)

深圳职业技术学院 Shenzhen Polytechnic 嵌入式C语言课程设计报告 课题: 学院: 班级: 姓名: 目录 一、设计方案 1 1、功能简介 1 2、开发测试环境选择 1 二、液晶时钟程序设计 1 1、功能状态转换图 1 2、主要功能模块 2 2.1主显示模块 2 2.2功能选择模块 2 2.3时间修改模块 3 2.4闹铃修改模块 3 2.6其他辅助模块函数以及变量 4 三、小结 4 四、附录 5 1、使用说明 5 2、参考文献资料 5 3、附表1 6 一、设计方案 1、功能简介 本文所设计的简易电子时钟可输出当前时间以及闹铃时间,并可通过机械按键来实现修改当前时间、修改闹铃时间、退出修改以及控制闹铃的打开和关闭,并通过1602型号的液晶屏显示出不同操作时的不同界面。本程序共设计按键5个,按键及功能分别是1键:选择功能界面下选择时间修改、时间和闹铃修改状态下的增加“1”计数;2键:选择功能界面下选择闹铃修改、时间和闹铃修改状态下的减少“1”计数;3键:主显示界面下进入选择功能界面、时间和闹铃修改状态下切换修改项目、修改完成退回主显示界面;4键:时间和闹铃修改状态下直接退回主显示界面;5键:主显示界面下控制闹铃的开关。 2、开发测试环境选择 开发软件选择了ARM公司的KeiluVision4,仿真软件选择了英国Labcenter electronics公司的proteus7 professional,测试硬件选择了普中的HC6800开发箱。首先在KeiluVision4下进行程序设计,编译通过后用proteus7 professional进行仿真并尝试下载到开发箱中进行操作,最后下载到开发箱中进行操作演示。 二、液晶时钟程序设计 1、功能状态转换图 2、主要功能模块 注:本文中提到的函数均见附表1的液晶时钟源程序中,本次使用的是1602液晶。 2.1主显示模块 主显示模块包含了时间显示模块void TimeDisplay(void)函数,其运行过程为首先读取初始值,再通过定时器中断TO的中断服务函数void T0_int () interrupt 1 来进行秒计时并通过void TimeRunning(void)函数进行时间的加计数和进位运算;闹铃显示模块void AlarmDisplay(void),其运行过程为首先读取初始值,再通过void AlarmRunning(void)来进行比较,如果预设时间与当前时间相等就将响铃标记变量SoundFlage_1置为1,进而引发主函数中的响铃事件。在闹铃显示模块还包含了闹铃开关控制模块,用于控制闹铃是否开启,若闹铃开启会,闹铃时间后就会显示“P”字母。主显示界面仿真结果如 图2: 2.2功能选择模块 功能选择模块包含了void Menu_display (void)函数,其运行过程为当按键3时间触发,切换到功能选择界面是显示时间修改及闹铃修改的提示,并等待按键1(时间修改)事件或者按键2(闹铃修改)事件。功能选择界面仿真结果如图3: 2.3时间修改模块 时间修改模块主要通过调用时间显示函数和按键响应函数:按键读值uchar GetKey(void)和响应void QueryKeyboard(void),并通过时间设置标记变量SetTimeFlage的值来判断是否执行时间修改。时间修改模式下计时会暂停,按键1、按键2、按键3以及按键4会响应,实现时间的加减、项目切换及退回主界面的操作。进行时间加减时,计数会循环变化,如:当时间为23:59:59时,时加会变为00,分加会变为00并且时会加1,秒同理;当时间为00:00:00时,时减会变为23,分减会变为59并且时会减1,秒同理。同时,当进入时间修改界面后三盏指示LED灯就会分别点亮,第一盏点亮表示时修改,第二盏点亮表示分修改,第三盏点亮表示秒修改(初始为时修改,可按按键3进行切换)。时间修改界面仿真结果如图4: 2.4闹铃修改模块 闹铃修改模块与时间修改模块结构类似,通过调用闹铃显示函数和按键响应函数,并通过闹铃设置标记变量SetAlarmFlage的值来判断是否执行闹铃修改。闹铃修改模式下,计时不会暂停但闹铃不会响应,按键1、按键2、按键3以及按键4会响应,实现时间的加减、项目切换及退回主界面的操作。进行时间加减时,计数会循环变化,如:当闹铃时间为23:59:59时,时加会变为00,分加会变为00并且时会加1,秒同理;当时间为00:00:00时,时减会变为23,分减会变为59并且时会减1,秒同理。同时,当进入闹铃修改

文档评论(0)

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

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

1亿VIP精品文档

相关文档