Hört sich nicht weiter schlimm an.
Die Odometrie und die Taster muss man erst kalibrieren. Also mach dir mal selber ein paar Testprogramme mit denen du die Odometrie und die Taster auswertest und diese damit einstellen kannst.
Hi leute,
hab zu meinem Geb nun endlich auch ein Asuro bekommen und ihn gleich mal zusammen gelötet!!
Das modul der seriellenschnitstelle funktioniert ohne probleme, gleich aufs erste mal löten
aber beim asuro hats n paar kleinere probleme...
die wären:
beim Switch test:
wenn ich T 4 +5 gleichzeitigdrücke, leuchten die Leds, aber der Linke motor dreht sich scwach...
beim drücken von T6 leuchtet die D16 ganz schwach auf....
Odeometrie Test
funktioniert überhaubt nix...
ned help.. thx im vorraus
gruß
Hört sich nicht weiter schlimm an.
Die Odometrie und die Taster muss man erst kalibrieren. Also mach dir mal selber ein paar Testprogramme mit denen du die Odometrie und die Taster auswertest und diese damit einstellen kannst.
Grüße,
Harri
ok, hab nur ein paar codes draufgeflashed und ausprobieren wollen, aber da tut jetzt seit ich den selftest überschrieben habe rein NIX !!!!
diesen code hab ich u.a. ausprobiert, aber der asuro macht rein garnichts.. er geht an.. dan leutet die d12 kurz orange.. die back leds kurz leicht rot..Code:#include "asuro.h" int main(void) { Init(); FrontLED(ON); BackLED(ON,ON); StatusLED(GREEN); MotorDir(FWD,FWD); MotorSpeed(0,0); while(1); return 0; }
danach die d12 grün. egal was für nen code ich eingebe. laut flash tool hat alles geklappt!! kann mir jemand bitte helfen??
gruß
Hi listner,
möglicherweise hast du den Code nicht gespeichert bevor du kompiliert hast.
Ausserdem kann dein Code nicht funktionieren, ich würde das so machen:
Die Schleife while(1) muss weiter vor.Code:#include "asuro.h" int main(void) { Init(); FrontLED(ON); BackLED(ON,ON); StatusLED(GREEN); while(1); { MotorDir(FWD,FWD); MotorSpeed(0,0); } return 0; }
ok, vielen dank, ich hab das davorige speichern vergessen :P
ich werde jetzt mal ein paar tests machen, und mich dann wider melden
gruß
der code würde schon funktionieren, dein code würde eher problematisch wenn jemand auf die idee käme die geschwindigkeit PERMANENT während der schleife zu verändern .... sein eigener code war da schon besser mit
while(1);
EDIT: Ich bin mir sogar ziemlich sicher das du mit dem sich permanent wiederholenden setDir() die autoencode funktion empfindlich störst und wenn da auch noch das setspeed ist sogar den PWM generator verwirrst
OK, danke. Man sieht wieder einmal dass ich eine "Programmierpflaume" bin, na wenigstens hat der Tip mit dem Speichern gestimmt.
^^so geht es mir auch, es lieg am proggen xD
und zwar:
er bootetCode:#include "asuro.h" int main(void) { Init(); FrontLED(ON); BackLED(ON,ON); if (PollSwitch()==0) {StatusLED (RED);} else {StatusLED (GREEN);} while(1); { if (PollSwitch()==0) {StatusLED (RED);} else {StatusLED (GREEN);} } return 0; }
- die back leds leuchten, die front led leutet, die status led leutet rot
ich drücke nen taste
- nichts passiert
liegt bestimmt am code
kann mir jemand mal n paar tipps geben auf was ich achten soll und was oben falsch ist?? [-o<
Hallo listner,
nimm mal das Semikolon hinter dem
weg. Dann sollte es funktionierenCode:while(1)
nur für den fall das es n tipp-fehler war, ignoier einfach folgendes
while(BEDINGUNG) ANWEISUNG; führe anweisung aus bis bedingung falsch
while(BEDINGUNG) ; führe praktisch NICHTS aus solange bis bedingung ungültig
while(BEDINGUNG) {ANWEISUNGSBLOCK} führe alle anweisungen imn dem block aus bis bedingung ungültig .... hier nie semikolon, ausser hintern den einzelnen anweisungen im block natürlich ^^
Lesezeichen