
Cobra (Normal User)
Rookie
    
Messaggi: 29
Iscritto: 04/11/2011
|
Ciao a tutti ragazzi,
sto alle prese con i comandi AT del mio cellulare. Ho creato un piccolo programma dotato di una textbox dove inserire il numero da chiamare e tre pulsanti che rappresentano l'avvio, la risposta e la chiusura di una chiamata. Effettuando una chiamata attraverso il comando ATDT seguito dal numero desiderato, il cellulare avvia la chiamata e fin qui tutto ok solo che, se invio il comando ATH (ovvero per chiudere la conversazione), anche se ricevo l'ok dal cellulare (ho fatto una prova con hyperterminal e come risultato da OK), la conversazione continua e non riesco per nessun motivo a chiuderla. Ho provato anche con il comando ATZ ma nulla da fare, la chiamata continua senza arrestarsi vi posto il codice per essere quanto più chiaro possibile
Codice sorgente - presumibilmente VB.NET |
Private Sub Cellulare_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If SerialPort1.IsOpen Then SerialPort1.Close() End If Try With SerialPort1 .PortName = "COM4" .BaudRate = 115200 .Parity = IO.Ports.Parity.None .DataBits = 8 .StopBits = IO.Ports.StopBits.One End With SerialPort1.Open() Catch ex As Exception MsgBox(ex.ToString) End Try end sub Private Sub Chiama_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Chiama.Click SerialPort1.WriteLine("ATDT " & TextBox1.Text & ";" & """" & vbCrLf) SerialPort1.Write(Chr(26)) End Sub Private Sub Chiudi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Chiudi.Click SerialPort1.WriteLine("ATH" & vbCrLf) SerialPort1.Write(Chr(26)) End Sub Private Sub Rispondi_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Rispondi.Click SerialPort1.WriteLine("ATA" & vbCrLf) End Sub
|
|
|

()
Newbie
    
Messaggi:
Iscritto:
|
Prova da hyperterminal prima di dare ATH a dare il comando
+++
|
|

Cobra (Normal User)
Rookie
    
Messaggi: 29
Iscritto: 04/11/2011
|
Postato originariamente da nessuno:
Prova da hyperterminal prima di dare ATH a dare il comando
+++
|
Ho provato a seguire il tuo consiglio, mi restituisce l'ok ma la chiamata non la chiude |
|

()
Newbie
    
Messaggi:
Iscritto:
|
Cioè usando
+++
dopo l'ok con
ATH
non chiude?
|
|

Cobra (Normal User)
Rookie
    
Messaggi: 29
Iscritto: 04/11/2011
|
Esatto, proprio così, ovvero, quando scrivo con hyperterminal succede questo:
+++
ATH
OK
questo che ho scritto e ciò che visualizzo, cioè scrivo +++, poi do invio, successivamente scrivo ATH, do invio ed ottengo l'OK ma la chiamata non la chiude. Ho provato anche a cambiare cellulare, ma fa sempre lo stesso "difetto"
Ultima modifica effettuata da Cobra il 11/12/2011 alle 13:53 |
|

Cobra (Normal User)
Rookie
    
Messaggi: 29
Iscritto: 04/11/2011
|
Anche facendo il contrario riscontro sempre il medesimo problema, ovvero, se prima scrivo ATH (ricevo OK), poi invio +++, non succede nulla e la conversazione continua. Imperterrito ho continuato a scrivere prima +++ dando invio, poi ATH, ricevo OK ma la conversazione non si chiude. Ho provato con il comando ATZ, ma non fa nulla, come se non "digerisse" il fatto di chiudere la chiamata e "bypassasse" l'evento
|
|

Cobra (Normal User)
Rookie
    
Messaggi: 29
Iscritto: 04/11/2011
|
Ragazzi tutto ok, potete chiudere, il comando da utilizzare era AT+CHUP, grazie comunque per l'aiuto, grandi
|
|