Show Posts
|
|
Pages: [1]
|
|
1
|
International / Software / Re: GSM shield + Adruino2009 e PCF8574
|
on: April 01, 2013, 11:47:51 am
|
|
Niente ho provato tutti gli indirizzi possibili .......ho provato ad inviare dati sulla seriale.......sempre con la shield gsm inserita ma niente NON FUNZIONA !!!!
Solo togliendo sta cavolo di shield gsm riprende a funzionare il keypad
sto pensando alle librerie ma non ho idea da dove iniziare per controllare se eventualmente ci fosse qualcosa
|
|
|
|
|
2
|
International / Software / Re: GSM shield + Adruino2009 e PCF8574
|
on: March 25, 2013, 11:25:30 am
|
ecco qua lo sketch completo #include <Wire.h> #include <LiquidCrystal_I2C.h> #include <Keypad_I2C.h> #include <Keypad.h> #include <Wire.h>
LiquidCrystal_I2C lcd(0x20,16,2); // set the LCD address to 0x20 for a 16 chars and 2 line display
#define I2CADDR 0x24
const byte ROWS = 4; const byte COLS = 4;
char hexaKeys[ROWS][COLS] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; byte rowPins[ROWS] = {7, 6, 5, 4}; byte colPins[COLS] = {3, 2, 1, 0};
Keypad_I2C customKeypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS, I2CADDR);
void setup() { lcd.init(); // initialize the lcd lcd.backlight(); customKeypad.begin( ); Serial.begin(9600); }
void loop() { char customKey = customKeypad.getKey();
if (customKey != NO_KEY){ lcd.print(customKey); }
} http://playground.arduino.cc/code/Keypadhttp://hmario.home.xs4all.nl/arduino/LiquidCrystal_I2C/V1.0/LiquidCrystal_I2C_V1.0.zip
|
|
|
|
|
3
|
International / Software / Re: GSM shield + Adruino2009 e PCF8574
|
on: March 25, 2013, 08:14:27 am
|
|
temevo proprio questo....o meglio piu che la libreiria del gsm quella del keypad_i2c perche quando carico lo sketch non includo nessuna libreria per la shield gsm ed in caso essa è settata sulla comunicazione hardware
se sfuggisse il particolare, volevo far notare che lcd funziona regolarmente con la shield inserita, quindi quando usa SDA e SCL per lcd lo usa anche per il keypad......dovrebbero o funzionare entrambi o nessuno
sbaglio......molto probabilmente si :-P
|
|
|
|
|
5
|
International / Software / Re: GSM shield + Adruino2009 e PCF8574
|
on: March 24, 2013, 05:35:18 pm
|
Tu dici di gestire la tastiera via I2C però nel tuo sketch dichiari 2 array di pin: byte rowPins[ROWS] = {7, 6, 5, 4}; byte colPins[COLS] = {3, 2, 1, 0}; Alcuni pin sono in comune con quelli usati dalla GPRS. I pin D9 e D0/1 o D7/8 a seconda se usi la seriale HW o SW sono usati dallo shield eh già e ora !!! quindi cosa vuol dire che non posso usare quei 8 pin di arduino...... non avrebbe senso allora I2C
|
|
|
|
|
6
|
International / Software / Re: GSM shield + Adruino2009 e PCF8574
|
on: March 24, 2013, 05:08:29 pm
|
|
tastiera a matrice 4x4 libreria Keypad_I2C + LiquidCrystal_I2C
Certo come ho spiegato prima, senza la shield gsm tutto funziona regololarmente sia KEYPAD che LCD
come inserisco sopra al mio arduino2009 la GSM Shield di seeedstudio funziona solo l' LCD.....stesso codice stesso tutto.....basta solo togliere la shield e torna a funzionare anche il keypad
ho provato anche a visualizzare sulla seriale ma niente.....la condizione del ciclo if (customKey != NO_KEY).... non si verifica
|
|
|
|
|
8
|
International / Software / GSM shield + Adruino2009 e PCF8574
|
on: March 24, 2013, 10:17:11 am
|
Salve a tutti, Ho appena finito di preparare il mio circuito che utilizza due PCF8574 per gestire un lcd 16x2 ed un keypad 4x4 ovviamente in I2C....... collegando al mio Arduino 2009 alimentazione 5v ed SDA SCL ai pin A4 e A5 riesco a leggere sul display i tasti premuti sul keypad. Quindi dopo aver appurato che il circuito funziona collego la mia GSM sim900 ( http://www.seeedstudio.com/wiki/GPRS_Shield_V1.0 ed ovviamente riporto sulla shield le connessioni al mio circuitino I2C prorio come era in precedenza...... il display si accende visualizza il testo inviato da lcd.print() ma nessuna risposta dal keypad #define I2CADDR 0x20
const byte ROWS = 4; const byte COLS = 4;
char hexaKeys[ROWS][COLS] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} }; byte rowPins[ROWS] = {7, 6, 5, 4}; byte colPins[COLS] = {3, 2, 1, 0};
Keypad_I2C customKeypad( makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS, I2CADDR);
void setup(){ customKeypad.begin( );
Serial.begin(9600); }
void loop(){
lcd.setCursor(0,0); lcd.print("pad: ");
char customKey = customKeypad.getKey();
if (customKey != NO_KEY){ lcd.setCursor(0,1); lcd.println(customKey); } }
|
|
|
|
|
9
|
International / Software / Re: Ricevere SMS con GSM Shield (tutto qui)......ma perche non trovo niente
|
on: February 09, 2013, 09:43:30 am
|
Dopo le varie notti perse alla ricerca di informazioni su come ricevere SMS con la GSM Shield SIM900, complice anche la poca esperienza, sono finalmente riuscito ad ricevere risposte dal modulo: sketch String rsms="";
void setup() { Serial.begin(9600); Serial2.begin(9600); }
void receive_sms() { Serial2.print("AT+CMGR=1\r"); if (Serial2.available()>0) { int l=Serial.available(); for (int i=0;i<l;i++) { rsms += (char)Serial.read(); } } Serial.println(rsms); }
void loop() { receive_sms(); delay(10000); } inviando alla seriale : AT+CMGR=1 +CMGL: 1,"REC READ","+39XXXXXXXXX",,"05/02/13,08:00:15+32",145,37 Testo di prova
OK da qui ora come posso estrapolare il solo contenuto del messaggio "Testo di prova" ?? Sto facendo varie prove utilizzando rsms.indexOf("Testo") >= 0 ma sfortunamente non funziona Avete qualche suggerimento?? Ovviamente c'è un altro problema ,anche se credo di conoscerne la causa, ovvero i messaggio di risposta dal terminale, è sempre il solito anche se invio nuovi sms, non è che la memoria per i messaggi è piena e non mi fa vedere gli altri ?? GRAZIE
|
|
|
|
|
10
|
International / Software / Re: Ricevere SMS con GSM Shield (tutto qui)......ma perche non trovo niente
|
on: January 29, 2013, 12:45:26 pm
|
Forse mi sbaglio, ma mi sembra che il comando per l'invio di un SMS sia errato: che io sappia non è consentito inserire degli spazi nell'invio del comando.
Prova a scrivere così: mySerial.println("AT+CMGS=\"+39XXXXXXXX\"");
non vedo spazi.....e cmq funziona Il mio problema è trovare dei comandi da unire al listato sopra per poter leggere i messaggi SMS Vi prego mi date una mano !!!!
|
|
|
|
|
12
|
International / Software / Ricevere SMS con GSM Shield (tutto qui)......ma perche non trovo niente
|
on: January 28, 2013, 12:00:58 pm
|
#include <SoftwareSerial.h> #include <String.h>
SoftwareSerial mySerial(7, 8);
void setup() { pinMode(9, OUTPUT); digitalWrite(9,LOW); delay(1000); digitalWrite(9,HIGH); delay(2000); digitalWrite(9,LOW); delay(3000);
mySerial.begin(19200); //inizializzazione shield gsm
} void loop() { SendTextMessage(); }
void SendTextMessage() { mySerial.print("AT+CMGF=1\r"); delay(100); mySerial.println("AT + CMGS = \"+39XXXXXXXX\""); delay(100); mySerial.println("A test message!"); delay(100); mySerial.println((char)26); delay(100); mySerial.println(); }
void DialVoiceCall() { mySerial.println("ATD + +39xxxxxxxxx;"); delay(100); mySerial.println(); }
La mia shield http://www.seeedstudio.com/depot/gprs-shield-p-779.html deve solo ricevere un SMS ed eseguire una operazione. Ma sono ormai settimane che ci perdo le notti ed i pomeriggi a provare tutte le librerie possibili ed immaginabili ma sembra per me impossibile ricevere un SMS ed immagazzinarlo in una stringa....... Possibile che nessun italiano abbia mai fatto una cosa del genere......ma che ci fate con la GSM Shield :-D ???
|
|
|
|
|
13
|
International / Software / Re: RTC e azioni programmate
|
on: January 22, 2013, 04:58:04 pm
|
|
quindi mi sembra di capire che cmq devo fargli fare cicli di verifica dei dati della eeprom e se se si verifica eseguire..... ma al di là di occupare memoria è piu o meno uguale che controllare i dati provenienti dall RTC con rtc.getTimeStr()
o forse sto solo guardando nella direzione sbagliata......mi sembra un po macchinoso
ma non esiste niente tipo demone 'atd' di linux ??
|
|
|
|
|
14
|
International / Software / RTC e azioni programmate
|
on: January 22, 2013, 03:10:02 pm
|
Salve a tutti, avrei la necessità di far eseguire ad arduino dei comandi ad un determinato orario, per questo l'ho dotato di RTC. Il mio intento sarebbe quello di far comportare arduino come un timer impostando degli intervalli di tempo o delle ore specifiche. Es. -ogni 15min pin 10 HIGH per 5min -alle ore 20:35 pin 10 HIGH fino alle 22:35 -...... non riesco a farmi uno scenario,mentalmente, di come poter gestire queste informazioni per arrivare allo scopo....avevo pensato ad un if per l'esempio delle 20:35, ma non posso applicarlo anche per il primo esempio. La funzione millis() non la posso usare perche volevo evitare che un reset del dispositivo facesse ripartire da capo il contatore. .....mi date una mano.....la soluzione credo si semplicissima, ma giuro al momento non riesco a farmi venire in mente niente  GRAZIE
|
|
|
|
|