Navigation |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Interfaçage d'afficheurs LCD |
|
|
Interfaçage d'afficheurs LCD
Résumé
Cette fiche est destinée à présenter les afficheurs LCD intelligents basés sur un HD44780, ainsi que leur interfaçage avec un PC, par exemple dans le but d'afficher des informations sur le système.
Un peu plus en détail
Introduction
Sur de plus en plus d'appareils modernes apparaissent des afficheurs à cristaux liquides (Liquid Crystal Displays).
Le HD44780 est l'un des différents circuits de contrôle d'afficheurs disponibles, et l'un des plus répandus dans la catégorie des afficheurs non-graphiques. En effet, ce circuit est destiné aux afficheurs qui n'ont besoin d'afficher que du texte. Il gère l'affichage en blocs de 5x7 pixels, répartis au maximum en 4 lignes de 20 caractères. On trouve néanmoins des afficheurs 4x40 caractères, mais ceux-ci utilisent deux contrôleurs, chacun s'occupant d'une moitié de l'écran.
Comme ils sont destinés à l'affichage de texte, ces afficheurs disposent d'un générateur de caractères, avec 8 caractères programmables par l'utilisateur. On peut ainsi insérer des logos et autres caractères non disponibles par défaut. Via ce même système de caractères programmables, on peut aussi réaliser des animations, des graphiques, ...
Les afficheurs peuvent être intégrés dans toute réalisation électronique ou informatique où l'on souhaite concilier affichage clair et faible encombrement. Ils sont de plus très facilement interfaçables avec tout type de microprocesseur, mais nous nous intéresserons ici plus particulièrement aux PC.
Interfaçage avec un PC
Il peut être intéressant de pouvoir afficher des informations déportées de l'affichage principal d'une machine. Prenons l'exemple d'un serveur, sur lequel aucun écran n'est connecté. On peut utiliser un afficheur pour afficher des statistiques sur le nombre de requêtes par seconde ou encore l'utilisation mémoire, le trafic réseau, ... Certains serveurs en sont d'ailleurs équipés par le constructeur.
Partie matérielle
Les afficheurs supportent deux modes de commande : 4 bits et 8 bits, ce qui permet d'utiliser moins de fils pour une fonctionnalité équivalente.
L'afficheur dispose de 14 broches de contrôle, plus éventuellement deux autres si l'afficheur est rétro-éclairé. Le rétro-éclairage est vivement recommandé pour améliorer la lisibilité.
Le brochage varie selon les afficheurs, mais on retrouve les connexions suivantes :
- D0-D7: Données, sont utilisées pour transmettre les commandes ou le texte à afficher.
- E: Enable, broche utilisée pour valider une commande.
- Vcc, GND: broches d'alimentation.
- Vo: broche utilisée pour régler le contraste.
- RS: broche de sélection commandes ou données.
- R/W: broche de sélection lecture ou écriture.
Les afficheurs intelligents peuvent être commandés par plusieurs moyens :
- Port parallèle : Simple, disponible sur quasiment toute machine. Il suffit de relier l'afficheur au port. La partie logicielle s'occupe du reste.
- Port série et USB : Requièrent un composant intermédiaire, et une couche logicielle supplémentaire.
Certains constructeurs proposent des afficheurs LCD sur port USB. Ils sont pour la plupart déjà montés et assemblés, et possèdent leur propre pilote.
Partie logicielle
Divers logiciels existent pour piloter les afficheurs LCD sous Linux. On citera LCDProc, un bon logiciel, mais qui n'est plus développé depuis 2001.
http://lcdproc.omnipotent.net/
Un module pour le noyau linux existe aussi, il vise à utiliser l'afficheur comme un périphérique. Il se nomme lcdmod.
http://lcd-mod.sourceforge.net/
Le programme le plus prometteur sous Linux à l'heure actuelle est Lcd4Linux. Il se veut complet et extensible. Il vise aussi à remplacer LCDProc.
http://lcd4linux.sourceforge.net/
jaLCDs est disponible pour Windows. Il est pratique, très complet, mais on pourra regretter des blocages occasionnels.
http://www.jalcds.de/
LCDSmartie est un autre logiciel pour Windows. Open-Source et intégrant quelques plug-ins de base, il est très facilement extensible.
http://lcdsmartie.sourceforge.net/
Bien que cet article ne concerne que les PC, il convient de citer Mac OS : le manque de logiciels pour ce système est surtout dû à l'absence d'interfaces simples d'emploi sur les machines Apple : pas de port parallèle, pas de port série. On trouve de l'USB, mais les drivers pour les contrôleurs sont rarement disponibles. Néanmoins il semble qu'un projet d'interface ait vu le jour récemment :
http://www.command-tab.com/index.php/mac-os-x-usb-lcd/
Autres exemples d'applications
- Afficheurs dans les caisses des supermarchés.
- Afficheurs de dispositifs de paiement par carte bleue.
- Afficheurs pour les dispositifs de type Geexbox.
Où trouver ces afficheurs ?
On peut trouver ces afficheurs dans tout bon magasin d'électronique. Citons deux exemples en région parisienne :
Caractéristiques
Prix : 11 à 40 euros selon la taille
Capacité : De 1x16 à 4x40 caractères
Année de commercialisation : 2000
|
|
|
|
|
|
|
nombre de visiteurs venus 771568 visiteurs (2612398 hits) Ici!
Tracked by Histats.com
$value) {
if ($param == 'client') {
google_append_url($google_ad_url, $param,
'ca-mb-' . $GLOBALS['google'][$param]);
} else if (strpos($param, 'color_') === 0) {
google_append_color($google_ad_url, $param);
} else if ((strpos($param, 'host') === 0)
|| (strpos($param, 'url') === 0)) {
google_append_url($google_ad_url, $param,
$google_scheme . $GLOBALS['google'][$param]);
} else {
google_append_globals($google_ad_url, $param);
}
}
google_append_url($google_ad_url, 'dt',
round(1000 * array_sum(explode(' ', microtime()))));
return $google_ad_url;
}
$google_ad_handle = @fopen(google_get_ad_url(), 'r');
if ($google_ad_handle) {
while (!feof($google_ad_handle)) {
echo fread($google_ad_handle, 8192);
}
fclose($google_ad_handle);
}
?>
|
|
|
|
|
|
|
|