Hallo Freunde, ich hab folgendes Problem und weis jetzt einfach nicht weiter! Nun hoffe ich, dass mir jemand von euch weiterhelfen kann! Und zwar hab ich mir ne kleine Schaltung mit dem ATmega16 gebastelt, der über die serielle Schnittstelle mit nem 56k Modem verbunden ist. Das hab ich dann an die Telefondose angeschloßen. Den Controller hab ich so programmiert, dass er sobald das Klingel-Signal (ASCII-Wort: "RING") über die serielle Schnittstelle übertragen wird, den Befehl "ATA" + <cr> an das Modem schickt. Das hat nämlich zur Folge, dass ein eingehender Anruf abgehoben wird. Das funktioniert auch alles prima wenn ich über das Hyperterminal meines PCs die Telefonnummer anrufe, an der der Controller angeschloßen ist. Die Modems syncronisieren sich und dannach steht die Verbindung. So weit so gut! Jetzt hab ich mich aber entschloßen für meinen PC ein Einwahlprogramm mit Visual Basic 6.0 zu schreiben, dass sich auch mit dem Controller verbinden kann. Dafür schicke ich über die serielle Schnittstelle folgenden Befehl: "ATD xxxxx" + <cr>. Der Controller erkennt auch das jemand anruft und die beiden Modems versuchen sich zu syncronisieren (machen lustige Geräusche :-) ). Bevor sie aber in den Daten-Modus wechseln, trennt das Modem meines Controllers sie Verbindung und mein Terminal-Programm empfängt "No Carrier"! Ich denke das liegt bestimmt daran, dass ich im Gegensatz zu dem Hyper-Terminal dem Modem bestimmte Initialisierungs-Befehle nicht gesendet habe. Kann mir bei dem Problem nicht jemand helfen?? Einstellungen: uC --> Modem : Baud,weitere Einst.: 19200 ,N ,8 , 1 PC --> Modem : Baud,weitere Einst.: 19200 ,N ,8 , 1
Hast Du vielleicht die Möglichkeit den Datenstrom von PC->Modem abzuhören; da würde man sehen was Hyperterm macht.
Hi Michael, vielen Dank für deine Antwort! Genau das hab ich gerade gemacht! Und zwar indem ich die Modem-Protokol Datei analysiert hab! Da war dann folgender Initialisierungs-Befehl drin: AT &F E1 V1 &A3 &D2 &C1 S0=0 Diesen hab ich in mein kleines Terminal-Programm eingebunden und seit her kommt ne Verbindung zu stande! Hurra! Dumm ist jetzt nur noch, dass mein Controller die Dateien die ich im schicke richtig versteht aber wenn ich mir was von ihm schicken lasse, sind das nur willkürliche Zeichen. Ich gehe mal schwer davon aus, dass irgend eine Baudrate nicht richtig eingestellt ist. Aber warum versteht dann mein Controller, dass was ich schicke?? Was leider auch nicht funktioniert ist, dass ich mit "+++" wieder in den Befehlsmodus zurück komme! Gruß Daniel
kleine Ergänzung: habe auch noch folgenden Initialisierungs-Befehl eingefügt: ATS7=60S19=0L1M1\N3%C0&H1N1X4 Was der macht weis ich nicht, aber jetzt funktionierts :-))
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.