STM8单片机课程设计报告(闹钟+定时器)精选.docxVIP

STM8单片机课程设计报告(闹钟+定时器)精选.docx

  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文档。上传文档
查看更多
STM8单片机课程设计报告(闹钟定时器)精选

课程设计内容与要求课程设计目的:1、巩固和加深对单片机原理知识的理解和运用。2、进一步提高学生综合运用所学知识的能力。3、培养学生综合分析问题、发现问题和解决问题的能力基本要求:显示时间和日期可设置多个闹钟可以调整时间扩展功能:按键复用 共有六个按键,每个按键在不同模式下有不同的功能。秒表功能 进入秒表界面后,再按一下就秒表开始计时,再按一下秒表停止。省电模式 在每天00:00会自动进入省电模式,8个数码管会自动关闭,到5:00时会自动退出省电模式;也可以手动进入和退出省电模式。查看/删除闹钟 查看闹钟时间为五秒,五秒内按键无动作则自动退出。器件介绍本次设计主要用到的硬件有:1、51实验板1块2、stm8s105c6开发板1快51实验板:主要用到实验板上的硬件有:两个四位一体的共阴LED数码管,电路图如下:2)两个74HC573的锁存芯片:3)8个独立按键,用了其中6个一个蜂鸣器:Stm8s105c6开发板:总共有48个引脚,本设计共用引脚20个引脚。PB0~PB7和PE6~PE7用于数码管显示控制,PD0~PD5用于键盘输入,PD6、 PE0、PE3用于LED指示灯控制。PD7用于蜂鸣器控制。设计方案本次设计采用51实验板和stm8s105c6开发板来完成,没有做实物。显示电路采用8个共阳数码管显示;控制按键采用六个独立按键,每一个按键都有复用功能;闹钟提醒采用蜂鸣器;外加四个不同颜色的LED发光二极管,当进入相应功能模式时对应的指示灯就会亮。1、键盘设计:在键盘电路中,使用的是6个独立键盘。键盘在源程序中的功能安排如下:1)当扫描到有键盘按下时,设置相应标志位,然后延时一定时间消抖。2)键盘的设置键盘表面如图:其中各键设置为:(待机状态:正常的时间显示模式)待机状态下是“设置闹钟”,在其他模式下是“递增功能”待机状态下是“调整时间”,在其他模式下是“递减功能”。 待机状态下是“秒表功能”,在其他模式下是“左移功能”。 待机状态下是“查看/删除闹钟”,在其他模式下是“右移功能”OK 待机状态下是“切换显示”,在省电模式下是“退出功能”,在其他模式下是“确认功能”Esc 待机状态下是“省电模式”,在查看/删除闹钟模式下是“删除功能”,在其他模式下是“退出功能”2、数码管显示:采用按位扫描的动态显示方式。3、其他设计:定时器使用stm8s105c6中的Tim2定时器,每1ms产生一次溢出中断。闹铃响的时间为15秒。查看/删除闹钟模式下,5s内键盘无动作则自动退出。每次按键按下后,会延时240ms,此时间内不会再对键盘进行扫描。在每天00:00会自动进入省电模式,8个数码管会自动关闭,到5:00时会自动退出省电模式;也可以手动进入和退出省电模式。4、设计思路:开始初始化引脚和Tim2定时器调用时间处理函数闹铃响闹钟时间? 是 否扫描键盘闹钟设置位=1?是时间调整位=1? 否 是调用相应功能函数 否秒表功能位=1? 是 否查看闹钟位=1? 是 否显示切换位=1?显示日期 是 是 否显示时间5、以下是部分程序://**************标志位************//_Bool off;//省电模式_Bool tab;//切换显示模式_Bool run;//控制秒表_Bool left;//左移_Bool right;//右移_Bool set;//设置闹钟_Bool adjust;//调整时间_Bool ok;//确定_Bool esc;//取消或删除_Bool duan @PE_ODR:7; //PE6作为段锁存_Bool wei @PE_ODR:6; //PE7作为位锁存_Bool set_c @PE_ODR:3;_Bool adjust_t @PE_ODR:0;_Bool check_clock @PD_ODR:6;_Bool c_alarm @PD_ODR:7;//*****************相关变量*******************//unsigned char month_day[]={31,28,31,30,31,30,31,31,30,31,30,31};unsigned char wei_ma[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//显示位码unsigned char duan_ma[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴极显示段码unsigned char sec_duan_ma[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};unsigned char hour_[5],minute_[5]

文档评论(0)

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

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

1亿VIP精品文档

相关文档