LINUX AM335X NMI中斷使用方法

2021-08-02 18:59:23 字數 720 閱讀 1962

nmi中斷號我們可以從資料手冊上面查到是7,此時不能直接用request_irq(7,***,***,***,***)去申請,我目前解決的方法是配合裝置數去完成:

首先、在裝置數中加入如下裝置節點

裝置節點中的名字am335x_nmi是你自己隨意取得,下面的

compatible = "自己設定、能夠對應你的驅動中的就可以"

如果用的是am3352、那這裡的中斷號就是7

加上之後,驅動中一定要與compatible中對應,這樣驅動才能匹配到我們的裝置節點

接下來就是如何去申請了,首先

(1)用irq=platform_get_irq()去獲得中斷號(下面解釋)

(2)用request_irq( )去申請中斷

(3)接下來的步驟就跟平常的中斷一樣了

我這裡是用來檢測電量的,當電量低於一定的值時就中斷報警,但這裡導致,電量較低時,就不停的進入中斷,有沒有什麼辦法可以只中斷一次,因為這裡是nmi(不可遮蔽中斷)確實還挺不好處理的,大家可以發表一下自己的看法,討論討論

下面貼上自己的**

335x裸機開發1

am335x 裸機開發筆記 1 啟動流程與啟動卡分割槽 2016 04 22 21 51 24 分類 嵌入式 根據晶元手冊,am335x上電後首先執行固化在晶元內部rom中的 我們稱之為bl0,bl0的功能很強大,能讀取sd卡中第乙個分割槽 必須是fat格式 的mlo檔案,複製到ram中執行,複製的...

Am335x 啟動過程

啟動順序 針對ti oma3 evm linux一般的啟動順序是 上電的時候,omap裝置最開始的boot是從cpu內部的boot rom起來,這部分的 是出廠的時候固化的,不能被改變的。boot rom通過讀取外部boot pin的配置來尋找第乙個外部bootloader。可以尋找的裝置有nand...

Am335X編譯除錯環境搭建

am335x編譯除錯環境搭建 可以參考 1,配置伺服器端的編譯環境,參見sitara linuxsdk sdg 05.04.01.00.pdf p239 sitara linux sdk gcc toolchain 這裡由於是同事已經搭好環境,所以沒法確認細節問題 2,寫一段測試c include ...