bootloader Verwendung

Die Programmierung des c't-Bot
Benjamin.Benz

Beitrag von Benjamin.Benz » 08 Okt 2008, 09:52

Wenn es Dir nur darum geht bis Donnerstag das irgendwie hinzubekommen, dann würde ich folgendes machen:

a) Bastel Dir ein eigenes Kommando zusammen
* Definiere den Command-Code in command.h #define CMD_RESET mit einem nicht belegten ASCII-Zeichen
* Erweitere in command.c die Funktion command_evaluate() um eine entsprechende Behandlung von obigem CMD_RESET mit dem von Timo vorgeschlagenen Reset-Code
==> In der von Dir verlinkten Diplomarbeit steht eigentlich schon aller dazu nötiger Code drin!

b) Bastel Dir auf dem PC eine Zeichenfolge die in den command_t aus command.h passt und obigem CMD_RESET entspricht
c) schicke diese Zeichenfolge per telnet, netcat oder irgendwas anderem an den Bot.

Ob das allerdings mit telnet geht weiß ich nicht, denn da könnte die Eingabe nicht ASCII-Zeichen tricky sein.

MfG Benjamin Benz
Zuletzt geändert von Benjamin.Benz am 08 Okt 2008, 11:45, insgesamt 1-mal geändert.

huetz

Beitrag von huetz » 08 Okt 2008, 10:58

Ich habs geschafft :) Ich habe meine serielle Schnittstelle so konfiguriert, dass sie auf den Erhalt eines bestimmten Zeichens hin den Watchdogtimer aktiviert und nach 2 sekunden ein reset durchführt. Ich hoffe, dass meine Probleme dann endlich gelöst sind :)

huetz

Beitrag von huetz » 08 Okt 2008, 14:07

Ich habe es etwas weniger elegant gestaltet :) Ich habe in der ISR-Methode bei Erhalt eines Zeichens eine Abfrage gemacht, ob das Zeichen dem Resetsteuerzeichen entspricht. Sollte dies so sein, so startet der WDT und der Bot resettet sich.

Eine Frage hab ich bezüglich des bots noch. Wenn ich per telnet auf den bot connecte, dann erhalte ich ja die Ausgaben des Bots im Terminal. Hier sehe ich nur kryptische Zeichen und ab und zu halt die Ausgabe meines LCD-Bildschirms. Was genau schickt der Bot da ausser den Ausgaben noch an den PC?

Benjamin.Benz

Beitrag von Benjamin.Benz » 08 Okt 2008, 15:51

Das sind Kommandos vom Typ command_t wie in command.h beschrieben. Der Großteil der Protokoll-Doku findet sich in m Sim-Code in Command.java

http://www.heise.de/ct/projekte/machmit ... /command.h
http://www.heise.de/ct/projekte/machmit ... mmand.java


MfG Benjamin Benz

Antworten