烟台大学单片机课程设计电子秒表设计说明书

烟台大学单片机课程设计电子秒表设计说明书
烟台大学单片机课程设计电子秒表设计说明书

MICROSOFT

《单片机原理及其接口技术》课程设计

电子秒表

姓名:邓峥嵘

学院:机电汽车工程学院

班级:机113-2

学号:201156503203

《新编单片机原理及应用》课程设计

电子秒表

说明书

目录

一、绪论 (3)

1.1概述 (3)

1.2设计目的 (3)

1.3设计任务和内容 (3)

二、总体设计及核心器件简介 (4)

2.1总体设计 (4)

2.2硬件设计 (4)

2.3软件设计 (13)

三、数字秒表的安装与调试 (17)

3.1软件的仿真与调试 (17)

3.2硬件的安装与调试 (17)

3.3汇编程序 (18)

四、设计体会与总结 (22)

参考文献 (23)

第一章绪论

1.1概述

单片微型计算机简称单片机,又称微控制器,是微型计算机的一个重要分支。单片机是20世纪七十年代中期发展起来的一种大规模集成电路芯片,是集CPU、RAM、ROM、I/O接口和终端系统与同一硅片的器件。20世纪八十年代以来单片机发展迅速各类新产品不断涌现出现许多新产品,出现了许多高性能新型机种现已成为工业控制和各控制领域的支柱产业之一。由于单片机功能强、体积小、可靠性好、价格便宜等独特优点因而受到人们的高度重视并取到了一系列的科研成果,成为传统工业技术改造和新产品更新换代的理想机种,并具有广阔的发展前景。

本设计运用所学的单片机知识,将单片机与普通秒表相结合设计了电子秒表,具有显示直观、读取方便、精度高等优良特点,在计时中应用广泛。

1.2设计目的

加强对51系列单片机的构造了解及应用,熟悉汇编语言或C语言编程,综合掌握和理解设计各部分的工作原理、设计过程、芯片器件的选择方法、模块化编程等多项知识。

(1)用单片机模拟实现具体应用使个人设计系统能够真正使用;

(2)把理论知识与实践知识相结合,充分发挥个人能力,并在实践中得到锻炼;(3)提高利用已学的知识分析和解决问题的能力;

(4)提高动手实践能力。

1.3设计任务及内容

1.3.1设计任务

结合教材及参考资料,用80C51单片机模拟实现电子秒表的开启,计时,停止并显示时间等功能。

1.3.2设计内容

(1)填写设计任务书;

(2)进行总体设计,画出设计原理图;

(3)用PROTEUS软件画出设计电路图;

(4)用Keil软件编写程序;

(5)在PROTEUS里模拟并调试程序达到期望功能。

第二章总体设计及核心器件简介

2.1 总体设计

本设计中包括硬件电路的设计和系统程序的设计。其硬件电路的设计主要包括单片机的选择、显示电路的选择与设计、按键电路的选择与设计、时钟电路的选择与设计、复位电路的选择与设计等。系统程序的设计包括系统程序设计思路、系统资源的分配、汇编程序的设计等。

2.2 硬件设计

2.2.1 硬件系统总体设计

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

1.利用80C51单片机的定时器/计数器定时和记数的原理,使其能精确计时。利用中断系统使其实现开始暂停的功能。P0口输出段码数据,P

2.2-P2.4口作列扫描输出,P1.0、P

3.2、P3.3口接三个按钮开关,分别实现电子秒表的启动、开始、暂停功能。电路原理图设计最基本的要求是正确性,其次是布局合理,最后在正确性和布局合理的前提下力求美观。硬件电路图按照图2.1进行设计。

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

2.根据要求知道秒表设计主要实现的功能是计时和显示。因此设置了四个按键和三位数码管显示时间,三个按键分别是启动、开始,停止和复位按键。利用这四个键来实现秒表的全部功能,而三位数码管则能显示00.0-99.9秒的计时。

本设计中,数码管显示的数据存放在内存单元7BH-7DH中。其中7BH存放0.1秒位数据,7CH存放1秒位数据,7DH存放10秒位数据,每一地址单元内均为十进制BCD 码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出7BH-7DH某一地址中的数据,然后查得对应的显示用段码,并从P0口输出,P2口将对应的数码管选中供电,就能显示该地址单元的数据值。

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

4.按键的处理。这两个键采用中断的方法来识别,对开始和停止键采用外部中断INT0、INT1的方式,即A、B键分别接P3.2、P3.3口。

2.2.2 单片机的选择

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

80C51是MCS-51系列单片机中的一个子系列,是一族高性能兼容型单片机。其内部资源分配和性能如下;8位CPU;寻址能力2X64K;4KB的内部ROM和128B内部RAM;四个8位I/O接口电路;一个串行全双工异步接口;五个中断源和两个中断优先级;采用CMOS工艺电流小,低功耗。

80C51各引脚主要功能简介:

(1)Vss(20脚):接地

(2)VCC(40脚): 主电源+5V

(3)XTAL1(19脚):接外部晶体的一端。在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,对于HMOS单片机,该端引脚必须接地;对于CHMOS单片机,此引脚作为驱动端。

XTAL2(18脚):接外部晶体的另一端。在片内它是一个振荡电路反相放大器的输出端,振荡电路的频率是晶体振荡频率。若需采用外部时钟电路,对于HMOS单片机,该引脚输入外部时钟脉冲;对于CHMOS单片机,此引脚应悬浮。

(4) RST(9脚): 单片机刚接上电源时,其内部各寄存器处于随机状态,在该脚输入24个时钟周期宽度以上的高电平将使单片机复位(RESET)

(5)PSEN(29脚): 在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效。不过,在访问片外数据存储器时,这两次有效PSEN信号不出现。PSEN端同样可驱动8个LSTTL 负载。我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作。

(6)ALE/PROG(30脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选通信号。CPU在向片外存储器取指令期间,PSEN信号在12个时钟周期中两次生效。不过,在访问片外数据存储器时,这两次有效PSEN信号不出现。PSEN端同样可驱动8个

LSTTL负载。我们根据PSEN、ALE和XTAL2输出端是否有信号输出,可以判别80C51是否在工作。

(7)EA/VPP(31脚):当EA端输入高电平时,CPU从片内程序存储器地址0000单元开始执行程序。当地址超出4KB时,将自动执行片外程序存储器的程序。当EA输入低电平时,CPU仅访问片外程序存储器。在对87C51EPROM编程时,此引脚用于施加编程电

压VPP。

(8)输入/输出引脚:

1)P0.0—P0.7 (39脚—32脚)

2)P1.0—P1.7 (01脚—08脚)

3)P2.0—P2.7 (26脚—21脚)

4)P3.0—P3.7 (10脚—17脚)

图2.2 80C51引脚图

2.2.3显示电路的选择与设计

1.对于数字显示电路,通常采用液晶显示或数码管显示。对于一般的段式液晶屏,需要专门的驱动电路,而且液晶显示作为一种被动显示,可视性差,不适合远距离观看;对于具有驱动电路和单片机接口的液晶显示模块(字符或点阵),一般多采用并行接口,对单片机的接口要求较高,占用资源多。而数码管作为一种主动显示器件,具有亮度高、响应速度快、防潮防湿性能好、温度特性极性、价格便宜、易于购买等优点,而且有远距离视觉效果,很适合夜间或是远距离操作。因此,本设计的显示电路采用7段数码管作为显示介质。

2. 数码管显示可以分为静态显示和动态显示两种。由于本设计需要采用五位数码管显示时间,如果静态显示则占用的口线多,硬件电路复杂。所以采用动态显示。

动态显示是一位一位地轮流点亮各位数码管,这种逐位点亮显示器的方式称为位扫描。通常各位数码管的段选线相应并联在一起,由一个8位的I/O口控制;各位的公共阴极位选线由另外的I/O口线控制。动态方式显示时,各数码管分时轮流选通,要使其稳定显示必须采用扫描方式,即在某一时刻只选通一位数码管,并送出相应的段码,在另一时刻选通另一位数码管,并送出相应的段码,依此规律循环,即可使各位数码管显示将要显示的字符,虽然这些字符是在不同的时刻分别显示,但由于人眼存在视觉暂留

效应,只要每位显示间隔足够短就可以给人同时显示的感觉。

图2.3 显示电路基本原理图

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

共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起,如图2.4(b),通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。

图2.4(a)数码管引脚图(b)共阳极内部结构图(c)共阴极内部结构共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起,如图2.4(c),通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端,当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。

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

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

字型共阴极代码字型共阴极代码

0 3FH 5 6DH

1 06H 6 7DH

2 5BH 7 07H

3 4FH 8 7FH

4 66H 9 6FH

4. 动态显示电路由显示块、字形码驱动模块、字位驱动模块三部分组成。如图2.3所示为本系统的3位LED动态显示器接口电路。图中,3个数码管的8段段选线分别与外接上拉电阻的单片机P0口对应相连,而3个数码管的位控制端则和NPN型三极管的集电极相连接。单片机的P2.2~P2.4口则分别对应数码显示管的最低位到最高位,P2.2~P2.4口分别和三个NPN型三极管的基极相连,做三极管导通的控制端,而NPN 型三极管选用9013型三极管。根据9013的资料显示:其耐压值为40V,最大功率为0.65W,最大电流为0.5A,电气性能完全满足本设计的要求。另外数码管显示是采用动态显示,所以对三极管的开关频率有一定的要求。根据电子秒表的设计计算可知动态显示的频率最高为3KHz,而9013的导通频率为150MHz,完全能满足本设计的要求,所以最终选取9013三极管最为位控制开关。

5.由于数码管是有P0口来驱动,它内部没有上拉电阻,作为输出口时驱动能力比较弱,不能点亮数码显示管,因此P0口必须接上拉电阻来提高驱动能力。另外一位共阴数码管的驱动电流一般为20mA左右,如果电流太大容易造成数码管损坏,所以也需要根据电源的电压值来确定上拉电阻的大小。如果电阻过小,势必会形成灌电流过大,造成单片机IO的损坏,如果电阻过大,那么对拉电流没有太大的影响。电源供电电压为5V,当上拉电阻选用220Ω电阻时灌电流为22mA。不会损坏单片机的I/O口,同时也可以为数码显示管起到限制电流的保护作用。

2.2.4按键电路的选择与设计

本设计中有四个按键,分别实现启动、开始、暂停和复位功能。按设计要求对开始和停止键采用外部中断INT0、INT1的方式,即A、B键分别接P3.2、P3.3口。四个按键均采用低电平有效,具体电路连接图如图2.5所示。

1.当按键没有按下时,单片机的I/O口直接连接电源,因此需要接上拉电阻来进行

限流,本设计中选取阻值为100Ω的电阻作为上拉电阻,根据计算可知此时的灌电流为50mA,查看80C51的资料得知次电流在安全范围内,符合安全设计要求。

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

第二功能如表2.2

图2.5 按键电路

表2.2 P3口引脚第二功能表

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(片内数据存储器读选通信号输出端)

2.2.5 时钟电路的选择与设计

单片机的时钟信号用来提供单片机内各种微操作的时间基准,80C51片内设有一个由反向放大器所构成的振荡电路,XTAL1和 XTAL2分别为振荡电路的输入和输出端,80C51单片机的时钟信号通常用两种电路形式得到:内部振荡方式与外部振荡方式。外部方式的时钟很少用,若要用时,只要将XTAL1接地,XTAL2接外部振荡器就行。对外部振荡信号无特殊要求,只要保证脉冲宽度,一般采用频率低于12MHz的方波信号。

时钟发生器把振荡频率两分频,产生一个两相时钟信号P1和P2供单片机使用。P1在每一个状态S的前半部分有效,P2在每个状态的后半部分有效。本设计采用的内部振荡方式,内部振荡方式所得的时钟信号比较稳定,实用电路中使用较多。本设计系统的时钟电路如图2.6所示。只要按照图2.6所示电路进行设计连接就能使系统可靠起振并能稳定运行。图中,电容器C1、C2起稳定振荡频率、快速起振的作用,电容值一般为5~33pF。但在时钟电路的实际应用中一定要注意正确选择其大小,并保证电路的对称性,尽可能匹配,选用正牌的瓷片或云母电容,如果可能的话,温度系数尽可能低。本设计

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

(a)原理图(b)电路连接图

图2.6 内部振荡电路

2.2.6复位电路的选择与设计

关于单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,必须配合相应的外部电路才能实现。

根据应用的要求,复位操作通常有两种基本形式:上电复位、手动复位。

上电复位要求接通电源后,自动实现复位操作。80C51单片机的上电复位POR (Power On Reset)实质上就是上电延时复位,也就是在上电延时期间把单片机锁定在复位状态上。在单片机每次初始加电时,首先投入工作的功能部件是复位电路。复位电路把单片机锁定在复位状态上并且维持一个延时(记作TRST),以便给予电源电压从上升到稳定的一个等待时间;在电源电压稳定之后,再插入一个延时,给予时钟振荡器从起振到稳定的一个等待时间;在单片机开始进入运行状态之前,还要至少推迟2个机器周期的延时。

上述一系列的延时,都是利用在单片机RST引脚上外接一个RC支路的充电时间而形成的。典型复位电路如图2.7(a)所示,其中的阻容值是原始手册中提供的。在经历了一系列延时之后,单片机才开始按照时钟源的工作频率,进入到正常的程序运行状态。在电源电压以及振荡器输出信号稳定之后,又等待了一段较长的延时才释放RST信号,使得CPU脱离复位锁定状态;而RST信号一旦被释放,立刻在ALE引脚上就可检测到持续的脉冲信号。

由于标准80C51的复位逻辑相对简单,复位源只有RST一个(相对新型单片机来说,复位源比较单一),因此各种原因所导致的复位活动以及复位状态的进入,都要依靠在外接引脚RST上施加一定时间宽度的高电平信号来实现。

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

以省略的,理由是一些CMOS单片机芯片内部存在一个现成的下拉电阻Rrst。如图2.8所示。因此,在图2.7(a)的基础上,上电复位延时电路还可以精简为图2.7(b)所示的简化电路(其中电容C的容量也相应减小了)。

图2.7上电复位延时电路图2.8复位引脚RST内部电路在每次单片机断电之后,须使延时电容C上的电荷立刻放掉,以便为随后可能在很短的时间内再次加电作好准备。否则,在断电后C还没有充分放电的情况下,如果很快又加电,那么RC支路就失去了它应有的延迟功能。因此,在图2.7(a)的基础上添加一个放电二极管D,上电复位延时电路就变成了如图2.7(c)所示的改进电路。也就是说,只有RC支路的充电过程对电路是有用的,放电过程不仅无用,而且会带来潜在的危害。于是附加一个放电二极管D来大力缩短放电持续时间,以便消除隐患。二极管D只有在单片机断电的瞬间(即VCC趋近于0 V,可以看作VCC对地短路)正向导通,平时一直处于反偏截止状态。

手动复位要求在电源接通的条件下,在单片机运行期间,如果发生死机,用按钮开关操作使单片机复位。单片机要完成复位,必须向复位端输出并持续两个机器周期以上的高电平,从而实现复位操作。

RSET

(a)原理图(b)电路连接图

图2.9 单片机复位电路

本设计采用上电且开关复位电路,如图2.9所示上电后,由于电容充电,使RST 持续一段高电平时间。当单片机已在运行之中时,按下复位键也能使RST持续一段时间的高电平,从而实现上电且开关复位的操作。通常选择C=10~30μF,R=100Ω~1K

Ω,本设计采用的电容值为22μF的电容和电阻为1K的电阻。

2.2.7 系统总电路的设计

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

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

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

图2.10 系统总电路图

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

按键电路与单片机的端口连接可以由用户自己设定,本设计中软件复位键接单片机的P1.0设为低电平有效。而另外的开始键和暂停键两键使用了外部中断,所以需要连接到单片机的特殊接口P3.2和P3.3,这两个I/O口的第二功能分别为单片机的外部中

断INT0端口和外部中断INT1端口。同样设置为位低电平有效。

显示电路由三位数码管组成,采用动态显示方式,因此有8位段控制端和3位位控制端,八位段控制接P0口,P0.0-P0.7分别控制数码显示管的a、b、c、d、e、f、g、dp显示,80C51的P0口没有集成上拉电阻,高电平的驱动能力很弱,所以需要接上拉电阻来提高P0的高电平驱动能力。三位位控制则由低位到高位分别接到P2.2-P2.4口,NPN三极管9013做为位控制端的开关,当P2.2-P2.4端口任意一个端口为高电平时,与其相对应的三极管就导通,对应的数码管导通显示。

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

2.3 软件设计

2.3.1 程序设计思想

结合电路,程序的总体思路如图2.11。

2.3.2 系统资源的分配

本设计系统所用到的单片机端口数比较多,所以在这里将对数字电子秒表的硬件资源的大概分配加以说明。片内RAM的分配、各功能键的定义以及各端口的分配安排如表2.3所示。

表2.3 端口的分配安排表

名称功能描述初始化值

7BH-7DH 0.1s-10s位显示寄存区00H

R3- R5 0.1s-10s位溢出计数区

定时器T0 控制秒表的最小精度3CB0H

外部中断INT0 停止中断信号入口

外部中断INT1 开始中断信号入口

2.3.3 主程序设计

本系统程序主要模块由主程序、定时中断服务程序、外部中断INT0服务程序和外部中断INT1服务程序组成。其中主程序是整个程序的主体。可以对各个中断程序进行调用,协调各个子程序之间的联系。

系统(上电)复位后,进入主程序,主程序流程图如图2.11。首先对系统进行初始化,包括设置各入口地址、中断的开启、对各个数据缓存区清“0”、赋定时器初值,初始化完毕后,就进入数码管显示程序。数码管显示程序对显示缓存区内的数值进行调用并在数码管上进行动态显示。显示

一次就对P1.0进行一次扫描,查询启动键P1.0是否按下,当启动键按下后,数码管全零显示,没有按下则返回开始,重新循环显示数字8。

在主程序中还进行了赋寄存区的初始值、设置定时器初值以及开启外部中断等操作,当定时时间到后就转去执行定时中断程序。当外部中断有请求则去执行外部中断服务程序,并在执行完后返回主程序。

2.3.4 中断程序设计

现在方案中采用了两个中断,外部中断INT0,INT1。CPU在响应中断时,先处理高级中断,在处理低级中断,若有多个同级中断时,则按自然优先顺序处理。例如当CPU 正在处理一个中断申请时,有出现了另一个优先级比它高的中断请求,这是,CPU就暂停终止对当前优先级较低的中断源的服务,转去响应优先级比它高的中断请求,并为其服务。待服务结束,再继续执行原来较低级的中断服务程序。而当CPU为级别高的终端服务程序服务时,如果级别低的中断发出中断请求,此时CPU是不会响应的,所以为了避免开始和暂停两个按键中的一个出现没有响应的情况,在进行程序编辑时要注意对中断的使用,避免出现中断的嵌套。,合理分配中断对本设计的实现是至关重要的。

80C51的自然优先级顺序排列如下:

中断源最高

外部中断INT0

定时/计数器T0溢出中断

外部中断INT1

定时/计数器T1溢出中断

串行口中断最低

数字式秒表中的两个按键采用了中断实现功能。开始采用外部中断INT0,停止采用外部中断INT1。另外程序中还用到了定时/计数器0溢出中断进行计时。依据设计要求,停止的外部中断INT1中断级别最高,计时的定时/计数器0溢出中断次之,开始的外部中断INT0级别最低。

(1)外部中断INT0服务程序

外部中断INT0服务程序结合外部P3.2开始键实现数字电子秒表的计时开始功能,具体流程图如图2.12。

当按下P3.2开始键按下向CPU发出外部中断请求,CPU转向外部中断0服务程序执行,启动定时器T0。

(2

外部中断INT1服务程序结合外部P3.3停止键实现数字电子秒表的停止功能,具体

流程图如图2.13。

当按下P3.2停止键按下向CPU发出外部中断请求,CPU转向外部中断1服务程序执行,停止定时器T0。

(3)定时中断服务程序

当定时/计数器T0器溢出后,向CPU发出中断请求信号。CPU跳转到定时中断程序执行。定时中断程序是一个进位程序,主要负责对0.1s的加一。当如果满十就向0.1s 位加一,依次类推,最终达到99.9秒后归零,从零开始再次计时。

定时/计数器T0工作在方式1下,THX和TLX组成一个16位的二进制数计数器。单片机开机或复位时,它的值为00H,当T0启动后,从第一个输入脉冲开始计时,每来一个脉冲计数加一,即从0000000000000000开始计数到1111111111111111,再计数一个脉冲时TH0和TL0组成的16位计数器将会从16个1变成16个0,并产生溢出,溢出位将被送到TF0标志位,通过溢出标志产生溢出中断请求。显然,T0定时器在方式1下引起一次中断所允许计数的最多脉冲个数为216 个。

但如果定时计数器如果每次都固定从0开始计数,到计满后,再向CPU发出溢出中断请求信号那是毫无意义的。为了使定时计数器在规定的计数脉冲个数字之后(此时应小于216 个脉冲),向CPU发出溢出中断请求,可采取预先向THX和TLX中放入一个初值X的方法,使计数器以X值为起始值开始计数,即X+1,X+2,……直至计数器计满,从1全变为0。设需要计数的脉冲个数为N,则有:N=216-X。在定时方式下:定时时间T=N*Tcy=(216—X)*12/fosc。现在本设计要求50ms实现一次中断,选择定时器T0工作在方式1。所以需要根据以上条件计算出T0的初值。设T0的初值为X,则 X =216—50ms/1us=15536D=3CB0H。即THX=3CH(取X的高8位)TLX=0B0H(取X的低5位)由于定时50ms只是一个理想化的时间,其中并没有考虑到中断后单片机执行语句所花的时间。虽然执行语句所花的时间很短只有即微秒,但积少成多,数字秒表一秒中要溢出中断20次,积累起来误差就能达到毫秒级,这对于精度到达毫秒级的数字电子秒表来说是很大的误差。所以要在后期编程时还要将单片机读程序的时间考虑进去,在对定时器赋初值时将单片机需要执行的语句所花的时间加上,这样就能使数字电子秒表的误差达到最小。

第三章数字电子秒表的安装与调试

3.1 软件的仿真与调试

Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件,它可以仿真、分析(SPICE)各种模拟器件和集成电路。该软件的主要特点总结后有以下四点:①实现

了单片机仿真和SPICE电路仿真相结合的功能。②支持目前主流单片机系统的仿真。③提供了软件调试功能,并可以与WAVE联合仿真调试。④具有强大的原理图绘制功能。总之,该软件是一款集单片机和SPICE分析于一身的仿真软件,功能极其强大。在电子领域中也起到了很大的作用,它的出现仿真不需要先焊接电路,可以先仿真调试通过后在焊电路,节省了不少在硬件调试上所花的时间。

Proteus ISIS的工作界面是一种标准的Windows界面。它包括标题栏、主菜单、状态栏、标准工具栏、绘图工具栏、对象选择按钮、预览对象方位控制按钮、仿真进程控制按钮、预览窗口、对象选择器窗口、图形编辑窗口等十几个工具,方便了使用者的使用。

Proteus SISI绘制原理图的操作与Protel 99se绘制原理图的操作基本相同,在这里就不再作赘述。下面拿本设计中的一个仿真例子作简述说明。运行Proteus SISI后,绘制病床呼叫系统的原理图。

首先打开已经画好的proteus DSN文件,双击图中的80C51芯片,就弹出一个窗口,在Program File项中通过路径选择在WAVE中生成的HEX文件,双击选中后确定,这样仿真图中的80C51芯片就已经读取了本设计中的HEX文件。单击“三角形按钮”进行仿真。通过对仿真结果的观察来对程序进行修改,最终使程序到达设计要求。

3.2 硬件的安装与调试

按照之前设计好的数字电子秒表原理图,详细计算系统中各个元件的参数,选择相应器件,制作实际电路板。由于考虑到万能板大小的问题及元件之间连线的方便,在焊接元器件前必须考虑元件的布局然后进行实际操作。

制作好的电路板可以用万用表(200欧姆档)的红、黑表笔测试电路板的每条走线,当其电阻非常小时,证明走线没有断开,当其电阻很大时,证明该条走线断了,应该重新走线,使电路板在电气上得到正确地连接。选用万用表的20K欧姆档,检测电路中是否存在短路。因为系统采用的是共阴极数码管作为显示电路,必须确保数码管的公共端接的是低电平。

(1)晶振电路的测试

在单片机正常运行的必要条件是单片机系统的时钟稳定正常。实际中,因为各种原因导致系统时钟不正常而出现系统无法正常运行的情况时有,因此系统时钟是否振是通电检查的首要环节。在系统通电的状况下,用万用表的直流电压档(20V),分别测量XTAL1和XTAL2引脚的电压,看是否正常,在调试过程中,测得电压XTAL1引脚应为

2.05V,XTAT2应为2.15V。

(2)复位电路的测试

复位不正常也会导致系统不能工作。如果复位引脚始终为高电平,系统将始终处于复位状态;如果始终为低电平,不能产生复位所需的高电平信号脉冲,则系统也可能无法正常工作。单片机正常工作时,RST复位引脚应为0V,按下复位按键时,复位引脚为高电平5V左右。

(3)显示电路的测试

显示电路是数字电子秒表正常运行最直观的观察窗口,我们可以通过观察显示电路的显示结果观察系统能否正常运行。当显示电路按照电路图焊接好后,用万用表的测二极管档位,将黑表笔接共阴数码管的公共段,然后将红表笔接数码管的各段,当数码管的段能正常显示,说明各点焊接正常。

3.2 汇编程序

ORG 0000H

LJMP MAIN

ORG 0003H ;外部中断INT0中断入口

LJMP START

ORG 000BH ;定时器T0中断入口

LJMP UPDATE

ORG 0013H ;外部中断INT1中断入口

LJMP STOP

MAIN: MOV DPTR, #TAB ;存入表头地址

MOV TMOD, #01H ;置T0为方式1

MOV TH0, #3CH ;赋定时器初值,50毫秒

MOV TL0, #0B0H

MOV 7BH, #00H ;0.1秒的存储空间

MOV 7CH, #00H ;1秒的存储空间

MOV 7DH, #00H ;10秒的存储空间

MOV R2, #00H ;R2、R3、R4寄存器置零

MOV R3, #00H

MOV R4, #00H

SETB EA ;开中断总允许

SETB EX0 ;开外部中断INT0

SETB EX1 ;开外部中断INT1

SETB IT0 ;外部中断0位边沿触发方式

SETB IT1 ;外部中断1位边沿触发方式

SETB ET0 ;定时器T0允许位

XIAN1: MOV P0, #07FH ;显示数字8

SETB P2.2 ;接通0.1s数码管

LCALL DELAY1 ;调用延时子程序1

CLR P2.2 ;断开0.1s数码管

MOV P0, #0FFH ;显示数字8及小数点

SETB P2.3 ;接通1s数码管

LCALL DELAY1 ;调用延时子程序1

CLR P2.3 ;断开1s数码管

MOV P0, #07FH ;显示数字8

SETB P2.4 ;接通10s数码管

LCALL DELAY1 ;调用延时子程序1

CLR P2.4 ;断开10s数码管

JNB P1.0,XIAN2 ;按下启动键,跳转到XIAN2(P1.0=0跳转) LJMP XIAN1 ;返回显示程序,重新进行显示

XIAN2: MOV A, 7BH ;显示0.1s位数字

MOVC A, @A+DPTR ;查表

MOV P0, A

SETB P2.2

LCALL DELAY2 ;调用DELAY2

CLR P2.2

MOV A, 7CH ;显示1s位数字

MOVC A, @A+DPTR

MOV P0, A

SETB P2.3

LCALL DELAY2

CLR P2.3

MOV A, 7DH ;显示10s位数字

MOVC A, @A+DPTR

MOV P0, A

SETB P2.4

LCALL DELAY2

CLR P2.4

MOV P0, #80H ;显示小数点

SETB P2.3

LCALL DELAY2

数字电子秒表课程设计

西安航空职业技术学院 电子技术实践课程设计报告 课设题目:数字电子秒表 所属系部:电子工程系 指导老师: 作者: 专业:电子信息工程技术 西安航空职业技术学院制 西安航空职业技术学院 课程设计任务书 题目:数字电子秒表 任务与要求: 1、设计数字电子秒表原理图。 2、用6个数码管显示分、秒、毫秒。 3、计时误差不得超过1s;具有清零、启动计时、暂停计时及继续 计时等控制功能。 4、画出总体电路图。 5、安装自己设计的电路,按照自己设计的电路,在通用板上焊接。 焊接完毕后,应对照电路图仔细检查,看是否有错接、漏接、 虚焊的现象。 6、调试电路。 时间:2010年11月29 日至 2010年12 月10 日共2周

所属系部:电子工程系 指导单位或教研室:电子信息教研室 西安航空职业技术学院制 摘要: 采用现代数字电路设计方法和EDA技术,即自顶向下的设计方法,应用protues开发平台进行设计并仿真验证和硬件测试。从总体设计框图开始,将设计任务逐步分解,直到可以用标准的集成电路部件实现,然后将各部件联结成系统,通过protues集成开发平台进行设计的分析综合和时序仿真验证。最后,在分析时序仿真结果的基础上,对设计进行进一步的修改和完善,已达到对设计电路正确运行且学会运用protues电路设计与仿真的目的。 关键词: 555定时器;LED;暂停计时 Abstract: Adopt modern digital circuit design method and EDA technique, namely the top-down design methods, application protues development platform design and simulation validation and hardware test. From the beginning, overall design diagram design task decomposed step by step, until can use standard of integrated circuit components, and then will realize connecting components into system, through protues integrated development platform design of comprehensive analysis and time-series simulation prove. Finally, by analyzing the timing simulation results, on the basis of design for further revised and perfected, reached the correct operation of circuit design and learn to use protues circuit design and simulation of purpose. Key words: 555 timing, Leds, Suspended timing 目录 1 设计方案的选择 (1) 2 总体框架设计 (2) 3 分步电路设计 (3) 3.1控制电路的设计 (3) (3) (3) 3.2数码管显示电路 (4)

单片机课程设计 秒表计时器(DOC)

课程设计名称:单片机原理及接口技术 题目:基于单片机的秒表计时器设计 学期:2014-2015学年第一学期 专业:电气技术 班级: 姓名: 学号: 指导教师:

辽宁工程技术大学 课程设计成绩评定表

课程设计任务书 一、设计题目 秒表计时器 二、设计任务 本课题以单片机为核心,设计和制作一个秒表计时器。 三、设计计划 课程设计一周 第1天:查找资料,方案论证。 第2天:各部分方案设计。 第3天:各部分方案设计。 第4天:撰写设计说明书。 第5天:校订修改,上交说明书。 四、设计要求 1、绘制软件流程图并利用汇编语言编写软件程序; 2、绘制系统硬件原理图; 3、形成设计报告。 指导教师: 教研室主任: 2014年5月26 日

本设计利用89C51单片机设计秒表计时器,通过LED显示秒十位和个位,在设计过程中用一个存储单元作为秒计数单元,当一秒到来时,就让秒计数单元加一,通过控制使单片机秒表计时,暂停,归零。设计任务包括控制系统硬件设计和应用程序设计。 关键词:51单片机;74HC573;LED数码管

综述 (1) 1 程序方案 (2) 1.1方案论证 (2) 1.2总体方案 (2) 2部分设计 (3) 2.1 89C51单片机 (3) 2.2晶体振荡电路 (4) 2.3硬件复位电路 (5) 2.4显示电路 (6) 2.5整体电路图 (7) 3程序设计 (8) 3.1程序流程框图 (8) 3.2显示程序流程图 (9) 3.3汇编源程序 (10) 4调试说明 (13) 4.1概述 (13) 4.2电路原理图 (13) 心得体会 (15) 参考文献 (16)

单片机课程设计报告实验报告

课程设计报告 学号: 1328403028 姓名:张帅华 班级: 13电子信息工程指导老师:邓晶 苏州大学电子信息学院 2016年4月

摘要 随着时代的进步和发展,单片机技术已经成为一种比较成熟的技术,普及到我们生活、工作、科研等各个领域。本次课程设计包含四个基于STC89C52单片机的设计,分别是:基于单总线数字式温度传感器DS18b20的数字温度计的设计;基于2K位串行CMOS 的EEPROM AT24C02的数字密码锁的设计;基于SPI接口实时时钟芯片DS1302的电子日历的设计以及基于无线收发芯片nrf24L01的简单无线通讯系统的设计。 关键词:单片机 DS18B20 AT24C02 DS1302 NRF24L01

目录 摘要 (1) 目录 (2) 第1章基于DS18B20的数字温度计设计 (3) 1.1 设计要求 (3) 1.2 系统组成 (3) 1.3 系统设计 (3) 1.3.1 硬件设计 (3) 1.3.2软件设计 (4) 1.4 设计结果 (6) 第2章基于AT24C02的电子密码锁设计 (7) 2.1 设计要求 (7) 2.2 系统组成 (7) 2.3 系统设计 (8) 2.3.1 硬件设计 (8) 2.3.2 软件设计 (9) 2.4 设计结果 (9) 第3章基于DS1302的电子日历的设计 (11) 3.1 系统功能 (11) 3.2 系统组成 (11) 3.3 系统设计 (11) 3.3.1 硬件设计 (11) 3.3.2 软件设计 (13) 3.4 设计结果 (14) 第4章基于NRF24L01的无线通信系统的设计 (15) 4.1 系统功能 (15) 4.2 系统组成 (15) 4.3 系统设计 (15) 4.3.1 硬件设计 (15) 4.3.2 软件设计 (16) 4.4 设计结果 (16) 总结 (17)

单片机秒表系统设计课程设计

单片机课程设计 题目名称:基于8051的单片机秒表系统设计 姓名学号:肖波(0805821) 王学(08058119) 王璐凯(08058117) 王贤达(08058118) 班级:电信081 2011.6 信息与电子工程学院

单片机课程设计报告—— 单片机秒表系统设计 信电学院2008级肖波(0805821) 王学(08058119) 王璐凯(08058117) 王贤达(08058118) 摘要:本实验是基于8051 单片机所设计的,利用单片机的定时器/计数器定时和记数的原理可以实现秒表的计数以及计数的开启/暂停/继续与复位。使用LED数码七段数码管予以显示。 关键词:8051 七段数码管秒表系统 1.1 目的: 1、利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。 2、综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。 3、通过本次系统设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。 4、通过本次系统设计,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。 1.2用途与功能:

本系统利用单片机的定时器/计数器定时和记数的原理,通过采用protel仿真软件来模拟实现。模拟利用8051单片机、LED数码管以及控件来控制秒表的计数以及计数的开启/暂停/继续与复位!其中有两个数码管用来显示数据,一个数码管显示秒(两位),另一个数码管显示十分之一秒,十分之一秒的数码管计数从0~9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。计秒数码管采用两位的数码管,当计数超过范围是所有数码管全部清零重新计数。 二、硬件设计 2.1 硬件设计思想 8051单片机芯片一个、LED数码显示管三个,低压电源、开关(按钮)两个、电阻、电容及导线若干。芯片介绍:8051是一种带4K字节闪烁可编程可擦除只读存储器,8位微处理器,俗称单片机。 主要特性: ·4K字节可编程闪烁存储器 ·寿命:1000写/擦循环 ·数据保留时间:10年 ·全静态工作:0Hz-24Hz ·三级程序存储器锁定 ·128*8位内部RAM

电子秒表课程设计

课程设计 题目 学院 专业 班级 姓名 指导教师 年月日

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目:电子秒表的设计与制作 初始条件: (1)计数精度可达1/100秒 (2)可显示时间99.99秒 (3)具有开关可启动,暂停,清零功能 选作:设计可改变计时时间(最大59.99秒)的电路 要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求) (1)设计任务及要求 (2)方案比较及认证 (3)系统框图,原理说明 (4)硬件原理,完整电路图,采用器件的功能说明 (5)调试记录及结果分析 (6)对成果的评价及改进方法 (7)总结(收获及体会) (8)参考资料 (9)附录:器件表,芯片资料 时间安排: 6月16日~6月19日:明确课题,收集资料,方案确定 6月19日~1月21日:整体设计,硬件电路调试 6月21日~6月24日;报告撰写,交设计报告,答辩 指导教师签名:2014年 6月日

目录 摘要 (4) 电子秒表的设计与制造 (5) 1 课题分析 (5) 2系统设计方案的选择 (5) 3 电子秒表系统主体流程框图 (6) 4 单元电路的设计 (7) 4.1脉冲产生电路 (7) 4.2 计数电路 (8) .3 译码显示电路 (9) 4.4 控制电路 (10) 5 仿真测试 (10) 6 电子秒表设计原理图 (11) 7 结束语 (11) 参考文献 (12) 附录 (13) 附录一:选作:设计可改变计时时间的电路 (13) 附录二:74LS290功能表 (15) 附录三:74LS48功能表 (15)

摘要 电子秒表是一种数字显示计时装置,由于它走时准,设计简单,显示直观,因此被广泛运用于科学研究,体育运动,国防等方面。比如对物体速度,加速度的测量,体育比赛的时间的测量等。 数字电子秒表由组合逻辑电路和时序逻辑电路组成,555定时器组成多谐振荡器产生脉冲,在脉冲控制下的组合计数器电路通过一系列的触发产生数字信号,数字信号经译码器译码后输入到显示数码管显示时间。 电子秒表的广泛应用提高了人们的工作效率,随着电子技术的发展,电子秒表的精度,电路简易型等到了很大的提高,功能得到了完善。 关键词:秒表定时器效率

51单片机课程设计秒表

微控制器技术课程 设计报告 设计题目:秒表 专业:供用电技术 班级:供电141 学号:140315143 姓名:王晨铭 指导教师:李昊 设计时间:2016.6.21

微控制器技术课程设计任务书 设计题目:秒表 设计时间:2016.6.20 设计任务: 在单片机开发板或软件仿真,编制程序,实现以下功能 1、利用定时器实现秒表功能,精确到0.1S; 2、数码管显示当前计时时间; 3、设定三个键,计时开始,停止计时和复位清零。 背景资料:1、单片机原理与应用 2、检测技术 3、计算机原理与接口技术 进度安排: 1、第1天,领取题目,熟悉设计内容,分解设计步骤和任务; 2、第3天,规划设计软硬件,编制程序流程、绘制硬件电路。 3、第5天,动手制作硬件电路,或编写软件,并调试。 4、第7天,中期检查。 5、第9天,完善设计内容,书写设计报告。 6、第13天,提交设计报告,整理设计实物,等待答辩。 7、第14天,设计答辩。

目录 一、设计任务和要求 (3) (1)设计任务 (3) (2)设计要求 (3) 二、设计方案与论证 (3) 三、单元电路设计与参数计算 (4) (1)时钟电路 (4) (2)按钮电路 (4) (3)显示电路 (5) (4)单片机 (5) 四、原理图及器件清单 (6) ( 1 )总原理图 (6) (2)PCB图 (7) (3)Proteus仿真图 (7) (4)元器件清单 (8) 五、安装与调试 (8) (1)安装 (8) (2)调试 (8) 六、性能测试和分析 (9) 七、结论和心得 (9) 八、参考文献 (9)

题目:秒表 二、方案设计与论证 本设计分为时钟电路、按钮电路、显示电路和单片机四大部分,这些模块中单片机占主控地位。其模块电路如图2-1所示。时钟电路常用的有内部时钟方式和外部时钟方式,但因为本设计中只需要一片单片机,所以采用内部时钟方式比较简单。按钮电路中的“复位”按钮是按键手动复位,它有电平和脉冲两种方式,比较电路的复杂程度,本设计选择了按钮电平复位电路,其他几个按钮则是通过单片机判断高低电平的不同来控制按钮。显示电路所用的数码管有共阴和共阳之分,不管使用何种数码管,P0口作为I/O使用时都是需要上拉电阻才能驱动数码管。另外,因为单片机的4个并行I/O口的输出电流一般是1mA,短路电流为4mA左右,而数码管的最少驱动电流也需要10mA,因而不管在使用共阴数码管时,单片机输出口也必须使用上拉电阻提高输出电流,才能驱动数码管。为了使电路简单化,本设计选用共阳数码管。但根据显示方式的不同选择,我们可以有几种方案: 方案一:使用静态显示方式。静态显示方式下的数码管的显示字符一经确定,相应锁存器锁存的断码输出將维持不变,直到送入另一个字符的断码为止。因而此设计中使用的显示位数使用了三个8位并行I/0口。如果另外想扩展单片机功能,则能使用的输出管脚很是有限。 方案二:使用动态显示方式。这个显示方式是将所有显示位的段码线的相应段并联在一起,由一个8位I/O口控制,而各位的共阴或共阴极分别由相应的I/O线控制,形成各位的分时选通。这种显示方式,简化了硬件电路,特别在多位数码管显示时尤为突出。 本小组尝试了各种方案,在此报告中以静态显示方式为例说明。(动态显示方式省略) 显示电路 单片机 AT89C51 时钟电路 按钮电路

单片机课程设计51实验报告DOC

福建工程学院软件学院 题目:51开发洗衣机 班级:物联网工程1202 成员: 座号:04 28 指导老师: 日期:年月日课设报告

目录 1摘要 (1) 2.设计需求 (1) 2.1功能需求 (1) 2.1.1 基本功能 (1) 2.1.2扩展功能 (1) 2.2 设计要求 (2) 2.2.1 单片机芯片部件功能 (2) 2.2.2 LCD数码显示管部件功能 (2) 2.2.3 按键部件功能 (2) 2.2.4 蜂鸣器部件功能 (2) 3硬件设计及描述 (2) 3.1总体描述 (2) 3.2系统总体框图 (3) 3.3Proteus电路图 (3) 3.4各部分硬件介绍 (4) 3.4.1晶振Protues仿真 (4) 3.4.2LCDProtues仿真 (5) 3.4.3 按键Protues仿真 (5) 3.4.4上拉电阻Protues仿真 (6) 3.4.5C51芯片Protues仿真 (6) 3.4.6上电复位电路Protues仿真 (8) 3.4.7蜂鸣器Protues仿真 (9) 4 软件设计流程及描述 (10) 4.1程序流程图 (10) 4.2函数模块及功能 (10) 5功能实现 (11) 5.1程序烧入上电调试 (11) 5.2时间递增跳变 (12) 5.3比分更变 (13) 5.4比赛得分复位 (14) 5.5比赛时间复位 (14) 6 心得体会 (15) 7源程序代码: (16)

1摘要 是为了方便足球比赛时计时与计分及时与准确公开而引申出的实用产品。在此设计中接入了一个1602液晶显示屏,第一行用来记录赛程的时间,第二行用于显示比赛的得分情况。赛程计时用倒计时来计时。在比赛结束时按下相应按键蜂鸣器会响起,提醒比赛时间结束。 这次试验运用C语言进行编程,编程后利用Keil uVision来进行编译,再生成.hex文件装入芯片中,采用Proteus软件来仿真,检验功能是否能够正常实现,最后利用单片机MCS-51实机来实现功能。 本设计以AT89S51单片机作为核心,综合应用单片机定时器、中断、LCD1602 液晶显示等知识,设计一款单片机和简单外设控制的足球计分器应用,同时显示当前的比赛进行时间,比赛队伍,比分状况。 2.设计需求 2.1功能需求 2.1.1 基本功能 (1)屏上显示比赛已运行时间 (2)屏上显示A队和B队的得分 (3)屏上显示上下半场(H-L) (4)通过按键控制比分的增减 2.1.2扩展功能 (1)按键实现比赛场次的更换 (2)按键实现比赛计时的复位 (3)按键实现比赛比分的复位 (4)在比赛结束时,蜂鸣器在主裁判的控制下响起

电子秒表课程设计报告

电子信息工程专业10级学生单片机原理课程设计任务书 电子秒表的设计 一、设计要求 设计一个电子秒表,与通用秒表功能类似,有启动,暂停、复位等键。计时长长度为300秒,需显示百分秒。 二、设计方案分析

1.方案设计 数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。本设计用单片机组成数字电子秒表,力求结构简单、精度高为目标。 本系统采用C51系列单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软、硬件有机地结合起来。其中软件系统采用汇编语言编写程序,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 本设计利用STC89C52单片机的定时器/计数器定时和计数的原理,使其能精确计时。利用中断系统使其能实现开始暂停的功能。根据要求知道秒表设计主要实现的功能是计时和显示。因此设置了两个按键和LCD显示时间,两个按键分别是开始、停止和复位按键。利用这两个建来实现秒表的全部功能,而LCD 则能显示最多4.59.99秒的计时。电路原理图设计最基本的要求是正确性,其次是布局合理,最后在正确性和布局合理的前提下力求美观。硬件电路图按照图1.1进行设计。 图1.1 数字秒表硬件电路基本原理图 本设计中,数码管显示的数据存放在内存单元31H-33H中。其中31H存放分钟变量,32H存放秒钟变量,33H存放10ms计数值,即存放毫秒位数据,每一地址单元内均为十进制BCD码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD码数据的对应段码存放在ROM表中。显示时,先取出31H -33H某一地址中的数据,然后查得对应的显示位,并从P1口输出,就能显示该地址单元的数据值。 INT中断完成,定时溢出中断周期为1ms,当一处中断后向CPU 计时通过1 发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到4.59.99秒重新复位。 再看按键的处理。这两个键可以采用中断的方法,也可以采用扫描的方法来识别。复位键主要功能在于数值复位,对于时间的要求不是很严格。而开始和停止键则是用于对时间的锁定,需要比较准确的控制。因此可以对复位按键采取扫描的方式。而对开始和停止键采用外部中断的方式。 设计中包括硬件电路的设计和系统程序的设计。其硬件电路主要有主控制 器,显示电路和回零、启动、查看、停表电路等。主控制器采用单片机STC89C52,

单片机课程设计报告 秒表

单片机课程设计报告 院系:**** 班别:**** 课程名称:**** 姓名:**** 学号:**** 指导老师:**** 日期:****年**月**日

一、设计任务与要求 用89C51设计一个2位的LED数码作为“秒表”。显示时间为00—99秒,每秒自动加1,另设计一个“开始”键和一个“复位”键。能存储三组计时。按一次开始键,开始计数,第二次按开始键后,计时停止。之后再按开始键,则轮流显示存储的三个计时值,直到按复位键后,再按开始键,则开始重新计时。 二、设计思想和设计说明 本设计利用AT89C52单片机的定时器/计时器定时和计数的原理,使其能精确计时。设计中包括硬件电路的设计和系统程序的设计,其硬件电路主要有主控制器、计时与显示电路和复位电路等。主控制器用AT89C52,显示电路采用共阴极LED数码管显示计时时间。利用中断系统使其能实现开始暂停的功能。P3.2,P3.3开口接2个按钮,分别实现开始,暂停,复位的功能。电路原理图设计最基本得要求是正确性,其次布局合理,最后在正确性和布局合理的前提下力求完美。 三、硬件原理框图 四、硬件原理图与其软件配合

1、程序存储器 2、数据存储器

六、程序流程图

七、源程序清单 ====================================================== ORG 0000H AJMP MAIN ORG 0003H AJMP X0_INT ORG 000BH AJMP T0_INT ORG 0013H AJMP X1_INT MAIN: MOV TMOD,#01H ;T0定时方式1 MOV TH0, #(65536-50000) / 256 ;50ms@12MHz MOV TL0, #(65536-50000) MOD 256; SETB TR0 SETB ET0 ;开启定时中断 SETB EX0 SETB EX1 SETB EA ;定时器初始化结束,下面循环显示即可 MOV R1, #99H ;0~99计数. MOV R7, #1 ;50ms计数. MOV P0, #3FH MOV P2, #3FH LOOP: SJMP LOOP ;----------------------------------------------------------- DELAY: ;延时子程序. AA4: MOV R4, #0 DJNZ R4, $ DJNZ R4, $ RET ;----------------------------------------------------------- X0_INT: ;启动/停止 CPL F0 RETI ;----------------------------------------------------------- X1_INT: ;清零 MOV R1, #0 MOV P0, #3FH

单片机电子时钟课程设计实验报告

单片机电子时钟课程设 计实验报告 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

《单片机原理与应用》课程设计 总结报告 题目:单片机电子时钟(带秒表)的设计 设计人员:张保江江润洲 学号: 班级:自动化1211 指导老师:阮海容 目录 1.题目与主要功能要求 (2) 2.整体设计框图及整机概述 (3) 3.各硬件单元电路的设计、参数分析及原理说明 (3) 4.软件流程图和流程说明 (4) 5.总结设计及调试的体会 (10) 附录 1.图一:系统电路原理图 (11) 2.图二:系统电路 PCB (12) 3.表一:元器件清单 (13) 4.时钟程序源码 (14)

题目:单片机电子时钟的设计与实现 课程设计的目的和意义 课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。 课程设计的基本任务 利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。 主要功能要求 最基本要求 1)使用MCS-51单片机设计一个时钟。要求具有6位LED显示、3个按键输入。 2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。 3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。开始计时时为000000,到235959后又变成000000。 4)使用3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便加1。分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。 5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。 6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。 8)完成系统硬件电路的设计和制作。 9)完成系统程序的设计。 10)完成整个系统的设计、调试和制作。

单片机 10秒秒表课程设计

赣南师范学院物理与电子信息学院 课程设计Ⅳ设计报告书 基于AT89S52单片机的 10秒秒表的设计 姓名:匡远熹 班级:09电子信息工程 学号:090802015 指导老师:刘小燕 时间:2012.1.01

目录 内容摘要 (1) 关键词................................................................. 错误!未定义书签。Abstract............................................................. 错误!未定义书签。Keywords............................................................. 错误!未定义书签。1绪论. (2) 2 系统设计 (2) 2.1 设计任务与要求 (3) 2.2 方案的选择与论证 (3) 3 系统硬件设计 (4) 3.1 AT89C52简介 (4) 3.2 时钟电路 (5) 3.3 复位电路 (5) 3.4 显示电路 (6) 3.5引脚控制 7 3.6 硬件元件清单 (7) 4软件设计与仿真 (7) 4.1主程序设计 (7) 4.2 仿真软件简介 (9) 4.3 仿真结果 (10) 4.4 系统调试 (11) 结束语 (12) 附录:程序清单 (14) 参考文献 (16)

内容摘要:本文阐述了基于单片机的数字电子秒表设计。本设计主要特点是计时精度达到0.1s,是各种体育竞赛的必备设备之一。本设计的数字电子秒表系统采用8051单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管设计计时器。其中软件系统采用C语言编写程序,包括显示程序,定时中断服务,延时程。硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 关键字:秒表;单片机AT89S52;硬件;软件;仿真 Abstract:The design of the multi-function stopwatch system uses AT89S52 microcontroller as the central device, and use its timer / counter timing and the count principles, combined with display circuit, LED digital tube, as well as the external interrupt circuit to design a timer. Be able to correctly time at the same time to record a time, and the next time after the last time the time to search automatically added a second in which software systems using assembly language programming, including the display program, timing, interrupt service, external interrupt service routine, delay procedures, key consumer shaking procedures, and KEIL in the commissioning, operation, hardware system uses to achieve PROTEUS powerful, simple and easy to observe the cut in the simulation can be observed on the actual working condition. Keyword:Stopwatch;AT89S52 scm;Hardware;Software;Simulation

数字逻辑电路(数电)课程设计_电子秒表_VHDL实现(含完整源代码!!)

电子科技大学 UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA 数字逻辑设计 实验报告 实验题目:电子秒表 学生姓名: 指导老师:

一、实验内容 利用FPGA设计一个电子秒表,计时范围00.00 ~ 99.00秒,最多连续记录3个成绩,由两键控制。 二、实验要求 1、实现计时功能: 域值范围为00.00 ~ 99.00秒,分辨率0.01秒,在数码管上显示。 2、两键控制与三次记录: 1键实现“开始”、“记录”等功能,2键实现“显示”、“重置”等功能。 系统上电复位后,按下1键“开始”后,开始计时,记录的时间一直显示在数码管上;按下1键“记录第一次”,次按1键“记录第二次”,再按1键“记录第三次”,分别记录三次时间。 其后按下2键“显示第一次”,次按2键“显示第二次”,再按2键“显示第三次”,数码管上分别显示此前三次记录的时间;显示完成后,按2键“重置”,所有数据清零,此时再按1键“开始”重复上述计时功能。 三、设计思路 1、整体设计思路 先对按键进行去抖操作,以正确的得到按键信息。 同时将按键信息对应到状态机中,状态机中的状态有:理想状态、开始状态、3次记录、3次显示、以及其之间的7次等待状态。 因为需要用数码管显示,故显示的过程中需要对数码管进行片选和段选,因此要用到4输入的多路选择器。 在去抖、计时、显示的过程中,都需要用到分频,从而得到理想频率的时钟信号。 2、分频设计 该实验中有3个地方需要用到分频操作,即去抖分频(需得到200HZ时钟)、计时分频(需得到100HZ时钟)和显示分频(需得到25kHZ时钟)。 分频的具体实现很简单,需首先算出系统时钟(50MHZ)和所需始终的频率比T,并定义一个计数变量count,当系统时钟的上升沿每来到一次,count就加1,当count=T时就将其置回1。这样只要令count=1~T/2时clk=‘0’,count=T/2+1~T时clk=‘1’即可。 3、去抖设计 由于用按键为机械弹性开关,故当机械触点断开、闭合时,按键开关在闭合时不会马上稳定地接通,在断开时也不会马上断开,而是在闭合及断开的瞬

基于89C51单片机的秒表课程设计讲解

《单片机技术》 课程设计报告 题目:基于MCU-51单片机的秒表设计班级: 学号: 姓名: 同组人员: 指导教师:王瑞瑛、汪淳 2014年6月17日

目录 1课程设计的目的 (3) 2 课程设计题目描述和要求 (3) 2.1实验题目 (3) 2.2设计指标 (3) 2.3设计要求 (4) 2.4增加功能 (4) 2.5课程设计的难点 (4) 2.6课程设计内容提要 (4) 3 课程设计报告内容 (4) 3.1设计思路 (4) 3.2设计过程 (5) 3.3 程序流程及实验效果 (6) 3.4 实验效果 (13) 4 心得体会 (14)

基于 MCS-51单片机的秒表设计 摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。本次设计内容为以 8051 单片机为核心的秒表,它采用键盘输入,单片机技术控制。设计内容以硬件电路设计,软件设计和 PCB 板制作三部分来设计。利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛。 关键词:秒表;8051;定时器;计数器 1 课程设计的目的 《单片机应用基础》课程设计是学好本门课程的又一重要实践性教学环节,课程设计的目的就是配合本课程的教学和平时实验,以达到巩固消化课程的内容,进一步加强综合应用能力及单片机应用系统开发和设计能力的训练,启发创新思维,使之具有独立单片机产品和科研的基本技能,是以培养学生综合运用所学知识的过程,是知识转化为能力和能力转化为工程素质的重要阶段。 2 课程设计题目描述和要求 2.1实验题目 开始时,显示“00.0”,第一次按下按钮后开始从0-99.9s计时,显示精度为0.1s;对用有4个功能按键,第1个按键复位00.0,第2个按键正计时开始按钮,第3个按键复位99.9,第4个按钮倒计时开始。 2.2设计指标 了解8051芯片的的工作原理和工作方式,使用该芯片对 LED 数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起

51单片机课程设计

课程设计说明书
课程设计名称






学生姓名
指导教师
单片机原理及应用课程设计 电子信息工程 140405 20141329 李延琦 胡黄水
2016 年 12 月 26 日

课程设计任务书
课程设计 题目
酒精测试仪
起止日期
2016 年 12 月 26 日— 2017 年 1 月 6 日
设计地点
计算机科学与工程学 院单片机实验室 3409
设计任务及日程安排: 设计任务:分两部分: (一)、设计实现类:进行软、硬件设计,并上机编程、联线、调试、 实现; 1.电子钟的设计 2.交通灯的设计 3.温度计的设计 4.点阵显示 5.电机调速 6.电子音乐发声(自己选曲) 7.键盘液晶显示系统 (二)、应用系统设计类:不须上机,查资料完成软、硬件设计画图。 查资料选定题目。 说明:第 1--7 题任选其二即可。(二)里题目自拟。 日程安排: 本次设计共二周时间,日程安排如下: 第 1 天:查阅资料,确定题目。 第 2--4 天:进实验室做实验,连接硬件并编写程序作相关的模块实验。 第 5--7 天:编写程序,并调试通过。观察及总结硬件实验现象和结果。 第 8--9 天:整理资料,撰写课程设计报告,准备答辩。 第 10 天:上交课程设计报告,答辩。 设计报告要求:
1. 设计报告里有两个内容,自选题目内容+附录(实验内容),每 位同学独立完成。 2. 自选题目不须上机实现,要求能正确完成硬件电路和软件程序 设计。内容包括: 1) 设计题目、任务与要求 2)硬件框图与电路图 3) 软件及流程图 (a)主要模块流程图 (b)源程序清单与注释 4) 总结 5) 参考资料 6)附录 实验上机调试内容
注:此任务书由指导教师在课程设计前填写,发给学生做为本门课程设计 的依据。

电子秒表课程设计

电子秒表课程设计报告 目录 一、设计要求 (2) 二、设计的目的与作用 (2) 三、设计的具体体现 (2) 1. 电子秒表的基本组成 (3) 2.电子秒表的工作原理 (3) 3.电子秒表的原理图 (4) 4. 单元电路设计 (4) 5.设计仿真与PCB制版 (12) 四、心得体会 (17) 五、附录 (18) 六、参考文献 (20)

一、设计要求 1.以0.01秒为最小单位进行显示。 2.秒表可显示0.01~59:59:99秒的量程。 3.该秒表具有清零、开始计时、停止计时功能。 二、设计方案 方案一:通过单片机来实现电子秒表 基于51单片机电子秒表,设计简单,而且技术准确,缺点是价格相比于数字电路实现的秒表技术要昂贵。 方案二:采用数字电路来实现秒表计数,优点是价格便宜,计数精确,反应较快,缺点是,电路芯片较多,设计电路复杂。 经过比较选择了较为经济适用的数字电路。 二、设计的目的与作用 1.培养我们运用有关课程的基础理论和技能解决实际问题,并进一步提高专业基本技能、创新能力。通过课程设计,学习到设计写作方法,能用文字、图形和现代设计写作方法系统地、正确地表达课程设计和研究成果。 2. 熟悉555方波振荡器的应用。 3.熟悉计数器的级联及计数、译码、显示电路的整体配合。

4.建立分频的基本概念。 三、设计的具体体现 1.电子秒表的基本组成 电子秒表电路的基本组成框图如图所示,它主要由基本RS 触发器、多谐振荡器、计数器和数码显示器4个部分组成。 电子秒表电路的基本组成(方框图)如下: 图(1)电子秒表基本组成方框图 2.电子秒表的工作原理 由555定时器构成多谐振荡器,用来产生50Hz 的矩形波。第Ⅰ块计数器作5分频使用,将555输来的50Hz 的脉冲变为0.1秒的计数脉冲,在输出端Qd 取得,作为第2块计数器的始终输入,第2、第3块计数器QA 与CP2相连,都已接成8421码十进 基本RS 触发器 多谐振荡器 单稳态触发器 计数器 译码显示器

89C51单片机课程设计之秒表设计实验报告

单片机课程设计报告 单 片 机 秒 表 系 统 课 程 设 计 班级: 课程名称:秒表设计 成员: 实训地点:北校机房 实训时间:6月4日至6月15日

目录 1课程设计的目的和任务 1.1 单片机秒表课程设计的概述 1.2课程设计思路及描述 1.3 课程设计任务和要求 2硬件与软件的设计流程 2.1系统硬件方案设计 2.2所需元器件 3 程序编写流程及课程设计效果 3.1源程序及注释 3.2原理图分析 3.3课程设计效果 4 心得体会

1. 课程设计的目的和任务 1.1单片机秒表课程设计的概述 一、课程设计题目 秒表系统设计——用STC89C51设计一个4位LED数码显示“秒表”,显示时间为000.0~9分59.9秒,每10毫秒自动加一,每1000毫秒自动加一秒。 二、增加功能 增加一个“复位”按键(即清零),一个“暂停”和“开始”按键。 三、课程设计的难点 单片机电子秒表需要解决几个主要问题,一是有关单片机定时器的使用;二是如何实现LED的动态扫描显示;三是如何对键盘输入进行编程;四是如何进行安装调试。 四、课程设计内容提要 本课程利用单片机的定时器/计数器定时和记数的原理,结合集成电路芯片8051、LED数码管以及课程箱上的按键来设计计时器。将软、硬件有机地结合起来,使得系统能够正确地进行计时,数码管能够正确地显示时间。其中本课程设计有三个开关按键:其中key1按键按下去时开始计时,即秒表开始键,key2按键按下去时数码管清零,复位为“00.00”. key3按键按下去时数码管暂停。 五、课程设计的意义 1)通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的 应用进一步的了解。 2)掌握定时器、外部中断的设置和编程原理。 3)通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。 4)该课程通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统, 拥有正确的计时、暂停、清零,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义 1.2课程设计思路及描述

电子秒表课程设计报告

西安郵電學院 控制系统课程设计报告书 系部名称:信息与控制系 学生姓名:XXX 专业名称:测控技术与仪器 班级:测控XXXX 2010年9月13日至 时间: 2010 年9月26日

电子秒表的设计 一、设计要求 设计一个电子秒表,与通用秒表功能类似,有启动,暂停、复位等键。计时长长度为300秒,需显示百分秒。 二、 设计方案分析 1.方案设计 数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。本设计用单片机组成数字电子秒表,力求结构简单、精度高为目标。 本系统采用C51系列单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软、硬件有机地结合起来。其中软件系统采用汇编语言编写程序,硬件系统利用PROTEUS 强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 本设计利用STC89C52单片机的定时器/计数器定时和计数的原理,使其能精确计时。利用中断系统使其能实现开始暂停的功能。根据要求知道秒表设计主要实现的功能是计时和显示。因此设置了两个按键和LCD 显示时间,两个按键分别是开始、停止和复位按键。利用这两个建来实现秒表的全部功能,而LCD 则能显示最多4.59.99秒的计时。电路原理图设计最基本的要求是正确性,其次是布局合理,最后在正确性和布局合理的前提下力求美观。硬件电路图按照图1.1进行设计。 图1.1 数字秒表硬件电路基本原理图 本设计中,数码管显示的数据存放在内存单元31H -33H 中。其中31H 存放分钟变量,32H 存放秒钟变量,33H 存放10ms 计数值,即存放毫秒位数据,每一地址单元内均为十进制BCD 码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD 码数据的对应段码存放在ROM 表中。显示时,先取出31H -33H 某一地址中的数据,然后查得对应的显示位,并从P1口输出,就能显示该地址单元的数据值。 计时通过1INT 中断完成,定时溢出中断周期为1ms ,当一处中断后向CPU

单片机倒计时秒表课程设计

单片机倒计时秒表 课程设计

课程设计说明书 课程名称:单片机技术 设计题目:倒计时数字秒表设计院系: 学生姓名:张三 学号: ********* 专业班级: *********** 指导教师:李四 年月日

课程设计任务书 倒计时秒表

摘要:本次课程设计以AT89S52单片机为核心设计一个倒计时数字秒表,计数初值为59并开始每秒自动减1,当按键1按下时记录当前时间值,当按键2按下时显示当前记录值,显示过之后再次按下按键1时秒表复位为59。本设计硬件部分包括电源电路、复位电路、按键电路、振荡电路、数码管显示电路五部分电路,软件程序部分有定时中断程序、外部中断程序、显示子程序和延时子程序等。软件Proteus画出原理图并进行仿真,依照仿真成功的原理图接线,在万能版上把个个器件焊接好从而实现预期的功能。 关键词:倒计时 AT89S52 74LS47 数码管 目录

1.设计背景 (5) 1.1、设计课题的提出 (5) 1.2、设计作用及意义 (5) 2.设计方案 (6) 2.1、可行方案选择 (6) 2.2、可行方案比较 (6) 3.方案实施 (7) 3.1、硬件电路的实施 (7) 3.2、软件程序的实施 (11) 4.结果与结论 (13) 4.1、Proteus仿真运行结果 (13) 4.2、结论 (14) 5.收获与致谢 (14) 6.参考文献 (14) 7.附件 (15) 7.1、附件一(整体电路图) (15) 7.1、附件二(元件清单图) (16) 7.1、附件三(程序) (17) 7.1、附件四(运行实物图) (22) 1. 设计背景

相关文档
最新文档