TC35 Arduino

OP #4305008
Lesenswert?
• ▲
▼
Hallo ich versuche schon eine ganze weile mein tc35 dazu zu bewegen mir 
bei empfang einer sms einen ausgang am arduino auf high zu setzen.

Ich habe folgendes herausgefunden. Ich habe das ftdi angeschlossen und
kann AT+CMGL="ALL" oder AT+CPMS="SM" senden und bekomme werte zurück im 
seriel monitor. Wenn ich jedoch das ganze über mein arduino uno probiere 
kann es das nicht so schreiben. Es kann nur AT+CMGL=\"ALL\"" und 
"AT+CPMS=\"SM\"" aber damit bekomme ich keine werte zurück.


Hat jemand vielleicht schonmal ein Funktionierendes programm geschrieben 
zum empfang von sms oder eine idee was ich noch tun kann? Wäre sehr 
dankbar!
OP #4305099
Lesenswert?
• ▲
▼
danke für die schnelle antwort. Leider funktioniert das nicht. ich 
bekomme gar keine rückemldung von dem gsm.

Ich habe über diesen code erfolgreich eine sms empfangen
#include <SoftwareSerial.h>
#define rxPin 9
#define txPin 8
SoftwareSerial mySerial = SoftwareSerial(rxPin, txPin);
char text[150];
String message="";
int i;

void setup(){

pinMode(10,OUTPUT);
Serial.begin(9600);
while (!Serial){}
mySerial.begin(9600);
digitalWrite(10,0);
delay(1000);
digitalWrite(10,1);
Serial.println("Write your SMS:");
}

void loop(){

i=0;
while( Serial.available()>0 ){
 text[i] = Serial.read();
 message += text[i];
 i++;
 if (text[i-1]==46){
  Serial.println("Send SMS......");
  SendTextMessage();
  ShowSerialData();
  delay(1000);
  Serial.println("\r");
  Serial.println("Success");
  message="";
  i=0;  }}}


void SendTextMessage(){

mySerial.print("AT+CMGF=1\r");
delay(1000);
mySerial.print("AT+CMGS=\"+491543270270\"\r");
delay(1000);
mySerial.println(message);
mySerial.print("\r");
delay(1000);
mySerial.println((char)26);
mySerial.println();  }


void ShowSerialData(){

while(mySerial.available()!=0)
 Serial.write(mySerial.read());}

es muss doch also möglich sein das das arduino daten empfängt
Gast #4305179
Lesenswert?
• ▲
▼
Du solltest dich mal mit der Programmierung des Arduino und der Doku des 
TC35 mehr befassen, als darauf zu hoffen, das dir jemand mal eben ein 
Programm schreibt. Und setze dich mal mit den Beiträgen auseinander, die 
dir vorgeschlagen wurden, bzw. in Google zu finden sind und da gibt es 
reichlich. Ein wenig Eigeninitiative sollte man bei so einem Projekt 
schon haben.
Gast #4305193
Lesenswert?
• ▲
▼
Hast du schonmal die einfache Variante probiert?
1
void setup(){
2
  Serial.begin(9600);
3
  while (!Serial){}
4
  mySerial.begin(9600);
5
  
6
  mySerial.print("AT+CMGF=1\r\n");
7
  delay(1000);
8
  mySerial.print("AT+CMGS=\"+491543270270\"\r\n");
9
  delay(1000);
10
  mySerial.print("test\r\n");
11
  delay(1000);
12
  mySerial.println((char)26);
13

14
  while(mySerial.available()!=0){
15
    Serial.write(mySerial.read());
16
  }
17
}

Bist du sicher, dass "\r" der gewünschte Zeilenumbruch ist? Linux nutzt 
"\n", Windows "\r\n" (nutzt Apple vielleicht "\r"?)
Was gibts du denn genau ins Terminal ein, wenn du es über den PC 
probierst?
Ansonsten, die Pins sind korrekt verdrahtet? Die Serial Parameter 
stimmen? usw...
OP #4305336
Lesenswert?
• ▲
▼
Du meinst das terminal in verbindung mit dem Ftdi?

Das sieht so aus und funktioniert super:

AT

OK
AT+CMGL="ALL"

+CMGL: 2,"REC READ","+4915272180410",,"15/10/09,20:56:58+08"
Test
+CMGL: 3,"REC READ","+4915238038886",,"15/10/10,00:35:16+08"
hallo
+CMGL: 4,"REC READ","+4915272180410",,"15/10/10,00:37:50+08"
test - mufa.de/app
+CMGL: 5,"REC READ","+4915272180410",,"15/10/10,00:47:54+08"
test
+CMGL: 6,"REC READ","+4915272180410",,"15/10/10,00:39:56+08"
Tats{chlich
+CMGL: 7,"REC READ","+4915272180410",,"15/10/10,00:51:30+08"
test
+CMGL: 8,"REC READ","+4915272180410",,"15/10/10,00:58:48+08"
test
+CMGL: 9,"REC READ","+4915272180410",,"15/10/10,01:01:21+08"
test

OK
AT+CPMS="SM"

+CPMS: 8,20,8,20,8,20

OK

Ich glaube auch das ich wenn ich es jetzt wieder mit dem Arduino 
verbinde ich einfach einen falschen Befehl sende.
Serial Parameter meinst du die einstellungen des Boards?

Antwort schreiben

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.

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.