From af128458b65c6181794939eca626fdd9e75a6732 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 24 Feb 2015 20:30:27 +0100 Subject: moved ats-watch to avr-projects repo at git.helsinki.at --- ats-watch/ats-watch.c | 147 -------------------------------------------------- 1 file changed, 147 deletions(-) delete mode 100644 ats-watch/ats-watch.c (limited to 'ats-watch/ats-watch.c') diff --git a/ats-watch/ats-watch.c b/ats-watch/ats-watch.c deleted file mode 100644 index 12a97a2..0000000 --- a/ats-watch/ats-watch.c +++ /dev/null @@ -1,147 +0,0 @@ -/* - * spreadspace avr utils - * - * - * Copyright (C) 2013-2014 Christian Pointner - * - * 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 . - */ - - -#include -#include -#include -#include -#include - -#include "util.h" -#include "led.h" -#include "anyio.h" - -#define ATS_PIN PINB -#define ATS_PORT PORTB -#define ATS_DDR DDRB -#define ATS_IN_A_SELECTED 0 -#define ATS_IN_B_SELECTED 1 -#define ATS_IN_A_OK 2 -#define ATS_IN_B_OK 3 -#define ATS_STATUS 7 -#define ATS_LP_MAX 10000 - -void ats_init(void) -{ - ATS_DDR = 0x00; - ATS_PORT = 0xFF; -} - -inline char* ats_get_ats_status(uint8_t stat) -{ - return (stat & (1<= ATS_LP_MAX) { - last_stat = stat; - lp_cnt = 0; - } - - return last_stat; -} - -void ats_task(void) -{ - static uint8_t old_stat = 0; - - uint8_t new_stat = ats_get_status(); - if(old_stat != new_stat) { - ats_print_status(new_stat); - old_stat = new_stat; - } -} - -void handle_cmd(uint8_t cmd) -{ - switch(cmd) { - case '0': led_off(); printf("ok\r\n"); break; - case '1': led_on(); printf("ok\r\n"); break; - case 't': led_toggle(); printf("ok\r\n"); break; - case 's': ats_print_status(ATS_PIN); break; - /* case 'r': reset2bootloader(); break; */ // for testing only - default: printf("error: unknown command\r\n"); return; - } -} - -int main(void) -{ - MCUSR &= ~(1 << WDRF); - wdt_disable(); - - cpu_init(); - led_init(); - ats_init(); - anyio_init(115200, 0); - sei(); - - for(;;) { - int16_t bytes_received = anyio_bytes_received(); - while(bytes_received > 0) { - int received_byte = fgetc(stdin); - if(received_byte != EOF) { - handle_cmd(received_byte); - } - bytes_received--; - } - - anyio_task(); - ats_task(); - } -} -- cgit v1.2.3