单片机 电子时钟实验报告.docx

上传人:b****6 文档编号:6185360 上传时间:2023-01-04 格式:DOCX 页数:12 大小:804.52KB
下载 相关 举报
单片机 电子时钟实验报告.docx_第1页
第1页 / 共12页
单片机 电子时钟实验报告.docx_第2页
第2页 / 共12页
单片机 电子时钟实验报告.docx_第3页
第3页 / 共12页
单片机 电子时钟实验报告.docx_第4页
第4页 / 共12页
单片机 电子时钟实验报告.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

单片机 电子时钟实验报告.docx

《单片机 电子时钟实验报告.docx》由会员分享,可在线阅读,更多相关《单片机 电子时钟实验报告.docx(12页珍藏版)》请在冰豆网上搜索。

单片机 电子时钟实验报告.docx

单片机电子时钟实验报告

电子时钟设计实验报告

姓名:

学号:

班级:

指导老师:

一、实验基本要求

利用定时计数器,设计一个电子时钟,使用前面使用过的显示子程序。

从左到右依次显示时分秒。

有两种方法实现,一种是在中断程序中计数,产生时分秒计数,送显示缓冲区。

另一种是中断程序每一秒清除一个位变量,而主程序通过监视位变量的变化来知道每秒的时间。

进而要求:

1.加入时间调整程序,使用两个或三个按钮,调节当前的时间。

类似平常使用的电子表。

可以让正在调整的位闪烁显示。

2.可以加入一个闹钟钟设置,当所定的时间到时,产生断续的蜂鸣声。

可以加入日历的功能。

二、最终实现的功能

1、日历(年、月、日)显示与数值的修改

2、时钟(时分秒)显示及数值的修改

3、闹钟设定及数值的修改、到时响铃

4、秒表计时及秒表重置

三、设计核心思想

程序设计中设置定时器0作为基本时钟,中断每50ms进入一次,每20次中断即1秒,秒加一,在中断服务程序中执行60秒进位、60分进位。

通过独立式键盘,进行各项数值调整、定时器开启和暂停以及重置。

各个功能在分立的子函数中实现,在主函数中进行调用,结构清晰。

四、设计亮点

1、按键功能通过“按下时间的长短”丰富

在按键消抖结束后,再次判断按键按下的同时,记录按下时间的长短。

短按实现数值的修改、计时暂停及启动,长按实现模式的切换和重置。

2、闹铃设置为一段音乐

通过查阅网上资料,将蜂鸣器的响声富有变化,从而实现一段有旋律的音乐。

3、函数独立

设计的程序中包含以下函数模块:

延时、初始化、时间(日历、闹钟)显示、键盘扫描、秒表显示、定时器0中断函数(时钟)、定时器1中断(秒表)、音乐、闹钟及主函数。

4、各功能的实现采用模块化处理

模式1:

时钟显示;模式2:

日历显示;模式3:

秒表显示;模式4:

闹钟显示。

五、实验中的问题总结

LED数码管显示部分小结:

(1)要设置段选(P2.6)和位选(P2.7)。

(2)段选和位选需按照书上讲的逻辑编写。

虽然P0口作为段选,P2口作为位选,但是程序设计中位选时要将值赋给P0口(打开位选→赋位选→关闭位选)。

网上很多实验报告的代码位选是P2=0X**,但我在实际操作中发现,如果位选值赋给P2口,数码管的显示会出现不规则跳变,具体原因不清楚。

段选可以赋值给P0口(打开段选→赋段选→关闭段选)。

六、实验心得

本次实验设计历时10天,初期设计并不顺利,因为设计的构思实际操作障碍重重。

通过上网查阅电子时钟的资料,自学C51编程,结合汇编语言的部分想法,自主设计了程序框架。

显示函数借鉴了网上经验,通过自己的实际操作进行了一定的修改,使其切实可行。

键扫描函数根据教材提供的程序进行相应的设计,并根据自己查阅的C51书籍进行了相应的功能扩充。

程序编写过程中,充分结合了自己的所学知识,将程序设计为模块化,主函数简洁清晰,体现了高级语言的特点。

本次实验的程序烧录达200多次,因为一些原因无法进行debug,所以非语法错误的BUG均为自己调试,本次实验成果来之不易。

在未来的学习过程中依旧要坚持不懈的努力,成功只属于那些坚持到底的人。

七、实验程序及说明

【全局变量定义及部分函数的声明】

说明:

“歌曲音调”“歌曲节奏”曲子网络

【各项内容初始化】

【延时函数】

【时间、日历、闹钟显示函数】

【秒表显示函数】

说明:

因为秒表显示的数字位数(分钟、十秒、秒、毫秒)和时钟(时分秒)不同,故需要分成两个显示函数。

【定时器0中断函数(时钟)函数】

【定时器1中断(秒表)函数】

【蜂鸣器音乐及闹钟函数】

【键盘扫描函数】

说明:

长短按键的实现通过判断length和flag标志。

即Length满足一定时长后,转移到相应的模式;若按下时间不满足判断条件,则视为“短按”,执行短按的相应功能。

独立式键盘从左到右将键盘编号为1~4。

按键1:

短按——时钟、秒表停时及启动;长按——转至模式0(时钟模式)。

按键2:

短按——秒(时钟和闹钟)、天数值调整;长按——返回上一模式(若为模式0,则无上一模式)。

按键3:

短按——分(时钟和闹钟)、月数值调整;长按——进入下一模式(若为模式0,则下一模式为模式1,即日历显示)。

按键4:

短按——时(时钟和闹钟)、年的数值调整;长按——秒表重置。

【主函数】

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1