555 定时器的电路结构、逻辑功能与看门狗电路设计

2017-08-18 88 0

555 定时器是一种模拟和数字功能相结合的中规模集成器件:一般用双极型(TTL)工艺制作的称为 555,用互补金属氧化物(CMOS)工艺制作的称为 7555;除单定时器外,还有对应的双定时器 556/7556。555 定时器的电源电压范围宽,可在 4.5~16 V 工作,7555 可在 3~18 V 工作,输出驱动电流约为 200 mA,因而其输出可与 TTL、CMOS 或者模拟电路电平兼容。

555 定时器的电路结构、逻辑功能与看门狗电路设计

图 1 555 定时器

一、555 定时器的电路结构与功能

555 定时器是一种把模拟电路和开关电路结合起来的器件,常用的 555 定时器型号有 SG555(TTL 电路)和 CC7555(CMOS 电路)等。

1. CC7555 定时器的电路结构

555 定时器的电路结构、逻辑功能与看门狗电路设计

图 2 CC7555 定时器的内部结构框图

(1)模拟功能部件

① 电阻分压器:由 3 个阻值均为 r 的电阻串联构成分压器,为电压比较器 C1 和 C2 提供参考电压。不加控制电压时该引出端不可悬空,一般要通过一个小电容接地,以旁路高频干扰;因为 3 个分压电阻阻值相同,所以两个分压点分别为 V₁ = 2/3EC、V₂ = 1/3EC。

② 电压比较器 C1 和 C2:比较器 C1——TH(阈值输入端)> 基准电压 U₁ 时输出 UC1 = 1,否则为 0;比较器 C2——TR(触发输入端)< 基准电压 U₂ 时输出 UC2 = 1,否则为 0。

③ 输出 MOS 管 T:N 沟道增强型场效应管 T 受门 G5 输出的控制,G5 的输出即是 RS 触发器输出 Q 经 G4、G5 传来的信号;当 Q = 1 时 T 导通,Q = 0 时 T 截止。

(2)逻辑功能部件

① G1 和 G2 组成基本的 RS 触发器,输入低电平有效触发——当 UC1 = 0、UC2 = 1 时置 0,Q = 0、Q̄ = 1;当 UC2 = 0、UC1 = 1 时置 1,Q = 1、Q̄ = 0;当 UC1 = 1、UC2 = 1 时保持;

② 输出缓冲级 G6——当 Q = 0、Q̄ = 1 时输出 OUT = 1;当 Q = 1、Q̄ = 0 时输出 OUT = 0;

③ R̄D 为直接置 0 端——R̄D = 0 时输出 OUT 便为低电平,正常工作时 R̄D 端必须为高电平。

2. 逻辑功能

(1)R̄D 为低电平有效时,直接置 0 端;

(2)TH(阈值输入端)> 基准电压 U₁ 时,称高触发置 0;

(3)TR(触发输入端)< 基准电压 U₂ 时,称低触发置 1。

555 定时器的电路结构、逻辑功能与看门狗电路设计

图 3 555 定时器逻辑功能

二、555 定时器芯片实现单片机看门狗电路

1. 程序跑飞现象

随着单片机在能源领域中的广泛应用,单片机的抗干扰问题越来越突出;煤矿井下环境一般比较恶劣,这便会为单片机控制系统带来各种干扰,以致系统不能正常工作。单片机应用系统的抗干扰性能主要取决于硬件的抗干扰设计,但软件抗干扰设计作为硬件抗干扰的完善和补充,作用也非常重要:因为大量的干扰通常并不能影响系统内硬件的运作,却常会使系统的软件无法正常运行。单片机应用的一个突出问题,便是单片机运行过程中经常出现的程序跑飞现象。

在单片机系统中,因为干扰的原因,在非预期的情况下使得程序计数器 PC 的值发生随机的变化,从而使得程序的流向指向不确定区域,这便是程序的跑飞。程序跑飞后或者会使指令的地址码和操作码发生改变,PC 把操作数当作指令来执行;或者 PC 值指向一条不合逻辑关系的指令甚或是非程序区,运行结果常常会使单片机进入死循环,即常说的“死机”。为确保在无人当值的情况下单片机“死机”后能自动恢复过来,通常采用软件陷阱、外部 WDT 电路以及软件控制的 WATCHDOG 等方法使系统恢复正常(后两种俗称“看门狗”),限于篇幅不做专门说明,这里主要介绍用 555 定时器软硬结合做看门狗的一种方法。

2. 555 定时器

一般情况下,看门狗主要是通过不断监视程序运行一个事件的时间是否超过预定的时间来判断程序是否进入了死循环,因此利用 555 定时器可复位的触发功能外加延时电路可实现看门狗的功能。555 定时器是一种多用途的单片集成电路,内部电路如图 4 所示。

555 定时器的电路结构、逻辑功能与看门狗电路设计

图 4 555 定时器内部电路

CO 端是控制电压输入端,加控制电压可改变 A1“−”端及 A2“+”端的参考电压,若不用可通过一个小电容接地,以防旁路高频交流干扰;R̄ 为定时器直接复位端,加低电平可将定时器直接置“0”,此时 OUT 输出“0”、Q̄ 为 1,V 导通,D 端对地通路;TH 为复位阈值输入端,当 TH 电压超过 2/3UDD(即 A1 负端分压)时,A1 输出为“1”,OUT 输出“0”,同样 D 端对地通路;TR 为置位输入端,当 TR 电压低于 1/3UDD(即 A2 正端分压)时,A2 输出“1”,定时器被置位,此时 OUT 输出“1”、Q̄ 为“0”,V 截止,D 端对地断路。

3. 看门狗电路及运行指令

以 Intel 公司的 16 位单片机 8096 为例,555 定时器作为看门狗与单片机的接口电路如图 5 所示。

555 定时器的电路结构、逻辑功能与看门狗电路设计

图 5 看门狗接口电路

首先在单片机初始化时用指令“ORB PORT1, #01H”置 P1.0 为“1”,则三极管 T 导通,555 芯片的 R̄ 为“1”,TH、TR 端经 R、C 充电、电位逐渐上升;当电位还低于 1/3UDD 时,OUT 输出“1”,D 端对地断路,电容 C 正常充电。一旦程序跑飞或进入死循环,在电位上升到高于 2/3UDD 时仍没有“喂狗”,则 OUT 输出变为“0”,经三极管 T 拉低单片机的 RESET 脚,并使复位电容放电,这时 D 端对地短路,电容 C 也通过 Rf 放电;当 TH、TR 端电位放电到低于 1/3UDD 时,OUT 输出重新变为“1”,单片机进入复位状态。

“喂狗”是指复位看门狗,在本电路中只须运行以下指令即可:

ANDB PORT1, #0FEH  ;使 P1.0 为“0”
SKIP         ;空操作,用于延时
SKIP         ;以使 TR 电压降到 1/3UDD 为宜
ORB PORT1, #01H   ;使 P1.0 为“1”

当 P1.0 被置为“0”时,555 定时器的 R̄ 端为“0”,三极管 T 截止。R̄ 端为“0”则 555 芯片被复位,OUT 输出为“0”,同时 D 端对地短路、电容 C 放电为重新延时做准备;但因为三极管的截止,此时 OUT 输出虽然也为“0”却并不影响单片机的 RESET 脚,单片机正常工作,从而区分开了“喂狗”与系统故障时看门狗发生作用的不同之处。

4. 需要注意的问题

这里仍然有一个问题需要注意,那就是 555 定时器的正常工作与否完全依赖于单片机 P1.0 的状态;但在某些干扰比较严重的情况下,单片机的误操作是有可能改变 P1.0 的预置状态的:若单片机在进入死循环之前 P1.0 被误置为了“0”,看门狗始终处于“被喂”的状态,那这个电路便无法再发挥作用。对这种情况,可用软件冗余的方法来应对,就是在程序的关键地方多次插写看门狗的激活指令:

NOP
ORB PORT1, #01H

值得提醒的是,这里“NOP”指令的作用不容忽视,可使跑飞的程序纳入正轨,不致冲散后面的关键指令。不过尽管如此,软件冗余的应用也还是有一个前提的,那就是跑飞的程序必须落在程序区、冗余的指令得到执行方可生效;若跑飞的程序落在了非程序区,仅凭指令冗余技术便不可靠了,这时便还须借助其他抗干扰技术的支持,如软件陷阱、标志技术、本质可靠性程序的设计等,在此不再赘述。

相关文章

压敏电阻的参数、特性与应用
基于 STC12C 与 SIM300 的智能家电防盗系统电路设计
基于 nRF24L01 与 DHT11 的无线温湿度测试系统电路设计
电冰箱电子温控器的原理与半自动除霜电路
基于 586-Engine 的无人机飞行控制器电路设计
三极管开关电路的改进接法:加速电容、图腾柱与驱动电路

发布评论