Zeichensuche/übergabe

Gast #10868
Hallo zusammen,

hab widermal ein Problem, also mir ist das schleierhaft.
Nach den folgenden Befehlen gibt der Controller > at+cmgr=,9 <  raus, 
ich benötige aber > at+cmgr=9 <

text_send("at+cmgr=");
j=nr();
zeichen_send(empfang[j]);
zeichen_send(empfang[j+1]);

wenn ich jetzt aber j++ noch setze, oder nur die Zeile
zeichen_send(empfang[j+1]);
krieg ich nur noch > at+cmgr=  <

Was geht falsch?

Der Controller kriegt

+CMTI: "SM",9

rein (ist in empfang gespeichert)

weiss jemand weiter?
Angehängte Dateien:
Gast
Also klar ist schonmal, dass: zeichen_send(empfang[j]);  dir das Komma 
schickt, da nr() die Position des Kommas zurückgibt. Die Zeile muss also 
raus.

---- cut ------
   text_send("at+cmgr=");  // befehl zum SMS abrufen senden
  j=nr();
  //j++;
  //zeichen_send(empfang[j]);  // EinerNummer des SMS das abgerufen 
werden soll
  zeichen_send(empfang[j+1]);  // ZehnerNummer des SMS das abgerufen 
werden soll

  for(j=0;j<30;j++)
   {
    zeichen_send(empfang[j]);  // sms inhalt senden
   }
---- cut -------

Was du damit abschickst ist:
at+cmgr=9+CMTI: "SM",9

Wobei du auch NULL, sonstige Steuerzeichen und anderen Kram mitschickst 
der in empfang[] drinsteht (ausser das ist fest immer genau 30 Zeichen 
lang).
Gast
Hy Lars,

danke das du dich meinen Problem annimmst!

Das habe ich auch schon versucht, ist aber nicht gegangen, wiso weiss 
ich auch nicht.

---- cut -------
 text_send("at+cmgr=");  // befehl zum SMS abrufen senden
  j=nr();
  //j++;
  //zeichen_send(empfang[j]);  // EinerNummer des SMS das abgerufen 
werden soll
  zeichen_send(empfang[j+1]);  // ZehnerNummer des SMS das abgerufen 
werden soll

  zeichen_send(j);

  for(j=0;j<30;j++)
   {
    zeichen_send(empfang[j]);  // empfang inhalt senden
   }
---- cut -------

mit diesen Zeilen kriege ich folgendes

at+cmgr= 

+CMTI: "SM",1

Das  ist im ASCII 15, also ist j=15.
wenn ich jetzt
zeichen_send(empfang[16]);
mache bekomme ich auch nur
at+cmgr=
und dann ein Lehrschlag. Das ist doch unlogisch oder?
Gast
Hi Patric,
ich bin an meiner semestrarbeit, und sollte ein sms über ein gsm-modul
(falcon a2d) senden. (temperaturmessung mit einem atmel avr)
kannst du mir da weiterhelfen?
wie hast du dein zeichen_send und text_send aufgebaut? uart befehl für
at-befehls ausgabe?
merci!
schneegruss von
gregor

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 24 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.