Thu, 01 Dec 2011 15:31:19 +0100
shark: bugfix + added a complete trace of the old blackbox
carrerashark/TRACE | file | annotate | diff | comparison | revisions | |
carrerashark/main.c | file | annotate | diff | comparison | revisions |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/carrerashark/TRACE Thu Dec 01 15:31:19 2011 +0100 @@ -0,0 +1,48 @@ +Normal CU output idle: (LED3 an) +-------------------------------- +0x1821 0x3c8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * +0x1825 0x3d8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * +0x1820 0x3c8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * +0x1824 0x3d8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * +0x1822 0x3c8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * +0x1826 0x3d8 0x80 0x220 0x320 0x260 0x360 0x2a0 0x80 0x2e0 * + + +Pacecar Taste gedrückt (pacecar packet ändert sich): + LED2 an: 0x3ce fuer 10 sec + LED4 an: 0x3ca fuer 5 sec + +Start Taste gedrückt: + 1x Prog: 0x1a03, danach wieder der normale "idle progwortbetrieb" + -> ab jetzt wird auf allen autos geschwindigkeit = 0 übertragen + -> Spurwechseltasten werden auch ignoriert + -> pacecar packet = permanent 0x3e0 + Alle 5 LEDs leuchten + Tanken + Pacecartaste wird in dem Status ignoriert + +Start Taste zweites mal gedrückt: + LEDs zählen im Sekundentakt hoch (1-5) bis alle leuchten + Dann alle LEDS aus bis auf mittlere und rennstart: + dann folgende Progsequenz: + 0x1403 + <2 zyklen wait> + 0x1c03 + <2 wait> + 0x1203 + <2 wait> + 0x1a03 + <2 zyklen wait> --> RENNSTART HIER: + 0x1023 + 0x1003 + <idle zyklen starten hier> + + +FEHLSTARTVERHALTEN: + LED des controllers blinkt schnell welcher den Fehlstart verursacht hat + Geschwindigkeitswerte werden nicht an die Autos verschickt + Das Auto mit dem fehlstart wird markiert per programmwort: + zb 0x1926 anstatt 0x1826 + + +TANKSTAND: + Die alte CU gibt den Komponenten keinerlei Möglichkeit einer Antwort (die antwort-Peaks fehlen!!!)
--- a/carrerashark/main.c Thu Dec 01 14:41:19 2011 +0100 +++ b/carrerashark/main.c Thu Dec 01 15:31:19 2011 +0100 @@ -122,14 +122,10 @@ MCUCR = _BV(ISC00); // falling edge GICR = _BV(INT0) ; // Enable INT0 - writeBit(DDRD, 4, 1); - writeBit(DDRD, 5, 1); - writeBit(DDRD, 6, 1); - + DDRD |= _BV(PD3) | _BV(PD4) | _BV(PD5); RS232_init(); // initialize RS232 interface - RS232_puts_p(PSTR("CarreraShark 1.0 - INIT OK\n")); - //RS232_puts_p(PSTR("Receiving one complete cycle:\n")); + RS232_puts_p(PSTR("CarreraShark 1.1\n")); sei(); i = 0; @@ -150,7 +146,7 @@ RS232_puts( s ); RS232_putc(' '); } - RS232_putc('\n'); + RS232_putc('*'); i = 0; PORTD ^= _BV(PD5); }