要处理这么庞大的计算,使用普通的八位单片机一般难以满足系统的实时性要求。本系统使用的是十六位单片机80C196KB。与八位单片机相比,十六位单片机克服了累加器瓶颈问题,它在内存中开辟出232个字节的空间作为通用寄存器使用,增加了数据存取的自由度,大大提高了工作效率。而且这些通用寄存器可以按字节、字、双字存取,这也给计算带来了很大方便。另外,80C196KB的指令周期可达125ns,比八位单片机的1μs快得多。

4、硬件电路

4.1 MAX115与80C196KB的接口设计

MAX115和80C196KB的接口电路如图1所示,图中的MAX115需要正、负电源供电。此外,MAX115的A/D输出是12位的,而此时80C196KB的总线工作方式应是16位的,故当MAX115片选有效时?CS为低?,其总线宽度控制信号BUSWIDTH=1?总线宽度是16位?,否则读取的数据将不正确;MAX115的通道选择是由A0~A3决定的,并可在采样初始化时确定。在本模块中,读数时序可由HSI.0控制。启动转换则可通过向一地址内写入数据来实现。

4.2 复位电路设计

本系统设计有软件看门狗功能。但在程序实际运行时,光靠软件看门狗防止程序运行死锁或“跑飞”是不安全的,还需要有硬件看门狗电路来保证系统的安全复位和正常运行。硬件看门狗复位电路如图2所示。

图中,当系统上电时,三极管T1饱和导通,其集电极输出低电平复位信号。而当系统稳定后,电容C1充电完毕,T1基极电流逐渐减小,直至T1截止,其集电极变为高电平,复位信号消失,系统进入正常工作状态,此后,转换器每次启动转换都要对计数器4024复位;而当系统出现故障,MAX115不再转换时,复位信号将无法对计数器4024复位,于是计数器开始计数,计满后右边的与非门U12B将输出高电平以使T2饱和导通,进而使集电极变为低电平,从而产生复位信号使系统复位。这样,在程序运行出错时就可很快地得到纠正。