1. 74LS138起片选作用时是怎么与51单片机相连
74LS138 为3 线-8 线译码器,当一个选通端(E3)为高电平,另两个选通端(E1)和/(E2))为 低电平时,可将用单片机3个引脚控制地址端(A0、A1、A2)的二进制编码在一个对应的输出端以低 电平译出。这个低电平就是片选信号
2. 51单片机74H138驱动数码管
不知道你这个图是从哪里抄来的,但不能你找个图就说是标准的吧,它就不能有错误吗?也许是哪个二五眼画的呢,就可以随便加上拉电阻了,又能怎么着。
其实,单片机内部确实有上拉电阻的,外部确实也不用加的。别说是74HC138,就是74LS138也不用加的。没准画图人的水平还没有你高呢,就这么画了。
3. 74L138译码器对51单片机实现什么功能
74L138译码器对51单片机实现功能当一个选通端(E3)为高电平,另两个选通端(E1)和/(E2))为低电平时,可将用单片机3个引脚控制地址端的二进制编码在一个对应的输出端以低电平译出。
若将选通端中的一个作为数据输入端时,74LS138还可作数据分配器用与非门组成的3线-8线译码器74LS1383线-8线译码器74LS138的功能表无论从逻辑图还是功能表我们都可以看到74LS138的八个输出引脚,任何时刻要么全为高电平1—芯片处于不工作状态。
译码器工作原理:
译码器是一种具有“翻译”功能的逻辑电路,这种电路能将输入二进制代码的各种状态,按照其原意翻译成对应的输出信号。有一些译码器设有一个和多个使能控制输入端,又成为片选端,用来控制允许译码或禁止译码。
在图1中,74138是一种3线—8线译码器 ,三个输入端CBA共有8种状态组合(000—111),可译出8个输出信号Y0—Y7。这种译码器设有三个使能输入端,当G2A与G2B均为0,且G1为1时,译码器处于工作状态,输出低电平。当译码器被禁止时,输出高电平。
4. 单片机最小系统连接74ls138
检查mosi、miso、sck、reset、vcc、gnd这几根线有没有接错。量下m16的电源端(直接量芯片引脚),也可能是电源故障。检查晶振,有没有接错,对地接两个
5. 为啥74lc138译码器的51单片机一次只能控制一个LED灯
74ls138译码器,只能是八选一,控制LED灯也只能八个中选一个点亮,如果需要点亮八个LED灯中间的 任意一个 或者 几个 或者 全亮,可以选择 74ls164移位寄存器 或者 74LS595锁存器就可以。
6. 求一个用51单片机和74ls138译码器电子时钟程序 有注释的而最好
#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器
#include "ds1302.h"
typedef unsigned int u16; //对数据类型进行声明定义
typedef unsigned char u8;
sbit LSA=P2^2;
sbit LSB=P2^3;
sbit LSC=P2^4;
char num=0;
u8 DisplayData[8];
u8 code smgan[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
/*******************************************************************************
* 函 数 名 : delay
* 函数功能 : 延时函数,i=1时,大约延时10us
*******************************************************************************/
void delay(u16 i)
{
while(i--);
}
/*******************************************************************************
* 函 数 名 : datapros()
* 函数功能 : 时间读取处理转换函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void datapros()
{
Ds1302ReadTime();
DisplayData[0] = smgan[TIME[2]/16]; //时
DisplayData[1] = smgan[TIME[2]&0x0f];
DisplayData[2] = 0x40;
DisplayData[3] = smgan[TIME[1]/16]; //分
DisplayData[4] = smgan[TIME[1]&0x0f];
DisplayData[5] = 0x40;
DisplayData[6] = smgan[TIME[0]/16]; //秒
DisplayData[7] = smgan[TIME[0]&0x0f];
}
/*******************************************************************************
* 函数名 :DigDisplay()
* 函数功能 :数码管显示函数
* 输入 : 无
* 输出 : 无
*******************************************************************************/
void DigDisplay()
{
u8 i;
for(i=0;i<8;i++)
{
switch(i) //位选,选择点亮的数码管,
{
case(0):
LSA=0;LSB=0;LSC=0; break;//显示第0位
case(1):
LSA=1;LSB=0;LSC=0; break;//显示第1位
case(2):
LSA=0;LSB=1;LSC=0; break;//显示第2位
case(3):
LSA=1;LSB=1;LSC=0; break;//显示第3位
case(4):
LSA=0;LSB=0;LSC=1; break;//显示第4位
case(5):
LSA=1;LSB=0;LSC=1; break;//显示第5位
case(6):
LSA=0;LSB=1;LSC=1; break;//显示第6位
case(7):
LSA=1;LSB=1;LSC=1; break;//显示第7位
}
P0=DisplayData[i];//发送数据
delay(100); //间隔一段时间扫描
P0=0x00;//消隐
}
}
/*******************************************************************************
* 函 数 名 : main
* 函数功能 : 主函数
* 输 入 : 无
* 输 出 : 无
*******************************************************************************/
void main()
{
Ds1302Init();
while(1)
{
datapros(); //数据处理函数
DigDisplay();//数码管显示函数
}
}
7. 在单片机电路中,74LS138是如何产生片选信号的
74LS138
为3
线-8
线译码器,当一个选通端(E3)为高电平,另两个选通端(E1)和/(E2))为
低电平时,可将用单片机3个引脚控制地址端(A0、A1、A2)的二进制编码在一个对应的输出端以低
电平译出。这个低电平就是片选信号
8. 51单片机74hc138地址怎么定义
138,输入ABC,输出Y0~Y7。ABC当然必须有明确的输入,Y0~Y7才能获得明确的输出,8选一,ABC从000~111,分别对应Y0~Y7之一有效。
9. 用51单片机和74LS138译码器控制数码管的位选,可是上电后译码器和数码管的引脚都有电平变化,管却不亮。
数码管分共阴和共阳,不同的电路对应不同的型号,如果你要是用错了型号就不会亮了。
如果你感觉电流不够,可以用9012三极管进行功率放大,就可以带动数码管了。
10. 用51单片机和3个74LS138实现流水灯,程序怎么写在线等。
3个74138级联就起来就可以了,3个74138就变成5-32译码器 编程与一个74138和51单片机同理