电子跑表设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单片机课程设计说明书

电子跑表设计

系、部:电气与信息工程系

学生姓名:成高强

指导教师:廖代文职称教师专业:电气自动化技术

班级:电气0901班

完成时间:2011-11-24

目录

一、系统总体方案选择与说明 (3)

1.设计要求 (3)

2.设计思路 (3)

二、系统结构框图与工作原理 (4)

1.硬件电路的设计方案 (4)

2.软件设计方案 (4)

3.工作原理说明 (5)

三、各单元硬件设计说明及计算方法 (5)

四、软件设计与说明(包括流程图) (9)

五、使用说明 (19)

1.系统说明 (19)

2.使用说明 (20)

六、学习体会 (20)

七、参考文献 (20)

八、附录:程序清单 (21)

一、系统总体方案选择与说明

1.设计要求:

要求以MCS-51系列单片机为核心设计一个多功电子表,具有电时钟和跑表功能。做时钟时在4位LED 显示器上显示分、秒,做跑表时显示范围000.0秒~999.9秒并具有跑表启动和跑表复位功能键。电子时钟的计时范围00分00秒59分-59秒,并在4位LED 显示器上显示;做跑表时显示范围000.0秒-999.9秒,当按下启动按钮跑表开始计时,按下停止按停止计时,当按下复位按钮跑表回零。

2.设计思路

1)计时单元由单片机内部的定时器/记数器来实现。

2)时间显示功能通过LED数码管动态扫描来实现。利用专用键盘/显示器接口芯片8279可实现对键盘/显示器的动态扫描,由于数码管要显示时钟,还要显示跑表,因此,我分别用31H、32 H计时钟,用R5、R6计跑表,当要显示哪一个的时候,就把哪一个地址送到显示地址35 H、36 H 中,达到跑表显示与时钟显示互不影响。

3)表的启动/复位/清零功能由软件来实现。P1.0接启动键,P1.1接停止键,P1.2接清零键。

4)由于跑表和时钟的中断服务程序有冲突,我们就把跑表的中断服务程序写成另外的子程序了,这样就必须要引入标志位了,我们在此用42H 标志位,用标志位来给跑表计数。

二、 系统结构框图与工作原理

1.硬件电路的设计方案

根据设计要求和设计思路,硬件电路有两部分组成,即单片机按键电路,LED 显示器电路。图1 为硬件电路设计框图。

图1 硬件电路设计框图

2.软件设计方案

根据设计要求和设计思路,进行模块设计。8279的初始化

程序模块,时钟记时程序模块,数制转换模块,显示模块,跑表工作模块。图2为软件设计框图。

图2 电子跑表软件设计的模块

MC51 8279 LED 显示电路

按键电路 主程序模块

8279初始化模块 时钟记时模块 数制转换模块

显示模块

跑表工作模块

3.工作原理说明

利用T0定时器定时100ms,即0.1s,用R5 R6作为跑表的计算器,用R7作为时钟计数器。判断SRART键是否按下,若按下,则建立标志F0=1,同时将R5 R6单元清零;否则F0=0。

在T0中断服务中,判断F0,若F0=0,则用软件计数器R7计数;

若F0=1,则在R7计数同时,还要用软件R5 R6计数。

中断返回后,判断F0,若F0=0,即作为时钟使用时,则R7=10为一秒,60秒则清零。若F0=1,即作为跑表使用时,将R5 R6的值进行十进制调整,即为跑表显示值,到9999则R5 R6清零,重新开始计数。若STOP键按下,则R5 R6停止计数。在跑表停止状态下,则返回显示当前时间。

三、各单元硬件设计说明及计算方法

1.在单片机中,定时功能既可以由硬件(定时/记数器)实现,也可通过软件定时实现。硬件定时是利用单片机内定时器定时,启动以后定时器可与CPU并行工作,不占用CPU时间,CPU有较高的工作效率。采用硬件定时和软件定时并用的方式,即用T0出中断功能实现50ms定时,通过软件延时程序实现1s定时。.定时器的有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。TMOD用于设置定时器/计数器的工作方式0~3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。

2.8279是通用的可编程键盘/显示器接口芯片,可实现对键盘/显示器的自动扫描,不仅可以大大节省CPU对键盘/显示器的操作时间,从而减轻CPU的负担,而且显示稳定,程序简单,不会出现误动作。

8279具有8个先进先出的的键输入缓冲RAM单元,并提供16字节的缓冲RAM。8279将段码写入显示缓冲RAM,8279自动对显示器扫描,将其内部显示缓冲RAM中的数据在显示上显示出来。

CUP通过对8279编程(将命令字写入8279)来选择其工作方式,简述如下:

1)键盘/显示器方式设置命令字

D7 D6 D5 D4 D3 D2 D1 D0

0 0 0 D D K K K

高三位D7D6D5位为特征位000,D4D3两位用来设定显示方式,其定义如下:

D4 D3 显示器方式

0 0 8个字符显示—左边输入

0 1 16个字符显示—左边输入

1 0 8个字符显示—右边输入

1 1 16个字符显示—右边输入

8279最多可用来控制16位LED显示器,当显示位数超过8位时,均需设定为16为字符显示。显示器的每一位对应一个8位的显示缓冲RAM 单元CPU将显示数据写入缓冲器时有左边输入和右边输入。左边输入是较简单的方式,地址为1-15的显示缓冲RAM单元分别对应显示器的1(左)位-15(右)位。CPU依次从0地址或某一个地址开始将段数据写入显示缓冲RAM。

D2D1D0为键盘工作方式选择位,如下表:

D2 D1 D0 键盘工作方式

0 0 0 编码扫描键盘,双键锁定

0 0 1 译码扫描键盘,双键锁定

0 1 0 编码扫描键盘,N键依次读出

0 1 1 译码扫描键盘,N键依次读出

1 0 0 编码扫描传感器矩阵

1 0 1 译码扫描传感器矩阵

1 1 0 选通输入,编码扫描显示器方式

1 1 1 选通输入,译码扫描显示器方式

相关文档
最新文档