Hi, ich probiere seit einigen Stunden an einer einfachen UART Kommunikation von uC zum PC. Es soll auch eigentlich gar nicht viel passieren. Ich habe mir von Fleury die Libary heruntergeladen und habe versucht einfach nur das Testprogramm auszuführen um zu sehen, ob ich auch alles schön richtig gelötet habe. Ich empfange auch per Terminal Daten, allerdings nur kryptische (siehe Anhang). Das Bild zeigt an, was ich empfange, nämlich das hier: ÿÙå¹?½Ù<0><0>€ Zur Info vielleicht noch: benutze ein ATmega8, 4MHz Quarz (Fuses auch richtig eingestellt). Ich tippe, es liegt am Terminalprogramm. Aber egal was ich auch änder, das Ergebnis bleibt konstant. Gruß und danke für alle guten Tipps, Matze
anhand der eingestellten schnittstelle gehe ich davon aus, das du keine "echte" seriell benutzt sondern eine USB oder UDP RS232, stimmt das ?? desweiteren würde mich noch interressieren womit du die pegelanpassung machst, z.B. Max 232 oder mit Dioden oder wie auch immer, im Code ist auf den ersten Blick kein Fehler zu erkennen. Gruß Dennis
aja, nach genauem hinschauen, fällt mir auf, das im makefile das includieren der uart.c fehlt, meckert der compiler nicht ??
ne, meckert nich. andere programme mit dieser makefile laufen wie gewollt. aber fällt mir jetzt auch erst auf. du hast also auch keine lösung? gruß, matze PS: ich habe vergessen, daß ich von conrad einen USB - Com Adapter habe. aber von nem kumpfel laufen damit programme. allerdings mit der sprintf-Anweisung.. kanns daran liegen
ein teil meiner Lösung wäre, die uart.c mit ins makefile aufzunehmen, der zweite Lösungsansatz liegt an der beschaltung des uC, was ich damit mein, wie du die pegel von uC und usb adapter angleichst ??
> Ich empfange auch per Terminal Daten, allerdings nur kryptische > (siehe Anhang). Das Bild zeigt an, was ich empfange, nämlich das > hier: ÿÙå¹?½Ù<0><0>€ ... > Ich tippe, es liegt am Terminalprogramm. Mit Sicherheit nicht. Wenn du kryptische Zeichen empfängst, liegt das Problem praktisch immer darin, dass das Timing nicht stimmt oder der Pegelkonverter fehlerhaft ist. Da wir mit einiger Sicherheit davon ausgehen können, dass am PC das Timing stimmen wird, bleibt nur dein µC der das Timing vermasselt. > Zur Info vielleicht noch: benutze ein ATmega8, 4MHz Quarz (Fuses auch > richtig eingestellt). Und genau hier liegt meistens das Problem. Du wirst zwar einen Quarz am µC haben, der dürfte aber nicht benutzt werden. Schreib doch mal ein Testprogramm, welches eine Led im Sekundentakt blinken lässt. Blinkt die dann mit 4 Sekunden, weißt du, das der Quarz wirkungslos ist.
Ich habe einfach einen MAX232 als Pegelwandler eingebaut. Ich habe mit einem zweiten mega8 Board und zwei unterschiedlichen quarzen geschaut, ob jeweis eine LED an jedem board unterschiedlichen blinken. und sie tun es. wenn ich die quarze tausche, ändert sich die frequenz. Ich habe noch ein bild angehängt, wie ich meine fuses eingestellt habe. gruß, matze
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.