microcontroller - 如何读取多 channel ADC值?

标签 microcontroller stm32 adc hal

我可以使用此代码从 ADC1_IN1 channel 读取 ADC 值 ADCValue = HAL_ADC_GetValue(&hadc1); 但是 ADC1 端口(您可以在图片上看到)有很多 channel 。如何从 ADC1_IN2 读取值?如何在代码中描述 channel 2?

ADC1 port

最佳答案

您可以通过HAL_ADC_ConfigChannel 函数设置ADC channel :

ADC_ChannelConfTypeDef sConfig;
sConfig.Channel = ADC_CHANNEL_2; // ADC Channel
sConfig.Rank = 1; //Rank (1-16) Rank: The rank in the regular group sequencer.
sConfig.SamplingTime = ADC_SAMPLETIME_3CYCLES; //ADC Sampling Times
sConfig.Offset = 0; // Reserved

if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) {
    //Error
}

Description of STM32F4xx HAL drivers

关于microcontroller - 如何读取多 channel ADC值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41698009/

相关文章:

c - native 编译和构建Linux内核嵌入式系统

c - 如何在数组中使用 UART 接收未知长度数据并将其存储并接收下一组数据,而不删除第一个寄存器中的内容?

c - 优化小尺寸的 C 代码 - 共享静态变量?

c - AVR 模数转换 Atmega32

c - PIC A/D 转换问题

c - 替代一大组 if 语句?

c - STM32F4..测试延迟功能

performance - PIC 16f1827 ADC 转换太慢 XC8

c - stm32多个ADC redings错误

c - 有人为 NXP LPC17xx ADC 编写过工作代码吗?