一种实用低成本智能仪表显示电路设计
发布时间:2006-10-14 4:12:58   收集提供:gaoqian
徐献灵

  (广东农工商职业技术学院 电子与信息工程系 广东 广州 510507)

  摘 要:设计了一种实用的单片机系统显示电路,该电路结构简单,使用可靠,而且可以大大地降低硬件成本,具有一定的应用价值。

  关键词:单片机;显示电路;可靠性;低成本

  显示电路是智能仪表的重要功能电路之一,为简化电路、降低成本,通常采用动态显示方式来实现,使用的集成电路有8279,8155,8255,Max7219等,但这些集成电路存在体积大、价格贵的缺点,若在一些功能不是太复杂的系统中选用这些集成电路是不可取的。随着智能仪表技术的不断发展,如何有效地设计低成本、小体积的显示电路成为电路设计者必须考虑的问题。本文提出了一种实用的低成本多位数码显示电路的设计方法。

  1 电路的硬件连接和工作原理

  图1所示为单片机系统构成的8位LED动态显示电路,该电路以AT89C2051单片机为例。电路使用器件少,仅用到了2片中规模集成电路74LS164和74LS138,占用CPU的I/O线少,特别适合于I/O线不是很多的单片机如AT89C2051/1051,97C2051/1051,PIC16Cxx等系统中使用。

  74LS164为串-并转换移位寄存器,数据端A,B(第1,2脚)接单片机RXD引脚,时钟端CLK接单片机TXD,并行8位数据输出端分别接8个数码管的A,B,C,D,E,F,G,H;74LS138为3线~8线译码器,译码器输入端A,B,C分别接AT89C2051的P1.0,P1.1,P1.2,译码器输出端Y0~Y7接8个数码管从低位到高位的共阴极端。

  若所用的单片机不是AT89C2051,而选用了其他没有串行口的单片机如AT89C1051,则74LS164的数据输入端A,B可连接到P1.3,CLK端可连接到P1.4,这样设计不会影响系统的功能,仅仅在编写程序时略有差别。若系统只需至多4位数码管显示,则74LS138可用74LS139(2线~4线译码器)代替。

  电路中,要显示的数字所对应的字形码通过串行口送到74LS164,74LS138在同一时刻只有1位输出端为低电平,其他7位输出全为高电平,为低电平的对应的数码管选中,因此作为数码管显示时的位选信号。系统在工作时,通过74LS164每次输出一个字形码,同时控制74LS138的译码器输入端A,B,C的电平状态,即从P1.0,P1.1,P1.2送出相应的电平,译码后使得要显示的对应位数码管共阴极端依次为低电平,即依次选中要显示的位,完成整个显示电路的动态扫描,依此扫描8次,完成8位数据的显示。



  2 软件编写

  以AT89C2051单片机系统构成的8位LED动态显示电路的显示子程序流程如图2所示。

  设待显示的数据放在显示缓冲区中,显示缓冲区的地址为70H,71H,…,77H,依次存放从低位到高位待显示的数据。则显示子程序清单如下:



  编写该程序时要注意程序中的延时时间的大小,延时过长会造成显示不连续,延时过短,又会出现闪烁现象,经多次调试在该设计中最佳延时为4 ms。



  3 结 语

  本显示电路硬件结构简单,软件实现也很容易,而且性能稳定、成本低。经过反复测试,效果很好,在一般的单片机控制系统中都可以使用该显示电路,具有一定的通用性。因此,本显示电路具有一定的参考价值。在实际使用中,根据需要,可以在74LS164和74LS138的输出端增加驱动电路如74LS07等,以增加LED数码管的亮度。


摘自 现代电子技术
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50