www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

težava z arduino gsm shield-om

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
gregaa
Član
Član



Pridružen-a: Pon 15 Jun 2009 16:46
Prispevkov: 107
Aktiv.: 0.59
Kraj: Slov.Bistrica

PrispevekObjavljeno: Čet Sep 25, 2014 2:31 pm    Naslov sporočila:  težava z arduino gsm shield-om Odgovori s citatom

Pozdravljeni,

kupil sem gsm shield icomsat v1.1. testiral sem ga z knjižnicami ki so na spletu in s temi knjižnicami shield tudi deluje. ne uspe mi vzpostaviti komunikacije med arduino in gsm shieldom preko SoftwareSerial kjer si določiš rx, tx in kasnje z AT komandami določaš kaj želiš. preizkusil sem že kar nekaj primerov in nasvetov ki jih ponuja google vendar brez uspeha. če ima kdo kakšen nasvet, bi ga bil zelo vesel Smile

dodal sem še link kjer so primeri, ki naj bi delovali in bi jih rad uporabil:
http://tronixstuff.com/2014/01/08/tutorial-arduino-and-sim900-gsm-modules/
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bajdec
Član
Član



Pridružen-a: Čet 12 Nov 2009 19:56
Prispevkov: 287
Aktiv.: 1.64
Kraj: Zagorje ob Savi

PrispevekObjavljeno: Čet Sep 25, 2014 3:17 pm    Naslov sporočila:   Odgovori s citatom

Nisem se še igral s temi GSM moduli na arduino, tako da ne vem kaj bi bilo narobe. Sem pa programiral Arduino Pro Mini s PL2303 programatorjem in RX gre na TX in TX gre na RX. Poskusi če je mogoče to.
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
gregaa
Član
Član



Pridružen-a: Pon 15 Jun 2009 16:46
Prispevkov: 107
Aktiv.: 0.59
Kraj: Slov.Bistrica

PrispevekObjavljeno: Čet Sep 25, 2014 3:25 pm    Naslov sporočila:   Odgovori s citatom

Sem že poskusil pa ni to.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
infernal
Član
Član



Pridružen-a: Pet 29 Jun 2007 0:46
Prispevkov: 239
Aktiv.: 1.17
Kraj: Maribor

PrispevekObjavljeno: Čet Sep 25, 2014 8:41 pm    Naslov sporočila:   Odgovori s citatom

Pa pošlješ na koncu komande ASCII 13, 10 (enter) ?
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
dejko1
Član
Član



Pridružen-a: Ned 16 Mar 2008 0:21
Prispevkov: 265
Aktiv.: 1.36
Kraj: Ljubljana

PrispevekObjavljeno: Pet Sep 26, 2014 8:34 am    Naslov sporočila:   Odgovori s citatom

Predlagam da malo pogledaš kodo knjižnic kako je tam izvedeno, pogosto je to tudi s soft-serial.

Koda:
SoftwareSerial SIM900(7, 8);


Ali si pravilno povezal / definiral pine? Če je RX in TX modema priklopljen na 0, 1 potem ti ne bo delovalo na 7, 8.

Arduino ima drugače zelo omejene bufferje za Rx in Tx kar boš hitro spoznal če boš poskusil kakšen HTML dokument snet...

Evo še ena koda za SIM900 na pinih 3,4. Se mi zdi da je Txd del povezan na 3 in Rxd na 4 ampak predlagam da preveriš v dokumentaciji knjižnice da ne boš česa skuril... Na arduino se priklopiš iz računalnika z baudrateom 19200. Stikalo DBG/UART mora biti nastavljeno na UART, modul more bit prižgan da ti bo kaj odgovarjal (prižgeš ga ročno s tipko ali s proceuro). Komunikacijo imaš direktno z modemom (kar pošlješ arduinotu samo prepošlje modemu in obratno).

Koda:
#include <SoftwareSerial.h>
SoftwareSerial SIM900(3, 4);

char incoming_char=0;

void setup()
{
  Serial.begin(19200); // for serial monitor
  SIM900.begin(9600); // for GSM shield
  delay(100);
  Serial.print("ARDUINO BOOT\r\n");
  Serial.print("LOOPING\r\n");
}

void SIM900power()
// software equivalent of pressing the GSM shield "power" button
{
  pinMode(9, OUTPUT);
  digitalWrite(9, HIGH);
  delay(1000);
  digitalWrite(9, LOW);
  delay(7000);
}

void loop()
{
  // Now we simply display any text that the GSM shield sends out on the serial monitor
  while(SIM900.available() >0)
  {
    incoming_char = SIM900.read();
    Serial.print(incoming_char); //Print the incoming character to the terminal.
  }
 
  while(Serial.available()>0) {
    incoming_char=Serial.read(); //Get the character from the cellular serial port.
    SIM900.print(incoming_char); //Print the incoming character to the terminal.
  }
}
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
gregaa
Član
Član



Pridružen-a: Pon 15 Jun 2009 16:46
Prispevkov: 107
Aktiv.: 0.59
Kraj: Slov.Bistrica

PrispevekObjavljeno: Tor Sep 30, 2014 3:11 pm    Naslov sporočila:   Odgovori s citatom

najprej hvala za odgovore. pine imam pravilno definirane stikalo imam na UART. preizkusil sem program od dejko1 ampak spet brez uspeha, ni komunikacije med gsm modulom in arduinom. kodo sem malo spremenil da sem videl kaj se dogaja med izvajanjem.

Koda:
#include <SoftwareSerial.h>
SoftwareSerial SIM900(3, 4);

char incoming_char=0;

bool ni_na_voljo=1;
void setup()
{
  Serial.begin(19200); // for serial monitor
  SIM900.begin(9600); // for GSM shield
  delay(100);
  Serial.print("ARDUINO BOOT\r\n");
  Serial.print("LOOPING\r\n");
  SIM900power();
}

void SIM900power()
// software equivalent of pressing the GSM shield "power" button
{
  pinMode(9, OUTPUT);
  digitalWrite(9, HIGH);
  delay(1000);
  digitalWrite(9, LOW);
  delay(7000);
}

void loop()
{
  // Now we simply display any text that the GSM shield sends out on the serial monitor
  if(SIM900.available() >0)
  {
    incoming_char = SIM900.read();
    Serial.print("Od GSM modula smo prebrali znak: ");
    Serial.print(incoming_char); //Print the incoming character to the terminal.
    ni_na_voljo=1; // postavi zastavico
  }
  else
  {
  if(ni_na_voljo) { Serial.println("Podatek ni na voljo"); ni_na_voljo=0;}
  }
 
  while(Serial.available()>0) {
    incoming_char=Serial.read(); //Get the character from the cellular serial port.
    SIM900.print(incoming_char); //Print the incoming character to the terminal.
    Serial.print("GSM modulu smo poslali znak: ");
    Serial.println(incoming_char);
  }
}
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
tilz0R
Član
Član



Pridružen-a: Čet 31 Maj 2012 15:39
Prispevkov: 898
Aktiv.: 6.24
Kraj: Črnomelj

PrispevekObjavljeno: Tor Sep 30, 2014 3:17 pm    Naslov sporočila:   Odgovori s citatom

Grega,

priklopi modul direkt na PC preko usb->uart pretvornika ter spremljaj kaj se dogaja na terminalu.
Ročno mu pošiljaš komande in gledaš odgovor.

Tako je modul testiral Ben tukaj.

_________________
Knowledge sharing is caring.
majerle.eu | stm32f4-discovery.net
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Obišči avtorjevo spletno stran
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 48 dni


Powered by phpBB © 2001, 2005 phpBB Group