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

📄 uart.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.dwpsn	"UART.c",123,1
        LDR       A1, CON7              ; |123| 
        LDR       V9, [SP, #0]          ; |123| 
        LDR       V9, [A1, +V9, LSL #2] ; |123| 
        ADD       V9, V9, #8            ; |123| 
        LDRB      A1, [V9, #0]          ; |123| 
        ORR       A1, A1, #16           ; |123| 
        STRB      A1, [V9, #0]          ; |123| 
	.dwpsn	"UART.c",124,1
        LDR       A1, CON7              ; |124| 
        LDR       V9, [SP, #0]          ; |124| 
        LDR       V9, [A1, +V9, LSL #2] ; |124| 
        ADD       V9, V9, #12           ; |124| 
        LDRB      A1, [V9, #0]          ; |124| 
        BIC       A1, A1, #128          ; |124| 
        STRB      A1, [V9, #0]          ; |124| 
	.dwpsn	"UART.c",125,1
        LDR       A1, CON7              ; |125| 
        LDR       V9, [SP, #0]          ; |125| 
        LDR       V9, [A1, +V9, LSL #2] ; |125| 
        MOV       A1, #0                ; |125| 
        STRB      A1, [V9, #4]          ; |125| 
	.dwpsn	"UART.c",127,1
        LDR       A1, CON7              ; |127| 
        LDR       V9, [SP, #0]          ; |127| 
        LDR       V9, [A1, +V9, LSL #2] ; |127| 
        MOV       A1, #0                ; |127| 
        STRB      A1, [V9, #16]         ; |127| 
	.dwpsn	"UART.c",128,1
        LDR       A1, CON7              ; |128| 
        LDR       V9, [SP, #0]          ; |128| 
        LDR       V9, [A1, +V9, LSL #2] ; |128| 
        ADD       V9, V9, #12           ; |128| 
        LDRB      A1, [V9, #0]          ; |128| 
        BIC       A1, A1, #64           ; |128| 
        STRB      A1, [V9, #0]          ; |128| 
	.dwpsn	"UART.c",129,1
        LDR       A1, CON7              ; |129| 
        LDR       V9, [SP, #0]          ; |129| 
        LDR       V9, [A1, +V9, LSL #2] ; |129| 
        ADD       V9, V9, #32           ; |129| 
        LDRB      A1, [V9, #0]          ; |129| 
        ORR       A1, A1, #7            ; |129| 
        STRB      A1, [V9, #0]          ; |129| 
	.dwpsn	"UART.c",131,1
        MOV       A2, #8                ; |131| 
        LDR       A1, [SP, #0]          ; |131| 
        BL        _UART_CharLenConfigure ; |131| 
        ; |131| 
	.dwpsn	"UART.c",132,1
        MOV       A2, #1                ; |132| 
        LDR       A1, [SP, #0]          ; |132| 
        BL        _UART_StopBitConfigure ; |132| 
        ; |132| 
	.dwpsn	"UART.c",133,1
        MOV       A2, #0                ; |133| 
        LDR       A1, [SP, #0]          ; |133| 
        BL        _UART_ParityConfigure ; |133| 
        ; |133| 
	.dwpsn	"UART.c",134,1
        MOV       A2, #15               ; |134| 
        MOV       A3, #0                ; |134| 
        LDR       A1, [SP, #0]          ; |134| 
        BL        _UART_BaudRateConfigure ; |134| 
        ; |134| 
	.dwpsn	"UART.c",135,1
        MOV       A2, #0                ; |135| 
        LDR       A1, [SP, #0]          ; |135| 
        BL        _UART_FIFOConfigure   ; |135| 
        ; |135| 
	.dwpsn	"UART.c",136,1
        MOV       A2, #0                ; |136| 
        LDR       A1, [SP, #0]          ; |136| 
        BL        _UART_DMAConfigure    ; |136| 
        ; |136| 
	.dwpsn	"UART.c",137,1
        MOV       A2, #2                ; |137| 
        LDR       A1, [SP, #0]          ; |137| 
        BL        _UART_FlowCtrlConfigure ; |137| 
        ; |137| 
	.dwpsn	"UART.c",138,1
	.dwcfa	0x0e, 8
        LDMFD     SP!, {A4, PC}
	.dwattr DW$26, DW_AT_end_file("UART.c")
	.dwattr DW$26, DW_AT_end_line(0x8a)
	.dwattr DW$26, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$26

	.sect	".text"
	.align	4
	.clink
	.armfunc _UART_CharLenConfigure
	.state32
	.global	_UART_CharLenConfigure

DW$29	.dwtag  DW_TAG_subprogram, DW_AT_name("UART_CharLenConfigure"), DW_AT_symbol_name("_UART_CharLenConfigure")
	.dwattr DW$29, DW_AT_low_pc(_UART_CharLenConfigure)
	.dwattr DW$29, DW_AT_high_pc(0x00)
	.dwattr DW$29, DW_AT_begin_file("UART.c")
	.dwattr DW$29, DW_AT_begin_line(0x8f)
	.dwattr DW$29, DW_AT_begin_column(0x06)
	.dwpsn	"UART.c",144,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: UART_CharLenConfigure                                      *
;*                                                                           *
;*   Regs Modified     : A1,V9,SP,SR                                         *
;*   Regs Used         : A1,A2,V9,SP,SR                                      *
;*   Local Frame Size  : 0 Args + 8 Auto + 0 Save = 8 byte                   *
;*****************************************************************************
_UART_CharLenConfigure:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #8
	.dwcfa	0x0e, 8
;* A1    assigned to _dev_num
DW$30	.dwtag  DW_TAG_formal_parameter, DW_AT_name("dev_num"), DW_AT_symbol_name("_dev_num")
	.dwattr DW$30, DW_AT_type(*DW$T$10)
	.dwattr DW$30, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _char_len
DW$31	.dwtag  DW_TAG_formal_parameter, DW_AT_name("char_len"), DW_AT_symbol_name("_char_len")
	.dwattr DW$31, DW_AT_type(*DW$T$10)
	.dwattr DW$31, DW_AT_location[DW_OP_reg1]
DW$32	.dwtag  DW_TAG_variable, DW_AT_name("dev_num"), DW_AT_symbol_name("_dev_num")
	.dwattr DW$32, DW_AT_type(*DW$T$10)
	.dwattr DW$32, DW_AT_location[DW_OP_breg13 0]
DW$33	.dwtag  DW_TAG_variable, DW_AT_name("char_len"), DW_AT_symbol_name("_char_len")
	.dwattr DW$33, DW_AT_type(*DW$T$10)
	.dwattr DW$33, DW_AT_location[DW_OP_breg13 4]
        STR       A2, [SP, #4]          ; |144| 
        STR       A1, [SP, #0]          ; |144| 
	.dwpsn	"UART.c",145,1
        B         L20                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L16:    
	.dwpsn	"UART.c",150,5
        LDR       V9, [SP, #0]          ; |150| 
        LDR       A1, CON7              ; |150| 
        LDR       V9, [A1, +V9, LSL #2] ; |150| 
        ADD       V9, V9, #12           ; |150| 
        LDRB      A1, [V9, #0]          ; |150| 
        ORR       A1, A1, #1            ; |150| 
        STRB      A1, [V9, #0]          ; |150| 
	.dwpsn	"UART.c",151,10
        B         L21                   ; |151| 
        ; |151| 
;* --------------------------------------------------------------------------*
L17:    
	.dwpsn	"UART.c",153,5
        LDR       V9, [SP, #0]          ; |153| 
        LDR       A1, CON7              ; |153| 
        LDR       V9, [A1, +V9, LSL #2] ; |153| 
        ADD       V9, V9, #12           ; |153| 
        LDRB      A1, [V9, #0]          ; |153| 
        ORR       A1, A1, #2            ; |153| 
        STRB      A1, [V9, #0]          ; |153| 
	.dwpsn	"UART.c",154,10
        B         L21                   ; |154| 
        ; |154| 
;* --------------------------------------------------------------------------*
L18:    
	.dwpsn	"UART.c",156,5
        LDR       V9, [SP, #0]          ; |156| 
        LDR       A1, CON7              ; |156| 
        LDR       V9, [A1, +V9, LSL #2] ; |156| 
        ADD       V9, V9, #12           ; |156| 
        LDRB      A1, [V9, #0]          ; |156| 
        ORR       A1, A1, #3            ; |156| 
        STRB      A1, [V9, #0]          ; |156| 
	.dwpsn	"UART.c",157,10
        B         L21                   ; |157| 
        ; |157| 
;* --------------------------------------------------------------------------*
L19:    
	.dwpsn	"UART.c",159,5
        LDR       V9, [SP, #0]          ; |159| 
        LDR       A1, CON7              ; |159| 
        LDR       V9, [A1, +V9, LSL #2] ; |159| 
        ADD       V9, V9, #12           ; |159| 
        LDRB      A1, [V9, #0]          ; |159| 
        ORR       A1, A1, #3            ; |159| 
        STRB      A1, [V9, #0]          ; |159| 
	.dwpsn	"UART.c",160,10
        B         L21                   ; |160| 
        ; |160| 
;* --------------------------------------------------------------------------*
L20:    
	.dwpsn	"UART.c",145,1
        LDR       V9, [SP, #4]          ; |145| 
        SUBS      V9, V9, #5            ; |145| 
        BEQ       L21                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
        SUBS      V9, V9, #1            ; |145| 
        BEQ       L16                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
        SUBS      V9, V9, #1            ; |145| 
        BEQ       L17                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
        SUBS      V9, V9, #1            ; |145| 
        BEQ       L18                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
        B         L19                   ; |145| 
        ; |145| 
;* --------------------------------------------------------------------------*
L21:    
	.dwpsn	"UART.c",162,1
        ADD       SP, SP, #8
	.dwcfa	0x0e, 0
        BX        LR
	.dwattr DW$29, DW_AT_end_file("UART.c")
	.dwattr DW$29, DW_AT_end_line(0xa2)
	.dwattr DW$29, DW_AT_end_column(0x01)
	.dwendentry
	.dwendtag DW$29

	.sect	".text"
	.align	4
	.clink
	.armfunc _UART_StopBitConfigure
	.state32
	.global	_UART_StopBitConfigure

DW$34	.dwtag  DW_TAG_subprogram, DW_AT_name("UART_StopBitConfigure"), DW_AT_symbol_name("_UART_StopBitConfigure")
	.dwattr DW$34, DW_AT_low_pc(_UART_StopBitConfigure)
	.dwattr DW$34, DW_AT_high_pc(0x00)
	.dwattr DW$34, DW_AT_begin_file("UART.c")
	.dwattr DW$34, DW_AT_begin_line(0xa7)
	.dwattr DW$34, DW_AT_begin_column(0x06)
	.dwpsn	"UART.c",168,1

	.dwfde DW$CIE

;*****************************************************************************
;* FUNCTION NAME: UART_StopBitConfigure                                      *
;*                                                                           *
;*   Regs Modified     : A1,V9,SP,SR                                         *
;*   Regs Used         : A1,A2,V9,SP,SR                                      *
;*   Local Frame Size  : 0 Args + 8 Auto + 0 Save = 8 byte                   *
;*****************************************************************************
_UART_StopBitConfigure:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        SUB       SP, SP, #8
	.dwcfa	0x0e, 8
;* A1    assigned to _dev_num
DW$35	.dwtag  DW_TAG_formal_parameter, DW_AT_name("dev_num"), DW_AT_symbol_name("_dev_num")
	.dwattr DW$35, DW_AT_type(*DW$T$10)
	.dwattr DW$35, DW_AT_location[DW_OP_reg0]
;* A2    assigned to _stop_bit
DW$36	.dwtag  DW_TAG_formal_parameter, DW_AT_name("stop_bit"), DW_AT_symbol_name("_stop_bit")
	.dwattr DW$36, DW_AT_type(*DW$T$10)
	.dwattr DW$36, DW_AT_location[DW_OP_reg1]
DW$37	.dwtag  DW_TAG_variable, DW_AT_name("dev_num"), DW_AT_symbol_name("_dev_num")
	.dwattr DW$37, DW_AT_type(*DW$T$10)
	.dwattr DW$37, DW_AT_location[DW_OP_breg13 0]
DW$38	.dwtag  DW_TAG_variable, DW_AT_name("stop_bit"), DW_AT_symbol_name("_stop_bit")
	.dwattr DW$38, DW_AT_type(*DW$T$10)
	.dwattr DW$38, DW_AT_location[DW_OP_breg13 4]
        STR       A2, [SP, #4]          ; |168| 
        STR       A1, [SP, #0]          ; |168| 
	.dwpsn	"UART.c",169,1
        B         L23                   ; |169| 
        ; |169| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L22:    
	.dwpsn	"UART.c",174,6
        LDR       V9, [SP, #0]          ; |174| 
        LDR       A1, CON7              ; |174| 
        LDR       V9, [A1, +V9, LSL #2] ; |174| 
        ADD       V9, V9, #12           ; |174| 
        LDRB      A1, [V9, #0]          ; |174| 
        ORR       A1, A1, #4            ; |174| 
        STRB      A1, [V9, #0]          ; |174| 
	.dwpsn	"UART.c",175,10
        B         L24                   ; |175| 
        ; |175| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L23:    
	.dwpsn	"UART.c",169,1
        LDR       V9, [SP, #4]          ; |169| 
        SUBS      V9, V9, #1            ; |169| 
        BEQ       L24                   ; |169| 
        ; |169| 
;* --------------------------------------------------------------------------*
        SUBS      V9, V9, #1            ; |169| 
        BEQ       L22                   ; |169| 
        ; |169| 
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L24:    
	.dwpsn	"UART.c",179,1
        ADD       SP, SP, #8

⌨️ 快捷键说明

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