从硬件和软件两个方面介绍了以STC89C52RC单片机为核心的智能数显质量测量系统的组成。利用模块化设计,系统的硬件分成质量数据采集模块、单片机控制数据处理模块和人机交互界面模块等三大部分;软件部分运用单片机C语言进行编程,实现该设计的全部控制功能。
在现代商业贸易和日常生活中,数显质量测量仪即智能电子称是常用的电子衡器,但目前市场上使用的称量工具结构复杂、运行不可靠成本高、精度稳定性不好、易损件多、维修困难等。本文基于STC89C52单片机,研发了一种使用键盘输入数据,操作简单方便;液晶显示所称量的物品质量、单价和物品总价;具有去皮功能;当物品重量超过电子秤量程,即过载情况下具有超重报警的功能,是一款小型化、重量轻、携带方便、计量准确、工作可靠、读数直观的智能电子称。
1 系统总体方案设计
本设计基于52系列单片机STC89C52,利用了模块化设计的思想,将系统的硬件分成质量数据采集模块、单片机控制数据处理模块和人机交互界面模块等三大部分。
质量数据采集模块主要由压力传感器和信号的前级处理部分构成,包括专用仪表放大器AD620、运算放大器UA741和A/D转换器ADC0804;单片机控制数据处理模块主要由STC89C52及内部的程序实现;人机交互界面包括键盘输入和点阵式液晶屏显示,主要使用微动开关和1602液晶屏,可以方便地调节单价和直观地显示数字。
软件部分运用单片机C语言进行编程,实现了该设计的全部控制功能。该数显质量测量仪可以实现基本的称重功能(称重误差不大于±0.0 10kg),并发挥部分的显示单价和总价格的功能,可以随意输入要求范围的商品单价,还具有超量程的报警功能,其功能框图如图1所示。
2 系统硬件电路设计
2.1 数据采集及滤波放大电路
传感器DET输出的电压信号通过C3,C4小电容高频滤波再通过CE1,CE2大电容低频滤波后作为专用仪表放大器AD620的输入,进行线性放大,UA741以及后面的电位器组成调零部分,如图2所示。传感器采用桥式电路加压敏元件进行构建;前级放大器采用专用的仪表放大器芯片AD620,其增益可以通过外接电阻加以调节,且通过一路电压跟随电路可以调节AD620的参考电压,达到了电路调零的功能。
2.2 数模转换电路
ADC0804是一个单通道8 b分辨率A/D转换器,输出有三态锁存,可直接与系统数据线相连。启动信号为CS和WR,转换结束信号为INTR,低电平有效,其地址为0FFD4H。输入电压范围为0.3~18V,工作电压为4.5~6.3VDC,最佳工作电压为5.0V,ADC0804的转换频率为:
Vin(+),Vin(-)为输入模拟电压,DB0~DB7输出转化后的数字量,CS为使能信号,RD和WR为读/写控制信号,它们都由单片机控制。
2.3 主控制电路
本设计单片机的晶振频率为11.0592 MHz,有手动复位和上电自动复位两种方式,报警电路的蜂鸣器采用9013三极管进行驱动放大。 S2,S3,S4分别为单价位数调节、单价递增和递减按键。排阻RP1是P0口的上拉电阻。主控制电路如图3所示。
STC89C52单片机是ST89C系列中的增强型高档产品,片内存储器容量是STC89C51的2倍,即有8 KB的FLASH程序存储器和256 B的RAM。另外,它还增加了功能极强且具有独特应用的16 b定时/计数器2等多种功能。