arduino中斷


句法

  • digitalPinToInterrupt(銷); //將引腳ID轉換為中斷ID,以與attachInterrupt()detachInterrupt()

  • attachInterrupt(digitalPinToInterrupt(pin),ISR,mode); // 推薦的

  • attachInterrupt(中斷,ISR,模式); // 不建議

  • detachInterrupt(digitalPinToInterrupt(銷));

  • detachInterrupt(中斷);

  • noInterrupts(); //禁用中斷

  • 中斷(); //在noInterrupts()後重新啟用中斷。

參數

參數筆記
打斷中斷的ID。不要誤以為密碼。
ISR 中斷服務例程。這是在發生中斷時執行的方法。
模式什麼應該導致中斷觸發。 LOW,CHANGE,RISING或FALLING之一。適當的電路板也允許HIGH。

備註

中斷服務程序(ISR)應盡可能短,因為它們會暫停主程序執行,從而搞砸了與時間相關的代碼。通常這意味著在ISR中設置一個標誌並退出,並在主程序循環中檢查標誌並執行該標誌應該執行的任何操作。

您不能在ISR中使用delay()millis() ,因為這些方法本身依賴於中斷。

中斷 相關例子