- 1、本文档共36页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机实训指导书
制作自动打 铃 器
实习目的
综合应用定时器、中断、数码显示等单片机知识。
掌握打铃器程序的设计和调试方法。
原理说明
线路如图1所示:
+5V
由图可知,IC3(单片机)的P2.0至P2.5口为扫描位(字位)输出口,对六位共阴极数码管进行位选;P1.0至P1.7口为段码(即字型码)输出口, 输出相应的段数据码;P3.2,P0.0,P0.1口为键盘输入口,接有三个按键,分别为功能键、加一键、移位键。
电子钟的设计思路是:利用定时器T1定时,每隔100ms产生一次中断,中断10次(1s)后秒单元加1;秒单元XX满60后向分单元进位,分单元YY加1;当分单元满60后时单元ZZ加1。
设六位LED显示器的显示缓冲区地址为II~NN六个连续的内部RAM单元,时间缓冲区为内部RAM中的XX(秒单元)、YY(分单元)、ZZ(时单元)。由于每个LED显示器只显示一位数字,所以为了实现时间得数码显示,必须调用拆字子程序将时间缓冲区的内容拆开(每个单元拆分为两段,每段的高4位均为0)。本实习中XX(秒单元)拆分为2个字节,分别存入显示缓冲单元II和JJ中;YY(分单元)拆分后存入KK、LL单元中;ZZ(时单元)拆分后存入MM、NN单元。然后调用显示子程序显示当前时间。
实习内容
利用单片机内部定时器,设计一个电子钟,在LED显示器上显示时、分、秒;并可通过键盘实现时间修改,同时修改位应闪烁。
实习设备
实验板1块
仿真器1台
实习步骤
熟悉图1工作原理。
输入并调试拆字子程序和数码显示子程序。
输入并调试键管理程序及功能程序和定时子程序。
将各子程序连接并调试主程序。
运行主程序并用键盘进行时间修改。
预习要求
复习键盘、显示及中断方面知识。
理解整个系统软、硬件的工作原理,并确定显示缓冲区的地址。
计算定时100ms的时间常数(设晶振为6MHZ,定时器工作于方式1)。
编写实习主程序和各子程序及中断服务程序。
实习程序参考框图
主程序参考框图,如图2所示:
各单元初始化主要包括:显示修改标志位(DSXGW位地址 01H)初始为0,闪烁标志位(SSBZW位地址02H)初始为0,修改转换单元(XGZHDY) 初始为01H,定时计数单元(DSJSDY) 初始为00H,闪烁计数单元初始为00H,秒单元(XX)初始为00H,分单元(YY)初始为00H,时单元(ZZ) 初始为12H。(打铃标志位03H)
键盘管理程序参考框图,如图3所示:
P3.2口为功能键
P0.1口为移位键
P0.0口为修改加1键
3、程序参考框图
功能键:通过该键使时钟分别进入定时和修改状态,按一次该键改变一种状态。设立标志位(DSXGW),该位为1表示为修改状态,该位为0表示为定时状态。
参考框图如下图4:
移位键:通过该键确定对时、分、秒单元的修改,按一次转换一个单元。通过修改转换单元(XGZHDY)的内容对应确定对那一单元修改,具体规定如下:(XGZHDY)=01H,表示对秒单元修改;(XGZHDY)=02H,表示对分单元修改;(XGZHDY)=03H,表示对时单元修改。该键只有在修改状态即DSXGW为1时,该键功能有效。
参考框图如下图5:
修改加1键:通过该键分别对时、分、秒单元进行加1修改,具体规定如下:当(XGZHDY)=01H时,对秒单元修改即将秒单元清零;当(XGZHDY)=02H时,对分单元修改即将分单元加1,加满60清零;当(XGZHDY)=03H时,对时单元修改即将时单元加1,加满24清零。该键只有在修改状态即DSXGW为1时,该键功能有效。
参考框图如下图6:
拆字子程序参考框图
该程序将时、分、秒单元内容拆成两部份,分别存入显示缓冲区中。
参考框图如下图7:
2
文档评论(0)