欢迎来到天天文库
浏览记录
ID:55591467
大小:95.50 KB
页数:29页
时间:2020-05-19
《电子跑表设计.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、目录1.系统总体方案选择与说明………………………2.系统结构框图与工作原理………………………3.各单元硬件设计说明及计算方法………………………4.软件设计与说明(包括流程图)………………………5.调试结果与必要的调试说明………………………6.使用说明………………………………………………7.课程设计总结与体会………………………8.参考文献………………………………………………9附录:A:系统原理图………………………………………………B:程序清单………………………………………………一.前言1.设计要求
2、:要求以MCS-51系列单片机为核心设计一个多功电子表,具有电时钟和跑表功能。做时钟时在4位LED显示器上显示分、秒,做跑表时显示范围000.0秒~999.9秒并具有跑表启动和跑表复位功能键。电子时钟的计时范围00分00秒59分-59秒,并在4位LED显示器上显示;做跑表时显示范围000.0秒-999.9秒,当按下启动按钮跑表开始计时,按下停止按停止计时,当按下复位按钮跑表回零。2.设计思路1)计时单元由单片机内部的定时器/记数器来实现。2)时间显示功能通过LED数码管动态扫描来实现。利用专用键
3、盘/显示器接口芯片8279可实现对键盘/显示器的动态扫描,由于数码管要显示时钟,还要显示跑表,因此,我分别用31H、32H计时钟,用R5、R6计跑表,当要显示哪一个的时候,就把哪一个地址送到显示地址35H、36H中,达到跑表显示与时钟显示互不影响。3)表的启动/复位/清零功能由软件来实现。P1.0接启动键,P1.1接停止键,P1.2接清零键。4)由于跑表和时钟的中断服务程序有冲突,我们就把跑表的中断服务程序写成另外的子程序了,这样就必须要引入标志位了,我们在此用42H标志位,用标志位来给跑表计数
4、。二.系统组成与工作原理1.硬件电路的设计方案根据设计要求和设计思路,硬件电路有两部分组成,即单片机按键电路,LED显示器电路。图1为硬件电路设计框图。8279MC51按键电路LED显示电路图1硬件电路设计框图2.软件设计方案根据设计要求和设计思路,进行模块设计。8279的初始化程序模块,时钟记时程序模块,数制转换模块,显示模块,跑表工作模块。图2为软件设计框图。主程序模块跑表工作模块显示模块数制转换模块时钟记时模块8279初始化模块图2电子跑表软件设计的模块3.工作原理说明利用T0定时器定时1
5、00ms,即0.1s,用R5R6作为跑表的计算器,用R7作为时钟计数器。判断SRART键是否按下,若按下,则建立标志F0=1,同时将R5R6单元清零;否则F0=0。在T0中断服务中,判断F0,若F0=0,则用软件计数器R7计数;若F0=1,则在R7计数同时,还要用软件R5R6计数。中断返回后,判断F0,若F0=0,即作为时钟使用时,则R7=10为一秒,60秒则清零。若F0=1,即作为跑表使用时,将R5R6的值进行十进制调整,即为跑表显示值,到9999则R5R6清零,重新开始计数。若STOP键按下
6、,则R5R6停止计数。在跑表停止状态下,则返回显示当前时间。三.各单元硬件设计说明及计算方法1.在单片机中,定时功能既可以由硬件(定时/记数器)实现,也可通过软件定时实现。硬件定时是利用单片机内定时器定时,启动以后定时器可与CPU并行工作,不占用CPU时间,CPU有较高的工作效率。采用硬件定时和软件定时并用的方式,即用T0出中断功能实现50ms定时,通过软件延时程序实现1s定时。.定时器的有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。TMOD用于设置定时器/计数器的工作方式0~3,并
7、确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。2.8279是通用的可编程键盘/显示器接口芯片,可实现对键盘/显示器的自动扫描,不仅可以大大节省CPU对键盘/显示器的操作时间,从而减轻CPU的负担,而且显示稳定,程序简单,不会出现误动作。8279具有8个先进先出的的键输入缓冲RAM单元,并提供16字节的缓冲RAM。8279将段码写入显示缓冲RAM,8279自动对显示器扫描,将其内部显示缓冲RAM中的数据在显示上显示出来。CUP通过对8279编程
8、(将命令字写入8279)来选择其工作方式,简述如下:1)键盘/显示器方式设置命令字D7D6D5D4D3D2D1D0000DDKKK高三位D7D6D5位为特征位000,D4D3两位用来设定显示方式,其定义如下:D4D3显示器方式008个字符显示—左边输入0116个字符显示—左边输入108个字符显示—右边输入1116个字符显示—右边输入8279最多可用来控制16位LED显示器,当显示位数超过8位时,均需设定为16为字符显示。显示器的每一位对应一个8位的显示缓冲RAM单元CPU将显示数据写入缓冲器时有
此文档下载收益归作者所有