Ich möchte Bitfolgen (also z.B.:01001110, 00011101,..) vom µC (AT90S4433) an den PC schicken. Suche schon seit einiger Zeit nach den benötigten Befehlen, hab aber leider nichts gutes gefunden. Wollte nun fragen ob mir hier jemand helfen könnte ? thx dario
ich hab das tut vor einiger Zeit durchgemacht (schon einige Zeit her), hab allerdings dabei einige Sachen nicht ganz begriffen, und weil ich sachen die ich mache auch verstehen will, verworfen (=vergessen). Habs nochmal kurz angeschaut, und einige Fragen: - warum muss man die Pin's 4, 8 und 6 miteinander verbinden (ist das wirklich nötig) Ausserdem müsste ich auch noch wissen wie ich Bitfolgen, die vom PC geschickt werden empfangen kann simon
Hallo Dario, Das mit den verbundenen Leitungen muss nicht zwingend sein, da sind sogenannte Handshakeleitungen (Sendebereitschaft, Betriebsbereitschaft, Endgerät bereit) miteinander verbunden. Manches Terminalprogramm braucht' s vielleicht (schadet auch nicht). Datenempfang z.B.: http://www.mikrocontroller.net/forum/read-4-569.html#569 oder mal unter "Suchen" UART eingeben.
thx, hab mir das mal angeschaut, und da ist mir was aufgefallen: ldi temp,0xFF ;0xFF ins Arbeitsregister r16 laden out DDRB,temp ;Inhalt von r16 ins IO-Register DDRC ausgeben zuerst ladest du FF ins AR r16 und gibst das dann aus. Aber eigentlich solltest du doch die Eingabe über das UART ausgeben. naja, bin mir nicht sicher... wollte nur mal fragen... ausserdem: klappt das alles auch beim 4433 ? simon
Hallo, so geht das bei mir, evtl. nützt Dir das was, allerdings nur Ausgabe vom Controller. Das zeigt Dir jedes Terminalprogramm an. Gruß Mike
Ich habe gerade gesehen RX Inerrupt ist noch an, der wird abstürzen wenn Du Daten vom PC sendest, also bit noch löschen. Entschuldigung Mike
Hab mir jetzt etwas selbst zusammen gebaut/geproggt (siehe datei :) ) hab an den Port B LED's gehängt (an jeden Pin eine) und dachte eigentlich, dass, wenn ich jetzt per PC FF schicke, die Lämpchen angehen (hab die Lämpchen auf GND gezogen). Nur leider klappts nicht, kein Leuchten, nichts :( könntet ihr mal schauen, was da falsch sein könnte? dario
thx to bernhard T ja, hatte ich vergessen... aber leider klappts immer noch net :-( da muss noch was anderes sein... dario (hab die neue version angehängt)
muss ich vielleicht irgendwas an Einstellungen am PC ändern? dario
hab das eigentlich in diesen 2 Zeilen erledigt: ldi temp, RAMEND ;Stackpointer initialisieren out SP, temp sollte so schon stimmen oder? (habs aus nem tut) simon
@DARIO Hatte ich übersehen, weil du zuerst den Port initialisierst. Welches Programm nutzt du auf dem PC ? Simmt dort die Baudrate 9600,8,N,1 Diese könnte noch ein Chargenbedingter Fehler sein, bei einigen Chargen funktioniert die Befehlsfolge LOOP: rjmp LOOP in Verbindung mit aktiven Interrupt nicht immer. ATMEL empfiehlt hier: LOOP: nop rjmp LOOP
als programm hab ich mir ein eigenes gemacht (C++, WriteFile), aber wenn du eins weisst, dass relativ einfach ist (bei Hyperterminal begreif ich immer noch nicht, wie ich eine einfache Zeichen-, resp. Bit-Folge senden kann), dann sags mir doch, damit ich fehler beim Programm ausschliessen kann (obwohl sehr unwahrscheinlich, weil abgeschrieben) die Baudrate stimmt, insofern N=Keine und kein Protokoll i.O. ist das mit dem nop hab ich geändert, hat aber nichts gebracht :( dario
Die letzte Fehlermöglichkeit könnte hier noch RTS/CTS und DSR/DTR auf PC-Seite sein. Am einfachsten helfen hier Brücken zwischen RTS-CTS und DSR-DTR. Oder schau die hiermal ein besseres Terminalprogramm an: http://bray.velenje.cx/avr
hat leider alles nicht genutzt :-( denke mal, jetzt kanns nur noch an der Schaltung liegen... werde desshalb mal alles neu zusammenbauen dario
Hallo, der Miki Merten hat neulich mal den Link reingesetzt: http://bray.velenje.cx/avr . Mir gefällt der recht gut und er ist wirklich smart 224 Kb, kein Eintrag in die Reg..
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.