传统电气设备采用的各种控制信号,必须转换到与单片机输入/输出口相匹配的数字信号。用户设备须输入到单片机的各种控制信号,如限位开关、操作按钮、选择开关、行程开关以及其他一些传感器输出的开关量等,通过输入电路转换成单片机能够接收和处理的信号;输出电路则应将单片机送出的弱电控制信号转换、放大到现场需要的强输出信号,以驱动功率管、电磁阀和继电器、接触器、电动机等被控制设备的执行元件,以方便实际控制系统使用。针对电气控制产品的特点,本文讨论几种单片机 I/O 的常用驱动和耦合电路的设计方法,对合理地设计电气控制系统、提高电路的接口能力、增强系统稳定性和抗干扰能力有实际指导意义。
一、输入电路设计

图 1 开关信号输入
一般输入信号最终会以开关形式输入到单片机中。以工程经验来看,开关输入的控制指令有效状态采用低电平比采用高电平效果要好得多,如图 1 所示:当按下开关 S1 时,发出的指令信号为低电平;而平时不按下开关 S1 时,输出到单片机上的电平则为高电平。该方式具有较强的耐噪声能力。
考虑到 TTL 电平电压较低、在长线传输中容易受到外界干扰,可以将输入信号提高到 +24 V,在单片机入口处将高电压信号转换成 TTL 信号。这种高电压传送方式不仅提高了耐噪声能力,而且使开关的触点接触良好、运行可靠,如图 2 所示,其中 D1 为保护二极管,反向电压 ≥50 V。

图 2 提高输入信号电平
二、输入端保护电路

图 3 输入端保护电路
为了防止外界尖峰干扰和静电影响损坏输入引脚,可以在输入端增加防脉冲的二极管,形成电阻双向保护电路,如图 3 所示。二极管 D1、D2、D3 的正向导通压降 UF ≈ 0.7 V,反向击穿电压 UBR ≈ 30 V;无论输入端出现何种极性的破坏电压,保护电路都能把该电压的幅度限制在输入端所能承受的范围之内,即:当 VI 相对 VCC 出现正脉冲时 D1 正向导通,当 VI 相对 VCC 出现负脉冲时 D2 反向击穿,当 VI 相对地出现正脉冲时 D3 反向击穿,当 VI 相对地出现负脉冲时 D3 正向导通,二极管起钳位保护作用。缓冲电阻 RS 约为 1.5~2.5 kΩ,与输入电容 C 构成积分电路,对外界感应电压延迟一段时间:若干扰电压的存在时间小于 τ,则输入端承受的有效电压将远低于其幅度;若时间较长,则 D1 导通,电流在 RS 上形成一定的压降,从而减小输入电压值。

图 4 输出驱动与耦合电路