Hi Mal wieder einer mit einem Display-Problem... :-) Vielleicht könnt ihr aber ja auch mir helfen. Im Anhang eine .zip Datei. Die enthält den Quellcode in C von meiner Displayroutine und einen Screenshot vom Displayinhalt nach Ablauf des Programms. Mit einer anderen Displayroutine aus der Codesammlung funktioniert alles einwandfrei, Text wird dann wie gewünscht angezeigt. Wie man sehen kann, wird bei meiner selbst programmierten noch nicht so viel richtiges angezeigt. Habt ihr da 'nen tip für mich? Beschaltung geht aus dem Quellcode hevor (siehe #define-Teil) Ciao Tobias
void lcd_kommando(char kommando) { char kommando2; kommando2=kommando; //Teil 1: kommando = kommando<<4; //Nibbles vertauschen kommando &= ~(1<<4|1<<5|1<<6|1<<7); //Bit 4-7 auf 0 setzen LCD_AUS = kommando; //oberes Nibbel Ausgeben Das wird wohl so nichts werden. Wenn du vorher das Byte nach links verschiebst, dann wandern rechts 4 0-er rein. Nach ausmaskieren der oberen 4 Bits bleibt da nur noch eine glatte 0 übrig. In der anderen Ausgabefunktion ditto. Nichts gegen die 1<<n Schreibweise. Nur hier ist sie nicht ganz angebracht und verschleiert die Dinge eher kommando &= 0x0F; oder meinetwegen kommando &= 0b0000111; sind, denke ich, wesentlich klarer. Ich habe 2 Minuten gebraucht um mich zu vergewissern, was deine ursprüngliche Version eigentlich macht.
AAHHHHH, DANKE! knutsch ;-) Viel geprüft, aber dass ich in die falsche Richtung schiebe, darauf bin ich nicht gekommen. OK, das mit der Schreibweise ist wahrscheinlich geschmackssache. Ich bevorzuge diese Schreibweise. Habe jetzt kommando = kommando<<4; gegen kommando = kommando>>4; und das gleiche nochmal bei daten gemacht und jetzt seh ich was auf dem Display :-) Ciao Tobias
> OK, das mit der Schreibweise ist wahrscheinlich geschmackssache. > Ich bevorzuge diese Schreibweise. Viel Spass damit. Du wirst dir noch viele Bugs damit einhandeln.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.