ich benutze nichts dergleichen.
Beim weißes-Blatt-Test kommen die richtigen zeichen immer sehr willkürlich, bei manchen buchstaben funktionierts in 70% er fälle, bei anden fast garnicht....
Druckbare Version
ich benutze nichts dergleichen.
Beim weißes-Blatt-Test kommen die richtigen zeichen immer sehr willkürlich, bei manchen buchstaben funktionierts in 70% er fälle, bei anden fast garnicht....
hmm... dann müsste es an der einstellung des potis liegen.
klemm eine taste auf deiner tastatur mit irgendwas fest, so dass sie dauerhaft gedrückt bleibt. und dann drehe SEHR langsam und vorsichtig am poti, biss du die meisten richtigen zeichen zurückbekommst.
Mahlzeit,
ich habe das Problem auch gehabt. Die Potistellung ist sehr genau zu treffen. am besten scheint es so zu gehen :
Transceiver hinlegen, ein Blatt Papier davor oder drauf. Dann mit einer Hand tippen ( x c v usw ) mit der anderen das Poti drehen bis was kommt.
Dann Feineinstellung mit einer weißen Fläche die
*recht weit weg ist ( 60cm warn hier gut)*
Dann den Selbsttest nehmen und fummeln, bis die korrekte Antwort kommt
also ab bc cd usw.
Dann klappts.
Gruß
Klaus
Hi!
Ich versuche seit Tagen die Kommunikation zum Asuro hinzukriegen aber es wird immer schlimmer....
Naja im Moment komm ich nicht weiter weil der Asuro den Serial Test einfach überspringt. Ergibt
Serial Test
und gleich danach
LED Test
aus
Wie kann das denn sein?????
Kann das an den Batterien liegen als Steigerung von "VL" was vorher kam? Die Spannung (OUT+ -> OUT-) sieht aber noch gut aus.
Gruß
Hallo
Ja, das erscheint mir auch seltsam, laut Code sollte der asuro 0xFE(=254) mal senden:
void SerialTest(void)
{
unsigned char data;
unsigned char i;
for (i = 0; i < 0xFE; i++) {
StatusLED(GREEN);
SerRead(&data,1,0xFFFE);
StatusLED(RED);
if (data != 'T') data += 1;
SerWrite(&data,1);
}
}
/* END Serial Test -------------------------- */
(Aus der Datei Test.c im Ordner SelfTest der asuro-CD)
Fragt sich nur, was er senden soll? Wenn er was empfängt ist es ja klar, aber was wird gesendet, wenn er nichts empfängt? Wird dann bis zum Timeout von SerRead() gewartet? Oder wird aufgrund eines Fehlers im Aufbau deines asuro oder wegen "Fremdlicht" bei SerRead() irgendwas eingelesen und gesendet? Wenn dieses "Irgendwas" ein nicht darstellbares Steuerzeichen sein sollte, würde es dein scheinbares "überspringen" des Serial-Test erklären. Vielleicht hilft das weiter:
...
StatusLED(RED);
if (data != 'T') data += 1;
if (( data < 32) || (data > 127)) StatusLED(YELLOW); // man könnte auch auf z.B. <'a' und >'z' testen
SerWrite(&data,1);
...
Wenn dann die StatusLED gelb leuchtet wird ein Steuerzeichen gesendet...
gruß
mic
Nachtrag: Ähm, manchmal bin ich schon bescheuert. Vermutlich kannst du ja noch gar nicht flushen. Trotzdem bleibt die Frage: Was wird gesendet, wenn nichts empfangen wurde?
Ich hab mir mal die Sourcen von readserial angeguckt:
void SerRead(unsigned char *data, unsigned char length, unsigned int timeout)
{
unsigned char i = 0;
unsigned int time = 0;
UCSRB = 0x10; // enable receiver
/* non blocking */
if (timeout != 0) {
while (i < length && time++ < timeout) {
if (UCSRA & 0x80) {
data[i++] = UDR;
time = 0;
}
}
if (time > timeout) data[0] = 'T';
}
/* blocking */
else {
while (i < length) {
if (UCSRA & 0x80)
data[i++] = UDR;
}
}
}
D.h.: Wenn er nichts empfängt sollte er ein T ausgeben, da timeout != 0.
Ich verstehe es einfach nicht. Darüber müsste ich mehr über die Funktionsweise
verstehen (UCSRA / UDR was ist das, wo sind hier Wartezyklen).
Ich kann nicht sehen, dass irgend etwas geschrieben wird, auch leuchtet die LED nicht Orange. Ich hab auch schon einen neuen Satz Batterien ausprobiert.....
Da kommt dann manchmal auch wieder "VL"
verzweifelnd...
Hauke
also VL heisst mit 100%iger sicherheit dass die batterien zu leer sind.
sendet er serial test und direkt danach led test oder sendet er zwischendurch TTTTTT.... ?
Hi!
Naja 100% Sicherheit ist so ne Sache, bei frisch gekauften Batterien eher unwahrscheinlich.
Das Log des Tests:
-- ASURO Testing --
LED Test
Line Test
Switch Test
-- ASURO Testing --
LED Test
Line Test
Switch Test
Odometrie Test
Motor Test
Serial Test
-- ASURO Testing --
LED Test
ffggLine Test
Switch Test
Auffällig ist diesmal, dass er beim ersten Mal schon von Switch Tests wieder an den Anfang springt.
Generell vergeht zwischen Serial Test und dem Anfang keine Sekunde.
Weiß den jemand, wo ich den Code, der das LV generiert finde?
Gruß
Hauke
das LV wird im bootloader generiert. an den programmcode kommst du leider nicht ran.
und es heisst mit sicherheit, dass die prozessorspannung zu niedrig ist.
- entweder: die batterien sind zu leer
- oder: die batterien sind zu billig. dann fällt die spannung schnell stark ab.
- oder: irgend wo ein lötfehler, kriechstrom, kalte lötstelle.... die dafür sorgt dass der prozessor nicht die volle dosis bekommt.