当前位置:文档之家› 微机原理课程设计(秒表+)

微机原理课程设计(秒表+)

微机原理课程设计(秒表+)
微机原理课程设计(秒表+)

目录

一、设计任务-------------------------------------------------------------3

二、设计原理-------------------------------------------------------------3

2.1 原理概述

2.2 延时原理

2.3 显示字符及字符串原理

2.4 压缩BCD码转为ASCII原理

2.5 动态扫描键盘原理

三、设计流程图----------------------------------------------------------4

3.1 主程序流程图

3.2 各子程序流程图

四、源程序运行结果---------------------------------------------------- 7

五、程序调试--------------------------------------------------------------8

六、心得体会--------------------------------------------------------------9

七、参考书目--------------------------------------------------------------9

八、附录(源程序代码)-----------------------------------------------10

一、设计任务

1.具有秒和百分之一秒计时并显示于图案中央

2.具有启、停功能

3.具有复位功能

4.具有记忆功能

5.具有整分报时功能

二、设计原理

2.1 原理概述

通过调用INT 21H的8号功能实现控制字符的输入,通过调用延时程序实现百分之一秒的定时,通过调用INT 10H 的2号功能实现光标定位,调用INT 21H 的2号功能实现字符的输出,通过调用INT 21H 的9号功能实现字符串的输出。

2.2延时原理

本设计利用软件实现延时,即通过可控制的循环来占用CPU的时间来实现延时。延时函数名为TIME,运用内外两层循环,外循环由AX中的数值来控制,内循环有CX中的值来控制。实现不同延时的控制,通过反复比较调试,确定AX的值为0EFH,CX的值为0FFFFH。

2.3 显示字符及字符串原理

整个屏幕可显示25行、80列字符,屏幕左上角字符位置为0行0列,右下角字符位置为24行79列,对应于十六进制为:左上角为(0,0),右下角为(18,4F)。定位光标用INT 10H 的2号功能,DH中存行号,DL中存列号,BH中存页号。显示字符用INT 21H的2号功能,DL中存放要显示字符的ASCII码。显示字符串用INT 21H的9号功能,DX中存要显示的字符串的偏移地址。

2.4 压缩BCD转为ASCII原理

先将压缩BCD码的高4位取出,右移四位后,与30H相或,存到相应内存单元;然后将低4位取出,与30H相或,存到下一内存单元。

2.5 动态扫描键盘原理

运用INT 21H的8号功能来实现动态扫描键盘。如果有键按下,则相应的键值的ASCII码被存到AL中。判断AL中的数值,若不是控制字符,则继续循环,从而实现动态扫描键盘。

一、程序流程图

3.1主程序流程图

3.2 子程序流程图

四、源程序运行结果图

4.1 程序执行效果图

五、程序调试

1、主程序的调试

本方案的设计思路是先写好各子程序再写主程序,因此必须明确何时调用子程序,否则会出现逻辑错误。何种寄存器需要保护,取决于子程序在主程序中的位置以及该寄存器在主程序中的作用,要尽量少用堆栈操作以提高效率。

主程序调试的另一重要内容是如何实现控制字符的各种功能。我们组使用DOS 系统功能调用的8号功能,该功能将键盘输入存入AL寄存器,通过判断寄存器中是否为控制字符来判断是否有字符输入,若AL中为随机数则无输入。

主程序的控制字符为大写字符,一开始我们没有用大写字母锁定,按什么键都不能启动,以为程序有问题,几经修改,浪费了很多时间。

主程序使用压缩BCD码做的加法,再用DAA进行调整,这时要注意DAA只能对AL中的结果进行调整,因此只能用AL做加法,再将数据传送过去。

2、延时子程序的调试

延时程序的时间并没有经过精确计算,因此只能用试探法逐渐增加或减小AX值。我们组是每十秒与标准时间(手机秒表)比较一次,程序走的比较快因此应逐渐增加AX值,最终选定AX= 0EFH 。当然了人总有一定的反应时间,不可能做到十分精准,但是在误差允许范围之内就可以了。

3、图形显示程序的调试

我们组的图形显示使用了宏调用,主要因为它可以方便的传递参数,图形显示需要大量重复性程序使用宏定义可以节约编程时间,又可以让程序更简洁。调试的主要任务是使图形更美观,通过数出各点的行数列数就可以方便地确定某点的位置和字符。需要改动时只需修改宏调用的参数。

4、清屏子程序调试

通过阅读《微型计算机原理与接口技术》我了解到,可以使用BIOS中断调用中10H号中断的6号功能实现向上滚屏,同时可以设置颜色。由于书中没有具体指明颜色代号,只能通过从01H开始依次尝试。经过多次调试最终确定图形使用0CH红色,字幕使用0BH绿色,记忆区使用0DH紫色。

5、记忆功能子程序调试

记忆功能的基本原理很简单就是每次复位时都调用一次记忆子程序,将当前值记录下来,共可记录10组数据,这样方便了多次计时。该程序的调试主要是通过对屏幕的设计,使的每满十次记忆后可以顺利将原数清空。基本原理与清屏功能相同,就是将记忆区的起始行列号和终止行列号准确的送到INT 10H的入口参数。

6、响铃功能的调试

响铃功能结构简单但有一个关键点,就是不能将响铃的ASCII码直接送到DL,只能通过AL转送。

六、心得体会

1.掌握几种实用工具的重要性

汇编语言的编译、链接工具都很简单,适用于小程序的编辑和调试,遇到复杂的程序就应使用更高级的工具,网上有很多语言工具免费使用,画流程图时,我却还用Windows画图工具,效率低且不准确,以后要多学习,掌握更多的方法才能提高效率。

2、要熟悉课本并不断深入探索

课本的附录有很多功能,大家往往只关注考试要求的内容,对其他的实用信息不能深入挖掘。本程序的清屏功能就是从“BIOS中断调用表”中找到的,经过多次尝试才确定了我们需要的功能。以后学习时遇到问题,也可以用软件实现来验证自己的猜测。《微机原理》是一门实用性很强的学科,要加强理论与实践的联系才能学的更透,理解的更深。

3、做事要认真细心、一丝不苟

将源程序敲入电脑,常会有错字漏字,要反复比较才能保证不出错。刚开始我们的宏定义在结尾时加了宏名称,由于过程定义结束时都是要加过程名,我就理所当然的认为宏定义也要加名称,在数据传送时直接传送容易出现类型不匹配问题,通过AL传可以避免。字符串结束时一定要加‘$’,否则会出现乱码。这些都是调试中发现的问题,只有注意细节,才能顺利完成任务。

总结:通过本次课程设计,我加深了对课本知识的理解,同时熟练掌握了汇编语言的编辑、调试工具。在以后的学习生活中还要继续保持严谨认真的科学态度,保持不断尝试和探索的耐心,保持勇于解决问题的决心。不断地向老师、同学们学习、交流,分享吸取他们的经验,更好的提高自己。

七、参考书目

[1] 张永祥《微型计算机原理》中国电力出版社2005年8月

[2] 武新《汇编语言程序设计》武汉理工大学出版社2006年7月

[3] 马力《 8086汇编语言程序设计》机械工业出版社2006年9月

[4] 杨季文《汇编语言程序设计教程》清华大学出版社2008年3月

八、附录(源程序)

DIS MACRO LOCA T,CODE ;设置图形显示宏定义

PUSH DX

PUSH BX

PUSH AX

MOV DX,LOCAT ;设置光标位置

MOV BH,00

MOV AH,02H

INT 10H

MOV DL,CODE ;输出字符串

MOV AH,02H

INT 21H

POP AX

POP BX

POP DX

ENDM

DAT SEGMENT ;设置数据段

BUF DB 'INPUT START RESET END CONTINUE $' ;设置功能说明BUFFER DB 10 DUP(?) ;定义缓存区

TIP DB 'M E M O R Y$' ;定义记忆提示

NUM DB 1

LOD EQU 0929H

DAT ENDS

COD SEGMENT ;定义代码段

START PROC FAR

ASSUME CS:COD,DS:DAT

MOV AX,DAT

MOV DS,AX

MOV DX,OFFSET BUF ;输出功能说明

MOV AH,09H

INT 21H

CALL DISMER ;记忆区提示符置光标

MOV DX,OFFSET TIP ;输出记忆提示字符

MOV AH,09H

INT 21H

CALL CLR ;图形区清屏并设置颜色

CALL CLRDAT ;秒表数字区清屏并设置颜色

CALL CLRMER ; 记忆区清屏并设置颜色

DIS 0419H,'<' ;通过宏调用显示图形

DIS 0517H,'<'

DIS 0715H,'<'

DIS 0914H,'<'

DIS 0B14H,'<'

DIS 060EH,'_'

DIS 0710H,'_'

DIS 0812H,'_'

DIS 0913H,'_'

DIS 0A14H,'_'

DIS 0915H,'_'

DIS 0816H,'_'

DIS 0718H,'_'

DIS 061AH,'_'

DIS 071CH,'*'

DIS 081EH,'*'

DIS 091FH,'*'

DIS 0B20H,'*'

DIS 0D21H,'*'

DIS 0F21H,'*'

DIS 1120H,'*'

DIS 131FH,'*'

DIS 141EH,'*'

DIS 151DH,'*'

DIS 161BH,'*'

DIS 1719H,'*'

DIS 1717H,'_'

DIS 1616H,'_'

DIS 1514H,'_'

DIS 1612H,'_'

DIS 1711H,'_'

DIS 170EH,'*'

DIS 160CH,'*'

DIS 150BH,'*'

DIS 140AH,'*'

DIS 1309H,'*'

DIS 1108H,'*'

DIS 0F07H,'*'

DIS 0D07H,'*'

DIS 0B08H,'*'

DIS 0909H,'*'

DIS 080AH,'*'

DIS 070CH,'*'

DIS 0C12H,'_'

DIS 0C13H,'_'

DIS 0C14H,'_'

DIS 0C15H,'_'

DIS 0C16H,'_'

CALL GO ;设置初植

LOAD: CALL IOSET ;光标定位

CALL HALT ;等待输入

MOV DX,0

MOV CH,0

AGAIN:

CALL TIME ;调用延时程序

MOV AL,DL ;百分之一秒加一

ADD AL,1

DAA

JC NEXT1 ;满一百进位

MOV DL,AL

JMP DISPY ;不满一百显示

NEXT1: MOV DL,0

MOV AL,DH ;秒位加一

ADD AL,1

DAA

MOV DH,AL

CMP AL,60H

JNE DISPY

CALL BELL ;满60提示铃声并进位MOV DH,0

MOV AL,CH ;分位加一

ADD AL,1

DAA

MOV CH,AL

CMP AL,60H

JNE DISPY ;满60清零MOV CH,0

DISPY: ;显示电子秒表

MOV BX,OFFSET BUFFER ;取缓冲区地址

CALL TRAN ;将分位转变为ASCII码并送缓冲区

INC BX

INC BX

MOV AL,DH ;将秒位转变为ASCII码并送缓冲区

CALL TRAN

INC BX

INC BX

MOV AL,DL ;将百分之一秒位转变为ASCII码并送缓冲区CALL TRAN

PUSH BX

PUSH CX

PUSH DX

CALL IOSET ;光标置位

MOV DX,OFFSET BUFFER ;输出缓冲区字符串

MOV AH,09H

INT 21H

POP DX

POP CX

POP BX

MOV AH,0BH ;等待键盘输入

INT 21H

AND AL,AL

JZ AGAIN

MOV AH,08H

INT 21H

CMP AL,'R' ;判断输入是否为R

JNE NEXT2 ;不是则判断是否为E

CALL MEMORY ;若是则调用记忆功能保存当前值

MOV CH,0 ;初值清零重新计数

MOV DL,0

MOV DH,0

JMP AGAIN

NEXT2:

CMP AL,'E' ;判断是否为E

JNE AGAIN ;不是则继续计数

NEXT3: ;若是则暂停计数

MOV AH,08H

INT 21H

CMP AL,'C' ;判断是否输入C

JE AGAIN ;若是则继续计数

CMP AL,'R' ;判断是否输入R

JNE NEXT3 ;若不是则继续等待输入

CALL MEMORY ;若是则调用记忆功能

CALL GO ;重新设置初值等待重新启动

CALL IOSET

MOV DX,OFFSET BUFFER

MOV AH,09H

INT 21H

JMP LOAD

RET

START ENDP

GO PROC ;设置初值子程序

MOV BX,OFFSET BUFFER

MOV AL,'0'

INC BX

MOV AL,'0'

MOV [BX],AL

INC BX

MOV AL,':'

MOV [BX],AL

INC BX

MOV AL,'0'

MOV [BX],AL

INC BX

MOV AL,'0'

MOV [BX],AL

INC BX

MOV AL,':'

MOV [BX],AL

INC BX

MOV AL,'0'

MOV [BX],AL

INC BX

MOV AL,'0'

MOV [BX],AL

INC BX

MOV AL,'$'

MOV [BX],AL

RET

GO ENDP

IOSET PROC

MOV DX,0F10H

MOV BH,00

MOV AH,02H

INT 10H

RET

IOSET ENDP

HALT PROC

MOV AH,08H

INT 21H

CMP AL,'S'

JNE HALT

RET

HALT ENDP

TRAN PROC ;十六进制转ASCII码子程序MOV CL,AL

SHR AL,1

SHR AL,1

SHR AL,1

SHR AL,1

OR AL,30H

MOV [BX],AL

INC BX

MOV AL,CL

AND AL,0FH

OR AL,30H

MOV [BX],AL

RET

TRAN ENDP

TIME PROC ;延时子程序

PUSH CX

PUSH AX

MOV AX,0EFH

MOV CX,0FFFFH

A1:

DEC AX

JNZ A2

JMP A3

A2:

DEC CX

JNZ A2

JMP A1

A3:

POP AX

POP CX

RET

TIME ENDP

MEMORY PROC ;记忆功能子程序

PUSH DX

PUSH BX

PUSH AX

CMP NUM,10

JE X2

ADD NUM,1

X1:

MOV DX,LOD

ADD DH,NUM

MOV BH,00

MOV AH,02H

INT 10H

MOV DX,OFFSET BUFFER

MOV AH,09H

INT 21H

POP AX

POP BX

POP DX

RET

X2: CALL CLRMER

MOV NUM,1

JMP X1

MEMORY ENDP

CLR PROC ;图形区清屏并设置颜色子程序MOV AH,06H

MOV AL,14H

MOV CX,0401H

MOV DX,1721H

MOV BH,0CH

INT 10H

RET

CLR ENDP

CLRDAT PROC ;数据区清屏并设置颜色子程序MOV AH,6

MOV AL,1

MOV CX,0F10H

MOV DX,0F18H

MOV BH,0BH

INT 10H

RET

CLRDAT ENDP

CLRMER PROC ;记忆区清屏并设置颜色子程序PUSH AX

PUSH BX

PUSH CX

PUSH DX

MOV AH,6

MOV AL,11

MOV CX,0929H

MOV DX,0F32H

MOV BH,0DH

INT 10H

POP DX

POP CX

POP BX

POP AX

RET

CLRMER ENDP

DISMER PROC ;记忆提示显示子程序

MOV AH,02H

MOV BH,00

MOV DX,0728H

INT 10H

RET

DISMER ENDP

BELL PROC ;满分钟提示音设置子程序PUSH AX

PUSH DX

MOV AL,07H

MOV DL,AL

MOV AH,02H

INT 21H

POP DX

POP AX

RET

BELL ENDP

COD ENDS ;结束代码段

END START ;结束源程序

数字电子秒表课程设计

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

微机原理课程设计数字时钟程序

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 电子信息科学与工程 课程名称:微型计算机原理及应用 学年学期: 2 01 1 —2012 学年第1 学期 指导教师: 20 0 1 1年 1 2月 课程设计成绩评定表

目录 一、课设题目及目的………………………………….4 二、设计任务………………………………………….4 三、总框图及设计流程 (4) 四、?源程序清单 (6) 五、?调试结果及显示 (19) 六、?个人贡献………………………………………….19 七、课程设计总结及体会 (21) 一、课设题目及目的 实习题目:数字时钟程序 实习目的:通过实习,使我们进一步弄懂所学到的课本知识,巩固和深化对8086系统的指令系统、中断系统、键盘/显示系统、程序设计、应用开发等基本理论知识的理解,提高汇编语言应用于技术的实践操作技能,掌握汇编语言应用系统设计、研制的方法,培养利用科技革新、开发和创新的基本能力,为毕业后从事与其相关的工作打下一定的基础。

二、课设任务 本课题为利用汇编语言设置时钟程序,其显示效果为:截取系统时间,能以时、分、秒(其中时为24小时制)的形式显示,并且通过合理的操作能修改时和分的内容来修改时间。再有,可以给它设定一个ALARM时间,到这个时间它就能产生信号,起到定时作用,。除此之外还能显示日期,日期分为年、月、日,其显示方式为xxxx年xx 月xx日。 ' *

DB '***********PRESS ESCBUTTON TO EXIT**************',0AH,0DH,'$' TN DB'PLEASE INPUT THE NEW TIME(HH:MM:SS):',0DH,0AH,'$' TMDB'PLEASE INPUT THE ALARM TIME (HH:MM:SS):',0DH,0AH,'$' MUSICMESS DB'PLEASE CHOOSE THE TYPE OF MUSIC:1(FAST) 2(MIDDLE) 3(SLOW)',0DH,0AH,'$' MESS2DB'TIME IS:',0AH,0DH,'$' MESS3DB 'TODAY IS:',0AH,0DH,'$' DBUFFER1DB20DUP('') T_BUFFD B 40 ;在数据段开一段时间显示缓冲区 DB ? DB 40DUP(?) HOR DB? MIN DB? SEC DB? TEMPHOR DB ? TEMPMIN DB? TEMPSEC DB? MUSIC DW 800;存放音乐的频率数DATA ENDS STACK SEGMENT DB 100 DUP(?) STACK ENDS CODESEGMENT ASSUME CS:CODE,SS:STACK,DS:DATA START: CALL CLEAR ;调用清屏子程序 DISPLAY:;时间显示部分 MOV AX,DATA MOVDS,AX MOVBX,OFFSETT_BUFF;送T_BUFF的偏移地址到BX MOV AH,2CH;调用DOS时间调用功能,功能号:2CH,小时,分钟,秒数分别保存在CH,CL,DH中 INT 21H ;判断时间是否相等SUB DH,1;秒数+1修正 CALL CHECK ;.........................................................................

电子秒表课程设计

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

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

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

单片机电子时钟课程设 计实验报告 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班学号: 姓名:

一、设计题目及要求: 【课题6】数字时钟 1.通过8253 定时器作产生秒脉冲定时中断。在中断服务程序中实现秒、分、小时的进位(24小时制)。 2.在七段数码管上显示当前的时分秒(例如,12 点10 分40 秒显示为121040)。 3.按“C”可设置时钟的时间当前值(对准时间)。 二、设计思想: 总体思想: 1、功能概述: 实验箱连线: 本实验建立在Dais实验箱基础上完成的基本连线及程序如下: 138译码器: A,B,C,D,分别连接A2,A3,A4,GS; y0连接8253的CS片选信号; y1连接8259的CS片选信号; 8253连线: 分频信号T2接8253的CLK0; 8253的OUT0接8259的IR7; 8253的gate信号接+5V; 8259连线: 8259的数据线接入数据总线;

本程序包括显示模块,键盘扫描模块,时间计数模块,设置模块等几个模块, (1)程序运行后,LED显示000000初始值,并且开始计数 (2)按C键进行设置初始时间,考虑到第一个数只能是0,1,2,当第一个数显示2时第二个数只能显示0~4,同理下面各位应满足时钟数值的合理的取值; (3)在手动输入初始值时,按D键进行回退1位修改已设置值,连续按D键可以全部进行删除修改。 2、主程序设计 主程序中完成通过调用子程序完成对8253及8259的初始化,对8259进行中断设置。主要在显示子程序和键盘子处理程序之间不断循环,8253每一秒给8259一个刺激,当8259接受到刺激后会给CPU一个中断请求,CPU会转去执行中断子程序,而中断子程序设置成时间计数加,即完成电子表的整体设计。详细流程图见图三-1。 3、LED显示子程序设计 本程序显示部分用了6个共阳极LED作为显示管,显示程序要做到每送一次段码就送一次位码,每送一次位码后,将位码中的0右移1位作为下次的位码,从而可以实现从左到右使6个LED依次显示出相应的数字。虽然CPU每隔一定时间便执行显示程序,但只要这个时间段不太长,由于人眼的视觉作用,就可以在6个LED上同时见到数字显示。 4、键盘扫描子程序设计 本程序需要用键盘对时间的初始值进行设置,因此对键盘扫描的子程序需要满足的功能如下: 判断是否是C键,若不是就返回至主程序,若是C键就开始对时间初始值进行设置,同时因注意到第一个值不可以超过2,第一个数是2时第二数不能超过4,余下的同理要满足时间数值的取值范围呢,若不是合法输入不予反应继续等待输入。当遇到输入数值错误时可以按下D键进行删除一位重新设置;当6位初始值全部设置成功后,电子表将自动开始走表。 5、时间运算子程序设计 该子程序的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟

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

摘要 本设计的数字电子秒表系统采用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)

电子秒表微机课程设计

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

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

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

单片机 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

电子秒表课程设计报告

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

EDA课程设计数字秒表

课程设计 题院目 系 数字秒表设计 信息工程学院 班级姓名指导教师

目录 第1章:系统设计要求 (3) 第2章:实验目的 (3) 第3章:实验原理 (3) 第4章:系统设计方案 (3) 第5章:主要VHDL源程序 (4) 1) 十进制计数器的VHDL 源程序. (4) 2) 六进制计数器的VHDL 源程序 (5) 3)蜂鸣器的VHDL源程序. (5) 4)译码器的VHDL源程序. (6) 5)控制选择器的VHDL源程序 (7) 6)元原件例化的VHDL源程序 (8) 第六章:系统仿真. (10) 第七章:系统扩展思路. (11) 第八章:设计心得总结. (11)

数字秒表的设计 1、系统设计要求 1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、 分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便于和显示译码器的连接。当计时达60分钟后,蜂鸣器鸣响10声。 2.整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及 启动。 3.秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、 六进制计数器和报警器组成。在整个秒表中最关键的是如何获得一个精确的 100HZ计时脉冲。 2、实验目的 通过本次课设,加深对EDA技术设计的理解,学会用QuartusⅡ工具软件 设计基本电路,熟练掌握VHDL语言,为以后工作使用打下坚实的基础。 3、实验原理 秒表由于其计时精确,分辨率高(0.01秒),在各种竞技场所得到了广泛的应用。秒表的工作原理与数字时基本相同,唯一不同的是秒表的计时时钟信号,由 于其分辨率为0.01秒,所以整个秒表的工作时钟是在100Hz的时钟信号下完成。 当秒表的计时小于1个小时时,显示的格式是mm-ss-xx(mm 表示分钟:0~59;ss表示秒:0~59;xx表示百分之一秒:0~99),当秒表的计时大于或等于一个 小时时,显示的和多功能时钟是一样的,就是hh-mm-ss(hh表示小时:0~99),由于秒表的功能和钟表有所不同,所以秒表的hh 表示的范围不是0~23,而是 0~99,这也是和多功能时钟不一样的地方。在设计秒表的时候,时钟的选择为100Hz。变量的选择:因为xx(0.01 秒)和hh(小时)表示的范围都是0~99, 所以用两个4位二进制码(BCD码)表示;而ss(秒钟)和mm(分钟)表示的 范围是0~59,所以用一个3位的二进制码和一个4位的二进制码(BCD)码表示。显示的时候要注意的问题就是小时的判断,如果小时是00,则显示格式为 mm-ss-xx,如果小时不为00,则显示hh-mm-ss。 4、系统设计方案 秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、 六进制计数器和报警器组成。 四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;分频器:用来产生100HZ计时脉冲;显示译码器:完成对显示的控制。

电子秒表课程设计

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

倒计时秒表课程设计

倒计时秒表课程设计

目录 一.设计目的 (1) 二.设计要求 (1) 三.总体设计 (1) 设计方案 (1) 硬件电路设计 (1) 1)C P U部分 (1) 2)晶振电路部分 (2) 3)L C D显示 (3) 4)键盘及蜂鸣器部分 (3) 软件程序设计 (4) 四.方案实施 (6) 单片机简介 (6) 4.2动态L C D液晶显示器显示 (6) 4.3 软件调试及调试方法 (8) 五.课程设计总结 (10) 六.参考文献 (10) 七.附件 (11) 源程序 (12) 总体电路图 (22)

一.设计目的 1熟悉整个项目的流程即单片机系统设计过程 2 学会使用各种仿真软件 3熟练的使用汇编语言编写小的应用程序 4 掌握系统的调试与安装 5提高学生的自学能力和动手能力 二.设计要求 1)可以实现正常秒表的所有功能,包括启动,暂停,复位等 2)可以自由设定倒计时时间(10s,20s,30s....),并进行倒计时(10s,20s,30s....) 3)显示方式自选 4)任选一款51单片机 5)扩展功能:在秒表基础上增加时钟功能;倒计时完成时加入报警单元,如声音,灯光等 三.总体设计 设计方案 1)方案讨论和设计:倒计时数字秒表的设计主要考虑以下几个问题:一,LCD液晶显示器如何显示数字0—9;二,如何用单片机来控制LCD的显示;三,单片机最小模式下的设计。处理好这些问题此设计才能完整,为此必须先了解LCD的显示原理和接线方法,再了解单片机的组成原理和控制方法。硬件电路的绘制和软件程序的编写是此次设计的关键和基础,只有硬件电路的设计是正确的、合理的,软件设计才可以根据硬件电路编程,以下的设计才能够进行。 2)主要任务:软件的调试和烧录 硬件电路设计 1)CPU部分 口是“调模式”num 10,num20,num30,num50,num100 口是“开始”倒计时端口 口是“关闭”(返回)轰鸣器口,在定时可以返回到模式状态。 口是给轰鸣器送触发信号口 口是“暂停”口

电子秒表课程设计

电子秒表 摘要 电子秒表是一种用数字电路技术实现时、分、秒计时的装置,无机械装置,具有较长的使用寿命,因此得到了广泛的使用。它从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。本次实验所做电子式秒表由信号发生系统和计时系统构成,并具有清零,暂停功能。由于需要比较稳定的信号,所以信号发生系统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

微机原理课程设计报告

微机原理课程设计报告 一、设计目的 培养和锻炼在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力。通过课程设计,要求熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,得到微机开发应用方面的初步训练。 掌握8255、8259、8253等芯片使用方法和编程方法,通过本次课程设计,学以致用,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,系统中采用8086微处理器完成了电子秒表系统的独立设计。同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。 二、设计内容 设计一个可任意启动/停止的电子秒表,要求用6位LED数码显示,计时单位为1/100秒。利用功能键进行启/停控制。其功能为:上电后计时器清0,当第一次(或奇数次)按下启/停键时开始计数。第2次(或偶数次)按下该键时停止计时,再一次按启/停键时清零后重新开始计时。可用开关控制,也可用按键控制 三、设计要求 1、基本要求: 1)设计可以显示1~60秒的无存储功能的秒表,最小单位为毫秒。 2)通过键盘按键控制秒表清零、暂停、继续,退出等。其中数字0控制清零,数字1控制继续和退出。 2、提高要求: 1)秒表可以分组存储、批量显示、倒计时等。 2)采用图像显示,界面精美,设置报警声等 四、设计原理与硬件电路 1、整体设计思想 使用8253工作在方式0计数,对1/100S计数,并讲计数值写入bl中并与100比较若不相等,则

将计数值装换为10进制后送8255控制端显示,如相等则1S计数程序加1之后并与59比较若不相等则将计数值装换为10进制后送8255控制端显示,如相等则1min计数程序加1之后并与59比较若不相等则将计数值装换为10进制后送8255控制端显示,如相等则计数程序加1之后产生溢出,跳转清零程序将计数清零,同时数码管清零。 2、使用各芯片的作用及工作原理 1)定时器/计数器8253 用系统8253定时器提供的55ms定时单位,设计秒表定时程序。 有关系统定时方法:PC机系统中的8253定时器0工作于方式3,外部提供一个时钟作为CLK 信号, 频率:f=1.1931816MHz。 定时器0输出方波的频率:fout=1.1931816/65536=18.2Hz。 输出方波的周期Tout=1/18.2=54.945ms。8253A每隔55ms引起一次中断,作为定时信号。可用55945ms作基本计时单位。 用BIOS调用INT 1AH可以取得该定时单位。例:1秒=18.2 (计时单位) 8253的引脚图及硬件连接图如下图示: 《8253引脚图》硬件连接图 当A1A0分别为00 01 10 11时分别选中三个通道和控制字寄存器在8088系统中,8088的A1A0分别与8 253的A1A0相连在8086系统中,通常将8253的8位数据线与8086的低8位相连,即使用偶地址,所

相关主题
文本预览
相关文档 最新文档