Schon das versucht?Code:... SerRead(daten,1,0); SerWrite(daten[0],1); if (daten[0]='a'){ ...
btw: ich würde NIEMALS eine .exe starten aus solch einer ungewissen quelle!
HAllo, ich hab grad ein Problem.
Ich versuche gerade eine Fernsteuerung für meinen Asuro zu programmiieren. d.h. er soll vorwärts, rückwärts, links und rechts fahren können. das ganze soll über serread funktionieren. was ich hingekriegt habe sieht man ein stück weiter unten, aber funktionieren tuts nich.empfangen tut der asuro sicher zeichen, denn er fährt los, wenn ich irgendeine taste drücke. auch bei b,c und d.Code:#include "asuro.h" int main(void) { Init(); char daten[1]; //Speicher bereitstellen Init(); while(1){ SerRead(daten,1,0); if (daten[0]='a'){ MotorSpeed(170,170); } else if(daten[0]='b'){ MotorSpeed(0,0); } else if(daten[0]='c'){ MotorSpeed(255,170); } else if(daten[0]='d'){ MotorSpeed(170,255); } } while(1); return 0; }
PS: Die fernsteurerung erfolgt dann über ein VB2005-Programm, das bei einem klick auf bestimmte tasten a,b,c oder d sendet. ich habs zur sicherheit auch schon mit dem hyperterminal audprobiert.
Falls ihr es mal mein Fernsteuerungsprogrogramm versuchen wollt, könnt ihr es hier downloaden.
Schon das versucht?Code:... SerRead(daten,1,0); SerWrite(daten[0],1); if (daten[0]='a'){ ...
btw: ich würde NIEMALS eine .exe starten aus solch einer ungewissen quelle!
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
Und was hätte das für einen Sinn?
Dann würde der Roboter mir halt den Buchstaben zurücksenden, aber was soll ich dann im hyperterminal damit anfangen?
Außerdem: Das Programm war nur zum ausprobieren für euch gedacht. falls du willst kann ich auch die VB-Projekt-Dateien zum download anbieten. die würden euch bloß warscheinlich nichts bringen, wenn ihr kein VB2005 habt.
Entschuldige bitte, es hätte den Sinn zu prüfen, ob dein asuro auch das empfängt was du erwartest.
Vermutlich ist hier dein Problem versteckt:
if (daten[0]='a'){
sollte besser
if (daten[0]=='a'){
usw. heisen.
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
MUSS sogar. ein einzelnes = ist eine zuweisung. daten[0] ist also nach der ersten "prüfung" immer ein "a", da es hier zugewiesen wird.
Lesezeichen