Bienvenue aux nouveaux arrivants sur FantasPic !
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
- Pensez à lire les règles durant votre visite, il n'y en a pas beaucoup, mais encore faut-il les respecter .
- N’hésitez pas à faire des remarques et/ou suggestions sur le Forum, dans le but de l'améliorer et de rendre vos prochaines visites plus agréables.
- Vous pouvez regarder votre "panneau de l'utilisateur" afin de configurer vos préférences.
- Un passage par "l'utilisation du forum" est recommandé pour connaître les fonctionnalités du forum.
--- L’équipe FantasPic ---
Modérateur : Jérémy
TFT 1.8'' en SPI avec ST7735
Salut,
J'ai ce modèle
http://www.ebay.fr/itm/1Pcs-1-8-inch-12 ... 2c8ec3d130
et il démarre avec ce code
SendCmd est un envoi spi 8 bit avec la broche RS à 0
SendDatx est un ou des envois spi 8 bit avec la broche RS à 1
J'ai ce modèle
http://www.ebay.fr/itm/1Pcs-1-8-inch-12 ... 2c8ec3d130
et il démarre avec ce code
Code : Tout sélectionner
#define MODE_SLEEP_OFF 0x11
#define DISPLAY_ON 0x29
#define SET_MA_CTL 0x36
#define SET_DISP_PX_FRM 0x3a
#define SET_PW_CTL1 0xc0
#define SET_PW_CTL2 0xc1
#define SET_PW_CTL3 0xc2
#define SET_PW_CTL4 0xc3
#define SET_PW_CTL5 0xc4
#define SET_VC_CTL1 0xc5
LcdCsOn();
SendCmd(SET_MA_CTL); SendData(0x00); // set display ram scanning direction
SendCmd(SET_PW_CTL1); SendDat3(0xa2, 0x02, 0x84); // set power control params
SendCmd(SET_PW_CTL2); SendData(0xc5);
SendCmd(SET_PW_CTL3); SendDat2(0x0a, 0x00);
SendCmd(SET_PW_CTL4); SendDat2(0x8a, 0x2a);
SendCmd(SET_PW_CTL5); SendDat2(0x8a, 0xee);
SendCmd(SET_VC_CTL1); SendData(0x0e); // set vcom control param
SendCmd(SET_DISP_PX_FRM); SendData(0x05); // 16 bit/pixel, 64k colors
SendCmd(MODE_SLEEP_OFF); // sleep off (+120ms)
SendCmd(DISPLAY_ON); Wait1ms(10); // display on
LcdCsOff();
SendCmd est un envoi spi 8 bit avec la broche RS à 0
SendDatx est un ou des envois spi 8 bit avec la broche RS à 1
TFT 1.8'' en SPI avec ST7735
TFT 1.8'' en SPI avec ST7735
TFT 1.8'' en SPI avec ST7735
-
Jérémy
Administrateur du site- Messages : 2725
- Âge : 45
- Enregistré en : juillet 2015
- Localisation : Dans le sud
- Contact :
Tiens ca me rappelle mes déboires ......
Si tu veux de l'aide il faut que nous montre le code et un schéma du montage et/ou photo , pour éviter de recherche une erreur dans le code si elle se trouve en HArd .
Au départ je te conseille d'essayer d’exécuter une fonction simple remplir l’écran d'une couleur facilement reconnaissable . Ainsi on s'assure de la bonne initialisation de celui ci , qui est à mon avis le plus dur
Si tu veux de l'aide il faut que nous montre le code et un schéma du montage et/ou photo , pour éviter de recherche une erreur dans le code si elle se trouve en HArd .
Au départ je te conseille d'essayer d’exécuter une fonction simple remplir l’écran d'une couleur facilement reconnaissable . Ainsi on s'assure de la bonne initialisation de celui ci , qui est à mon avis le plus dur
TFT 1.8'' en SPI avec ST7735
Oui je fais mes propres librairies, histoire de comprendre comment ça marche.
Le principe est le même que pour le ILI9341, on définit un rectangle horizontal, puis on envoie toutes les couleurs des points contenus dans ce rectangle.
C'est valable pour afficher un rectangle plein ou un point (rectangle de côtés 1). Pour les lignes horizontales ou verticales, c'est encore un rectangle dont un des côté est 1. Pour tous le reste, ligne oblique, cercle, ellipse, triangle, y a plus qu'à calculer les points et les afficher un par un.
Je le fais tourner sur pic32 et Arduino, tu as quel Arduino ?
Le principe est le même que pour le ILI9341, on définit un rectangle horizontal, puis on envoie toutes les couleurs des points contenus dans ce rectangle.
C'est valable pour afficher un rectangle plein ou un point (rectangle de côtés 1). Pour les lignes horizontales ou verticales, c'est encore un rectangle dont un des côté est 1. Pour tous le reste, ligne oblique, cercle, ellipse, triangle, y a plus qu'à calculer les points et les afficher un par un.
Je le fais tourner sur pic32 et Arduino, tu as quel Arduino ?
Modifié en dernier par satinas le sam. 6 févr. 2016 19:06, modifié 3 fois.
TFT 1.8'' en SPI avec ST7735
- sylvain54
Amateur- Messages : 194
- Âge : 51
- Enregistré en : août 2015
- Localisation : Dans l'est de la France
Bon,
C'est bon, ça fonctionne.
Comme un imbécile j'avais mis le "data in" du TFT sur le "data in" du pic Peut pas marcher comme ça
J'ai juste un petit problème de couleurs mais je pense qu'il faut que je modifie mon alimentation : 3 V pour le pic et 5V pour l'écran (ou alors j'ai un pont à réaliser sur le PCB du TFT (c'est prévu : Vin = 5v J1 Open et Vin = 3.3v j1 = short)).
Si mon problème de couleurs (elles ne sont pas intenses en 3.3v) est résolu, je ferai une petite vidéo demain et je fignolerai mon code source pour vous le proposer.
A ++
C'est bon, ça fonctionne.
Comme un imbécile j'avais mis le "data in" du TFT sur le "data in" du pic Peut pas marcher comme ça
J'ai juste un petit problème de couleurs mais je pense qu'il faut que je modifie mon alimentation : 3 V pour le pic et 5V pour l'écran (ou alors j'ai un pont à réaliser sur le PCB du TFT (c'est prévu : Vin = 5v J1 Open et Vin = 3.3v j1 = short)).
Si mon problème de couleurs (elles ne sont pas intenses en 3.3v) est résolu, je ferai une petite vidéo demain et je fignolerai mon code source pour vous le proposer.
A ++
Modifié en dernier par sylvain54 le sam. 6 févr. 2016 22:43, modifié 1 fois.
TFT 1.8'' en SPI avec ST7735
TFT 1.8'' en SPI avec ST7735
TFT 1.8'' en SPI avec ST7735
- sylvain54
Amateur- Messages : 194
- Âge : 51
- Enregistré en : août 2015
- Localisation : Dans l'est de la France
Merci pour l'info Satinas mais c'etait bien un problème avec mon alimentation. J'ai testé vite fait en alimentant le backlight en 5V et le Vcc, les couleurs sont parfaites. Par contre je laisse toute la logique en 3,3 v. Pour l'instant, j'ai testé avec un 18F4620 à 20 MHz. J'arrive à faire des cercles, arcs de cercles, rectangles, lignes, diagonales, changer la couleur de fond. Il me reste la fonction pour ecrire du texte à réaliser. Je compte séparer mes fonctions graphiques des fonctions liées au driver ST7735 en réalisant deux fichiers .h.
Pour y arriver, je suis parti du code source sur libstock pour du pic 24 et me suis également inspiré d'un exemple trouvé sur leur net pour mplab.
++ sylvain
Pour y arriver, je suis parti du code source sur libstock pour du pic 24 et me suis également inspiré d'un exemple trouvé sur leur net pour mplab.
++ sylvain
Qui est en ligne
Utilisateurs parcourant ce forum : Google [Bot] et 51 invités