- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 验 报 告
课程名称 嵌入式系统编程实践
实验仪器 清华同方辰源嵌入式系统实验箱
实验名称 实验五:数字钟实验
系 别 __计算机学院_
专 业 ___ ___
班级/学号 _ _
学生姓名
实验日期
成 绩 ___________________
指导教师 _ _ ___
实验五:数字钟实验
实验问题回答
画出数字时钟的有限状态自动机,列出全部状态、状态转换规则,以及对应状态下的动作。
按A键
按A键
按B键 设置结束 按C键
按C键 按B键
(2)倒计时和正计时怎么设置?
答:先添加一个功能键,令其完成的功能是实现倒计时和正计时。
正计时实现利用
if(ms=99){
ms=0;
if(s=59){
s=0;
if(m=59){
m=0;
}
else{
m++;
}
}
else{
s++;
}
}
else{
ms++;
}
在毫秒计数满100令其置零,并向秒进1,秒计数满60令其置零,并向分钟进1。
在其后面加上代码段
else{
if(ms=0){
ms=99;
if(s=0){
s=59;
if(m=0){
m=59;
}
else{
m--;
}
}
else{
s--;
}
}
else{
ms--;
}
}
若毫秒小于等于0责令其变为0,秒计数-1,若秒小于等于0责令其变为0,分钟计数-1,即可实现倒计时功能。
实验目的和效果
(1)学习、理解、掌握利用状态机模型实现数字钟系统
实验结果及检查
(1)6个数码管上显示样式改为“分钟+秒+百分之一秒”,其中各占两个数码管。
(2)OLED屏幕上显示和数码管一样效果,“分钟:秒:百分之一秒”各占两个字符。
(3)屏幕上显示功能选单,通过键盘A-F键选择不同功能,选择后屏幕显示相关功能提示,并在数码管和OLED屏幕上显示相应功能。
如:开始显示:“please choose the function:” “A: …” “B: …” “C: …” “D: …”
按下“A”键后,显示”now you choose function A”
(4)按下“A”键,暂停,再按“A”键,继续。
(5)按下“B”键,表示设置时钟时间,从前往后或从后往前逐次设置时钟值。
(6)按下“C”键,OLED和数码管回归“00:00:00”。
(7)扩展:按下“D”键,倒计时,再按“D”键,正计时。
三、实验内容和步骤(重点阐述自己的思路及遇到的问题)
(一)Keil开发环境中对项目Project配置
(1)建立项目
1、新建一个project;
2、选择CPU中的Luminary LM3S 8962;
3、加载库文件;
4、项目相关配置项修改。
(二)新建主函数程序,并加载到项目中
(1)加载必要程序
本次实验提供了几个源程序rit128x96x4.h,rit128x96x4.c,startup.s,utility.c,utility.h,definition.h都压在work2.zip中,与实验一(二)(1)步骤类似。
其中,definition.h文件中定义了一些宏定义,用于将整个工程中的宏定义放在一起,目的是为了程序的可读性更好。本例中定义了五个不同的功能模式,可以根据自己习惯进行修改。
Utility.c和utility.h中包含了数码管显示处理函数。其函数声明如下:void disp(char x,int location);使用方法:第一个参数表示要显示的字符,在本例中,就是键盘中断服务程序执行完后保存在oledkey[0]里的字符,第二个参数表示显示的位置,其中1表示数码管的最右端,6表示数码管的最左端,2-4依次表示中间4个数码管。
新建一个文件,保存为main.c,把main.c也加载到项目中,与
您可能关注的文档
最近下载
- 2025-2026人教部编版三年级上册语文教学计划.docx VIP
- 施工现场车辆安全教育.pptx VIP
- 给排水系统学习培训ppt课件.pptx VIP
- 2025北京市十八里店乡人民政府城市协管员招聘21人笔试参考题库附答案解析.docx VIP
- 输血科管理制度、程序性文件、SOP文件.docx VIP
- 05J909_工程做法_建筑专业图集.docx VIP
- 2021海绵城市设施通用图集.docx VIP
- 【统编版】高中语文必修上册第一单元《3百合花》优质课(29张PPT)课件.pptx VIP
- 钢丝帘线压延机生产线(中文参考).doc VIP
- 2025年福建省福州市辅警协警笔试笔试预测试题(含答案).docx VIP
文档评论(0)