1、ADC工作条件:enable=1 & start=1
代码:DL_ADC12_startconversion() & DL_ADC12_enableconversion()
repeat没勾选的话,转换完一次enable会为0
repea模式enable一直为1
start信号第一次由外部触发,无论是否为repeat模式,转换完一个channel后都会给下一个channel(最后一个channel则给第一个)一个start信号。(转换结束后start置0)
sequence(多channel)时,disenable repeat模式enable保持1直到最后一个channel完成转换
2、ADC采样周期计算


注:CLK2.RES决定分辨率(resolution,12/10/8bit)
注:掉电模式改为auto后,系统会自动计算采样周期(可作为对比参考)
![]()
3、ADC通道

4、定时器触发adc采样要把trigger mode勾选为valid trigger will…(定时器每次触发会给adc一个start信号(原本repeat模式下adc一次采样完会自动给下一channel一个start))
5、问题:双ADC同步采样(定时器触发)repeat模式下第二个ADC不触发
(注意并非所有板子都能这样解决)解决:配置hardware average(都配置为2即可解决)
6、问题:在低频采样(几十khz)时,可能会出现syscfg计算的周期与实际偏差极大(差两三倍)
解决:sample clock divider适当分频或把时钟源调低(20khz采样频率用20Mhz及以下时钟源采样正常)
注意:配置不会报错,只能在低采样频率的时候注意分频
7、双adc+dma,TimerA_startCounter()放最后(如图被注释的那行),就只有一个adc有数据;若写最前面(如图现位置),两个adc就都有数据了

8、手册双opa差分放大公式不对

9、adc窗口比较重新开中断后要先清中断

ADC相关例程摘要

window_comparator
|
功能: |
端口输入电压高于(设定值)时触发higher中断 |
|
端口输入电压低于(设定值)时触发lower中断 |
配置:


中断:

adc12_max_freq_dma
|
功能: |
最大频率采样12bit分辨率(4M) |
注:配置可能存在问题(使用FIFO)
DMA触发(原MEM10)改为MEM11:
(实测有时MEM11反而有问题,改到MEM10后正常,目前没发现规律)

注:DMA原地址,目标地址,通道使能 需手动代码完成
采样时间配置62.5ns,采样周期见adc时序图
adc12_triggered_by_timer_event
|
功能: |
定时器触发采样 |
timer配置:


adc配置:

如开启repeat模式需修改为:
![]()
adc12_sequence_conversion
|
功能: |
4 channel序列采集(无repeat) |
关键配置:

注:如需开启repeat模式会强制开启FIFO
adc12_simultaneous_trigger_event
|
功能: |
双ADC定时器触发采样 |
|
硬件平均 |
配置:


注:定时器的12通道,可同时被两个订阅
注:定时器可发布两个通道
其他:
adc12_triggered_by_timer_event_stop
|
功能: |
定时器触发窗口比较决定led亮灭 |
|
(低功耗)等待中断时单片机处于stop模式 |
adc12_simultaneous_trigger_event_stop
|
功能 |
低功耗,其余跟simultaneous_trigger_event差不多 |
|
timer的channel 12可一次被两个subscribe |
adc12_single_conversion_vref_internal
|
功能: |
单通道采集,内部参考电压 |
adc12_single_conversion_vref_external
|
功能: |
单通道采集,外部参考电压 |
adc12_single_conversion
|
功能: |
最简单的单通道采集 |
adc12_monitor_supply
|
功能: |
电源监测 |
adc12_max_freq_dma_8bit
|
功能: |
最大频率采样8bit分辨率(更快) |
adc12_internal_temp_sensor_mathacl
|
功能: |
内部通道,温度传感器 |
adc12_14bit_resolution
|
功能: |
14bit分辨率采样 |


&spm=1001.2101.3001.5002&articleId=149644715&d=1&t=3&u=34cd696e43ff4e54892788e46759c81c)
1360

被折叠的 条评论
为什么被折叠?



