电子秒表课程设计

电子秒表课程设计
电子秒表课程设计

2014 ~ 2015学年第1 学期

《单片机C51课程设计》

课程设计报告

题目:电子秒表设计

专业:电气工程学院电子信息系

姓名:江鑫瞿康保李阿龙李贺林超刘浩班级:12级电子信息2班

导师:王银花

电气工程学院

2014 年11月29日

任务书

摘要

基于数字电子技术基础、模拟电子技术基础和电路原理有关知识,对电子秒表电路进行设计和制作。该电子秒表可以实现准确显示00.00—99.99制时间,手动调节时间,随时启动、清零、置时间等功能,使用方便,制作简单。本文针对电子秒表进行初步框架设计,并对多种方案进行了认真比较和验证,在此基础上,又进一步详细介绍了时间脉冲发生器、秒计数器、译码及驱动显示电路。在总体电路图组装完成以后,针对设计好的电路,用Multisim软件进行了仿真与调试,逐步解决设计过程中出现的一系列问题。在电路设计过程中,特意将选做部分即校时电路部分作为电路设计的主要内容。最后对应的电子秒表设计方案对制作好的电子秒表功能进行总体验证。

关键词:数字电子技术;脉冲发生器;计数器电路;Multisim软件

目录

1.设计要求 (5)

2.设计方案分析 (5)

2.1方案设计 (5)

2.2背景知识介绍 (6)

2.2.1 单片机相关知识 (6)

2.2.1.1 运算器 (7)

2.2.1.2 程序计数器PC (7)

2.2.1.3 令寄存器 (8)

3.硬件设计 (9)

3.1单片机简介 (9)

3.2电源电路 (9)

3.3晶体振荡电路 (9)

3.4复位电路 (9)

3.5显示电路 (10)

3.6键盘电路 (10)

4.硬件主电路图设计 (11)

5.软件设计 (12)

5.1软件设计概述 (12)

5.2主程序流程图 (12)

6.测试数据及设计结果 (12)

7.调试中出现的错误及解决方法 (13)

7.1 实验中遇到的问题及解决方法 (13)

7.2实验心得 (13)

8. 程序 (14)

9.参考文献 (21)

1. 设计要求

设计一个电子秒表,与通用秒表功能类似,有启动,暂停、复位等键。计时长长度为300秒,需显示百分秒。

2.设计方案分析

2.1方案设计

数字电子秒表具有显示直观、读取方便、精度高等优点,在计时中广泛使用。本设计用单片机组成数字电子秒表,力求结构简单、精度高为目标。

本系统采用C51系列单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软、硬件有机地结合起来。其中软件系统采用汇编语言编写程序,硬件系统利用PROTEUS 强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。

本设计利用STC89C52单片机的定时器/计数器定时和计数的原理,使其能精确计时。利用中断系统使其能实现开始暂停的功能。根据要求知道秒表设计主要实现的功能是计时和显示。因此设置了两个按键和LCD 显示时间,两个按键分别是开始、停止和复位按键。利用这两个建来实现秒表的全部功能,而LCD 则能显示最多4.59.99秒的计时。电路原理图设计最基本的要求是正确性,其次是布局合理,最后在正确性和布局合理的前提下力求美观。硬件电路图按照图1.1进行设计。

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

本设计中,数码管显示的数据存放在内存单元31H -33H 中。其中31H 存放分钟变量,32H 存放秒钟变量,33H 存放10ms 计数值,即存放毫秒位数据,每一地址单元内均为十进制BCD 码。由于采用软件动态扫描实现数据显示功能,显示用十进制BCD 码数据的对应段码存放在ROM 表中。显示时,先取出31H -33H 某一地址中的数据,然后查得对应的显示位,并从P1口输出,就能显示该地址单元的数据值。

计时通过1INT 中断完成,定时溢出中断周期为1ms ,当一处中断后向CPU

发出溢出中断请求,每发出一次中断请求就对毫秒计数单元进行加一,达到10次就对十毫秒位进行加一,依次类推,直到4.59.99秒重新复位。

再看按键的处理。这两个键可以采用中断的方法,也可以采用扫描的方法来识别。复位键主要功能在于数值复位,对于时间的要求不是很严格。而开始和停止键则是用于对时间的锁定,需要比较准确的控制。因此可以对复位按键采取扫描的方式。而对开始和停止键采用外部中断的方式。

设计中包括硬件电路的设计和系统程序的设计。其硬件电路主要有主控制器,显示电路和回零、启动、查看、停表电路等。主控制器采用单片机STC89C52,显示电路采用LCD显示计时时间,两个按键均采用触点式按键。

2.2背景知识介绍

2.2.1 单片机相关知识

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

STC89C52单片机采用40引脚的双列直插封装方式。图1.2为引脚排列图,40条引脚说明如下:

主电源引脚Vss和Vcc

①Vss接地

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

外接晶振引脚XTAL1和XTAL2

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

②XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。

图2.2.1 STC89C52单片机引脚图

控制或与其它电源复用引脚RST/VPD,ALE/PROG,PSEN和EA/Vpp

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

②ALE/PROG正常操作时为ALE功能(允许地址锁存)提供把地址的低字节

锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的1/6)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。对于EPROM型单片机,在EPROM编程期间,此

引脚接收编程脉冲(PROG功能)

③PSEN外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,PSEN在每个机器周期内两次有效。PSEN同样可以驱动八LSTTL 输入。

④EA/Vpp、EA/Vpp为内部程序存储器和外部程序存储器选择端。当EA/Vpp 为高电平时,访问内部程序存储器,当EA/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负载。

AT89C52具有以下标准功能:8k字节Flash,256字节RAM,32 位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C52可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。CPU是单片机的核心部件。它由运算器和控制器等部件组成。

2.2.1.1 运算器

运算器的功能是进行算术运算和逻辑运算。可以对半字节(4位)、单字节等数据进行操作。例如能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存器。

89C52运算器还包含有一个布尔处理器,用来处理位操作。它是以进位标志位C为累加器的,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其他可寻址的位之间进行数据传送等位操作,也能使进位标志位与其他可移位寻址的位之间进行逻辑与、或操作。

2.2.1.2 程序计数器PC

程序计数器PC用来存放即将要执行的指令地址,共16位,可对64K程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。

2.2.1.3 指令寄存器

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

本设计采用ATMEL的AT89C52微处理器,主要基于以下几个因素:

①AT89C52为51内核,仿真调试的软硬件资源丰富。

②性价比高,货源充足。

③功耗低,功能强,灵活性高。

④DIP40封装,体积小,便于产品小型化。

⑤为EEPROM程序存储介质,1000次以上擦写周期,便于编程调试。

⑥工作电压范围宽:2.7V-6V,便于交直流供电。

图2.2.2.1 1602的管脚功能

3.硬件设计

本系统中,硬件电路主要有电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等。

3.1单片机简介

本系统设计采用C51系列单片机。

ST89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ST89C51是一种高效的微控制器。

3.2电源电路

电源电路是系统最基本的部分,任何电路都离不开电源部分,由于三端集成稳压器件所组成的稳压电源线路简单,性能稳定,工作可靠,调整方便,已逐渐取代分立元件,在生产中被广泛采用,由于是小系统,我们采用7809电源提供+5V稳压电压。

3.3晶体振荡电路

MCS--51单片机内部的振荡电路是一个高增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。

这里,我们选用51单片机12MHZ的内部振荡方式,电路如下:电容器C1,C2起稳定振荡频率,快速起振的作用,C1和C2可在20-100PF之间取,这里取30P

3.4

单片机的外围芯片也同时复位。当程序出现错误时,可以随时使电路复位。

电路图如下:

图3.4 复位电路

3.5显示电路

显示电路既可以选用液晶显示器,也可以选用数码管显示。我们采用的是数码管显示电路。用2个共阳极LED显示,LED是七段式显示器,内部有7个条形发光二极管和1个小圆点发光二极管组成,根据各管的亮暗组合成字符。

在用数码管显示时,我们有静态和动态两种选择,静态显示程序简单,显示稳定,但是占用端口比较多;动态显示所使用的端口比较少,可以节省单片机的I/O口。

在设计中,我们采用LED动态显示,用P0口驱动显示。由于P0口的输出级是开漏电路,用它驱动时需要外接上拉电阻才能输出高电平。

电路图如下所示:

图3.5 显示电路

3.6键盘电路

在按键电路中,我们可以在I/O口上直接接按键,或者通过I/O口设计一个键盘,然后通过键盘扫描程序判断是否有键按下等。键盘扫描电路节省I/O口,但编程有些复杂,在这里,由于我们所用的按键较少,且系统是一个小系统,有足够的I/O口可以使用,为了使程序简化,我们采用按键电路,用部分P3口做开关,P3.3为开始停止,P3.4为清零,用外部中断INT1开始,另外用软件法消除抖动。电路图如下所示:

图4 硬件主电路

5.软件设计

5.1软件设计概述

在软件设计中,一般采用模块化的程序设计方法,它具有明显的优点。把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。

应用系统的程序由包含多个模块的主程序和各种子程序组成。各程序模块都要完成一个明确的任务,实现某个具体的功能,在具体需要时调用相应的模块即可。

功能描述:用LCD1602液晶显示"秒表",显示时间为0.00.00—4.59.99秒,每秒自动加1;一个"开始""暂停"键,一个"清零"键。

5.2主程序流程图

这里采用顺序结构,通过对按键的扫描,判断要实现什么功能。如下所示:

图5.2 主程序流程图

6.测试数据及设计结果

按下INT1管脚的开关时,显示数据,如下图所示:

6

65544XTAL2

18

XTAL1

19

ALE 30EA

31

PSEN 29RST

9

P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78

P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT113P3.4/T 014P3.7/RD

17P3.6/WR 16P3.5/T 115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1

AT89C51

X1

CRYSTAL

C1

22PF

C2

22PF C3

1nF

R1

100

D 7

14

D 613D 512D 411D 310D 29D 18D 07

E 6

R W 5R S 4V S S 1V D D 2V E E

3

LCD1

LM016L

23456789

1RP1

10K

图6.1 按下INT1管脚开关

按下T0管脚的开关时,数据清零:

6

65544XTAL2

18

XTAL1

19

ALE 30EA

31

PSEN 29RST

9

P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78

P3.0/RXD 10P3.1/TXD 11P3.2/INT012P3.3/INT1

13P3.4/T 014P3.7/RD

17P3.6/WR 16P3.5/T 115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1

AT89C51

X1

CRYSTAL

C1

22PF

C2

22PF C3

1nF

R1

100

D 7

14

D 613D 512D 411D 310D 29D 18D 07

E 6

R W 5R S 4V S S 1V D D 2V E E

3

LCD1

LM016L

23456789

1RP1

10K

图6.2 按下T0管脚开关

7.调试中出现的错误及解决方法

7.1 实验中遇到的问题及解决方法

问题:LCD 显示模糊

原因:VEE 接高电平,LCD 的对比度太低,从而无法正常显示数据。 解决方法:将VEE 接地,提高了LCD 的对比度,数据显示清晰。

7.2实验心得

这次课程设计我们组的题目是设计一个电子秒表,有启动,暂停、复位等键。

计时最长长度为300秒,需显示百分秒。据说是相对简单的题目。

分好组后我们每人都有分工,我的主要任务就是完成程序的查找,调试和检验,基本算是前期工作,所以刚开始我们一起查资料讨论方案。在设计电路初期,由于我们没有设计经验,通过查阅一些资料,我们的设计渐渐有了头绪,基本确立设计方案和流程图。就是LED显示屏驱动电路的设计是个比较头疼的问题。经过查询大量的资料,我们很快确定了电路以及需要的器件,然后就是编程和仿真,开始时也遇到了很多的问题,经过静下心来思考,和同学讨论,理清了思路,慢慢修改,终于仿真成功了。

通过这次设计,我学到了很多知识,将学习的理论知识通过实验融会贯通,让我对它的理解更加深刻。由于这次课程设计不仅设计编程方面的知识,还涉及了其它学科的知识,例如PROTEUS等的基本知识。总之,通过这次课程设计,不仅加深了我对单片机理论方面的理解,将理论更好的运用的实践方面,而且锻炼了我们各方面的能力,培养了坚强的毅力和做事的耐心和细心,同时也认识到在团队工作中需要有合作精神,我想这会为今后自己踏上工作岗位、更好地融入新的团队打下良好的基础。

8.程序

; 定义计时单元地址

MIN EQU 31H ;存放分钟变量

SEC EQU 32H ;存放秒钟变量

DEDA EQU 33H ;存放10ms计数值

; 按键端口状况值

K1_N EQU 34H ;存放按键当前端口状况值

K1_P EQU 35H ;存放按键上次端口状况值

K1_C EQU 37H ;存放按键计数单元

X EQU 36H ;LCD 地址变量

; 按键引脚定义

K1 EQU P3.3 ;按键1引脚定义

K2 EQU P3.4 ;按键2引脚定义

;LCD 引脚定义

RS EQU P3.5 ;LCD RS引脚定义

RW EQU P3.6 ;LCD RW引脚定义

E EQU P3.7 ;LCD RS引脚定义

ORG 0000H ;程序由地址0开始执行

JMP MAIN

ORG 0BH ;定时器0中断地址设置

JMP T0_INT

;―――――――――――――主程序――――――――――――――

MAIN: ;开始

MOV SP,#60H ;堆栈指针指向60H

CLR E ;E=0,禁止读/写LCD

ACALL SET_LCD ;调LCD控制子程序

ACALL INIT ;初始化变量

MOV K1_P,#01H ;按键上次端口设置1

ACALL INIT_TIMER ;调用初始化定时器

ACALL MEU ;调用工作菜单子程序LOOP:ACALL CONV ;时间计数处理

ACALL LOOP1 ;调用清零键子程序

ACALL KEY ;判断是否有键按下

JZ LOOP ;无键按下转LOOP

MOV K1_P,K1_N ;交换数据

ACALL KEY0 ;调用按键功能子程序

JMP LOOP ;跳LOOP处循环

; 初始变量清零子程序

INIT: ;初始变量清零

CLR A ;A清为零

MOV K1_C,A ;K1_C 初始为0

MOV DEDA,A ;百分秒DEDA初始为0 MOV SEC,A ;秒SEC初始为0

MOV MIN,A ;分MIN初始为0

MOV K1_N,A ;K1_N初始为0

MOV K1_P,A ;K1_P初始为0

CLR TR0 ;启动中断

RET ;―――――――――――――――――――――

;定时器初始化设置子程序

INIT_TIMER: ;定时器初始化

MOV TMOD,#00000001B ;定时器0模式1

MOV IE, #10000010B ;开通中断

MOV TL0,#LOW(65536-10000);定时初值装入低位

MOV TH0,#HIGH(65536-10000);定时初值装入高位

RET

;中断服务程序

T0_INT: ;定时器T0中断程序

PUSH ACC ;入栈保护

MOV TL0,#LOW(65536-10000) ;重加载

MOV TH0,#HIGH(65536-10000)

INC DEDA

MOV A,DEDA ;10ms 计数值加1

CJNE A,#100,TT

MOV DEDA,#0

INC SEC ;秒加1

MOV A,SEC

CJNE A,#60,TT

INC MIN ;分加1

MOV SEC,#0

MOV A,MIN

CJNE A,#05,TT

MOV DEDA,#0 ;百、分、秒单元清0

MOV SEC,#0

MOV MIN,#0

TT: POP ACC ;出栈

RETI ;中断程序返回;―――――――――――――――――――――

;判断键是否按下子程序

LOOP1:

JB K2,LOOP2 ;判清零键是否按下

JMP MAIN ;跳转主程序处

LOOP2: RET

; 判断K1键是否按下

KEY:

CLR A ;A清零

MOV K1_N,A ;A值送入K1_N

MOV C,K1 ;K1值送入C

RLC A ;同进位标志左移一位

ORL K1_N,A ;两个位作逻辑OR运算

MOV A,K1_N ;K1_N值送入A

XRL A,K1_P ;有键按下,A 中内容不为零RET

;功能键子程序

;K1键第一次按功能子程序

KEY0:

MOV A, K1_P ;K1_P值送入A

JB ACC.0,KEY3 ;A的0位是1,转KEY3

INC K1_C ;K1_C加1

MOV A, K1_C ;K1_C值送入A

CJNE A,#01H,KEY1 ;K1键是否第一次按?

MOV DPTR,#MENU1 ;是,存入MENU1信息

MOV A,#1 ;设置第一行显示

CALL LCD_PRINT ;调用显示字符子程序

SETB TR0 ;启动中断

RET

;K1键第二次按功能子程序

KEY1:

MOV A,K1_C ;K1_C值送入A

CJNE A,#02H,KEY2 ;K1键是否第二次按?

MOV DPTR,#MENU2 ;是,存入MENU2信息

MOV A,#1 ;设置第一行显示

CALL LCD_PRINT ;调用显示字符子程序

CLR TR0 ;停止中断

RET ;

;K1键第三次按功能子程序

KEY2:

MOV A, K1_C ;K1_C值送入A

CJNE A, #03H,KEY3 ;K1键是否第三次按?

MOV DPTR,#MENU3 ;是,存入MENU3信息

MOV A, #1 ;设置第一行显示

CALL LCD_PRINT ;调用显示字符子程序

SETB TR0 ;启动中断

RET

;K1键第四按功能子程序

KEY3:

MOV A,K1_C ;K1_C值送入A

CJNE A,#04H,KEY4 ;K1键是否第四次按?

MOV DPTR,#MENU4 ;是,存入MENU4信息

MOV A,#1 ;设置第一行显示

CALL LCD_PRINT ;调用显示字符子程序

CLR TR0 ;启动中断

KEY4:

RET ;子程序返回;―――――――――――――LCD显示――――――――――――――; LCD控制子程序

SET_LCD: ;

CLR E

ACALL INIT_LCD ;初始化LCD

MOV R5,#10

ACALL DELAY

MOV DPTR,#LMESS1 ;指针指到显示消息1

MOV A,#1 ;显示在第一行

ACALL LCD_PRINT ;调用显示字符子程序

MOV DPTR,#LMESS2 ;指针指到显示消息2

MOV A,#2 ;显示在第二行

ACALL LCD_PRINT ;调用显示字符子程序

RET

LMESS1: DB " ",0 ;LCD 第一行显示消息

LMESS2: DB "TIME ",0 ;LCD 第二行显示消息

;LCD初始化子程序

INIT_LCD:

MOV A,#38H ;设置8位、2行、5x7点阵

ACALL WR_COMM ; 调用写指令子程序

ACALL DELAY1 ;调用延时子程序

MOV A,#0CH ;开显示,光标不闪烁

ACALL WR_COMM ;调用写指令子程序;

ACALL DELAY1 ;调用延时子程序

MOV A,#01H ;清除LCD 显示屏

ACALL WR_COMM ;调用写指令子程序;

ACALL DELAY1 ;调用延时子程序

RET

;写指令子程序

WR_COMM:

MOV P1,A

CLR RS ;RS=0,选择指令寄存器

CLR RW ;RW=0,选择写模式

SETB E ;E=1,允许读/写LCM

ACALL DELAY1 ;调用延时子程序

CLR E ;E=0,禁止读/写LCM

RET

;写数据子程序

WR_DA TA:

MOV P1,A

SETB RS ;RS=1,选择数据寄存器

CLR RW ;RW=0,选择写模式

SETB E ;E=1,允许读/写LCD

ACALL DE ;调用延时子程序

CLR E ;E=0,禁止读/写LCD

ACALL DE ;调用延时子程序

RET

;清除该行LCD 的字符

CLR_LINE: MOV R0,#24

CL1: MOV A,#' '

ACALL WR_DATA

DJNZ R0,CL1

RET

;LCD 存入工作菜单

MEU:

MOV DPTR,#MENU0 ;存入工作菜单

MOV A,#1 ;第一行

CALL LCD_PRINT

RET

; 工作菜单

MENU0: DB " SECOND-CLOCK 0 ",0

MENU1: DB " BEGIN COUNT 1 ",0

MENU2: DB " PAUST COUNT 2 ",0

MENU3: DB " BEGIN COUNT 3 ",0

MENU4: DB " PAUST COUNT 4 ",0

;菜单显示子程序

;一行、二行显示字符

LCD_PRINT:

CJNE A,#1,LINE2 ;判断是否为第一行

LINE1:

ACALL CLR_LINE ;清除该行字符数据

MOV A, #80H ;设置LCD 的第一行地址

ACALL WR_COMM ;写入命令

JMP FILL

LINE2:

ACALL CLR_LINE ;清除该行字符数据

MOV A,#0C0H ;设置LCD 的第二行地址ACALL WR_COMM

FILL: CLR A ;填入字符

MOVC A,@A+DPTR ;由消息区取出字符

CJNE A,#0,LC1 ;判断是否为结束码

RET

;写入数据

LC1: ACALL WR_DATA

INC DPTR ;指针加1

JMP FILL ;继续填入字符

RET

;转换数据子程

CONV: ;转换为ASCII 码并显示

MOV X,#5 ;设置位置

ACALL SKOW_LINE2 ;显示数据

INC X ;

MOV A,#':' ;

MOV B,X ;

ACALL LCDP2 ;

MOV A,MIN ;加载分钟数据

INC X ;设置位置

ACALL SKOW_LINE2 ;显示数据

INC X ;

MOV A,#':' ;

MOV B,X ;

ACALL LCDP2 ;

MOV A,SEC ;加载秒数数据

INC X ;设置位置

ACALL SKOW_LINE2 ;显示数据

INC X ;

MOV A,#':' ;

MOV B,X ;

CALL LCDP2 ;

MOV A,DEDA ;加载秒数数据

INC X ;设置位置

ACALL SKOW_LINE2 ;显示数据

RET ;

;在LCD 的第二行显示数字

SKOW_LINE2:

MOV B,#10 ;设置被除数

DIV AB ;结果A存商数,B存余数

ADD A,#30H ;A为十位数,转换为字符

PUSH B ;B放入堆栈暂存

MOV B,X ;设置LCD 显示的位置

ACALL LCDP2 ;由LCD 显示出来

POP B ;出栈

MOV A,B ;B为个位数

ADD A,#30H ;转换为字符

INC X ;LCD 显示位置加1

MOV B,X ;设置LCD 显示的位置

ACALL LCDP2 ;由LCD 显示出来

RET

;在LCD的第二行显示字符

LCDP2:

PUSH ACC ;

MOV A,B ;设置显示地址

ADD A,#0C0H ;设置LCD的第二行地址

CALL WR_COMM ;写入命令

POP ACC ;由堆栈取出A

CALL WR_DATA ;写入数据

RET

;延时10MS

DELAY:

MOV R6,#50

D1:MOV R7,#100

DJNZ R7,$

DJNZ R6,D1

DJNZ R5,DELAY

RET

;延时5MS子程序

DELAY1:

MOV R6,#25

DEY: MOV R7,#100

DJNZ R7,$

DJNZ R6,DEY

RET

;延时500微秒

DE:

DJNZ R7,$

数字电子秒表课程设计

西安航空职业技术学院 电子技术实践课程设计报告 课设题目:数字电子秒表 所属系部:电子工程系 指导老师: 作者: 专业:电子信息工程技术 西安航空职业技术学院制 西安航空职业技术学院 课程设计任务书 题目:数字电子秒表 任务与要求: 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)

电子秒表课程设计报告

电子信息工程专业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,

电子秒表课程设计

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

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目:电子秒表的设计与制作 初始条件: (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定时器组成多谐振荡器产生脉冲,在脉冲控制下的组合计数器电路通过一系列的触发产生数字信号,数字信号经译码器译码后输入到显示数码管显示时间。 电子秒表的广泛应用提高了人们的工作效率,随着电子技术的发展,电子秒表的精度,电路简易型等到了很大的提高,功能得到了完善。 关键词:秒表定时器效率

数电课程设计:电子秒表

2013 - 2014学年第1学期 《数字电子技术基础》 课程设计报告 题目:电子秒表 专业:自动化 班级:自动化 姓名: 指导教师: 成绩: 2015年8月25日

课程设计任务书 学生班级:自动化学生姓名:学号: 设计名称:电子秒表 起止日期:2015.8.22——2015.9.05 指导教师:

摘要 秒表应用于我们生活、工作、运动等需要精确计时的方面。它由刚开始的机械式秒表发展到今天所常用的数字式秒表。秒表的计时精度越来越高,功能越来越多,构造也日益复杂。 本次数字电路课程设计的数字式秒表的要求为:显示分辨率为1s/100,外接系统时钟频率为100Hz;计时最长时间为10min,6位显示器,显示时间最长为9m59.99s;系统设置启/停键和复位键。复位键用来消零,做好计时准备、启/停键是控制秒表起停的功能键。 针对上述设计要求,我们先前往校图书馆借阅了大量的数字电路设计方面的书籍,以及一本电子元件方面的工具书,以待查阅各种设计中所需要的元件。其次安装并学习了数字电路设计中所常用的Multisim仿真软件,在课程设计过程的电路图设计与电路的仿真方面帮助我们发现了设计电路方面的不足与错误之处。 关键字:555定时器十进制计数器多谐振荡器

目录 第一章方案设计与论证 .................................................. - 5 - 第二章单元电路设计与参数计算 .......................................... - 5 - 2.1 时钟脉冲发生和控制信号.......................................... - 5 - 2.2 启动与停止电路.................................................. - 6 - 2.3 清零电路设计.................................................... - 7 - 第三章总电路工作原理及元器件清单 ...................................... - 7 - 3.1 电路完整工作过程描述(总体工作原理)............................ - 7 - 3.2 总原理图:(见下图3-1)......................................... - 7 - 第四章主要芯片介绍.................................................... - 9 - 4.1 74LS00 .......................................................... - 9 - 4.1 74LS160 ......................................................... - 9 - 第五章仿真............................................................ - 9 - 自我评价.............................................................. - 13 -

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

单片机电子时钟课程设 计实验报告 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)完成整个系统的设计、调试和制作。

数字电子秒表课程设计报告

重庆机电职业技术学院课程设计说明书 设计名称:单片机原理设计 题目:数字电子秒表 学生姓名: X X 专业:电气自动化 班级: 1 班 学号: XXXXXXXXXXXXXXX 指导教师: X X X 日期: 2010 年 6 月 16 日

重庆机电职业技术学院 课程设计任务书 电气自动化专业2008 年级 1 班XX 一、设计题目 数字电子秒表设计 二、主要内容 利用独立式按键AN1(P0.0)启动定时器T0计时,AN2(P0.1)停止用于停止定 时器T0计时,使用2个八段数码管输出记时值,秒钟的计时时间范围在0~99秒内。 三、具体要求 3.1、实验电路连线 ①本实验中要把跳线JP1(板子右上角,LED灯正上方)跳到DIG上,J23(在黄色继电器右上方)接到右端;把跳线J9(紧贴51插座右方,蜂鸣器下方,RST复位键上方)跳到右端;把跳线J6跳到AN端,AN1(P0.0)~ AN4(P0.4),(J6在51插座右下方,4×4键盘左上方)。 3.2、实验说明 ①本实验中要将记时结果送2个数码管中显示,这可通过调用编写的显示子程序来实现,实现过程是:先将记时值一位一位的拆开,分别送到显示缓冲区(片内数据存储30H~35H设定为显示缓冲区用于存放段码数据, 其中32H~35H里面均存放0的段码0DFH)中去,然后调用显示子程序。②与定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。本实验中用定时器T0产生1秒钟基本时间单位,本系统fosc=11.0592MHz,当定时器T0工作在方式1(16位)时,最大定时时间为:216* 0.9216μs= 60397.9776μs;再利用软件记数,当T0中断17次时,所用时间为60397.9776*17=1026765.6192μs≈1s因此在T0中断处理程序中,要判断中断次数是否到17次,若不到17次,则只使中断次数加1,然后返回,若到了17次,则使电 子秒表记时值加1(十进制),请参考硬件实验四有关内容。③使用独立式按键 AN1(P0.0)~ AN2(P0.1)时要注意采用软件消抖动的方法,一般采用软件延时(10ms)的方法,即通过P0.0和P0.1的输入值的变化控制秒表的启动和停止。 3.3

数电课程设计电子秒表

电子电路课程设计题目名称:电子秒表课程设计 姓名: 学号: 专业班级:

一.设计任务及功能简介 (1)显示分辨率为1s/100,外接系统时钟频率为100KHz。 (2)计时最长时间为1h,六位显示器,显示时间最长为59m59.99s。 系统设置启/停键和复位键。复位键用来消零,做好计时准备、启/停键是控制秒表起停的功能键 二.设计框原理 三.各单元电路的设计及使用说明

1.启动和停止单元电路 由一个开关控制CP脉冲,从而控制秒表的启动与停止 2.秒脉冲电路 LM555CN定时器构成的多谐振荡器,是一种性能较好的时钟源。该脉冲电路产生100KHz的脉冲(MULTISIM仿真太慢,调快了频率) 3. 100进制计数器

由两片74ls160级联组成,采用了串行的方式,低位片的进位端RCO接低位片的CLK端。 4. 60进制计数器 60进制计数器采用串行整体置数的方式级联,将电路的59状态译码产生的低电平信号接到两片计数器的同步置数端,当下一个脉冲到来的时候同时把0000置入两片74ls160计数器中,从而得到六十进制计数器。 5.计数与译码显示

十进制加法计数器74LS160构成电子秒表的计数单6.电子秒表总设计图 四.主要芯片介绍 1.74LS00

其真值表及管脚图为: 2.74LS160 74LS160 十进制同步计数器(异步清零)其真值表如下( H:高电平,L:低电平,↑:上升沿,X:任意,D0 ~D3 :A~D 稳态输入电平) 五.总电路的仿真 Inputs 输入 Ouput 输出 A B Y L L H L H H H L H H H L 输入 输出 Cr LD S1 S2 CP A B C D QA QB QC QD L X X X X X X X X L L L L H L X X ↑ D0 D1 D2 D3 D0 D1 D2 D3 H H H H ↑ X X X X 计数 H H L X X X X X X 保持 H H X L X X X X X 保持

基于单片机的秒表课程设计

摘要 本设计的数字电子秒表系统采用AT89S52单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合显示电路、LED数码管以及外部中断电路来设计计时器。将软、硬件有机地结合起来,使得系统能够实现LED显示,显示时间为0~99秒,计时精度为1秒,能正确地进行计时。其中软件系统采用C语言编写程序,包括显示程序,定时中断服务,外部中断服务程序,延时程序等,并在WAVE中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单且易于观察,在仿真中就可以观察到实际的工作状态。 关键词:电子秒表;AT89S52单片机;C语言

目录 摘要.............................................................. I 1 系统原理介绍. (1) 1.1设计任务及功能要求说明 (1) 1.2数字式秒表的方案介绍及工作原理说明 (1) 2数字式秒表硬件系统的设计 (3) 2.1数字式秒表硬件系统各模块功能简要介绍 (3) 2.1.1 AT89S52简介 (3) 2.1.2时钟电路 (3) 2.1.3键盘电路 (4) 2.1.4复位电路 (4) 2.2 数字式秒表的硬件系统设计图 (5) 3 数字式秒表软件系统的设计 (6) 3.1 数字式秒表使用单片机资源情况 (6) 3.2 主程序流程图 (6) 3.3中断服务程序流程图 (7) 3.4显示程序流程图 (8) 3.5软件系统程序清单 (8) 按照流程图应用软件keil汇编语言编程实现秒表功能。程序见附录3。. 8 4 系统调试与仿真 (9) 4.1 数字式秒表的设计结论及使用说明 (9) 4.2 调试软件介绍 (9) 4.3 程序仿真与结果 (9) 4.4 误差分析及解决方法 (10) 总结 (11) 参考文献 (12) 致谢 (13) 附录1:系统原理图 (14) 附录2:程序清单 (15)

数字逻辑电路(数电)课程设计_电子秒表_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、去抖设计 由于用按键为机械弹性开关,故当机械触点断开、闭合时,按键开关在闭合时不会马上稳定地接通,在断开时也不会马上断开,而是在闭合及断开的瞬

数电课程设计-30秒倒计时器

. 定时电路的设计 ——数字逻辑课程设计 学院:计算机学院 专业班级:计科13

时间:2015年1月4日 目录 设计要求 (3) 正文 一、倒计时器组成及原理 (3) 1.1倒计时计数器组成 (3) 1.2工作原理 (3) 二、拟定设计方案 (4) 2.1用Multisim进行仿真设计 (4) 2.2设计实现数码管显示 (4) 2.3设计555定时振荡实现秒振荡发生功能 (4) 2.4设计实现减法计数功能 (5) 2.5设计实现二位数减法计数功能 (5) 2.6设计实现反馈电路实现30秒计数功能 (5) 2.7设计实现控制电路实现启动、清零/复位和暂停/继续计数控制电路 (5) 2.7.1清零/复位电路 (5) 2.7.2暂停/继续计数电路 (6) 2.7.3启动电路 (7) 2.8设计实现闪烁报警电路 (8) 三、功能说明总结 (9) 四、课程设计小结 (9) 参考文献 (10) 附录: 一、电路原理图 (11) 二、元器件明细表 (11)

设计要求: 设计30秒倒计时计数器。 30秒倒计时器的设计功能要求包括: 1.具有30S减计时功能,计时时间到后发出声光报警信号(点亮LED,喇叭鸣叫); 2.计时时间精确(用石英振荡器产生秒信号); 3.用数码管显示剩余时间; 4.具有复位、启动、暂停、继续等操作按钮; 正文: 一、倒计时器组成及原理 1.1倒计时计数器组成 倒计时计数器选用TTL集成电路,主要由秒定时振荡发生器、减法计数器、译码器、七段数码显示器、控制电路、闪烁报警电路等组成,在电路工作过程中,电路能够通过控制器实现开始计数、清零/复位、暂停/继续计数等功能,在倒计时结束保持00状态并不断闪烁提示报警,原理图如下: 图1 1.2工作原理 当电路工作时,由555定时器组成多谐振荡器,选取适当的电容使振荡周期为1s;用两片减法计数器芯片级联组成二位数计数器,用七段数码管显示计数;控制电路通过控制减

电子秒表课程设计报告

西安郵電學院 控制系统课程设计报告书 系部名称:信息与控制系 学生姓名: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

数字秒表的设计与实现实验报告

电子科技大学《数字秒表课程设计》 姓名: xxx 学号: 学院: 指导老师:xx

摘要 EDA技术作为电子工程领域的一门新技术,极大的提高了电子系统设计的效率和可靠性。文中介绍了一种基于FPGA在ISE10.1软件下利用VHDL语言结合硬件电路来实现数字秒表的功能的设计方法。采用VHDL硬件描述语言,运用ModelSim等EDA仿真工具。该设计具有外围电路少、集成度高、可靠性强等优点。通过数码管驱动电路动态显示计时结果。给出部分模块的VHDL源程序和仿真结果,仿真结果表明该设计方案的正确,展示了VHDL语言的强大功能和优秀特性。 关键词:FPGA, VHDL, EDA, 数字秒表

目录 第一章引言 (4) 第二章设计背景 (5) 2.1 方案设计 (5) 2.2 系统总体框图 (5) 2.3 -FPGA实验板 (5) 2.4 系统功能要求 (6) 2.5 开发软件 (6) 2.5.1 ISE10.1简介 (6) 2.5.2 ModelSim简介 (6) 2.6 VHDL语言简介 (7) 第三章模块设计 (8) 3.1 分频器 (8) 3.2 计数器 (8) 3.3 数据锁存器 (9) 3.4 控制器 (9) 3.5 扫描控制电路 (10) 3.6 按键消抖电路 (11) 第四章总体设计 (12) 第五章结论 (13) 附录 (14)

第一章引言 数字集成电路作为当今信息时代的基石,不仅在信息处理、工业控制等生产领域得到普及应用,并且在人们的日常生活中也是随处可见,极大的改变了人们的生活方式。面对如此巨大的市场,要求数字集成电路的设计周期尽可能短、实验成本尽可能低,最好能在实验室直接验证设计的准确性和可行性,因而出现了现场可编程逻辑门阵列FPGA。对于芯片设计而言,FPGA的易用性不仅使得设计更加简单、快捷,并且节省了反复流片验证的巨额成本。对于某些小批量应用的场合,甚至可以直接利用FPGA实现,无需再去订制专门的数字芯片。文中着重介绍了一种基于FPGA利用VHDL硬件描述语言的数字秒表设计方法,在设计过程中使用基于VHDL的EDA工具ModelSim对各个模块仿真验证,并给出了完整的源程序和仿真结果。

电子秒表课程设计

电子秒表课程设计报告 目录 一、设计要求 (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 触发器 多谐振荡器 单稳态触发器 计数器 译码显示器

数电课程设计数字电子秒表设计

永州职业技术学院 课 程 设 计 课程名称:数字电子技术 题目:时钟脉冲与计数系统的设计系、专业:电子系、应用电子专业 年级、班级:10级电子大专班 学生姓名:赵恒 指导老师:祝敏 时间: 2011年01月

目录 1. 引言 (1) 1.1设计目的 (1) 1.2设计要求 (1) 2. 电路分析 (2) 2.1设计电路图 (2) 2.2电路分析 (3) 2.2.1时钟脉冲发生器 (3) 2.2.2计数器 (5) 2.2.3译码器 (6) 2.2.4数码管 (7) 3. 设计步骤 (7) 3.1设备与元件 (7) 3.2测试调整 (7) 3.2.1时钟发生器的测试 (7) 3.2.2计数器的测试 (7) 3.2.3电子秒表的整体测试 (8) 3.2.4电子秒表准确度的测试 (8) 4. 参考文献 (8) 5. 设计心得 (8)

数字电子秒表设计 1. 引言 电子秒表在生活中的应用,它可广泛应用于对运动物体的速度、加速度的测量实验,还可用来验证牛顿第二定律、机械能守恒等物理实验,同时也适用于对时间测量精度要求较高的场合.测定短时间间隔的仪表。有机械秒表和电子秒表两类。机械秒表与机械手表相仿,但具有制动装置,可精确至百分之一秒;电子秒表用微型电池作能源,电子元件测量显示,可精确至千分之一秒。广泛应用于科学研究、体育运动及国防等方面在当今非常注重工作效率的社会环境中,定时器能给我们的工作、生活以及娱乐带来很大的方便,充分利用定时器,能有效的加强我们的工作效率。 数字电子秒表是利用数字电子技术把模拟信号转换成数字信号来完成的,具有直观、准确性高的特点。 1.1 设计目的 1.建立数字电子电路系统的基本概念; 2.运用CD4060分频器的应用,计数器的级联及其计数、译码、显示电路的整体配合; 3.建立分频的基本概念。 1.2 设计要求 设计一个数字电子秒表,该秒表具有显示功能和清零、开始计时、停止计时等功能。 设计的要求如下: 1.以1秒为最小单位进行显示; 2.秒表可显示0~9秒的量程; 3.该秒表具有清零、开始计时、停止计时功能; 4.除了以上功能,个人可根据具体情况进行电路功能扩展。 1.3 设计内容 1.搭接电子秒表的整体设计电路;

电子秒表课程设计

电子秒表 摘要 电子秒表是一种用数字电路技术实现时、分、秒计时的装置,无机械装置,具有较长的使用寿命,因此得到了广泛的使用。它从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。本次实验所做电子式秒表由信号发生系统和计时系统构成,并具有清零,暂停功能。由于需要比较稳定的信号,所以信号发生系统555定时器与电阻和电容组成的多谐振荡器构成,信号频率为100HZ。计时系统由计数器、译码器、显示器组成。计数器由74 LS160构成,由十进制计数器组成了一百进制和六十进制计数器,采用异步进位方式。译码器由74LS48构成,显示器由数码管构成。清零,暂停功能由RS触发器构成防抖动开关。具体过程为:由晶体震荡器产生100HZ脉冲信号先进入计数器,然后传入译码器,将4位信号转化为数码管可显示的7位信号,结果以“分”、“秒”、“10毫秒”依次在数码管显示出来。该秒表最大计时值为59分59.99秒,“10毫秒”为一百进制计数器组成,“分”和“秒”为六十进制计数器组成。 关键词:计时精度计数器显示器 Abstract Electronic stopwatch is the realization of a digital circuit technology,.It can realize the hour, minute, second timer.It does not have mechanical means and has a longer life, so it has been widely used. The principle is a typical digital circuit, which includes a combination logic circuit and a timing circuit. The experiments can be done by electronic stopwatch constituted by the signal system and timing system, and has cleared pause function. Due to the need of a more stable signal, the signal generating system is constituted by the 555 Timer with the resistors and capacitors, and the signal frequency is 100Hz. Timing system contains the counter, decoder, display. Counter 74 LS160 constituted by the decimal counter the decimal and sexagesimal counter, which uses asynchronous binary. The decoder from 74LS48 constitute display digital tube constitute Cleared, the pause function by the RS flip-flop. Its specific process: the 100Hz pulse signal generated by the crystal oscillator and first into the counter, and then the incoming decoder, a 4-bit signal is converted to 7-bit signal of the digital control can be displayed, the result by "minute", "second", "10 milliseconds" turn on the digital display. The stopwatch timing is 59 minutes, 59.99 seconds, 10 milliseconds is the 150 binary counter, "minute" and "second" is the six decimal counter. Keyword:Timing accuracy counter display

电子秒表微机课程设计

课程设计报告 课程设计名称:电子秒表 系: 学生姓名: 班级: 学号: 成绩: 指导教师: 开课时间:2013-2014 学年 1 学期

目录 一、设计题目-------------------------------------------------------------3 二、主要内容-------------------------------------------------------------3 三、基本要求-------------------------------------------------------------3 四、设计原理与硬件电路----------------------------------------------3 五、程序流程图---------------------------------------------------------11 六、程序代码-------------------------------------------------------- ---12 七、程序运行结果------------------------------------------------------19 八、进程安排------------------------------------------------------------21 九、心得收获------------------------------------------------------------21 十、成绩评定------------------------------------------------------------22 十一、参考资料---------------------------------------------------------22

电子秒表课程设计

湖南人文科技学院 课程设计报告 课程名称:电子技术课程设计 设计题目数字电子秒表 系别: 专业: 班级: 学生姓名: 学号: 起止日期: 指导教师: 教研室主任:

摘要 本次设计的数字电子秒表以555定时器为核心,由多谐振荡电路,计数译码显示电路,控制电路三大主要模块构成。由NE555定时器组成的多谐振荡电路通过控制阻值产生10Hz,1Hz的脉冲;输入由74LS192芯片组成的计数电路、74LS48组成的译码电路在数码管FJS5101显示器上输出,以上部分组成计数译码显示电路;通过控制电路实现复位,置数功能,灵活启动停止。电路是采用外接电源来实现的。经过仿真、布线、制板等工作,数字秒表成形。本组在此次设计过程中主要是先分析设计要求,根据提出的设计要求选取合适的芯片,再用multisim 10 画出电路图,进行仿真。再用Prote 2004 Sp2绘制原理图和PCB图,并把PCB图转印到印制板上完成焊接和调试等工作。最终完成数字电子秒表的工作。 关键词:NE555定时器;74LS192计数器;74LS48译码器;控制电路

目录 1、方案论证与对比 (1) 1.1 方案一 (1) 1.2方案二 (2) 1.3方案的对比与选择 (2) 2、数字电子秒表总体方案的分析与设计 (3) 2.1电子秒表电路总图 (3) 2.2控制电路 (4) 2.3 脉冲产生原理 (5) 2.4计数译码显示单元 (7) 2.4.1 计数器 (8) 2.4.2 译码器 (9) 2.4.3 七段显示数码管 (11) 3、调试与检测 (12) 3.1调试方法 (12) 3.2调试故障的原因与排除 (13) 3.3调试结果 (14) 4、总结与致谢 (14) 5、参考文献 (16) 6、附录 (17) 附录一元件清单 (17) 附录二总电路的PCB图 (17) 附录三总电路的仿真图 (18)

数电课设--带proteus仿真的电子秒表设计

工业大学 课程设计 课程:数电课程设计 题目:电子秒表 专业班级: 通信工程1003班 学号: 100404308、309、315

学生: 路、智佳、吴开来 指导教师: 柏山 完成时间: 2013年6月25日 目录 第1章设计要求.................................. 第2章设计方案.................................. 第3章总电路设计思路..................... 第4章分解电路的设计及说明......... 第5章电路的仿真 ............................. 第6章设计总结及心得体会............. 参考文献: ............................................

附录:..................................................... 第1章设计要求 结合数字逻辑电路知识,设计或分析下述功能电路,利用Proteus软件对电路进行功能仿真,并基于仿真结果对电路进行功能改进。给出仿真机及分析过程及结果。 设计参数: 1.设计可控的计数器(定时器)、分频器、键去抖电路和动态扫描显示电路;

2.设计系统顶层电路; 3.进行功能仿真和时序仿真; 4.对仿真结果进行分析,确认仿真结果达到了设计要求: 1.分析设计要求,明确性能指标。必须仔细分析课题要求、性能、指标及应用环境等,广开思路,构思出各种总体方案,绘制结构框图。 2.确定合理的结构方案,对各种方案进行比较,以电路的先进性、结构的繁简、成本的高低及制作的难易等方面作综合比较并考虑器件的来源,敲定可行方案。 3.设计各单元电路。总体方案化整为零,分解成若干子系统或单元电路,逐个设计。 4.组成系统。在一定幅面的图纸上合理布局,通常是按信号的流向,采用左进右出的规律摆放各电路,并标出必要的说明。 第2章设计方案 方案一:实现秒表的功能有很多种,该方案采用的是用555定时器产生一个1000HZ的秒脉冲,然后

相关文档
最新文档