]> www.fi.muni.cz Git - bike-lights.git/blobdiff - firmware/gpio.c
mudflap for dual rearlights
[bike-lights.git] / firmware / gpio.c
index d1efaaa0333315ac1a7e5d1e1cac91d6d1b2ff13..b51d89f6c9442366b347c07705cc357fd330ea5b 100644 (file)
@@ -2,15 +2,16 @@
 
 #include "lights.h"
 
-void gpio_init()
+void init_gpio()
 {
-       DDRB |=    _BV(PB0) | _BV(PB2);     // LED4, LED5
-       PORTB &=~ (_BV(PB0) | _BV(PB2));
-
-       DDRA |=    _BV(PA3) | _BV(PA4);     // LED6, LED7
-       PORTA &=~ (_BV(PA3) | _BV(PA4));
+       PORTB &=~ (_BV(PB0) | _BV(PB2) | _BV(PB4) | _BV(PB6));
+       DDRB |=    _BV(PB0) | _BV(PB2) | _BV(PB4) | _BV(PB6);
+}
 
-       gpio_set(1, 1);
+void susp_gpio()
+{
+       PORTB &= ~(_BV(PB0) | _BV(PB2) | _BV(PB4) | _BV(PB6));
+       DDRB |=    _BV(PB0) | _BV(PB2) | _BV(PB4) | _BV(PB6);
 }
 
 void gpio_set(unsigned char n, unsigned char on)
@@ -19,15 +20,15 @@ void gpio_set(unsigned char n, unsigned char on)
                switch(n) {
                case 0: PORTB |= _BV(PB0); break;
                case 1: PORTB |= _BV(PB2); break;
-               case 2: PORTA |= _BV(PA3); break;
-               case 3: PORTA |= _BV(PA4); break;
+               case 2: PORTB |= _BV(PB4); break;
+               case 3: PORTB |= _BV(PB6); break;
                }
        } else {
                switch(n) {
                case 0: PORTB &= ~_BV(PB0); break;
                case 1: PORTB &= ~_BV(PB2); break;
-               case 2: PORTA &= ~_BV(PA3); break;
-               case 3: PORTA &= ~_BV(PA4); break;
+               case 2: PORTB &= ~_BV(PB4); break;
+               case 3: PORTB &= ~_BV(PB6); break;
                }
        }
 }