目前使用ADC1,DMA1對(duì)外部電壓進(jìn)行測(cè)量。? 通過TIM3進(jìn)行觸發(fā)。? ??
ADC2開啟軟件使能,檢測(cè)外部電壓提前跌入。??
以上功能,目前正常。
問題來了,現(xiàn)在需要對(duì)溫度進(jìn)行測(cè)量,做一些問題補(bǔ)償機(jī)制。
1,因?yàn)锳DC1需要實(shí)時(shí),連續(xù)測(cè)量。打算在ADC2測(cè)量溫度,但是查詢相關(guān)資料,只有ADC1可以測(cè)量?jī)?nèi)部溫度??
2. 如果只有ADC1可以測(cè)量問題, 在原先使用DMA的基礎(chǔ)上如何實(shí)現(xiàn)溫度檢測(cè)?? ?發(fā)現(xiàn)溫度檢測(cè)需要來回開關(guān)溫度使能, 在DMA下怎么設(shè)置?
? ?
想法:? 1.如果保持之前的DMA功能, 然后1秒中進(jìn)行一次溫度單次測(cè)量,隨后再次配置外部電壓檢測(cè),DMA功能。? ?
? ? ? ? ? ? ?是否可以?
? ? ? ? ? ? 2. 另外,是否可以規(guī)則組前15個(gè)檢測(cè)同一個(gè)通道, 比如通道1,連續(xù)15個(gè),第16個(gè)為溫度檢測(cè)。
? ? ? ? ? ? ? ?定時(shí)器內(nèi)通過開關(guān)溫度使能,來判斷當(dāng)前前面15個(gè)外部電壓有效還是第16個(gè)的溫度數(shù)據(jù)有效。
? ? 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);
主要是如何把這個(gè)溫度插入進(jìn)去,因?yàn)橐_關(guān)使能。? 最好是偶爾測(cè)試一次溫度就可以。? 外部電壓需要頻繁測(cè)量。
大蝦指導(dǎo),謝謝。