60秒倒计时系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理与接口技术课程设计报告
题目60秒倒计时系统设计
系别虞山学院
年级09 专业电子科学与技术
班级Y051091 学号Y051091(07/10/20/29)
学生姓名徐熙超、施祥祥、肖天宇、陆庆山
指导教师周平职称讲师
设计时间2011.12
目录
第一章系统设计 (1)
1.1题目要求 (1)
1.2方案论证 (1)
1.3实施方案 (1)
第二章倒计时硬件设计 (2)
2.1倒计时的硬件框图 (2)
2.2 8255A的基本资料 (2)
2.3 显示电路 (5)
2.4 输入电路的连接 (6)
2.5 输出电路的连接 (6)
第三章倒计时软件设计 (7)
3.1主程序设计框图 (7)
3.2程序的设计 (7)
第四章安装与调试 (10)
4.1硬件调试 (10)
4.2软件调试 (10)
4.3调试过程 (10)
第五章总结与体会 (11)
第六章参考文献 (12)
第七章附录 (13)
第一章系统设计
1.1题目要求
一、任务:
60秒倒计时系统设计
二、要求:
1.电路具有时间显示功能,要求用2位七段数码管;
2.要求电路为60秒递减计时,每隔1秒钟,计时器减1;
3.要有外部开关,控制计数器的启动、复位和暂停/继续计时功能;
4.当计时器倒计时为零时,即定时时间到,显示为零,同时发出光报警信号。
1.2方案论证
1.使用8253作为秒脉冲输出,用8255A作为输入/输出接口分别接控制端、输出显
示端、报警器,使用8259作为中断控制倒计时的复位/暂停。这种方案具有走时精准、可扩展性好的有点,但是制作成本最高。
2.使用软件延时,在程序中使用延时语句来输出秒脉冲。用8255A作为输入/输出接
口分别接控制端、输出显示端、报警器,使用8259作为中断控制倒计时的复位/暂停。此方案具有控制响应速度快,制作成本因为舍弃8253成本适中,但是由于使用了软件延时,因为芯片损耗以及芯片在工作时间过长后走时会不够准确。
3.芯片只选择8255A,使用软件延时,在程序中使用延时语句来输出秒脉冲,使用
8255A作为输入/输出接口。采用在软件中控制循环程序的方式来控制倒计时的复位/暂停。此方案性价比最高,但是相应的由于使用了软件延时,因为芯片损耗以及芯片在工作时间过长后走时会不够准确。由于8259的弃用在系统扩展方面会不如以上两种。
1.3实施方案
本次课程设计要求并未要求设计成品需要扩展功能,及成本略高,故舍弃方案1。考虑各方因素,由于未采用8253,采用8259中断和软件控制循环程序的方式来控制倒计时的复位/暂停对走时的准确性影响不大,为了降低成本,也不采用8259,故舍弃方案2。方案③达到课程设计要求并且成本最低,所以确定以方案③来设计。
第二章倒计时硬件设计
2.1倒计时的硬件框图
框图如下:
图2-1 倒计时的硬件框图
2.2 8255A的基本资料
一.8255A内部结构如图2所示。
图2-2 8255A内部结构
① 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-3 8255引脚信号图
①与外部设备端相连的引脚
(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、01、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,必须使用多个控制字。