Connexion
de l'interface :
L'interface est conçue pour s'interconnecter
directement à l'un de vos ports de communication USB
présents sur votre ordinateur
au moyen d'un cordon USB A mâle - USB B mâle.
Cordon
USB A mâle - USB B mâle.
Combinaison
VID et PID :
Dans
le cadre de ce projet, nous utilisons
un driver de type
HID (Human
Interface Device) utilisé dans
tous les périphériques
de type souris
ou clavier
USB du commerce. L'avantage est sa simplicité
de mise en oeuvre car le périphérique
de type HID est
automatiquement reconnu par Windows
et
ne nécessite aucun driver exotique!
Tous
les périphériques USB
sont pourvus d'une combinaison unique
prenant la forme de deux
nombres.
Le premier nombre VID
identifie le
fabricant du produit,
ici Microchip et le second PID
représente l'identificateur
du produit.
Dans le cadre de ce projet nous avons
utilisé le VID
de Microchip librement disponible 1240
et comme PID
nous
avons pris arbitrairement la valeur
4.
N'oubliez pas que le PIC
et
le logiciel
sous Windows doivent
utiliser la même combinaison VID/PID.
Connexion pour la
première fois de l'interface USB au PC :
La détection
du périphérique USB n'intervient
qu'après la fin des deux affichages
du titre et des droits.
Passé
cette introduction
de 4 à 5 secondes,
le PC détecte un nouveau
matériel et affiche son identité
en bas à droite de votre écran
comme ci-dessous :
Patientez
quelques secondes durant l'installation
automatique des pilotes de votre périphérique
de la catégorie HID.
Après
l'installation du pilote, l'interface
est fonctionnelle et vous pouvez désormais
utiliser le logiciel sous Windows pour
piloter votre interface...
Mon
interface LCD n'est pas reconnue par
Windows et le rétro-éclairage
est de faible intensité ?
Ce
problème peut survenir lorsque
le
courant absorbé par
le rétro-éclairage
dépasse les 50mA.
En effet, au delà de cette limite,
la tension d'alimentation +5V délivrée
par le port USB s'écroule. Rassurez-vous,
cela n'est nullement
dangereux
pour votre PC (portable ou de bureau)
grâce à une gestion "sophistiquée"
du bus.
Afin
de modifier
le courant absorbé par le rétro-éclairage
du LCD, une résistance référencée R2
a été placée sur
des
picots tulipes
comme ci-dessous :
Notre
afficheur LCD fonctionne parfaitement
avec une résistance de
22 ohms,
mais malheureusement les
courants absorbés par
les rétro-éclairages des
LCD varient
d'un constructeur à un autre...
Ainsi,
afin de réduire
le courant absorbé par le rétro-éclairage,
essayez différentes valeurs de
résistances R2
par ordre croissant (33ohms,
47ohms,
56ohms,
82ohms,
etc...). A chaque fois, reliez l'interface
au PC, attendez
4 à 5 secondes
et vérifiez si Windows détecte
votre interface LCD. Si ce n'est toujours
pas le cas, augmentez la valeur de la
résistance R2
et ainsi de suite...
Toutefois
l'interface LCD USB peut fonctionner
aussi avec des
LCD dépourvus de rétro-éclairage.
Réglage
du contraste de l'afficheur LCD :
Raccordez
l'interface à votre PC et jouez
sur l'ajustable
référencé
P1 afin
de régler
le contraste
de l'afficheur LCD pendant l'affichage
du
titre et des droits durant les 4
à 5
premières secondes.
Commandes utilisées sous
Windows
pour l'affichage ligne par ligne du
LCD :
Afin
de gérer les différentes
lignes du LCD, nous envoyons à
l'interface LCD USB une série
d'octets.
Le premier
est l'instruction
et
le second
est le
paramètre.
Dans
le cadre de ce projet, l'instruction
représente le
numéro de la ligne ou
bien
l'effacement du LCD
ou bien encore
l'activation ou désactivation
du rétro-éclairage. Le paramètre
représente
la chaîne
de caractères
que l'on désire afficher sur
le LCD devant toujours se
terminer
par le caractère
#.
Si
vous vous référez au code
source du programme écrit sous
Borland Delphi 7 téléchargeable
un peu plus bas, le
1er octet est
affecté à la case mémoire
FBufferOut[1] et
les octets suivants aux cases mémoires
FBufferOut[x+1]
avec
x
représentant le nombre de caractères
de votre chaine. N'oubliez
pas d'introduire un
dernier octet,
représentant le caractère
de fin de chaîne #. Sans
le caractère
#,
vous ne pourrez pas afficher la chaîne
envoyée à l'interface.
Toutefois, vous
verrez dans le code source du programme, le
moyen d'ajouter automatiquement en fin
de chaîne un caractère #.
Instruction permettant d'effacer
le LCD :
Si
vous souhaitez effacer l'écran
du LCD, il vous suffit d'envoyer
à l'interface LCD USB l'instruction
suivante :
1er
octet FBufferOut[1]
|
Comportement
du LCD
|
5
|
Ecran
LCD effacé
|
Notez
qu'il est inutile d'envoyer ici d'autres
octets. Seul le premier octet est nécessaire.
Instruction
permettant de désactiver le rétro-éclairage
:
Si
vous souhaitez désactiver le
rétro-éclairage du LCD,
il vous
suffit d'envoyer à l'interface
LCD USB l'instruction suivante :
1er
octet FBufferOut[1]
|
Comportement
du LCD
|
6
|
Rétro-éclairage
désactivé
|
Notez
qu'il est inutile d'envoyer ici d'autres
octets. Seul le premier octet est nécessaire.
Instruction
permettant d'activer le rétro-éclairage
:
Si
vous souhaitez activer le rétro-éclairage
du LCD, il vous
suffit d'envoyer à l'interface
LCD USB l'instruction suivante :
1er
octet FBufferOut[1]
|
Comportement
du LCD
|
7
|
Rétro-éclairage
activé
|
Notez
qu'il est inutile d'envoyer ici d'autres
octets. Seul le premier octet est nécessaire.
Logiciel de gestion de l'interface LCD
USB :
Téléchargement
du logiciel et du code source :
Afin
de piloter simplement l'interface via votre PC,
un petit programme nommé
"Gestion
LCD USB"
écrit sous Borland
Delphi 7 est disponible en
téléchargement. Ce dernier génère automatiquement
les
différentes instructions
présentées
ci-dessus.
Les
SE compatibles avec ce programme sont
: 8,
Seven,
Vista
et
XP. ll
n'a pas été testé
sous 2000, Me et 98SE.
Téléchargement du
soft compilé EXE : 438ko
Exemple
de ce que vous obtenez réellement
pour chacune des lignes du LCD
L'ensemble
du code source du programme Delphi est
librement téléchargeable
ci-après. Le code source est
commenté et vous n'aurez aucun
mal à l'adapter selon vos besoins.
Téléchargement de
l'ensemble des fichiers sources au format
Borland Delphi : 251ko
Téléchargement du code
source au format TEXTE : 7
ko
Les commandes sont extrêmement
simples à maitriser grâce
à l'usage d'une DLL
(Dynamic
Link Library)
spécifiquement dédiée
à la communication USB (mcHID.dll). N'oubliez
pas de placer cette DLL dans
le même répertoire que
votre programme exécutable.
Bonne
utilisation de l'interface LCD...
|