Picaxe 20m2 avec un afficheur graphique 12864B (liaison serie)

YSBM

New Member
Bonsoir,

Je recherche de l'aide afin d'utiliser un afficheur graphique du type 12864B avec lequel il est possible de communiquer en mode série.
Pour transmettre les données, il faut un signal d'horloge ( SCLK) et le signal de données (SID). Pour les données, je ne devrais pas avoir de problèmes, mais
comment faut-il faire pour générer le signal SCLK ?
(dans le fichier il y a le diagramme).

Cordialement,
 

Attachments

BESQUEUT

Senior Member
Pour transmettre les données, il faut un signal d'horloge ( SCLK) et le signal de données (SID). Pour les données, je ne devrais pas avoir de problèmes, mais
comment faut-il faire pour générer le signal SCLK ?
(dans le fichier il y a le diagramme).
Bonjour, et bienvenue sur le forum.
Pas le temps d'entrer dans les détails, mais en première piste, lire la doc pour SHIFTOUT (SPIOUT)
 

YSBM

New Member
Bonsoir BESQUEUT,

Merci, a première vue cela a l'air de correspondre à mon besoin. Je vais tester.
 

YSBM

New Member
Bonsoir PieM,

Pour la seconde vue, ce n'est pas tout a fait vrai. Là-bas je cherchais a communiquer avec une liaison I2c avec un afficheur OLED. Ce qui marche a peu près. Ce sont les dimensions de l'écran qui me font revenir sur l'afficheur graphique du type 128x64 Digole (90mm x 70mm). Par contre comme celui ci permet une liaison 8 /4 bits ou Série et non pas I2C. Actuellement j'utilise une liaison 4 bits avec mes afficheurs LCD 4x16 et depuis peu le FRM010 donc en liaison série avec les picaxes 20m2.
Je trouve intéressant la liaison série a cause du nombre de connexion.
Je m'intéressé a la liaison SPIOUT ( sur le conseil de BESQEUT), je ne saisie pas encore toutes les subtilités de cette fonction d'autant plus que je ne dispose que de 20M2 qui nécessite le programme exemple se trouvant dans le manuel. L'afficheur est actuellement connecté en mode parallèle afin que je puisse tester.
Voila pour la petite remarque,

Bonne soirée
 

PieM

Senior Member
Bonsoir PieM,

Pour la seconde vue, ce n'est pas tout a fait vrai. Là-bas je cherchais a communiquer avec une liaison I2c avec un afficheur OLED. Ce qui marche a peu près. Ce sont les dimensions de l'écran qui me font revenir sur l'afficheur graphique du type 128x64 Digole (90mm x 70mm). Par contre comme celui ci permet une liaison 8 /4 bits ou Série et non pas I2C. Actuellement j'utilise une liaison 4 bits avec mes afficheurs LCD 4x16 et depuis peu le FRM010 donc en liaison série avec les picaxes 20m2.
Je trouve intéressant la liaison série a cause du nombre de connexion.
Je m'intéressé a la liaison SPIOUT ( sur le conseil de BESQEUT), je ne saisie pas encore toutes les subtilités de cette fonction d'autant plus que je ne dispose que de 20M2 qui nécessite le programme exemple se trouvant dans le manuel. L'afficheur est actuellement connecté en mode parallèle afin que je puisse tester.
Voila pour la petite remarque,

Bonne soirée
Bonjour,
dans le post #9 que j'indique on parlait bien d'un 12864 avec un contrôleur ST7920/ST7921, pour lequel je disais d'utiliser du SPI.
Ici il s'agit d'un afficheur graphique du type 12864B avec contrôleur ST7920.
Il me semble trouver une certaine similitude...
 

YSBM

New Member
Bonjour,

Bien, vous aurez donc eu le dernier mot. Je n'ai pas tout de suite fais le lien entre le mode SPI et une liaison série et dans le post que vous citez, ma priorité était le mode I2C avec l'afficheur OLED.
Je ferais attention la prochaine fois en consultant d'abord le forum.
Bonne soirée,
 

YSBM

New Member
Bonjour,

Je pense bien avoir fait le tour cette fois ci et je reste malheureusement bloqué avec mon afficheur graphique 128x64 DIGOLE (ST7920). Je me connecte en parallèle 8 bits avec un Picaxe 20M2. J'arrive a l'utiliser dans son mode le plus simple, c'est a dire comme un afficheur 4 x16. C'est dans le mode graphique que je suis bloqué. Dans le programme( joint), il y a un caractère chinois qui s'affiche, sans l'avoir fait volontairement. Dans les différents tests que j'ai fait, des que je passais en mode graphique, l'écran était brouillé par une multitude de points. Je souhaiterais trouver une explication pour donner une position X, Y sur l'écran et ensuite allumer ou éteindre un pixel. J'ai également récupérer de caractères, mais je suis incapable de m'en servir, comment faut-il faire pour les envoyer a l'écran en mode graphique.

0x3e,0x51,0x49,0x45,0x3e, // 30 0
0x00,0x42,0x7f,0x40,0x00, // 31 1
0x42,0x61,0x51,0x49,0x46, // 32 2
0x21,0x41,0x45,0x4b,0x31, // 33 3
0x18,0x14,0x12,0x7f,0x10, // 34 4
0x27,0x45,0x45,0x45,0x39, // 35 5
0x3c,0x4a,0x49,0x49,0x30, // 36 6
0x01,0x71,0x09,0x05,0x03, // 37 7
0x36,0x49,0x49,0x49,0x36, // 38 8
0x06,0x49,0x49,0x29,0x1e, // 39 9

J'ai beau lire et relire la notice, lorsque je mets en pratique, cela ne donne rien. Sur les différents post que j'ai pu voir, les questions sont bien plus pointues que ce que je recherche. Il me faudrait une explication avec idéalement un petit exemple pour tester.
Cordialement,
 

Attachments

BESQUEUT

Senior Member
Peut-être un peu d'inspiration ici
En particulier la commande
/* Extended ST7920 Commands */
#define ST7920_ECMD_GFXDISPON 0x36 // Ext. Display Control (8-bit, Extended Instructions, GFX Display On)

qui met le GFX sur ON...
 

YSBM

New Member
Bonsoir BESQUEUT,

Merci pour le lien, j'ai enfin compris le fonctionnement et j'arrive maintenant a afficher du graphique. Tous mes vœux pour la nouvelle année.
Cordialement,
 
Top