8086数字时钟课程设计报告

合集下载

8086定时器课程设计

8086定时器课程设计

8086定时器课程设计一、课程目标知识目标:1. 理解8086定时器的基本工作原理,掌握其编程控制方法。

2. 学会使用8086定时器进行计时和延时功能的设计。

3. 掌握定时器中断处理程序的编写,了解其在实际应用中的作用。

技能目标:1. 能够独立编写8086定时器的初始化、启动、停止和计数值读取等程序。

2. 能够运用定时器实现精确的时间控制和事件调度。

3. 能够分析并解决定时器编程过程中遇到的问题,提高调试和优化程序的能力。

情感态度价值观目标:1. 培养学生对计算机硬件编程的兴趣,激发其探究精神。

2. 增强学生的团队合作意识,提高沟通与协作能力。

3. 让学生认识到编程在现实生活中的应用价值,培养其社会责任感和创新精神。

课程性质:本课程为计算机硬件编程课程,以8086定时器为载体,使学生掌握计算机硬件编程的基本方法和技巧。

学生特点:学生已具备一定的汇编语言基础,对计算机硬件编程有一定了解,但实际操作经验不足。

教学要求:结合学生特点,注重理论与实践相结合,强化动手实践,培养解决实际问题的能力。

通过课程学习,使学生能够将所学知识应用于实际项目中,提高其编程水平和综合素养。

二、教学内容1. 定时器原理概述:介绍8086定时器的基本构成、工作原理及计数模式。

- 相关教材章节:第三章 计数器与定时器2. 定时器编程基础:- 定时器的初始化和配置方法。

- 定时器的启动、停止和计数值读取。

- 相关教材章节:第四章 定时器编程3. 定时器中断处理:- 中断向量表的设置和中断处理程序的编写。

- 定时器中断的应用场景及示例程序。

- 相关教材章节:第五章 中断处理与定时器应用4. 定时器应用案例:- 实现精确延时功能。

- 定时器实现事件调度。

- 相关教材章节:第六章 定时器应用案例5. 实践操作与调试:- 编写、运行和调试定时器程序。

- 分析并解决编程过程中遇到的问题。

- 相关教材章节:实验指导书教学内容安排与进度:第一周:定时器原理概述、编程基础。

8086数字电子钟的设计 附程序代码

8086数字电子钟的设计 附程序代码

附件3课程设计(综合实验)报告( 2011 -- 2012 年度第 1 学期)名称:硬件课程与实践题目:8086数字电子钟的设计院系:班级:学号:学生姓名:指导教师:设计周数:2周成绩:日期:2011年09月01日一、课程设计的目的与要求1. 综合运用学过的相关软、硬件知识,利用伟福LAB6000实验设备,设计具有实用功能的电子钟,实现电子时钟的准确运行、校时等功能。

2.熟悉伟福LAB6000的功能,掌握数码管设计和键盘设计的要领及相关技术,能够利用实验设备实现电子钟系统的设计。

3.提高自己的硬件设计分析能力,同时培养软硬结合的系统设计思维,从而提高设计系统的可行性和准确性。

二、课程设计正文A.设计题目:8086数字电子钟的设计:1.设计并完成LED七段数码管数字钟电路。

2.数字钟显示格式为:HH:MM:SS。

3.具有通过键盘能够调整时、分、秒及设置闹铃的功能。

4.具有暂停时间及复位功能。

B.设计方案本设计采用LAB6000伟福仿真实验箱,利用4MHz脉冲信号源和多级分频电路产生脉冲信号,4MHz脉冲信号经过F/64分频后得到62.5KHz脉冲信号,将脉冲信号传递给8253定时器,定时器每0.000016秒中断一次,在中断服务程序中对中断次数进行计数,0.000016秒计数62500次就是1秒,然后在中断服务程序中对秒计数得到分和小时值并判断闹铃是否到时。

编写键盘扫描和LED显示程序完成设置时间、定闹铃及数码管显示功能。

C.硬件原理1.七段数码管显示和键盘扫描显示图1.1七段数码管图1.2伟福实验台六位LED的电路图及寻址空间实验箱提供了6位八段数码LED显示电路,只要按地址输出相应数据,就可以实现对显示器的控制。

将KEY/LED CS接到CS0上,则实验箱中八位段码输出地址为08004H,位码输出地址为08002H。

实验箱提供了一个6×4的小键盘,将KEY/LED CS信号接到CS0上,则列扫描地址为08002H,行码地址为08001H。

课程设计-8086电子时钟设计

课程设计-8086电子时钟设计

微机原理及其接口技术课程设计题目: 8086电子时钟设计前言课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动乎、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。

《微机接口技术》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。

所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。

时钟就是一种对时间进行累计的工具,即计时。

计时的本质就是计数,只不过这里的“数”的单位是时间单位,如果把一小片一小片计时单位累计起来,就可获得一段时间。

因此,使用计数器对时钟脉冲进行计数,就是时钟实现的基本原理;再用LED数码管显示出来,并设计出几个按键用于对时钟进行调整,这样,一个完整的时钟就设计完成了。

本次课程设计要求利用8253定时器设计一个具有时、分、秒显示的电子时钟,并定义一个启动键,当按下该键的时候,时钟从当前的设定值(可以在缓冲区中设置)开始走时。

同时,再定义三个按键,分别对时、分、秒进行校正。

目录目录 -------------------------------------------------------------------------------- 21、电子时钟功能介绍 ------------------------------------------------------------------------------------- 32、电子时钟系统总体方案设计------------------------------------------------------------------------- 42.1方案比较 ------------------------------------------------------------------------------------------- 42.2方案选择 ------------------------------------------------------------------------------------------- 53、电子时钟的工作原理---------------------------------------------------------------------------------- 53.1实现时钟计时的基本方法 --------------------------------------------------------------------- 53.2电子钟的时间显示------------------------------------------------------------------------------- 64、硬件设计-------------------------------------------------------------------------------------------------- 64.1硬件设计电路图---------------------------------------------------------------------------------- 64.1.1主电路模块 --------------------------------------------------------------------------------- 64.1.2 LED显示模块 ----------------------------------------------------------------------------- 74.1.3按键模块 ------------------------------------------------------------------------------------ 84.1.4总体电路图 --------------------------------------------------------------------------------- 84.2硬件设计所用芯片介绍------------------------------------------------------------------------- 84.2.2 8253芯片的内部结构及引脚 -------------------------------------------------------- 104.2.3 8255A芯片的内部结构及引脚 ------------------------------------------------------ 125、软件设计------------------------------------------------------------------------------------------------ 135.1电子时钟部分程序流程框图 ---------------------------------------------------------------- 135.1.1主程序流程框图------------------------------------------------------------------------------ 135.1.2键扫子程序流程框图 ----------------------------------------------------------------------- 145.1.3中断处理程序流程框图 -------------------------------------------------------------------- 145.2电子时钟总体程序----------------------------------------------------------------------------- 156、总结与体会 -------------------------------------------------------------------------------------------- 16 参考文献 ------------------------------------------------------------------------ 17附录1 ---------------------------------------------------------------------------- 18附录2 ---------------------------------------------------------------------------- 19 1、电子时钟功能介绍可调整运行的电子钟具有三种工作状态:"P.”状态、运行状态、调整状态。

数字时钟课设报告

数字时钟课设报告

数字时钟课设报告引言:数字时钟作为现代社会的常见物品,已经深入人们的日常生活中。

在这次课设中,我将介绍数字时钟的基本原理、设计与实现过程。

一、基本原理数字时钟是一种利用电子元件进行计时的钟表。

其基本原理是通过振荡器产生高频信号,再将信号通过分频器、计数器等电路进行处理,最终显示出时间。

其中,振荡器是数字时钟的核心部件,它的稳定性和准确性决定了数字时钟的精度。

二、设计过程1.硬件设计:数字时钟的硬件设计包括电源电路、振荡器电路、分频器电路、计数器电路、显示电路等。

其中,振荡器电路是数字时钟的核心部件,它的设计需要考虑到稳定性和准确性。

分频器电路的作用是将高频信号分频为秒、分、时等不同的频率,计数器电路则是用于计数。

显示电路则是将计数器的结果以数字形式显示出来,包括数码管、LED等。

2.软件设计:数字时钟的软件设计主要包括时钟芯片的编程和控制。

时钟芯片是数字时钟的核心控制部件,它负责控制各个电路的工作状态,同时还需要实现时钟的计时、计数、显示等功能。

软件设计需要考虑到时钟的精度、稳定性和可靠性等因素。

三、实现过程数字时钟的实现过程主要包括硬件的制作和软件的编程。

硬件的制作需要选用优质的电子元件,同时需要进行精密的焊接和组装工作。

软件的编程需要选择合适的编程语言,如C语言等,并进行模块化设计和调试测试。

四、结论数字时钟是一种利用电子元件进行计时的钟表,其基本原理是通过振荡器产生高频信号,再将信号通过分频器、计数器等电路进行处理,最终显示出时间。

数字时钟的设计和实现需要考虑到硬件和软件两个方面,其中振荡器电路和时钟芯片是核心控制部件。

数字时钟的制作需要进行精密的组装和调试工作,同时还需要进行软件编程和测试。

数字时钟的实现过程需要注重时钟的精度、稳定性和可靠性等因素。

基于8086的电子时钟设计

基于8086的电子时钟设计

基于8086的电子时钟设计概述:电子时钟是一种利用电子技术实现时间显示的装置。

本文将介绍基于8086微处理器的电子时钟的设计方案,包括硬件设计和汇编语言编程。

1.硬件设计:(1)8086微处理器:选择适合的8086微处理器芯片,并进行相应的引脚连接。

8086微处理器是16位的,具有高性能和大容量寻址能力。

(2)时钟电路:设计一个稳定的时钟电路,可以使用定时器或石英晶体振荡器,通过一个合适的预分频器产生高频时钟信号。

(3)显示器件:选择合适的显示器件,如LED数码管或液晶显示屏。

这些显示器件需要提供合适的接口电路,以便与8086微处理器进行通信。

(4)键盘电路:设计一个键盘电路,用于设置和调整时钟的时间。

键盘电路需要提供合适的接口电路,以便与8086微处理器进行通信。

2.汇编语言编程:使用汇编语言编程,可以通过对8086微处理器内部的寄存器和存储器进行操作,实现电子时钟的功能。

(1)初始化:在程序开始时,对相关的寄存器和存储器进行初始化,包括时钟计数器、时分秒寄存器、显示器接口等。

(2)时钟计数器:利用定时器或石英晶体振荡器产生的高频信号,通过适当的预分频器产生时钟计数器的时钟信号。

在程序中对时钟计数器进行相应的设置和控制,实现时钟的精确计时。

(3)时分秒寄存器:通过键盘电路输入时、分和秒的数值,将其存储到相应的寄存器中。

通过程序控制这些寄存器,实现时钟数值的更新和显示。

(4)显示器接口:利用合适的接口电路,将8086微处理器输出的数码信号转换为相应的显示信号,显示在数码管或液晶显示屏上。

通过程序控制接口电路,实现时钟数值的实时显示。

3.功能实现:(1)时间设置:通过键盘电路,输入时、分和秒的数值,将其存储到寄存器中,实现时间的设置。

(2)时间显示:通过程序控制,将寄存器中存储的时、分和秒的数值显示在数码管或液晶显示屏上,实现时间的实时显示。

(3)闹钟功能:通过键盘电路设置闹钟的时间,通过程序判断当前时间和闹钟的时间是否相等,如果相等,则触发相应的闹钟响铃。

原创 8086微机原理实验报告

原创 8086微机原理实验报告
可以通过int10中断设置背景显示:2H子功能实现光标定位,9H子功能实现输出字符颜色,个数等的设定。另外,还可以用图形方式实现图形输出。
为方便使用,在屏幕上还应当显示操作提示。
三、程序说明
用户输入的初始时间,日期是以ASCII码的形式存入内存的,在程序中将输入先后换为BCD码,压缩BCD码。以这种形式实现各变量的计数,校时控制,整点报时的条件判断。最后,将压缩BCD码转换为ASCII码,并输出。
INC BX
MOVAL,MONTH
CALL TURN2
INC BX
MOVAL,'-'
MOV [BX],AL
INC BX
MOV AL,DAY
CALL TURN2
INC BX
MOV AL,20H
MOV [BX],AL
INC BX
MOVAL,0AH
MOV [BX],AL
MOVAL,'$'
MOV [BX],AL
Inter 8086/8088系列
微型计算机原理及接口技术






设计项目:电子时钟
院系:山东大学电气工程学院
班级:
姓名:
学号:
同组者:
目录:
一、设计目的说明························3
二、设计原理·····································3
MOV AL,[BX]
CALLTURN3
MOV DAY,AL
X1: MOV AH,1;读取键盘控制字符输入
INT 16H
JZ AGAIN
MOV AH,0 ;从键盘读入控制字符

数字时钟课程设计报告

数字时钟课程设计报告

一.设计题目数字时钟仿真设计二.设计目的和要球1)目的掌握数字时钟的工作原理和设计方法,学会用Multisim10软件操作实验内容,掌握设计性试验的实验方法。

数字钟是一种用数字电路技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的应用。

数字钟从原理上讲是一种典型的数字电路,其中包括了组合逻辑电路和时序电路。

因此,我们此次设计数字钟就是为了了解数字钟的原理,从而学会制作数字钟。

而且通过数字钟的制作进一步的了解各种在制作中用到的中小规模集成电路的作用及实用方法。

且由于数字钟包括组合逻辑电路和时序电路。

通过它可以进一步学习和掌握各种组合逻辑电路与时序电路的原理和方法。

2)要求(1)设计一个具有时、分、秒的十进制数字显示的计时器。

(2)具有手动校时、校分的功能。

(3)通过开关能实现小时的十二进制和二十四进制转换。

(4)具有整点报时的功能,应该是每个整点完成相应点数的报时,如3点钟响3声。

三.设计原理1)总体方案设计数字时钟由振荡器、分频器、计数器、译码现实、报时等电路组成。

其中,振荡器和分频器组成标准信号发生器,直接决定计时系统的精度。

由不同进制的计数器、译码器和显示器组成计时系统。

将标准秒信号送入采用六十进制的“秒计数器”,每累计60s就发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。

“分计数器”也采用六十进制计数器,每累计60min,发出一个“时脉冲”信号,该信号将被送到“时计数器”。

“时计数器”采用二十四进制或十二进制计时器,可实现对一天24h 或12h 的累计。

译码显示电路将“时”、“分”、“秒”计数器的输出状态通过六位七段译码器显示器显示出来,可进行整点报时,计时出现误差时,可以用校时电路校时、校分。

数字时钟的原理框图如图1所示。

2)单元电路设计1.秒脉冲产生电路秒脉冲产生电路用一个1Hz 的秒脉冲时钟信号源代替。

8086秒表课程设计

8086秒表课程设计

8086秒表课程设计一、课程目标知识目标:1. 学生能理解8086微处理器的内部结构与工作原理,掌握其时钟计数器功能。

2. 学生能掌握秒表的设计原理,包括启动、停止、计时的基本操作。

3. 学生能了解并运用相关的汇编指令,完成秒表的编程与调试。

技能目标:1. 学生能运用所学知识,设计并实现一个基于8086处理器的秒表程序。

2. 学生能通过编程实践,提高问题分析、程序设计及调试的能力。

3. 学生能通过团队协作,提升沟通与协作能力。

情感态度价值观目标:1. 学生在课程学习中,培养对计算机硬件及编程的兴趣,提高学习积极性。

2. 学生在实践操作中,培养动手能力、创新意识和解决问题的自信心。

3. 学生通过课程学习,认识到科技进步对生活的影响,增强社会责任感和使命感。

课程性质:本课程为计算机硬件及汇编语言课程的一部分,以实践操作为主,注重培养学生的动手能力和编程思维。

学生特点:学生为高中二年级学生,已具备一定的计算机硬件和汇编语言知识,具备基本的编程能力。

教学要求:结合学生特点,课程以任务驱动法为主,引导学生主动探究,注重理论与实践相结合,提高学生的实际操作能力。

通过课程目标的分解,确保学生达到预期的学习成果,为后续课程学习奠定基础。

二、教学内容本课程教学内容主要包括以下几部分:1. 8086微处理器内部结构及工作原理回顾:重点复习时钟计数器部分,为学生设计秒表奠定基础。

2. 秒表设计原理:讲解秒表的启动、停止、计时的基本原理,引导学生理解其与硬件计数器的关联。

3. 汇编指令学习:结合教材,复习与秒表编程相关的重要指令,如MOV、ADD、SUB、JMP等。

4. 秒表编程与调试:指导学生运用所学知识,设计并实现一个基于8086处理器的秒表程序。

5. 任务驱动实践:制定以下教学进度:a. 第一周:回顾8086微处理器知识,学习秒表设计原理。

b. 第二周:学习汇编指令,编写秒表程序。

c. 第三周:调试秒表程序,进行优化。

8086数字时钟课程设计报告

8086数字时钟课程设计报告

INTEL 8086/8088系列微型计算机原理及接口技术课程名称:微型计算机原理及接口技课程设计设计题目:具有年月日时分秒功能的时钟显示院系:电气工程学院班级:设计者:学号:同组者:指导教师:设计时间:目录一、设计内容与要求 (2)二、设计思路 (3)三、流程图 (4)四、程序 (7)五、运行结果 (12)六、硬件设计…………………………………………………………………………………………………七、调试步骤 (13)八、心得体会 (14)九、参考文献 (14)一、设计内容与要求:用汇编语言编写一个时钟程序,在微机屏幕上显示当前时间****年**月**日**时**分**秒。

在程序启动后,微机屏幕上显示当前时间,按下a键开始计时,按下b键停止计时,按下c键退出程序。

二、设计思路:利用BIOS的INT 1AH的2号系统功能调用,将计算机系统的时间参数(BCD 码)送入寄存器。

其中CH 和CL中保存的是小时数和分钟数;DH中保存的是秒钟数。

利用除法命令DIV,若进行字节操作,16位被除数隐含在AX中,8位除数就是源操作数,结果的8位商在AL中,8位余数在AH中,即(AL)(AH)/(SRC)的商(AL)(AH)/(SRC)的余数若进行字操作,32位被除数低16位隐含在AX中,高16位8位隐含在DX中,16位除数就是源操作数,结果的16位商在AX中,16位余数在DX中,即(AX)(DX,AX)/(SRC)的商(DX)(DX,AX)/(SRC)的余数通过以上方法将二进制表示的年月日时分秒转换为BCD码,再将BCD码表示的时,分,秒转换成AS CⅡ码并送入屏幕显示。

能调用子程序,若显示时间与当前时间不符,则校准显示时间,并用INT 21H 的7号功能调用判断输入回车并清屏。

若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示。

详细过程见程序注释。

三、流程图:四、程序:GB MACRO X ;宏定义MOV AX,0200HMOV BX,0000HMOV CX,0000HMOV DX,XINT 10HENDMXIANSHI MACRO Y,Z,WMOV BP,OFFSET YMOV AH,13HMOV AL,0BMOV BX,0EHMOV CX,ZMOV DX,WINT 10HENDMDATA SEGMENTBUFFER1 DB 11 DUP (?)BUFFER2 DB 9 DUP (?)SECOND DB ?SIGN DB ?STR1 DB 'THE CURRENT TIME: $'STR4 DB 'PRESS C TO EXIT:$'DATA ENDSSTACK SEGMENT STACK 'STACK'DB 100 DUP ('S')STACK ENDSCODE SEGMENT PARA 'CODE'ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA STA PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,0600HMOV BX,0754HMOV CX,0000HMOV DX,194FHINT 10HXIANSHI STR1,17,0416H ;显示‘ THE CURRENT TIME:’XIANSHI STR4,16,1016H ;显示‘ PRESS C TO EXIT:’BEGIN: CMP SIGN,3 ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE TUI1MOV AH,2AHINT 21H ;取日期LEA BX,BUFFER1PUSH DX ;保护寄存器MOV AX,CX ;利用除法产生商和余数,把以二进制形式保存的年号转换为BCD码MOV DX,0000H ;年号除以1000得到商即为年号的千位MOV CX,1000DIV CXOR AL,30H ;年号的千位转换为其ASCII码并存入BUFFER1第1存储单元中MOV [BX],ALMOV AX,DX ;年号的百位转换为其ASCII码并存入BUFFER1第2存储单元中MOV CL,64HDIV CLOR AL,30HINC BXMOV [BX],ALMOV AL,AHMOV AH,00H ;年号的十位转换为其ASCII码并存入BUFFER1第3存储单元中MOV CL,10DIV CLOR AL,30HINC BXMOV [BX],ALOR AH,30H ;年号的千位转换为其ASCII码并存入BUFFER1第4存储单元中INC BXMOV [BX],AHPOP DX ;年号转换完毕INC BXMOV CL,2DH ;“—”号的ASCII码存入BUFFER1第5存储单元中MOV [BX],CL ;月数除以10得到商即为月数的十位MOV AL,DH ;月数的十位转换为其ASCII码并存入BUFFER1第6存储单元中CMP AL,10JAE L1JMP L2L1: ADD AL,6L2: PUSH AXAND AL,0F0HSHR AL,1SHR AL,1SHR AL,1SHR AL,1OR AL,30HINC BXMOV [BX],ALPOP AXAND AL,0FHOR AL,30HINC BXMOV [BX],AL ;月数的十位转换为其ASCII码并存入BUFFER1第7存储单元中INC BX ;月数转换完毕MOV CL,2DH ;“—”号的ASCII码存入BUFFER1第8存储单元中 MOV [BX],CL ;日期除以10得到商即为日期的十位MOV AL,DL ;日期的十位转换为其ASCII码并存入BUFFER1第9存储单元中MOV AH,00HMOV CL,10DIV CLOR AL,30HINC BXMOV [BX],AL ;日期的个位转换为其ASCII码并存入BUFFER1第10存储单元中OR AH,30HINC BX ;年月日转换完毕MOV [BX],AHMOV CL,'$' ;“$”号的ASCII码存入BUFFER1第11存储单元中 INC BXJMP NEXTTUI1:JMP TUI2NEXT:MOV [BX],CLXIANSHI BUFFER1,10,0616H ;用9号功能显示年月日MOV AH,2CHINT 21H ;取时间LEA BX,BUFFER2MOV AL,CH ;小时数除以10得到商即为小时数的十位MOV AH,00HMOV CH,10DIV CHOR AL,30H ;小时数的十位转换为其ASCII码并存入BUFFER2第1存储单元中MOV [BX],ALOR AH,30H ;小时数的个位转换为其ASCII码并存入BUFFER2第2存储单元中INC BXMOV [BX],AHINC BXMOV CH,3AH ;“:”号的ASCII码存入BUFFER2第3存储单元中 MOV [BX],CH ;分钟数除以10得到商即为分钟数的十位MOV AL,CLMOV AH,00HMOV CL,10DIV CLOR AL,30H ;分钟数的十位转换为其ASCII码并存入BUFFER2第4存储单元中INC BXMOV [BX],AL ;分钟数的个位转换为其ASCII码并存入BUFFER2第5存储单元中OR AH,30HINC BXMOV [BX],AHINC BXMOV CL,3AH ;“:”号的ASCII码存入BUFFER2第6存储单元中 MOV [BX],CLMOV AL,DH ;秒数除以10得到商即为秒数的十位MOV AH,00HMOV CL,10DIV CLOR AL,30H ;秒数的十位转换为其ASCII码并存入BUFFER2第7存储单元中INC BXMOV [BX],ALOR AH,30H ;秒数的个位转换为其ASCII码并存入BUFFER2第8存储单元中INC BXMOV [BX],AHINC BX ;时分秒转换完毕MOV CL,'$' ;“$”号的ASCII码存入BUFFER2第9存储单元中 MOV [BX],CLXIANSHI BUFFER2,8,0716H ;用9号功能显示时分秒CALL DELY ;调用子程序,若显示时间与当前时间不符,则校准显示时间JMP BEGINTUI2: RETSTA ENDPDELY PROCPUSH CXPUSH DXMOV AH,2CHINT 21HMOV SECOND,DHRE: MOV AH,2CHINT 21HPUSH DXMOV AH,6MOV DL,0FFHINT 21HPOP DXCMP AL,63H ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE Z3JMP CONTINZ3: MOV SIGN,3CONTIN: CMP SECOND,DHJE RECMP SIGN,1JMP EXITEXIT: POP DXPOP CXRETDELY ENDPCODE ENDSEND STA五、运行结果:程序运行后如下图所示:按下c键,则会出现下图界面:(此时按下任意键即可退出该程序)(注意,若没按下任何键或按下的不是c键,则不会出现下图所示界面)六、硬件设计:1、硬件设计说明:由8284产生系统脉冲送8253的CLK1,通过CPU置计数初值使计数器2输出1KHZ方波。

数字钟课程设计实验报告

数字钟课程设计实验报告

数字钟课程设计实验报告
实验名称:数字钟课程设计实验
实验目的:设计并制作一款数字钟,学习数字电路的基本构成及工作原理,并深入掌握Verilog 语言的设计和仿真技术。

实验原理:数字钟由时钟电路、驱动电路、显示电路三部分组成。

时钟电路以晶体振荡器为基础,产生高精度的基准时钟信号;驱动电路通过将时钟信号分频、选择和转换,来控制数字显示管的亮灭和数字显示内容;显示电路则将数字经过解码、整合,转换成人类可以识别的时间。

实验步骤:
1. 选择合适的FPGA芯片和数字显示管,根据其接口特点,确定各部分电路的 Pin Assignment。

2. 采用Verilog语言,编写时钟电路模块,实现一个基于晶体振荡器的高精度时钟信号。

3. 编写驱动电路模块,根据时钟信号,实现数字显示管LED的闪烁。

4. 编写显示电路模块,把数码管的8个数字位置写入代码中,并将显示电路模块与时钟电路模块和驱动电路模块相连接。

5. 通过FPGA仿真,进行数字钟模块的验证和测试。

6. 将程序下载到FPGA芯片中,并进行实际调试测试。

实验结果:
本实验设计的数字钟可以按照设定时间进行准确的数字显示,且易于调整时钟的显示时间。

数字钟在 FPGS 上实现良好,实验结果满意。

实验总结:
通过本实验,学习了数字电路的基本构成及工作原理,并深入掌握了Verilog语言的设计和仿真技术。

对于数字电路的实际应用,我有了更加深入的认识。

同时,对于FPGA的开发和调试过程也有了初步的了解,掌握了相关的基本操作和流程。

数字时钟课程设计报告概述

数字时钟课程设计报告概述

数字时钟课程设计报告概述一、课程目标知识目标:1. 学生能够理解数字时钟的构成原理,掌握时、分、秒的概念及其相互关系。

2. 学生能够运用所学知识,分析并描述数字时钟显示时间的规律。

3. 学生了解数字时钟在日常生活和科技领域中的应用。

技能目标:1. 学生能够运用所学知识,设计并制作简单的数字时钟模型。

2. 学生能够运用逻辑思维和问题解决能力,分析并解决数字时钟显示错误的问题。

情感态度价值观目标:1. 学生培养对时间的珍惜,养成良好的时间管理习惯。

2. 学生通过动手实践,增强对科学技术的兴趣,激发创新意识。

3. 学生在团队协作中,培养沟通、交流和合作的能力。

课程性质:本课程为信息技术与电子学的跨学科课程,注重理论与实践相结合。

学生特点:五年级学生对新鲜事物充满好奇心,具备一定的逻辑思维能力和动手实践能力。

教学要求:教师应引导学生通过观察、实践、探究等学习方法,将知识目标、技能目标和情感态度价值观目标有机结合,实现学习成果的达成。

同时,关注学生的个体差异,因材施教,使每位学生都能在课程中收获成长。

二、教学内容本章节教学内容主要包括以下三个方面:1. 数字时钟基础知识:- 时、分、秒的概念及其相互关系;- 数字时钟的构成原理;- 数字时钟在日常生活和科技领域中的应用。

2. 数字时钟的制作与调试:- 介绍数字时钟的制作材料及工具;- 制作数字时钟的步骤及方法;- 调试数字时钟,解决显示错误的问题。

3. 时间管理及团队合作:- 时间的珍贵,如何合理安排时间;- 团队合作的意义,如何进行有效沟通与协作;- 在团队中发挥个人优势,共同完成任务。

教学大纲安排如下:1. 导入新课,介绍数字时钟基础知识,引导学生了解课程内容(1课时);2. 讲解数字时钟的构成原理,进行实践操作,让学生动手制作简易数字时钟(2课时);3. 调试数字时钟,解决显示错误,培养学生的逻辑思维和问题解决能力(1课时);4. 结合时间管理及团队合作,让学生在团队协作中完成数字时钟的制作,培养沟通、交流和合作能力(2课时)。

数字钟课程设计报告

数字钟课程设计报告

数字钟课程设计报告前言:随着科技的不断进步,数字化已经成为了各个领域的主流趋势。

数字技术也在教育领域得到广泛应用。

数字化教育为学生提供了更好的学习方式和体验,同时也给教育工作者带来了更多的创新空间。

本文将围绕数字化教育,探讨数字钟课程设计报告。

数字钟的设计:数字钟是一个数字化的学习工具,在各学科的教学中都得到了广泛应用。

数字钟的设计可以遵循以下步骤:1.确定教学目标:数字钟的设计必须遵循教学目标,以便为教师和学生提供最佳的学习体验,使教学更加生动有趣。

2.选择数字钟的类型:根据教学目标和特点,可以选择不同类型的数字钟,例如计时器、倒计时器、时间轴等。

3.选择数字钟的功能:数字钟的功能会影响到教学效果,因此需要根据教学目标和教学特性选择数字钟的功能。

4.美化数字钟的界面:美化数字钟的界面能够增加学生的学习兴趣,提高教学效果,从而实现教学目标。

数字钟的应用:数字钟是一种数字化教学工具,可以在各个学科的教学中得到广泛应用。

下面以数学为例,详细说明数字钟在数学教学中的应用。

数字钟可以用于教学观念的讲解。

在数学教学中,学习时间的观念非常重要。

使用数字钟可以帮助学生了解时间的本质,为学生认识到时间的重要性打下基础。

数字钟也可以用于学习数学运算。

例如,教师可以设置数字钟来进行加减乘除的计算,帮助学生提高计算速度和精确度。

数字钟还可以用于检查作业。

教师可以在数字钟上设置一个时间限制,让学生在规定时间内完成作业。

如果学生没有完成作业,数字钟将会提醒他们完成。

数字钟的优势:数字化教育工具的吸引力取决于它们的功能和灵活性。

数字钟虽然看起来简单,但它的实际用途非常重要。

它能够帮助教师更好地了解学生的学习情况,同时也能够更好地帮助学生提升学习效果。

数字钟优势如下:1、灵活性:数字钟可以根据教学需要进行设计和选择,可以在不同的学科中得到广泛应用。

2、互动性:数字钟可以与学生互动式地使用。

通过使用数字钟可以促进学生互动,提高学生的学习效果,帮助学生主动掌握学习内容。

汇编语言 8086 电子钟实验

汇编语言 8086 电子钟实验

目录一、设计要求 (2)二、设计目的 (2)三、设计的具体实现 (2)四、结论与展望 (7)五、心得体会与建议 (8)六、附录 (8)七、参考文献 (19)电子钟的设计报告一、设计要求设计一个电子时钟,使其具有二十四小时循环记时功能,走时要准。

并且有时钟的对时功能。

二、设计目的熟练掌握TND86/88教学系统的基本操作和调试程序的各种指令熟悉编程及调试程序的方法掌握8259中断控制器的工作原理和应用编程方法,练习编写中断程序的方法掌握8255的各种工作方式及其应用编程掌握8253定时/计数器的工作原理、工作方式及其应用编程练习LED-KEYBOARD UNIT的使用方法和数码管的显示编程方法三、设计的具体实现1·系统概况电子时钟主要由显示模块、对时模块和时钟运算模块三大部分组成。

其中对时模块和时钟运算模块要对时、分、秒的数值进行操作,并且秒计算到60时,要自己清零并向分进1;分计算到60时,要自己清零并向时进1;时计算到24时,要清零。

这样,才能循环记时。

显示时只显示时和分,不显示秒,利用实验箱上的4个数码管来显示当前时间。

前两个显示小时,后两个显示分钟。

时钟的运算是利用中断来实现的,利用8253的模式三输出一定频率的方波作为触发中断的条件。

在中断服务程序中计算时间,并通过8255并行输出到数码管显示。

2·硬件电路设计电子时钟主要由8259A中断控制器、8253定时/计数器、8255A 接口芯片、LED数码显示管和两个按键组成。

主要用8259A的IRQ7的中断服务程序完成秒、分、时的运算即计时功能,IRQ6的中断服务程序完成调时、调分功能。

8253用来产生40ms的脉冲信号作为IRQ7的中断请求信号。

按键KK1+和KK2+分别作为IRQ2和IRQ6的中断请求信号。

按键KK1+启动/关闭对时功能。

它决定是否屏蔽IRQ7和IRQ6中断源。

8255A负责将内存里的时位和分位值输出到数码管。

数字时钟显示课程设计报告

数字时钟显示课程设计报告

数字时钟显示课程设计报告一、课程目标知识目标:1. 学生能理解数字时钟的组成部分及工作原理,掌握时、分、秒的概念及其相互关系。

2. 学生能够运用所学知识,分析并描述数字时钟显示的数值变化规律。

3. 学生了解数字时钟在日常生活和其他领域中的应用。

技能目标:1. 学生能够运用所学知识,动手设计与制作简易数字时钟。

2. 学生通过小组合作,提高问题解决能力和团队协作能力。

3. 学生能够运用数学知识,进行时间计算和数字时钟显示的转换。

情感态度价值观目标:1. 学生培养对时间管理和珍惜时间的意识,激发学习兴趣。

2. 学生在学习过程中,培养耐心、细心和勇于尝试的精神。

3. 学生通过数字时钟的学习,认识到科技与生活的紧密联系,增强科技创新意识。

课程性质:本课程为信息技术与数学学科的整合课程,以实践操作为主,注重培养学生的动手能力和实际应用能力。

学生特点:五年级学生对数字和时间的概念已有一定了解,具备一定的观察能力和动手能力,对新事物充满好奇。

教学要求:教师需关注学生的个体差异,充分调动学生的积极性,引导学生主动探究,鼓励学生表达自己的观点,培养其创新思维和团队协作能力。

在教学过程中,将课程目标分解为具体的学习成果,以便进行有效的教学设计和评估。

二、教学内容1. 数字时钟的构成与原理:引导学生认识数字时钟的各个部分,如LED显示屏、微控制器等,讲解数字时钟的工作原理。

相关教材章节:第五章《电子时钟与计时器》2. 时间的基本概念:回顾时分秒的定义,讲解它们之间的关系,进行时间换算练习。

相关教材章节:第三章《时间的计量》3. 数字时钟显示规律:分析数字时钟显示的变化规律,如时、分、秒的数值递增规律,特殊情况下的显示特点(如60秒进位)。

相关教材章节:第五章《电子时钟与计时器》4. 简易数字时钟设计与制作:指导学生动手制作简易数字时钟,运用所学知识解决实际问题。

相关教材章节:第五章《电子时钟与计时器》5. 数字时钟应用:介绍数字时钟在日常生活、科技领域等的应用,激发学生学习兴趣。

微型计算机基于8086cup数字时钟课程设计

微型计算机基于8086cup数字时钟课程设计

微型计算机基于8086cup数字时钟课程设计课程设计任务书专业自动化班级姓名设计起止日期2013.12.16~2013.12.20设计题目:基于8086CPU的数字时钟的设计设计任务(主要技术参数):1、利用实验系统上提供的8253和LED数码显示等电路,设计一个电子时钟;2、格式如下:6个数码由左向右分别显示为:时、分、秒。

指导教师评语:成绩:签字:年月日1 引言随着在现代技术进步,电子产品越来越多的在生活中出现,服务于人们的生活,从简单的电子手表,到人人必备的手机,我们都可以看到电子时钟的身影。

本系统就是基于8086系统,配合8255和8253芯片开发的一个数字电子时钟,有显示时分秒的功能。

2 设计方案论证2.1一秒定时方案的选择运用8253产生周期为2秒的方波,通过8255芯片的A、B、C 口读取电平高低,判断电平变化,进而判断1秒延时是否已经到达,这种方法可以写成子程序,执行返回就近似于1秒延时。

2.2时钟时分秒的处理方式选择时钟的时分秒的处理方法实际上时数学逻辑问题。

在编辑过程中我想到两种解决方案。

方案一:将时分秒当做三个数据进行处理,设置三个数据空间,作为是分秒的数据缓存区,再将缓存区的内容转换成显示数据。

每次延时之后判断“秒”是否应该向“分”进位,“分”是否应该向“时”进位,“时”是否已经超过24.这个过程理论上可以实现,但是逻辑判断较为繁琐。

方案二;将时分秒分成六位,放在显示数据缓存区里,每次一秒延时之后判断是否向高位进一,若还不进一,则跳回最低位,再次进行一秒延时;由于秒和分都是60进制,处理方法一样,而“时”是24进制,应该进行额外处理。

2.3八段数码管动态显示对于8279八段数码管的显示需要入码位和段码,因此采用74LS373作为位码输出端口,8255的A、B、C口作为段码输出口。

通过CPU输出数据进行位码选择,经74LS373输出到位码输入口;设置到六位数据缓存区,经过换码可以取得相应的段码输出到段码输入口,并简单延时,就可以显示了。

8086数字时钟

8086数字时钟

——微机原理课程设计田昊20071901198同组:孟健****:***目录一设计目标: (3)二设计要求: (3)三硬件设计 (3)3.1系统总框图: (3)3.2模块电路设计 (4)四软件设计 (9)4.1 设计思路: (9)4.2 程序流程图 (9)4.3关键程序设计 (10)五调试过程 (12)六心得体会 (12)七致谢 (12)附件 (13)完整原理图: (13)完整程序 (14)一设计目标:设计以8086为控制核心,基于时钟芯片8253的电子时钟。

系统通过晶振获得时钟信号,由8253进行分频计数产生秒中断,通过中断管理芯片8259向控制核心提出中断请求,通过由8255进行管理的LED数码管显示由时间。

二设计要求:1.计时精确2.显示方式清晰。

3.具有时间调整功能。

4.系统稳定可靠。

三硬件设计3.13.2模块电路设计3.2.1 8086最小系统在本系统中,8086工作在最小模式下。

负责对8259,8253等芯片进行工作方式控制和数据处理,对时钟信号进行响应并控制led数码管进行显示。

1.AD7~AD0(双向。

三态)为低8位地址/数据的复用引脚线。

采用分时的多路转换方法来实现对地址线和数据线的复用。

在总线坐骑的T1状态。

这些银线表示为这些银线用作株距总线。

可见对复用信号使用时间来加以划分的。

它要求在T1状态线出现低8位地址时,用地址锁存器加以锁存。

这样在随后的T状态,即使这些线用作数据线,而第8位地址线的地址在个体却被记录保存下来,并送到地址总线上。

在DMA 方式时,这些银线被浮置为高阻状态。

2.A15~A8(输出,三态)为8位地址线。

在读写存储器或外设端口色中个总线周期内,都作为地址线输出高8位地址。

在DMA方式时,这些引线被浮置为高阻。

3.A19/S6~A16/S3(输出。

三态)为地址/状态服用引脚线,在总线周期的T1状态,这些线表示为最高4位的地址线,在总线周期的其他T状态,这些线用作提供状态信息,同样需要地址锁存器对T1状态出现的最高4位地址加以锁存。

(完整版)基于8086的电子时钟设计(汇编语音)

(完整版)基于8086的电子时钟设计(汇编语音)

(完整版)基于8086的电子时钟设计(汇编语音)目录摘要 (1)Abstract (1)第一章电子钟设计总体方案设计 (2)1.1 设计目的 (2)1.2 设计要求 (2)1.3 方案比较 (2)1.3.1 非中断方式与中断方式的比较 (2)1.3.2 LED显示与液晶显的比较 (3)1.4 总体方案设计思路 (3)第二章系统硬件设计 (4)2.1 8255与CPU之间的连接关系 (4)2.2 8253与周边电路的连接关系 (4)2.3 8259与周边电路连接关系 (5)2.4 液晶显示模块与8255之间的连线关系 (5)2.5 地址译码器与按键 (6)2.6 系统总体硬件电路图 (6)第三章系统软件设计 (7)3.1 编址及控制字的确定 (7)3.1.1 编址 (7)3.1.2 控制字 (7)3.2 分块子程序 (7)3.2.1 1602读写操作子程序 (7)3.2.2中断子程序 (9)3.3 主程序设计 (11)总结与致谢: (13)参考文献: (14)附录: (15)摘要本设计以微机原理与接口技术为基础,以8086CPU为核心,利用INTER 8253可编程定时/计数器,通过引入时钟发生器产生标准时钟进行精准定时;经定时器产生中断源,采用可编程中断控制器8259A进行中断扩展,用可屏蔽中断方式进行时间的采集;以可编程并行I/O接口芯片8255A扩展接口,驱动MSC1602液晶模块进行时间显示。

第一章电子钟设计总体方案设计1.1 设计目的电子钟是一种基于微电子技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。

通过该题目的设计和分析,学习微机软、硬件系统设计开发的过程,加深微机原理及其应用课程基础知识的理解和综合运用能力,熟悉集成电路芯片的使用方法,熟悉微机编程及接口电路,学会体会工程实际设计过程,培养学生独立解决实际工程问题的综合能力。

数字钟_接口课设报告_8086微机原理与接口技术课程设计报告书

数字钟_接口课设报告_8086微机原理与接口技术课程设计报告书

接口技术基础实验报告学院:计算机科学与技术学院班级:计091学号:0913022032:恒楼指导老师:顾晖时间:2012/6/16目录数字钟的设计 (3)1 设计需求分析与解决方案 (3)1.1 设计需求分析 (3)1.1.1 题目要求 (3)1.1.2 根据题目要求提出问题 (3)1.2 解决问题方法及思路 (3)1.2.1 硬件设计选择部分 (3)1.2.2 软件设计分析 (4)2 硬件设计 (5)2.1 选择芯片8255 (5)2.1.1 芯片8255 A在本设计中的功能作用 (5)2.1.2 芯片8255 A的功能分析 (5)2.1.3 8255 A 方式控制字 (5)2.1.4 8255 A与外设相连的逻辑图 (6)2.2 选择器件 LED (6)2.2.1 LED在本设计中的作用 (6)2.2.2 LED功能分析 (6)2.2.3 LED技术参数 (7)2.3 硬件设计思路及连线图 (7)2.3.1 硬件设计思路 (7)2.3.2 硬件接线原理图、连接图 (7)3 软件设计思路及程序控制流程框图 (8)3.1 软件设计思路 (8)3.2 程序流程图的相关说明 (9)3.3 程序控制流程框图 (9)3.4 程序清单(见附录) (11)4 实验环境 (11)5 上机调试过程 (11)5.1 硬件调试 (11)5.2 软件调试 (13)5.3 软、硬件联立调试 (13)5.4 调试结果 (13)6 实验运行结果、分析 (15)6.1 实验运行结果与分析 (15)6.2 问题讨论 (15)7 实验心得 (16)8 参考文献 (17)附录(源代码) (17)数字钟的设计一、设计需求分析与解决方案1.1 设计需求分析1.1.1 题目要求设计一个接口与七段LED显示器,显示一个计时时钟,显示初值为0,每隔一秒改变一次显示值,60s为一分钟,60min为一小时,LED显示器循环显示时、分、秒的动态值。

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

INTEL 8086/8088系列微型计算机原理及接口技术课程名称:微型计算机原理及接口技课程设计设计题目:具有年月日时分秒功能的时钟显示院系:电气工程学院班级:设计者:学号:同组者:指导教师:设计时间:目录一、设计内容与要求 (2)二、设计思路 (3)三、流程图 (4)四、程序 (7)五、运行结果 (12)六、硬件设计…………………………………………………………………………………………………七、调试步骤 (13)八、心得体会 (14)九、参考文献 (14)一、设计内容与要求:用汇编语言编写一个时钟程序,在微机屏幕上显示当前时间****年**月**日**时**分**秒。

在程序启动后,微机屏幕上显示当前时间,按下a键开始计时,按下b键停止计时,按下c键退出程序。

二、设计思路:利用BIOS的INT 1AH的2号系统功能调用,将计算机系统的时间参数(BCD 码)送入寄存器。

其中CH 和CL中保存的是小时数和分钟数;DH中保存的是秒钟数。

利用除法命令DIV,若进行字节操作,16位被除数隐含在AX中,8位除数就是源操作数,结果的8位商在AL中,8位余数在AH中,即(AL)(AH)/(SRC)的商(AL)(AH)/(SRC)的余数若进行字操作,32位被除数低16位隐含在AX中,高16位8位隐含在DX中,16位除数就是源操作数,结果的16位商在AX中,16位余数在DX中,即(AX)(DX,AX)/(SRC)的商(DX)(DX,AX)/(SRC)的余数通过以上方法将二进制表示的年月日时分秒转换为BCD码,再将BCD码表示的时,分,秒转换成AS CⅡ码并送入屏幕显示。

能调用子程序,若显示时间与当前时间不符,则校准显示时间,并用INT 21H 的7号功能调用判断输入回车并清屏。

若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示。

详细过程见程序注释。

三、流程图:四、程序:GB MACRO X ;宏定义MOV AX,0200HMOV BX,0000HMOV CX,0000HMOV DX,XINT 10HENDMXIANSHI MACRO Y,Z,WMOV BP,OFFSET YMOV AH,13HMOV AL,0BMOV BX,0EHMOV CX,ZMOV DX,WINT 10HENDMDATA SEGMENTBUFFER1 DB 11 DUP (?)BUFFER2 DB 9 DUP (?)SECOND DB ?SIGN DB ?STR1 DB 'THE CURRENT TIME: $'STR4 DB 'PRESS C TO EXIT:$'DATA ENDSSTACK SEGMENT STACK 'STACK'DB 100 DUP ('S')STACK ENDSCODE SEGMENT PARA 'CODE'ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA STA PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,0600HMOV BX,0754HMOV CX,0000HMOV DX,194FHINT 10HXIANSHI STR1,17,0416H ;显示‘ THE CURRENT TIME:’XIANSHI STR4,16,1016H ;显示‘ PRESS C TO EXIT:’BEGIN: CMP SIGN,3 ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE TUI1MOV AH,2AHINT 21H ;取日期LEA BX,BUFFER1PUSH DX ;保护寄存器MOV AX,CX ;利用除法产生商和余数,把以二进制形式保存的年号转换为BCD码MOV DX,0000H ;年号除以1000得到商即为年号的千位MOV CX,1000DIV CXOR AL,30H ;年号的千位转换为其ASCII码并存入BUFFER1第1存储单元中MOV [BX],ALMOV AX,DX ;年号的百位转换为其ASCII码并存入BUFFER1第2存储单元中MOV CL,64HDIV CLOR AL,30HINC BXMOV [BX],ALMOV AL,AHMOV AH,00H ;年号的十位转换为其ASCII码并存入BUFFER1第3存储单元中MOV CL,10DIV CLOR AL,30HINC BXMOV [BX],ALOR AH,30H ;年号的千位转换为其ASCII码并存入BUFFER1第4存储单元中INC BXMOV [BX],AHPOP DX ;年号转换完毕INC BXMOV CL,2DH ;“—”号的ASCII码存入BUFFER1第5存储单元中MOV [BX],CL ;月数除以10得到商即为月数的十位MOV AL,DH ;月数的十位转换为其ASCII码并存入BUFFER1第6存储单元中CMP AL,10JAE L1JMP L2L1: ADD AL,6L2: PUSH AXAND AL,0F0HSHR AL,1SHR AL,1SHR AL,1SHR AL,1OR AL,30HINC BXMOV [BX],ALPOP AXAND AL,0FHOR AL,30HINC BXMOV [BX],AL ;月数的十位转换为其ASCII码并存入BUFFER1第7存储单元中INC BX ;月数转换完毕MOV CL,2DH ;“—”号的ASCII码存入BUFFER1第8存储单元中 MOV [BX],CL ;日期除以10得到商即为日期的十位MOV AL,DL ;日期的十位转换为其ASCII码并存入BUFFER1第9存储单元中MOV AH,00HMOV CL,10DIV CLOR AL,30HINC BXMOV [BX],AL ;日期的个位转换为其ASCII码并存入BUFFER1第10存储单元中OR AH,30HINC BX ;年月日转换完毕MOV [BX],AHMOV CL,'$' ;“$”号的ASCII码存入BUFFER1第11存储单元中 INC BXJMP NEXTTUI1:JMP TUI2NEXT:MOV [BX],CLXIANSHI BUFFER1,10,0616H ;用9号功能显示年月日MOV AH,2CHINT 21H ;取时间LEA BX,BUFFER2MOV AL,CH ;小时数除以10得到商即为小时数的十位MOV AH,00HMOV CH,10DIV CHOR AL,30H ;小时数的十位转换为其ASCII码并存入BUFFER2第1存储单元中MOV [BX],ALOR AH,30H ;小时数的个位转换为其ASCII码并存入BUFFER2第2存储单元中INC BXMOV [BX],AHINC BXMOV CH,3AH ;“:”号的ASCII码存入BUFFER2第3存储单元中 MOV [BX],CH ;分钟数除以10得到商即为分钟数的十位MOV AL,CLMOV AH,00HMOV CL,10DIV CLOR AL,30H ;分钟数的十位转换为其ASCII码并存入BUFFER2第4存储单元中INC BXMOV [BX],AL ;分钟数的个位转换为其ASCII码并存入BUFFER2第5存储单元中OR AH,30HINC BXMOV [BX],AHINC BXMOV CL,3AH ;“:”号的ASCII码存入BUFFER2第6存储单元中 MOV [BX],CLMOV AL,DH ;秒数除以10得到商即为秒数的十位MOV AH,00HMOV CL,10DIV CLOR AL,30H ;秒数的十位转换为其ASCII码并存入BUFFER2第7存储单元中INC BXMOV [BX],ALOR AH,30H ;秒数的个位转换为其ASCII码并存入BUFFER2第8存储单元中INC BXMOV [BX],AHINC BX ;时分秒转换完毕MOV CL,'$' ;“$”号的ASCII码存入BUFFER2第9存储单元中 MOV [BX],CLXIANSHI BUFFER2,8,0716H ;用9号功能显示时分秒CALL DELY ;调用子程序,若显示时间与当前时间不符,则校准显示时间JMP BEGINTUI2: RETSTA ENDPDELY PROCPUSH CXPUSH DXMOV AH,2CHINT 21HMOV SECOND,DHRE: MOV AH,2CHINT 21HPUSH DXMOV AH,6MOV DL,0FFHINT 21HPOP DXCMP AL,63H ;若输入字符C,则令SIGN=3,即退出程序,若无输入或输入字符不是C,则反复从系统中取出当前时间并显示JE Z3JMP CONTINZ3: MOV SIGN,3CONTIN: CMP SECOND,DHJE RECMP SIGN,1JMP EXITEXIT: POP DXPOP CXRETDELY ENDPCODE ENDSEND STA五、运行结果:程序运行后如下图所示:按下c键,则会出现下图界面:(此时按下任意键即可退出该程序)(注意,若没按下任何键或按下的不是c键,则不会出现下图所示界面)六、硬件设计:1、硬件设计说明:由8284产生系统脉冲送8253的CLK1,通过CPU置计数初值使计数器2输出1KHZ方波。

将此方波送8253的计数器1,置计数初值为1000H,所以每隔1s OUT1就会产生一个高电平输出。

将此输出接8259中IR0~IR7任一端口。

当8259接到一个高电平时,它的INT端口就向CPU发出一个中断请求,CPU如果响应了这个请求,就从它的 INTA 向8259发出两个负脉冲作为应答。

然后CPU调用中断服务程序--时间累计并转换成字符形式输出到8255的A通道端口上,最后显示在显示器上。

2、硬件连线图见坐标纸七、调试步骤:(1)建立汇编语言的工作环境(我采用MASM FOR WINDOWS 集成实验环境)。

(2)用汇编程序建立源程序文件(.ASM)。

(3)用汇编程序(MASM)把源程序(.ASM)汇编成目标文件(.OBJ)。

(4)用连接程序(LINK)把目标文件(.OBJ)转换成可执行文件(.EXE)。

(5)在DOS命令状态下通过直接键入文件名执行该汇编语言或利用DEBUG程序对用户程序进行调试。

八、心得体会:通过这一周的课程设计,我们不但明白了一些在课堂上不懂的问题,而且通过实践的方法深刻的记到了脑海里。

相关文档
最新文档