現象:一款壓力感測器,使用stm32晶元自帶的adc採集壓力感測器的輸出電壓訊號,在不配置adc時使用萬用表測量的輸出訊號為0.54v,與壓力感測器晶元手冊對照資料正常,當將adc配置完成後,使用adc採集訊號時,再次使用萬用表測量發現壓力感測器的輸出電壓訊號提高為0.75v,為什麼呢,經過大神指點發現,原來是stm32自帶adc的取樣時間的影響,找到乙個stm32的研討會的資料裡面有所提及:
stm32的adc的不同的取樣時間與訊號的輸入阻抗還有關係,如果輸入阻抗比較大那麼掃瞄週期應該也較大,反之亦然,後來在程式中將取樣時間調為239.5後,再次測量發現電壓訊號恢復正常。
再附一張關於輸入阻抗的介紹,不明白的同學可以作為參考:
所以,以後用到stm32的adc去採集感測器的電壓訊號的時候還要特別注意這一點,不然讀回來的值有可能不是很準
STM32關閉全域性中斷時需要注意的問題
stm32在使用時有時需要禁用全域性中斷,比如mcu在公升級過程中需禁用外部中斷,防止公升級過程中外部中斷觸發導致公升級失敗。arm mdk中提供了如下兩個介面來禁用和開啟總中斷 disable irq 關閉總中斷 enable irq 開啟總中斷 但測試發現這樣乙個問題,在關閉總中斷後,如果有中斷...
STM32的ADC轉換模式
stm32的adc轉換模式 stm32的adc總共有兩種轉換模式 單次轉換和連續轉換 前幾天看了st官方的中文手冊,在adc模組的介紹中,同時出現了單次轉換模式 連續轉換模式和掃瞄模式,看完整個模組的文件後,對adc的轉換模式還是不理解,通過學習其他文件和程式設計測試,整理了 單次轉換 連續轉換和掃...
STM32的ADC程式設計方法
記錄一下stm32的adc程式設計方法!前面已經學習了dma,知道如何使用dma去減小cpu的負擔,這裡的adc轉換也來使用dma 這個也是stm32的adc轉換最常見的方式。第一步是 了解stm32的adc對應的gpio口 如下圖 不用記住,可以查詢,我是將它剪下來貼上到書本的相應章節 第二步是 ...