credo di essermi spiegato male dall'inizio,io sto usando un pic 16f876 con all'interno un programma scritto in picbasic che gestice il tutto con dei comandi seriali verso il tc35 e analizza le risposte,non so se è quello che serve a te,però se capisci come funziona il tutto ne puoi fare uno tu di programma in visualbasic per usare il modulo invece che col pic direttamente col pc, non credo sia tanto difficile,però se ti puo essere utile ti posto una parte del mio programma semplificato e commentato per farti capire cosa intendo con leggere tutto e poi cancellare.
Codice:
'********variabili********************
A var porta.1
B var porta.2
C var porta.3
TMP VAR BYTE
TMP1 VAR BYTE
TMP2 VAR BYTE
TMP3 VAR BYTE
TMP4 VAR BYTE
TMP5 VAR BYTE
TMP6 VAR BYTE
TMP7 VAR BYTE
TMP9 VAR BYTE
I VAR BYTE
J VAR BYTE
SMSTXT VAR BYTE[22] 'CONTENUTO SMS
MITTSMS VAR BYTE[13] 'MITT DELL SMS
MITTSMS2 VAR BYTE[13] 'APPOGGIO
'********inizio programma*************
main:
Lcdout $fe, 1
lcdout $FE, 2 'torna ad inizio riga
lcdout "in attesa"
gosub RICEVISMS 'routine che si ripete ciclicamente
if B=0 then 'se l'ingresso a2 è 0 vai alla routine delle chiamate
pause 200
gosub chiamata
endif
goto main
RICEVISMS: 'routine che analizza l'sms
'+CMGL: 1,"REC READ","+39XXXXXXXXX",,"09/12/01,17:54:08+00"44448#ON+39XXXXXXXXXX :ESEMPIO di stringa ricevuta dal modulo quando invio il comando HSEROUT ["AT+CMGL=ALL",13]
lcdout $FE, 2 'torna ad inizio riga
lcdout "SMS"
HSEROUT ["AT+CMGL=ALL",13]
PAUSE 100
HSERIN 3000,NOCELL2,[wait ("+CMGL: "), skip 14 ,STR MITTSMS\13, skip 25 ,STR SMSTXT\21]
Lcdout $fe, 1
lcdout $FE, 2 'torna ad inizio riga
lcdout "Mittente:",str mittsms\21 'visualizzo il mittente dell'sms salvato nell'arrey mittsms
lcdout $FE, 2 'torna ad inizio riga
lcdout ">:",str smstxt\21 'visualizzo l'sms salvato nell'arrey smstxt
GOTO LEGGISMS 'salta alla routine che analizza il comando dell'sms,in questo caso:abilita il num +39XXXXXXXXX ,se è presente un sms_
LCDOUT $FE,1
NOCELL2:
RETURN ' _altrimenti torna a capo e ricomincia tutto
LEGGISMS:
LCDOUT $FE, $C0
LCDOUT "LEGGISMS "
'qui analizzo il messaggio ed eseguo il comando presente nell'sms
'se è andato tutto bene salto alla routine che cancella gli sms
gosub CANCELLASMS
CANCELLASMS:
Lcdout $fe, 1
lcdout $FE, 2 'torna ad inizio riga
lcdout "CANCELLA SMS"
For TMP1=1 TO 10
Pause 100
HSerout ["AT+CMGD=",#TMP1,13] '_CANCELLA TUTTI GLI SMS
HSerin 2000,NORESP,[WAIT ("OK")]
NEXT TMP1
LCDOUT $FE,$C0
LCDOUT,"SMS CANC"
Pause 1000
GOTO MAIN
noresp:
RETURN