für ein Projekt habe ich ein paar bytes gemacht, um eine grahische Darstellung auf einem LCD Display zu machen.
das sieht so aus bisher und funktioniert auch.
// make some custom characters for the graphic display
byte eight[8] = {
0b01110,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111
};
byte seven[8] = {
0b00000,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111
};
byte six[8] = {
0b00000,
0b00000,
0b01110,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111
};
byte five[8] = {
0b00000,
0b00000,
0b00000,
0b11111,
0b01110,
0b11111,
0b01110,
0b11111
};
byte four[8] = {
0b00000,
0b00000,
0b00000,
0b00000,
0b01110,
0b11111,
0b01110,
0b11111
};
byte three[8] = {
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b11111,
0b01110,
0b11111
};
byte two[8] = {
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b01110,
0b11111
};
byte one[8] = {
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000,
0b11111
};
void setup()
{
pinMode (Ledpin, OUTPUT);
pinMode (A1, INPUT);
analogWrite (brightnessPWM,100); // brightness at startup
lcd.begin(20, 4);
Serial.begin(9600); //necessary only for debug
dht.begin();
bmp.begin();
for (int i=0;i<=22;){messwert[i]=0;i++;} // Fill the array with zeros
lcd.createChar(0, one); // create a new character
lcd.createChar(1, two); // create a new character
lcd.createChar(2, three); // create a new character
lcd.createChar(3, four); // create a new character
lcd.createChar(4, five); // create a new character
lcd.createChar(5, six); // create a new character
lcd.createChar(6, seven); // create a new character
lcd.createChar(7, eight); // create a new character
Jetzt habe ich 8 characters, soweit so gut.
Ich hätte gern ein paar mehr, aber das gibt der Speicher des Diplays nicht her.
Wenn man sich das anschaut, dann sind die characters sich ja sehr ähnlich, Balken steigen einfach von unten nach oben. Es ist fachlich falsch, aber ich nenne hier mal die 5 Zeichen einer zeile nibbel.
Jetzt kam mir folgende Idee:
Gibt es eine Möglichkeit, nur den character 8, also alles voller Balken( nibbel), zu kreiren, und danach dem Arduino zu sagen, das er von diesem character jetzt nur den untersten nibbel, und die zwei untersten, oder drei oder oder oder an "diese" Stelle darstellen soll?
Kann man den character zum Zwecke der Anzeige in Teile zerlegen?
Der Sinn soll sein, mir Platz für ein paar weitere benötigte characters zu geben.