📄 elcd.asm
字号:
LDR A1, CON7 ; |72|
MOV A4, #1 ; |72|
BL _Setgroup32bit ; |72|
; |72|
.dwpsn "ELCD.c",73,3
MOV A1, #1000 ; |73|
BL _elcddelay ; |73|
; |73|
.dwpsn "ELCD.c",74,3
MOV A4, #0 ; |74|
MOV A3, #1 ; |74|
MOV A2, #0 ; |74|
LDR A1, CON7 ; |74|
BL _Setgroup32bit ; |74|
; |74|
.dwpsn "ELCD.c",75,3
LDR V9, [SP, #0] ; |75|
CMP V9, #0 ; |75|
BNE L3 ; |75|
; |75|
;* --------------------------------------------------------------------------*
.dwpsn "ELCD.c",77,4
LDR A1, CON4 ; |77|
MOV A4, #1 ; |77|
MOV A3, #1 ; |77|
MOV A2, #0 ; |77|
BL _Setgroup32bit ; |77|
; |77|
.dwpsn "ELCD.c",79,3
B L4 ; |79|
; |79|
;* --------------------------------------------------------------------------*
L3:
.dwpsn "ELCD.c",82,4
LDR A1, CON4 ; |82|
MOV A4, #1 ; |82|
MOV A3, #1 ; |82|
MOV A2, #1 ; |82|
BL _Setgroup32bit ; |82|
; |82|
;* --------------------------------------------------------------------------*
L4:
.dwpsn "ELCD.c",87,3
LDR A1, CON7 ; |87|
MOV A4, #1 ; |87|
MOV A3, #1 ; |87|
MOV A2, #2 ; |87|
BL _Setgroup32bit ; |87|
; |87|
.dwpsn "ELCD.c",89,3
MOV A4, #1 ; |89|
MOV A3, #1 ; |89|
MOV A2, #0 ; |89|
LDR A1, CON9 ; |89|
BL _Setgroup32bit ; |89|
; |89|
.dwpsn "ELCD.c",90,3
MOV A4, #1 ; |90|
MOV A3, #1 ; |90|
MOV A2, #14 ; |90|
LDR A1, CON4 ; |90|
BL _Setgroup32bit ; |90|
; |90|
.dwpsn "ELCD.c",92,3
MOV A1, #18 ; |92|
BL _SetupBusSize ; |92|
; |92|
.dwpsn "ELCD.c",94,3
LDR A1, CON15 ; |94|
MOV A4, #3 ; |94|
MOV A3, #6 ; |94|
MOV A2, #26 ; |94|
BL _Setgroup32bit ; |94|
; |94|
.dwpsn "ELCD.c",96,3
MOV A4, #0 ; |96|
MOV A3, #1 ; |96|
MOV A2, #24 ; |96|
LDR A1, CON15 ; |96|
BL _Setgroup32bit ; |96|
; |96|
.dwpsn "ELCD.c",97,3
MOV A4, #1 ; |97|
MOV A3, #1 ; |97|
MOV A2, #23 ; |97|
LDR A1, CON15 ; |97|
BL _Setgroup32bit ; |97|
; |97|
.dwpsn "ELCD.c",98,3
MOV A4, #3 ; |98|
MOV A3, #4 ; |98|
MOV A2, #0 ; |98|
LDR A1, CON15 ; |98|
BL _Setgroup32bit ; |98|
; |98|
.dwpsn "ELCD.c",99,3
MOV A4, #3 ; |99|
MOV A3, #4 ; |99|
MOV A2, #6 ; |99|
LDR A1, CON15 ; |99|
BL _Setgroup32bit ; |99|
; |99|
.dwpsn "ELCD.c",101,3
MOV A3, #20 ; |101|
MOV A2, #0 ; |101|
LDR A1, CON22 ; |101|
LDR A4, CON23 ; |101|
BL _Setgroup32bit ; |101|
; |101|
.dwpsn "ELCD.c",103,1
.dwcfa 0x0e, 8
LDMFD SP!, {A4, PC}
.dwattr DW$30, DW_AT_end_file("ELCD.c")
.dwattr DW$30, DW_AT_end_line(0x67)
.dwattr DW$30, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$30
.sect ".text"
.align 4
.clink
.armfunc _InitOptrexLcd
.state32
.global _InitOptrexLcd
DW$33 .dwtag DW_TAG_subprogram, DW_AT_name("InitOptrexLcd"), DW_AT_symbol_name("_InitOptrexLcd")
.dwattr DW$33, DW_AT_low_pc(_InitOptrexLcd)
.dwattr DW$33, DW_AT_high_pc(0x00)
.dwattr DW$33, DW_AT_begin_file("ELCD.c")
.dwattr DW$33, DW_AT_begin_line(0x6f)
.dwattr DW$33, DW_AT_begin_column(0x07)
.dwpsn "ELCD.c",112,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: InitOptrexLcd *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 0 Args + 4 Auto + 4 Save = 8 byte *
;*****************************************************************************
_InitOptrexLcd:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 8
;* A1 assigned to _elcdCs
DW$34 .dwtag DW_TAG_formal_parameter, DW_AT_name("elcdCs"), DW_AT_symbol_name("_elcdCs")
.dwattr DW$34, DW_AT_type(*DW$T$10)
.dwattr DW$34, DW_AT_location[DW_OP_reg0]
DW$35 .dwtag DW_TAG_variable, DW_AT_name("elcdCs"), DW_AT_symbol_name("_elcdCs")
.dwattr DW$35, DW_AT_type(*DW$T$10)
.dwattr DW$35, DW_AT_location[DW_OP_breg13 0]
STR A1, [SP, #0] ; |112|
.dwpsn "ELCD.c",120,3
MOV A3, #1 ; |120|
MOV A2, #0 ; |120|
LDR A1, CON4 ; |120|
MOV A4, #0 ; |120|
BL _Setgroup32bit ; |120|
; |120|
.dwpsn "ELCD.c",121,3
MOV A1, #0 ; |121|
BL _setdncstatus ; |121|
; |121|
.dwpsn "ELCD.c",122,3
MOV A1, #0 ; |122|
BL _packcommand ; |122|
; |122|
MOV A2, #0 ; |122|
BL _Writecommand ; |122|
; |122|
.dwpsn "ELCD.c",123,3
MOV A1, #1 ; |123|
BL _setdncstatus ; |123|
; |123|
.dwpsn "ELCD.c",124,3
MOV A1, #1 ; |124|
BL _packcommand ; |124|
; |124|
MOV A2, #0 ; |124|
BL _Writedata ; |124|
; |124|
.dwpsn "ELCD.c",126,3
LDR A1, CON24 ; |126|
BL _elcddelay ; |126|
; |126|
.dwpsn "ELCD.c",130,3
MOV A1, #0 ; |130|
BL _setdncstatus ; |130|
; |130|
.dwpsn "ELCD.c",131,3
MOV A1, #17 ; |131|
BL _packcommand ; |131|
; |131|
MOV A2, #0 ; |131|
BL _Writecommand ; |131|
; |131|
;* --------------------------------------------------------------------------*
.dwpsn "ELCD.c",132,3
MOV A1, #1 ; |132|
BL _setdncstatus ; |132|
; |132|
.dwpsn "ELCD.c",133,3
LDR A1, CON25 ; |133|
BL _packcommand ; |133|
; |133|
MOV A2, #0 ; |133|
BL _Writedata ; |133|
; |133|
.dwpsn "ELCD.c",135,3
MOV A1, #0 ; |135|
BL _setdncstatus ; |135|
; |135|
.dwpsn "ELCD.c",136,3
MOV A1, #20 ; |136|
BL _packcommand ; |136|
; |136|
MOV A2, #0 ; |136|
BL _Writecommand ; |136|
; |136|
.dwpsn "ELCD.c",137,3
MOV A1, #1 ; |137|
BL _setdncstatus ; |137|
; |137|
.dwpsn "ELCD.c",138,3
LDR A1, CON26 ; |138|
BL _packcommand ; |138|
; |138|
MOV A2, #0 ; |138|
BL _Writedata ; |138|
; |138|
.dwpsn "ELCD.c",141,3
MOV A1, #0 ; |141|
BL _setdncstatus ; |141|
; |141|
.dwpsn "ELCD.c",142,3
MOV A1, #16 ; |142|
BL _packcommand ; |142|
; |142|
;* --------------------------------------------------------------------------*
MOV A2, #0 ; |142|
BL _Writecommand ; |142|
; |142|
.dwpsn "ELCD.c",143,3
MOV A1, #1 ; |143|
BL _setdncstatus ; |143|
; |143|
.dwpsn "ELCD.c",144,3
MOV A1, #3040 ; |144|
BL _packcommand ; |144|
; |144|
MOV A2, #0 ; |144|
BL _Writedata ; |144|
; |144|
.dwpsn "ELCD.c",146,3
MOV A1, #0 ; |146|
BL _setdncstatus ; |146|
; |146|
.dwpsn "ELCD.c",147,3
MOV A1, #19 ; |147|
BL _packcommand ; |147|
; |147|
MOV A2, #0 ; |147|
BL _Writecommand ; |147|
; |147|
.dwpsn "ELCD.c",148,3
MOV A1, #1 ; |148|
BL _setdncstatus ; |148|
; |148|
.dwpsn "ELCD.c",149,3
MOV A1, #64 ; |149|
BL _packcommand ; |149|
; |149|
MOV A2, #0 ; |149|
BL _Writedata ; |149|
; |149|
.dwpsn "ELCD.c",151,3
LDR A1, CON27 ; |151|
BL _elcddelay ; |151|
; |151|
;* --------------------------------------------------------------------------*
.dwpsn "ELCD.c",153,3
MOV A1, #0 ; |153|
BL _setdncstatus ; |153|
; |153|
.dwpsn "ELCD.c",154,3
MOV A1, #19 ; |154|
BL _packcommand ; |154|
; |154|
MOV A2, #0 ; |154|
BL _Writecommand ; |154|
; |154|
.dwpsn "ELCD.c",155,3
MOV A1, #1 ; |155|
BL _setdncstatus ; |155|
; |155|
.dwpsn "ELCD.c",156,3
MOV A1, #96 ; |156|
BL _packcommand ; |156|
; |156|
MOV A2, #0 ; |156|
BL _Writedata ; |156|
; |156|
.dwpsn "ELCD.c",158,3
LDR A1, CON27 ; |158|
BL _elcddelay ; |158|
; |158|
.dwpsn "ELCD.c",160,3
MOV A1, #0 ; |160|
BL _setdncstatus ; |160|
; |160|
.dwpsn "ELCD.c",161,3
MOV A1, #19 ; |161|
BL _packcommand ; |161|
; |161|
MOV A2, #0 ; |161|
BL _Writecommand ; |161|
; |161|
.dwpsn "ELCD.c",162,3
MOV A1, #1 ; |162|
BL _setdncstatus ; |162|
; |162|
;* --------------------------------------------------------------------------*
.dwpsn "ELCD.c",163,3
MOV A1, #112 ; |163|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -