--- a/src/hello.c Wed Sep 24 22:54:26 2014 +0300
+++ b/src/hello.c Wed Sep 24 23:49:49 2014 +0300
@@ -5,13 +5,25 @@
#define DEBUG_PIN 5
#define DEBUG_PORT PORTB
+#define RELAY_DDR DDRC
+#define RELAY_PORT PORTC
+#define RELAY_PIN PINC
+#define RELAY_PINS 4
+
+#define RELAY_DOWN1 0
+#define RELAY_DOWN2 1
+#define RELAY_LEFT 2
+#define RELAY_RIGHT 3
+
#include "debug.h"
+#include "relay.h"
#include "serial.h"
#include "timer.h"
int main (void)
{
debug_init();
+ relay_init(RELAY_PINS);
serial_init(SERIAL_BAUD_9600, SERIAL_PARITY_N, SERIAL_STOPBITS_1);
timer_init();
@@ -22,7 +34,6 @@
debug_set();
sei();
-
// start
while (true) {
if (timer_sleep(timeout)) {
@@ -33,6 +44,28 @@
c = '?';
}
+ switch (c) {
+ case '.': break;
+
+ case 'L': relay_open(RELAY_LEFT); break;
+ case 'R': relay_open(RELAY_RIGHT); break;
+ case 'B':
+ relay_open(RELAY_DOWN1);
+ relay_open(RELAY_DOWN2);
+ break;
+
+ case 'l': relay_toggle(RELAY_LEFT); break;
+ case 'r': relay_toggle(RELAY_RIGHT); break;
+ case 'b':
+ relay_close(RELAY_DOWN1);
+ relay_close(RELAY_DOWN2);
+ break;
+
+ default:
+ c = '!';
+ break;
+ }
+
debug_toggle();
// out