Alex_exe - sim900, lucrează cu gprs

În continuarea unei serii de articole despre modemul GSM SIM900 sau mai degrabă cu comenzile AT, vă voi spune cum să lucrați cu componenta GPRS a acestuia.

Alex_exe - sim900, lucrează cu gprs

Modul GSM GPRS SIM900

Modulul este, de asemenea, conectat prin UART. Are o cartelă SIM instalată, vede o rețea, are bani, operatorul suportă conexiune GPRS și acest serviciu este activat.







Nu uitați că un GPRS greșit configurat sau un trafic mare la un tarif limitat poate zbura într-un ban destul de bun.
Să începem.

Configurarea conexiunii GPRS

Setările conexiunii GPRS și conexiunea la Internet în sine se fac printr-o comandă AT + SAPBR cu mulți parametri.

Numărul de parametri de intrare poate fi de până la 4:

1 parametru - tipul de operație care trebuie efectuată

  • 0 - conexiune strânsă
  • 1 - conexiune deschisă
  • 2 - solicitați informații de conectare
  • 3 - transferați parametrii conexiunii
  • 4 - solicitați parametrii de conectare
  • 5 - salvați setările în memoria nevolatilă a modulului

2 - CID sau ID de profil

Cei doi parametri rămași pot aplica valori diferite în funcție de interogare.

Deschideți sesiunea FTP pentru a prelua date
Parametrul specifică - pentru a deschide sesiunea FTP
Răspunsul revine:
primul parametru este de cm deasupra,
iar al doilea parametru este starea sesiunii deschise sau a codului de eroare:
1 - sesiunea este deschisă
61 - fără conexiune
64 - sesiunea a expirat
71 - utilizator greșit pentru ei
72 - parola a fost introdusă incorect
În cazul unei sesiuni deschise cu succes, mesajul 1.1 va fi returnat de-a lungul sesiunii, la fiecare 2 secunde, până când sesiunea este închisă sau ora expiră cu un cod de eroare de 1,64.

Citirea datelor de pe un server FTP
Primul parametru - indică datele citite de la un server FTP
Al doilea parametru indică numărul de octeți de citit

Deschideți sesiunea FTP pentru a trimite date
Parametrul specifică - pentru a deschide sesiunea FTP
În răspunsul:
Primul parametru - vezi mai sus
Al doilea parametru este starea sesiunii deschise sau a codului de eroare:
1 - sesiunea este deschisă
Al treilea parametru - în cazul unei sesiuni deschise cu succes - numărul maxim posibil de date primite pe sesiune

Trimiterea datelor
Primul parametru - indică trimiterea datelor către FTP
Al doilea parametru este cantitatea de date trimise
După confirmarea primirii comenzii, este necesară transferarea datelor prin UART

Notificați serverului că nu mai există date de transferat.
Sau închiderea sesiunii privind transferul de date către un server FTP.

Exemplu de solicitare FTP:

+FTPGET: 1.1
AT + FTPGET = 2,1024
+FTPGET: 2,175
Acest director conține fișiere legate de funcționarea






fișierul kernel.org în sine.

Fișierul sample_mirror_script.pl este un exemplu de script pentru oglindire
kernel.org prin intermediul rsync.

Bine ai venit!
Vă mulțumim pentru articol, clasic și în ordine.

Am o întrebare: Vreau să transfer de date (întregi) de la Sim900 la server, pe partea de server pe care o folosesc GET.
Prin formularul web (adică browserul) datele sunt transmise și primite remarcabil. Și prin Sim900, valori zero sunt scrise în baza de date și sunt scrise nu după comanda HTTPDATA, dar imediat după HTTPACTION. Înțeleg că GET acceptă semnalul de start al sesiunii pentru un anumit număr și îl trimite în baza de date. După aceasta, cu un sentiment de împlinire, datoria își încheie lucrarea.

Cum să o eviți, nu știu?
Codul paginii, doar în cazul în care:

Problemele legate de schimbul de informații au atins până acum în mod superficial și nu a existat nimic de trecut, ci doar citit.
Vă pot recomanda citirea instrucțiunilor oficiale pentru lucrul cu modulul - sim900_ip_application note_v1.03.

Alex_EXE, multumesc pentru link)

Bună ziua unde primiți aceste informații unde altceva puteți citi originalul?

Cel mai probabil de la documentația la modulul în sine.
Referințele la fișele tehnice sunt prezentate în primul articol de pe sim900.
De asemenea, puteți citi alte articole din seria acestui modul.

Cum pot face modemul să pornească automat GPRS când este pornit?

Cu privire la această problemă nu se solicită, de obicei, aceasta este MC meu este angajat.

Aș dori să intru așa-numita. CID este ID-ul profilului. Ce influență are ea? În exemplele de mai sus, întotdeauna văd că este una. Deși, dacă am înțeles corect manualul pentru comenzile AT, poate lua valorile 1,2 și 3. Este posibil să-l mestecă așa, dar ceva pe care nu-l pot spune în nici un fel.

M-am distrat cu modulul de multă vreme și nu-mi amintesc exact:
pare să salveze setările profilului conexiunii la punctul de acces. Ie puteți efectua două intrări cu setări diferite pentru conexiunea GPRS (3-serviciu și imposibil de accesat).
Pentru mai multe detalii, consultați descrierea comenzii AT + CGDCONT. și nu numai în descrierea pentru acest modul.

Bună ziua! Informațiile foarte necesare despre transferul direct de la un modul la altul. Dacă acest lucru este cu adevărat posibil, vă rugăm să renunțați la câteva informații sau la cel puțin un link unde puteți afla despre ele? Voi fi foarte recunoscător pentru orice informații utile pe această temă!

Nu-mi amintesc exact, dar în opinia mea sunt responsabili pentru diverse conexiuni la Internet.
Primul este mai potrivit pentru TCP / IP direct printr-un port, pe care nu l-am putut testa, pentru că A fost necesar să dezactivați protecția routerului, cu care nu vroiam să comunic.
Cel de-al doilea utilizează solicitări de nivel superior HTTP, FTP ....

Multumesc pentru articol! Totul funcționează înaintea comenzii AT + HTTPTERM. Nu primesc un răspuns de la modulul "\ r \ nOK \ r \ n" la acesta. Dacă redeschid sesiunea HTTP, obțin răspunsul "\ r \ nERROR \ r \ n" la comanda AT + HTTPINIT. Nimic nu ajută înainte ca modulul să fie supraîncărcat!

Timpul de așteptare pentru un răspuns nu trece până la sfârșitul sesiunii? Se poate termina automat mai devreme.

Astept 45 de secunde - si nu vine nimic! În general! Nici eroare, nici OK - nimic deloc!
La comanda AT + SAPBR = 0,1 primesc OK, adică profil закрівается! Comanda de închidere a sesiunii HTTP nu trece nici înainte, nici după! Sesiunea HTTP nu se repornește - comanda AT + HTTPINIT nu trece. Este necesar să supraîncărcați modulul prin PWRKEY.

AT + CNTP. Și ce este pentru echipa? Nu este descrisă în descriere.

Vreau să scriu date într-un fișier folosind ftp, dar am o eroare constantă + FTPGET: 1.64.
Iată răspunsurile de la SIM900:
AT
în regulă
AT + GSV
SIMCOM_LTD
SIMCOM_SIM900
Revizuire: 1137B04SIM900M64_ST_ENHANCE

în regulă
AT + SAPBR = 3,1, "CONTYPE", "GPRS"
în regulă
AT + SAPBR = 3,1, "APN", "internet.tele2.ru"
în regulă
AT + SAPBR = 1,1
în regulă
AT + SAPBR = 2,1
+SAPBR: 1,1, "10,72.79.113"

în regulă
AT + SAPBR = 4,1
+SAPBR:
CONTYPE: GPRS
APN: internet.tele2.ru
PHONENUM:
USER:
PWD:
RATE: 2

în regulă
AT + FTPCID = 1
în regulă
AT + FTPSERV = "192.150.16.26"
în regulă
AT + FTPGETNAME = "licență.txt"
în regulă
AT + FTPGETPATH ​​= »/»
în regulă
AT + FTPMODE = 1
în regulă
AT + FTPTYPE = "A"
în regulă
AT + FTPGET = 1
în regulă

Ce nu fac.

a existat o eroare de 1,64 a fost decisă prin reaprovizionarea soldului cartelei SIM (24 de ruble a fost de 124) și a câștigat ... ciudat ca ăsta ..

Lăsați feedback







Trimiteți-le prietenilor: