在生活中,经常有些电器件在工作时,其电源电压需要保持在一定的电压范围内,否则器件容易受损,这时需要对电压进行实时的检测。假设某个电子器件的电压工作范围为3~5V,且电压的变化比较缓慢,需要对电压进行实时的监测,如果电压不在工作范围内则进行报警,而并不需要得到精确的电压数据。下面就此例,设计一个既简单又实用的数据采集监测系统。
  由于是一路电压信号而且变化相对缓慢,所以不需要传感器、线性放大器、多路模拟开关和采样保持器等,报警部分可以用红黄绿灯来显示电压是否正常,所以整个系统只需要一篇A/D转换器、一片单片机、红黄绿灯各一个。
  根据简单实用的原则来选择芯片:由于需要的精度不高,ND转换器、选择8位的ADC0804,单片机芯片可选择MCS-51系列的8051芯片(由于软件程序选择8051,不需要扩展程序存储器,且比较实惠)。另外红黄绿灯各一个。
  电路:由于工作电压的动态范围为3~5V,ADC0804的VFEF2(参考电压输入端)接3V电压,所以输入的电压范围为0-6V,存储时OV为OOH,6V为FFH,由256/6*3=128可知3V为80H,同理5V为D5H,ADC0804的CLKI端外接一个电阻和电容来提供时钟信号,参数R=10kΩ,C=150pF.振荡频率FCLK=640kHz.转换时间约为100us.ADC0804转换器具有三态输出锁存器,可直接驱动数据总线,故与8051单片机的接口电路比较简单,如下图所示。
  ADC0804的数据输出线DB7~0直接与8051的数据线PO.O~0.7相接1RD,WR和INTR也直接与8051的相应端子相接。Pl.l.P1.2,P1.3分别接红黄绿灯。
  软件设计:定时采集数据,每隔五分钟采一次数据,每次采集十个样本点,存储后进行分析,与3V和5v进行比较,大于5V时亮红灯,小于3V时亮黄灯,工作电压正常时亮绿灯。
  根据上述硬件电路如上图的要求,建立的程序框图如下图所示。
  由该框图出发建立的源程序如下:
  设计过程中以简单实用为准则,从整个设计过程来看,首先分析系统要求,然后选择元器件,设计电路图及软件程序,最后仿真。所设计的系统符合要求,且容易实现。

  如果系统要求的功能较多,则可以从设计好的系统往外扩展,例如扩展显示、打印等功能,成为一个比较完善的数据采集监测系统。