STM32 ADC應用要注意的幾點問題
1、Vdda沒有供電或沒有正常供電;STM32系列眾多,該參數不可一概而論,細節(jié)請參考各個芯片數據手冊。
2、采樣電阻取值不合適,跟采樣時間不匹配,經常表現(xiàn)為輸入電阻過大、配置的采樣時間偏短。實際設計時可以參考下STM32官方各系列評估板的相關電路。另外可以參考ST官方的應用筆記AN2834。關于ADC 應用其它的應用筆記,可以去WWW.STMCU.COM.CN搜索ADC即可。
3、ADC上電開啟到穩(wěn)定需要一段時間,即Tstab,該參數在數據手冊里有介紹。在使用寄存器操作時要特別注意這個時間。另外要注意給ADC外設上電、使能ADC功能、啟動ADC轉換、實質AD轉換是不一樣的動作和不同的時間點。
4、輸入信號幅度超過ADC參考電壓范圍導致轉換結果的數據錯誤。
5、芯片供電的波動尤其VREF的波動和外來干擾都會導致ADC轉換值的異常。
6、在使用注入觸發(fā)轉換時,觸發(fā)事件的時間間隔必須大于注入轉換序列所需的轉換時間。比方有兩個注入通道所需轉換時間為28 ADCLK,那觸發(fā)事件的間隔必須大于28個ADCLK,比方29,30 個ADCLK等都可以。
7、大多數STM32的ADC模塊在使用前需要校準。校準須在啟動AD轉換之前完成。原則上給ADC外設上電后校準一次就夠,但當參考電壓波動較大、溫度變化較劇烈時需再次校準。
8、開啟ADC的DMA功能,建議在ADC校準之后進行。換句話說校準ADC前不要使能其ADC的DMA功能。尤其涉及到多通道ADC DMA傳輸時要注意這個次序。
9、如果使用ADC的DMA傳輸,在啟動AD轉換時,DMA需配置好且被使能待命。
10、當使用內部SENSOR ADC通道時,注意這些通道從開啟到穩(wěn)定跟開啟ADC模塊一樣都是需要時間的;針對這些特定傳感器通道的AD采樣時間,手冊里往往有相關參數明確告知,請參照使用。比方內部溫度傳感器通道的采樣時間推薦為17us.
11、ADC通道序列的修改應該保證在ADC的停止狀態(tài)下進行。
12、在多通道ADC DMA傳輸時,經常出現(xiàn)因為緩沖區(qū)數據類型、源數據類型不一致導致的異常狀況。這里主要是因為數據寬度不一致所導致的問題。
13、當外部信號被選擇為注入轉換的觸發(fā)信號時,只有其上升沿才有效。
上面提到的都只是拋磚引玉的提醒, 設計應用時多留意下,特別是第7、8、9、12四點提醒。STM32的ADC外設在不同系列間也不完全相同,尤其涉及多個ADC模塊配合采樣轉換的時候還是挺復雜的。任何時候都不忘多查看STM32英文參考手冊和數據手冊。
評論