;TEST TO 12232-6 (C12232-1) ;CONTROLLER: SED1520 ;SIZE: 122 X 32 DOTS ;DRAW: WHY ;DATE: 1999.4.17 ;*************************************************************** ;RST REG P3.0 DEFINE LCM RESET PIN ;E1 REG P3.1 DEFINE LCM CHIP 1 SELECT PIN ;E2 REG P3.2 DEFINE LCM CHIP 2 SELECT PIN ;R/W REG P3.3 DEFINE LCM READ/WRITE PIN ;A0 REG P3.4 DEFINE LCM DATA/INSTRUCTION PIN ;D0_D7 REG P1.0_P1.7 DEFINE LCM DATA BUS PIN ORG 0000H INIT: SETB P3.0 ;SET RST = H CLR 20H ;ENABLE CHIP 1 INIT1: MOV A,#0A9H ;SELECT 1/32 DUTY LCALL PRS0 MOV A,#0A0H ;SELECT ADC = CW LCALL PRS0 MOV A,#0A4H ;STATIS DRIVE OFF LCALL PRS0 MOV A,#0EEH ;SET READ-MODIFY-WRITE OFF LCALL PRS0 MOV A,#0C0H ;DISPLAY START LINE LCALL PRS0 MOV A,#0AFH ;DISPLAY ON LCALL PRS0 JB 20H,START SETB 20H ;ENABLE CHIP 2 JMP INIT1 START: LCALL CLEAR ;START TO TEST LCALL TEST LCALL TESTA LCALL BOX LCALL KEY JMP START CLEAR: CLR 20H ;CLEAR DISPLAY RAM CLEAR3: MOV R6,#0B8H CLEAR0: MOV A,R6 LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R7,#50H MOV A,#00H CLEAR1: LCALL PRS1 DJNZ R7,CLEAR1 INC R6 CJNE R6,#0BCH,CLEAR0 JB 20H,CLEAR2 SETB 20H JMP CLEAR3 CLEAR2: RET TEST: MOV DPTR,#TDATA ;TEST 1 MOV 43H,DPL MOV 44H,DPH MOV R4,#04H TEST7: MOV R6,#0B8H TEST5: CLR 20H MOV 45H,43H MOV 46H,44H TEST4: MOV 47H,45H MOV 48H,46H MOV A,R6 LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R5,#0BH TEST2: MOV DPL,47H MOV DPH,48H MOV R7,#06H TEST1: MOV A,#00H MOVC A,@A+DPTR LCALL PRS1 INC DPTR DJNZ R7,TEST1 DJNZ R5,TEST2 JB 20H,TEST3 SETB 20H MOV A,45H ADD A,#01H MOV 45H,A SJMP TEST4 TEST3: INC R6 CJNE R6,#0BCH,TEST5 LCALL KEY CLR C MOV A,43H ADD A,#07H MOV 43H,A JNC TEST6 INC 44H TEST6: DJNZ R4,TEST7 RET TESTA: MOV DPTR,#TDATA1 ;TEST 2 MOV 43H,DPL MOV 44H,DPH MOV R4,#03H TESTA7: MOV R6,#0B8H TESTA5: CLR 20H MOV 45H,43H MOV 46H,44H MOV A,#00H LCALL PRS1 MOV R3,#01H TESTA4: MOV 47H,45H MOV 48H,46H MOV A,R6 LCALL PRS0 MOV A,R3 LCALL PRS0 MOV R5,#0AH TESTA2: MOV DPL,47H MOV DPH,48H MOV R7,#06H TESTA1: MOV A,#00H MOVC A,@A+DPTR LCALL PRS1 INC DPTR DJNZ R7,TESTA1 DJNZ R5,TESTA2 JB 20H,TESTA3 SETB 20H MOV R3,#00H SJMP TESTA4 TESTA3: MOV A,#00H LCALL PRS1 INC R6 CJNE R6,#0BCH,TESTA5 LCALL KEY CLR C MOV A,43H ADD A,#06H MOV 43H,A JNC TESTA6 INC 44H TESTA6: DJNZ R4,TESTA7 RET BOX: CLR 20H ;TEST 3 MOV A,#0B9H LCALL PRS0 MOV A,#00H LCALL PRS0 MOV A,#0FFH LCALL PRS1 MOV R7,#3CH BOX1: MOV A,#80H LCALL PRS1 DJNZ R7,BOX1 MOV A,#0B8H LCALL PRS0 MOV A,#00H LCALL PRS0 MOV A,#0FFH LCALL PRS1 MOV R7,#3CH BOX2: MOV A,#01H LCALL PRS1 DJNZ R7,BOX2 MOV A,#0BBH LCALL PRS0 MOV A,#00H LCALL PRS0 MOV A,#0FFH LCALL PRS1 MOV R7,#3CH BOX3: MOV A,#80H LCALL PRS1 DJNZ R7,BOX3 MOV A,#0BAH LCALL PRS0 MOV A,#00H LCALL PRS0 MOV A,#0FFH LCALL PRS1 MOV R7,#3CH BOX4: MOV A,#01H LCALL PRS1 DJNZ R7,BOX4 SETB 20H MOV A,#0B9H LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R7,#3CH BOX5: MOV A,#80H LCALL PRS1 DJNZ R7,BOX5 MOV A,#0FFH LCALL PRS1 MOV A,#0B8H LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R7,#3CH BOX6: MOV A,#01H LCALL PRS1 DJNZ R7,BOX6 MOV A,#0FFH LCALL PRS1 MOV A,#0BBH LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R7,#3CH BOX7: MOV A,#80H LCALL PRS1 DJNZ R7,BOX7 MOV A,#0FFH LCALL PRS1 MOV A,#0BAH LCALL PRS0 MOV A,#00H LCALL PRS0 MOV R7,#3CH BOX8: MOV A,#01H LCALL PRS1 DJNZ R7,BOX8 MOV A,#0FFH LCALL PRS1 RET KEY: MOV 67H,#10H ;SELECT KEY FOR TEST KEY1: LCALL DELAY DJNZ 67H,KEY1 MOV P2,#0FFH KEY2: MOV C,P2.0 JC KEY2 LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY MOV C,P2.0 JC KEY2 RET DELAY: MOV 40H,#32H ;DELAY TIME 1 DELAY1: MOV 41H,#20H DELAY2: DJNZ 41H,DELAY2 DJNZ 40H,DELAY1 RET DELAYA: MOV R2,#02H ;DELAY TIME 2 DELAYA1:LCALL DELAY DJNZ R2,DELAYA1 RET PRS0: CLR P3.4 ;SEND OUT INSTRUCTION JMP WRI1 PRS1: SETB P3.4 ;SEND OUT DATA WRI1: CLR P3.3 ;SET R/W=0 MOV P1,A JB 20H,WRI2 CLR P3.1 ;set E1= 0 SETB P3.1 ;set E1= 1 RET WRI2: CLR P3.2 ;set E2= 0 SETB P3.2 ;set E2= 1 RET TDATA: DB 055H,055H,055H,055H,055H,055H,055H DB 0AAH,0AAH,0AAH,0AAH,0AAH,0AAH,0AAH DB 0FFH,000H,0FFH,000H,0FFH,000H,0FFH DB 000H,0FFH,000H,0FFH,000H,0FFH,000H TDATA1: DB 040H,03FH,015H,015H,07FH,000H ;YE DB 024H,02AH,07FH,02AH,012H,000H ;$ DB 032H,049H,079H,041H,03EH,000H ;G END