RM新时代网站-首页

電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>嵌入式開發(fā)>嵌入式Linux設(shè)備驅(qū)動開發(fā)之中斷編程詳解

嵌入式Linux設(shè)備驅(qū)動開發(fā)之中斷編程詳解

2017-10-18 | rar | 0.3 MB | 次下載 | 1積分

資料介紹

 11.5 中斷編程
  前面所講述的驅(qū)動程序中都沒有涉及中斷處理,而實際上,有很多Linux的驅(qū)動都是通過中斷的方式來進行內(nèi)核和硬件的交互。中斷機制提供了硬件和軟件之間異步傳遞信息的方式。硬件設(shè)備在發(fā)生某個事件時通過中斷通知軟件進行處理。中斷實現(xiàn)了硬件設(shè)備按需獲得處理器關(guān)注的機制,與查詢方式相比可以大大節(jié)省CPU資源的開銷。
  在此將介紹在驅(qū)動程序中用于申請中斷的request_irq()調(diào)用,和用于釋放中斷的free_irq()調(diào)用。request_irq()函數(shù)調(diào)用的格式如下所示:
  int request_irq(unsigned int irq,
  void (*handler)(int irq, void *dev_id, struct pt_regs *regs),
  unsigned long irqflags, const char * devname, oid *dev_id);
  其中irq是要申請的硬件中斷號。在Intel平臺,范圍是0~15。
  參數(shù)handler為將要向系統(tǒng)注冊的中斷處理函數(shù)。這是一個回調(diào)函數(shù),中斷發(fā)生時,系統(tǒng)調(diào)用這個函數(shù),傳入的參數(shù)包括硬件中斷號、設(shè)備id以及寄存器值。設(shè)備id就是在調(diào)用request_irq()時傳遞給系統(tǒng)的參數(shù)dev_id。
  參數(shù)irqflags是中斷處理的一些屬性,其中比較重要的有SA_INTERRUPT。這個參數(shù)用于標明中斷處理程序是快速處理程序(設(shè)置SA_INTERRUPT)還是慢速處理程序(不設(shè)置SA_INTERRUPT)??焖偬幚沓绦虮徽{(diào)用時屏蔽所有中斷。慢速處理程序只屏蔽正在處理的中斷。還有一個SA_SHIRQ屬性,設(shè)置了以后運行多個設(shè)備共享中斷,在中斷處理程序中根據(jù)dev_id區(qū)分不同設(shè)備產(chǎn)生的中斷。
  參數(shù)devname為設(shè)備名,會在/dev/interrupts中顯示。
  參數(shù)dev_id在中斷共享時會用到。一般設(shè)置為這個設(shè)備的device結(jié)構(gòu)本身或者NULL。中斷處理程序可以用dev_id找到相應(yīng)的控制這個中斷的設(shè)備,或者用irq2dev_map()找到中斷對應(yīng)的設(shè)備。
  釋放中斷的free_irq()函數(shù)調(diào)用的格式如下所示。該函數(shù)的參數(shù)與request_irq()相同。
?
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TPS54202H降壓轉(zhuǎn)換器評估模塊用戶指南
  2. 1.02MB   |  7次下載  |  免費
  3. 2華瑞昇CR215芯片數(shù)字萬用表原理圖
  4. 0.21 MB   |  1次下載  |  3 積分
  5. 3SMD LED選型目錄 燈珠手冊
  6. 5.36 MB   |  1次下載  |  免費
  7. 4Tiva C系列DK-TM4C129X入門指南
  8. 1.69MB   |  1次下載  |  免費
  9. 5電涌保護器(SPD)的選擇、安裝以及裝配
  10. 4.57 MB   |  1次下載  |  免費
  11. 6時源芯微EMC前車燈案例
  12. 458.59 KB  |  1次下載  |  免費
  13. 7bq25890、bq25892雙級聯(lián)充電器EVM(PWR692)用戶指南
  14. 2.02MB   |  1次下載  |  免費
  15. 8TPS54426降壓轉(zhuǎn)換器評估模塊用戶指南
  16. 847.7KB   |  次下載  |  免費

本月

  1. 1ADI高性能電源管理解決方案
  2. 2.43 MB   |  156次下載  |  免費
  3. 22024PMIC市場洞察
  4. 2.23 MB   |  63次下載  |  免費
  5. 3開關(guān)電源設(shè)計原理手冊
  6. 1.83 MB   |  30次下載  |  免費
  7. 4智能門鎖原理圖
  8. 0.39 MB   |  28次下載  |  免費
  9. 5OAH0428最新規(guī)格書(中文)
  10. 2.52 MB   |  15次下載  |  7 積分
  11. 6ST7789V2單芯片控制器/驅(qū)動器英文手冊
  12. 3.07 MB   |  9次下載  |  1 積分
  13. 7LTH7充電電路和鋰電池升壓5V輸出電路原理圖
  14. 0.04 MB   |  7次下載  |  免費
  15. 8TPS54202H降壓轉(zhuǎn)換器評估模塊用戶指南
  16. 1.02MB   |  7次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935119次下載  |  10 積分
  3. 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
  4. 1.48MB  |  420061次下載  |  10 積分
  5. 3Altium DXP2002下載入口
  6. 未知  |  233084次下載  |  10 積分
  7. 4電路仿真軟件multisim 10.0免費下載
  8. 340992  |  191367次下載  |  10 積分
  9. 5十天學會AVR單片機與C語言視頻教程 下載
  10. 158M  |  183334次下載  |  10 積分
  11. 6labview8.5下載
  12. 未知  |  81581次下載  |  10 積分
  13. 7Keil工具MDK-Arm免費下載
  14. 0.02 MB  |  73807次下載  |  10 積分
  15. 8LabVIEW 8.6下載
  16. 未知  |  65987次下載  |  10 積分
RM新时代网站-首页