Bitmanipulation mit Stick

Dependencies:   mbed

Committer:
haunsi
Date:
Mon Dec 16 18:22:18 2019 +0000
Revision:
1:d2cce2700a45
Parent:
0:da2c2685a56c
Child:
2:cf14d4fb9e33
Interrupt_Spielereien

Who changed what in which revision?

UserRevisionLine numberNew contents of line
haunsi 0:da2c2685a56c 1 #include "mbed.h"
haunsi 1:d2cce2700a45 2 #define btn1 p14 // push joystick pin
haunsi 1:d2cce2700a45 3 #define btn2 p12 // joystick down
haunsi 1:d2cce2700a45 4
haunsi 1:d2cce2700a45 5 BusOut leds(LED1,LED2,LED3,LED4);
haunsi 0:da2c2685a56c 6
haunsi 1:d2cce2700a45 7 Timer t1;
haunsi 1:d2cce2700a45 8 Ticker tick1, tick2;
haunsi 1:d2cce2700a45 9 Timeout tout;
haunsi 1:d2cce2700a45 10 InterruptIn btn_push(btn1);
haunsi 1:d2cce2700a45 11 InterruptIn btn_down(btn2);
haunsi 1:d2cce2700a45 12
haunsi 1:d2cce2700a45 13 void blink_led1()
haunsi 1:d2cce2700a45 14 {
haunsi 1:d2cce2700a45 15 leds = leds^0b0001;
haunsi 1:d2cce2700a45 16 }
haunsi 1:d2cce2700a45 17
haunsi 1:d2cce2700a45 18 void shiftled()
haunsi 1:d2cce2700a45 19 {
haunsi 1:d2cce2700a45 20 leds = leds | leds << 1;
haunsi 1:d2cce2700a45 21 }
haunsi 1:d2cce2700a45 22
haunsi 1:d2cce2700a45 23 void turn_led2_on()
haunsi 1:d2cce2700a45 24 {
haunsi 1:d2cce2700a45 25 leds = 0b0010;
haunsi 1:d2cce2700a45 26 }
haunsi 0:da2c2685a56c 27
haunsi 1:d2cce2700a45 28 void ledsoff()
haunsi 1:d2cce2700a45 29 {
haunsi 1:d2cce2700a45 30 leds = 0b0000;
haunsi 1:d2cce2700a45 31 }
haunsi 1:d2cce2700a45 32
haunsi 0:da2c2685a56c 33 int main()
haunsi 0:da2c2685a56c 34 {
haunsi 1:d2cce2700a45 35 //t1.start();
haunsi 1:d2cce2700a45 36
haunsi 1:d2cce2700a45 37 tick1.attach(callback(&blink_led1), 1.0f);
haunsi 1:d2cce2700a45 38 tick2.attach(callback(&ledsoff), 10.0f);
haunsi 1:d2cce2700a45 39
haunsi 1:d2cce2700a45 40 btn_push.rise(callback(&turn_led2_on));
haunsi 1:d2cce2700a45 41 btn_down.rise(callback(&shiftled));
haunsi 1:d2cce2700a45 42 //btn.fall(callback(&toggle_led2));
haunsi 1:d2cce2700a45 43
haunsi 0:da2c2685a56c 44 }