浙江工业大学浙西分校信息与电子工程系毕业设计(论文) PC5~PC0:可用编程的方法来决定C口作为通用输入/输出线或作A口、B口数据传送的控制应答联络线。
TIME IN:定时器/计数器脉冲输入端。
TIME OUT:定时器/计数器矩形脉冲或方波输出端(取决于工作方式)。 Vcc:+5电源端。 Vss:接地端。
3.8.2 8155的控制字的及其工作方式
1)、命令/状态字的格式及功能
8155的I/O接口的工作方式选择是通过 对8155内部寄存器送命令来实现的,命令寄存器由8位锁存器组成,只能写入、不能读出。命令字每位的定义如下所示:
AINTR:A口中断请求信号 ABF:B口缓冲器信号 ASTB:A口选通信号
BINTR:B口中断请求信号 BBF:B口缓冲满信号 BSTB:B口选通信号
8155的状态寄存器口地址和命令寄存器相同。与控制字相反,状态字寄存器只能读出、不能写入,其格式及定义如图3-18,3-19所示:
图3-18 8155状态字格式
- 21 -
浙江工业大学浙西分校信息与电子工程系毕业设计(论文)
图3-19 8155状态字定义
3.8.3 8155与8031的连接
如图3-20所示为8155与8031的连接
图3-20 8155与8031的连接
- 22 -
浙江工业大学浙西分校信息与电子工程系毕业设计(论文) 3.9 看门狗、报警、复位和时钟电路的设计
3.9.1 看门狗电路的设计
为提高系统的可靠性,由硬件的 “看门狗”。由NE555定时器构成的看门狗电路如图3-21所示R3、C6为定时元件,由单稳态电路产生的正脉冲宽度为tW?1.1R3C6?123us,C5用于滤除高频干扰。下面分析看门狗电路的工作原理:
1、当系统工作正常时,看门狗电路不起作用。
2、当系统运行不正常时,8031不能给定时器送去触发脉冲,NE555中的单稳态触发器就输出脉宽大于4us的负脉冲,经F6反相后加至80C31的复位端,使系统能可靠地复位,迅速恢复正常运行状态。
图3-21 看门狗电路
3.9.2 报警电路的设计
当温度过大地超了给定的温度时,系统就会发出报警信号。在这方面的设计中我们采用了如图3-22所示的报警电路。其工作原理是:温度过高时,单片机就从P1.5口发出一个低电平信号,经反向后使发光二极管发光,同时使蜂鸣器发音,从而达到报警的日的。
图3-22 报警电路
- 23 -
浙江工业大学浙西分校信息与电子工程系毕业设计(论文) 3.9.3复位电路的设计
在单片机应用系统工作时,除了进入系统正常的初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键以重新启动。所以,系统的复位电路必须准确、可靠地工作。另外,单片机的复位状态与应用系统的复位状态又是密切相关的,因此,必须熟悉单片机的复位状态。 一、复位
单片机的复位都是靠外部电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平,单片机便实现初始化状态复位。为了保证应用系统可靠地复位,在设计复位电路时,通常使RST引脚保持10ms以上的高电平。只要RST保持高电平,则MCS-51单片机就循环复位。单片机的复位状态要注意以下几点:
① 复位是单片机的初始化操作。其主要功能是把 PC初始化为0000H,使单片机从0000H单元开始执行。
② 复位操作除了把PC初始化为0000H之外,还对一些特殊功能寄存器(专用寄存器)有影响,它们的复位状态见表3-2。
③ 复位操作还对单片机的个别引脚信号有影响,例如把ALE和PSEN信号变为无效状态,即ALE=0,PSEN=1。但复位不影响单片机内部的RAM状态。
表3-2单片机的复位状态
专用寄存器 PC ACC B PSW SP DPTR P0~P3 IP IE
00H 00H 00H 07H 000H0 FFH 33000000B 03000000B 复位状态 0000H 专用寄存器 TMOD TCON TL0 TH0 TL1 TH1 SCON SBUF PCON 复位状态 00H 00H 00H 00H 00H 00H 00H 不定 03330000B 二、复位电路
从以上的叙述中,我们已经清楚复位电路的设计原理:在单片机的 RST引脚上出现24个时钟振荡脉冲(2个机器周期)以上的高电平(为了保证应用系统可靠地复位,通常使 RST引脚保持10ms以上的高电平)。根据这个原则,采用的电路是:
按键电平复位,如图3-23所示,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的。
图3-23 复位电路
- 24 -
浙江工业大学浙西分校信息与电子工程系毕业设计(论文) 3.9.4 时钟电路的设计
时钟电路用于产生单片机工作所需要的时钟信号,单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地按时序进行工作。而时序所研究的则是指令执行中各信号之间的相互时间关系。 一、 时钟电路
在介绍单片机引脚时,我们已经叙述过有关振荡器的概念。振荡电路产生的振荡脉冲,并不是时钟脉冲。这二者既有联系又有区别。在由多片单片机组成的系统中,为了各单片机之间时钟信号的同步,还引人公用外部脉冲信号作为各单片机的振荡脉冲。 二、时钟信号的产生
XTAL1(19脚)是按外部晶体管的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。输出端为引脚XTAL2,在芯片的外部通过这两个引脚接晶体震荡器和微调电容,形成反馈电路,构成一个稳定的自激震荡器。如图3-24所示。
我们可以用示波器测出XTAL2上的波形。电路中的C1和C2一般取30PF 左右而晶体震荡器的频率范围通常是1.2~12 MHZ,晶体震荡器的频率越高,振荡频率就越高。
振荡电路产生的振荡脉冲并不是时钟信号,而是经过二分频后才作为系统达到时钟信号。如图3-24所示。在二分频的基础上再三分频产生 ALE信号在二分频的基础上再六分频得到机器周期信号。
本次设计中我们采用了6MHZ的晶体震荡器。
图3-24 时钟电路图
3.10 键盘与显示电路的设计
3.10.1 LED数码显示器的接口电路
实际使用的LED数码显示器位数较多,为了简化线路、降低成本,大多采用以软件为主的接口方法。对于多位LED数码显示器,通常采用动态扫描显示方法,即逐个地循环地点亮各位显示器。这样虽然在任一时刻只有1位显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部显示器持续点亮的效果基本一样(在亮度上要有差别)。
为了实现LED显示器的动态扫描显示,除了要给显示器提供显示段玛之外,还要对显示器进行位的控制,即通常所说的“位控”。因此对于多位LED数码显示器的接口电路来说,需要有两个输出口,其中一个用于输出显示段码;另一个用于输出位控信号,“位控”实际上就是对LED显示器的公共端进行控制,位控信号的数目与显示器的位数相同。
- 25 -