LCD-Display HD44780 kompatibles Display

Slides:



Advertisements
Ähnliche Präsentationen
Wer gwünnt? Die beliebte Fernseh-Quiz-Show mit Mäni Weber.
Advertisements

Kapitel 5 5 Rechnerorganisation
LCDisplay Anschluss des LCDisplays Aufbau der LCDisplay-Platine
KA – Rechnerarchitektur I ____________________________________________________________________________________________ ____________________________________________________________________________________________.
IO - Hardwarestruktur, allgemein
C Tutorium – Fehlerbehandlung – Knut Stolze. 2 Grundsatz Also ist auch nach jedem Funktionsaufruf auf Fehler zu prüfen!! Jeder(!) Funktionsaufruf kann.
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
Mikrocomputertechnik
Aufgabenbesprechung Programming Contest. Order 7 Bo Pat Jean Kevin Claude William Marybeth 6 Jim Ben Zoe Joey Frederick Annabelle 0 SET 1 Bo Jean Claude.
Indirekte Adressierung
Katja Bode MOdulator Der, Die, Das DEModulator.
1 Named Pipes alias FIFO Haben einen Eintrag im Dateisystem und sind somit durch Zugriffsrechte identifizierbar Ermöglichen die Kommunikation zwischen.
Multimedia - Datenformate
Rechnerarchitektur Vorlesung 2 Peter B. Ladkin
Security Manager Protocol. Physical Layer Link Layer Host Controller Interface L2CAP Attribute Protocol Attribute Profile PUIDRemote ControlProximityBatteryThermostatHeart.
Martin MauveUniversität Mannheim1 3.6 User Datagram Protocol (UDP) RFC 768. J. Postel. User Datagram Protocol unzuverlässiges Transportprotokoll.
Modulare Programmierung
RS232 Register und ihre Bits
Der Simple As Possible Computer
1 Welche Maßnahmen muss man treffen, um sowohl unter BORLAND als auch unter KEIL kompilieren zu können? Eliminieren der zusätzlichen Schlüsselwörter Programmieren.
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
3.3 Speicher Latches SR-Latch 1-bit Speicher S Q Q R Q Q
1 SR-Latch 3.3 Speicher Latches © Béat Hirsbrunner, University of Fribourg, Switzerland, 31. Oktober 2007 S Q Q R Q Q 1-bit Speicher.
School of Engineering DT2 Projekt-3: Baud Rate Generator & GPS Decoder.
Signal-Prozessoren DSV1, 2009, Hhrt, 1 Mikro-Prozessor Von Neumann-Architektur Daten und Programmcode im gleichen Speicher => Sequenzieller Zugriff auf.
Lindenmayer-Systeme: Fraktale rekursiv zeichnen
Μ Version 1.0Seite 1µVision Start Debugger Set Breakpoint µVision Debugger.
CuP - Java Vierte Vorlesung Entspricht ungefähr Kapitel 2.1 des Skriptums Montag, 14. Oktober 2002.
Programmieren in C Module und Bibliotheken Hochschule Fulda – FB AI Sommersemester Peter Klingebiel, HS Fulda, DVZ.
Prozeßkommunikation mit Anzeige- und Bediengeräten MV4-Grafik / Touch Panel InfoblattRezepturverarbeitung Zuerst sollten die Variablen “definiert“ und.
Flipflop. Überblick O Allgemein - Was ist ein Flipflop ? O Grober Aufbau O Wie funktioniert ein Flipflop? O Impulsdiagramm O Anwendung.
» Ende-Ende Durchsatztest
Sichere Technologie für die elektronische Gesundheitskarte
Directors Prof. Dr.-Ing. K.D. Müller-Glaser Prof. Dr.-Ing. J. Becker Prof. Dr. rer. nat. W. Stork Institute for Information Processing Technology.
Mikrocomputertechnik Jürgen Walter
Aufbau, Funktion und Grundzusammenhänge
RC-5-Code.
Entfernungsmessung mit Ultraschall
Lehrstuhl für Informatik 3 - D. Fey Vorlesung GRa - SS , Folie 1 Beispiel Cache-Architektur.
Über die Definition, von dem Modem, ISDN hin zum DSL
Nuklearmedizinsche Klinik und Poliklinik Klinikum rechts der Isar Technische Universität München Image reconstruction, MR-based attenuation correction,
Reguläre Ausdrücke Stephan Baldes
Mikrocomputertechnik Timer-0-1-Quickie Prof. J. Walter Stand Januar Mikrocomputertechnik Jürgen Walter „TIMER-0-1-Quickie“
November 9 th -13 th. German I – Warm-Ups Montag – Translate into German: How may I help you? Dienstag – Veteran’s Day – No Warm-Up Mittwoch – Veteran’s.
Pointer. Precompiled Header  Vorübersetzung eingebundener Dateien häufig genutzt, selten geändert  Projekttyp „Win32 Console Application“
Markus Heller, M.A. (DL8RDS)Datum: Folie Nummer 1 File: Einsatz von Mikrocontrollern in Amateurfunkprojekten Microcontroller in Selbstbauprojekten.
Anfängerpraktikum Robotik LCD für die Labortür. Vortragsübersicht ● I. Vorstellung ● II. Thema des Projekts: LCD für die Labortür ● III. Problemstellungen.
ESP Tutorium Studienassistent: Ewald Moitzi Gruppe 1.
Blowfish mit CUDA Dominik Oepen Inhalt ● Blowfish Grundlagen ● Implementierungsdetails ● Performance ● Fazit.
SAS Backstage Biljana Gigić1, Andreas Deckert2
Programmieren in C / C++ Internet der Dinge Mikrocontroller ESP8266
Somit ist klar (zumindest Modelleisenbahner):
LCDisplay Anschluss des LCDisplays Aufbau der LCDisplay-Platine
Mikrocontroller programmieren
Modulfest am International Departement in Karlsruhe
I2C beim Attiny Was ist I2C? I2C-Befehle Das PCF8574-Modul
Programmieren in C / C++ Software Serial, Bluetooth
IOStreamLibrary.
Das IT - Informationssystem
Instrumentenbrett DG1000S vorne
Softwaretechnologie für Fortgeschrittene Teil Thaller Stunde III: Bildverarbeitung III Köln 5. Dezember 2013.
Sinus aus PWM 60% Aussteuerung 0% Aussteuerung.
Vorgestern, gestern und heute
Programmieren in C Module und Bibliotheken
Wer gwünnt? Die beliebte Fernseh-Quiz-Show mit Mäni Weber.
מבוא למערכות מחשב ואסמבלי
CSL211 Computer Architecture
The Programming Language Pascal
Lagesensor Projekt INGOLSTADT.
 Präsentation transkript:

LCD-Display HD44780 kompatibles Display In verschiedenen Ausführungen erhältlich Sehr gute Dokumentation unter http://www.mikrocontroller.net/articles/HD44780 Verwendung der Bibliothek von Peter Fleury Anpassungen in lcd.h vornehmen Pinbelegung Taktfrequenz, hier XTAL Anpassungen im Makefile vornehmen Schönes Tutorial für einfache Routinen unter http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung

Pinbelegung

Schaltung zum Anschluss des LCD-Displays im 4 Bit-Mode

Funktionen aus lcd.h/lcd.c void lcd_init(uint8_t dispAttr); LCD_DISP_OFF LCD_DISP_ON LCD_DISP_ON_CURSOR LCD_DISP_ON_CURSOR_BLINK void lcd_clrscr(void); void lcd_gotoxy(uint8_t x, uint8_t y); void lcd_putc(char c); void lcd_puts(const char *s);

Funktionen aus lcd.h/lcd.c void lcd_puts_p(const char *progmem_s); void lcd_command(uint8_t cmd); void lcd_data(uint8_t data); Hinweis: In lcd.c ist das Macro _BV häufig verwendet. Es ist in <avr/sfr_defs.h> definiert. #define _BV( bit ) ( 1<<(bit) )

Die wichtigsten Anpassungen in lcd.h #define XTAL F_CPU /* Takt aus Makefile!! */ #define LCD_PORT PORTC /**< port for the LCD lines */ #define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */ #define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */ #define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ #define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ #define LCD_DATA0_PIN 0 /**< pin for 4bit data bit 0 */ #define LCD_DATA1_PIN 1 /**< pin for 4bit data bit 1 */ #define LCD_DATA2_PIN 2 /**< pin for 4bit data bit 2 */ #define LCD_DATA3_PIN 3 /**< pin for 4bit data bit 3 */ #define LCD_RS_PORT PORTD /**< port for RS line */ #define LCD_RS_PIN 5 /**< pin for RS line */ #define LCD_RW_PORT PORTD /**< port for RW line */ #define LCD_RW_PIN 6 /**< pin for RW line */ #define LCD_E_PORT PORTD /**< port for Enable line */ #define LCD_E_PIN 7 /**< pin for Enable line */

Benutzerdefinierte Zeichen http://www. mugui. de/bin/menu. php Bis zu 8 benutzerdefinierte Zeichen (5x8 pix) oder zu 4 (5X10 pix) können im Character Generator RAM (CGRAM) abgelegt werden. Sie werden mit P. Fleury dargestellt, in dem man lcd_putc(0..8) aufruft. Die Zeichen werden über lcd_command (senden der Adresse) und lcd_data an das Display übertragen und stehen dann zur Verfügung.

Definition © (zusammengestzt aus 2 Zeichen) static const unsigned char copyRightChar[] PROGMEM= { 0x07, 0x08, 0x13, 0x14, 0x14, 0x13, 0x08, 0x07, 0x00, 0x10, 0x08, 0x08, 0x08, 0x08, 0x10, 0x00 };

Übertragen / Anzeigen von © lcd_puts("Copyright: "); /* * load two userdefined characters from program memory * into LCD controller CG RAM location 0 and 1 */ /* set CG RAM start address 0 */ lcd_command(_BV(LCD_CGRAM)); for(i=0; i<16; i++) { lcd_data(pgm_read_byte_near(&copyRightChar[i])); } BV(LCD_CGRAM) entspricht 1<<LCD_CGRAM

HD44780 Befehlssatz Die LCD-Kommandos sind in lcd.h detailliert ausgeführt

Kodierung der Steuerbits

2/4 -zeiliges Display #define LCD_LINES 2 /**< number of visible lines of the display */ #define LCD_DISP_LENGTH 16 /**< visibles characters per line of the display */ #define LCD_LINE_LENGTH 0x20 /**< internal line length of the display */ #define LCD_START_LINE1 0x00 /**< DDRAM address of first char of line 1 */ #define LCD_START_LINE2 0x40 /**< DDRAM address of first char of line 2 */ #define LCD_START_LINE3 0x14 /**< DDRAM address of first char of line 3 */ #define LCD_START_LINE4 0x54 /**< DDRAM address of first char of line 4 */ #define LCD_WRAP_LINES 0 /**< 0: no wrap, 1: wrap at end of visibile line */

Alternative LCD-Bibliothek http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung