LCD help needed

Hello EveryBody, I am working on LCD (16x2) and i have built some of my ideas about LCD programming but i am using Assembly language for my LCD, well as all things was going sweet so as every programmer is having something wrong ... (in starting) my problem specification is that i am using that LCD in 8-bit mode and i have connected my AT89C2051 (with some pull-ups)
P1 DB
P3.7 RS
P3.5 RW
P3.4 E
and i have interfaced my LCD with my MCu but my problem is that i am getting the LCD not working ... (i dont know why) .... i have interfaced my LCD but there only little bit of contrast....i mean to say that there nothing visible... even i move my 10K-ohm-POT to the ground.....

and i have done some programming, so could any one please help me .... (i am really stucked)
any help will be appritiatable.....

<code> ORG 0000H LJMP MAIN ORG 0030H RS EQU P3.7 RW EQU P3.5 EN EQU P3.4
MAIN: LCALL DELAY CLR EN MOV DPTR,#MYCOM LCALL LCD_INI MOV DPTR,#MYDATA LCALL LOOP MOV A,#0C9h LCALL COM LCALL DELAY MOV DPTR,#MYDAT2 LCALL LOOP
AGAIN: SJMP AGAIN
;========================================
COM: MOV P1,A CLR RS CLR RW SETB EN LCALL DELAY CLR EN RET
;========================================
DATAW: MOV P1,A SETB RS CLR RW SETB EN LCALL DELAY CLR EN RET
;========================================
DELAY: MOV R6,#100
HERE2: MOV R7,#250
HERE: DJNZ R7,HERE DJNZ R6,HERE2 RET
;========================================
LCD_INI: CLR A MOVC A,@A+DPTR LCALL COM LCALL DELAY JZ GO_B1 INC DPTR SJMP LCD_INI
GO_B1: RET
;========================================
LOOP: CLR A MOVC A,@A+DPTR LCALL DATAW LCALL DELAY INC DPTR JZ GO_B2 SJMP LOOP
GO_B2: RET
;========================================
MYCOM: DB 38H,0EH,06,01,84H,0
MYDATA: DB "DAREDEVIL",0
MYDAT2: DB "GUNS AND ROSES",0
;======================================== END
</code>

Asif Ali "DareDevil"

Parents
  • Hello EveryBody and specially to sir Erik who have given me courage to complete my task, well sir Erik i have finally shown the String on my LCD (HD44780 16x4) and sir i am really thank full for your critisice type talkings (because it was really very helpfull for me) and for all of the members who have contributed in my post.

    Well sir i was facing only hardware problem and it was that i was using P1.0 AND P1.1 (IN AT89C2051) with 10k pull up resistor so i was not gainig the much voltages so i have simple changed them with 1k and the matter was solved just like it was nothing...

    Warning: That changing of resistor worked for me but i have heard that we can only use pull-ups between 1k-10k but if we decrease the resistance then its most likely that our pins or even our MCu will be hurt BADLY. so do pricise changing.

    Well at the End i would like to show you my Code which actually worked. (atleast for me)

Reply
  • Hello EveryBody and specially to sir Erik who have given me courage to complete my task, well sir Erik i have finally shown the String on my LCD (HD44780 16x4) and sir i am really thank full for your critisice type talkings (because it was really very helpfull for me) and for all of the members who have contributed in my post.

    Well sir i was facing only hardware problem and it was that i was using P1.0 AND P1.1 (IN AT89C2051) with 10k pull up resistor so i was not gainig the much voltages so i have simple changed them with 1k and the matter was solved just like it was nothing...

    Warning: That changing of resistor worked for me but i have heard that we can only use pull-ups between 1k-10k but if we decrease the resistance then its most likely that our pins or even our MCu will be hurt BADLY. so do pricise changing.

    Well at the End i would like to show you my Code which actually worked. (atleast for me)

Children
More questions in this forum