Hallo zusammen. Im Anhang findet ihr die Eagle-Dateien für mein Board, auf welchem ein Mega8 über die serielle Schnittstelle mit einem PC kommunizieren können soll. Programmiert wird in Bascom. Das Problem: Ich kann problemlos Daten vom AVR an den PC senden und diese in mehreren Terminalprogrammen anschauen. Nur: Ich kann keine Daten vom PC an den Controller senden. Beispielprogramm: $regfile="m8def.dat" $crystal=3686400 $baud=2400 Dim i as Byte Print "Hallo" Do If UCSRA.RXC=1 Then i=UDR Select case i Case "H" Print "Hallo" Case "A" print "Adieu" Case Else Print "Unbkannter Befehl" End select End if Loop End In den Terminalproggis sehe ich jeweils das "Hallo", doch wenn ich dann ein H oder ein A schicke, passiert gar nix. Es kommt nichts zurück. Die Terminalprogramme werden auf einem Windows98SE Laptop von 1998 laufengelassen, der hat einen COM-Port, sollte klappen. Darum meine Anfrage hier, ob jemand mal die Hardware prüfen könnte, ob ich alles richtig verbunden habe. (brauche nur einfache Übertragung, also nix Handshake etc.) Herzlichen Gruss und Danke Mario
Mir ist gerade noch etwas aufgefallen. Ich hab ein Programm geschrieben, dass immer nur "Hallo" sendet, zum Testen. Am alten Windows 98 Schlepptop kommt alles korrekt an. Verwende ich hingegen das genau gleiche Terminalprogramm mit genau den gleichen Einstellungen unter Windows XP (hab zwei PCs probiert), dann kommt garnix an. Hänge ich den AVR danach an den Laptop, kommt wieder alles sauber an.... Wieso will das unter XP nicht? Das Empfangsproblem besteht aber auch beim Windows 98. Herzlichen Gruss Mario
Mach mal folgendes: Im Twerminalprogramm stellst du ein 'No Handshake' Deine RS232 ist auf dem Bord dahingehend nicht sehr gut beschaltet. Wenn du sowieso kein Handshake haben willst, dann mach die Beschaltung so wie hier: http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART Achte darauf, wie die Pins 4,8,6 beschaltet sind.
[OT] Geiler Schaltplan! [/OT] Sonst kann ich mich nur Karl-Heinz anschliessen.
Aaalso, ich hab mal die Schaltung aus eurem Link hergestellt. Nun kann ich an den PCs gar nix mehr lesen. (Bei XP ging es unterdessen auch). ABER: Der AVR sendet alle 50mS etwas. Wenn ich am Oszi gucke (messe gegen GND), dann "zuckt" es regelmässig auf am AVR an Pin PD1, am Kabel (PC-Seite) zuckt es an Pin3. Der AVR sendet also etwas... Nur: Wieso kommt bei den PCs nichts an? Baudraten stimmen, Handshake ist aus..??
Hallo, Brücken drin? DTR - DSR und RTS -CTS jeweils auf der PC-Seite brücken, auch wenn ohne Handshake eingestellt ist. Die Controller-ICs reagieren da sehr verschieden, weil das meist schon in der Hardware ausgewertet wird. Müßten Pin 6 mit Pin 4 und Pin 7 mit Pin 8 gebrückt sein, wenn ich jetzt nicht mit der Belegung irre. Gruß aus Berlin Michael
Ich habs genau so gemacht, wie es im obigen Schaltplan steht. wie meinst du denn, auf PC-Seite brücken... Da kann ich ja nur Stecker einstecken. Mehr ja nicht. Ich hab jetzt Pin 4,6,8 auf meinem Board gebrückt. Pin 2 ist mit Pin 14 des MAX verbunden, Pin 3 mit Pin 13 des Max, Pin 5 liegt auf GND. Mein Kabel: 2==>3 3==>2 5==>5
> ich hab mal die Schaltung aus eurem Link hergestellt. Das ist gut. > Nun kann ich an den PCs gar nix mehr lesen. (Bei XP ging es unterdessen > auch). Das ist schlecht. > Der AVR sendet alle 50mS etwas. > Wenn ich am Oszi gucke (messe gegen GND), dann "zuckt" es regelmässig > auf am AVR an Pin PD1, Das ist wiederum gut... > am Kabel (PC-Seite) zuckt es an Pin3. Das ist nun wiederum schlecht, da Pin3 TXD ist (hier kommen die Daten vom PC raus)! > Der AVR sendet also etwas... Das mag sein... nun musst du nur noch auf einer Seite Pin 2 mit Pin 3 tauschen und gut is. Gruß, Magnetus
Hallo, habe eben erst in Deine "Schaltung" geschaut, das dürfte so nicht klappen... Der MAx legt Dir die Quittungsleitungen fest und wenn Du Pech hast, will der Controller im PC dann nicht. Gruß aus Berlin Michael
Hallo, laut seiner Schaltung hat er Pin 2 ist mit Pin 14 des MAX verbunden, das ist Rx auf der AVR-Seite. Sein Kabel hat Pin 2 auf Pin 3 PC, das würde also stimmen. Die umgekehrte Richtung laut Schaltung und Kabelbeschreibung auch. Wenn das Kabel selbst gebaut ist, auf der PC-Seite Brücke zwischen 4 und 6 sowie zwischen 7 und 8 (jeweils!, nicht alles miteinander...). Wenn es ein voll beschaltetes Kabel ist, kannst Du natürlich auch auf der AVR-Seite brücken. Das würde mich aber wundern, denn ein 1:1 Kabel hätte dann auch 2 mit 2 und 3 mit 3 verbunden. Fertige gekreuzte Kabel (eben 2 mit 3 und 3 mit 2) sind Null-Modem-Kabel, da ist der Rest meist auch speziell beschaltet bzw. gebrückt... Ich benutze immer 1:1 mit allen 9 Adern beschaltet, auf der AVR-Seite eine Buchse, dort dann 2 und 3 gekreuzt und obige Brücken. Kabel sind normale 9pol. Sub-D-Verlängerungen aus der Kramkiste. Gruß aus Berlin Michael
Ah, I hobs! Hab die Leitungen auf MAX-Seite getauscht. Jetzt geht alles! Herzlichen Gruss und vielen Dank! Mario
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.