目前使用ADC1,DMA1对外部电压进行测量。 通过TIM3进行触发。
ADC2开启软件使能,检测外部电压提前跌入。
以上功能,目前正常。
问题来了,现在需要对温度进行测量,做一些问题补偿机制。
1,因为ADC1需要实时,连续测量。打算在ADC2测量温度,但是查询相关资料,只有ADC1可以测量内部温度??
2. 如果只有ADC1可以测量问题, 在原先使用DMA的基础上如何实现温度检测? 发现温度检测需要来回开关温度使能, 在DMA下怎么设置?
想法: 1.如果保持之前的DMA功能, 然后1秒中进行一次温度单次测量,随后再次配置外部电压检测,DMA功能。
是否可以?
2. 另外,是否可以规则组前15个检测同一个通道, 比如通道1,连续15个,第16个为温度检测。
定时器内通过开关温度使能,来判断当前前面15个外部电压有效还是第16个的温度数据有效。
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 2, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 3, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 4, ADC_SampleTime_55Cycles5);
ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 5, ADC_SampleTime_55Cycles5);
………………
ADC_RegularChannelConfig(ADC1, ADC_Channel_TempSensor, 16, ADC_SampleTime_55Cycles5);
主要是如何把这个温度插入进去,因为要开关使能。 最好是偶尔测试一次温度就可以。 外部电压需要频繁测量。
大虾指导,谢谢。