【嵌入式】MCU常用外设模块介绍

1、 GPIO、USART1、USART2、TIM 分别是什么意思?

这几个都是 MCU 里的外设模块名。


1)GPIO 是什么?

全称:

General Purpose Input Output

通用输入输出口

意思就是:

可以拿来当普通输入脚或普通输出脚用的引脚控制模块。

比如:

  • 点 LED
  • 读按键
  • 输出高低电平
  • 读取引脚状态

2)USART1 / USART2 是什么?

全称:

Universal Synchronous/Asynchronous Receiver/Transmitter

中文常叫:

通用同步/异步收发器

入门时可以先把它简单理解成:

串口通信外设

最常见用途:

  • 串口打印信息
  • 和电脑串口助手通信
  • 和别的模块收发数据

比如经常说的:

  • 9600
  • 115200

这些波特率,一般就是 USART 在干活。

USART1 和 USART2 的区别

本质上它们都是串口外设,只是:

  • 是不同编号的串口模块
  • 引脚位置不同
  • 所挂总线不同
  • 时钟来源不同

可以理解成:

芯片里有不止一个串口口子。


3)TIM 是什么?

全称:

Timer

定时器

它是用来做时间相关控制的外设。

常见用途:

  • 定时中断
  • 延时基准
  • PWM 输出
  • 测频
  • 输入捕获
  • 输出比较

现在 LED 用 HAL_Delay() 闪烁,还没真正用到硬件定时器。

以后你要做:

  • 每 1 秒闪一次灯
  • 呼吸灯
  • PWM 调光
  • 测脉冲频率

这些就经常会用 TIM。


2、巧计"

GPIO

控制引脚高低电平、读引脚状态的模块

USART1 / USART2

用来串口收发数据的模块

TIM

用来计时、定时、输出 PWM 的模块



3、为什么要关心"挂在哪条总线"?

因为这直接影响两件事:

1)要开哪路时钟

比如:

  • GPIOE 在 APB2
  • 那就要开 GPIOE 时钟

2)外设实际时钟是多少

比如:

  • USART1 在 APB2
  • APB2 = 72MHz
  • 那 USART1 的时钟基准和 72MHz 有关

而:

  • USART2 在 APB1
  • APB1 = 36MHz
  • 那 USART2 的计算基准就和 36MHz 有关

这会直接影响:

  • 串口波特率
  • 定时器定时周期
  • PWM 频率
相关推荐
HQB20264 小时前
EG1198|屹晶微电子 120V 内置 MOS 异步降压 DC‑DC(高性价比)
嵌入式硬件·硬件工程
果壳science6 小时前
张祥前实验如何获取正电荷
笔记·科技·嵌入式硬件·硬件工程·制造
南山电子nscn6 小时前
中科芯CETC汽车电池管理系统BMS进口芯片国产型号替代指南
单片机·汽车·bms
沉淀的.晴天6 小时前
can总线
stm32
桀人7 小时前
认识AT24C02
stm32·单片机·嵌入式硬件
国科安芯8 小时前
星间激光通信终端CANFD控制网络的时延确定性与辐射可靠性
网络·嵌入式硬件·信息与通信·canfd·低轨卫星·商业航天·抗辐射
一直C8 小时前
嵌入式 Linux 驱动开发学习笔记:内核定时器、platform 总线与 I²C 驱动
linux·驱动开发·嵌入式硬件·学习·imx6ull
传感器与混合集成电路8 小时前
150MHz主频、8路DAC与6路PWM:JLH221360伺服控制SIP解析
嵌入式硬件
comyccccc8 小时前
STM32PID控制板设计全解析学习笔记
单片机·嵌入式硬件
碧海银沙音频科技研究院9 小时前
实现炬芯ATS308X的usb cdc 串口IAP 固件升级功能实现
人工智能·嵌入式硬件·深度学习·算法