ADC HAL 提供用于訪問 adc 外設(shè)寄存器的基本 API。 主要功能包括:
- 最多支持 8 個 ADC 通道。
- 10 位數(shù)據(jù)(A0), 12 位數(shù)據(jù)(PRO)。
- DMA 支持。
使用 ADC HAL 驅(qū)動程序:
ADC 可支持 8 個通道,每一比特的變化對應(yīng)電壓大約在1毫伏左右,具體需要根據(jù)每顆芯片單獨校準。 測試量程,A0上為 0~ 1.1V, PRO上為 0 ~ 3.3V.
在輪詢模式下使用 ADC HAL 的示例:
uint32_t channel, value, timeout;
#ifndef SF32LB55X
hadc.
Init.data_samp_delay = 2;
hadc.
Init.conv_width = 24;
hadc.
Init.sample_width = 22;
#else
#endif
hadc.
Init.adc_force_on = 0;
channel = 1;
rt_memset(&ADC_ChanConf, 0, sizeof(ADC_ChanConf));
ADC_ChanConf.Channel = channel;
ADC_ChanConf.pchnl_sel = channel;
ADC_ChanConf.slot_en = 1;
timeout = 100;
...