composants:i2c_oled_ssd1306

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
composants:i2c_oled_ssd1306 [2019/01/06 20:18] – [Utilisation] mhcomposants:i2c_oled_ssd1306 [2020/06/01 16:35] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== I2C OLED 0.91 inch Screen ====== ====== I2C OLED 0.91 inch Screen ======
  
-===== Résumé =====+Exists in various format (128x32, 128x64)
  
-Un petit écran qui utilise le driver SSD1306S'interface avec 2 fils (I2C). Existe en format 128x32 ou 128x64.+{{composants:0.91lcd.jpg?300}}
  
-===== Utilisation =====+===== Specifications =====
  
-Dans Arduino il y a plusieurs bibliothèques qui permettent de s'interfacer en I2C avec des modules. Les libs Adafruit sont pas mal et facile à comprendre+  *5V ready 
 +  *Can use I2C (two wires) or SPI communication
  
-Il faut d'abord trouver l'adresse I2C du module en utilisant un program scan via une arduino.+===== Usage =====
  
-Le module 128x32 utilise l'adresse 0x3C+You can use **Adafruit SSD1306**.
  
-++++On peut utiliser  le code suivant pour scanner : |+The 128x32 uses address 0x3C 
 + 
 +If you are connecting to SDA/SCL using I2C connect pin SDA to UNO A4 and SCL to UNO A5 (default pins, respectively 20 and 21 on a Mega) 
 + 
 + 
 +++++ Basic Arduino text example |
  
 <code c> <code c>
 +#include <SPI.h>
 #include <Wire.h> #include <Wire.h>
-  +#include <Adafruit_GFX.h> 
-void setup() +#include <Adafruit_SSD1306.h> 
-{ + 
-  Wire.begin(); +#define SCREEN_WIDTH 128 // OLED display width, in pixels 
- +#define SCREEN_HEIGHT 32 // OLED display height, in pixels 
 + 
 +// Declaration for an SSD1306 display connected to I2C (SDA, SCL pins
 +#define OLED_RESET     4 // Reset pin # (or -1 if sharing Arduino reset pin) 
 +Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); 
 + 
 +void setup() {
   Serial.begin(9600);   Serial.begin(9600);
-  while (!Serial);             // Leonardo: wait for serial monitor + 
-  Serial.println("\nI2C Scanner"); +  // SSD1306_SWITCHCAPVCC = generate display voltage from 3.3V internally 
-+  if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3C for 128x32 
-  +    Serial.println(F("SSD1306 allocation failed")); 
-void loop() +    for(;;); // Don't proceedloop forever
-{ +
-  byte error, address; +
-  int nDevices; +
-  +
-  Serial.println("Scanning..."); +
-  +
-  nDevices = 0; +
-  for(address = 1; address < 127; address++ ) +
-  { +
-    // The i2c_scanner uses the return value of +
-    // the Write.endTransmisstion to see if +
-    // a device did acknowledge to the address. +
-    Wire.beginTransmission(address); +
-    error = Wire.endTransmission(); +
-  +
-    if (error == 0) +
-    { +
-      Serial.print("Appareil I2C trouve a cette adresse 0x"); +
-      if (address<16) +
-        Serial.print("0")+
-      Serial.print(address,HEX); +
-      Serial.println( !"); +
-  +
-      nDevices++; +
-    } +
-    else if (error==4) +
-    { +
-      Serial.print("Erreur inconnue a cette address 0x"); +
-      if (address<16) +
-        Serial.print("0"); +
-      Serial.println(address,HEX); +
-    }    +
   }   }
-  if (nDevices == 0) 
-    Serial.println("Aucun appareil I2C trouve\n"); 
-  else 
-    Serial.println("Fin\n"); 
-  
-  delay(100);           // wait 5 seconds for next scan 
 } }
-</code> 
-++++ 
  
  
 +void loop() {
 +  writeText();
 +}
 +
 +void writeText(void) {
 +  display.clearDisplay();
 +  display.setTextSize(1);             // Normal 1:1 pixel scale
 +  display.setTextColor(WHITE);        // Draw white text
 +  display.setCursor(0, 0);            // Start at top-left corner
 +  display.println(F("Hello, world!"));
 +  display.display();
 +}
 +
 +</code>
 +++++
 ===== Ressources ===== ===== Ressources =====
  
-Acheté de la marque MakerHawk en chine.+Bought from MakerHawk in chine.
  
-  *[[https://projetsdiy.fr/ssd1306-mini-ecran-oled-i2c-128x64-arduino/|Projet DIY, tutoriel pour SSD1306 OLED I2C]]+  *[[https://projetsdiy.fr/ssd1306-mini-ecran-oled-i2c-128x64-arduino/|DIY Project for SSD1306 OLED I2C]]
  • composants/i2c_oled_ssd1306.1546802320.txt.gz
  • Last modified: 2020/06/01 16:36
  • (external edit)