Publicité
+ 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 chevronné Avatar de DAUDET78
    Homme Profil pro Alphonse Daudet
    retraité
    Inscrit en
    janvier 2008
    Messages
    483
    Détails du profil
    Informations personnelles :
    Nom : Homme Alphonse Daudet
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 483
    Points : 748
    Points
    748

    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 chevronné Avatar de DAUDET78
    Homme Profil pro Alphonse Daudet
    retraité
    Inscrit en
    janvier 2008
    Messages
    483
    Détails du profil
    Informations personnelles :
    Nom : Homme Alphonse Daudet
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 483
    Points : 748
    Points
    748

    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 chevronné Avatar de DAUDET78
    Homme Profil pro Alphonse Daudet
    retraité
    Inscrit en
    janvier 2008
    Messages
    483
    Détails du profil
    Informations personnelles :
    Nom : Homme Alphonse Daudet
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 483
    Points : 748
    Points
    748

    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 chevronné Avatar de DAUDET78
    Homme Profil pro Alphonse Daudet
    retraité
    Inscrit en
    janvier 2008
    Messages
    483
    Détails du profil
    Informations personnelles :
    Nom : Homme Alphonse Daudet
    Âge : 71
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : janvier 2008
    Messages : 483
    Points : 748
    Points
    748

    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
    12 893
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Ariège (Midi Pyrénées)

    Informations forums :
    Inscription : juin 2003
    Messages : 12 893
    Points : 21 856
    Points
    21 856

  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
  •