hallo im moment versuche ich gerade die serielle schnittstelle zu programiern. folgendes problem mit anghängtem programm: der empfang von 'b' und die bestätigung funktioniert. sobald ich ein 'a' über die serielle schnittstelle sende wird das von meinem programm auch empfangen. d.h. das programm geht in die if schleife. wenn ich jetzt aber eine andere taste drücke z.b. 'e' wir die schleife nicht mehr verlassen. was habe ich vergessen zu programieren? danke tobias
zwischen deinem do und while wird nirgendwo SBUF gesetzt, also kann die schleife ja nicht beendet werden, da SBUF immer denselben wert hat. nämlich "a"
hallo ich dachte SBUF sei der buffer für ein byte der seriellen schnittstelle. und das SBUF nach jedem eintreffen von einem byte mit diesem neuen überschrieben wird. aber scheinbar irre ich mich da. und wieso funktioniert es dann wenn ich ein 'b' sende? das wird empfangen und wenn ich ein 'a' sende ebenfalls. könntest du mir sagen wie ich das dann richtig programieren soll? besten dank tobias
hallo nun habe ich das ganze versucht mit einem interrupt der seriellenschnittstelle zu lösen (neues programm im anhang). das empfangen funktioniert. wenn ich jetzt aber mit der printf() fkt. daten senden möchte geht das nicht mehr. ich glaube das problem könnte sein weil dann ebenfalls der interrupt der seriellen schnittstelle ausgelöst wird. durch das TI flag. ich mache das zum ersten mal und weiss nicht wie ich das umgehen kann oder wie ich die daten korrekt senden kann. muss ja nicht sprintf() sein. tobias
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.