www.mikrocontroller.net

Forum: PC-Programmierung SMS verschicken

Autor: Matthias (Gast)
Datum:

Hallo Leute,

Ich bin schon seit längerem dabei ein AVR Programm zu schreiben, bei dem
ich über meinen Mirocontroller eine SMS zu meinen Handy senden kann
sobald der Microcontroller bei einen Eingang ein signal bekommt.

Ich weiß aber nicht wie ich mit den AT befehlen eine SMS formulieren und
eine Handynummer einbinden soll.

Kann mir da jamand weiter helfen?

mfg

Matthias
Autor: Der Trog (Gast)
Datum:

Ein Manual zum Mobiltelephon liegt vor ?
Autor: Sam (Gast)
Datum:

Eine SMS ist nicht kostenlos!
Ich würde dir empfehlen einen Webserver der E-Mails versenden kann zu
bauen. Projekte gibts da genug.
Eine SMS zu versenden würde vielleicht über deinen Emailaccount gehen,
indem dein AT sich dort anmeldet und eine SMS schreibt, also einen
Browser simuliert! Frag mich aber nicht wie.
Autor: Matthias (Gast)
Datum:

Ich habe ein Siemens ME45 und einen ATMega32 Prototype Board.

>Ein Manual zum Mobiltelephon liegt vor ?
Wenn sie ein Handbuch meinen. Ja, das liegt vor.

>Eine SMS ist nicht kostenlos!
Dies soll nur eine Überwachung werden die vielleicht 1 bis 2 mal im jahr
eine meldung auf mein Handy schicken soll fals der Microcontroller ein
Signal bekommt.
Autor: Micha (Gast)
Datum:

Ist es wirklich so schwer die Suchfunktion oder Google zu benutzen?
Autor: Gast2 (Gast)
Datum:

Nein, aber anscheinend vernünftig zu antworten....und eine SMS zu
verschicken ist echt nicht so einfach, weil man sich da mit dem PDU
Format auseinandersetzen muss. Ich habe vor Jahren die Vitocom 100 für
Viessmann entwickelt, da konnte die Heizungssteuerung per SMS
Nachrichten versenden bzw. man konnte über das Handy die Heizung
steuern. Es gab da 2 oder 3 brauchbare Webseiten, wo das PDU Format
recht gut erklärt war, müsstest also danach bitte mal googlen.
Autor: Johannes B. (jotschi)
Datum:

Als erste ist http://www.nobbi.com/ zu nennen. Dort findet man viele
Informationen zu AT und PUD. Außerdem gibt es eine APP-Note von Atmel
(AVR323), die sich genau mit deiner Problematik beschäftigt.
Autor: Matthias (Gast)
Datum:

Danke für eure Tipps.
Ich werde mir das mal anschauen.
Autor: Matthias (Gast)
Datum:

Hallo
Ich habe noch ein paar fragen zum PDU.

Was heißt SMSC und was ist das für eine Nummer?
Also was muss man da für eine Nummer angeben?

Und was bedeutet bei dem Befehl die 28 in der ersten Zeile und die 37 in
der dritten Zeile bzw. wie kommt man auf die Ziffern?
Sind die ganzen Buchstaben in jeden solchen Befehl so vorhanden oder
muss muss man da jedesmal was neues hinschreiben, von z.B. der dritten
und der vierten Zeile?

at+cmgs=28
> 079194712272303325000C91947112325476000008D4F29C4E2FE3E9
+CMGS: 37
OK

mfg
Matthias
Autor: Paul Baumann (Gast)
Datum:

Dieses PDU-Format ist außerordentlich vergrießgnaddelt...
Ich bin auch gerade dabei, so etwas zu bauen.
Hier ein Link, in dem es gut erklärt wird:
 http://www.wilke.de/downloads/applicationnotes/PDF...

ab Seite 9

und hier:
http://mschrod.de/Elektronik/AVR/Projekte/HandyS45...

MfG Paul
Autor: Matthias (Gast)
Datum:

Hallo

Ich habe jetzt meine PDU Zeile fertig und möchte es nun in mein Programm
einbinden.
Genügt es wenn man folgendes schreibt:

at+cmgs=28
079194710167000025000C9194710000000000000BCE325E1FAECFCE61361B

und wie mache ich es das es nur eine sms pro Fehler bekomme?

mfg
Matthias
Autor: Matthias (Gast)
Datum:

Hallo

Ich habe jetzt die at Befehle in mein Programm geschrieben und da kommt
immer ein paar fehler. Ich weis aber nicht wie ich diese beheben soll?

Zum Beispiel:
../WvS-Sample.c:77: error: 'at' undeclared (first use in this function)
../WvS-Sample.c:77: error: (Each undeclared identifier is reported only
once
../WvS-Sample.c:77: error: for each function it appears in.)
../WvS-Sample.c:77: error: 'cmgs' undeclared (first use in this
function)


Kann mir hier jenamd helfen?
Autor: cvnc (Gast)
Datum:

Du denkst jetzt aber nicht im Ernst, dass das C-Befehle sind?????

Gast
Autor: Mark Brandis (markbrandis)
Datum:

Matthias schrieb:
> Kann mir hier jenamd helfen?

Nicht wenn Du den bereits vorhandenen Sourcecode vor uns versteckst.
Autor: Matthias (Gast)
Datum:

Hallo

Ich stehe momentan am schlauch.
was meinst du mit Sourcecode?

mfg
Matthias
Autor: Remote One (remote1)
Datum:
Angehängte Dateien:

Mit mehr Informationen könnte ich dir ohne Probleme helfen. Ich habe ein
Projekt bei dem ich SMS im PDU Format verschicken kann, empfangene SMS
einlese, bei bestimmten Schlüsselwörtern eine festgelegt Aktion/Funktion
ausführe, Text auf dem Display anzeigen lassen kann, das Datum und die
Zeit des Handy auslese....

Hab dir mal einen kurzen Auszug aus meiner Projektarbeit angehängt.
Evtl. hilft ja das schon.
Autor: thisamplifierisloud (Gast)
Datum:

SMS kann man im PDU-Mode oder im TEXT-Mode verschicken.

Leider beherrschen viele Geräte den sehr einfachen TEXT-Mode nicht
und PDU ist, freundlich ausgedrückt, ne verdammte Sch...-Bitschieberei !
Autor: Remote One (remote1)
Datum:

schau mal hier vorbei:
http://www.mikrocontroller.net/articles/Versenden_...

Da hab ich die relativ leicht verständlichen Routinen für das PDU Format
erläutert/raingestellt
Autor: Mark Brandis (markbrandis)
Datum:

Matthias schrieb:
> Hallo
>
> Ich stehe momentan am schlauch.
> was meinst du mit Sourcecode?
>
> mfg
> Matthias

Sourcecode = Quelltext. Also den Programmcode im Original, in den Du das
Versenden der SMS einbauen willst.
Autor: Matthias (Gast)
Datum:

Hallo
Dies wäre mein entwurf.
ich weiß aber nicht was da noch fehlen könnte?

mfg
Matthias


Programm:

#include "global.h"
// #include "i2cmaster.h"

void init(void)
{

  wdt_disable();

  DDRB= 0xFF;

  DDRA= 0x00;

  PORTB= 0x00;

        timer0Init();

  sei();

        uartInit();

  uartSetBaudRate(19200);

  rprintfInit(uartSendByte);

}

int main (void)
{

    char x;

    init();

    char sms_init;


sms_init(void)

    while(1)
  {
         if (bit_is_clear (PINA, PINA0))

    {

        at+cmgs=23
  >079194710167000025000C9194711182392300000BD4F29C4E2FE3E9BA4D19
    }
  }
}
Autor: Remote One (remote1)
Datum:

Matthias schrieb:
> {
>
>         at+cmgs=23
>   >079194710167000025000C9194711182392300000BD4F29C4E2FE3E9BA4D19
>     }

Das wird so nicht funktionieren. Das ist ja kein C code. Das musst du
schon über die serielle Schnittstelle ausgeben und die entsprechenden
Steuerzeichen beachten (die fehlen noch). Ich hab oben schon einmal den
Hinweis zu dem Artikel gegeben, da steht alles drin (auch der richtige
code). Zudem solltest du größere Codefragmente in den Anhang posten und
wenn du schon etwas postest, dann bitte alles (am besten als fertiges
Projekt). Dadurch ist es leichter nachvollziehbar. Bei dem was du hier
gepostet hast, weiß z.B. keiner was rprintfInit macht.

Zudem, scheint der PDU Teil auch falsch zu sein. Ich habe es mal eben
durch den encoder gejagt und erhalte "r9:z2<:ÑM2@@" als Ergebnis. Evtl.
solltest du beim nächsten mal auch darüber nachdenken, deine
Telefonnummer nicht im Internet zu posten^^

encoder zum schnellen Überprüfen:
http://twit88.com/home/utility/sms-pdu-encode-decode
Autor: Matthias (Gast)
Datum:

danke für die ganzen tipps.
schön langsam komm ich auf nen grünen zweig.
die ganzen errors und warungen sind weg.
ich würde mich dann nochmal melden wenn noch unklarheiten auftreten.
und auch wenn ich mein Programm zum laufen gebracht habe.

mfg
Matthias
Autor: Matthias (Gast)
Datum:

Hallo
ich habe jetzt mein Programm auf den Mirocontoller überspielt aber es
funktioniert nicht.
kann ich das originale datenkabel von meinen me45 an die rs232 des
prototype board atmega32 anschließen oder muss ich eine neu auflöten und
verdrahten?
wenn ja hat jemand einen schaltplan?

mfg
Matthias

Antwort schreiben

Die Angabe einer Email-Adresse ist freiwillig. Wenn Sie automatisch per Email ü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




Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder GIF-Format hochladen.
Siehe Bildformate

Mit dem Abschicken erkennst du die Nutzungsbedingungen an.

webmaster@mikrocontroller.netImpressumNutzungsbedingungenWerbung auf Mikrocontroller.net