news 2026/6/30 10:47:08

江科大-GPIO

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
江科大-GPIO

1.GPIO(General Purpose Input Output)通用输入输出口
>可配置为8种输入输出模式
>引脚电平:0V~3.3V,部分引脚可容忍5V,(根据表中,I/O口电平标注为FT 的,可以容忍5v)


2.每个GPIO端口有:

两个32位配置寄存器 (GPIOx_CRL,GPIOx_CRH),

两个32位数据寄存器(GPIOx_IDR和GPIOx_ODR),

一个32位置位/复位寄存器(GPIOx_BSRR),

一个16位复位寄存器(GPIOx_BRR),

一个32位锁定寄存器(GPIOx_LCKR)。
根据数据手册 中列出的每个I/O端口的特定硬件特征, GPIO端口的每个位可以由软件分别配置成多种模式.

用LED灯来举例,(高电平弱驱动,低电平强驱动

R1调节led亮度,防止烧坏,自己设计电路时不要忘记

PA0 为低电平

PA0 为高电平

这是一个PNP 三极管(S8550)驱动负载的电路,我们先明确各部分连接:

  • 三极管 Q1 (S8550):PNP 型,发射极(E)接 3V3,集电极(C)接负载,基极(B)经 1kΩ 电阻 R1 接 STM32 的 PA0 引脚。
  • 负载:一端接集电极,另一端接地 GND。

⚡ PNP 三极管导通 / 断开条件

PNP 三极管的导通逻辑是:发射极电压 > 基极电压(约 0.7V 差值)时导通,反之截止。

1. 导通条件(负载工作)

PA0 输出低电平(0V)时:

  • 发射极电压 VE​=3.3V
  • 基极电压 VB​=0V
  • 压差 VEB​=3.3V−0V=3.3V,远大于导通阈值(约 0.7V)
  • 三极管饱和导通,电流从 3V3 → 发射极 → 集电极 → 负载 → GND,负载得电工作。
2. 断开条件(负载停止)

PA0 输出高电平(3.3V)时:

  • 发射极电压 VE​=3.3V
  • 基极电压 VB​=3.3V
  • 压差 VEB​=0V,不满足导通条件
  • 三极管截止,集电极无电流,负载失电停止。

这是一个NPN 三极管(S8050)驱动负载的电路,我们先明确各部分连接:

  • 三极管 Q1 (S8050):NPN 型,发射极(E)接地,集电极(C)接负载,基极(B)经 1kΩ 电阻 R1 接 STM32 的 PA0 引脚。
  • 负载:一端接 3V3,另一端接集电极。

NPN 三极管导通 / 断开条件

NPN 三极管的导通逻辑是:基极电压 > 发射极电压(约 0.7V 差值)时导通,反之截止。

1. 导通条件(负载工作)

PA0 输出高电平(3.3V)时:

  • 发射极电压 VE​=0V
  • 基极电压 VB​=3.3V
  • 压差 VBE​=3.3V−0V=3.3V,远大于导通阈值(约 0.7V)
  • 三极管饱和导通,电流从 3V3 → 负载 → 集电极 → 发射极 → GND,负载得电工作。
2. 断开条件(负载停止)

PA0 输出低电平(0V)时:

  • 发射极电压 VE​=0V
  • 基极电压 VB​=0V
  • 压差 VBE​=0V,不满足导通条件
  • 三极管截止,集电极无电流,负载失电停止。

修仙一途,道阻且长,共勉!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/30 10:45:57

口碑好的广州天河湛江鸡餐厅哪家强

在广州天河,各类美食餐厅林立,湛江鸡餐厅更是其中的热门选择。湛江鸡以其独特的风味和口感,深受食客们的喜爱。今天,就为大家重点推荐一家口碑极佳的广州天河湛江鸡餐厅——唐虎虎湛江鸡饭店,同时也简单提及一些其他知…

作者头像 李华
网站建设 2026/6/30 10:45:24

混用 libc++ libstdc++ 的链接符号分析

在 cpp 程序 myapp 中使用了 libc 、libstdc 定义的数据结构时(如 std::string std::vector 等) 如果编译时动态链接了这两个libc/libstdc 中的一个,那么,myapp 的二进制会存储 对 ABI 符号的引用/依赖,以及 ABI 布局假…

作者头像 李华
网站建设 2026/6/30 10:45:23

线程池原理与手写工业级线程池实战,线程复用、任务队列、动态扩容、优雅销毁、高并发避坑完整落地

0. 前言:频繁创建销毁线程的致命性能瓶颈我们完整吃透条件变量、各类互斥锁、生产者消费者模型,掌握了线程间同步、等待唤醒核心逻辑,能够实现安全的多线程数据通信。但直接按需 std::thread t(func) 动态创建线程存在严重工程短板&#xff1…

作者头像 李华
网站建设 2026/6/30 10:44:46

openYuanrong进阶教程——AI Agent 会话与亲和性调度

AI Agent 会话与亲和性调度 AI Agent 会话功能专为交互式应用场景(如 AI 智能体、多轮对话)设计。它支持函数执行过程中的主动等待与外部唤醒,并确保同一会话内的多次请求能够路由到同一个执行实例,从而实现低延迟的交互体验。 会…

作者头像 李华
网站建设 2026/6/30 10:43:36

Linux网络打印进阶:EPSON L3255驱动依赖库缺失排查与修复实录

1. 当打印机驱动装好了却不能用:一个真实案例的深度剖析 上周帮朋友调试一台EPSON L3255打印机,明明按照官网指引装好了驱动,点击打印却始终显示"渲染失败"。这种场景太典型了——表面看驱动安装顺利,实际底层依赖库早已…

作者头像 李华
网站建设 2026/6/30 10:39:25

爬虫分类科普:普通爬虫和聚焦爬虫差异、场景与实操要点

网络爬虫是数据采集的核心工具,按照抓取范围和运行逻辑划分,最常见的两类就是普通爬虫与聚焦爬虫,二者在设计初衷、工作方式和适用场景上的区别十分明显。普通爬虫走的是广覆盖的路线,不会限定具体的内容主题,通常采用…

作者头像 李华