- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MSP430单片机课程的设计实时时钟与键盘控制
MSP430单片机课程设计
实时时钟与键盘控制
设计思路
该算法的流程简图如下:
由于LCD无法完全显示时间日期,故采用page翻页的方式设计,每页6位显示。设定page为奇数时表示当前在时间页面,page为偶数时表示当前在日期页面。在修改时间时,采用的是输入字符串进行修改的方式。
显示当前时间time=hour*10000+min*100+sec。
在page为偶数时,前两位显示小时,中间两位显示分钟,最低两位显示秒。
2、显示当前日期date=year*10000+mon*100+day,并能与时间切换。
在page为奇数时,前两位显示年份,中间两位显示月份,最低两位显示天。
键盘上的up、down修改page的值,实现两页显示的切换。
能够读取键盘值进行修改
键盘通过中断的方式读取键值,每个键都有相应的操作。具体的方案如下:
键值在0~F之间为对应的十六进制数。
按下UP键,page加1。
按下DOWN键,page加1,以上两键能使page奇偶变化。
按下L键,p加1,用于修改数据时修改位置的更改。
按下R键,p减1,用于修改数据时修改位置的更改。
按下ESC键,使set置1,进入修改模式,并在首位显示E。
按下START键,修改的数据生效,set置0。
按下STOP键,取消修改,set置0,清除首位显示。
按下ENTER键,确认当前位的修改,注意是单个位的修改。
体现430系列单片机的超低功耗的特性。
在中断处理结束,以及循环结束,或者等待键盘按键时,会进入低功耗工作模式,同时编程时也尽量减少函数的调用,并将一些变量定义为寄存器变量,提高运行效率。
二、参数计算
设计时钟时,应能做到分秒的60进1,时的24进1 ,年以两位数表示满100进1 ,月满12进1;关于天的计数较为复杂:先根据年月判断该月的最大天数,实现进位。
三、编程步骤
1、编写时间显示函数,测试以确认函数功能正常。
2、设置初始值为04年2月28日。利用定时器A控制秒信号的自加,并用LCD显示判断算法是否正确。
3、已经得到正确的秒信号,根据算法实现时间的进位。
4、设计键盘,使键盘能正确输入,读取键值。
5、设计翻页功能,实现时间和日期的切换。
6、设计时间的修改功能,以串输入修改数据的形式进行修改。
7、程序存档,测试检验基本功能。
8、优化程序算法,精简变量与函数调用,实现超低功耗,测试检验,提交最后成果。
四、实践感受
五、源程序
//实时时钟+键盘控制(串输入修改方式)
#include msp430x44x.h
#include stdio.h
//定义液晶显示笔画
#define a (0x01)
#define b (0x02)
#define c (0x10)
#define d (0x08)
#define e (0x40)
#define f (0x20)
#define g (0x04)
//#define h (0x80)
//显示字符的指针
const unsigned char LCD_Tab[] = {
a+b+c+d+e+f ,//显示 0, LCD_Tab[00]
b+c ,//显示 1, LCD_Tab[01]
a+b+d+e+g ,//显示 2, LCD_Tab[02]
a+b+c+d+g ,//显示 3, LCD_Tab[03]
b+c+f+g ,//显示 4, LCD_Tab[04]
a+c+d+f+g ,//显示 5, LCD_Tab[05]
a+c+d+e+f+g ,//显示 6, LCD_Tab[06]
a+b+c ,//显示 7, LCD_Tab[07]
a+b+c+d+e+f+g ,//显示 8, LCD_Tab[08]
a+b+c+d+f+g ,//显示 9, L
您可能关注的文档
最近下载
- 县城排水防涝提升改道工程监理细则.docx VIP
- 新版DFMEA&PFMEA表格模板.xlsx VIP
- 人教版高中物理必修第三册精品课件 第9章 静电场及其应用 专题提升二非点电荷电场强度的求解、电场线和轨迹问题.ppt VIP
- 创伤性休克的治疗 治疗创伤性休克的偏方 如何治疗创伤性休克.doc VIP
- 全国职业大赛(中职)ZZ032建筑信息模型建模赛题第9套.docx VIP
- 医共体综合服务能力提升建设项目可行性研究报告.docx
- GB_T 1348—2019《球墨铸铁件》标准解读.pdf VIP
- 三溴化硼BBr3.doc VIP
- 西安地铁丰庆路基坑围护结构施工方案设计.doc
- 高一【美术(人美版)】抒情与写意——文人画-课件.pptx VIP
文档评论(0)