display oled 128*64 i2c SSD1309[RISOLTO]

Ciao a tutti ho comprato questo display
,io ho guardato su internet ed ho visto che ci sono diversi display uguali, esce di fabbrica impostato a funzionare in SPI ma io vorrei usarlo in i2c quindi ho tolto il resistore R17 ma per farlo dovrò collegare due resistori R15,R13. Quello che io vorrei sapere i resistori di 4k7 li devo montare sulle piazzole, che per le difficolta non vorrei fare, oppure collegare sulle line sda, scl e il Vcc come libreria ho trovato questa OLED SSD1309 with U8GLIB può andare bene.
grazie a chi mi può aiutare RSLOGIX52

Se sono i resistori di pull-up dell'i2c certo, puoi metterli anche sull'eventuale breadboard o dove preferisci.

Quello che penso anche io perché su un sito parlano di mettere un ponticello o resistori di 4K7 . rslogix52

Mi passeresti quel link, per curiosità? Io di solito quai display li compro già SPI o i2c a seconda di come mi servono.

La u8glib va bene, ma guardati bene gli esempi, ha una sua logica.

il link è Questo devi scorrelo fino a dove iniziano gli interventi.
rslogix52

Grazie!

Ciao a tutti, in questi giorni sono andato avanti con le prove e seguendo le indicazione dal forum in inglese link e dopo vari tentativi ho trovato i seguenti collegamenti: Vcc ------ 5V GND ----- GND SCL ------ A5 SDA ----- A4 RES ----- 5V con ritarto di 0,5s

le resistenze R15 e R13 ho fatto un corto mentre R17 l' ho eliminata. Con I2C scannere mi trova gli indirizzo Ox3D oppure Ox3C a seconda che il pin DC è collegato al 5V oppure sconnesso. Domani inizio a fare delle prove con la libreria. rslogix52

Ciao a tutti questa mi sono messo a fare un helloword ed ho l'esempio della libreria U8g2 ma quando vado a compilarla mi dice che manca Arduino:1.8.5 (Windows 10), Scheda:"Arduino/Genuino Uno"

C:\arduino-1.8.5\portable\sketchbook\libraries\U8g2\examples\full_buffer\HelloWorld\HelloWorld.ino: In function 'void setup()':

HelloWorld:242: error: 'u8g2' was not declared in this scope

u8g2.begin();

^

C:\arduino-1.8.5\portable\sketchbook\libraries\U8g2\examples\full_buffer\HelloWorld\HelloWorld.ino: In function 'void loop()': questo è probabilmente vero perché manca il costrutto ma io non so quale prendere perché tra quelli inseriti nel sketch commentati non cè quello per ssd 1309 i2c .

HelloWorld:246: error: 'u8g2' was not declared in this scope

u8g2.clearBuffer(); // clear the internal memory

^

exit status 1 'u8g2' was not declared in this scope.

sono andato Link dove parla del costrutto che serve però non lo vedo completo rslogix52

In cima ci sono tutti i costruttori, tutti commentati. Devi scommentarne uno che funzioni con il tuo display.

Ciao ,aggiornamento lo sketch che sto seguendo e questo:

#include <Arduino.h>
#include <U8g2lib.h>

#ifdef U8X8_HAVE_HW_I2C
#include <Wire.h>
#endif

U8G2_SSD1309_128X64_NONAME2_2_HW_I2C(0 /*rotation*/, [5 /*reset */ [, 15 /*clock */,14 /*data */]])

void setup(void) {
  u8g2.begin();
}

void loop(void) {
  u8g2.clearBuffer(); // clear the internal memory
  u8g2.setFont(u8g2_font_ncenB08_tr); // choose a suitable font
  u8g2.drawStr(0,10,"Hello World!"); // write something to the internal memory
  u8g2.sendBuffer(); // transfer internal memory to the display
  delay(1000);  
}

e mi da il seguente errore

HelloWorld:237: error: expected constructor, destructor, or type conversion before '(' token

 u8g2_SSD1309_128X64_NONAME2_2_HW_I2C(1, [5 [, 15, 14]])

                                     ^

C:\Users\airma\AppData\Local\Temp\arduino_modified_sketch_339524\HelloWorld.ino: In function 'void setup()':

HelloWorld:239: error: 'u8g2' was not declared in this scope

   u8g2.begin();

   ^

C:\Users\airma\AppData\Local\Temp\arduino_modified_sketch_339524\HelloWorld.ino: In function 'void loop()':

HelloWorld:243: error: 'u8g2' was not declared in this scope

   u8g2.clearBuffer();     // clear the internal memory

   ^

Uso la libreria U8g2 alla versione 2.25.10 nella cartella: C:\arduino-1.8.5\portable\sketchbook\libraries\U8g2 
Uso la libreria Wire alla versione 1.0 nella cartella: C:\arduino-1.8.5\hardware\arduino\avr\libraries\Wire 
Uso la libreria SPI alla versione 1.0 nella cartella: C:\arduino-1.8.5\hardware\arduino\avr\libraries\SPI 
exit status 1
expected constructor, destructor, or type conversion before '(' token

rslogix52

Quei costrutto in cima allo sketch io li avevo già visti ma manca quelle per ssd1309 i2c ma sono andato sul sito della libreria ed ne ho trovato una infinita ed ho scelto questo U8G2_SSD1309_128X64_NONAME2_2_HW_I2C(0 /rotation/, [5 /reset */ [, 15 /*clock */,14 /*data */]]) i valori : 0 /*rotation penso rotazione del testo 5 /*reset */ pin che io utilizzo per resettare il display 15 /*clock */ slc collegato al pin slc di arduino 14 /*data */ sda collegato al pin sda di arduino

rslogix52

Ciao a tutti dopo smanettamenti vari sono riuscito a farlo funzionare, la mia configurazione è: IDE 1.8.6 la libreria U8g2 . Ho modificato questo costrutto da cosi U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // I2C / TWI a cosi U8GLIB_SSD1309_128X64 u8g(U8G_I2C_OPT_NONE); // I2C / TWI

rxlogix52