Forum: Mikrocontroller und Digitale Elektronik HD44780 vs [HD44870]


von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Hi,

ich habe hier vermutlich nur einen Tippfehler in der Lib von
1
/*****************************************************************************
2
 
3
 i2clcd.h - LCD over I2C library 
4
    Designed for HD44870 based LCDs with I2C expander PCF8574X
5
    on Atmels AVR MCUs
6
 
7
 Copyright (C) 2006 Nico Eichelmann and Thomas Eichelmann
8
               2014 clean up by Falk Brunner
9
...
gefunden, oder gibt es den zweiteren aus der Überschrift tatsächlich 
neben dem HD44780?

Und nun meine eigentliche Frag:

Also ich zähle in meinem blauen Display 2x16 Zeichen, wobei jedes 
Zeichen mit 5x8 Pixel dargestellt wird.

Nun wird dort aber mit:
1
    //- From now on in 4-bit-Mode
2
    lcd_command(LCD_LINE_MODE | LCD_5X7);

initialisiert.

Zur Verfügung stehen aus den Defines noch:
1
/** @name DISPLAY_CONFIGURATION */
2
/*@{*/ 
3
#define LCD_CONFIGURATION    0x20        /**< Set function */
4
  #define LCD_8BIT    LCD_CONFIGURATION | 0x10  /**<  8 bits interface */
5
  #define LCD_4BIT    LCD_CONFIGURATION | 0x00  /**<  4 bits interface */
6
  #define LCD_2LINE    LCD_CONFIGURATION | 0x08  /**<  2 line display */
7
  #define LCD_1LINE    LCD_CONFIGURATION | 0x00  /**<  1 line display */
8
  #define LCD_5X10    LCD_CONFIGURATION | 0x04  /**<  5 X 10 dots */
9
  #define LCD_5X7      LCD_CONFIGURATION | 0x00  /**<  5 X 7 dots */
10
11
#define LCD_LIGHT_OFF    0
12
#define LCD_LIGHT_ON    LCD_LIGHT
13
/*@}*/

Jedoch finde ich in keinem Datenblatt einen Verweis auf die 0x20.
(Bisher funktioniert das LCD auch augenscheinlich).

Kann es sein, dass man es noch anders/besser für 5x8 initialisieren 
muss?
(Frage weil ich Spätfolgen ohne bisherigen Grund dafür habe: 
Beitrag "TWI mehrfach Initialisierung")

Grüße David

: Bearbeitet durch User
von D a v i d K. (oekel) Benutzerseite


Lesenswert?

...ok, ich habe noch mal den Röntgenblick aufgesetz und sehe, dass 0x07 
vom CGRAM immer leer ist.

Aber warum?

von Karl M. (Gast)


Lesenswert?

Bitte sehr:

https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
Table 6 - Instructions

unter
Function Set -
Bit__: 7 6 5 4 | 3 2 1 0
Value: 0 0 1 DL| N F x x

Sets interface data length(DL), number of display lines(N), and 
character font (F).

von Teo D. (teoderix)


Lesenswert?

HD44780 ist NUR der Controller! Du musst schon im Dabla des MODULS 
nachlesen, was da an konfiguratin möglich und sinnvoll ist. 5x7 ist 
quasi Standard und in den meisten Modulen verfügbar. Der im ROM 
enthaltene Font, muss natürlich auch dazu passen.

Was deine 5x8 betrifft, ist das ein 5x7 Font plus eine 8. Reihe für den 
Cursor.

von Karl M. (Gast)


Lesenswert?

Noch als Anmerkung zu 5x10 Bit/Char kommt manchmal bei 1 zeiligen 
Displays vor.

von Teo D. (teoderix)


Lesenswert?

Karl M. schrieb:
> Noch als Anmerkung zu 5x10 Bit/Char kommt manchmal bei 1 zeiligen
> Displays vor.

Gibt auch welche mit 5x11 Pixel, die aber nur einen 5x7 Font haben. Etc. 
etc.... -> Dabla ;)

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Karl M. schrieb:
> Bitte sehr:
>
> https://www.sparkfun.com/datasheets/LCD/HD44780.pdf
> Table 6 - Instructions

Dankeschön!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.