加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • 一、前言
    • 二、测试电路
    • 三、漏极输出
    • 四、输入端口
    • 五、驱动LED
    • ※ 总  结 ※
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

如何3.3V单片机IO口控制 5V LED?

10/10 14:20
3040
阅读需 6 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

一、前言

今天看到网络上一个短视频,一位面试官询问学生,这个单片机电路有什么问题? 如何解决?

这个问题就在于工作在3.3V下的STM32单片机是无法关断 PNP 三极管的,这是因为它的发射极连接到5V电压。面试官看到学生无法回答如何来解决这个问题,于是给出了解决这个稳妥的答案,那就是将 STM32的端口设置为 漏极开路模式,这样就可以关断三极管了。

实际是,这个问题真正的答案是在三极管的基极增加一个 4.7k欧姆左右的分压电阻,才能够实现对连接到5V的PNP三极管开关控制。下面让我们通过实验来检查一下吧。

二、测试电路

为了测试IO的开关电压特性,将 F103单片机的四个端口引至外部实验面包板。设计单面电路板,适合一分钟制板。

 

ADTest2024OctoberTeSTSTMIO.PcbDoc

▲ 图1.2.1 测试PCB

  一分钟之后得到测试电路板,焊接电路,将四个 IO端口连接到测试面包板上。设置四个IO口,分别是 漏极开路、推挽输出、带有上拉电阻的输入端口,带有下拉电阻的输入端口。端口的特性,在 CubeMX 中进行设置。下面就可以分别测试这四个端口的输出耐压了。

三、漏极输出

测试漏极开路输出端口。周期在该端口输出 0 和 1。可以看到该端口的信号波形呈现周期低电平以及浮动干扰信号。在OB输出1 的时候,该端口呈现高阻状态。下面,测试一下漏记开路的时候能够上拉到多高的电压。

d:NutdiskMicroVideoG4M1727837766_1920_1080.MP4

▲ 图1.3.1 OD输出端口的波形

  使用一个 10k欧姆电阻,将 漏极开路的 IO 连接到 5V。此时,该端口的电压为 3.7V。通过内部结构可以看到,在端口有钳位二极管,将输入端口电压钳位的工作电压。只有某些5V容忍端口,钳位二极管上拉到 更高的 电压,此时输入电压才能够达到5V。不过现在 F103 单片机的这个端口只能上拉到 3.3V。

在F103数据手册中,关于GPIO的 5V 容忍性 说明中,只有输入端口才能够容忍5V输入。一旦端口设置为输出状态,该端口就不再允许电压达到5V了。下面我们测量一下输入端口是否允许电压超过5V。

四、输入端口

将10k欧姆的电阻修改在输入端口,仍然上拉到5V,该端口电压还是被钳位在 3.7V。由此可见,该输入端口也不是5V容忍的端口。下面查看一下 STM32的数据手册,确认该端口是否为 5V容忍的。

在STMF103数据手册中,现在实验所使用的PB12到PB15端口 都是5V容忍的。这就奇怪了,为什么上拉电阻达到 5V,该端口的电压无法上升的5V呢。无论是输入端口还是 漏极开路端口。

五、驱动LED

将一个红色 LED 串联330 欧姆电阻,上拉到 5V,连接到单片机的输出端口。可以发现 无论是 漏极开了 ,还是推挽输出,LED都可以正常闪烁。这有可能是因为 LED的 开启电压超过 1.3V,所以,3.3V工作的单片机可以关断这个连接到5V电压的LED。

▲ 图1.5.1 驱动上拉5V的LED

  上面是测试了直接驱动上拉到5V的LED的情况。下面,再测试一下使用 PNP三极管驱动LED的情况。看是否能够对 PNP三极管进行关断。

使用 8550 这颗 PNP 三极管搭建电路,可以看到,LED 并没有闪烁。这说明,使用 3.3V 的单片机,驱动 PNP 三极管,是无法将三极管关断的。

下面给电路增加一个基极分压电阻。这个电阻为 4.7k欧姆,这样在剩余的电压中,分压到三极管基极只有 0.43V。就不足以将PNP三极管打开了。测试一下这种情况。可以看到,此时LED开始闪烁。这说明只要增加一个基极分压电阻,便可以控制PNP三极管的打开与关断了。

※ 总  结 ※

本文测试了 3.3V工作的单片机 控制5V负载的情况。单片机IO口可以直接控制连接到5V的LED的打开与关断,如果控制PNP三极管,通过增加基极分压电阻,也可以实现PNP三极管的打开与关断。

相关推荐

电子产业图谱

公众号TsinghuaJoking主笔。清华大学自动化系教师,研究兴趣范围包括自动控制、智能信息处理、嵌入式电子系统等。全国大学生智能汽车竞赛秘书处主任,技术组组长,网称“卓大大”。