Gast
#334071
Hallo zusammen, ich möchte mit meinem PIC16F877A das LCD- Grafik Modul EA DIP 128-6 (128x64 Pixel) ansteuern. Egal was ich auch probiere, es bleiben immer alle Pixel ausgefüllt. D.h. die Hintergrundbeleuchtung und der Kontrast funktionieren, doch ich kann keine Pixel ansteuern. Mein Assembler- Programm sieht dann etwa so aus: ;******************************************************************** MAIN CALL DISPLAY_ON ; Display einschalten CALL SET_PAGE ; X- Adresse def. CALL SET_ADDRESS ; Y- Adresse def. CALL WRITE_DATA ; Write Display Data GOTO $ ;******************************************************************** DISPLAY_ON BCF RW ; Schreibzugriff BCF DI ; Kommando BSF EN ; MOVLW B'00111111' ; MOVWF PORTD ; BCF EN ; RETURN ; ;******************************************************************** SET_PAGE BCF RW ; BCF DI ; BSF EN ; MOVLW B'10111100' ; MOVWF PORTD ; BCF EN ; RETURN ; ;******************************************************************** SET_ADDRESS BCF RW ; BCF DI ; BSF EN ; MOVLW B'01100000' ; MOVWF PORTD ; BCF EN ; RETURN ; ;******************************************************************** WRITE_DATA BCF RW ; BSF DI ; Daten BSF EN ; MOVLW B'01010101' ; MOVWF PORTD ; BCF EN ; RETURN ; ;******************************************************************** RW ist Read/Write DI ist Data/Instruction Auf PortD sind die Datenleitungen 0..7 EN ist Enable Kann mir jemand sagen was hier falsch ist? Oder hat jemand ein Beispielprogramm? Besteht die Möglichkeit, dass mein LCD- Modul defekt ist? Vielen Dank für eure Bemühungen Mike