登录/注册

stm32f429 adc2

更多

STM32F429 的 ADC2 是芯片内置的 12 位模数转换器,支持多通道输入和多种工作模式。以下是其关键特性和配置要点:


主要特性

  1. 独立与双重模式

    • ADC2 可单独工作在 独立模式,也可与 ADC1 组合为 双重模式(同步采样,提升吞吐率)。
    • 注意:双重模式下,ADC1 为主设备,ADC2 为从设备,需统一配置触发源和时钟。
  2. 通道与引脚映射

    • 支持 16 个外部通道(具体 GPIO 需查数据手册,如 PC1 对应 ADC2_IN11)。
    • 部分内部通道:温度传感器(通常绑定到 ADC1)、VBAT 监测等(需确认型号)。
  3. 时钟与采样率

    • 时钟源为 APB2 总线,最大频率 36 MHz(需通过预分频器配置)。
    • 采样时间可调(3~480 个周期),转换时间 = 采样周期 + 12 个固定周期。
  4. 触发方式

    • 软件触发(ADC2->CR2 |= ADC_CR2_SWSTART)。
    • 硬件触发(如定时器、外部中断)。

配置步骤

  1. 使能时钟

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC2, ENABLE);  // 使能 ADC2 时钟
    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE); // 使能对应 GPIO 时钟(如 PC1)
  2. 配置 GPIO 为模拟输入

    GPIO_InitTypeDef GPIO_InitStruct;
    GPIO_InitStruct.Pin = GPIO_Pin_1;          // 例如 PC1
    GPIO_InitStruct.Mode = GPIO_Mode_AN;       // 模拟模式
    GPIO_InitStruct.Pull = GPIO_NOPULL;        // 禁用上下拉
    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
  3. 初始化 ADC2

    ADC_HandleTypeDef hadc2;
    hadc2.Instance = ADC2;
    hadc2.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;  // 时钟分频(36MHz /4 = 9MHz)
    hadc2.Init.Resolution = ADC_RESOLUTION_12B;            // 12 位分辨率
    hadc2.Init.ScanConvMode = DISABLE;                     // 非扫描模式(单通道)
    hadc2.Init.ContinuousConvMode = DISABLE;                // 单次转换
    hadc2.Init.DataAlign = ADC_DATAALIGN_RIGHT;            // 数据右对齐
    HAL_ADC_Init(&hadc2);
    
    // 配置通道(例如通道 11)
    ADC_ChannelConfTypeDef sConfig;
    sConfig.Channel = ADC_CHANNEL_11;          // PC1 对应 ADC2_IN11
    sConfig.Rank = 1;                          // 规则组第1个通道
    sConfig.SamplingTime = ADC_SAMPLETIME_56CYCLES; // 56 个周期采样时间
    HAL_ADC_ConfigChannel(&hadc2, &sConfig);
  4. 校准与启动

    HAL_ADCEx_Calibration_Start(&hadc2, ADC_SINGLE_ENDED); // 校准
    HAL_ADC_Start(&hadc2);                 // 启动转换
  5. 读取数据

    if (HAL_ADC_PollForConversion(&hadc2, 100) == HAL_OK) {
       uint16_t adc_value = HAL_ADC_GetValue(&hadc2);
    }

注意事项


资源参考

如需进一步代码示例或特定模式配置,请提供更多需求细节!

Zephyr笔记:在STM32F429上运行HelloWorld

前面文章的操作,虽然在Windows下能够成功的编译STM32F429的工程,但是却不能在野火挑战者V2开发板上运行,因为Zephyr代码中的STM32F42

2023-04-06 11:42:33

STM32F429官方的例程尝试使用串口2

硬件平台STM32F429I-DISCOVERY、USB转串口工具开发平台Keil MDK问题最近由于我需要使用STM32F429芯片的串口2,

2022-01-26 08:31:55

如何使用STM32F429定时器去触发ADC采样呢

STM32怎么配置呢?如何使用STM32F429定时器去触发ADC采样呢?ADC

2021-10-25 07:07:37

STM32F429参考手册中文版

STM32F429参考手册中文版

资料下载 ah此生不换 2022-01-26 13:48:08

STM32F429开发板用户手册】第8章 STM32F429的终极调试组件Event Recorder

【STM32F429开发板用户手册】第8章 STM32F429的终极调试组件Event Recorder

资料下载 佚名 2021-12-04 14:06:04

STM32F429开发板用户手册】第1章 初学STM32F429的准备工作

【STM32F429开发板用户手册】第1章 初学STM32F429的准备工作

资料下载 麻酱 2021-12-04 13:51:04

STM32F429芯片使用USART2(PA2、PA3)问题

硬件平台STM32F429I-DISCOVERY、USB转串口工具开发平台Keil MDK问题最近由于我需要使用STM32F429芯片的串口2,

资料下载 赵辉 2021-12-02 16:36:10

STM32F429开发板底板的电路原理图免费下载

本文档的主要内容详细介绍的是STM32F429开发板底板的电路原理图免费下载。

资料下载 佚名 2020-08-29 15:40:42

stm32f429之多通道ADC介绍

stm32f429之多通道ADC通过DMA数据采集原来的程序使用时stm32f103的芯片,现在给为

2021-08-16 07:24:18

STM32F429移植FreeRTOS

STM32F429移植FreeRTOS一、环境Win10、Keil uVision5、STM32CubeMX、STM32F429IGT6二、准备

2021-08-05 07:47:05

stm32f429/f767核心板电路方案

stm32f429/767 核心板,邮票孔,SDRAM等长布线,兼容正点原子底板。 在正点原子阿波罗F4核心板基础上又添加邮票空引脚设计。走线优化。 Stm3

2020-12-07 10:56:33

基于STM32F429开发板的电源复位设计

学习STM32F429的电源供电,往往被一堆电源标识Vdd,Vdda,Vcap,Vss等搞迷糊,这些标识整明白了,电源供电部分也就理解了

2020-10-06 00:22:00

STM32F429芯片带FIFO的DMA传输实现过程

STM32系列芯片都内置DMA外设,其中很多系列的DMA配备了FIFO。这里以STM32F429芯片及开发板为例,演示一下带FIFO的DMA传输实现过程。

2020-09-04 14:36:14

STM32F1的ADC2如何使用DMA功能 USART过载错误Overrun error

STM32F1的ADC2如何使用DMA功能,USART过载错误Overrun error

2020-03-14 14:42:01

阿波罗STM32F429开发板资源说明

阿波罗STM32F429开发板资源说明

2019-10-17 09:54:00

7天热门专题 换一换
相关标签