Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

helping on writting comments

Status
Not open for further replies.

H00

Newbie level 2
Joined
May 14, 2011
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,281
Activity points
1,292
Hi everybody

I want to write comments for those projects

first one is
Interfacing a Key Board to the Display Via 8051 microcontroller
Code:
RS      REG     P1.5
RW      REG     P1.6
EN      REG     P1.7
LCMBUS  REG     P0

;==============================
        ORG     000H
	JMP	MAIN
	ORG	003H
	JMP	INT0

	ORG	100H
MAIN:	
        MOV     SP,#60
	MOV	P1,#0FFH
	MOV	IE,#10000001B
	SETB	IT0
	
        CLR     EN
	CALL    LCMINIT
        MOV     A,#10000000B	;SET DDRAM ADDRESS
        CALL    WRINS

	JMP	$

;==============================
INT0:
	CLR	EA
	CLR	C
	MOV	A,P1
	ANL	A,#0FH
	MOV	B,A
	SUBB	A,#10
	JC	NUMBER
	MOV	A,B
	ADD	A,#37H
	JMP	DISP
NUMBER:
	MOV	A,B
	ADD	A,#30H
DISP:
	CALL	WRDATA

	CALL	RDINS
	ANL	A,#01111111B
	MOV	B,A
	SUBB	A,#14H
	JNZ	TESTB
	MOV	A,#11000000B
	CALL	WRINS
TESTB:
	MOV	A,B
	SUBB	A,#54H
	JNZ	RETURN
	MOV	A,#10000000B
	CALL	WRINS
RETURN:
	SETB	EA

	RETI

;==============================
WRINS:
        CALL    CHKBSY
        CLR     RS
        CLR     RW
        SETB    EN
        MOV     LCMBUS,A
        CLR     EN
        RET

;==============================
RDINS:
	CALL	CHKBSY
	CLR	RS
	SETB	RW
	SETB	EN
	MOV	A,LCMBUS
	CLR	EN
	RET

;==============================
WRDATA:
        CALL    CHKBSY
        SETB    RS
        CLR     RW
        SETB    EN
        MOV     LCMBUS,A
        CLR     EN
        RET

;==============================
CHKBSY:
        MOV     LCMBUS,#0FFH
        CLR     RS
        SETB    RW
        SETB    EN
        MOV     C,LCMBUS.7
        CLR     EN
        JC      CHKBSY
        RET

;==============================
LCMINIT:
        MOV     A,#00110000B
        CALL    WRINS

        MOV     R6,#41		;DELAY 4.1mS
$1:
        MOV     R7,#50
        DJNZ    R7,$
        DJNZ    R6,$1

        MOV     A,#00110000B
        CALL    WRINS

        MOV     R7,#50		;DELAY 100uS
        DJNZ    R7,$

        MOV     A,#00110000B
        CALL    WRINS

        MOV     A,#00111000B	;FUNCTION SET
        CALL    WRINS
        MOV     A,#00001000B	;DISPLAY OFF
        CALL    WRINS
	MOV	A,#00000001B	;DISPLAY CLEAR
	CALL	WRINS
        MOV     A,#00000110B	;ENTRY MODE SET
        CALL    WRINS
		
	MOV	A,#00001111B	
	CALL	WRINS

        RET

;==============================
PRTSTR:
        MOV     A,#0
        MOVC    A,@A+DPTR
        CJNE    A,#'$',PRINT
        JMP     ENDPRT
PRINT:
        CALL    WRDATA
        INC     DPTR
        JMP     PRTSTR

ENDPRT:
        RET

        END


the second proj
Message display on LEDs-Matrix.

Code:
	ORG	000H

	CLR	P1.7
START:
	MOV	DPTR,#TABLE
	MOV	R0,#36		;TOTAL 36 CHAR.
NEXTC:
	MOV	R3,#20
REPEAT:
	MOV	R2,#10000000B	;COLUMN
	MOV	R1,#0
NEXT:
	MOV	A,R1		;DATA POINTER
	MOVC	A,@A+DPTR
	MOV	P2,A
	MOV	A,R2
	MOV	P0,A
	CALL	DELAY
	RR	A
	MOV	R2,A
	
	MOV	P0,#00H		;TURN OFF LED

	INC	R1
	CJNE	R1,#5,NEXT

	DJNZ	R3,REPEAT

	INC	DPTR		;NEXT CHAR.
	INC	DPTR
	INC	DPTR
	INC	DPTR
	INC	DPTR

	DJNZ	R0,NEXTC

	JMP	START

;=========================================
TABLE	DB	3EH,48H,88H,48H,3EH	;A
	DB	FEH,92H,92H,92H,6CH	;B
	DB	7CH,82H,82H,82H,44H	;C
	DB	FEH,82H,82H,44H,38H	;D
	DB	FEH,92H,92H,92H,82H	;E
	DB	FEH,90H,90H,90H,80H	;F
	DB	7CH,82H,92H,94H,5EH	;G
	DB	FEH,10H,10H,10H,FEH	;H
	DB	00H,82H,FEH,82H,00H	;I
	DB	04H,02H,82H,FCH,80H	;J
	DB	FEH,10H,28H,44H,82H	;K
	DB	FEH,02H,02H,02H,02H	;L
	DB	FEH,40H,30H,40H,FEH	;M
	DB	FEH,20H,10H,08H,FEH	;N
	DB	7CH,82H,82H,82H,7CH	;O
	DB	FEH,90H,90H,90H,60H	;P
	DB	7CH,82H,8AH,84H,7AH	;Q
	DB	FEH,90H,98H,94H,62H	;R
	DB	64H,92H,92H,92H,4CH	;S
	DB	80H,80H,FEH,80H,80H	;T
	DB	FCH,02H,02H,02H,FCH	;U
	DB	F8H,04H,02H,04H,F8H	;V
	DB	FCH,02H,1CH,02H,FCH	;W
	DB	C6H,28H,10H,28H,C6H	;X
	DB	E0H,10H,0EH,10H,E0H	;Y
	DB	86H,8AH,92H,A2H,C2H	;Z
	DB	7CH,8AH,92H,A2H,7CH	;0
	DB	00H,42H,FEH,02H,00H	;1
	DB	42H,86H,8AH,92H,62H	;2
	DB	84H,82H,A2H,D2H,8CH	;3
	DB	18H,28H,48H,FEH,08H	;4
	DB	E4H,A2H,A2H,A2H,9CH	;5
	DB	3CH,52H,92H,92H,0CH	;6
	DB	80H,8EH,90H,A0H,C0H	;7
	DB	6CH,92H,92H,92H,6CH	;8
	DB	60H,92H,92H,94H,78H	;9

;=========================================
; DELAY 5mS
;=========================================
DELAY:
	MOV	R6,#10
DL1:
	MOV	R7,#249
	DJNZ	R7,$
	DJNZ	R6,DL1
	RET

	END
 

That's a strange request. If you wrote the code, you should also be able to write the comments?
I'm guessing this is a school assignment you're too lazy to do on your own?
 

no its college assignment, also no I didn't write the program
I wrote some comments in the first one but my DR said it is wrong ...
this is what I wrote

Code:
RS      REG     P1.5  ; assign RS to P1.5
RW      REG     P1.6
EN      REG     P1.7
LCMBUS  REG     P0

;==============================
        ORG     000H	; entry address for 8051 RESET
 It shows memory location,( where the program to start)					JMP	MAIN	; MAIN starts beyond interrupt vector space
	ORG	003H	; vector address for interrupt 0
	JMP	INT0	;

	ORG	100H	; defines where MAIN starts.
MAIN:	
        MOV     SP,#60	; Move immediate data value 60 to location SP
	MOV	P1,#0FFH ;
	MOV	IE,#10000001B
	SETB	IT0	 ; negative edge trigger for interrupt 0
	
        CLR     EN	;clear EN
	CALL    LCMINIT
        MOV     A,#10000000B	;SET DDRAM ADDRESS
        CALL    WRINS

	JMP	$

;==============================
INT0:
	CLR	EA
	CLR	C
	MOV	A,P1
	ANL	A,#0FH
	MOV	B,A
	SUBB	A,#10
	JC	NUMBER
	MOV	A,B
	ADD	A,#37H
	JMP	DISP
NUMBER:
	MOV	A,B
	ADD	A,#30H
DISP:
	CALL	WRDATA

	CALL	RDINS
	ANL	A,#01111111B
	MOV	B,A
	SUBB	A,#14H
	JNZ	TESTB
	MOV	A,#11000000B
	CALL	WRINS
TESTB:
	MOV	A,B
	SUBB	A,#54H
	JNZ	RETURN
	MOV	A,#10000000B
	CALL	WRINS
RETURN:
	SETB	EA

	RETI		; return from interrupt

;==============================
WRINS:
        CALL    CHKBSY
        CLR     RS
        CLR     RW
        SETB    EN
        MOV     LCMBUS,A
        CLR     EN
        RET

;==============================
RDINS:
	CALL	CHKBSY
	CLR	RS
	SETB	RW
	SETB	EN
	MOV	A,LCMBUS
	CLR	EN
	RET

;==============================
WRDATA:
        CALL    CHKBSY
        SETB    RS
        CLR     RW
        SETB    EN
        MOV     LCMBUS,A
        CLR     EN
        RET

;==============================
CHKBSY:
        MOV     LCMBUS,#0FFH
        CLR     RS
        SETB    RW
        SETB    EN
        MOV     C,LCMBUS.7
        CLR     EN
        JC      CHKBSY
        RET

;==============================
LCMINIT:
        MOV     A,#00110000B
        CALL    WRINS

        MOV     R6,#41		;DELAY 4.1mS
$1:
        MOV     R7,#50
        DJNZ    R7,$
        DJNZ    R6,$1

        MOV     A,#00110000B
        CALL    WRINS

        MOV     R7,#50		;DELAY 100uS
        DJNZ    R7,$

        MOV     A,#00110000B
        CALL    WRINS

        MOV     A,#00111000B	;FUNCTION SET
        CALL    WRINS
        MOV     A,#00001000B	;DISPLAY OFF
        CALL    WRINS
	MOV	A,#00000001B	;DISPLAY CLEAR
	CALL	WRINS
        MOV     A,#00000110B	;ENTRY MODE SET
        CALL    WRINS
		
	MOV	A,#00001111B	
	CALL	WRINS

        RET

;==============================
PRTSTR:
        MOV     A,#0
        MOVC    A,@A+DPTR
        CJNE    A,#'$',PRINT
        JMP     ENDPRT
PRINT:
        CALL    WRDATA
        INC     DPTR
        JMP     PRTSTR

ENDPRT:
        RET

        END
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top