《基于89C52单片机的实用八路物位测量仪.docx》由会员分享,可在线阅读,更多相关《基于89C52单片机的实用八路物位测量仪.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于89C52单片机的实用八路物位测量仪zhangting导语:本测量仪的信号采样通过P0口的八根输入线可承受八路经过整形后的标准TTL电平,因此可测量不同传感器传来的脉冲型物位采样信号。1、总体构成本测量仪的信号采样通过P0口的八根输入线可承受八路经过整形后的标准TTL电平,因此可测量不同传感器传来的脉冲型物位采样信号,只要在原始信号根底上加以整形处理即可,每来一个脉冲均被P0口捕捉到并可以通过软件编制使脉冲计数增一,定时读取计数和便可以换算成相应的物位情况。通过P3.3P3.5三条线与串行显示驱动器Max7219的连接加以软件编程可完成八位数码管显示驱动,利用P1.3P1.6四条口线接入四
2、个按键,完成按键操纵,利用P2口作为八路输出控制,可驱动八路固态继电器。详细组成见图1。2、硬件线路设计2.1资源分配AT89C52芯片是基于MCS-51构造的高集成度8位微控制器,其主要特性是具有一个用于多处理器通讯的增强型串口和一个增/减定时器计数器,专门适用于控制应用。选用89C52的另外一个重要原因就是在芯片上实现了256字节的RAM,高端128字节的地址和特殊功能存放器SFR的地址一样,但可以通过不同寻址方式区分,因此解决了测量仪的软件编程所用的RAM空间,不必再另外扩展随机存储器,节约了硬件资源。2.2串行显示设计多位LED显示时,常将所有位的段选线并联在一起,由一个8位IO口控制
3、,也可采用并行扩展口构成显示电路,通常,需要扩展器件管脚的较多,价格较高。在本测量仪中,为了节约I/O口资源,采用了由Max7219芯片构成的串行显示方式。Max7219是串行输入,输出共阴极显示驱动电路,可直接与单片机的3条I/O线接口,十分适用于I/O口线少的系统,并且可以程序控制数码管的亮度。在本设计中,采用P3.3P3.4三条线经74LS273锁存后与Max7219相连接,P3.3、P3.4锁存后分别作为7219串行数据输入信号DIN和时钟信号CLK,P3.5输出口锁存作为LOAD信号。详细硬件线路图见图2。图2主要硬件连接图2.3软件计数器的设计在物位测量仪表中,当传感器书送来的信号
4、为脉冲量时,通常需要通过专门计数器芯片如8254等来完成脉冲的计数,CPU将此变化的计数信号处理后使传感器送来的脉冲的个数与物位信号相对应。而在本设计中,巧妙利用了89C52的P0口资源,将脉冲量整形后直接送至P0口的8条数据线,此时P0口作为数据输入口使用。通过软件设计,每路开拓存贮单元利用片内RAM,当P0口有电平跳变时,相应的计数单元计数加1,通过软件设置定时器,当定时时间到时,读取存储单元数值并清零,这样就完成了软件计数器的功能,节约了硬件资源,降低了硬件本钱。3、软件设计3.1128字节内存分配本测量仪设计的另一大特点就是充分利用了128字节的片内RAM,无外部扩展存储芯片。CPU内
5、部地址从15H开场算起,直到0C5H全部被开拓作标志或者存储单元。详细分配为:15H1CH为各路采样时间,09H0FH为各种标志位,42H5BH为与各路计数有关的计数存储处理单元,5CH63H为物位报警域值对应的计数存储单元,64H6FH和3cH3FH位报警种别等存储单元。通过公道分配,尽管只有128字节RAM,可以知足8路物位测量的数据处理要求。3.2串行显示子程序Max7219驱动的显示局部程序放在DISP显示子程序中,在程序开场完成Max7219的初始化工作,将每次待显示的数据放置于从20H27H开场的显示缓冲区地址中,每路需要送显时,直接调用显示子程序即可。其中显示局部程序如下:DIS
6、P:MOVR0,#20H;R0指向显示缓冲区首地址MOVR1,#01HMOVR3,#08HLOOP3:MOVa,R0MOVR4,A;显示缓冲区数据送R4MOVA,R1lCALLWRITE;数据锁存到273INCR1INCR0DJNZR3,LOOP33.3采样处理子程序调试过的局部源代码如下:LOOP:MOVA,#0FH;主程序循环开场MOVP0,A;先查询P0口,读取射线计数MOVA,P0XCHA,PQXRLA,PQMOVB,AJBB.0,JIA1;第1路有计数,跳至加1程序JIA10:JBB.1,JIA2;第2路有计数,跳至加1程序JIA20:JBB.2,JIA3;.JIA30:JBB.3,
7、JIA4JIA40:JBB.4,JIA5JIA50:JBB.5,JIA6JIA60:JBB.6,JIA7JIA70:JBB.7,JIA8;第8路有计数,跳至加1程序LJMPLOOP01;接着处理键盘的查询3.4主程序局部流程图主程序流程图见图3图3主程序流程图4、完毕语本设计的创新点在于充分利用了AT89C52的硬件资源,实现了软件计数器,可以对脉冲量信号所反映的物位信号通过数码管来显示,显示局部的处理采用Max7219显示驱动器,与软件编程相结合,大大节约了硬件资源,减少了通用的单片机扩展芯片,降低了本钱。本仪表投入消费后本钱比用其它方式组成的系统节约直接硬件本钱每台约300元,投产后产生年经济效益约60万元按每套仪表利润0.8万元计。参考文献:1吴玉平译MCS51微控制器系列用户指南电子工业出版社19952王建萍Max7219串行LED显示驱动器及应用,电子技术应用,1996,63刘志壮洪添胜等一种智能液位检测仪的设计微计算机信息2007年第2-1期P156-1574史源平于京生等基于工控机的多路核子秤微计算机信息2020年第2-1期0
限制150内