Zum Inhalt springen

Flüssigkristallanzeige

Zu Zen-Modus wechseln

Das Liquid Crystal Display besteht aus 16 Zeichen in einer Reihe und 2 Zeilen insgesamt. Es unterstützt die gesamten lateinischen, chinesischen und weiter Zeichensätze plus einige Emoji.

Für die Verwendung des Display empfiehlt sich lcd.c und lcd.h.

Aufbau eines LCDs am ATmega 328p Grid eines LCDs

Das LCD hat einige Möglichkeiten, Zeichen zu verändern, zu löschen und hinzuzufügen.

Man kann einzelne Zeichen mit lcd_putc('s') aufs Display schreiben oder einen ganzen String:

lcd_puts("trueberryless");

Um alle Zeichen auf dem Display wieder zu löschen:

lcd_clrscr();

Wenn man alle Zeichen um eins nach links bewegen möchte, kann man das machen:

lcd_command(LCD_MOVE_DISP_LEFT);

Dies ist äußerst hilfreich, wenn ein Text übers Display laufen soll.

#define F_CPU 16000000
#include <avr/io.h>
#include <avr/interrupt.h>
#define __DELAY_BACKWARD_COMPATIBLE__
#include <util/delay.h>
#include "lcd.h"
#include "dht.h"
int main(void)
{
char buffer[16];
int8_t temperature = 0;
int8_t humidity = 0;
lcd_init(LCD_DISP_ON);
while(1) {
if (dht_gettemperaturehumidity(&temperature, &humidity) != -1) {
sprintf(buffer, "T: %u C, H: %u", temperature, humidity);
lcd_puts(buffer);
lcd_puts("%");
}
else {
lcd_puts("Error");
}
_delay_ms(2000);
lcd_clrscr();
}
}
lcd.c lcd.h