Hallo, vielleicht habe ich ja ein Brett vor dem Kopf aber ich möchte nur zwei GSM Module dazu bewegen ein paar Bytes auszutauschen. Also nichts mit GPRS, HTTP oder anderen komplexen Diensten. Die AT Befehle sind kaum mehr überschaubar im Manual. Kann mir jemand sagen, wie ich Modul A dazu bringen ein paar Bytes an Modul B zu senden so dass der uC an Modul B davon etwas mitkriegt und diese dann mittels AT Commands ausliest? Das Senden von SMS etc kriege ich hin, kein Problem. Aber eine sms besteht eben aus alpha Zeichen und nicht aus Binärzahlen. Gruss, Christian
Wenn Du nur "ein paar Byte" übertragen möchtest, ist eine SMS doch kein Problem. Dann kodierst Du die Binärwerte halt in z.B. 64 lesbare ASCII-Zeichen. Buchstaben groß und klein plus die Ziffern plus zwei einfache Sonderzeichen (z.B. + und -), fertig. Vier ASCII-Zeichen kodieren dann drei Bytes bzw. 24 Bit. Wieviel sind den "ein paar Byte"?
Ben B. schrieb: > Wenn Du nur "ein paar Byte" übertragen möchtest, ist eine SMS doch > kein > Problem. Dann kodierst Du die Binärwerte halt in z.B. 64 lesbare > ASCII-Zeichen. Buchstaben groß und klein plus die Ziffern plus zwei > einfache Sonderzeichen (z.B. + und -), fertig. Vier ASCII-Zeichen > kodieren dann drei Bytes bzw. 24 Bit. > > Wieviel sind den "ein paar Byte"? Naja, hätte ja sein können, dass es nicht nur den Text Mode gibt, sondern auch einen Binärmode. Maximal 64 Bytes, 160 sind ja als 7 bit möglich. Klar kann man auch jeden Binärwert als hex codieren oder Octal und die dann einfach zurück wandeln.
64 Bytes *4/3 sind 86 Zeichen nach meiner vorgeschlagenen Kodierung. Passt locker in einer SMS.
Hm.... muss ich noch mal drüber nachdenken. Glaube da kann man echt nur die Buchstaben, Zahlen und ein paar Zeichen versenden. Genau weiss ich das nicht. Etwas mehr Platz, nämlich doppelt so viel würde ja das Intel Hex Format brauchen. Dafür habe ich schon mal ne Routine geschrieben, die das erzeugt und wieder decodiert.
Chris J. schrieb: > Naja, hätte ja sein können, dass es nicht nur den Text Mode gibt, > sondern auch einen Binärmode. Maximal 64 Bytes, 160 sind ja als 7 bit Im PDU Mode (AT+CMGF=0) kann man doch 'encoding_type: 8-bit Octet' setzen - oder meinst du etwas anderes?
ATh schrieb: > Im PDU Mode (AT+CMGF=0) kann man doch 'encoding_type: 8-bit Octet' > setzen - oder meinst du etwas anderes? Ein Octet ist nichts anderess als ein Byte, nur benutzt man diesen Begriff bei Datenübertragungen. Ich probier das einfach mal aus sobald ich zwei Arduinos habe und lade die sim Karte dann mal ordentlich auf.
Beitrag #5632603 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.