mikrocontroller.net

Forum: PC-Programmierung SMS verschicken


Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
Ein Manual zum Mobiltelephon liegt vor ?

Autor: Sam (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
Ist es wirklich so schwer die Suchfunktion oder Google zu benutzen?

Autor: Gast2 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
Danke für eure Tipps.
Ich werde mir das mal anschauen.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

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

Gast

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matthias schrieb:
> Kann mir hier jenamd helfen?

Nicht wenn Du den bereits vorhandenen Sourcecode vor uns versteckst.

Autor: Matthias (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

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

mfg
Matthias

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

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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:

Bewertung
0 lesenswert
nicht lesenswert
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 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.