Détection USB

Fermé
Papy 17 - 16 nov. 2013 à 10:21
qbasic45 Messages postés 55 Date d'inscription vendredi 14 décembre 2012 Statut Membre Dernière intervention 15 juin 2019 - 18 nov. 2013 à 19:42
Bonjour,

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

Merci

A voir également:

4 réponses

ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
Modifié par gravgun le 16/11/2013 à 13:22
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
qbasic45 Messages postés 55 Date d'inscription vendredi 14 décembre 2012 Statut Membre Dernière intervention 15 juin 2019 3
17 nov. 2013 à 12:15
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
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 225
17 nov. 2013 à 12:39
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
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
qbasic45 Messages postés 55 Date d'inscription vendredi 14 décembre 2012 Statut Membre Dernière intervention 15 juin 2019 3
18 nov. 2013 à 19:42
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