60秒倒计时系统设计.docx
- 文档编号:30349282
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:17
- 大小:185.29KB
60秒倒计时系统设计.docx
《60秒倒计时系统设计.docx》由会员分享,可在线阅读,更多相关《60秒倒计时系统设计.docx(17页珍藏版)》请在冰豆网上搜索。
60秒倒计时系统设计
微机原理与接口技术课程设计报告
题目60秒倒计时系统设计
系别虞山学院
年级09专业电子科学与技术
班级Y051091学号Y051091(07/10/20/29)
学生姓名徐熙超、施祥祥、肖天宇、陆庆山
指导教师周平职称讲师
设计时刻
第一章系统设计
题目要求
一、任务:
60秒倒计时系统设计
二、要求:
1.电路具有时刻显示功能,要求用2位七段数码管;
2.要求电路为60秒递减计时,每隔1秒钟,计时器减1;
3.要有外部开关,操纵计数器的启动、复位和暂停/继续计时功能;
4.当计时器倒计时为零时,即定不时刻到,显示为零,同时发出光报警信号。
方案论证
1.利用8253作为秒脉冲输出,用8255A作为输入/输出接口别离接操纵端、输出显示端、报警器,利用8259作为中断操纵倒计时的复位/暂停。
这种方案具有走时精准、可扩展性好的有点,可是制作本钱最高。
2.利用软件延时,在程序中利用延时语句来输出秒脉冲。
用8255A作为输入/输出接口别离接操纵端、输出显示端、报警器,利用8259作为中断操纵倒计时的复位/暂停。
此方案具有操纵响应速度快,制作本钱因为舍弃8253本钱适中,可是由于利用了软件延时,因为芯片损耗和芯片在工作时刻太长后走时会不够准确。
3.芯片只选择8255A,利用软件延时,在程序中利用延时语句来输出秒脉冲,利用8255A作为输入/输出接口。
采纳在软件中操纵循环程序的方式来操纵倒计时的复位/暂停。
此方案性价比最高,可是相应的由于利用了软件延时,因为芯片损耗和芯片在工作时刻太长后走时会不够准确。
由于8259的弃用在系统扩展方面会不如以上两种。
实施方案
本次课程设计要求并未要求设计成品需要扩展功能,及本钱略高,故舍弃方案1。
考虑各方因素,由于未采纳8253,采纳8259中断和软件操纵循环程序的方式来操纵倒计时的复位/暂停对走时的准确性阻碍不大,为了降低本钱,也不采纳8259,故舍弃方案2。
方案③达到课程设计要求而且本钱最低,因此确信以方案③来设计。
第二章倒计时硬件设计
倒计时的硬件框图
框图如下:
图2-1倒计时的硬件框图
8255A的大体资料
一.8255A内部结构如图2所示。
图2-28255A内部结构
①8255A3个8位数据接口,即接口A、接口B和接口C。
利用者能够用软件使它们别离作为输入端口或输出端口。
(1)端口A:
一个8位数据输入锁存器和一个8位数据输出锁存器/缓冲器,用来传送数据。
数据输入均被锁存。
(2)端口B:
一个8位数据输入缓冲器和一个8位数据输出锁存器/缓冲器,用来传送数据。
数据输入时不被锁存,数据输出时被锁存。
(3)端口C:
一个8位数据输入缓冲器和一个8位数据输出锁存器/缓冲器。
用作输入端口时,数据不被锁存;而作为输出端口是,数据被锁存。
②A组操纵和B组操纵
这两组操纵电路一方面接收芯片内部总线上的操纵字,一方面接收来自读/写操纵逻辑电路的读/写命令,从而解决端口的工作方式和读/写操作。
其中,A组操纵电路操纵端口A和端口C高4位(PC7-PC4)的工作方式和读/写操作:
而B组操纵电路操纵端口B和端口C低4位(PC3-PC0)工作方式和读写操作。
③读/写操纵逻辑电路
读/写操纵逻辑电路负责治理8255A的数据传输进程。
它接收来自系统总线的信号A1,A0和操纵总线信号RESET、WR、RD,将这些信号组合后,取得A组操纵部件和B组操纵部件的操纵命令,并将命令发给这两个部件,完成对数据、状态信息的传输。
④数据总线缓冲器
这是个双向三态8位数据缓冲器,9255A通过它与系统数据总线相连。
输入数据、输出数据、CPU发给8255A的操纵字都是通过那个缓冲器传递的。
二.8255的引脚信号
8255的引脚信号如下图
图2-38255引脚信号图
1与外部设备端相连的引脚
(1)PA7-PA0:
A端口的输入/输出引脚。
(2)PB7-PB0:
B端口的输入/输出引脚。
(3)PC7-PC0:
C端口的输入/输出引脚。
②与CPU相连的引脚
(1)RESET:
复位信号,低电平有效。
当RESET信号来到时,所有内部寄存器都被清0,同时3个端口被自动设为输入端口。
(2)D7-D0:
8255A的数据线,和系统数据总线相连。
(3)CS:
芯片选择信号。
只有当CS有效时,读出信号RD和写入信号WR才对8255A有效。
(4)RD:
读出信号。
CPU通过IN指令使RD有效,将数据或状态信息从8255A中读到CPU。
(5)WR:
写入信号。
CPU通过OUT指令使WR有效,将数据或状态信息从CPU中写道8255A.
(6)A1,A0:
端口选择信号。
8255A内部有3个数据端口和1个操纵端口,共4个端口。
规定A1,A0为00、0一、10和11时,别离选中端口A、端口B、端口C和操纵端口。
三.8255的操纵字
①方式选择操纵字
(1)方式选择操纵字把A、B、C三个端口分为A、B两组来设定工作方式。
A组包括端口A和端口C的上半部,B组包括端口B和端口C的下半部。
(2)端口A可工作于3种方式中的任何一种:
端口B只能工作于方式0和方式1;而端口C除用作输入、输出口(方式0)外,通经常使用来配合端口A和端口B提供联络操纵信号和状态信号。
(3)归在同一组的两个端口可别离作为输入端口或输出端口,不要求同为输入或输出。
②端口C按位置位/复位操纵字
(1)端口C按位置位/复位操纵字尽管是对端口C进行操作的,但此操纵字必需写入操纵口,而不写入端口C。
(2)一个操纵字只能完成端口C中某一名置的置1或置0,要对多位置1或置0,必需利用多个操纵字。
显示电路
实验箱上有6个数码管,由于实验箱内部已经将8255与数码管的线路连好,因此只用连接操纵电路即可。
图2-4为4*7位数码管静态显示原理图,本设计只要用到两位即可。
图2-47位数码管静态显示原理图
在程序内设置8255的操纵字D2-D1位别离为00,使B端口工作在方式0作为输出端,PB0-PB7别离对应连接数码管的A-DP。
数码管的DIG口接至CPU操纵。
七段发光二极管为阳极LED器件。
要让A段点亮,要求PB0输出高电平“1”;要使B段熄灭,要求从PB1输出低电平“0”。
其余各段以此类推。
要使LED上显示0-9十个数字,需要依照如下段码表来驱动数码管的七段LED。
图2-5DICE-8086字形表
图2-6DICE-8086字位表
输入电路的连接
操纵电路的连接如以下图:
图2-7操纵电路
设置8255A的操纵字为90H,让A端口作为输入端。
其中开始/暂停键利用的是同一个拨位开关,如此能维持一个持续的电平,便于操纵。
当拨至“开始”后倒时开始计数,把开关拨至“暂停”后计数会停止,再拨至开始那么继续计数。
按下“复位”计数器会从头复位到60直至按下“开始”倒计时从头开始倒计时。
输出电路的连接
报警电路的连接如以下图所示:
图2-8报警电路
设置B端口工作在方式0下,作为输出端。
电路连接如上图,在倒计时器显示为“0”的时候LED灯会被接通开始报警。
第三章倒计时软件设计
主程序设计框图
图3-1主程序设计框图
运行程序,检测到开始按钮按下后开始倒计时,程序循环的时候每次都检测暂停开关,复位开关是不是被触发,有那么跳至相应代码段执行操作,无那么继续往下倒计时,直到计数终止为0时,触发报警电路。
程序的设计
1.8255A操纵字的设计
由硬件电路的设计可知,要使A端作为输出,B端作为输入。
那么8255A的操纵字为。
代码如下:
MOVAL,90H;8255的控制字写入
MOVDX,P_CTL
OUTDX,AL
2.显示程序的设计
依照如下段码表来设计。
显示字符
0
1
2
3
4
5
6
7
8
9
七段代码
C0H
F9H
A4H
B0H
99H
92H
82H
F8H
80H
90H
代码如下:
MOVAL,0FDH;十位数码管字位口写入
MOVDX,PA
OUTDX,AL
MOVAL,[BX];写入十位字形码
MOVDX,PB
OUTDX,AL
CALLDELAY;数码显示延时
MOVAL,[SI];个位数码管字位口写入
MOVDX,PA
OUTDX,AL
MOVDX,PB
MOVAL,0C0H;写入个位字形码
OUTDX,AL
3.延时程序的设计
程序的延时分为秒延时和数码管显示延时两个部份
操纵一个循环程序循环N次以抵达延时的目的。
具体语句如下:
DELAYPROCNEAR;数码管显示延时
PUSHCX
MOVCX,0A0H
LOOP$
POPCX
RET
DELAYENDP
秒延时与数码管延时类似,仅延时的时刻不同
4.操纵程序的设计
为了保证操纵按钮的响应速度,操纵程序设置延时程序内。
其中暂停能够用一个循环程序来实现,当暂停键拨下时,循环程序会进入死循环状态,直至拨至开始键。
复位那么只需按条件跳转至显示“60”的程序语句即可。
代码如下:
MOVDX,PA8255
INAL,DX
TESTAL,02H;检测是否暂停
JZZT60
TESTAL,01H;检测是否复位
JNZBEGIN
5.报警程序的设计
当程序运行至显示“0”的语句时给予报警电路低电平(由于实验箱上的LED灯是低电平亮高电平灭,因此给予低电平),其中报警语句还需加入复位语句,以停止报警。
代码如下:
MOVAL,00H;报警灯亮
MOVDX,PB8255
OUTDX,AL
第四章安装与调试
硬件调试
1)断电调试
为了平安,第一进行断电调试,用万用表检测系统是不是有短路现象,再检查原理是不是正确。
经检测,原理正确也没有短路现象。
2)通电调试
检查彩灯是不是能正常工作,检查数码显示是不是乱码。
软件调试
将已编好的程序下载到已连接好电路的实验箱上,逐句调试语句,再依如实验现象调试此程序并更正,最终取得符合实验要求的程序。
调试进程
1)秒脉冲输出的测定,拿示波器测量以确信延时程序的循环次数。
2)在运行程序的时候显现了程序开始运行,报警器就工作的现象。
在程序中加入了初始化报警电路的语句后运行正常。
3)在最初设计的程序中显现数据段内容混乱的现象,数码显示显现乱码,经检查后为代码编写格式有误,修改后正常。
第五章总结与体会
这次课程设计,大大加深了我对微机原理的明白得。
在这次设计中,我学到了很多讲义上没有的,和平常被咱们所轻忽的东西。
平常在上完课后以为对教师所讲的东西都很明白得,可是在真正自己设计程序时却无从下手。
不能清楚的明白得理论知识,就不能在实际实践中熟练的应用。
不仅是理论知识的明白得,在这次课程设计后,我对很多电子器件有了更深切的明白得,比如数码管在微机中的应用,8255A的实际应用及功能。
本次设计尽管是8255A超级简单的应用,但让我把握了学习可编程接口芯片和可编程接口芯片的方式,为以后的学习实践打下了基础。
在设计进程当中也发觉了自己体会的不足,尤其是在编程序方面还需要大量的练习,为以后的学习打下基础。
万事开头难,在这次课程设计后我对自己的动手能力加倍有信心。
由于时刻和个人能力的不足,我没能做出多位数码管计时的设计,可是在以后的时刻里我继续学习以补充自己知识的短板来完善自身。
第六章参考文献
1)朱金钧,麻新旗等《微型运算机原理及应用技术》第二版,机械工业出版社,
2)
3)郭兰英《微机原理与接口技术》清华大学出版社.2006年
4)李银华《电子线路技术指导》北京航空航天大学出版社,2005
5)启东运算机总厂《DICE-8086K微机接口原理实验指导书》
第七章附录
部份程序源代码:
CODESEGMENT
ASSUMECS:
CODE
ORG2DF0H
START:
JMPSTART0
PAEQU0FF21H;字位口
PBEQU0FF22H;字形口
PCEQU0FF23H;键入口
PA8255EQU0FF28H
PB8255EQU0FF29H
PC8255EQU0FF2AH
P_CTLEQU0FF2BH
DATA1:
DB92H,99H,0B0H,0A4H,0F9H,0C0H;6~0的字形码
DATA2:
DB90H,80H,0F8H,82H,92H,99H,0B0H,0A4H,0F9H,0C0H;9~0的字形码
START0:
MOVAL,90H;8255的控制字写入
MOVDX,P_CTL
OUTDX,AL
MOVAL,01H;熄灭报警灯
MOVDX,PB8255
OUTDX,AL
MOVDX,PA8255
INAL,DX
TESTAL,02H;检测是否开始计时
JNZBEGIN;开始时跳至BEGIN
JMPSTART0;未开始跳至START0重新循环检测
BEGIN:
MOVCX,330H;延时时间控制
T60:
;60S时的数码显示循环
ZT1:
MOVDX,PA8255
INAL,DX
TESTAL,02H;检测是否暂停
JZZT60
TESTAL,01H;检测是否复位
JNZBEGIN
BACK60:
MOVAL,0FDH;十位数码管字位口写入
MOVDX,PA
OUTDX,AL
MOVAL,82H;写入6的字形码
MOVDX,PB
OUTDX,AL
CALLDELAY;数码显示延时
MOVAL,0FEH;个位数码管字位口写入
MOVDX,PA
OUTDX,AL
MOVDX,PB
MOVAL,0C0H;写入0的字形码
OUTDX,AL
CALLDELAY
LOOPT60
LEABX,DATA1
DECBX
CHANGE1:
LEASI,DATA2
DECSI
INCBX
CHANGE2:
INCSI
MOVCX,330H
T59:
;59S~0S时的数码显示循环
ZT2:
MOVDX,PA8255
INAL,DX
TESTAL,02H
JZZT59
TESTAL,01H
JNZBEGIN
BACK59:
MOVAL,0FDH
MOVDX,PA
OUTDX,AL
MOVAL,[BX]
MOVDX,PB
OUTDX,AL
CALLDELAY
MOVAL,0FEH
MOVDX,PA
OUTDX,AL
MOVDX,PB
MOVAL,[SI]
OUTDX,AL
CALLDELAY
LOOPT59
CMPAL,0C0H
JNZCHANGE2
MOVAL,[BX]
CMPAL,0C0H;检测是否倒计时结束
JNZCHANGE1;未结束跳至CHANGE1继续倒计时
JMPWARNING;结束跳至报警
课程设计独创性声明:
学生签名:
指导教师评语:
课程设计成绩:
指导教师签名:
教研室意见:
教研室主任签名:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 60 倒计时 系统 设计