微机原理及应用课程设计电子钟设计本科论文.docx
- 文档编号:2094563
- 上传时间:2022-10-26
- 格式:DOCX
- 页数:21
- 大小:175.91KB
微机原理及应用课程设计电子钟设计本科论文.docx
《微机原理及应用课程设计电子钟设计本科论文.docx》由会员分享,可在线阅读,更多相关《微机原理及应用课程设计电子钟设计本科论文.docx(21页珍藏版)》请在冰豆网上搜索。
微机原理及应用课程设计电子钟设计本科论文
南京工程学院
通信工程学院
课程设计说明书(论文)
题目电子钟设计
课程名称微机原理与接口技术课程设计
专业
班级
学生姓名
学号
设计地点
指导教师
设计起止时间:
2013年12月23日至2013年12月27日
目录
一、设计要求3
二、基本任务3
三、总体设计3
1、设计思路3
2、设计流程图4
3、硬件设计5
四、功能模块实现7
1、显示模块7
2、计数模块7
3、中断模块8
4、定时模块8
5、修改模块8
五、硬件连线8
六、调试结果10
七、心得体会10
八、参考文献11
九、附录:
源程序11
一、设计要求
利用8253可编程定时/计数器、8259中断控制器、8255可编程并行接口芯片和七段数码管设计一个电子钟的电路,并编写一段程序使得该电子钟能正常运行。
二、基本任务
(1)选用8253的计数器2进行100MS的定时,其输出OUT2与8259的IR0相连,当定时到100MS时产生一个中断信号,在中断服务程序中进行天数、时、分、秒的计数,并送入相应的存储单元;
(2)8255的A口接七段数码管的位选信号,B口接数码管的段选信号,天数、时、分、秒的数值通过对8255的编程可送到七段数码管上显示。
附加任务:
选用8253的计数器0、1产生一个10s的时间定时,并将其输出OUT1与蜂鸣器相接,产生10S蜂鸣。
8255的C口接开关输入,用K1、K2、K3分别控制时、分、秒的修改。
3、总体设计
利用8253可编程定时/计数器、8259中断控制器、8255可编程并行接口芯片和七段数码管设计一个电子钟的电路,并编制一程序使得该电子钟能正常运行。
电子钟除了能够完成正常的计时、显示功能外,还必须具备正常时、分、秒的数值显示功能、时间设定功能等。
绘制相应的硬件电路原理图并完成接线。
编制相应控制程序实现电子钟的计时、显示等功能。
控制程序设计规范,应有适当的注释,表达清楚。
钟的时分秒显示分别采用6个7段LED数码管实现。
1、设计思路
(1)在主程序中要分别对8253、8259、8255进行初始化编程,8253的计数器2可在方式2下工作。
(2)8255的A口、B口都设为方式0,为基本的输入输出的方式
(3)在中断服务程序中对中断次数进行统计,当满10次时就进行一次时、分、秒的处理。
时、分、秒,分别对应6个存储单元,分别存放时、分、秒的十位和个位。
当中断次数满10次时,将秒的个位加1,判断是否到10,如到了则十位加1,个位清零;再判断十位是否到6,如到了则十位清零,分的个位加1,同时对分、时作相应处理。
(4)七段数码管显示作为子程序,将时、分、秒对应存储单元的内容分别取出并转换成相应的段码,从8255的B口输出,A口输出对应位的位选信号,延时后进行下一位的显示
(5)用8253的计数器0、1产生一个20S周期的方波,计数器0工作在方式2下,计数器1工作在方式3下。
(6)在循环程序中检测K1、K2、K3是否为高电平,若是则相应位置加1,同时还得引入变量控制K1、K2、K3一直在高电平的状况,确保每次按动开关相应位置只加一次。
2、设计流程图
主程序中断服务程序
3、硬件设计:
①8259A芯片的内部结构及引脚
中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。
它将中断源优先排队、辨别中断源以及提供中断矢量的电路集中于一片中。
因此无需附加任何电路,只需对8259A编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。
在MD微机系统中,8259芯片工作于单片方式。
8259引脚图如图3.3,各引脚功能如下。
D7~D0——八条双向数据线;
WR(低电平有效)——写输入信号;
RD(低电平有效)——读输入信号;
CS(低电平有效)——片选输入信号;
A0——地址信号;
INT——中断请求信号;
INTA(低电平有效)——中断响应信号;
CAS0~CAS2——级联信号,形成一条专用8259A总线,以便多片8259A的级联;
图3.18259A引脚图
SP/EN——从编程/允许级联。
在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。
在非缓冲方式中,作为输入信号用于表示主片还是从片;
IR0~IR7——外部中断请求输入线。
要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。
②8255芯片的内部结构及引脚
8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种工作方式下工作:
方式0—基本输入/输出方式
方式1—选通输入/输出方式
方式2—双向选通输入/输出方式
8255引脚图如图3.2示,各引脚功能如下。
D7~D0——与CPU侧连接的八条双向数据线;
WR(低电平有效)——写输入信号;
RD(低电平有效)——读输入信号;
CS(低电平有效)——片选输入信号;
A0、A1——片内寄存器选择输入信号;
PA7~PA0——A口外设双向数据线;
PB7~PB0——B口外设双向数据线;
PC7~PC0——C口外设双向数据线;
RESET——复位输入信号
③8253芯片的内部结构及引脚
8253可编程定时/计数器是Intel公司生产的通用外围芯片之一,有3个独立的十六位计数器,技术频率范围为0~2MHZ,它所有的技术方式和操作方式都通过编程控制。
8253的功能用途是:
(1)延时中断
(2)可编程频率发生器
(3)事件计数器
(4)二进倍频器
(5)实时时钟
(6)数字单稳
(7)复杂的电机控制器
8253有六种工作方式:
(1)方式0:
计数结束中断
(2)方式1:
可编程频率发生器
(3)方式2:
频率发生器
(4)方式3:
方波频率发生器
(5)方式4:
软件触发的选通信号
(6)方式5:
硬件触发的选通信号
8253各引脚功能如下。
D7~D0——八条双向数据线;
WR(低电平有效)——写输入信号;
RD(低电平有效)——读输入信号;
CS(低电平有效)——片选输入信号;
A0、A1——片内寄存器地址输入信号;
CLK——计数输入,用于输入定时基准脉冲或计数脉冲;
OUT——输出信号,以相应的电平指示计数的完成,或输出脉冲波形;
GATE——选通输入(门控输入),用于启动或禁止计数器的操作,以使计数器和计测对象同步。
四、功能模块实现
1、显示模块
显示模块是将显示缓冲区的数值送到LED显示的功能模块,显示缓冲区是由八个字节构成,分别保存小时的高位和低位,分钟的高位和低位,秒钟的高位和低位,一个横杠和一位天数的显示。
硬件上主要涉及到的是8255。
定义8255控制字为89H,其在方式0下工作,A,B输出,C输入的工作方式。
8255的A口接七段数码管的位选信号,B口接数码管的段选信号,C口接开关,用排线接好。
2、计数模块
软件上主要是对时、分、秒、天的扫描显示,主要是在DISPLAYLED函数里体现出来:
首先将10000000B送至OUTBIT端口,即确定LED的哪一位显示,再把BX中存储在内存中的翻译好的显示码送至OUTSEG短口,来确定显示什么字符。
依次将BX加1而CL减一,直至CL为0跳转而字符的译码则是在STSRT函数中的LP中完成的,以小时HOUR为例,将HOUR存入AH中再DIV以10,按“余高商低”的规则,AH中存的是小时的个位AL中村的是小时的十位,将AL转换成显示码,并存入显示缓冲区。
其他分、秒、天类似。
计数模块的主要芯片是8253,8253控制字10100111H,表示选用计数器2,对高字节读写,方式3。
因为选用的是计数器2,则OUT的端口即选用OUT2,连至8259的IR0端口,CLK2端口接来自实验箱的62.5KHz的时钟频率。
将62500HZ的频率转化为10HZ的频率,即题目要求的100MS。
每隔100MS送出一个信号至8259,配合中断程序的实现。
则要求初始值N0=100MS*62.5K=6250。
3、中断模块
控制终端模块的主要芯片是8259。
IINIT函数是专为初始化8259。
初始化8259的命令字:
ICW1为00010011B,即中断请求是边沿触发,用于8086系统,需要设置ICW4。
ICW2为00001000B,ICW2是设置中断类型号的初始化命令字。
ICW4为00001001B,ICW4叫中断结束方式初始化。
OCW1为11111110B即表示只有M0允许中断,故接线时8253的OUT2,连至8259的IR0端口.。
软件上包括初始化8259的命令字和操作命令字,中断服务程序,中断服务子程序。
设一个变量CNT,每次调用中断服务程序则CNT加一,在判断CNT能不能被10整除,若能,则秒加一;不能,跳出中断程序。
若秒满60,则分加一,秒数清零,依次类推。
4、定时模块
定时模块由8253完成,8253CLK0接2MHZ频率,OUT0接CLK1,OUT1接蜂鸣器,GATE0接高电平,GATE1接脉冲信号,当其为高电平时有效。
计数器0初始值设为5000,计数器1初始值设为8000,从OUT1出来的信号为周期20S的方波,而蜂鸣器为低电平有效。
5、修改模块
修改模块是由8255完成的,从C口输入开关信号控制时间的修改,中间引入中间变量,以防每按动开关一次,跳动多次。
5、硬件连线
A3区:
A0、A1
——
B3、B4、C5区:
A0、A1
A3区:
CS3
——
B3区:
CS
A3区:
CS4
——
C5区:
CS
C5区:
GATE0、GATE2
----
VCC
A3区:
CS8
——
B4区:
CS
B3区:
INT、INTA
——
ES8688:
INTR、INTA
B3区:
IRO
——
C5区:
OUT2
频率输出:
62.5k
——
C5区:
CLK2
C5区:
GATE1
----
单位脉冲
C5区:
OUT0
----
C5区:
CLK1
C5区:
OUT1
----
D1区:
CTRL
B4区:
C
----
G6区:
JP80
频率输出:
2MHZ
----
C5区:
CLK0
B4区:
A、B
——
LED区:
C、B数据线
六、调试结果
1、按动软件全速运行后,八位显示器分别为00.00.00-1(第一个小数点前两位表示小时,第二个小数点前两位表示分钟,第三个小数点前两位表示秒,最后一位表示天)。
秒位从0开始计时,到60秒时清零,分钟为1,以此类推。
2、将单位脉冲拨动到高电平,则从按动时刻开始10S后蜂鸣器响,再将脉冲调到低电平,蜂鸣器停止鸣响。
3、拨动开关K1一次,时显示器加1,拨动K2一次,分显示器加1,同理K3。
七、心得体会
本次课程设计历时四天,从第一天的查找资料到最后老师的验收,学到了许多之前在课
堂上遗漏的知识,更加熟悉了8255、8253、8259等芯片的功能,使我受益匪浅。
微机原理与接口技术是一门很有趣的课程,任何一个计算机系统都是一个复杂的整体,学习计算机原理是要涉及到整体的每一部分。
讨论某一部分原理时又要涉及到其它部分的工作原理。
这样一来,不仅不能在短时间内较深入理解计算机的工作原理,而且也很难孤立地理解某一部分的工作原理。
所以,在循序渐进的课堂教学过程中,我总是处于“学会了一些新知识,弄清了一些原来保留的问题,又出现了一些新问题”的循环中,直到课程结束时,才把保留的问题基本搞清楚。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理 应用 课程设计 电子钟 设计 本科 论文