From f7aedcfbdba289952f4a46a9345938bdba7e110d Mon Sep 17 00:00:00 2001 From: Guillaume Chevillot Date: Tue, 4 Mar 2008 09:00:59 +0100 Subject: - Removed 'static' qualifier to 'main_loop' - 'led_flash' function added to detect startup (thanks to Ni) - Temporary empty vectors for right side timer (timer2) added to prevent resets (right side code is not implmented yet) --- analog/motor-power-avr/src/main.c | 57 ++++++++++++++++++++++++++++++++++----- 1 file changed, 51 insertions(+), 6 deletions(-) (limited to 'analog/motor-power-avr/src/main.c') diff --git a/analog/motor-power-avr/src/main.c b/analog/motor-power-avr/src/main.c index a691c6e4..b5e24028 100644 --- a/analog/motor-power-avr/src/main.c +++ b/analog/motor-power-avr/src/main.c @@ -72,8 +72,10 @@ uint8_t curLim_stat_cpt, curLim_stat_period; /* +AutoDec */ /** Main loop. */ -static void -main_loop (void); +void main_loop (void); + +/** Just do a short flash on LEDs */ +void led_flash(void); /* -AutoDec */ @@ -82,6 +84,11 @@ int main (int argc, char **argv) { avr_init (argc, argv); + + // Show that starts + led_flash(); + + DDRB |= 0x0c; //-- /* Pull-ups. */ //PORTA = 0xff; @@ -93,22 +100,50 @@ main (int argc, char **argv) envTest_period = 200; proto_send0 ('z'); sei (); + + // Background "task" while (1) - main_loop (); + main_loop (); + return 0; } +/** Just do a short flash on LEDs */ +void +led_flash(void) +{ + uint8_t ddrb_backup, portb_backup; + + // Save previous state + ddrb_backup = DDRB; + portb_backup = PORTB; + + // Light up LEDs + DDRB = 0x0f; + PORTB = 0x0f; + + // Delay 0.5s + utils_delay(0.5); + + // Restore previous state + PORTB = portb_backup, + DDRB = ddrb_backup; + + return; +} + /** Main loop. */ -static void +void main_loop (void) { /* Uart */ if (uart0_poll ()) - proto_accept (uart0_getc ()); + proto_accept (uart0_getc ()); /* Counter for launching environemental tests */ if (!(envTest_cpt --)) { - envTest_cpt = envTest_period; + envTest_cpt = envTest_period; + launch_envTest (); curLim_temp = get_curLim_temp (temperature); curLim_bat= get_curLim_bat (battery); @@ -219,3 +254,13 @@ proto_send (cmd, size, args); #undef c } +/** Defines empty vector for timer 2 until R pwm file exists */ + +//-- +// To remove when R side file will be generated +EMPTY_INTERRUPT(R_OVF_vect) + +//-- +// To remove when R side file will be generated +EMPTY_INTERRUPT(R_COMP_vect) + -- cgit v1.2.3