【STM32 Blue Pill编程】-ADC数据采样(轮询、中断和DMA模式)
ADC数据采样(轮询、中断和DMA模式)
文章目录
- ADC数据采样(轮询、中断和DMA模式)
-
- 1、硬件准备及接线
- 2、ADC轮询模式
-
- 2.1 轮询模式配置
- 2.2 代码实现
- 3、ADC中断模式
-
- 3.1 中断模式配置
- 3.2 代码实现
- 4、ADC的DMA模式
-
- 4.1 DMA模式配置
- 4.2 代码实现
在本文中,我们将介绍如何使用 ADC 并使用 STM32CubeIDE 和 HAL 库读取模拟输入电压。 在文章中,将讨论三种读取 ADC 的方法,包括轮询、中断和 DMA 方法。 在示例中,我们将电位计作为模拟输入与 STM32 的 ADC 引脚之一连接,测量的数字值将映射到 PWM 占空比,从而控制 LED 亮度。
1、硬件准备及接线
本次实例将使用到如下硬件模块:
- STM32 Blue Pill 开发板
- ST-Link V2程序下载器
- TTL转USB模块
- LED
- 220欧姆电阻
- 10K欧姆电位计
- 面包板
- 连接线
硬件接线图如下:
将电位器的一端接3.3V供电,中间端接PA5,第三端接公共地。 通过 220 欧姆电阻将 LED 的阳极引脚连接到 PA0。 阴极引脚将接地。
2、ADC轮询模式
如前所述&#