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

合集下载

电子钟课程设计汇编

电子钟课程设计汇编

电子钟课程设计 汇编一、课程目标知识目标:1. 让学生掌握电子时钟的基本原理和结构,理解汇编语言在电子时钟编程中的应用。

2. 使学生能够运用汇编语言编写基本的电子时钟程序,了解电子时钟程序的执行过程。

3. 帮助学生理解电子时钟中的时间计算方法,掌握时间显示、闹钟设置等功能。

技能目标:1. 培养学生运用汇编语言进行电子时钟编程的能力,提高学生的编程技巧。

2. 培养学生分析问题、解决问题的能力,使学生能够根据实际需求修改和完善电子时钟程序。

3. 提高学生的动手实践能力,通过组装和调试电子时钟,培养学生对硬件的熟练操作。

情感态度价值观目标:1. 培养学生对电子技术的兴趣和爱好,激发学生学习汇编语言的积极性。

2. 培养学生的团队协作精神,使学生在合作完成电子时钟项目中体会到团队的力量。

3. 培养学生的创新意识,鼓励学生敢于尝试,勇于突破,不断提高自身能力。

课程性质:本课程为实践性较强的课程,注重理论与实践相结合,强调学生的动手实践能力。

学生特点:学生具备一定的电子技术基础和汇编语言知识,对电子时钟有一定的了解,但编程能力参差不齐。

教学要求:结合学生特点,以实践为主,循序渐进地引导学生掌握电子时钟的编程和应用。

在教学过程中,注重培养学生的动手实践能力和团队协作精神,提高学生的创新能力。

通过课程学习,使学生在知识、技能和情感态度价值观方面取得具体的学习成果。

二、教学内容本课程教学内容分为以下几个部分:1. 电子时钟原理与结构- 时钟芯片工作原理- 电子时钟的基本结构- 时钟芯片的引脚功能及外围电路2. 汇编语言基础知识- 汇编指令的格式与分类- 寄存器的使用方法- 程序流程控制语句3. 电子时钟编程- 初始化时钟芯片- 读取实时时钟数据- 设置闹钟时间- 时间显示编程4. 硬件电路设计与组装- 设计电子时钟硬件电路- 元器件的选型与焊接- 电子时钟的组装与调试5. 实践项目:电子时钟设计与实现- 项目任务与要求- 分组合作,进行项目设计- 编写汇编程序,实现电子时钟功能- 项目展示与评价教学内容按照以上大纲安排,结合教材相关章节,确保学生能够循序渐进地掌握电子时钟相关知识。

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方波。

汇编语言实时时钟程序设计教材

汇编语言实时时钟程序设计教材
push dx ;置光标位置
xor dl,dl
mov dl,cl
mov dh,cl
mov cl,4
shr dl,cl
add dl,30h ;转化成相应的ASCII码
mov ah,02
int 21h ;光标处显示分的第一位
mov cl,dh
and cl,0fh
add cl,30h ;转化成相应的ASCII码
程序如下:
mov dh,0ah ;行数
mov dl,35 ;列数
mov bh,0 ;页数
mov ah,2
int 10h ;确定光标的位置,使其居在中间
mov cx,2000h
mov ah,01h
int 10h;隐藏光标
3.2
获取系统的时间,用程序将系统的时间调用,使显示的时间和系统的时间同步变化,其中时间的时分秒显示都是需要先转换成相应的ASCII码,再显示在屏幕上。
图1主程序设计流程图
2.2
可知,在时间的获取时,需要时、分、秒分别获取,显示时使用的是相应的ASCII码。加上分隔符“:”,共同组成完整时钟显示,我们对子程序做流程图,如图2所示。
图2子程序流停移动,使时间能不停地显示时间的时分秒,并使其显示界面不消失,并随着系统时间的变化而同步变化,隐藏光标使界面看起来更美观。
1.3
每隔一秒显示系统时钟;可以重复输入,有退出键功能。
第二章
2.1
由方案设计分析可知,此次设计比较简单,先初始化程序,然后设立光标,在光标移动时,不断地取时,取分,取秒,并不断的循环。在循环的过程中,当按下ESC键时退出程序;当按下其它键时,程序继续运行,并显示时间界面,再按下ESC键时,程序又将退出。
int 21h ;光标处显示时的第一位

时钟系统汇编语言程序设计

时钟系统汇编语言程序设计

时钟系统汇编语言程序设计1 总体方案设计1.1设计目的1)进一步建立微机系统的概念,加深对系统的理解和认识,培养学生应用微型计算机解决实际问题的能力;2)进一步学习和掌握汇编语言程序的编写和应用的方法,通过较大规模程序的编写,提高编写汇编语言程序的水平和学习程序调试方法。

3)进一步熟悉微机最小系统的构成及常用接口芯片的使用,提高系统设计的能力。

1.2设计任务与要求课程设计任务:系统时钟汇编语言程序设计设计初始条件:1)采用16位微处理器 8086 CPU以及86系列微型计算机的指令系统;2)软件设计平台为多功能微型计算机实验软件MFS中的微机原理实验集成环境MF2KP。

课程设计要求:1)设计一个计时器界面,形式为:时:分:秒;2)单击”ESC”键退出程序。

根据功能要求绘制程序流程图、编写完整的汇编语言程序并上机调试1.3设计方案本次设计中,要实现时间的显示,并在此基础上附加上一个功能,在时间显示后,单机“ESC”键时,退出显示界面。

在本次设计中,可以加入一个功能,当单击其他键时,显示界面并不退出,即界面不变,没有反应,再单击“ESC”键时,退出显示界面。

在设计时,时钟的实现有很多方法,可以采用DOS系统功能调用语句INT 21h 直接调用系统时间,再在着基础上加上推出的功能;也可以采用延时的方法,设计一个延时器,每隔一秒,计数器加一,采用六十进制。

在此基础上再加上附加功能。

在本次课程设计中,采用调用系统时间的方法,方法比较简单明了,功能实现比较好,能和系统时间跳动保持一致,故选用此种方法。

2 程序流程图设计2.1主流程图设计由方案设计分析可知,此次设计比较简单,先初始化程序,然后设立光标,在光标移动时,不断地取时,取分,取秒,并不断的循环。

在循环的过程中,当按下ESC键时退出程序;当按下其它键时,程序继续运行,并显示时间界面,再按下ESC键时,程序又将退出。

流程图设计:当初始化后,设定一个光标用来显示时间的时、分、秒,并将光标隐藏。

汇编课程设计电子钟

汇编课程设计电子钟

汇编课程设计电子钟一、课程目标知识目标:1. 学生能理解电子钟的基本原理,掌握电子元器件的功能及其在电子钟中的应用。

2. 学生能掌握汇编语言编程的基本方法,运用汇编语言实现电子钟的功能。

3. 学生能了解电子钟的电路原理图,并分析各部分电路的功能。

技能目标:1. 学生能运用所学知识,设计并搭建一个简易的电子钟电路。

2. 学生能通过汇编语言编程,实现对电子钟时、分、秒的显示与控制。

3. 学生能通过实际操作,培养动手能力、问题解决能力和团队协作能力。

情感态度价值观目标:1. 学生对电子技术产生兴趣,提高学习积极性,树立科学探究精神。

2. 学生在课程学习中,培养良好的学习习惯,严谨的科学态度和团队协作精神。

3. 学生通过电子钟的设计与制作,体会科技的魅力,增强创新意识。

课程性质:本课程为实践性课程,注重理论知识与实践操作的相结合,培养学生动手能力、编程能力和创新能力。

学生特点:本课程针对高年级学生,具备一定的电子技术基础和编程能力,具有较强的学习兴趣和探究精神。

教学要求:教师应注重理论与实践相结合,引导学生主动参与,培养学生解决问题的能力和团队协作精神。

通过课程学习,使学生能够达到上述课程目标,实现具体的学习成果。

二、教学内容本课程教学内容主要包括以下三个方面:1. 电子钟原理与电路设计- 了解电子钟的基本原理,分析电子钟的电路组成和功能。

- 学习电子元器件的选用与应用,掌握简易电子钟电路的设计方法。

2. 汇编语言编程- 学习汇编语言的基本语法和编程技巧,掌握汇编程序的基本结构。

- 通过实例分析,学习如何使用汇编语言实现对电子钟时、分、秒的控制与显示。

教学大纲安排:- 第一周:电子钟原理与电路设计- 第二周:汇编语言基础知识- 第三周:汇编语言编程实例分析3. 实践操作与项目制作- 学生分组进行实际操作,设计并搭建简易电子钟电路。

- 编写汇编程序,实现对电子钟时、分、秒的显示与控制。

- 期末进行项目展示和评价,检验学习成果。

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。

汇编语言实现的电子时钟的设计

汇编语言实现的电子时钟的设计

目录第1章、概述1.1 设计目的 (1)设计要求 (1)第2章、系统总体方案设计2.1 设计方案 (2)2.2 硬件设计 (2)2.3 电子时钟程序流程图 (5)第3章、方案实施3.1 单片机简介 (6)3.2 动态LCD液晶显示器显示 (7)3.3 软件调试及调试方法 (8)第4章、总结 (10)附录、源代码及电路原理图 (14)第1章概述、设计目的1熟悉整个项目的流程即单片机系统设计过程2 学会使用各种仿真软件3熟练的使用汇编语言编写小的应用程序4 掌握系统的调试与安装5提高学生的自学能力和动手能力、设计要求1、主电路系统由秒信号发生器、“时、分、秒”计数器、显示器、校时电路组成。

2、秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。

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

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

“时计数器”采用24进制计时器,可实现对一天24小时的累计3、软件程序通过单片机将“时”、“分”、“秒”计数器的输出状态通过液晶显示器显示出来。

4、整点报时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现报时5、校时电路时用来对“时”、“分”、“秒”显示数字进行校对调整的。

第2章、系统总体方案设计2.1设计方案1)方案讨论和设计:倒计时数字秒表的设计主要考虑以下几个问题:一,LCD液晶显示器如何显示数字0—9;二,如何用单片机来控制LCD的显示;三,单片机最小模式下的设计。

处理好这些问题此设计才能完整,为此必须先了解LCD的显示原理和接线方法,再了解单片机的组成原理和控制方法。

硬件电路的绘制和软件程序的编写是此次设计的关键和基础,只有硬件电路的设计是正确的、合理的,软件设计才可以根据硬件电路编程,以下的设计才能够进行。

8086数字电子钟的设计论文

8086数字电子钟的设计论文

摘要:以8086或是8066为cpu, 利用8253可编程定时/计数器、8259中断控制器、8255可编程并行接口芯片和七段数码管设计一个电子钟的电路,并编制一段程序使的该电子钟能正常运行。

并且能用手动控制输入的方法修改电子时钟的时间。

主要目的是通过此次课程设计是我们对一般的电子产品的设计有所了解,并在此的基础上更加深入、熟练地学习8086、8253、8259等芯片的基本知识。

关键词:数字电子钟、8086、8253、8255、中断。

目录一、设计任务书 (2)二、摘要 (3)三、目录 (4)四、设计目的 (5)五、实验连线 (5)六、设计思想 (6)七、功能流程图 (7)八、汇编程序 (8)九、心得体会 (22)一、设计目的:(1)熟悉掌握8086/88指令系统。

(2)理解掌握定时/计数器和中断的使用方法。

(3)掌握微机原理实验系统的使用,掌握控制数码管显示的程序。

(4)掌握一定的汇编语言知识,培养自己的动手操作能力。

(5)学习程序设计的基本思路和方法。

二、实验连线三、设计思想1、概述:程序主体设计:本程序共有分端口设置模块,计数模块,显示模块等几个模块。

C--DISPLAY 12, 34, 56 ----将闹钟设置为12:34: 56;G--GO AHEAD----开中断,闹钟恢复走时D--STOP TO DISPLAY-----关中断,闹钟停止走时E--EXIT TO DOS----返回DOSM--SET THE CLOCK -----设置闹铃时间F--OPEN THE CLOCK-----设置闹钟功能为开B--CLOSE THE CLOCK-----设置闹钟功能为关P--POSITION THE BENINNING DATE------设置闹钟的时间2、计时器软件的设计:①主程序中,要对各个用到的芯片进行初始化,目的是使其每20毫秒产生一次方波。

8253A的定时器输出与8259A的IR2连接,计数器0工作在模式3(方波发生器),计数值采用二进制格式,输出作为计数器1的输入, 计数器1工作在模式2(分频器),计数值采用二进制格式,输出到总线IRQ2,向CPU发送时钟中断信号,根据两个计数器的设置,系统每隔20毫秒便由8253A产生一次中断请求,即每隔20毫秒执行一次中断处理程序。

电子钟汇编课程设计

电子钟汇编课程设计

电子钟汇编课程设计一、课程目标知识目标:1. 学生能理解电子钟的基本工作原理,掌握汇编语言编程的基本语法;2. 学生能运用汇编语言设计简单的电子时钟程序,实现时、分、秒的正常显示和更新;3. 学生了解并能解释电子钟程序中关键汇编指令的作用及其执行过程。

技能目标:1. 学生掌握汇编语言编程的基本步骤,具备编写、调试简单电子钟程序的能力;2. 学生能够运用所学知识解决实际电子钟编程中遇到的问题,提高问题解决能力;3. 学生通过课程实践,提高动手操作能力,培养团队协作意识。

情感态度价值观目标:1. 学生培养对电子技术和编程的兴趣,激发探索精神,增强创新意识;2. 学生在学习过程中,培养良好的编程习惯,遵循代码规范,提高自我约束能力;3. 学生通过课程学习,认识到编程在现实生活中的应用价值,树立正确的价值观。

课程性质:本课程为实践性较强的电子技术课程,旨在让学生通过动手实践,掌握汇编语言编程技能,培养解决实际问题的能力。

学生特点:学生具备一定的电子技术基础知识,对编程有一定了解,但可能缺乏实际编程经验。

教学要求:教师应注重理论与实践相结合,引导学生主动参与实践,培养学生动手能力和创新精神。

同时,关注学生的个体差异,因材施教,确保课程目标的实现。

通过分解课程目标为具体学习成果,为后续教学设计和评估提供依据。

二、教学内容本课程教学内容主要包括以下几部分:1. 电子钟基本原理:介绍电子钟的组成、工作原理,特别是时钟芯片的应用和时序控制。

2. 汇编语言基础知识:回顾汇编语言的基本语法、指令系统,重点讲解与电子钟编程相关的重要指令。

3. 电子钟程序设计:详细讲解电子钟程序的编写步骤,包括初始化设置、时序控制、显示更新等。

4. 实践操作:指导学生动手编写、调试电子钟程序,学会使用开发工具和调试技巧。

5. 程序优化与调试:分析程序中可能出现的错误和问题,引导学生进行程序优化,提高电子钟的稳定性和可靠性。

教学内容安排如下:第一周:电子钟基本原理学习,了解时钟芯片的使用。

8086数字时钟课程设计报告

8086数字时钟课程设计报告

8086数字时钟课程设计报告INTEL 8086/8088系列微型计算机原理及接⼝技术课程名称:微型计算机原理及接⼝技课程设计设计题⽬:具有年⽉⽇时分秒功能的时钟显⽰院系:电⽓⼯程学院班级:2007级5班设计者:⽩艳学号:20071901002同组者:夏红燕指导教师:刘志珍设计时间:2009.12.28——2010.01.3⽬录⼀、设计内容与要求 (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,则反复从系统中取出当前时间并显⽰。

汇编语言 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. 学习8051定时器时间计时处理、按键扫描及LED数码管显⽰的设计⽅法。

2. 设计任务及要求利⽤实验平台上4个LED数码管,设计带有闹铃功能的数字时钟⼆,实验要求A.基本要求:1. 在4位数码管上显⽰当前时间。

显⽰格式“时时分分”2. 由LED闪动做秒显⽰。

3. 利⽤按键可对时间及闹玲进⾏设置,并可显⽰闹玲时间。

当闹玲时间到蜂鸣器发出声响,按停⽌键使可使闹玲声停⽌。

4.实现秒表功能(百分之⼀秒显⽰)B.扩展部分:1.⽇历功能(能对年,⽉,⽇,星期进⾏显⽰,分辨平年,闰年以及各⽉天数,并调整)2.⾳乐闹铃(铃⾳可选择,闹铃被停⽌后,闪烁显⽰当前时刻8秒后,或按键跳⼊正常时间显⽰状态)3.定时功能(设定⼀段时间长度,定时到后,闪烁提⽰)4.倒计时功能(设定⼀段时间长度,能实现倒计时显⽰,时间长减到0时,闪烁提⽰)5.闹铃重响功能(闹铃被停⽌后,以停⽌时刻开始,⼀段时间后闹铃重响,且重响时间的间隔可调)三,实验基本原理利⽤单⽚机定时器完成计时功能,定时器0计时中断程序每隔0.01s中断⼀次并当作⼀个计数,设定定时1秒的中断计数初值为100,每中断⼀次中断计数初值减1,当减到0时,则表⽰1s到了,秒变量加1,同理再判断是否1min钟到了,再判断是否1h到了。

为了将时间在LED数码管上显⽰,可采⽤静态显⽰法和动态显⽰法,由于静态显⽰法需要译码器,数据锁存器等较多硬件,可采⽤动态显⽰法实现LED显⽰,通过对每位数码管的依次扫描,使对应数码管亮,同时向该数码管送对应的字码,使其显⽰数字。

由于数码管扫描周期很短,由于⼈眼的视觉暂留效应,使数码管看起来总是亮的,从⽽实现了各种显⽰。

四,实验设计分析针对要实现的功能,采⽤AT89S51单⽚机进⾏设计,AT89S51 单⽚机是⼀款低功耗,⾼性能CMOS8位单⽚机,⽚内含4KB 在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采⽤⾼密度、⾮易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构。

课程设计_8086电子时钟设计资料

课程设计_8086电子时钟设计资料

计算机原理课程设计报告题目基于8086CPU的电子时钟的设计学院电子信息工程学院专业电气工程及其自动化学生姓名庞长春学号201010316117 年级10级1班指导教师徐嘉莉职称副教授2012 年6月28日摘要《微机接口技术》是一门应用性、综合性、实践性较强的课程,通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。

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

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

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

关键字:原理、芯片、流程图、程序目录第一章绪论1.1电子时钟背景介绍 (4)1.2电子时钟功能介绍------------------------------------------------ 4 1.3 课程设计的目的及要求 (4)第二章电子时钟的工作原理------------------------------------------------ 52.1实现时钟计时的基本方法------------------------------------------- 52.2电子钟的时间显示------------------------------------------------- 5 2.3电子时钟启、停及时间调整 (5)第三章硬件设计3.1硬件设计电路图--------------------------------------------------- 6 3.1.1 主电路模块 (6)3.1.2 LED显示模块------------------------------------------------ 63.1.3按键模块---------------------------------------------------- 73.2硬件设计所用芯片介绍--------------------------------------------- 73.2.1 8253芯片的内部结构及引脚----------------------------------- 93.2.2 8279芯片的内部结构及引脚---------------------------------- 10 3.2.3 8259芯片的内部结构及引脚 (12)第四章软件设计--------------------------------------------------------- 134.1 电子时钟部分程序流程框图---------------------------------------- 134.1.1主程序流程框图-------------------------------------------- 144.1.2 键扫程序流程框图------------------------------------------ 154.1.3 中断处理程序流程框图-------------------------------------- 16 4.2 电子时钟总体程序 (16)第五章总结与体会------------------------------------------------------- 17参考文献 (18)附录 (19)第1章绪论1.1 电子时钟背景介绍电子钟亦称数显钟(数字显示钟),是一种用数字电路技术实现时、分、秒计时的装置,与机械时钟相比,直观性为其主要显著特点,且因非机械驱动,具有更长的使用寿命,相较石英钟的石英机芯驱动,更具准确性。

基于单片机C语言电子时钟完整版(闹钟,整点报时)

基于单片机C语言电子时钟完整版(闹钟,整点报时)

《单片机技术》课程设计说明书数字电子钟系、部:电气与信息工程学院学生姓名:指导教师:职称专业:班级:完成时间:2013-06-07摘要电子钟在生活中应用非常广泛,而一种简单方便的数字电子钟则更能受到人们的欢迎。

所以设计一个简易数字电子钟很有必要。

本电子钟采用ATMEL公司的AT89S52单片机为核心,使用12MHz 晶振与单片机AT89S52 相连接,通过软件编程的方法实现以24小时为一个周期,同时8位7段LED数码管(两个四位一体数码管)显示小时、分钟和秒的要求,并在计时过程中具有定时功能,当时间到达提前定好的时间进行蜂鸣报时。

该电子钟设有四个按键KEY1、KEY2、KEY3、KEY4和KEU5键,进行相应的操作就可实现校时、定时、复位功能。

具有时间显示、整点报时、校正等功能。

走时准确、显示直观、运行稳定等优点。

具有极高的推广应用价值。

关键词电子钟;AT89S52;硬件设计;软件设计ABSTRACTClock is widely used in life, and a simple digital clock is more welcomed by people. So to design a simple digital electronic clock is necessary.The system use a single chip AT89S52 of ATMEL’s as its core to control The crystal oscillator clock,using of E-12MHZ is connected with the microcontroller AT89S52, through the software programming method to achieve a 24-hour cycle, and eight 7-segment LED digital tube (two four in one digital tube) displays hours, minutes and seconds requirements, and in the time course of a timing function, when the time arrived ahead of scheduled time to buzz a good timekeeping. The clock has four buttons KEY1, KEY2, KEY3,KEY4 and KEY5 key, and make the appropriate action can be achieved when the school, timing, reset. With a time display, alarm clock settings, timer function, corrective action. Accurate travel time, display and intuitive, precision, stability, and so on. With a high application value.Key words Electronic clock;;AT89S52;Hardware Design;Software Design目录1设计课题任务、功能要求说明及方案介绍 (1)1.1设计课题任务 (1)1.2功能要求说明 (1)1.3设计总体方案介绍及原理说明 (1)2设计课题硬件系统的设计 (2)2.1设计课题硬件系统各模块功能简要介绍 (2)2.2设计课题电路原理图、PCB图、元器件布局图 (2)2.3设计课题元器件清单 (5)3设计课题软件系统的设计 (6)3.1设计课题使用单片机资源的情况 (6)3.2设计课题软件系统各模块功能简要介绍 (6)3.3设计课题软件系统程序流程框图 (6)3.4设计课题软件系统程序清单 (10)4设计结论、仿真结果、误差分析、教学建议 (21)4.1设计课题的设计结论及使用说明 (21)4.2设计课题的仿真结果 (21)4.3设计课题的误差分析 (22)4.4设计体会 (22)4.5教学建议 (22)结束语 (23)参考文献 (24)致谢 (25)附录 (26)1 设计课题任务、功能要求说明及方案介绍1.1 设计课题任务设计一个具有特定功能的电子钟。

(完整版)基于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的电子钟表和显示星期的设计与仿真

基于8086的电子钟表和显示星期的设计与仿真
鲁鹏
【期刊名称】《福建电脑》
【年(卷),期】2017(033)002
【摘要】本文设计基于INTEL微处理器8086芯片以及8255A芯片、8253芯片和数码管等辅助硬件电路,利用EMU8086程序编译软件编写程序,设计24小时时间显示方式,具有时钟与星期交替显示,调整时钟与星期,电压不足报警等功能的电子钟表系统.利用Proteus软件进行电路的仿真来验证了设计的可行性.
【总页数】2页(P120-121)
【作者】鲁鹏
【作者单位】长安大学电子与控制工程学院陕西西安 710021
【正文语种】中文
【相关文献】
1.Intel8086CPU在机载电子综合显示系统中的应用 [J], 周国英;苏文华
2.基于8086微机接口电路的信号检测与显示系统设计 [J], 戴星原
3.基于Proteus和emu8086的交通灯设计与仿真 [J], 刘思思
4.基于Proteus和8086的花样流水灯电路设计与仿真 [J], 李丽
5.基于8086的点阵式交通信号控制器的设计与仿真 [J], 张永志
因版权原因,仅展示原文概要,查看原文内容请购买。

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

目录摘要 (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 设计目的电子钟是一种基于微电子技术实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。

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

初步得到用汇编语言书写程序的训练,全面培养程序设计的分析、设计、编测试及文档规范书写的能力,得到运用汇编语言的综合训练,提高解决实际问题的能力。

1.2 设计任务通过该题目的设计过程,可以初步掌握汇编语言的运用、软件开发方法并提高解决实际问题的综合能力。

电子时钟实际是一个多重的定时技术系统。

对于秒、分技术系统,逢60进1,即当秒计数到60时,秒计数器向分计数器输入一个计数脉冲;而当分计数器计数到60时,向小时计数器输入一个计数脉冲。

当小时计数器逢24进1.把秒计数器、分计数器和小时计数器的内容通过七段数码管或其他芯片显示出来,就完成了时间信息的输出。

本课程设计要求利用8086系统模拟电子时钟结构,完成以下设计任务:1、时间初值输入:利用键盘输入时间初值;2、电子钟计数:电子钟通过计数器自动计数,实现时间的自动更新;3、时间显示:可选用LED七段数码管输出时间,显示给用户;4、程序采用汇编语言在PC机上完成;5、完成复核学习要求的设计计算说明书。

1.3 设计要求1、利用Intel 8086 CPU 及其相应的外围扩展电路及其接口电路,设计系统硬件原理图,并绘制于2号工程图纸。

2、给出程序的设计思路,设计系统软件流程框图,并绘制于2号工程图纸。

3、完成设计计算说明书。

1.3 方案比较为实现设计要求,在8086微机系统中实现计时功能可有多种方式,同时实现显示的方式也有多种,现主要比较计时方式中的中断与非中断方式,及显示常用的LED 显示与液晶显示。

1.3.1 非中断方式与中断方式的比较在非中断方式设计常使用的方式为查询法,查询法的设计,可将定时/计数器8253的OUT引脚接至并行I/O扩展芯片8255的PA,PB,PC的任一口上,CPU通过不断的检测该引脚上的高低电平变化,来进行计数。

该方式的优点:实现思路相对简单;由于不要引入中断则可不用中断扩展芯片8259电路相对简单;该方式的缺点:由于CPU要不断的去检测单一引脚高低电平的变化,占用的时间比较长,利用率较低;与此同时,CPU要进行数据的运算与控制数据的传输,如果二者冲突,可能会发生计时不准的现象。

中断方式的设计思路,将定时/计数器8253的OUT脚接至中断扩展芯片8259的IR引脚上,定时器产生相同频率的计数脉冲,形成中断源。

8259再通过INTR引脚向CPU发出中断请求信号,CPU通过中断检测进行计数/计时。

该方式的主要缺点:由于芯片8259的引进,使电路相对复杂;该方式的主要优点是:用中断的方式可以大大提高CPU的利用效率,同时可以在该系统上进行更多功能的扩展,同时用中断的方式进行计数/计时,计时更加的准确可靠。

基于以上的考虑本设计,采用电路稍微复杂,但可靠性强,利用效率高的中断方式。

1.3.2 LED显示与液晶显的比较为完成本设计的要求,若采用LED则需6块以上,可以采用二片8255来驱动动这六片LED进行静态显示。

也可以采用动态扫描的方式,用一片8255加锁存器(如74LS573)来进行动态显示。

若采用液晶显示,则只需用一片8255芯片进行接口的扩展(具体扩展方案将在下面进行介绍),可以得到较为满意的显示效果,但操作的技巧性要求相对较高,成本相对较高。

不论从硬件电路驱动的复杂性,还是从软件设计的简洁性及整个系统的外观来看,时尚的液晶显示更能满足系统的需求。

鉴于以上考虑,本次设计采用操作要求相对较高的液晶进行数码显示。

1.4 总体方案设计思路本方按主要设计思路如右下图所示:以8086CPU最小系统为核心,控制可编程定时/计数器INTER 8253,可编程中断控制器8259A,可编程并行I/O接口芯片8255A。

通过8253的输出记数脉冲为8259产生中断源,8259将中断信号反馈到CPU,从而产生可屏蔽中断的申请信号,在CPU 的合理响应下进行计数,通过8255驱动16*2的液晶显示模块LCM1602进行时间显示。

第二章系统硬件设计在本章中,将分模块对本次设计的硬件设计进行简述,分块介绍系统的主要功能及连线方式。

2.1 8255与CPU之间的连接关系通过CPU与8255的读写控制线对接,有效的控制接口芯片的输入输出状态,用第11和12根地址线再加上2-4译码器的的Y0脚接8255片选,为8255的A,B,C及控制口分配了可靠的地址。

将8086的低八位数据线与8255数据端对接,为8255的输入输出提供数据。

由于为芯片提供的都是偶地址,系统默认访问低八位的数据线。

具体连线图见右图:2.2 8253与周边电路的连接关系在系统中定时/计数芯片8253主要与CPU及中断扩展芯片8259之间存在着连接关系。

同8255,8253的读写控制线与CPU的读写控制线对接,正确控制CPU对8253的读写控制(本次设计只用到了CPU往8253中写入数据,没用到读出状态的功能),第2和3位数据/地址复用线加上译码器的Y1端为8253的定时器0,1,2及控制口确定了可靠的地址(仅用到T0及控制地址),CPU低八位数据线为控制8253提供数据。

通过CLK0端引入时钟发生器所产生的标准时钟(本设计采用10KHZ的外部时钟),将OUT0接至8259的IR0引脚上,作为中断源。

具体电路如上示:2.3 8259与周边电路连接关系为了对8259进行合理分配奇、偶地址,从CPU引入了第A13作为地址线,再加上译码器的Y2端作为片选信号,8259获得了两个可靠的地址。

同8255与8253相似8086同样靠低八位的数据线,与8259进行数据交换。

IR0为8253的计数输出端,8259通过检测IR一组引脚的输入情况,经过中断判优以后,对当前优先级最高的中断进行响应,同时向CPU发送INTR信号请求中断,在可屏蔽中断允许的情况下CPU对其进行响应,返回INTA非的信号,8259此时发出当中断的中断类型号给8086。

程序跳到中断子程序的入口地址处去执行中断操作。

具体电路连线如右图所示:2.4 液晶显示模块与8255之间的连线关系液晶显示模块1602的数据线接在8255的A口上,通过对A口进行读写操作,为显示模块提供控制指令及显示数据。

8255的PC0和PC1分别接1602的RS(指令/数据控制脚)和EN(使能脚)上,控制指令/数据的输入。

其它引脚按典型接法接线,要说明的是,本次对1602只进行了写的操作,故将读写控制脚接低电平。

通过延时的方式来解决1602读写操作忙的问题(具体时序见第三章系统软件设计)。

连线图如右示:2.5 地址译码器与按键在本次设计中,由于有多片芯片要进行地址编码,使用了一片2-4译码器74LS139 进行译码,使地址编码更加的方便。

使用的CPU地址端口为第9和10号地址线,输出的Y0,Y1,Y2分别接8255,8253,8259。

由于设计要求,在本设计中进行了按键设计,其电路简单,当K未按下时输出为高电平,当K按下时输入给8255PB0口一个低电平,系统通过检测这一引脚是否为低电平来判断系统是否开始从当前时间开始计时。

具体设计电路图见2.6总体硬件电路图。

2.6 系统总体硬件电路图第三章系统软件设计3.1 编址及控制字的确定3.1.1 编址按照第二章硬件设计电路中,CPU对8253,8255,8259进行的地址分配地址(仅为在编程过程过要使用的地址进行编制),本设计所用编址无用位均置0;8253 定时器0的地址:0200H;控制口:020CH8255 A口地址:0;B口地址:0800H;C口地址:1000H;控制口:1800H 8259 奇地址:2400H;3.1.2 控制字根据系统的需要,合理选择各芯片的工作方式。

8253:选取定时器0,采用先写高八拉后写低八的初值写入方式,工作方式3—方波发生器,采取二进制的方式输入初值,从而CW=00110110B=36H 8255:分别选取A,C口为输出端口,B口为输入端口均采用工作方式0—简单的输入/输出方式,故工作方式控制字为;10000010B=82H;同时要对PC0和PC1进行复位和置位操作,其复位/置位控制字分别为:PCO复位/置位控制字为:0/01H;PC1口的置位/复位控制字:02H/03H8259:本设计中只有一片8259无从片,故无须写入ICW3,不需要写ICW4采用上升沿触发的方式可得:ICW1=00010010H=12H;使用60H号中断故ICW2=60H 3.2 分块子程序3.2.1 1602读写操作子程序如右图所示,为1602液晶显示的写时序图:1602的写操作通过不同的时序进行控制,可分为写指令操作(子程序WRITE-COM)和写数据(子程序WRITE-DATA)。

写指令的时序为,先拉低RS小延时(约0.5ms)后将EN拉低,小延时后拉高电平输入指令到液晶,然后拉低EN;写数据的操作时序与之基本类似,只是先拉低指令/数据控制信号RS,然后拉低EN。

相关文档
最新文档