汽车尾灯控制系统Multisim仿真

仿真图:

在这里插入图片描述

功能简介:

采用6个LED灯作为模拟车尾灯,分为三个分别作为左右转弯灯
采用译码器芯片74LS138加多个门电路驱动LED灯
具有三个功能按键分别为左转、右转和刹车功能
采用标准的信号发生器经过触发器后作为系统芯片的时钟源

芯片介绍

74LS138芯片的特点如下:

  1. 功能:74LS138是一个3-8译码器,用于将输入的二进制地址信号映射到相应的输出线上。它可以实现从8个输入端口选择一个激活的输出端口。
  2. 输入和输出:该芯片提供三个输入引脚,用于接收三位二进制地址信号。它还提供八个输出引脚(Y0-Y7),对应于八个可能的输出端口。
  3. 使能控制:74LS138具有两个使能端口,包括一个全局使能(G)端口和三个片选使能(E1, E2, E3)端口。通过控制使能信号,可以选择性地激活特定的输出端口。
  4. 工作电压:74LS138通常在供电电压为5V的数字电路中使用,但也可以工作在其他合适的电压范围内。
  5. 快速响应时间:74LS138具有较短的延迟时间和快速的响应速度,在许多应用场景下都能满足高速计算要求。

74F122芯片的特点如下:

  1. 功能:74F122是一个可重触发的单稳态多谐振荡器(MonostableMultivibrator),用于产生单脉冲宽度可调的输出信号。
  2. 工作电压:74F122通常工作在5伏(V)的电压范围。
  3. 输入和输出电平:74F122的逻辑电平定义为低电平(0伏)和高电平(接近电源电压,通常为5伏)。
  4. 响应时间:74F122具有非常短的响应时间,适用于高速应用。
  5. 输入阻抗:74F122具有较高的输入阻抗,可以接受来自其他逻辑门或设备的输入信号。
  6. 输出驱动能力:74F122的输出具有较强的驱动能力,可以驱动较重的负载。
  7. 封装形式:74F122芯片可以以多种封装形式提供,例如DIP(双列直插封装)或SOP(小轮廓封装)。

设计文件:
链接:https://pan.baidu.com/s/10Sf-HdTc9itZ_mdRlTNEyQ?pwd=14jf

  • 0
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
汽车尾灯显示控制电路multisim仿真源文件+设计文档说明,multisim10及以上版本的软件可以正常打开仿真。 1. 设计内容要求 设汽车尾部左右两侧各有3个指示灯(用发光二极管模拟),有四种显示模式如下: 汽车正常运行时,尾灯全部熄灭; 右转弯时,右侧3个指示灯按右循环顺序点亮,每灯只亮0.5s; 左转弯时,左侧3个指示灯按左循环顺序点亮,每灯只亮0.5s; 临时刹车时,左右两侧所有指示灯同时闪烁。 2. 方案分析 汽车尾灯由3个按键控制,分别对应着运行、左转、右转、刹车功能。用开关选择控制汽车正常运行、左转弯、右转弯和刹车时尾灯的情况。 本次设计方案主要有四个模块:脉冲发生电路、开关控制电路、三进制电路和译码驱动电路。通过把这四个模块组合连接来实现汽车尾灯控制。首先,通过555定时器构成的多谐振荡器产生脉冲信号,该脉冲信号用于提供给74LS160d构成的三进制计数器和开关控制电路中的三输入与非门的输入信号,用于实现刹车时,汽车尾灯的闪烁功能。其次,74LS160构成的三进制计数器用于产生循环信号,此信号提供左转、右转的原始信号。最后,左转、右转的原始信号通过6个与非门以及74LS160d提供的高低电位信号,将原始信号分别输出到左、右的3个汽车尾灯上。得到的信号即可输出到发光二极管上,实现所需功能。
移位寄存器汽车尾灯控制电路可以使用74HC595芯片来实现。以下是控制8个灯的电路设计步骤: 1. 连接74HC595芯片的引脚:将74HC595芯片的VCC引脚连接到5V电源,将GND引脚连接到地。将SER(串行数据输入)引脚连接到Arduino的数字口9,将SRCLK(移位寄存器时钟输入)引脚连接到数字口10,将RCLK(输出寄存器时钟输入)引脚连接到数字口11,将OE(输出使能端)引脚接地。 2. 连接LED灯:将8个LED灯的负极(短腿)连接到地,将正极(长腿)连接到8个330Ω电阻上,将电阻的另一端连接到74HC595芯片的Q0-Q7引脚。 3. 编写程序:使用Arduino编写程序,控制74HC595芯片的输出状态,从而控制LED灯的亮灭。以下是示例代码: ``` #include <SPI.h> #define SER_Pin 9 #define SRCLK_Pin 10 #define RCLK_Pin 11 byte LEDdata = 0; void setup() { pinMode(SER_Pin, OUTPUT); pinMode(SRCLK_Pin, OUTPUT); pinMode(RCLK_Pin, OUTPUT); } void loop() { LEDdata = 0b00000001; // 第一个LED灯亮 shiftOut(SER_Pin, SRCLK_Pin, MSBFIRST, LEDdata); digitalWrite(RCLK_Pin, HIGH); delay(500); LEDdata = 0b00000010; // 第二个LED灯亮 shiftOut(SER_Pin, SRCLK_Pin, MSBFIRST, LEDdata); digitalWrite(RCLK_Pin, HIGH); delay(500); // 以此类推,控制每个LED灯的亮灭 LEDdata = 0b00000000; // 所有LED灯熄灭 shiftOut(SER_Pin, SRCLK_Pin, MSBFIRST, LEDdata); digitalWrite(RCLK_Pin, HIGH); delay(500); } ``` 4. 将程序上传到Arduino板上,即可控制8个LED灯的亮灭。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值