Eigene Zeichen am LCD-Display


#include <Wire.h>                   // I2C-Library (Display)
#include <LiquidCrystal_I2C.h>      // LCD-Display-Library
LiquidCrystal_I2C lcd(0x3F, 20,4);  // I2C adress, Cols, Rows

void setup() {
  lcd.begin(); //Display initialisieren
  lcd.backlight(); // backlight anlassen
  writeGraphic();
}

void loop() {
}

void writeGraphic(void){
  const uint8_t data[] = { 
    0x50, 0x70, 0x10, 0x18, 0x90, 0x10, 0xb0,  0xb8, 0x38, 0x10, 0x78, 0x78, 0x99, 0x1b,
    0xf8, 0x7c, 0x5c, 0x1c, 0x9c, 0x98, 0x18,  0x1c, 0x18, 0x10, 0x10, 0x10, 0x30, 0x70,
    0x9d, 0x1d, 0x1d, 0xff, 0x9d, 0xff, 0xff,  0xff, 0xff, 0xff, 0x1d, 0x1d, 0x1d, 0x9d,
    0x9d, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0x9d,  0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd,
    0xff, 0xff, 0xff, 0xdd, 0xdd, 0xff, 0xff,  0xff, 0x7f, 0xff, 0x5d, 0x5d, 0xdd, 0xff,
    0xff, 0x9d, 0x1d, 0xdd, 0xff, 0xff, 0xff,  0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f,  0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f,  0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 
    0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f,  0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x1f, 0x1f, 
    0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f,  0x1f, 0x1f, 0x7f, 0xff, 0x3f, 0x1f, 0x1f, 
    0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f,  0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x58, 0x78, 
    0x38, 0x18, 0x1c, 0x18, 0x18, 0xf8, 0x99,  0x3f, 0xd8, 0x58, 0x19, 0x99, 0x91, 0x91, 
    0xb1, 0xd0, 0xd0, 0x91, 0x11, 0x11, 0x91,  0x11, 0x11, 0x11, 0x11, 0x91, 0x11, 0x19, 
    0x11, 0x58, 0x91, 0x58, 0x7c, 0x5c, 0x5c,  0x5c, 0x7c, 0x1c, 0x1c, 0x1c, 0x1c, 0xfc, 
    0x1c, 0x7c, 0x9d, 0x3c, 0xfc, 0xfc, 0xdc,  0xf8, 0xfc, 0xfc, 0xfc, 0xdc, 0xfc, 0xdc, 
    0xdc, 0xdc, 0xdc, 0xdc, 0xdc, 0x1c, 0xdd,  0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 
    0x9d, 0x1d, 0xdd, 0xdd, 0x9d, 0x9d, 0x9d,  0x9d, 0x9d, 0xdd, 0xdd, 0x9d, 0x9d, 0x9d, 
    0x9d, 0x9d, 0x9d, 0x9d, 0x9d, 0x9d, 0x9d,  0x9d, 0x9d, 0xdd, 0x9d, 0xdd, 0xff, 0xdd, 
    0xdd, 0xdd, 0xff, 0xff, 0xff, 0xff, 0xff,  0xff, 0xff, 0xff, 0x9d, 0xff, 0xff, 0xff, 
    0xdd, 0xff, 0xff, 0xff, 0xff, 0xdd, 0xff,  0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 
    0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0xff, 0x3f, 0x3f, 0x7f, 0x7f, 
    0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 
    0x7f, 0x7f, 0x7f, 0x3f, 0x7f, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 
    0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 
    0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x99, 0x99, 0x99, 0xd8, 0x99, 0xd8, 
    0xd8, 0xd8, 0xdc, 0xdc, 0x5c, 0x58, 0x99, 0x91, 0x78, 0x78, 0x78, 0xd8, 0xdc, 0xdc, 
    0xd8, 0x99, 0xf8, 0x78, 0x78, 0x30, 0x30, 0x38, 0x18, 0x18, 0x1c, 0xfc, 0x3c, 0xbc, 
    0x3c, 0x3c, 0x3c, 0x3c, 0x1c, 0xfc, 0x1c, 0x1c, 0x1c, 0xfc, 0x9c, 0xfc, 0x1f, 0xfc, 
    0x1f, 0x13, 0xf0, 0xf0, 0xf0, 0x10, 0xf0, 0xfc, 0xf0, 0xf0, 0xf0, 0xf0, 0xfc, 0xbc, 
    0x1c, 0x5c, 0x9d, 0x9d, 0x9d, 0xdd, 0x9d, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 0xdd, 
    0x9d, 0x9d, 0xff, 0xff, 0xff, 0xdd, 0xdd, 0xdd, 0xdd, 0x9d, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1d, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1d, 0xff, 0x1d, 0x1d, 0xff, 0xff, 0xff, 0xff, 
    0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x7f, 0x7f, 0x7f, 0x3f, 
    0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x1f, 0x1f, 0x1f, 0x3f, 
    0x3f, 0x3f, 0x3f, 0x7f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 
    0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 
    0xff, 0x1f, 0xff, 0xff, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 
    0x1f, 0x1f, 0x1f, 0x1f, 0x99, 0x58, 0x78, 0x78, 0x78, 0x38, 0x18, 0x38, 0x3c, 0x3c, 
    0xfc, 0x1c, 0x18, 0xf8, 0xf8, 0xfc, 0x1c, 0xfc, 0x1c, 0x9c, 0x1c, 0x1c, 0xfc, 0xd8,  };
  uint8_t _char[8], p, i;
  for(p=0; p<80; p++){
    for(i=0;i<7;i++) {
      _char[i] = data[7*p+i];
    }
    lcd.createChar(0, _char);
    lcd.setCursor(p%20,floor(p/20));
    lcd.print((char)0);
    delay(100);
  }
  /*int chars = 80,  p = 0;
  byte cols = 20, rows=4, n=0, i=0;
  uint8_t _char[8];
  for(p=0;p<chars;){
    for(n=0;n<8;n++){
      for(i=0;i<7;i++){
        _char[i] = data[8*p+i];
      }
      p++;
      lcd.createChar(n, _char);
    }
    lcd.setCursor((p-8)%cols,floor((p-8)/cols));
    for(n=0;n<8;n++){
      lcd.print((char)n);
    }
  }*/
  return;
}



Weitere Artikel

© Veit Götz 2012 - 2024
Impressum
Datenschutz
Statistiken
Spenden