adc 裸機中斷程式

2021-06-13 17:56:13 字數 404 閱讀 9386

實驗環境:s3c6410,tiny6410

寫了個簡單的adc裸機程式。發現了點小問題:用的是讀啟動方式啟動adc開始轉換,但程式只能進入中斷處理函式一次。如果enable_start 位置1的方式就沒有問題。

原因:因為可能讀啟動adc開始轉換方式,可能在中斷處理函式中讀取adc轉換就過後,adc就開始轉換,在還沒有退出中斷處理函式之前,下一次的轉換完成,且產生了中斷,

但此時這個中斷進入不了cpu,所以cpu無法響應此次中斷,而導致沒有辦法進入中斷函式再讀啟動adc,所以只能進入一次中斷處理函式。

解決辦法:

1.中斷處理函式寫的盡量短小。應只取得轉換的值,然後退出。

2.將讀啟動,或者enable_start 位置1,盡量放在中斷處理程式的最後面,以讓下一次adc轉換結束之前,退出中斷處理函式。

嵌入式裸機之ADC學習筆記

1 adc analog digital converter,ad轉換,模數轉換 也就是模擬轉數字 2 cpu本身是數字的,而外部世界變數 如電壓 溫度 高度 壓力 都是模擬的,所以需要用cpu來處理這些外部的模擬變數的時候就需要做ad轉換。為了用數字技術來處理外部的模擬物理量。1 模擬的就是連續的...

s3c2440裸機 ADC程式設計

模數轉換器即a d轉換器,或簡稱adc,通常是指乙個將模擬訊號轉變為數碼訊號的電子元件。如圖,是把可變電阻上的電壓值變換的模擬訊號通過adc轉換,輸出數碼訊號。對於數碼訊號我們需要得到它的2個屬性 1.轉換精度 用多少位來儲存這個資料 假如是10 bit 那麼最大值0b111111111對應3.3v...

關於除錯裸機中斷程式的一點見解

來自 最近除錯觸控螢幕裸機程式,下到sdram中就是進不了中斷,在ads下除錯,觸控螢幕一發出中斷就提示dummy error.後來想了一下,其實在ads中除錯中斷這個方 都是錯誤的,利用supervivi的download run功能除錯也是錯誤的。因為兩種情況下內部sram的位址0處都不存在你要...