Bonjour,
J'ai récupéré un écran Oled et j'aimerais l'expérimenter sur un arduino Nano.
J'ai déjà pu identifier sa référence "SSD1322" ce qui m'a permis de trouver du code:
Cependant, quand je lance la compilation, j'ai un message d'erreur avant le téléversement.
Alors que quand je verse un Blink, ça fonctionne très bien...
Je me demande si le Nano est compatible avec ce code, ou si il faut un uno ou un mega?
Merci pour vos avis
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp: In member function 'int ESP8266_SSD1322::drawUnicode(unsigned int, int, int, int)':
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1223:7: error: 'textsize' was not declared in this scope
if (textsize == 1)
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1223:7: note: suggested alternative: 'textsize_x'
if (textsize == 1)
^~~~~~~~
textsize_x
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1237:9: error: 'textsize' was not declared in this scope
if (textsize==1){
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1237:9: note: suggested alternative: 'textsize_x'
if (textsize==1){
^~~~~~~~
textsize_x
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1263:8: error: 'textsize' was not declared in this scope
pY+=textsize;
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1263:8: note: suggested alternative: 'textsize_x'
pY+=textsize;
^~~~~~~~
textsize_x
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1266:21: error: 'textsize' was not declared in this scope
return (width+gap)*textsize; // x +
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1266:21: note: suggested alternative: 'textsize_x'
return (width+gap)*textsize; // x +
^~~~~~~~
textsize_x
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp: In member function 'int ESP8266_SSD1322::drawCentreString(char*, int, int, int)':
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1380:15: error: 'textsize' was not declared in this scope
len = len*textsize;
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1380:15: note: suggested alternative: 'textsize_x'
len = len*textsize;
^~~~~~~~
textsize_x
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp: In member function 'int ESP8266_SSD1322::drawRightString(char*, int, int, int)':
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1433:15: error: 'textsize' was not declared in this scope
len = len*textsize;
^~~~~~~~
/Users/ismaelmarionneau/Documents/Arduino/libraries/arduino-SSD1322-master/ESP8266_SSD1322.cpp:1433:15: note: suggested alternative: 'textsize_x'
len = len*textsize;
^~~~~~~~
textsize_x
exit status 1
Erreur de compilation pour la carte Arduino Nano
9a compile bien et ça téléverse.
Par contre je ne trouve pas de câblage associé au code, est-ce que tu penses que je peux me baser sur celui de la page que j'avais trouvé par moi même?
/**
* This is an example for the Newhaven NHD-3.12-25664UCY2 OLED based on SSD1322 drivers
* The NHD-3.12-25664UCY2 is sold through Digikey and Mouser
*
* Following hardware connections are assumed
*
* OLED Arduino 101
* ---------------------+------------------------------------------------------------------
* #1 Vss/GND GND
* #2 Vdd 3V3 (up to 271 mA, use external power supply to feed Arduino 101)
* #4 D/!C D9
* #7 SCLK D13 (hardware SPI SCLK)
* #8 SDIN D11 (hardware SPI MOSI)
* #16 !RESET !RESET
* #17 !CS D10
* #5,#6,#10-14,#19,#20 GND
* #3,#9,#15,#18 not connected
*
* Based on Adafruit SSD1306 driver (https://github.com/adafruit/Adafruit_SSD1306)
* for which the original header is left below:
*/
/*********************************************************************
Ah mais non, ce code n'est pas bon pour un nano.
Je viens de percuter, mais les entrées-sorties du nano s'arrêtent à 13.
Est-ce que c'est possible d'assigner d'autres pins?
Il semble que ce soit une communication parallèle. 8 fils pour les data, 5 fils pour le contrôle (E RW CS DC RES) plus VCC et GND.
Mais il peut aussi être commandé en SPI, reste à savoir si le module le permet. On n'aurait plus besoin que de 4 fils : SCLK SDIN DC CS (plus VCC et GND). Ce serait le mode de communication de ces deux bibliothèques.
J'ai pu identifier avec de l'aide sur facebook que c'était un oled Solomon Systech's "SSD1322"
C'est mentionné clairement dans le bootlog de l'appareil.
J'ai pu identifier avec de l'aide sur facebook que c'était un oled Solomon Systech's "SSD1322"
C'est mentionné clairement dans le bootlog de l'appareil.
Tu ne peux pas connecter directement ce genre d'écran sur une carte Arduino, il faut un module d'adaptation électronique.
Le SSD1322 c'est un contrôleur d'afficheur.
Les 2 signaux BS0 et BS1 (vraisemblablement nommés BS1 et BS2 dans ton tableau ci-dessus) servent à sélectionner le type d'interface.
La puce elle doit être sous l'étiquette blanche à la base de la matrice.
La référence SSD1322 nous a été donnée par le demandeur on peut supposer qu'il l'a trouvé quelque part sur l'afficheur. Je dis juste que SSD1322 c'est une référence de contrôleur d'écran et non une référence d'afficheur.
@smaww , si tu sais d'où vient cet afficheur, il serait peut-être possible de retrouver le brochage du flex.