Page 1 of 1

Afficher une image sur un écran LCD SPI

Posted: Mon 12 Jun 2023 07:20
by Jatedjus
Bonjour à tous,
j'ai acquis un écran LCD SPI sur lequel se connecte directement le pico au dos de celui ci.

waveshare : 1.3inch LCD Display Module for Raspberry Pi Pico, 65K Colors, 240×240, SPI

https://www.waveshare.com/pico-lcd-1.3.htm
https://www.waveshare.com/wiki/Pico-LCD-1.3

Le driver fourni par WAVESHARE me semblait compliqué pour un débutant j'ai donc recherché des explications plus simples ailleurs.
Après pas mal de recherches j'ai trouvé un très bon article dont voici le lien.

https://www.instructables.com/WS-Pico-1 ... y-Workout/

j'ai suivi ce tuto et tout a bien fonctionné comme décrit.

Maintenant j'aimerai charger une image ce qui n'est pas décrit dans le tuto mais je cherche depuis longtemps et je ne trouve pas la solution.
Pouvez vous m'aider ou me mettre sur la voie pour orienter mes recherches sur la méthode à utiliser.

quel doit être le format de l'image et ses dimensions maxi.
comment coder l'image pour qu'elle soit lisible par le circuit de l’écran "embedded ST7789 driver, using SPI bus"
et surtout comment la transférer dans le buffer de l’écran en micropython depuis le pico.

merci pour toute information sur le sujet si quelqu'un a déjà utilisé cet écran.

cordialement
Jatedjus

Re: Afficher une image sur un écran LCD SPI

Posted: Mon 10 Jul 2023 11:19
by Dominique
@Jatedjus

J'ai jeté un oeil sur la bibliothèque de WaveShare. Elle herite de FrameBuf (FrameBuffer).
Tu peux donc utiliser des bibliothèques compatibles avec FrameBuffer.

Je te propose de jeter un oeil sur ma modeste contribution esp8266/FILEFORMAT
ce sont des reader's, du code permettant d'ouvrir et lire des fichiers images sans le charger en mémoire.
Le reader permet aussi de se positionner dans l'image et d'en lire une region clip().... ou de lire toute l'image (par défaut).
Le reader à aussi une méthode copy_to() permettant de transférer les pixels de l'image vers un FrameBuffer.

En voici un autre exemple d'utilisation avec un écran couleur test_bmp.py sur un LCD rond couleur ST7687S (voir le visu ici)... comme quoi la lib est indépendante du pilote TFT.

Dominique