L.C.D. Nokia graphique couleurs

De nombreux sites (sparkfun, Jelu, PriceministerMagboss) proposent la vente des écrans des téléphones portables pour des opérations de maintenance. 

Mais on peut aussi les utiliser pour des applications personnelles. Le rapport qualité/prix est imbattable : le modèle décrit ici a une résolution de 130x130 pixels rétroéclairés en 256 couleurs (et même 4096 dans un mode particulier) pour un prix de 20€ environ !

La communication utilise le format série synchrone (SPI) facile à mettre en oeuvre avec tous les microcontroleurs. L'interface se contente de 6 connexions, alimentation comprise.

La principale difficulté qui peut rebuter est la connectique. Le LCD décrit utilise un connecteur CMS pas très courant et délicat à souder. Toutefois, les  sites sparkfun et Jelu proposent des cartes d'adaptation qui éliminent cette obstacle (adaptateur Sparkfun ci-dessus : brochure et schéma).

L'autre difficulté vient de la programmation :  quand vous achetez ce LCD vous ne savez pas toujours quel type de controleur gère le LCD ! Deux sont utilisées : PCF8833 (470K) de Philips ou S1D15G10 (430K) de Epson. La gestion de ces 2 controleurs est identiques mais les fabricants ont choisi des codes de commandes différents : ils ne sont donc pas compatibles sans adapter le logiciel.

J'ai donc écrit un programme sur PC qui permet d'identifier le controleur, mais aussi de tester le LCD et d'optimiser le réglage du contraste pour le modèle Epson.

Modèles de portables Nokia

Le LCD décrit est celui utilisé par les modèles suivants (entre autres) :

Nokia 6100

Nokia 7210


Programme de test sur PC

Le fichier "TViclpt.sys" doit être copié dans le répertoire : "C:\Windows\System32\ Drivers"

L'exécutable peut être copié dans n'importe quel dossier.

Fonctions du programme :

Communication via le port parallèle (voir schéma ci-dessous)

Sélection du controleur : Philips ou Epson

Réglage des 2 paramètres du contraste (Epson seulement, le modèle Philips est configuré en usine). Attention, les réglages sont assez pointus : l'image n'apparait que sur une faible plage des paramètres. Les résultats pourront être utilisés dans le source du programme du microcontroleur de l'application.

Dessin de texte dans les 4 sens avec 2 polices. Les couleurs du texte et du fond sont réglables

Manuipulation et transfert d'une image "bmp" (elle est convertie au format 132x132 pixels)



Schéma de l'interface PC

ATTENTION : le connecteur K2 n'est pas celui du LCD mais celui de l'adaptateur Sparkfun. Cet adaptateur comporte le convertisseur DC-DC qui produit la tension nécessaire au rétroéclairage du LCD à partir de VDD=3V

Ne jamais alimenter le LCD par plus de 3,3V

Il ne faut surtout pas connecter directement les signaux de controle du LCD au port LPT sous peine d'endommager l'écran. Pour la même raison, le tampon 244 doit être alimenté par la même tension VDD que le LCD. Appliquer des tensions sur les entrées du LCD sans qu'il soit alimenter peut le détruire.

Les résistances protègent le port LPT et adaptent les niveaux à 3V


Exemples de programmes en C et assembleur pour MSP430

Les programmes proposés ont été développé avec la version d'évaluation de l'environnement IAR (taille du programme illimité en assembleur et limité à 4K en C).

Téléchargez le dossier "Travail_IAR" (61K) qui comporte un fichier "Workspace" à charger dans l'environnement IAR. Celui-ci est alors configuré pour des applications en C et/ou en assembleur.

Schéma structurel


Le strap JP1 permet de sélectionner le type de LCD :
ouvert : Epson
fermé : Philips
On peut utiliser d'autres ports de sortie. Toutefois, dans le cas du MSP430F1132, on exploite le port SPI et les broches concernées sont figées (SIMO0 et UCLK0).
Seules sont représentées les connexions avec le LCD.

Source du programme en "C"
Source du programme en "assembleur"

Image obtenue