74HC138芯片实现位选信号的发送

 74HC138芯片实现位选信号的发送

        段选信号需要7或8位(如果有小数点就需要8位),通常分配一个P口作为段选信号输出,我们选P0口作为段选信号输出,若其余P口可用于位选信号,1位位选对应1位数字,3个P口全用于位选的话,可以对应3x8=24位数字。为增加显示位数节约IO口资源,循环移位的位选信号可利用3-8译码器实现,仅用3个IO口,就可以实现8位数字显示控制。

一、38译码器引脚功能:

38译码器,就是把 3 种输入状态翻译成 8 种输出状态,如图,A B C端为输入端(输入引脚),E1 E2 E3为使能端(使能引脚,对译码器进行控制),E1端输入为1 E2 E3端输入为0时,译码器正常工作。Y0--Y7为输出端,(我们要注意到,使能端的E2E3低电平时有效,输出端为二进制输入端的非值)。

真值表: 

            输入端                   输出端

74HC138芯片实现位选信号的发送_第1张图片
74HC138芯片实现位选信号的发送_第2张图片

二、电路连接:

说明:P0.0--0.2连接译码器的输入端,在keil中编译代码成功后,P0.0--0.2将输出值,通过译码器实现位选信号的发送(在此用二极管的点亮来证明),P2口8位作为段选信号输出(假设数码管有小数点)


74HC138芯片实现位选信号的发送_第3张图片

程序代码:

#include

void main()

{  

unsigned char numbers[]={0x07,……};

while (1) {

for(i=0;i<8;i++){ 

P2 = numbers[x];

P0 =i;

delay(1000ms);

}

} }

你可能感兴趣的:(74HC138芯片实现位选信号的发送)