LCD ansteuern!!

OP #767934
Lesenswert?

Hi.... ich versuche grade mein 2X16zeichen display an zu steuern das mit 
diesem HD44780 gesteuert wird .... nur leider geht es absolut nich .... 
aber ich kann mir nich erklären woran es liegt.

vielleicht weiss ja einer von euch ob da was falsch is... wär cool...

MFG


sfr DAT = 0x90;      // Port P1
sbit RS=P3^2;
sbit RW=P3^3;
sbit EN=P3^4;
void main(void)
  {
  EN=0;
  RS=0;
  RW=0;
  wait(100);
  put_steuer(0x0038);         //Funktion Set:8bit mehrzeilig 7X5**
  wait(100);      // min 1,64ms
  put_steuer(0x000D);         //Display On/Off Control: Display an, 
Cursor an, Zeichen bei Cursor blinkt.
  wait(100);      // min 1,64ms
  put_steuer(0x0001);         //Clear Display
  wait(100);      // min 40µs
  put_steuer(0x0006);        //Entry Mode:inkrement, Cursor bewegen
  wait(100);      // min 40µs

    putlcd('0');


  getchar();
  }
//---------------------------------------------------------------------- 
-----------------
void put_steuer(unsigned int steuer2)
  {
  RS=(steuer2&0x0200)>>9;
  RW=(steuer2&0x0100)>>8;
  DAT=steuer2;
  EN=1;
  EN=0;
  wait(100);    // 1ms
  }
//---------------------------------------------------------------------- 
-----------------
void putlcd(char ch)
  {
  unsigned long steuer3=0x0200;

  put_steuer(ch|steuer3);
  if(position%16 != 0)
    {
    position++;
    return;
    }
  if(position == 16)
     put_steuer(0x0080|0x40);  // Cursor auf Zeilenanfang 2. Zeile
  if(position == 32)
     put_steuer(0x0080|0x00);  // Cursor auf Zeilenanfang 1. Zeile
  position++;
  }

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