Hallo, ich benötige mal wieder Eure Hilfe. Ich habe das Ansinnen mit meinen Handy Siemens S45 in Verbindung mit einen ATMega8 verschiedene SMS zu versenden . Die Idee habe ich aus den Buch BASCOM AVR von Klaus Kühnel. Wenn ich dazu die Befehle in ein Terminalprogramm eingebe, z.B. „AT+CMSS=1“ versendet wunschgemäß das Handy die erste SMS , welche im Handy abgespeichert wurde. Ich habe ein kleines Probeprogramm geschrieben wo ich die Funktion des ATMega8 am Terminal ansehen kann: $regfile = "m8def.dat" $crystal = 11000000 $baud = 19000 Wait 2 Print "AT+CMSS=1" Waitms 500 Print " " Waitms 500 Print "AT" End Nach Start des Programmes erscheinen die Befehle erwartungsgemäß am Monitor. Verbinde ich jedoch das Handy mit den Mega8 und starte das Programm wird keine SMS versendet. Verbunden sind beide über eine RS232 Schnittstelle mit MAX232. Man sollte ja meinen , dass die selbe Befehlskette erfolgt wie im Terminalprogramm. Habe ich vielleicht einen Denkfehler? Hat jemand schon mal Erfahrung mit so einer Konstellation?
Gast
#2776050
Du hast vergessen die "Enter Taste" zu senden, die du im Terminal Programm ja auch sendest wenn du sie drückst. Dies ist ein weiteres Zeichen das du am Schluss noch senden musst.
Gast
#2776055
sollte carriage return und line feed sein was da noch fehlt - musst du mal gucken
Hallo, ich dache auch erst es sei die Ursache aber der Befehl "PRINT" schickt ein (CR/LF) hinteher. Nur wenn nach den Befehl ein Semikolon steht nicht.
Gast
#2776335
Und was ist, wenn du die einzelnen Zeichen mit pausen dazwischen sendest? Das tust du beim Eintippen ja auch. und kontrolliere noch die Baudrate.
Mario Tunger schrieb: > mit MAX232 soweit ich weiß sind auf der Schnittstelle am Handy 3V, nicht die üblichen 8-12V, evtl. ist jetzt die Schnittstelle am Handy "sauer"
Ich verwende zur Datenübermittlung ein orginal Datenkabel von Siemens für serielle Schnittstellen.Die Übertragung vom Terminalprogramm zum Handy funkioniert ja.Mit den Terminalprogramm kann ich ja via Handy die SMS verschicken.In den Buch BASCOM AVR von Klaus Kühnel wird auch nur mit Print "AT" gearbeitet und in der nächsten Zeile überprüft ob das Handy ein OK zurücksendet.
Mario Tunger schrieb: > $baud = 19000 üblich sind 19200
Danke für Hinweis. Die Änderung brachte leider kein positives Ergebnis.
TXD und RXD Leitung vertauscht?
Mario Tunger schrieb: > Habe ich vielleicht einen Denkfehler? Hat jemand schon > mal Erfahrung mit so einer Konstellation? Rx und Tx sind vertauscht. mfg.
Jonny Obivan schrieb: > TXD und RXD Leitung vertauscht? Siehste. Das sagt er auch. mfg.
Danke für die Hinweise. Die Leitungen sind nicht vertauscht, denn wenn ich den ATMega8 an das Terminalprogramm anschliese werden die Printzeilen am Monitor angezeigt.
Gast
#2776878
Bedeutet aber nicht, dass RXD und TXD vom Handy nicht vertauscht sind!
Wenn das Handy am PC angeschlossen ist, kann ich per Terminalprogramm mit den AT-Befehlen die SMS verschicken. Ich weis die Sache ist sehr knifflig.
Mario Tunger schrieb: > Wenn das Handy am PC angeschlossen ist, kann ich per Terminalprogramm > mit den AT-Befehlen die SMS verschicken. > wenn ich den ATMega8 an das Terminalprogramm anschliese werden die > Printzeilen am Monitor angezeigt. Nur zur Sicherheit: Die Handykabel und AT-Mega sind nach deiner Beschreibung beide so belegt, dass du sie direkt an den PC anschließen kannst. (Belegung als DCE, siehe auch http://de.wikipedia.org/wiki/RS-232#Verkabelung_und_Stecker ) Wenn du den AT-Mega mit dem Handy verbinden willst, muss dieser aber die Rolle des DTE (PC) übernehmen. Du musst also RxD und TxD vertauschen! Am einfachsten würde ich mir einen kleinen Adapter mit zwei D-Sub-Steckern löten, bei dem RxD und TxD gekreuzt sind (Nullmodemkabel, siehe auch http://www.lammertbies.nl/comm/cable/de_RS-232.html#null ) Grüße Stefan
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.