通过以上两个方案,我们发现方案二总体比方案一好。方案一虽然硬件电路简单,但造价较高,且在编写程序实现所要求的功能时较难,而方案二所用的显示模块是比较熟悉的数码管,编写程序是相对容易,且电路造价不高,因此,综合考虑之后决定采用方案二。Р硬件单元电路设计РLED数码管反应测试仪以STC89C52单片机为核心,起着控制作用,另外系统中使用8255A芯片作为扩展I/O作用[3]。系统包括四位数码管显示电路,按键电路,复位电路。反应测试仪的总体框图如下图3所示:Р8255AРSTC89C52Р复位电路Р数码管显示Р按键电路模块Р图3 反应测试仪总体框图Р复位电路Р在系统中,有时会出现显示不正常,也为了调试方便,我们需要设计一个复位电路,STC89S52单片机复位电路共有上电复位、按键电平复位和按键脉冲复位。工作原理是:上电瞬间,RC电路充电,RESET引脚端出现正脉冲,只要RESET保持10ms以上高电平,就能使单片机有效的复位。复位电路如下图4所示[4]:Р图4 复位电路原理图Р数码管显示电路Р本系统采用六位七段共阳数码显示管,由8255芯片的PA口控制数码管的位选,PB口输出数据给数码管[5]。其数码管段值控制如下表1所示:Р 表1 数码管段值控制Р段值РgРcРdpРdРeРbРfРaРPB控制位РPB7РPB6РPB5РPB4РPB3РPB2РPB1РPB0Р在这里我们使用的是8段数码管显示(包含小数点),通常在显示上我们采用的方法一般包括两种:一种是静态显示,另一种是动态显示。其中静态显示的特点是显示稳定不闪烁,程序编写简单,但占用端口资源多,所耗得电能较大;动态显示的特点是显示稳定性没静态好,程序编写复杂,但是相对静态显示而言占用端口资源少。在本设计中,为了减少端口资源,降低电能消耗,采用的是动态显示方法[6]。Р图6 数码管显示电路原理图[7]Р反应测试仪器主程序流程图