Détection USB

Papy 17 -  
qbasic45 Messages postés 60 Statut Membre -
Bonjour,

Comment programmer Qbasic pour reconnaître et différencier 2 claviers raccordés par 2 prises USB?

Merci

4 réponses

  1. ElementW Messages postés 5690 Statut Contributeur 1 293
     
    Bonjour, QBasic date de 2000: c'est totalement dépassé comme langage.
    Le QBasic peur gérer des ports parallèles mais pas USB; à la rigueur tu peux utiliser une imprimante USB en la partageant sur le réseau et en l'utilisant depuis QBasic. Mais ne compte pas pouvoir faire joujou avec l'USB à moins que tu n'utilises qb64, et si c'est le cas regarde ici et utilise la doc de WinUSB.
    from human import idiocy
    del idiocy
    0
  2. qbasic45 Messages postés 60 Statut Membre 3
     
    Bonjour gravgun

    j'ai le qbasic 4.0 et qbasic 4.5 et qbasic 7.1 sur mon pc
    avec un clavier en usb (azerty) j'utilise sans probleme le qbasic
    voici un programmes de test pour les touches en qbasic
    touche ninuscules et majuscules
    --------------------------------------------------------------
    CLS : COLOR 15

    ' Constantes de touches de fonction et de contr"le.
    CONST ECHAP = 27, BAS = 80, HAUT = 72, GAUCHE = 75, DROITE = 77
    CONST ORIGINE = 71, FIN = 79, PGSUIV = 81, PGPREC = 73

    DO
    PRINT "test clavier pour sur touche"
    PRINT "pour sotire du programme poure sur(ESC)"
    ' Obtenir une touche de fonction ou touche ASCII.
    DO
    choix$ = INKEY$
    LOOP WHILE choix$ = ""
    PRINT ASC(choix$)

    IF LEN(choix$) = 1 THEN
    ' Traitement des touches ASCII
    SELECT CASE ASC(choix$)
    CASE ECHAP
    PRINT "Touche d''chappement"
    END
    CASE IS < 32, 127
    PRINT "Code de contr"le"
    CASE 48 TO 57
    PRINT "Chiffre: "; choix$
    CASE 65 TO 90
    PRINT "Lettre majuscule: "; choix$
    CASE 97 TO 122
    PRINT "Lettre minuscule: "; choix$
    CASE 123 TO 255
    PRINT "Code asc "; choix$
    CASE ELSE
    PRINT "Ponctuation: "; choix$
    END SELECT

    ELSE
    ' Conversion du code 'tendu ... deux octets en code
    ' ASCII ... un octet et traitement
    choix$ = RIGHT$(choix$, 1)
    SELECT CASE choix$
    CASE CHR$(BAS)
    PRINT "Touche BAS"
    CASE CHR$(HAUT)
    PRINT "Touche HAUT"
    CASE CHR$(PGSUIV)
    PRINT "Touche PG.SUIV"
    CASE CHR$(PGPREC)
    PRINT "Touche PG.PREC"
    CASE CHR$(ORIGINE)
    PRINT "Touche ORIGINE"
    CASE CHR$(FIN)
    PRINT "Touche FIN"
    CASE CHR$(DROITE)
    PRINT "Touche DROITE"
    CASE CHR$(GAUCHE)
    PRINT "Touche GAUCHE"
    CASE ELSE
    BEEP
    END SELECT
    END IF
    PRINT
    LOOP
    -------------------------------------------------------------------------
    0
    1. ElementW Messages postés 5690 Statut Contributeur 1 293
       
      INKEY$
      c'est une entrée de caractères générique, ça peut être généré par un clavier USB, par un clavier Bluetooth, par un driver émulant un clavier, etc: QBasic ne saura jamais que ton clavier est un USB. À part la solution que je t'ai donné, je ne crois pas que ça soit possible de distinguer 2 périphériques.
      0
  3. papy 17
     
    Bonjour gravgun;
    Bonjour qbasic45;

    Merci à tous les deux de vous êtes intéressés à mon problème.
    Il s'agit d' enregistrer et de différencier les notes d'appréciation de juges (2 ou +), ayant chacun un clavier relié à l'ordinateur par prise USB.
    Hélas, mon Qbasic 6.0 date de 1998 et suis très limité en programmation.

    Je vais essayer de contourner le problème en obligeant chaque juge de se différencier en cliquant sur une touche avant de transmettre sa notation.
    0
  4. qbasic45 Messages postés 60 Statut Membre 3
     
    bonjour

    telecharger sur le site http://quickbasic.free.fr/
    il y a QuickBasic 4.5 fr en winrar
    cil sur pour le telecharger

    if y a au si QuickBasic 4.0
    QuickBasic 4.5 fr
    QuickBasic 7.1
    0