




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第十章外部中斷程序運(yùn)行中,我們時(shí)常需要監(jiān)控一些事件的發(fā)生,如對(duì)某一傳感器的檢測(cè)結(jié)果做出反應(yīng)。使用輪詢的方式檢測(cè),效率較低,等待時(shí)間較長(zhǎng),而使用中斷方式檢測(cè),可以到達(dá)實(shí)時(shí)檢測(cè)的效果。如圖3-13所示,中斷程序可以看作是一段獨(dú)立于主程序之外的程序,當(dāng)中斷觸發(fā)時(shí),控制器會(huì)暫停當(dāng)然正在運(yùn)行的主程序,而跳轉(zhuǎn)去運(yùn)行中斷程序,中斷程序運(yùn)行完后,會(huì)再回到之前主程序暫停的位置,繼續(xù)運(yùn)行主程序。如此便可做到實(shí)時(shí)響應(yīng)處理事件的效果。外部中斷的使用外部中斷是由外部設(shè)備發(fā)起請(qǐng)求的中斷。要使用外部中斷,你需要了解中斷引腳的位置,根據(jù)你外部設(shè)備選擇中斷模式,并編寫(xiě)一個(gè)中斷觸發(fā)后執(zhí)行的中斷函數(shù)。l 中斷引腳與中斷編號(hào)在不同型
2、號(hào)的Arduino控制器上中斷引腳的位置也不同,只有中斷信號(hào)發(fā)生在帶外部中斷功能的引腳上,Arduino才能捕獲到這個(gè)中斷信號(hào)并做出響應(yīng),表3-3例舉了Arduino常見(jiàn)型號(hào)的中斷引腳對(duì)應(yīng)的外部中斷編號(hào)。 Arduino型號(hào)Int.0Int.1int.2int.3int.4int.5UNO23 MEGA2321201918Leonardo3201 Due所有引腳均可使用外部中斷其中int0,int1等都為中斷的編號(hào)。l 中斷模式你還需要了解設(shè)備觸發(fā)外部中斷的輸入信號(hào)類型,以此來(lái)設(shè)置中斷模式。中斷模式也就是中斷觸發(fā)的方式。在大多數(shù)Arduino上支持表3-4中的四種中斷觸發(fā)方式: LOW低電平觸
3、發(fā)CHANGE電平變化觸發(fā),高電平變低電平、低電平變高電平RISING上升沿觸發(fā),低電平變高電平FALLING下降沿觸發(fā),高電平變低電平在Arduino Due中,還可以使用高電平(HIGH)觸發(fā)中斷,另外Arduino Due上的每一個(gè)I/O口都是可以觸發(fā)中斷的,其中斷編號(hào)便是引腳編號(hào)。 中斷函數(shù)你還需要編寫(xiě)一個(gè)響應(yīng)中斷的處理程序中斷函數(shù),中斷觸發(fā)后,便讓Arduino運(yùn)行這個(gè)函數(shù)。中斷函數(shù)就是當(dāng)中斷觸發(fā)后要去執(zhí)行的函數(shù),這個(gè)函數(shù)不能帶任何參數(shù),且返回類型為空,如:void Holle() Serial.println(holle);當(dāng)中斷觸發(fā)后,Arduino便會(huì)執(zhí)行這個(gè)函數(shù)中的語(yǔ)句。 這
4、些準(zhǔn)備工作做好后,我們還需要在Setup() 中,使用attachInterrupt() 函數(shù)對(duì)中斷引腳進(jìn)行初始化配置,以開(kāi)啟Arduino的外部中斷功能,其方法如下:attachInterrupt(interrupt, function, mode)l 參數(shù)interrupt:中斷編號(hào)。注意,這里的中斷編號(hào)并不是引腳編號(hào)function:中斷函數(shù)名。中斷觸發(fā)后,即會(huì)運(yùn)行的函數(shù)名稱mode:中斷模式。例如:attachInterrupt(0, Hello, LOW);如果我們使用的是UNO,該語(yǔ)句即會(huì)開(kāi)啟2號(hào)引腳(中斷編號(hào)0)上的外部中斷功能,并指定下降沿時(shí)觸發(fā)該中斷。當(dāng)2號(hào)引腳上電平由高變低
5、后,該中斷會(huì)被觸發(fā),Arduino即會(huì)運(yùn)行Hello() 函數(shù)中的語(yǔ)句。如果你不需要使用外部中斷了,你可以用中斷分離函數(shù)detachInterrupt() 來(lái)關(guān)閉中斷功能。detachInterrupt(interrupt)禁用外部中斷。l 參數(shù)interrupt:需要禁用中斷編號(hào)。外部中斷觸發(fā)蜂鳴器警報(bào)這里我們要制作一個(gè)防盜報(bào)警裝置,裝置放在需要看守的物體旁邊,通過(guò)數(shù)字紅外障礙傳感器檢測(cè)前方是否有物體,如果沒(méi)有檢測(cè)到物體就觸發(fā)蜂鳴器報(bào)警。l 數(shù)字紅外障礙傳感器數(shù)字紅外障礙傳感器(圖3-14)是一種通過(guò)紅外光反射來(lái)檢測(cè)障礙物的傳感器。模塊會(huì)發(fā)出調(diào)制過(guò)的38KHz紅外光,紅外光經(jīng)障礙物反射后由一體化接收頭接收。當(dāng)檢測(cè)范圍內(nèi)有障礙物時(shí),模塊輸出低電平;無(wú)障礙物時(shí),模塊輸出高電平。在編寫(xiě)這個(gè)中斷程序前,我們先要清楚適合項(xiàng)目的中斷觸發(fā)方式,這里我們將紅外障礙傳感器連接到Arduino UNO的2號(hào)引腳上,并將中斷1設(shè)為電平改變觸發(fā),當(dāng)電平由底變高時(shí),說(shuō)明物體被拿走,則觸
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)計(jì)提崗考試題及答案
- 山西省大同市渾源縣第七中學(xué)校2023-2024學(xué)年高一下學(xué)期期末考試 數(shù)學(xué)試題(含解析)
- 催奶師考試試題及答案
- 員工趣味考試題及答案解析
- java多態(tài)實(shí)現(xiàn)原理面試題及答案
- 泵站運(yùn)營(yíng)考試題及答案
- 工程管理試題及答案
- 自我評(píng)測(cè)工具2025年信息系統(tǒng)項(xiàng)目管理師試題及答案
- 西方社會(huì)運(yùn)動(dòng)影響試題及答案
- 西方政治制度與社會(huì)基本權(quán)利的關(guān)系試題及答案
- 社區(qū)居民積分制管理實(shí)施方案
- 高中生物教材易錯(cuò)易混概念辨析(新人教版2019)
- 《創(chuàng)新創(chuàng)意設(shè)計(jì)》課件
- 初高中物理銜接講座(初高中物理對(duì)比)
- 寵物酒店商業(yè)計(jì)劃書(shū)創(chuàng)新創(chuàng)業(yè)計(jì)劃書(shū)2024年
- 2024年徐州市小學(xué)六年級(jí)畢業(yè)抽測(cè)語(yǔ)文模擬試卷
- 《電力建設(shè)安全工作規(guī)程 第2部分:電力線路》
- 模板工程風(fēng)險(xiǎn)辨識(shí)及防范措施
- 房建工程監(jiān)理大綱范本(內(nèi)容全面)
- 300立方米柴油儲(chǔ)罐設(shè)計(jì)
- 2024年湖北新華書(shū)店有限公司招聘筆試參考題庫(kù)含答案解析
評(píng)論
0/150
提交評(píng)論