📄 lcdsub.asm
字号:
RET
.endfunc 468,000000000H,19
.sym _LCD_CLEAR,_LCD_CLEAR,32,2,0
.globl _LCD_CLEAR
.func 469
;>>>> void LCD_CLEAR(void)
;>>>> { int i,j;
******************************************************
* FUNCTION DEF : _LCD_CLEAR
******************************************************
_LCD_CLEAR:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,3
LAR AR0,*0+,AR2
.sym _i,1,4,1,16
.sym _j,2,4,1,16
.line 3
;>>>> j=0xFFB9;
LARK AR2,2
MAR *0+
SPLK #-71,*-
.line 4
;>>>> for(i=0;i<4;i++)
LACK 0
SACL *
SSXM
LAC *
SUBK 4
BGEZ L96
MAR *+,AR1
L95:
.line 7
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 8
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 9
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 10
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 13
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 14
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 15
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 16
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 19
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 20
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 21
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 22
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 23
;>>>> j++;
MAR * ,AR2
LARK AR2,2
MAR *0+
LAC *
ADDK 1
SACL *
.line 24
;>>>> j++;
ADDK 1
SACL *-
.line 4
LAC *
ADDK 1
SACL *
SSXM
LAC *+,AR1
SUBK 4
BLZ L95
L96:
EPI0_16:
.line 26
MAR * ,AR1
SBRK 4
LAR AR0,*-
PSHD *
RET
.endfunc 494,000000000H,3
.sym _CLEAR_BAR,_CLEAR_BAR,32,2,0
.globl _CLEAR_BAR
.func 495
;>>>> void CLEAR_BAR(void)
;>>>> { int i,j;
******************************************************
* FUNCTION DEF : _CLEAR_BAR
******************************************************
_CLEAR_BAR:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,3
LAR AR0,*0+,AR2
.sym _i,1,4,1,16
.sym _j,2,4,1,16
.line 3
;>>>> j=0xFFBF;
LARK AR2,2
MAR *0+
SPLK #-65,*-
.line 4
;>>>> for(i=0;i<1;i++,j++)
LACK 0
SACL *
SSXM
LAC *
BGZ L98
MAR *+,AR1
L97:
.line 7
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 8
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 9
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 10
;>>>> LCD_1616('A',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 13
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 14
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 15
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 16
;>>>> LCD_1616('B',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 19
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF40);
LACK -192
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 20
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF50);
LACK -176
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 21
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF60);
LACK -160
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 22
;>>>> LCD_1616('C',LCD_INITIALWORD,j,0xFF70);
LACK -144
SACL *+,AR2
LARK AR2,2
MAR *0+
LAC * ,AR1
SACL *+
LALK _LCD_INITIALWORD+0
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 4
MAR * ,AR2
LARK AR2,1
MAR *0+
LAC *
ADDK 1
SACL *+
LAC *
ADDK 1
SACL *-
SSXM
LAC *+,AR1
BLEZ L97
L98:
EPI0_17:
.line 24
MAR * ,AR1
SBRK 4
LAR AR0,*-
PSHD *
RET
.endfunc 518,000000000H,3
.sym _LCD_INITIALIZE,_LCD_INITIALIZE,32,2,0
.globl _LCD_INITIALIZE
.func 519
;>>>> void LCD_INITIALIZE(void)
******************************************************
* FUNCTION DEF : _LCD_INITIALIZE
******************************************************
_LCD_INITIALIZE:
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,1
LAR AR0,*0+
.line 2
;>>>> { LCD_1616('A',HANZIZIKU,0xFFBB,0xFF40);
LACK -192
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 3
;>>>> LCD_1616('A',HANZIZIKU+16,0xFFBB,0xFF50);
LACK -176
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+16
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 4
;>>>> LCD_1616('A',HANZIZIKU+32,0xFFBB,0xFF60);
LACK -160
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+32
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 5
;>>>> LCD_1616('A',HANZIZIKU+48,0xFFBB,0xFF70);
LACK -144
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+48
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 6
;>>>> LCD_1616('B',HANZIZIKU+64,0xFFBB,0xFF40);
LACK -192
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+64
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 7
;>>>> LCD_1616('B',HANZIZIKU+80,0xFFBB,0xFF50);
LACK -176
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+80
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 8
;>>>> LCD_1616('B',HANZIZIKU+96,0xFFBB,0xFF60);
LACK -160
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+96
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 9
;>>>> LCD_1616('B',HANZIZIKU+112,0xFFBB,0xFF70);
LACK -144
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+112
SACL *+
LACK 66
SACL *+
CALL _LCD_1616
SBRK 4
.line 10
;>>>> LCD_1616('C',HANZIZIKU+128,0xFFBB,0xFF40);
LACK -192
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+128
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 11
;>>>> LCD_1616('C',HANZIZIKU+144,0xFFBB,0xFF50);
LACK -176
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+144
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
.line 12
;>>>> LCD_1616('C',HANZIZIKU+160,0xFFBB,0xFF60);
LACK -160
SACL *+
LACK -69
SACL *+
LALK _HANZIZIKU+160
SACL *+
LACK 67
SACL *+
CALL _LCD_1616
SBRK 4
EPI0_18:
.line 13
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 531,000000000H,1
.sym _LCD_STARTMEAU,_LCD_STARTMEAU,32,2,0
.globl _LCD_STARTMEAU
.func 533
;>>>> void LCD_STARTMEAU(char MEAU_NUM)
******************************************************
* FUNCTION DEF : _LCD_STARTMEAU
******************************************************
_LCD_STARTMEAU:
LF19 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,33
LAR AR0,*0+
.sym _MEAU_NUM,-3+LF19,2,9,16
.sym _HANZI_CON,1,52,1,512,,32
.line 2
;>>>> int HANZI_CON[32];
;>>>> switch(MEAU_NUM)
;>>>> { case '1':
B L99
L100:
.line 6
;>>>> LCD_1616('A',HANZI_KAISHI,0xFFBB,0xFF40);
MAR * ,AR1
LACK -192
SACL *+
LACK -69
SACL *+
LALK _HANZI_KAISHI+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 7
;>>>> LCD_1616('A',HANZI_KAISHI+16,0xFFBB,0xFF50);
LACK -176
SACL *+
LACK -69
SACL *+
LALK _HANZI_KAISHI+16
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 8
;>>>> LCD_1616('A',HANZI_GONGZUO,0xFFBD,0xFF40);
LACK -192
SACL *+
LACK -67
SACL *+
LALK _HANZI_GONGZUO+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 9
;>>>> LCD_1616('A',HANZI_GONGZUO+16,0xFFBD,0xFF50);
LACK -176
SACL *+
LACK -67
SACL *+
LALK _HANZI_GONGZUO+16
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 10
;>>>> break;
;>>>> case '2':
B L101
L102:
.line 12
;>>>> LCD_1616CON('A',CON_HANZI(HANZI_CON,HANZI_KAISHI),0xFFBB,0xFF40); /* 改变地方*/
MAR * ,AR1
LACK -192
SACL *+
LACK -69
SACL *+
LALK _HANZI_KAISHI+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
CALL _CON_HANZI
SBRK 2
SACL *+
LACK 65
SACL *+
CALL _LCD_1616CON
SBRK 4
.line 13
;>>>> LCD_1616CON('A',CON_HANZI(HANZI_CON,HANZI_KAISHI+16),0xFFBB,0xFF50);
LACK -176
SACL *+
LACK -69
SACL *+
LALK _HANZI_KAISHI+16
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
CALL _CON_HANZI
SBRK 2
SACL *+
LACK 65
SACL *+
CALL _LCD_1616CON
SBRK 4
.line 14
;>>>> LCD_1616CON('A',CON_HANZI(HANZI_CON,HANZI_GONGZUO),0xFFBD,0xFF40);
LACK -192
SACL *+
LACK -67
SACL *+
LALK _HANZI_GONGZUO+0
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
CALL _CON_HANZI
SBRK 2
SACL *+
LACK 65
SACL *+
CALL _LCD_1616CON
SBRK 4
.line 15
;>>>> LCD_1616CON('A',CON_HANZI(HANZI_CON,HANZI_GONGZUO+16),0xFFBD,0xFF50);
LACK -176
SACL *+
LACK -67
SACL *+
LALK _HANZI_GONGZUO+16
SACL *+,AR3
LARK AR3,1
MAR *0+,AR1
SAR AR3,*+
CALL _CON_HANZI
SBRK 2
SACL *+
LACK 65
SACL *+
CALL _LCD_1616CON
SBRK 4
.line 16
;>>>> MAINMEAUFLAG=0x0001;
LACK 1
LDPK _MAINMEAUFLAG
SACL _MAINMEAUFLAG
.line 17
;>>>> break;
;>>>> case '3':
B L101
L103:
.line 19
;>>>> LCD_1616('A',HANZI_GONGZUO,0xFFBB,0xFF68);
MAR * ,AR1
LACK -152
SACL *+
LACK -69
SACL *+
LALK _HANZI_GONGZUO+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 20
;>>>> LCD_1616('A',HANZI_CANSHU,0xFFBD,0xFF68);
LACK -152
SACL *+
LACK -67
SACL *+
LALK _HANZI_CANSHU+0
SACL *+
LACK 65
SACL *+
CALL _LCD_1616
SBRK 4
.line 21
;>>>> LCD_ORDER('A',0xFFBB);
LACK -69
SACL *+
LACK 65
SACL *+
CALL _LCD_ORDER
SBRK 2
.line 22
;>>>> LCD_ORDER('A',0xFF78);
LACK -136
SACL *+
LACK 65
SACL *+
CALL _LCD_ORDER
SBRK 2
.line 23
;>>>> LCD_HANZIHALF('A',HANZI_GONGZUO+16);
LALK _HANZI_GONGZUO+16
SACL *+
LACK 65
SACL *+
CALL _LCD_HANZIHALF
SBRK 2
.line 24
;>>>> LCD_ORDER('A',0xFFBA);
LACK -70
SACL *+
LACK 65
SACL *+
CALL _LCD_ORDER
SBRK 2
.line 25
;>>>> LCD_ORDER('A',0xFF78);
LACK -136
SACL *+
LACK 65
SACL *+
CALL _LCD_ORDER
SBRK 2
.line 26
;>>>> LCD_HANZIHALF('A',HANZI_GONGZUO+24);
LALK _HANZI_GONGZUO+24
SACL *+
LACK 65
SACL *+
CALL _LCD_HANZIHALF
SBRK 2
.line 27
;>>>> L
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -