基于单片机的数字电子秒表的设计与实现111.docx

上传人:b****2 文档编号:2435945 上传时间:2023-05-03 格式:DOCX 页数:36 大小:482.09KB
下载 相关 举报
基于单片机的数字电子秒表的设计与实现111.docx_第1页
第1页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第2页
第2页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第3页
第3页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第4页
第4页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第5页
第5页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第6页
第6页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第7页
第7页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第8页
第8页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第9页
第9页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第10页
第10页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第11页
第11页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第12页
第12页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第13页
第13页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第14页
第14页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第15页
第15页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第16页
第16页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第17页
第17页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第18页
第18页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第19页
第19页 / 共36页
基于单片机的数字电子秒表的设计与实现111.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于单片机的数字电子秒表的设计与实现111.docx

《基于单片机的数字电子秒表的设计与实现111.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字电子秒表的设计与实现111.docx(36页珍藏版)》请在冰点文库上搜索。

基于单片机的数字电子秒表的设计与实现111.docx

基于单片机的数字电子秒表的设计与实现111

摘要

近年来随着科技的飞速发展,单片机的应用正在不断的走向深入。

本文阐述了基于单片机的数字电子秒表设计。

本设计主要特点是计时精度达到0.01s,解决了传统的由于计时精度不够造成的误差和不公平性,是各种体育竞赛的必备设备之一。

本设计的数字电子秒表系统采用8051单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。

将软、硬件有机地结合起来,使得系统能够实现五位LED显示,显示时间为0~99.99秒,计时精度为0.01秒,能正确地进行计时,同时能记录一次时间,并在下一次计时后对上一次计时时间进行查询。

其中软件系统采用汇编语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在WAVE中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。

关键字:

单片机;数字电子秒表;仿真

 

绪论

秒表计时器是电器制造,工业自动化控制、国防、实验室及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定时器等的时间测试。

2004年8月28日15点15分,中国选手孟关良/杨文军在雅典奥运会男子500米划艇决赛中,以1分40秒278的成绩获得中国在雅典奥运会的第28金。

这是中国皮划艇项目的第一枚奥运金牌,也是中国水上项目在历届奥运会上所获得的第一枚金牌。

孟关良/杨文军的成绩比获得银牌的古巴选手只快了0.072秒,以至于两人在夺冠之后还不敢相信。

在现在的体育竞技比赛中,随着运动员的水平不断提高,差距也在不断缩小。

有些运动对时间精度的要求也越来越高,有时比赛冠亚军之间的差距只有几毫秒,因此就需要高精度的秒表来记录成绩。

本设计利用8051单片机的定时器/计数器定时和记数的原理,使其能精确计时。

利用中断系统使其能实现开始暂停的功能。

P0口输出段码数据,P2.0-P2.4口作列扫描输出,P1.1、P3.2、P3.3、P2.5分别接四个按钮开关,分别实现开始、暂停、清零和查看上次时间的功能。

显示电路由五位共阴极数码管组成。

初始状态下计时器显示00.00,当按下开始键时,外部中断INT1向CPU发出中断请求,CPU转去执行外部中断1服务程序,即开启定时器T0。

计时采用定时器T0中断完成,定时溢出中断周期为1ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.99秒重新复位。

在计时过程中,只要按下暂停键,外部中断INT0向CPU发出中断请求,CPU转去执行外部中断0服务程序,即关闭定时器T0,调用显示程序,实现暂停功能,同时将此次计时时间存入寄存区。

然后对P1.1进行扫描。

当P1.1按下时就跳转回主程序。

等待下一次计时开始。

在按下暂停键时,将此时的计时时间存入中间缓存区,当再次按下开始键时,则讲中间缓存区的数据转入最终缓存区。

秒表停止后对查看键P2.5进行扫描,P2.5按下为低电平时,调用最终缓存区的数据进行显示,即显示上一次计时成绩。

当P2.5位高电平时,调用显示缓存区的数据进行显示,即显示当此计时的成绩。

根据以上设计思路从而实现数字电子秒表的计时和查看上一次计时时间的功能。

本文主要内容包括三部分:

第一部分介绍硬件部分设计思路及方案;第二部分介绍了软件部分的设计思路和设计;最后一部分则是整个系统的安装与调试过程。

1硬件设计

1.1总体方案的设计

数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。

本设计用单片机组成数字电子秒表,力求结构简单、精度高为目标。

设计中包括硬件电路的设计和系统程序的设计。

其硬件电路主要有主控制器,计时与显示电路和回零、启动和停表电路等。

主控制器采用单片机8051,显示电路采用共阴极LED数码管显示计时时间。

本设计利用8051单片机的定时器/计数器定时和记数的原理,使其能精确计时。

利用中断系统使其能实现开始暂停的功能。

P0口输出段码数据,P2.0-P2.4口作列扫描输出,P1.1、P3.2、P3.3、P2.5口接四个按钮开关,分别实现开始、暂停、清零和查看上次计时时间功能。

电路原理图设计最基本的要求是正确性,其次是布局合理,最后在正确性和布局合理的前提下力求美观。

硬件电路图按照图1.1进行设计。

图1.1数字秒表硬件电路基本原理图

根据要求知道秒表设计主要实现的功能是计时和显示。

本设计中,数码管显示的数据存放在内存单元79H-7DH中。

其中79H存放毫秒位数据,7AH存放十毫秒位数据,7BH存放百毫秒位数据,7CH存放秒位数据,7DH存放十秒位数据,每一地址单元内均为十进制BCD码。

由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。

显示时,先取出79H-7dH某一地址中的数据,然后查得对应的显示用段码,并从P0口输出,P2口将对应的数码管选中供电,就能显示该地址单元的数据值。

最终缓存区则设置为59H-5DH,数据存放规则和79H-7DH一样。

分别对应存放毫秒位至十秒位数据。

与79H-7DH存储区不一样的是:

59H-5DH存储的内容为数字秒表上一次计时显示的时间。

而79H-7DH为当前计时时间存储区。

计时采用定时器T0中断完成,定时溢出中断周期为1ms,当一处中断后向CPU发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到99.99秒重新复位。

再看按键的处理。

这四个键可以采用中断的方法,也可以采用扫描的方法来识别。

复位键和查看主要功能在于数值复位和查询上次计时时间,对于时间的要求不是很严格。

而开始和停止键则是用于对时间的锁定,需要比较准确的控制。

因此可以对复位和查看按键采取扫描的方式。

而对开始和停止键采用外部中断的方式。

设计中包括硬件电路的设计和系统程序的设计。

其硬件电路主要有主控制器,显示电路和回零、启动、查看、停表电路等。

主控制器采用单片机8051,显示电路采用共阴极LED数码管显示计时时间,四个按键均采用触点式按键。

1.2单片机的选择

本课题在选取单片机时,充分借鉴了许多成形产品使用单片机的经验,并根据自己的实际情况,选择了Intel公司的8051。

单片机的外部结构

8051单片机采用40引脚的双列直插封装方式。

图1.2为引脚排列图,40条引脚说明如下:

主电源引脚Vss和Vcc

①Vss接地

②Vcc正常操作时为+5伏电源

外接晶振引脚XTAL1和XTAL2

①XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。

当采用外部振荡器时,此引脚接地。

②XTAL2内部振荡电路反相放大器的输出端。

是外接晶体的另一端。

当采用外部振荡器时,此引脚接外部振荡源。

图1.28051单片机引脚图

控制或与其它电源复用引脚RST/VPD,ALE/

/Vpp

①RST/VPD当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。

②ALE/

正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。

因此,它可用作对外输出的时钟,或用于定时目的。

对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(

功能)

外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,

在每个机器周期内两次有效。

同样可以驱动八LSTTL输入。

/Vpp、

/Vpp为内部程序存储器和外部程序存储器选择端。

/Vpp为高电平时,访问内部程序存储器,当

/Vpp为低电平时,则访问外部程序存储器。

对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。

输入/输出引脚P0.0-P0.7,P1.0-P1.7,P2.0-P2.7,P3.0-P3.7。

①P0口(P0.0-P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。

②P1口(P1.0-P1.7)是一个带有内部提升电阻的8位准双向I/O口。

能驱动(吸收或输出电流)四个LSTTL负载。

③P2口(P2.0-P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。

P2口可以驱动(吸收或输出电流)四个LSTTL负载。

④P3口(P3.0-P3.7)是一个带有内部提升电阻的8位准双向I/O口。

能驱动(吸收或输出电流)四个LSTTL负载。

8051具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,2个数据指针,两个16位定时器/计数器,一个全双工串行口,片内晶振及时钟电路。

另外,8051可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

CPU是单片机的核心部件。

它由运算器和控制器等部件组成。

(1)运算器

运算器的功能是进行算术运算和逻辑运算。

可以对半字节(4位)、单字节等数据进行操作。

例如能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存器。

8051运算器还包含有一个布尔处理器,用来处理位操作。

(2)程序计数器PC

程序计数器PC用来存放即将要执行的指令地址,共16位,可对64K程序存储器直接寻址。

执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。

(3)令寄存器

指令寄存器中存放指令代码。

CPU执行指令时,由程序存储器中读取的指令代码送入指令寄存器,经译码后由定时与控制电路发出相应的控制信号,完成指令功能。

1.3显示电路的选择与设计

对于数字显示电路,通常采用液晶显示或数码管显示。

本设计的显示电路采用7段数码管作为显示介质。

数码管显示可以分为静态显示和动态显示两种。

由于本设计需要采用五位数码管显示时间,如果静态显示则占用的口线多,硬件电路复杂。

所以采用动态显示。

图1.3显示电路基本原理图

动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。

通常各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的公共阴极位选线由另外的I/O口线控制。

动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留效应,只要每位显示间隔足够短就可以给人同时显示的感觉。

数码显示管分为共阳数码管和共阴数码管两种

共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起,如图1.4(b),通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。

当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。

此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。

共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起,如图(c),通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端,当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。

此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。

图1.4(a)数码管引脚图(b)共阳极内部结构图(c)共阴极内部结构图

本设计采用共阴极数码显示管做显示电路,由于采用的是共阴的数码显示管,所以只要数码管的a、b、c、d、e、f、g、h引脚为高电平,那么其对应的二极管就会发光,使数码显示管显示0~9的编码见表1.1。

表1.1共阴极数码显示管字型代码

字型

共阴极代码

字型

共阴极代码

0

3FH

5

6DH

1

06H

6

7DH

2

5BH

7

07H

3

4FH

8

7FH

4

66H

9

6FH

动态显示电路由显示块、字形码驱动模块、字位驱动模块三部分组成。

如图1.3所示为本系统的5位LED动态显示器接口电路。

图中,5个数码管的8段段选线分别与外接上拉电阻的单片机P0口对应相连,而5个数码管的位控制端则和NPN型三极管的集电极相连接。

单片机的P2.0~P2.4口则分别对应数码显示管的最低位到最高位,P2.0~P2.4口分别和五个NPN型三极管的基极相连,做三极管导通的控制端,而NPN型三极管选用9013型三极管。

根据9013的资料显示:

其耐压值为40V,最大功率为0.65W,最大电流为0.5A,电气性能完全满足本设计的要求。

另外数码管显示是采用动态显示,所以对三极管的开关频率有一定的要求。

根据电子秒表的设计计算可知动态显示的频率最高为3KHz,而9013的导通频率为150MHz,完全能满足本设计的要求,所以最终选取9013三极管最为位控制开关。

由于数码管是有P0口来驱动,它内部没有上拉电阻,作为输出口时驱动能力比较弱,不能点亮数码显示管,因此P0口必须接上拉电阻来提高驱动能力。

另外一位共阴数码管的驱动电流一般为20mA左右,如果电流太大容易造成数码管损坏,所以也需要根据电源的电压值来确定上拉电阻的大小。

如果电阻过小,势必会形成灌电流过大,造成单片机IO的损坏,如果电阻过大,那么对拉电流没有太大的影响。

电源供电电压为5V,当上拉电阻选用220Ω电阻时灌电流为22mA。

不会损坏单片机的I/O口,同时也可以为数码显示管起到限制电流的保护作用。

1.4按键电路的选择与设计

本设计中有四个按键,分别实现开始、暂停、复位和查看功能。

这四个键可以采用中断的方法,也可以采用查询的方法来识别。

对于复位键和查看键,主要功能在于数值复位和对上次计时时间的查看,对于时间的要求不是很严格,而开始和暂停键主要用于时间的锁定,需要比较准确的控制。

因此可以考虑,对复位键和查看键采用查询的方式,而对于开始和暂停键采用外部中断。

四个按键均采用低电平有效,具体电路连接图如图1.5所示。

当按键没有按下时,单片机的I/O口直接连接电源,因此需要接上拉电阻来进行限流,本设计中选取阻值为2kΩ的电阻作为上拉电阻,根据计算可知此时的灌电流为2.5mA,查看8051的资料得知次电流在安全范围内,符合安全设计要求。

图1.5按键电路

按键电路中由于采用了外部中断,所以需要用到P3口的第二功能。

P3口引脚的第二功能如表1.2

表1.2P3口引脚第二功能表

P3口引脚

特殊功能

P3.0

RXD(串行输入口)

P3.1

TXD(串行输出口)

P3.2

INT0(外部中断0请求输入端)

P3.3

INT1(外部中断1请求输入端)

P3.4

T0(定时器/计数器0计数脉冲输入端)

P3.5

T1(定时器/计数器1计数脉冲输入端)

P3.6

WR(片外数据存储器写选通信号输出端)

P3.7

RD(片内数据存储器读选通信号输出端)

1.5时钟电路的选择与设计

单片机的时钟信号用来提供单片机内各种微操作的时间基准,8051片内设有一个由反向放大器所构成的振荡电路,XTAL1和XTAL2分别为振荡电路的输入和输出端,8051单片机的时钟信号通常用两种电路形式得到:

内部振荡方式与外部振荡方式。

外部方式的时钟很少用,若要用时,只要将XTAL1接地,XTAL2接外部振荡器就行。

对外部振荡信号无特殊要求,只要保证脉冲宽度,一般采用频率低于12MHz的方波信号。

时钟发生器把振荡频率两分频,产生一个两相时钟信号P1和P2供单片机使用。

P1在每一个状态S的前半部分有效,P2在每个状态的后半部分有效。

本设计采用的内部振荡方式,内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。

本设计系统的时钟电路如图1.4所示。

只要按照图1.6所示电路进行设计连接就能使系统可靠起振并能稳定运行。

图中,电容器C1 、C2起稳定振荡频率、快速起振的作用,电容值一般为5~33pF。

但在时钟电路的实际应用中一定要注意正确选择其大小,并保证电路的对称性,尽可能匹配,选用正牌的瓷片或云母电容,如果可能的话,温度系数尽可能低。

本设计中采用大小为30pF的电容和12MHz的晶振。

图1.6内部振荡电路

(4)时序

8051典型的指令周期(执行一条指令的时间称为指令周期)为一个机器周期,一个机器周期由六个状态(十二振荡周期)组成。

每个状态又被分成两个时相P1和P2。

所以,一个机器周期可以依次表示为S1P1,S1P2……,S6P1,S6P2。

通常算术逻辑操作在P1时相进行,而内部寄存器传送在P2时相进行。

图1.78051时序

图1.7给出了8051单片机的取指和执行指令的定时关系。

这些内部时钟信号不能从外部观察到,所用XTAL2振荡信号作参考。

在图中可看到,低8位地址的锁存信号ALE在每个机器周期中两次有效:

一次在S1P2与S2P1期间,另一次在S4P2与S5P1期间。

对于单周期指令,当操作码被送入指令寄存器时,便从S1P2开始执行指令。

如果是双字节单机器周期指令,则在同一机器周期的S4期间读入第二个字节,若是单字节单机器周期指令,则在S4期间仍进行读,但所读的这个字节操作码被忽略,程序计数器也不加1,在S6P2结束时完成指令操作。

图1.7的(a)和(b)给出了单字节单机器周期和双字节单机器周期指令的时序。

1.6复位电路的选择与设计

当8051单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就完成了复位操作。

如果RST持续为高电平,单片机就处于循环复位状态,而无法执行程序。

因此要求单片机复位后能脱离复位状态。

而本系统选用的是12MHz的晶振,因此一个机器周期为1μs,那么复位脉冲宽度最小应为2μs。

在实际应用系统中,考虑到电源的稳定时间,参数漂移,晶振稳定时间以及复位的可靠性等因素,必须有足够的余量。

根据应用的要求,复位操作通常有两种基本形式:

上电复位、手动复位。

上电复位要求接通电源后,自动实现复位操作。

80C51单片机的上电复位POR(PowerOnReset)实质上就是上电延时复位,也就是在上电延时期间把单片机锁定在复位状态上。

在单片机每次初始加电时,首先投入工作的功能部件是复位电路。

复位电路把单片机锁定在复位状态上并且维持一个延时(记作TRST),以便给予电源电压从上升到稳定的一个等待时间;在电源电压稳定之后,再插入一个延时,给予时钟振荡器从起振到稳定的一个等待时间;在单片机开始进入运行状态之前,还要至少推迟2个机器周期的延时。

上述一系列的延时,都是利用在单片机RST引脚上外接一个RC支路的充电时间而形成的。

典型复位电路如图1.8(a)所示,其中的阻容值是原始手册中提供的。

图1.8上电复位延时电路

标准80C51不仅复位源比较单一,而且还没有设计内部上电复位的延时功能,因此必须借助于外接阻容支路来增加延时环节,如图1.8(a)所示。

其实,外接电阻R还是可以省略的,理由是一些CMOS单片机芯片内部存在一个现成的下拉电阻Rrst。

例如,80C51系列的Rrst阻值约为50~200kΩ;P89V51Rx2系列的Rrst阻值约为40~225kΩ,如图1.9所示。

因此,在图1.8(a)基础上,上电复位延时电路还可以精简为图1.8(b)所示的简化电路(其中电容C的容量也相应减小了)。

图1.9复位引脚RST内部电路

在每次单片机断电之后,须使延时电容C上的电荷立刻放掉,以便为随后可能在很短的时间内再次加电作好准备。

否则,在断电后C还没有充分放电的情况下,如果很快又加电,那么RC支路就失去了它应有的延迟功能。

因此,在图1.8(a)的基础上添加一个放电二极管D,上电复位延时电路就变成了如图1.8(c)所示的改进电路。

也就是说,只有RC支路的充电过程对电路是有用的,放电过程不仅无用,而且会带来潜在的危害。

于是附加一个放电二极管D来大力缩短放电持续时间,以便消除隐患。

二极管D只有在单片机断电的瞬间(即VCC趋近于0V,可以看作VCC对地短路)正向导通,平时一直处于反偏截止状态。

手动复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。

单片机要完成复位,必须向复位端输出并持续两个机器周期以上的高电平,从而实现复位操作。

本设计采用上电且开关复位电路,如图1.10所示上电后,由于电容充电,使RST持续一段高电平时间。

当单片机已在运行之中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。

通常选择C=10~30μF,R=1K,本设计采用的电容值为22μF的电容和电阻为1K的电阻。

图1.10单片机复位电路

1.7系统总电路的设计

系统总电路由以上设计的显示电路,时钟电路,按键电路和复位电路组成,只要将单片机与以上各部分电路合理的连接就组成了系统总电路。

系统总电路图附录B所示。

8051单片机为主电路的核心部分,各个电路均和单片机相连接,由单片机统筹和协调各个电路的运行工作。

8051单片机提供了XTAL1和XTAL2两个专用引脚接晶振电路,因此只要将晶振电路接到两个专用引脚即可为单片机提供时钟脉冲,但在焊接晶振电路时要尽量使晶振电路靠近单片机,这样可以为单片机提供稳定的始终脉冲。

复位电路同晶振电路,单片机设有一个专用的硬件复位接口,并设置为高电平有效。

按键电路与单片机的端口连接可以由用户自己设定,本设计中软件复位键和查看键分别接单片机的P1.1和P2.5,均设为低电平有效。

而另外的开始键和暂停键两键使用了外部中断,所以需要连接到单片机的特殊接口P3.3和P3.2,这两个I/O口的第二功能分别为单片机的外部中断1端口和外部中断0端口。

同样设置为位低电平有效。

显示电路由五位数码管组成,采用动态显示方式,因此有8位段控制端和5位位控制端,八位段控制接P0口,P0.0~P0.7分别控制数码显示管的a、b、c、d、e、f、g、dp显示,8051的P0口没有集成上拉电阻,高电平的驱动能力很弱,所以需要接上拉电阻来提高P0的高电平驱动能力。

五位位控制则由低位到高位分别接到P2.0~P2.4口,NPN三极管9013做为位控制端的开关,当P2.0~P2.4端口任意一个端口为高电平时,与其相对应的三极管就导通,对应的数码管导通显示。

通过以上设计已经将各部分电路与单片机有机的结合到一起,硬件部分的设计以大功告成,剩下的部分就是对单片机的编程,使单片机按程序运行,实现数字电子秒表的全部功能。

2软件设计

2.1程序设计思想

本设计采用了汇编语言编写,汇编语言由于采用了助记符号来编写程序,比用机器语言的二进制代码编程要方便些,在一定程度上简化了编程过程。

汇编语言的特点是用符号代替了机器指令代码,而且助记符与指令代码一一对应,基本保留了机器语言的灵活性。

使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。

汇编语言的特点:

(1).面向机器的低级语言,通常是为特定的计算机或系列计算机

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2