Page 1 sur 1

Logiciel LCD nokia 3310 (PCD8544)

Publié : 24 févr. 2007 11:33
par JP
Hello,

Je cherche un logiciel qui me permette de générer le tableau de valeur à envoyer à cet écran LCD a partir d'une image.

Merci
a+
JP

Publié : 24 févr. 2007 12:05
par JP

Publié : 02 mars 2007 13:46
par alxblog
Salut JP, je m'intéresse aussi à l'utilisation des lcd nokia (3410 pour ma part) avec des uC Atmel, aurais tu de la doc assez bien expliquée, avec du code source en C ou une librairie :oops: parce que ce que j'ai trouvé est:

en anglais: pour les uC PIC :s
en allemand: AVR mais je parles pas allemand mdr

merci

Publié : 02 mars 2007 13:50
par JP
Salut alxblog,

Tu connais la ref du controleur utilisé pour ton LCD ?

Pour le PCD8544, j'utilise la librairie de base PCD8544.c de ce projet : http://butterflymp3.sourceforge.net/

a+
JP

Publié : 02 mars 2007 14:32
par alxblog
je te remercie j'étais déjà tombé sur cette page sans y prêter attention, en effet mon modèle est un PCD8544. Sans vouloir abuser as tu quelques exemples de code pour l'utilisation simple ?

de plus je code sous codevision AVR, cette librairie ne semble pas être nativement destinée à CVAVR, est il possible de l'adapter ? ou bien faut-il que je me mette à WinAVR :oops:

En tout cas merci pour la réponse rapide et efficace ainsi que pour le contenue du forum et du site, je suis étudiant en Terminale STI électronique, et je dois avouer que jelectronique m'a sauvé plus d'une fois la vie. Bonne continuation.

:!:

Publié : 02 mars 2007 15:19
par JP
je te remercie j'étais déjà tombé sur cette page sans y prêter attention, en effet mon modèle est un PCD8544. Sans vouloir abuser as tu quelques exemples de code pour l'utilisation simple ?
Tu peux t'inspirer du main du butterfly mp3 et du contenu du pcd8544.h pour avoir les fonctions bas niveaux. (C'est ce que j'ai fais)

Pour un petit exemple tout simple :

Code : Tout sélectionner

#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include "types.h"
#include "pcd8544.h""

int main()
{
lcdInit();
int i;
lcdXY(0,0);  						
lcdModeData;
for (i=0;i<36; i++) lcdByte(0xFF); // Met une partie de la 1ere ligne en noir

while(1);

return 1;
} 
Une petite remarque l'affichage d'un code envoyé n'est validé que sur le front d'horloge suivant.
Donc si tu envoies juste :

Code : Tout sélectionner

lcdByte(0xFF);
Rien ne sera affiché.
Soit tu lui envoies 2 codes d'affilé pour n'afficher que le 1er

Code : Tout sélectionner

lcdByte(0xFF);
lcdByte(0xFF);
Soit tu définis une nouvelle fonction dans pcd8544.h pour rajouter un coup d'horloge :

Code : Tout sélectionner

#define lcdClk		lcdPort &= (unsigned char) ~_BV(SCLK);lcdPort |= (unsigned char) _BV(SCLK);	//Clock pour l'envoir de données
et au final tu envoies :

Code : Tout sélectionner

lcdByte(0xFF);
lcdClk;

Code : Tout sélectionner

est il possible de l'adapter ?
Heuu ... oui c'est possible
ou bien faut-il que je me mette à WinAVR
Rien ne t'y oblige mais ca serait plus simple.
Terminale STI électronique
Tu fais ca dans le cadre de tes cours ?
je dois avouer que jelectronique m'a sauvé plus d'une fois la vie.
Contents de l'apprendre :)
Bonne continuation.
A toi aussi

a+
JP

Publié : 02 mars 2007 16:11
par alxblog
MERCI MERCI MERCI vraiment un grand merci a toi, ça me faisais mal au coeur 2 jeter les 3 lcd de nokia ^^
Tu fais ca dans le cadre de tes cours ?
non en faite, juste par curiosité, certes le thème de cette année (station météo) a un afficheur lcd alphanumerique (qui n'a plus de secret pour moi grace à jelectro.) mais c'est juste pour m'amuser un peu, bidouiller quoi, c'est jamais mauvais pour la culture ;)

en tout cas encore mille merci !