1
电子说
数码管是单片机的常用输出设备,其接法灵活,硬件接线较繁琐。为方便自己做实验,笔者利用手头的元器件制作了一块多功能数码管显示实验板。这块实验板由八位共阳数码管实验模块和四位共阴数码管实验模块组成。
本实验板电路分成两部分,第一部分是基本显示部分(图1),第二部分是译码器部分(图2)。两部分通过拨码开关连接,可根据需要设置是否使用译码器芯片。
基本显示部分
图1所示的基本显示部分电路是用单片机控制数码管比较常见的电路,多位数码管的显示一般采用动态扫描的方式。共阳型数码管LED1和LED2组成八位共阳数码管实验模块,JP1为字形段码输入端(低电平驱动),JP2则为位选信号输入端(低电平扫描信号有效);共阴型数码管LED3组成四位共阴数码管实验模块,同样利用JP1作为字形段码输入端(高电平驱动),JP3为位选信号输入端(高电平扫描信号有效)。
图1
译码器部分
在使用基本显示部分做实验时最多会用到16个I/O口,这样太占单片机资源了。为了减少数码管占用单片机I/O口的数量,也考虑到数码管在实验中的接法较灵活,该实验板上还集成了数码管专用的显示译码器(74LS47)和用于产生位扫描信号的3-8线译码器(74LS138),译码器部分的电路如图2所示。
图2
74LS138是很常用的3-8线译码器,图3是它的逻辑符号和引脚图,表1是它的真值表。A0~A2为BCD码输入引脚,Y0~Y7为扫描码输出引脚,G为使能端。如果在A0~A2端依次输入BCD码0~7,则Y0~Y7依次输出低电平。使用了3-8线译码器之后,不需要在微控制器中用软件一位一位产生扫描信号,节省了I/O口资源。
74LS47是将BCD码转换成7段LED数码管显示相应数字所需字形段码的译码驱动器,图4是它的逻辑符号。A0~A3是BCD码输入端,a~g为驱动数码管的输出端,由A端输入的BCD码经过芯片转化为二进制字形段码送至数码管以显示出相应的数字,较为方便。该芯片为低电平驱动,可驱动共阳型数码管。
JP5为译码器芯片的5V电源接口,也为整个实验板供电。在拨码开关S1、S2拨到ON端的情况下,两个译码器都连接在电路中,应从JP4接口的高3位输入扫描信号,低4位输入显示数据段码。8位共阳数码管实验模块只需要7根线即可工作。
图3
表1 74LS138的真值表
图4
制作与使用
整个实验板电路并不复杂但比较繁琐,制作时一定要细心,特别是一定要熟悉数码管的管脚排列。笔者用万用电路板自制的本实验板如图5和图6。JP1~JP5全部使用排针,这几处排针和两个拨码开关的设置使接线灵活、方便。需要使用译码器时,不管是使用其中一个还是两个都使用,只需将对应的译码器输出口的拨码开关打开,信号从相应的端口插座输入即可。
使用时需注意三点:
1、由于实验板中的LED1、LED2与LED3共用一条数据总线,又共阳数码管和共阴数码管分别需要低电平驱动和高电平驱动,所以共阳数码管实验模块和共阴数码管实验模块是不能同时使用的,当然,在一个系统或一次实验中也很少出现既用到共阳型数码管又用到共阴型数码管的情况。
2、考虑到在单片机系统中常使用共阳型数码管,译码器电路是针对八位共阳数码管实验模块设计的,与四位共阴数码管实验模块没有联系,使用四位共阴数码管实验模块时必须将拨码开关设置为断开状态。
3、显示译码器74LS47不能产生小数点的显示段码,如果需要显示小数点还得靠微控制器的软件来控制。
图5
图6
全部0条评论
快来发表一下你的评论吧 !