STM32F103C8T6 驱动2位共阳数码管(基于 74HC595 和 PNP 三极管)

STM32F103C8T6 驱动2位共阳数码管(基于 74HC595 和 PNP 三极管)

1. 器件选型

  • STM32F103C8T6
  • 共阳数码管
  • 74HC595
  • PNP 三极管

2. 思路

        整体设计思路是通过 STM32F103C8T6 控制 74HC595 和 PNP 三极管,实现共阳数码管的显示功能。

具体如下:

  • STM32 的 PA4、PA5、PA6 分别连接 74HC595 的 DS、ST、SH
    • STM32发送串行数据至 74HC595
    • 74HC595转换为并行数据(一个字节正好对应数码管的八个脚)
    • 并行数据驱动数码管位脚
  • PB0、PA7 连接 PNP 三极管基极
    • 通过控制基极电平实现三极管通断来完成位选
    • 快速切换位选,来显示两位数码管

主控原理图:

3. 74HC595 原理

  • 作用:74HC595 的作用是将串行数据转换为并行数据输出,从而减少对主控芯片 GPIO 的占用。​
  • 两个寄存器:
    • 移位寄存器:8 位,接收串行数据,在 SH 上升沿时从 DS 端移入数据,内部数据依次右移。​
    • 锁存寄存器:8 位,锁存移位寄存器的数据,通过 Q0-Q7 输出并行信号驱动外部设备。
  • 时序操作:
    • DS:根据要发送数据位设高 / 低电平(1/0)。​
    • SH:每设置好一位 DS 电平,先拉低再拉高(产生上升沿),将该位数据移入移位寄存器,8 位数据需 8 次操作。​
      • 意思就是每一个上升沿
      • ds就会传一位数据到锁存寄存器
    • ST:8 位数据移完后,先拉低再拉高(产生上升沿),将移位寄存器数据锁存到存储寄存器并输出并行信号。
      • 意思就是根据锁存寄存器的值,去驱动对应数码管八个脚亮或者灭

595原理图:

4. 数码管原理

  • 数码管含 7 段发光管 + 1 个小数点,可显 0-9 及部分字母。​
  • 多位共阳数码管中,每个的公共端是位选端:第一位公共端控制第一位,第二位公共端控制第二位。​
  • 点亮规则:位选端接高电平选中对应位;段选引脚接低电平,对应段点亮。​
  • 段选决定数字:如显 “0” 需除
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值