+ Répondre à la discussion
Affichage des résultats 1 à 11 sur 11
  1. #1
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut MSComm et Input

    Slt ,

    J'essaie de créer un programme pour recevoir les SMS via un modem WaveCom RS232 et j'utilise la MSComm et les commade AT.
    j'ai commencé mes tests en faisant un appel vocal à partir du VB via la commande "ATD<2145524455>"

    Code :
    1
    2
    3
    4
    MsComm1.CommPort=1
    MSComm1.Settings = "9600,N,8,1"
    MSComm1.PortOpen=True
    MSComm1.OutPut="ATD<0123255645>" & Chr$(13)
    et c ok
    ensuite j'ai commencé à faire les essai pour la lesture des SMS en utilisant ce code :

    Code :
    1
    2
    3
    4
    5
    6
    If MSComm1.InBufferCount > 0 then
    MSComm1.OutPut="AT+CMGR=1" & Chr$(13)
    Dim Buffer
    Buffer = Buffer & MSComm1.Input
     
    End if
    le problème c'est que le "MSComm1.InBufferCount " est toujours à zéros ,c 'est à dire aucune réponse et de même il n'y a aucun évènement avec la "comEvReceive "
    Que faire ?

  2. #2
    Membre émérite Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    janvier 2008
    Messages
    492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 492
    Points : 828
    Points
    828

    Par défaut

    A mon humble avis, c'est la ligne
    Code :
    MSComm1.OutPut="AT+CMGR=1" & Chr$(13)
    qui déclenche la lecture du message.
    Donc
    Code :
    If MSComm1.InBufferCount > 0 then
    doit être après (avec une tempo pour attendre la transmission)

  3. #3
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut

    Citation Envoyé par DAUDET78 Voir le message
    A mon humble avis, c'est la ligne
    Code :
    MSComm1.OutPut="AT+CMGR=1" & Chr$(13)
    qui déclenche la lecture du message.
    Donc
    Code :
    If MSComm1.InBufferCount > 0 then
    doit être après (avec une tempo pour attendre la transmission)
    Merci DAUDET78
    c'est le même problème, MSComm1.InBufferCountest toujours à zéros, c'est comme il n'y aucune réponse de la part du modem

  4. #4
    Membre émérite Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    janvier 2008
    Messages
    492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 492
    Points : 828
    Points
    828

    Par défaut

    Et tu attends combien de temps entre la commande AT et la lecture ?
    Il y a bien un SMS qui est censé être présent à l'index 1 ?

  5. #5
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut

    Citation Envoyé par DAUDET78 Voir le message
    Et tu attends combien de temps entre la commande AT et la lecture ?
    Il y a bien un SMS qui est censé être présent à l'index 1 ?
    le code est dans un Timer fe 200ms ,je fais un Debug pas à pas et rien d'Input

  6. #6
    Membre émérite Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    janvier 2008
    Messages
    492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 492
    Points : 828
    Points
    828

    Par défaut

    Tu as cherché, sur la toile, des programmes d'utilisation/explication de la commande AT+CMGR ?

  7. #7
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut

    j'ai trop cherché, et c'est une méthode standard des commande AT , sauf que mom problème est juste la récupération du message ou même une réponse "OK" du modem .si au cours du traitement ,j'ouvre l'Hyperterminal, je trouve la réponse du modem

  8. #8
    Membre émérite Avatar de DAUDET78
    Homme Profil pro
    retraité
    Inscrit en
    janvier 2008
    Messages
    492
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 492
    Points : 828
    Points
    828

    Par défaut

    Citation Envoyé par koutcha Voir le message
    .si au cours du traitement ,j'ouvre l'Hyperterminal, je trouve la réponse du modem
    Donc ton enchainement de commandes est bon ?
    Donc tu n'arrives pas à recevoir une réponse de ton modem, quel qu’elle soit ?

    Donc, c'est l'ouverture du port COM qui est mal faite

  9. #9
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut

    peut être un paramétrage du port com,mais pour info , je peux émettre un appel vocal via le modem

  10. #10
    Responsable Visual Basic

    Avatar de bbil
    Profil pro
    Inscrit en
    juin 2003
    Messages
    13 084
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Ariège (Midi Pyrénées)

    Informations forums :
    Inscription : juin 2003
    Messages : 13 084
    Points : 23 983
    Points
    23 983

  11. #11
    Invité de passage
    Homme Profil pro
    Inscrit en
    avril 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26

    Informations forums :
    Inscription : avril 2012
    Messages : 9
    Points : 2
    Points
    2

    Par défaut

    Merci bien bbil et DAUDET78
    bbil ce doc est très intéressant
    bon le code est juste sauf qu'il faut modifier les propriétés de l' MSComm ,comme le Handshaking (2) , le InBufferSize (1024) et le InputLen à 512 par exemple .

    encore merci

+ Répondre à la discussion
Cette discussion est résolue.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •