HD44780 Bits steuern

Gast #5408254
Lesenswert?

Hallo,

ich habe mal eine Frage zum HD44780.

Ich habe eine fertige Hardware, Bits des HD44780 sind alle zwar an einem 
Port, aber kreuz und quer.

static void lcd_out( uint8_t data )
{
  LCD_PORT &= ~((1<<LCD_DB4)|(1<<LCD_DB5)|(1<<LCD_DB6)|(1<<LCD_DB7)); 
//Maske löschen

  if (data & (1<<0))  LCD_PORT |= (1<<LCD_DB4);
  if (data & (1<<1))  LCD_PORT |= (1<<LCD_DB5);
  if (data & (1<<2))  LCD_PORT |= (1<<LCD_DB6);
  if (data & (1<<3))  LCD_PORT |= (1<<LCD_DB7);

    lcd_enable();
}



Das ist meine lcd_out. Die Grundlib ist hier aus dem Forum. Kann man das 
so machen? Oder ist das zu langsam das in mehreren Takten zu setzen? 
Muss das in einem Takt gesetzt werden?

Ich bekomme nämlich aktuell gerade nur quatsch am Display.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren