译码器的电路原理(译码器在流水灯电路中的应用和解释)
译码器的电路原理(译码器在流水灯电路中的应用和解释)三八译码器实现流水灯 74HC138图形符号74HC138一共有16个引脚,16脚是VCC,8脚负极;A0、A1、A2是三八译码器的输入端子,每一个输入端子有两个输入状态(1或0),三个输入端子一共有8个输入状态;Y0~Y7是译码块输出端子;E1、E2、E3是译码块的使能端子,只有E1与E2同时接到负极,E3接到正极,译码块才能具备正常工作条件。三八译码块真值表
译码器74HC138应用
STC89C52RC只有32个I/O,如果控制一些复杂的电路,这些I/O就要捉襟见肘了,如何扩展I/O呢?74HC138是一款三八译码器,能将三种输入状态译码成八种输出状态,也就是说,只需要占用三个I/O就可以扩展为八个I/O。74HC138译码器外观
74HC138
74HC138译码器图型符号,
74HC138图形符号
74HC138一共有16个引脚,16脚是VCC,8脚负极;A0、A1、A2是三八译码器的输入端子,每一个输入端子有两个输入状态(1或0),三个输入端子一共有8个输入状态;Y0~Y7是译码块输出端子;E1、E2、E3是译码块的使能端子,只有E1与E2同时接到负极,E3接到正极,译码块才能具备正常工作条件。
三八译码块真值表

三八译码器实现流水灯
1.电路
元器件清单
程序设计(3.9.1)
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit A0=P1^0;
sbit A1=P1^1;
sbit A2=P1^2;
void delay();
void main()
{
while(1)
{
A0=0;A1=0;A2=0;//Y0 0;
delay();
A0=1;A1=0;A2=0;//Y1 0;
delay();
A0=0;A1=1;A2=0;//Y2 0;
delay();
A0=1;A1=1;A2=0;//Y3 0;
delay();
A0=0;A1=0;A2=1;//Y4 0;
delay();
A0=1;A1=0;A2=1;//Y5 0;
delay();
A0=0;A1=1;A2=1;//Y6 0;
delay();
A0=1;A1=1;A2=1;//Y7 0;
delay();
}
}
void delay()
{
uint i,j;
for(j=500;j>0;j--)
for(i=110;i>0;i--);
}
程序解释
为了程序布局美观,可以在主函数之前先声明函数,在主函数之后再写完整,上面的程序在主函数之前先声明“void delay();”,在主函数之后编写该函数相对应的内容。