www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mit SMS ATMega8 ansteuern


Autor: Hendrik Xyz (wolf77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

ich muss in Form einen Schulprojektes es schaffen, mit Hilfe eines 
Mikrocontrolers den SMS speicher meines Handys (Siemand S25) auszulesen, 
was bei einem bestimmten Inhalt einer SMS dan dazu führt das meine 
ATMega8 dann einen Ausgang schaltet.

Bei fertigstellung möchte ich dann mit meinem Handy eine SMS versenden, 
was das andere handy, welches mit einem Datenkabel am Atmega8 klemmt, 
dann empfängt und der atmega8 dann den Speicher ausließt und bei 
bestimmtem Inhalt eine Aktion startet.

Doch nun stellen sich mir dort einige Probleme und Fragen in den Weg.

-Ich wollte gerne Testweise das Handy über das Datenkabel (Seriell) am 
PC anschließen und mit hilfe von Hyperterminal mal die AT befehle 
durchprobieren. Doch leider bekomm ich dies nicht hinn, da mein 
Hyperterminal keine Befehle ans Handy sendet, bzw, es warscheinlich 
garnicht erkennt. Nachdem ich einen AT befehl eingebe und abschicke 
passiert einfach nichts und ich weiß nicht woran es liegt :(

Meine Settings im HT:
9600 Bd(habe aber auch andere probiert)
Bits: 8
Party: none
Stopbits: 1
Flowcontrol: none

-Dessweiteren weiß ich nicht genau wie mit was ich die Spannung 
runterregele, wenn ich das Datenkabel mit dem ATmega8 verbinde.
Ich habe in meinem Datenkabel einen Pegelwandler im Stecker, was 
warscheinlich die Orginalspannung vom Handy (ich weiß nicht genau wie 
hoch die ist, könnte so bei 3 V liegen) hoch regelt. Nun muss ich ja 
aber auf die Betriebsspannung vom Mirkocontroler kommen und der fährt 
mit 5V.

Ich währe wirklich sehr sehr dankbar für Hilfe bei meinem Projekt, damit 
ich damit weiterkomme :)

gruß Hendrik

Autor: Martin Thomas (mthomas) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hendrik Xyz schrieb:
> Hallo Zusammen,
>
> ich muss in Form einen Schulprojektes es schaffen, mit Hilfe eines
> Mikrocontrolers den SMS speicher meines Handys (Siemand S25) auszulesen,
> was bei einem bestimmten Inhalt einer SMS dan dazu führt das meine
> ATMega8 dann einen Ausgang schaltet.
>
> Bei fertigstellung möchte ich dann mit meinem Handy eine SMS versenden,
> was das andere handy, welches mit einem Datenkabel am Atmega8 klemmt,
> dann empfängt und der atmega8 dann den Speicher ausließt und bei
> bestimmtem Inhalt eine Aktion startet.

Forum schon abgesucht? Ist schon einiges dazu geschrieben worden.

> Doch nun stellen sich mir dort einige Probleme und Fragen in den Weg.
>
> -Ich wollte gerne Testweise das Handy über das Datenkabel (Seriell) am
> PC anschließen und mit hilfe von Hyperterminal mal die AT befehle
> durchprobieren. Doch leider bekomm ich dies nicht hinn, da mein
> Hyperterminal keine Befehle ans Handy sendet, bzw, es warscheinlich
> garnicht erkennt. Nachdem ich einen AT befehl eingebe und abschicke
> passiert einfach nichts und ich weiß nicht woran es liegt :(

Möglicherweise daran, dass der Pegelwandler mit Datenkabel nicht mit 
Strom versorgt wird.

> Meine Settings im HT:
> 9600 Bd(habe aber auch andere probiert)
> Bits: 8
> Party: none
> Stopbits: 1
> Flowcontrol: none

Man teste mit Brays Terminal: 
http://sites.google.com/site/braypp/terminal
Dieses Programm bietet die Möglichkeit per Buttons (unten links) DTR und 
RTS zu schalten (dabei Flowcontrol auf none lassen). Damit kann man 
ausprobieren, ob der Pegalwandler im Datenkabel sich den Strom von der 
seriellen Schnittstelle abzwackt und von welchem Pin (evtl. von beiden).

> -Dessweiteren weiß ich nicht genau wie mit was ich die Spannung
> runterregele, wenn ich das Datenkabel mit dem ATmega8 verbinde.
> Ich habe in meinem Datenkabel einen Pegelwandler im Stecker, was
> warscheinlich die Orginalspannung vom Handy (ich weiß nicht genau wie
> hoch die ist, könnte so bei 3 V liegen) hoch regelt. Nun muss ich ja
> aber auf die Betriebsspannung vom Mirkocontroler kommen und der fährt
> mit 5V.

Habe zumindest einige Datenkabel gesehen, die nicht von "Handy-Seite" 
versorgt werden (s.o.). Also erstmal ausprobieren, woher das Datenkabel 
versorgt wird.

Im ersten Tests kann man dann einen MAX232 o.ä. mit dem AVR verbinden, 
Versorgungsleitungen das Datenkabels kann man über ungenutzten 
RS232-Ausgang des MAX232 auch an D-SUB9 Steckverbinder und damit den 
Pegelwandler im Kabel versorgen. Spart die Bastelei eines eigenen 
Kabels. Später kann man dann den AVR über 5V-3V Pegelwandlung direkt mit 
dem Handy verbinden ohne RS232 hin-zurück dazwischen.

> Ich währe wirklich sehr sehr dankbar für Hilfe bei meinem Projekt, damit
> ich damit weiterkomme :)

Weiteres siehe auch interfacing GSM devices Application Note von 
atmel.com

Autor: Hendrik Xyz (wolf77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen dank, mit Brays Terminal funktioniert das ganze auch etwas 
handlicher, aber auf jedenfall klappt nun die kommunication zwischen PC 
und Handy!

Sogar mit Hyper Terminal geht es nun, wahren wohl falsche 
konvigurationen.
Mit folgenden einstellung funktioniet es nun:

> Übertragungsrate: 19200 Bd
> Bits: 8
> Party: none
> Stopbits: 1
> Flowcontrol: Xon/Xoff

Hinweis: beim Hyperterminal von Windows darf kein Echo eingeschaltet 
sein!

Nun habe ich ein kleines Problem mit Brays Terminal, und zwar weiß ich 
nicht wie ich den PDU code einer SMS abschicken soll, da dies im HP von 
Windows normalerweise mit Strg-Z realisiert wird. Aber in Brays Terminal 
habe ich anscheinend nur die Möglichkeit auf "Senden" (Enter) zu 
drücken, womit es nicht klappt.

Wie löse ich dies Problem?

gruß Wolf


ps.: zu der Verbindung mit der MCU und der Pegelwandelung komme ich 
etwas später nochmal drauf zurück!

Autor: Niels Keller (niels-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hendrik,

das Schalten ist bereits vollständig in diesem Projekt umgesetzt:
Beitrag "GSM GPS - Tracker"

Die PDU- Geschichte ist hier:
Beitrag "SMS in PDU Format konvertieren"
und hier:
Beitrag "SMS im PDU.Format in Text umwandeln"

Grüße Niels

Autor: Hendrik Xyz (wolf77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vielen dank Niels, deine seiten sehen Hilfreich aus, ich werde sie mal 
durcharbeiten.

Aber leider weiß ich nun immer noch nicht, wie ich den PDU code in Brays 
Terminal abschicken kann, da ich kein Strg-Z benutzen kann so wie in 
Hyper Terminal

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kenne das Brays Terminal nicht.
Aber was passiert, wenn du Control-Z drückst und dann auf 'Abschicken' 
drückst?

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hendrik Xyz schrieb:

> Aber leider weiß ich nun immer noch nicht, wie ich den PDU code in Brays
> Terminal abschicken kann, da ich kein Strg-Z benutzen kann so wie in
> Hyper Terminal

In Brays Terminal kannst du beliebige Zeichen als Hexcode senden. Bsp:
stefan = ste$66an

Dein Control-Z ist entsprechend $1A
http://www-cip.physik.uni-bonn.de/pool/infos/ascii/table.htm

Autor: Niels Keller (niels-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe mir Deinen Ausgangsartikel noch mal etwas genauer durchgelesen.

Ich muss sagen, dass ich wirklich überrascht bin, welches Niveau von 
Euch da verlangt wird. Ganz ehrlich (bin ich im Grunde immer): So etwas 
zu fordern ist für eine Schularbeit völlig überzogen. Im Forum wurde das 
Auslesen (vor meinem Projekt) immer nur mit Textmode-fähigen 
Mobiltelefonen umgesetzt. Denn da steckt einiges drinne:

1. SMS schreiben können. Hier ist bereits die Konvertierung ins 
PDU-Format nötig. Die nächste Hürde ist das Absenden. Und da kommt genau 
das, wo Du gerade Probleme mit hast ins Spiel (Strg+Z). Nicht immer wird 
die SMS auch wirklich akzeptiert. Das Zeitfenster, dass Dir das Gerät 
hier lässt ist verdammt klein. Mein Code wurde so optimiert, dass er die 
SMS so lange versendet bis es klappt, dass kann mitunter 30 bis 80 
Versuche lang gehen. Bis ich das raus hatte, verging so seine Zeit.

2. Viel heftiger ist es die SMS zu lesen. Das Ganze ist von vielen 
Faktoren abhängig. Im Grunde müßte man hier elendig lange Seiten an 
Dokumentation lesen. Ich habe es auch nur in abgespeckter Form drinne. 
Die Entwicklung dafür ging recht lange.

3. Eine "Befehlssprache" entwickeln. Ist recht einfach, da man es mit 
einer RS232-Verbindung direkt testen kann.

4. Eine Fehlerkennung. Das ist knallhart. Bei einem extern 
angeschlossenen Gerät, kann so gut wie alles schief gehen. Angefangen 
vom Kommunikationsfehlern bis hin zu kompletten Aufhängern.

5. Wenn das jetzt auch noch in ASM verlangt wird - so war das bei mir 
(Schule), dann sehe ich schwarz, das in einem vernünftigen Zeitrahmen 
umzusetzen.

Mein Fazit: Falls Du Probleme bekommen solltest, kannste Dich gerne mal 
per PN bei mir melden. Ich werde dann versuchen, wo es geht, Antworten 
zu finden.

Autor: Hendrik Xyz (wolf77)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich hätte mal eben eine Zwischenfrage, un zwar ob jemand weiß welche 
schnittstellen spannung mein Siemens S25 wohl haben mag? bzw. wo ich 
diese Infos herbekommen, unter Google ist schwer was zu finden.

Das ist für mich wichtig, da ich ja wissen muss ob ich später einen 
Pegel wandler einbauen muss oder nicht?

@Niels: Danke für das Angebot, ich werde mich vieleicht später mal 
melden :)



gruß  Hendrik

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.