⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsm19264a.asm

📁 192*64ASM用51系列单片机 显示一幅图像或字体(修改要用取模软件)
💻 ASM
📖 第 1 页 / 共 2 页
字号:
;;----------------------------------------------------------------------------
;;       PROJECT:RSMXX LCM DRIVER TEST PROGRAM
;;        WRITER:LIU RIHUI
;;          DATE:2006-06-12
;;           MCU:AT89C51
;;----------------------------------------------------------------------------
WR bit P1.0
RS bit P1.1
E  bit P4.2
RST bit P2.7
CS1 bit P4.1
CS2 bit P2.6
CS3 bit P2.5
;DB7-------->P1.7
;DB6-------->P1.6
;DB5-------->P1.5
;;DB4-------->P1.4
;;DB3-------->P1.3
;;DB2-------->P1.2
;;DB1-------->P1.1
;;DB0-------->P1.0
;;----------------------------------------------------------------------------
TXHOME          EQU        040H
TXAREA          EQU        041H
GRHOME          EQU        042H
GRAREA          EQU        043H
OFFSET          EQU        022H
ADPSET          EQU        024H
AWRON           EQU        0B0H
AWROFF          EQU        0B2H
;;----------------------------------------------------------------------------
DATA_BUF_1      EQU        30H
DATA_BUF_2      EQU        31H
P1_BUFFER       EQU        32H
P3_BUFFER       EQU        33H
OPT1_FLAG       EQU        34H
OPT2_FLAG       EQU        35H
BUF             EQU        36H
X_ADDR          EQU        37H
Y_ADDR          EQU        38H
DELAY_CNT1      EQU        39H
DELAY_CNT2      EQU        3AH
DELAY_CNT3      EQU        3BH
IC_CNT          EQU        3CH
MOVE_ADDR       EQU        3DH
DISP_RAM        EQU        3EH
NUM_CNT_1       EQU        40H
NUM_CNT_2       EQU        41H
NUM_CNT_3       EQU        42H
NUM_CNT_4       EQU        43H
;;-----------------------------------------------------------------------
        ORG         0000H       ;;POWER_ON RESET
        LJMP        main
        ORG         0003H       ;;INT0   INTERRUPT
        RETI
        ORG         000BH       ;;TIMER0 INTERRUPT
        RETI
        ORG         0013H       ;;INT1   INTERRUPT
        RETI
        ORG         001BH       ;;TIMER1 INTERRUPT
        RETI
        ORG         0023H       ;;ES     INTERRUPT
        RETI
;;----------------------------------------------------------------------------
        ORG         0100H
;;----------------------------------------------------------------------------
main:
        MOV         SP,#044H
        MOV         R0,#030H
CLEAR_RAM_1:
        MOV         @R0,#00H
        INC         R0
        CJNE        R0,#080H,CLEAR_RAM_1
READ_OPT_PRO:
        CLR         RST
        NOP
        NOP
        NOP
        SETB        RST
        MOV         P1_BUFFER,#11111111B
        MOV         P0,P1_BUFFER
        LCALL       DELAY_PRO
        LCALL       DELAY_PRO
        ;MOV         P3_BUFFER,#11110010B
        CLR         CS1
        CLR         CS2
        CLR         CS3
        ;MOV         P2,P3_BUFFER
        MOV         P1_BUFFER,#0FFH
        MOV         P0,P1_BUFFER
;;----------------------------------------------------------------------------
;;--------------------------RSM19264A TEST PROGRAM----------------------------
;;----------------------------------------------------------------------------
RSM19264A_TEST_PRO:
        MOV         IC_CNT,#00H
        CALL        SET_IC_CS_PRO
;;DISPLAY ON
        MOV         P1_BUFFER,#00111111B
        CALL        WR_COMMAND_0108_PRO
;;DISPLAY START 00
        MOV         P1_BUFFER,#11000000B
        CALL        WR_COMMAND_0108_PRO
;;
        MOV         IC_CNT,#01H
        CALL        SET_IC_CS_PRO
;;DISPLAY ON
        MOV         P1_BUFFER,#00111111B
        CALL        WR_COMMAND_0108_PRO
;;DISPLAY START 00
        MOV         P1_BUFFER,#11000000B
        CALL        WR_COMMAND_0108_PRO
;;
        MOV         IC_CNT,#02H
        CALL        SET_IC_CS_PRO
;;DISPLAY ON
        MOV         P1_BUFFER,#00111111B
        CALL        WR_COMMAND_0108_PRO
;;DISPLAY START 00
        MOV         P1_BUFFER,#11000000B
        CALL        WR_COMMAND_0108_PRO
;;


RSM19264A_TEST_LP1:
;;DISP IC1

;;CLEAR IC1
        MOV         IC_CNT,#00H
        CALL        SET_IC_CS_PRO
        MOV         DISP_RAM,#00H
        CALL        DISP_LCM_ALL_PRO
;;CLEAR IC2
        MOV         IC_CNT,#01H
        CALL        SET_IC_CS_PRO
        MOV         DISP_RAM,#00H
        CALL        DISP_LCM_ALL_PRO
;;CLEAR IC3
        MOV         IC_CNT,#02H
        CALL        SET_IC_CS_PRO
        MOV         DISP_RAM,#00H
        CALL        DISP_LCM_ALL_PRO
;;
        CALL        DELAY_1MS_PRO
        CALL        DELAY_1MS_PRO
        CALL        DELAY_1MS_PRO
        CALL        DELAY_1MS_PRO
;;
        MOV         DPTR,#wen;#RSM19264_DATA_TAB
;;
        MOV         IC_CNT,#00H
        CALL        SET_IC_CS_PRO
        CALL        DISPLAY_64SEG_PRO
       ; MOV         IC_CNT,#01H
       ; CALL        SET_IC_CS_PRO
       ; CALL        DISPLAY_64SEG_PRO1
       ; MOV         IC_CNT,#02H
       ; CALL        SET_IC_CS_PRO
       ; CALL        DISPLAY_64SEG_PRO1
;;
        CALL        DELAY_XUS_PRO
        CALL        DELAY_XUS_PRO
        CALL        DELAY_XUS_PRO
        CALL        DELAY_XUS_PRO
;;
        JMP          $;RSM19264A_TEST_LP1
;;----------------------------------------------------------------------------
DISPLAY_64SEG_PRO:
        MOV         R1,#00H
       ;  MOV         X_ADDR,#10111010B
        MOV         Y_ADDR,#01000000B
DISPLAY_64SEG_LP1:
        MOV         R0,#00H
        MOV         X_ADDR,#10111010B
      ; MOV         Y_ADDR,#01000000B
DISPLAY_64SEG_LP2:
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        DELAY_PRO
        CALL        SET_X_ADDR_PRO
        CALL        SET_Y_ADDR_PRO
        MOV         A,#00H
        MOVC        A,@A+DPTR
        MOV         P1_BUFFER,A
        CALL        WR_DATA_0108_PRO
        INC         DPTR
        CALL        x_ADDR_INC_PRO
        INC         R0
        CJNE        R0,#2H,DISPLAY_64SEG_LP2
        CALL        y_ADDR_INC_PRO
        INC         R1
        CJNE        R1,#40h,DISPLAY_64SEG_LP1
        RET


;;----------------------------------------------------------------------------
DISP_LCM_ALL_PRO:
        MOV         R1,#00H
        MOV         Y_ADDR,#01000000B
DISP_LCM_ALL_LP1:
        MOV         R0,#00H
        MOV         X_ADDR,#10111000B
DISP_LCM_ALL_LP2:
        CALL        DELAY_1MS_PRO
        CALL        SET_X_ADDR_PRO
        CALL        SET_Y_ADDR_PRO
        MOV         P1_BUFFER,DISP_RAM
        CALL        WR_DATA_0108_PRO
        CALL        X_ADDR_INC_PRO
        INC         R0
        CJNE        R0,#08H,DISP_LCM_ALL_LP2
        CALL        Y_ADDR_INC_PRO
        INC         R1
        CJNE        R1,#40H,DISP_LCM_ALL_LP1
        RET
;;----------------------------------------------------------------------------
SET_ICCS_6120_PRO:
        ;ORL         P3_BUFFER,#00001001B
        SETB       CS2
        SETB       CS1
        MOV         R4,IC_CNT
        CJNE        R4,#00H,SET_ICCS_6120_LP2
SET_ICCS_6120_LP1:
       ; ANL         P3_BUFFER,#11111110B
        CLR         CS1
        LJMP        SET_IC_CS_LP6
SET_ICCS_6120_LP2:
       ; ANL         P3_BUFFER,#11110111B
        CLR         CS2
        LJMP        SET_IC_CS_LP6
;;----------------------------------------------------------------------------
SET_IC_CS_PRO:
        ;ANL         P3_BUFFER,#11110010B
        CLR         CS1
        CLR         CS2
        CLR         CS3
        MOV         R4,IC_CNT
        CJNE        R4,#00H,SET_IC_CS_LP1
SET_IC_CS1_PRO:
        ;ORL         P3_BUFFER,#00000001B
        SETB        CS1
        LJMP        SET_IC_CS_LP6
SET_IC_CS_LP1:
        CJNE        R4,#01H,SET_IC_CS_LP2
SET_IC_CS2_PRO:
        ;ORL         P3_BUFFER,#00001000B
        SETB        CS2
        LJMP        SET_IC_CS_LP6
SET_IC_CS_LP2:
        CJNE        R4,#02H,SET_IC_CS_LP3

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -