summaryrefslogtreecommitdiff
path: root/usb-led2/usb-led2.c
diff options
context:
space:
mode:
Diffstat (limited to 'usb-led2/usb-led2.c')
-rw-r--r--usb-led2/usb-led2.c94
1 files changed, 0 insertions, 94 deletions
diff --git a/usb-led2/usb-led2.c b/usb-led2/usb-led2.c
deleted file mode 100644
index 139e841..0000000
--- a/usb-led2/usb-led2.c
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * spreadspace avr utils
- *
- *
- * Copyright (C) 2013-2015 Christian Pointner <equinox@spreadspace.org>
- *
- * This file is part of spreadspace avr utils.
- *
- * spreadspace avr utils is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * any later version.
- *
- * spreadspace avr utils is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with spreadspace avr utils. If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include <avr/io.h>
-#include <avr/wdt.h>
-#include <avr/interrupt.h>
-#include <avr/power.h>
-#include <stdio.h>
-
-#include "util.h"
-#include "led.h"
-#include "dualusbio.h"
-
-uint8_t stdio_port = 0;
-
-void handle_cmd(uint8_t cmd)
-{
- switch(cmd) {
- case '0': led_off(); break;
- case '1': led_on(); break;
- case 't': led_toggle(); break;
- case 's': printf("std: already stdio\r\n"); return;
- default: printf("std: error\r\n"); return;
- }
- printf("std: ok\r\n");
-}
-
-void handle_cmd2(uint8_t p, uint8_t cmd)
-{
- switch(cmd) {
- case '0': led_on(); break;
- case '1': led_off(); break;
- case 't': led_toggle(); break;
- case 's': stdio_port = p; dualusbio_make_stdio(stdio_port); break;
- default: fprintf(usbio[p], "%d: error\r\n", p); return;
- }
- fprintf(usbio[p], "%d: ok\r\n", p);
-}
-
-int main(void)
-{
- MCUSR &= ~(1 << WDRF);
- wdt_disable();
-
- cpu_init();
- led_init();
- dualusbio_init();
- sei();
-
- dualusbio_make_stdio(stdio_port);
-
- for(;;) {
- int16_t BytesReceived = dualusbio_bytes_received_std();
- while(BytesReceived > 0) {
- int ReceivedByte = fgetc(stdin);
- if(ReceivedByte != EOF) {
- handle_cmd(ReceivedByte);
- }
- BytesReceived--;
- }
-
- uint8_t p = (stdio_port) ? 0 : 1;
- BytesReceived = dualusbio_bytes_received(p);
- while(BytesReceived > 0) {
- int ReceivedByte = fgetc(usbio[p]);
- if(ReceivedByte != EOF) {
- handle_cmd2(p, ReceivedByte);
- }
- BytesReceived--;
- }
-
- dualusbio_task();
- }
-}