1.關(guān)于ADC輸入通道與GPIO口的輸入關(guān)系需要查看STM32芯片手冊(cè)(p31)而非數(shù)據(jù)手冊(cè)。
2.外部觸發(fā)源指的是觸發(fā)ADC采樣的觸發(fā)信號(hào),這與1的GPIO口輸入是兩個(gè)不同概念。而JEXTBEL[2:0]或者EXTBEL[2:0]決定具體是哪個(gè)觸發(fā)源。
3.大的方向,觸發(fā)模式分為了 ADON位觸發(fā)啟動(dòng)和外部觸發(fā)啟動(dòng)ADC轉(zhuǎn)換兩種。用后者就行了
4.當(dāng)我們使用一個(gè)ADC要采集多個(gè)通道時(shí),單獨(dú)規(guī)則組由于只使用了一個(gè)數(shù)據(jù)寄存器,并且是整個(gè)組轉(zhuǎn)換完后才會(huì)觸發(fā)中斷,因此數(shù)據(jù)會(huì)覆蓋,這種情況下需要使用DMA方法(后面采用試試),這時(shí)數(shù)據(jù)寫(xiě)到SRAM中了。而單獨(dú)使用注入組總共可最多有四個(gè)通道,對(duì)應(yīng)四個(gè)數(shù)據(jù)寄存器,不存在覆蓋。
5.關(guān)于注入通道和規(guī)則通道,原子說(shuō)的很形象,前者相當(dāng)于中斷,能打斷后者。并且舉得監(jiān)控例子不錯(cuò)
6.雙ADC模式是指ADC1和ADC2兩個(gè)ADC同時(shí)使用的情況。其實(shí)對(duì)于我們?nèi)绻褂猛ǖ郎俚脑挘粋€(gè)ADC就夠用了,比如使用一個(gè)注入組就能采集四個(gè)通道,而使用規(guī)則組就可以采集16個(gè)通道,一起就能20個(gè)通道了.
二、利用STM32內(nèi)部溫度傳感器測(cè)量溫度:
32的溫度值與電壓值成正比關(guān)系,利用下列公式得出溫度
溫度(°C) = {(V25- VSENSE) / Avg_Slope} + 25
這里:
V25=VSENSE在25°C時(shí)的數(shù)值
Avg_Slope=溫度與VSENSE曲線的平均斜率(單位為mV/ °C或μV/ °C)
注意這里的V25和Vsense對(duì)應(yīng)的是電壓值,參考32的芯片手冊(cè)可知,V25典型值為1.43,Avg_Slope為4.3mv/°C,Vsense即當(dāng)前要測(cè)量溫度對(duì)應(yīng)的電壓值,當(dāng)3.3V對(duì)應(yīng)3095,因此當(dāng)前電壓的計(jì)算可由比例關(guān)系Vsense = 3.3*當(dāng)前寄存器采樣值/4095。然后由上面公式得到當(dāng)前溫度。
//另注:自帶的溫度傳感器是測(cè)試芯片自身溫度,用其來(lái)測(cè)環(huán)境溫度肯定有誤差





