Hy wollt mal fragen ob jemand ein codebeispiele hat um ein LCD im 8 Bit Modus an ein MSP430F2132 anzubinden.
Codebeispiel habe ich leider keines, aber wenn man sich einen möglichst einfachen Beispielcode für AVR heraussucht, die Portzugriffe und Delay-Routinen an die Konventionen des MSP anpaßt und daran denkt, daß das Display wahrscheinlich mit 5V läuft, der MSP aber eher mit 3,3, dann könnte das eigentlich ganz gut gehen. Kann sein, daß man vom Busy-Flag lesen absehen sollte, wenn man keine Schutzbeschaltung hat. Aber: Findet sich denn kein LCD-Beispiel z.B. für den MSP430F149 oder ähnliche, gebräuchliche Typen? So anders ist der F2132 nicht, man könnte so ein Beispiel dann fast 1:1 übernehmen.
So erst mal danke für die Hilfe. Hab mal angefangen selber was zu schreiben aber des will irgendwie immer noch nicht. Das Display zeigt immer noch die 2 Streifen =( Kann mir vllt irgend jemand helfen Hier die Port Belegung: P1.5 RS P1.6 RW P1.7 EN P2.0 DB0 P2.1 DB1 P2.2 DB2 P2.3 DB3 P2.4 DB4 P2.5 DB5 P2.6 DB6 P2.7 DB7 und meine Code und das Datenblatt des Displays. Die Timmings stimmen soweit. wäre echt net =)
LCD_Data |= BIT5 | BIT4 | BIT3; LCD_Clock(); Delay_1ms(50); LCD_Clock(); Delay_1ms(50); LCD_Clock(); Delay_1ms(50);
erst mal danke holger habs ausprobiert tut sich leider immer noch nichts hier noch das datenblatt
Keiner ne Idee? Laut datenblatt ist Doch alles du richtig oder? Verdrahtet ist auch alles richtig hmmm
Hallo Hannes , hast du ordentlich Initialisiert dein Display habe nur Beispiel F149 und assembler lCD hängt am Port 3 und 4 habe auch lange rumprobiert . nach der LCD initialisierung sollte nichts in der anzeige zu sehen sein ansonsten Kontast poti drehen V0 hast du doch dran ? schon mal mit einen einfachen Diplay probiert ? RSEG CODE LCD call #Warte mov.b #030h,&P3OUT ;Innitialisierung LCD! call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT ;Funktion set call #Warte mov.b #038h,&P3OUT ;38h ist richtig für ganzes display call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT call #Warte ;Display an mov.b #0Ch,&P3OUT call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT call #Warte ;Display löschen mov.b #01h,&P3OUT call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT call #Warte ;Entry Mode set mov.b #06h,P3OUT ;6h ist schieben und nach rechts! call #Warte mov.b #00h,&P4OUT call #Warte mov.b #04h,&P4OUT ;Ende initialisierung ? Ret Zweite mov.b #04h,&P4OUT call #Warte2 mov.b #0A8h,&P3OUT ;Zweite zeile anfang call #Warte2 mov.b #00h,&P4OUT Ret Erste mov.b #04h,&P4OUT call #Warte2 mov.b #02h,&P3OUT ;Return home call #Warte2 mov.b #00h,&P4OUT Ret Loesche mov.b #04h,&P4OUT ;Display löschen call #Warte mov.b #01h,&P3OUT call #Warte mov.b #00h,&P4OUT ;call #Warte ;mov.b #04h,&P4OUT Ret Warte mov #500h,Warten Warte1 Dec Warten JNZ Warte1 Ret Warte2 mov #0100h,Warten ;100h test Warte3 Dec Warten JNZ Warte3 Ret
Also Kontrast hab ich schon rumprobiert aber hat nichts geholfen und Sry assembler hilft mir gar nicht weiter hab ich nahmlich keine Ahnung davon bin Grad wieder am rumprobieren aber geht leider immer noch nicht
holger schrieb: > LCD_Data |= BIT5 | BIT4 | BIT3; Was soll das geben? Das Datenblatt (was recht bescheiden ist was die Kommandos angeht), spricht davon das Function-Set als erstes übertragen werden soll. Für 8bit, 2/4-Zeilen, 5x8 also 0x38 Am besten schaust du mal in das Datenblatt: www.crystalfontz.com\controllers\ST7066U.pdf Das ist besser.
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.