Electromag1 Circuits électroniques et Picaxes

Petit site pour ceux qui bricolent en électronique en général et sur les PICAXES en particulier.
Les PICAXES sont des microprocesseurs (PIC de Microship) programmables en BASIC. Pleins de qualités, pas chers, ultra faciles à programmer.
Tout (ou presque) est sur le site du distributeur Gotronic (voir les liens).
Les pages  seront ajoutées ou modifiées petit à petit.
Dans le but d'améliorer ce blog, communiquez moi vos remarques et les erreurs que vous pouvez constater.
Pour me contacter: Envoyez un mail à l'adresse : mag1mic@free.fr .  Tout message reçoit une réponse
Pour retourner au menu, Cliquer sur "LISTE DES PAGES", ici ou en haut de la colonne de gauche
Pour laisser un message, allez dans le "LIVRE D'OR"
Bonne visite
 
 

Ajout de caractères

sur un LCD série


Cette page est une synthèse des pages précédentes détaillant l'ajout de caractères nouveaux en CGRAM sur les LCD.

Quelque soit l'origine du LCD série, Picaxe genre AXE 133 ou bas prix chinois, voici une procédure permettant d'ajouter des caractères personnalisés dans les huits caractères CGRAM libres
1 . Dessiner le caractère dans une matrice de 5 x 8:
Remplacez les case noires par des 1, les blanches par des 0
On obtient un nombre binaire de 5 caractères, que l'on écrit en décimal (c'est plus court).
Par exemple un è
   X         01000 = 8
     X       00100 = 4
   X  X  X     01110 = 13
 X        X   10001 = 17
 X  X  X  X     11110 = 30
 X           10000 = 16
   X  X  X  X   01111 = 15
            00000 = 0

2. Soit N le n° du caractère à enregistrer, la commande à envoyer est N x 8 +64
Pour N de 0 à 7, on obtient successivement: 64, 72, 80, 88, 96, 104, 112, 120
Les huits octets décrivant le caractère doivent suivrent cette commande
3. Pour enregistrer ce caractère sous le n° 0, on obtient : 0 x 8 +64 = 64
4. La commande finale est donc, pour le catactère "0" et un LCD connecté à la broche C.4, à 4MHz :
serout C.4, N2400_4, (254,64)
serout C.4, N2400_4, (8,4,13,17,30,16,15,0)

Le même caractère, enregistré sous le n°1 (en plus compacte)
serout C.4, N2400_4, (254,72,8,4,13,17,30,16,15,0)
 
Ces caractères sont enregistrés dans l'initialisation du programme, pour la lecture, ils sont définis par un simple nombre, de 0 à 7 (  on peut aussi définir par des chiffres de 1 à 8, en fait, 0 et 8 définissent le même caractère)

Ex: pour un LCD 1604:
serout C.4, 2400_4, ( 254, 128, 0)    écrit un è au début de la première ligne
 
Un exemple de code définissant huit caractères accentués français, et le résultat sur écran LCD:

;caractères spéciaux
#picaxe 08M2
#no_data
;**** initialisation *******
symbol LCD= C.4
symbol baud= N2400_4
pause 500 'Petite pause pour le temps d'initialisation LCD. mini=200ms

serout LCD,baud,(254,64,2,4,14,17,31,16,14,0)    ' é en cgram 0
serout LCD,baud,(254,72,8,4,14,17,31,16,14,0)    ' è en cgram 1
serout LCD,baud,(254,80,4,10,14,17,31,16,14,0)   ' ê en cgram 2
serout LCD,baud,(254,88,8,4,14,1,15,17,15,0)     ' à en cgram 3    
serout LCD,baud,(254,96,0,14,16,16,17,14,4,12)   ' ç en cgram 4
serout LCD,baud,(254,104,8,4,17,17,17,19,13,0)   ' ù en cgram 5    
serout LCD,baud,(254,112,8,4,17,17,17,19,13,0)   ' ü en cgram 6    
serout LCD,baud,(254,120,10,0,14,17,31,16,15,0)  ' ë en cgram 7

;******* programme ***********
pause 100        'petite pause pour digérer mini=70ms
serout LCD,baud,(254,1)   ;effacement écran
serout LCD,baud,(254,128,0," ",1," ",2," ",3," ",254,192,4," "5," ",6," ",7," ",8)
        ;en fait, le caractère 0, ou 8, c'est le même
do loop


Autre caractère utile:
Dans l'éditeur PE6, "ß" (Alt+0223) n'a pas grand intéret en France, mais sur un LCD chinois, il se traduit par °, et ça peut servir.

 



Créer un site
Créer un site