IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Un compteur Vélo d'appart


Sujet :

VB 6 et antérieur

  1. #1
    Invité
    Invité(e)
    Par défaut Un compteur Vélo d'appart
    Bonjour mesdames Messieurs.

    J'ai récupéré un vieux vélo d'appart. J'ai branché le petit interrupteur qui fait sert à compter les impulsions sur le port serie. C'est le même principe qu'un compteur vélo.

    Mais bon voilà. J'ai bien reussi à compter le nombre d'impulsion c'est a dire les coups de pédale. Mais j'arrive pas à programmer toutes les autres fonctions.

    Fréquence pédalage, apparrement le timer aime pas trop.

    enfin bon, en gros j'essaye de dévélopper une interface qui me permmettent d'avoir à l'écran vitesse chrono fréquence de pédalage, distance parcourue etc...

    A terme j'aimerais même essayer de me servir du vélo comme manettes de jeux, pour jouer à des jeux genre Paperboy ou même développpez des petits jeux simple et ludique.

    J'attends vos remarques, et vos précissions avec impatience.

    Ps : J'ai choisi visual Basic pour la rapidité des résultats mais si vous pensez que je devrais essayer autre language dit le moi, je suis un bon débutant en prog, j'en suis au stade ou je dois vraiment mettre les mains dans le cambouis
    Dernière modification par zazaraignée ; 14/07/2006 à 19h07.

  2. #2
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Bonjour et bienvenue sur le forum VB de Développez.com

    Bien sûr que VB convient! Remarque que si tu posais la question sur le forum Delphi ou C++, les utilisateur de ceux-ci te diraient dans doute que ces langages sont tout à fait appropirés, mais ça, c'est comme pour les bagnoles ou les équipes de foot...

    T'as un peu de code à montrer qu'on t'aide à désembrouiller tout ça?

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Par défaut
    A terme j'aimerais même essayer de me servir du vélo comme manettes de jeux
    Moi qui ai tendance à m'empater, je suis très intéressé par ton système

    Un p'tit Q3 ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Voici du code mais bon c'est du code de touriste alors vous énervez pas.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    Dim DSRancien, Compteur1
    Private Sub Form_Load()
     i = OPENCOM("COM2,1200,N,8,1")
     If i = 0 Then
        i = OPENCOM("COM1,1200,N,8,1")
        Option1.Value = True
     End If
     If i = 0 Then MsgBox ("Pas d'interface disponible")
     TXD 1
     RTS 1
     DTR 1
     Compteur1 = 0
     DSRancien = DSR()
     Timer1.Interval = 20
     
    Text3 = "0"
    Text4 = "0"
     End Sub
     
    Private Sub Form_Unload(Cancel As Integer)
      CLOSECOM
    End Sub
     
    Private Sub Option1_Click()
     i = OPENCOM("COM1,1200,N,8,1")
     If i = 0 Then MsgBox ("COM1 indisponible")
     TXD 1
     RTS 1
     DTR 1
    End Sub
     
    Private Sub Option2_Click()
     i = OPENCOM("COM2,1200,N,8,1")
     If i = 0 Then MsgBox ("COM2 indisponible")
     TXD 1
     RTS 1
     DTR 1
    End Sub
     
     
    Private Sub Timer3_Timer()
    Text3 = Text3 + 1
     
    End Sub
    Private Sub Timer1_Timer()
    DSRnouveau = DSR()
    If DSRnouveau > DSRancien Then
       Compteur1 = Compteur1 + 1
     
       Text5 = Text3
       Text3 = 0
       Label1.Caption = Str$(Compteur1)
       Label2.Caption = Str$(60 / Text5)
        End If
     
    DSRancien = DSRnouveau
     
    End Sub
     
    Private Sub Timer2_Timer()
    temps = Time()
    Text1.Text = temps
     
    End Sub
     
     
    Private Sub Timer4_Timer()
    Text4 = TIMEREAD()
     
    End Sub
     
    Private Sub Text5_Change()
    Text6 = Text4
     
    End Sub
    Balises [CODE] (bouton #) ajoutées par zazaraignée
    Dernière modification par zazaraignée ; 16/07/2006 à 02h34.

  5. #5
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    déjà j'ai du mal à comprendre le focntionnement de ton code... peu tu nous dire ce que fais la fonction DSR..?

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2003
    Messages
    288
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Avril 2003
    Messages : 288
    Par défaut
    Idem pour ma part !

  7. #7
    Invité
    Invité(e)
    Par défaut
    La ligne DSR joue le rôle d'entrée.

    C'est en faite un bête compteur d'impulsions.

    J'ai utilisé des fonctions présente dans port.dll.

    OPENCOM sert à ouvrir le port série concerné.
    TIMEREAD à lire Deviner Quoi ?

    Je met ce petit tableau sur le port serie pour rappel
    ca permet de mieux comprendre.

    Broche Broche Entrée/Sortie Dénomination Fonction
    DB 25 Db 9
    --------------------------------------------------------------
    2 3 Sortie TxD (Transmit Data) Émission de données
    3 2 Entrée RxD (Receive Data) Réception de données
    4 7 Sortie RTS (Request To Send) Activation émission
    5 8 Entrée CTS (Clear To Send) Prêt à émettre
    6 6 Entrée DSR (Data Set Ready) Prêt à émettre
    7 5 GND (Ground) Masse
    8 1 Entrée DCD (Data Carrier Detect) Niveau du signal de
    réception
    20 4 Sortie DTR (Data Terminal Ready) Terminal paré
    22 9 Entrée RI (Ring Indicator) Appel entrant


    J'ai dejà reussi à obtenir ma cadence de pedalage mais je ne sais pas pourquoi ca apparait par intermitence.
    J'ai l'impression que ca ne suit pas que des impulsions se perdent.
    Ya t il des limite de vitesse ?

    Pour l'instant je reprend gentillement ce projet, mais j'avoue que je ne me rappel plus de tout les détails.

    En revanche si vous avez des idées qui vont dans un autre sens, ou que vous pensez à une autre méthode en C ou autres ....n'hésiter pas

    Merci

Discussions similaires

  1. [FLASH MX2004] Compteur progressif 0 à 95%
    Par DJeys dans le forum Flash
    Réponses: 5
    Dernier message: 21/07/2004, 15h58
  2. [XSL FO] Compteur a partir de 2
    Par Hugo001 dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 30/06/2004, 12h39
  3. [PB CONCEPTUEL] avec compteur/trigger
    Par kase74 dans le forum SQL
    Réponses: 6
    Dernier message: 25/03/2004, 12h02
  4. Remise à 0 d'un compteur automatique
    Par missllyss dans le forum SQL
    Réponses: 4
    Dernier message: 15/12/2003, 17h46
  5. Migration Access > SQL Server (suite) : Compteur
    Par LadyArwen dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/03/2003, 15h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo