Ciao a tutti,
sto cercando di inviare comandi AT al modem e di ricevere la sua risposta.
Nello specifico: PIC18F452, modem telit gm862, C18 e libreria usart, pickit2.
Il modem riceve i messaggi (la prova è che se comando una chiamata il modem chiama) ma non ricevo la risposta che mi aspetto. Ovvero, il display scrive soltanto "AT".
estratto del codice
unsigned char data = 0;
OpenUSART( USART_TX_INT_OFF & USART_RX_INT_OFF & USART_ASYNCH_MODE & USART_EIGHT_BIT & USART_CONT_RX & USART_BRGH_HIGH, 64);
/* ho provato anche con questa parte di codice per togliere l'echo
WriteStringLCD ("ATE0");
putrsUSART ("ATE0");
while (!DataRdyUSART ());*/
WriteStringLCD ("CSQ");
putrsUSART ("AT+CSQ\r"); //livello segnale (es. +CSQ=15\n\nOK\n)
while (!DataRdyUSART ());
ClearLCD ();
while (1)
{
data = ReadUSART ();
WriteCharLCD (data);
while (!DataRdyUSART ());
}
CloseUSART();
Il dubbio è se sono correttamente in ascolto.
A questo punto la domanda è: quello che uso è il modo corretto di ricevere la risposta?
O meglio: qual'è il metodo migliore per colloquiare con un modem?
Sono giorni che sto cercando nelle documentazioni ma non trovo la soluzione ad hoc. Grazie dell'aiuto.
Fabrizio