Et eksempel på Debounce av en knapp ved hjelp av interrupts
Dependencies: mbed
main.cpp
- Committer:
- benrammok
- Date:
- 2015-11-05
- Revision:
- 0:95812c6efbce
File content as of revision 0:95812c6efbce:
#include "mbed.h" //Definerer inn/utganger DigitalOut led(LED1); InterruptIn button(USER_BUTTON); Timeout tOut; //Funksjonsprototyper void btnClick(void); void enableIRQ(void); void toggleLed(void); int main() { //Setter pull-up og fester en funksjon til fall på button. button.mode(PullUp); button.fall(&btnClick); while(1) { wait(0.2); // 200 ms } } //Toggler Led fra av/på -> på/av void toggleLed(){ led = !led; //Toggler LED } //Skrur på interrupts void enableIRQ(){ button.enable_irq(); } //Kjører når knappen blir trykket void btnClick(){ button.disable_irq(); tOut.attach_us(enableIRQ, 10); toggleLed(); }