平時在做項目或者參加比賽的過程中,個人覺得,有些東西寫出來可能會幫助到新手少走彎路。(也很可能是錯誤的,歡迎大家糾錯)
如果只是采集一路信號,直接用ADC獨立模式,單通道就可以了。
如果需要同時采集多路信號,比如說既要檢測輸入端的電壓,又要檢測輸出端的電壓,就要用到多通道采集,在stm32中,不同ADC的不同通道的GPIO是固定的,不能改變的。一個通道對應一個GPIO端口。使用的時候,只需要配置相應的GPIO端口。(所謂的同時采樣,實際上是不可能的,就算是多通道采樣,也存在多通道先后的問題。但可以近視地看作是同時采樣。)
---------------------------------------------------------------------------------------------------------------------------------------
其實,對於ADC的編程,最主要的是DMA的編程,通過對DMA緩沖區大小的設定,DMA終端的處理,可以進行同時采樣,均值采樣,等多種算法的處理。獨立模式的單通道一般在ADC中斷函數中進行處理,多通道采樣,或者是雙重甚至是三重模式的ADC采樣,一般是在DMA中處理數據。