External avbryter på MPIDE del 1: attachInterrupt() (3 / 11 steg)
Steg 3: Vad är ens "Avbryta"?
Så, vår tidigare klassrummet exempel var inte mycket realistisk. I en verklig klassrum, skulle inte din professor stanna och fråga varje person om de har frågor. Här är ett mer realistiskt exempel:
Du är i ett klassrum och professorn föreläsa om avbrott. Du är inte säker på att du förstår något, så du upp handen. Professorn ser handen upp, slutar sitt föredrag och besvarar din fråga. När din fråga har besvarats, plockar professorn upp igen där hon slutade och fortsätter sitt föredrag.
Detta är, i verklig mening, Hur avbryter arbete.
Kolla in exempelkoden chipKIT_Interrupts_1. I denna kod frågar vi inte vår insats vad dess status är. Istället vi ställa in avbrottet på en av våra pins och vänta för att det ska utlösas. När avbrottet utlöses, våra microcontroller slutar köra koden i "Ogiltig loop()", hoppar till koden för att avbryta (kallas en avbryta tjänsten rutinmässiga eller ISR) och kör den. När ISR är gjort köra, vi hoppa tillbaka till där vi slutade i huvudkoden.