RAM Startadresse Display

Gast #5805779
Hallo

Ich bin gerade dabei mir die lcd.h bzw lcd.c von Peter Fleury (wenn ich 
es noch richtig im Kopf habe) anzusehen.

Er definiert im lcd.h

// Set DD RAM Address --------- 0b1xxxxxxx  (Display Data RAM)
#define LCD_SET_DDADR           0x80

Wenn ich jedoch im Datenblatt des Controllers nachsehe
https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
finde ich nirgends die StartAdresse des Display Data RAM.
Kann mir da jemand behilflich sein?

Dankeschön vielmals
Gast #5805851
Nop schrieb:
> Schüler schrieb:
>
>> Wenn ich jedoch im Datenblatt des Controllers nachsehe
>> https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
>> finde ich nirgends die StartAdresse des Display Data RAM.
>
> Seite 29, ganz oben sowie Seite 30, Zeichnung 13.

Ja, die Adresse kann sein für einen 1-Zeiler: 0x00-0x4F
2-Zeiler: 00H to 27H für Zeile 1 und 40H to 67H für Zeile 2

Ich verstehe nämlich gerade nicht, warum bei ihm die Startadresse nicht 
immer 0 ist, wenn er folgende Anweisungen schreibt:

data = LCD_SET_DDADR + LCD_DDADR_LINE1 + x;

void lcd_setcursor( uint8_t x, uint8_t y )
{
    uint8_t data;

    switch (y)
    {
        case 1:    // 1. Zeile
            data = LCD_SET_DDADR + LCD_DDADR_LINE1 + x;
            break;
...

Wieso ist die Startadresse 0x80 und nicht 0x20?
Das ist doch weder in der Zeile 1 noch in der Zeile 2 gegeben.
Was übersehe ich da?
Gast #5805860
Harry L. schrieb:
> Ein gesetztes höchstes Bit signalisiert dem Controller auf dem
> Display,
> daß sich in den unteren 7 Bit die DDRAM-Adresse befindet.

Vielen Dank

Dass heisst indirekt also auch, dass zum Lesen des Busy Flags nur DB7 
gelesen werden muss.
Die restlichen Bits mit A gekennzeichnet kann ich in diesem Fall 
ignorieren.

S.30
https://www.sparkfun.com/datasheets/LCD/HD44780.pdf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.