Module SD en I2C OU OLED couleur en I2C

Bonjour,
Les emplacements I2C et SPI étant limités, j'aimerais savoir si une personne connait :
un module SD en I2C + librairie associée et lien commercial
et
un afficheur OLED (1pouce et plus) en couleur et I2C + librairie associée et lien commercial

Merci d'avance à mon ou ma sauveuse :slight_smile: .

Please post messages in English.

Google Translate says:>

Hello,
The I2C and SPI slots being limited, I would like to know if someone knows:
an SD module in I2C + associated library and commercial link
and
an OLED display (1 inch and more) in color and I2C + associated library and commercial link

Thanks in advance to my savior

No, colour OLED controllers require SPI or Parallel interfaces.

Monochrome OLEDs only need 1 bit per pixel. e.g. 128x64 screen uses 1024 bytes.
Colour OLEDs need 16 bits per pixel. e.g. 128x64 screen uses 8192 bytes.

So it takes much more traffic to draw the whole screen. And Colour OLEDs tend to be bigger too. e.g. SSD1351 is 128x128.

Likewise SD. There is a lot of traffic on a SD. I2C would be very SLOW.

Remember that SPI is a "bus". i.e. one driver but many passengers.
SPI is much faster than I2C.

David.

Thank you soo much David for your answer!
Franck

Bonjour @ frarduino82

:mag_right: Pour bien utiliser le forum francophone lire attentivement ceci :

I 've found an OLED Display which can be switched in SPI or I2C

and an interesting video on it.

la description de l'afficheur que tu as trouvé , @frarduino82 , indique : 16 niveaux de gris
gris

Su la vidéo on entrevoit vers 21:53 un affichage avec deux couleurs mais il s'agit 'un modèle très repandu sur lequel quelques lignes en haut de l'ècran sont jaunes et le reste bleu, ceci sans modification possible.

je n'ai pas eu la pateince de suivre l'intégralité de la vidéo, vois tu un passage montrant un afficheur OLED gérable en I2C et permettant un choix de la couleur de chaque pixel ?

Your 1.5 inch OLED is grayscale not colour.

16 levels of grayscale is 4-bits per pixel. This is ok with I2C. (compared to 16-bit full colour)

Oh. Grayscale OLEDs are difficult to use with small Arduinos like Uno.
Colour OLEDs are much easier.

David.

Attention, sur cet OLED, les I/Os sont en 3,3V problème avec une carte Arduino 5V!!

J'ai vu ça sur Aliexpress. Interface en 3,3V là aussi.

Sur Ali, il faut bien lire toutes les descriptions avec un œil très critique. On trouve pas mal de "OLED TFT" ou "OLED IPS". Ça, c'est du gros pipeau, c'est juste des écrans TFT classiques.
En général ils indiquent la référence du driver, si ce n'est pas le cas il vaut mieux passer son chemin. Avec la référence du driver on peut aller voir là par exemple en décortiquant la doc du driver on peut savoir si c'est vraiment de l'OLED ou pas.

Sur Ali, il faut bien lire toutes les descriptions avec un œil très critique.

+1

on peut aussi ajouter les interfaces SPI de certains afficheurs dont les lignes MOSI sont dénomées SDA , et les lignes SCK nomées SCL..... pour ajouter à la confusion

décortiquer la doc du dravier pour vérifier s'il prend réellement en charge le bus I2C......

Pour revenir à la demande initiale : afficheur Oled couleur I2C et module SD I2C, ça semble très conpromis , on est là dans la chasse gardée du BUS SPI pour des raisons techniques

Les emplacements I2C et SPI étant limités....

Un bus SPI peut à lui tout seul plusieurs périphériques (c'est le propre d'un bus) !!
(un seul SCLK, un seul MOSI, un seul MISO, un SS par périphérique)
BUS SPI

Bonjour,
Regarde vers 26 min. il semble y avoir un commutateur SPI / I2C
Franck

Bonjour,
Et donc si je comprends bien je peux brancher sur une UNO 2 SPI en parallèle. Un maitre un esclave.
si je peux avoir un exemple de branchement UNO SD (SPI) et affichage LCD (SPI) sur la même carte ça serait top; et comment coder çà?

merci d'avance à toutes et tous.

Bonjour

Regarde vers 26 min. il semble y avoir un commutateur SPI / I2C

oui, ce modèle particulier d'écran OLED Waveshare est gérable en SPI ou en I2C, il ne lui manque que la couleur !!

Un BUS SPI : un maître et des esclaves

Une carte UNO peut fonctionner en maître gérant plusieurs esclaves sur un bus SPI unique, (le propre d'un bus est de permettre d'accéder à plusieurs périphériques raccodés au même bus)

codage : faire appel aux librairies spécifiques des divers esclaves SPI et piloter chacun d'eux à tour de rôle après l'avoir sélectionné par sa ligne SS, les autres étant déselectionnés.

contrainte : chacun des esclaves SPI (carte SD, écran....) doit avoir sa ligne SS individuelle

Je n'ai pas d'exemple sous la main mais on en voit qui récupèrent via SPI des images stockées sur une carte SD et les affichent via SPI