当前位置:文档之家› 汇编实训报告电子时钟

汇编实训报告电子时钟

课程设计报告课程名称微机原理与接口技术系别:工程技术系专业班级:计算机科学与技术****学号: **********姓名: *******课程题目:电子钟的设计与制作完成日期: **********指导老师: *****20**年 ** 月 * * 日课程设计目的通过本次课程设计要掌握此三种芯片使用的方法,灵活运用课本知识,加深所学的知识,对所学的相关芯片的原理、内部结构、使用方法等有更加深刻的了解,学会利用课本知识联系实际应用及编程。

同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。

1、理解掌握定时/计数器和中断的使用方法2、掌握微机常用的输入输出方式及接口技术3、掌握一定的汇编语言知识,培养自己的动手操作能力4、学习程序设计的基本思路和方法课程设计要求利用8254可编程定时\计数器、8259中断控制器、8255可编程并行接口芯片和七段数码管设计一个电子时钟,并编制一程序使得电子时钟能正常运行。

1、走时准确2、显示无误课程设计注意事项1、在接线时要先关掉实验箱的电源。

2、在换芯片时要小心不要把管脚弄断及注意方向。

3、认真看图接线。

4、注意保存资料,保持干净的实验环境。

- 2 -课程设计内容利用微机原理实验箱的发光数码管显示单元,把时间换显示在LED 数码管上1、定义显示界面。

2、调用系统时间,并将调用的用二进制表示的时间数转换成ASCII码,并将时间数存入内存区3、将存在系统内存区的时间数用显示字符串的形式显示出来4、获取键盘的按键值,以ESC键退出系统系统返回DOS课程设计简要操作步骤电子时钟的总体设计原理是:首先利用定时、延时程序在将给定的时间逐渐变为零时就会发出一个信号‘执行时间显示程序’执行此程序后8255就会工作‘把接到的二进制时间码转换成ASCII码在六个数码管上显示时间。

具体做法是在数据段开辟一显示缓冲区,用来存储系统时间调用延时,返回系统时间,并将返回的二进制时间转换成ASCII码,方便时间显示时调用。

分别将分钟数、秒数存入显示缓冲区,调用字符串显示功能将时间显示出来。

1、画出主程序流程图。

2、在实验箱把硬件连接起来。

3、编写程序。

4、调试程序。

5、写报告。

6、整理实验设备。

- 3 -课程设计心得体会通过本次课程设计,我对利用微机原理课程所学的知识设计电子时钟的基本过程的设计方法、步骤、思路、有一定的了解与认识。

它相当于实际工业设计的模拟。

在课程设计过程中,我先是收集、调查有关资料,然后进入草案阶段,其间与老师、同学进行几次方案的讨论、修改,再讨论、再修改,最后定案,得出了总体方案设计。

设计方案确定后,在老师指导下进行扩初详细设计,并分别设计了相应的模块;将这些模块组合起来,便形成了一个完整的电子时钟的设计。

经过这次成功的设计,我更加深刻的理解了微机原理的相关知识。

对一些常用芯片有了更深一步的认识,如8255、8254等,并且能够很好的使用它们。

应该说,这次课程设计基本达到了目的。

课程设计评语及成绩评语成绩指导教师(签名)2011年12月日- 4 -电子时钟的设计与制作中文摘要微机控制即微型计算机原理控制。

是集CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。

它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。

微型计算机原理控制应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡,电子宠物等,这些都离不开微型计算机原理控制。

我们组本次设计的题目是简单电子钟程序设计,用到了定时芯片8254,中断控制器8259和可编程并行芯片8255。

在编辑1毫秒定时程序时,用到了中断控制器8259。

此程序主要由四部分组成:第一部分为最主要的部分定义显示界面;第二部分为利用延时程序,并将调用的二进制表示的时间数转换成AS CII码,并将时间数存入内存区;第三部分将存在系统内存区的时间数用七段数码管显示出来;第四部分利用循环程序分别对秒个位、秒十位、分个位、分十位与相应的规定值进行比较,结合延时程序来实现电子钟数字的跳变,从而形成走时准确的电子钟。

该程序实现了准确显示秒和分,读数准确,走时精准。

此电子钟能准确的从0分0秒走时到59分59秒,然后能自动回复到0分0秒循环走时。

关键词:可编程并行芯片8255 定时芯片8254 中断控制器8259七段数码显示管延时计数比较定时中断- 5 -目录一、课程设计要求 (7)二、设计环境与器材 (7)三、设计思路 (7)四、设计所用芯片结构 (8)1、8259A芯片的内部结构及引脚 (8)2、8254芯片的内部结构及引脚 (8)3、8255芯片的内部结构及引脚 (9)五、具体模块设计 (10)1、主控模块 (10)2、定时模块 (11)3、中断处理模块 (11)4、小键盘模块 (11)5、硬件连接图 (12)六、程序流程图 (13)主程序流程图 (13)中断处理程序流程图 (13)七、结果分析及心得体会 (14)八、致谢 (15)附录一:参考书目 (15)附录二:部分源代码 (16)- 6 -一、课程设计要求利用试验平台提供的硬件资源设计一个电子表。

该电子表以时、分、秒的形式实时显示当前时间,且具有校表功能,利用小键盘与标准时间校准。

掌握8255、8259、8253芯片使用方法和编程方法,通过本次课程设计,学以致用,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,系统中采用8088微处理器完成了电子钟的小系统的独立设计。

同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。

二、设计环境与器材1、PC微机一台用于对程序的编译测试等,同时还需要对实验设备进行控制,提供整个程序的运行平台,并且收集和释放硬件信号,实现程序功能。

2、微机原理实验箱一台此设备必须能提供8254、8255、8259和数码管等必要芯片。

并且能通过接受PC机传来的信息,显示出相应的功能。

以支持电子时钟的实现。

3、导线若干条用于电路和芯片之间的连接。

三、设计思路电子时钟的总体设计原理是:首先利用定时芯片8254的定时作用定时计数,在给定的时间内逐渐变为0时,就会发出一个中断信号,8259中断器接到此中断信号就会调用MIR7时间显示程序,执行此程序后8255就会工作,把接到的二进制时间码转换成ASCII码在四个码管上显示时间。

具体做法是为了实现精确走时,显示分秒。

我们先在数据段开辟一显示缓冲区,用来存储系统时间,初始化我们所要应用的芯片8254,8255,8259后,允许中断信号输入,主程序开始。

为了显示分秒,并被我们识别,先调用DIS程序,实现片选的功能。

为了得到良好的显示效果,本程序调用了一段精确的延时程序没,使各位在时间显示上有短暂的间隔,延时程序要尽量接近1秒,但又不能超过一秒。

为了实现会跳动的电子时钟,我们调用了子程序clear的清屏功能,不断以刷新的方式来获取时间,形成会跳动的电子时钟。

同时,由于8254定时器的分频功能,产生中断信号,8259中断器就会调用MIR7时间显示程序,实现位选,最后通过LED数码管显示出来,时间刷新,再显示,如此循环,就形成了精确走时的电子时钟。

- 7 -- 8 -四、设计所用芯片结构1、 8259A 芯片介绍中断控制器8259A 是专门为控制优先级中断而设计开发的芯片。

它将中断源优先排队、辨别中断源以及提供中断矢量的电路集于一片中。

因此无需附加任何电路,只需对8259A 进 行编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。

同时,在不需要增加其他电路的情况下,通过多片8259A 的级连,能构成多达64级的矢量中断系统。

8259A 的主要功能如下:①一片8259A 可以接受并管理8级可屏蔽中断 请求,通过9片8259A 级联可扩展至64级可屏蔽中断优先控制。

②对每一级中断都可以通过程序来屏蔽或允许③在中断响应周期,8259A 可为CPU 提供相应的中断类型码。

④具有多种工作方式,并可通过编程来加以选择。

通过初始化编程向8259A 写入相应的初始化命令ICW ,可以使芯片处于一个规定的基本工作方式,并在此方式下 进行工作。

8259A 的初始化命令字共有4个ICW1-ICW4,进行初始化时要求ICW1-ICW4按一定的顺序写入。

2、8254芯片的内部结构及引脚8254可编程定时/计数器是Intel 公司生产的通用外围芯片之一,有3个独立的十六位计数器,技术频率范围为0~2MHZ ,它所有的技术方式和操作方式都通过编程控制。

8254的功能用途是: (1) 延时中断 (2) 可编程频率发生器 (3)事件计数器图18259芯片(4)二进倍频器(5)实时时钟(6)数字单稳(7)复杂的电机控制器8254有六种工作方式:(1)方式0:计数结束中断(2)方式1:可编程频率发生器(3)方式2:频率发生器(4)方式3:方波频率发生器(5)方式4:软件触发的选通信号(6)方式5:硬件触发的选通信号8254引脚图如图2示,各引脚功能如下。

D7~D0——八条双向数据线;WR(低电平有效)——写输入信号;RD(低电平有效)——读输入信号;CS(低电平有效)——片选输入信号;A0、A1——片内寄存器地址输入信号;CLK——计数输入,用于输入定时基准脉冲或计数脉冲;OUT——输出信号,以相应的电平指示计数的完成,或输出脉冲波形;GATE——选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。

8254端口地址信号线寄存器编址IOY20#计数器40H1#计数器41H2#计数器42H控制寄存器43H表3.3 8254端口地址表图28254芯片- 9 -- 10 -图3 8255芯片3、 8255芯片介绍8255特性:(1)一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.(2)具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口 (高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I /O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定.8255引脚功能:RESET:复位输入线CS:芯片选择信号线RD:读信号线WR:写入信号D0~D7:三态双向数据总线PA0~PA7:端口A输入输出线PB0~PB7:端口B输入输出线PC0~PC7:端口C输入输出线A0,A1:地址选择线五、具体模块设计1、主控模块主控模块是系的核心模块,对8254进行初始化,设置中断向量,扫描键盘根据按键值作相应的处理。

相关主题