]> www.fi.muni.cz Git - tinyboard.git/commitdiff
buttons.c: button on PB0, status LED on PB1
authorJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 2 May 2013 14:58:52 +0000 (16:58 +0200)
committerJan "Yenya" Kasprzak <kas@fi.muni.cz>
Thu, 2 May 2013 14:58:52 +0000 (16:58 +0200)
projects/step-up/buttons.c

index 4101a2f5885c3920c76a7b6568dbcfa3db8fd789..b03a8162600314684e77aa14884f9d331726aa96 100644 (file)
@@ -16,17 +16,17 @@ static unsigned char prev_state;
 void status_led_on_off(unsigned char mode)
 {
        if (mode)
-               PORTB |= _BV(PORTB0);
+               PORTB |= _BV(PORTB1);
        else
-               PORTB &= ~_BV(PORTB0);
+               PORTB &= ~_BV(PORTB1);
 }
 
 void init_buttons()
 {
-       DDRB &= ~_BV(DDB1);
-       DDRB |= _BV(DDB0);
-       PORTB |= _BV(PORTB1); // enable internal pull-up
-       PORTB &= ~_BV(PORTB0); // status led off
+       DDRB &= ~_BV(DDB0);
+       DDRB |= _BV(DDB1);
+       PORTB |= _BV(PORTB0); // enable internal pull-up
+       PORTB &= ~_BV(PORTB1); // status led off
        GIMSK &= ~_BV(PCIE); // disable pin-change IRQs
        PCMSK = 0; // disable pin-change IRQs on all pins of port B
 
@@ -36,19 +36,19 @@ void init_buttons()
 
 void susp_buttons()
 {
-       DDRB &= ~(_BV(DDB1)); // set as input
-       PORTB |= _BV(PORTB1);  // enable internal pull-up
-       PORTB &= ~_BV(PORTB0); // set to zero
+       DDRB &= ~(_BV(DDB0)); // set as input
+       PORTB |= _BV(PORTB0);  // enable internal pull-up
+       PORTB &= ~_BV(PORTB1); // set to zero
 
        GIMSK |= _BV(PCIE);
 
-       PCMSK = _BV(PCINT1);
+       PCMSK = _BV(PCINT0);
                // disable pin-change IRQs on all pins except PB1
 }
 
 void timer_check_buttons()
 {
-       unsigned char cur = !(PINB & _BV(PINB1));
+       unsigned char cur = !(PINB & _BV(PINB0));
        unsigned char prev = prev_state;
 
        prev_state = cur;
@@ -118,8 +118,8 @@ unsigned char buttons_wait_for_release()
 
                _delay_ms(100);
 
-               pin = PINB & _BV(PINB1);
-       } while (!(pin & _BV(PINB1)));
+               pin = PINB & _BV(PINB0);
+       } while (!(pin & _BV(PINB0)));
 
        status_led_on_off(0);