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

📄 gpio.asm

📁 OMAP1030 处理器的ARM 侧硬件测试代码 OMAP1030 是TI的双核处理器
💻 ASM
📖 第 1 页 / 共 5 页
字号:
;*****************************************************************************
_GPIO_Test:
;* --------------------------------------------------------------------------*
	.dwcfa	0x0e, 0
	.dwcfa	0x09, 26, 14
        STMFD     SP!, {LR}
	.dwcfa	0x0e, 4
	.dwcfa	0x80, 14, 1
        SUB       SP, SP, #20
	.dwcfa	0x0e, 24
DW$76	.dwtag  DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
	.dwattr DW$76, DW_AT_type(*DW$T$10)
	.dwattr DW$76, DW_AT_location[DW_OP_breg13 0]
DW$77	.dwtag  DW_TAG_variable, DW_AT_name("gpio_id"), DW_AT_symbol_name("_gpio_id")
	.dwattr DW$77, DW_AT_type(*DW$T$10)
	.dwattr DW$77, DW_AT_location[DW_OP_breg13 4]
DW$78	.dwtag  DW_TAG_variable, DW_AT_name("gpio_group"), DW_AT_symbol_name("_gpio_group")
	.dwattr DW$78, DW_AT_type(*DW$T$10)
	.dwattr DW$78, DW_AT_location[DW_OP_breg13 8]
DW$79	.dwtag  DW_TAG_variable, DW_AT_name("triger_mode"), DW_AT_symbol_name("_triger_mode")
	.dwattr DW$79, DW_AT_type(*DW$T$10)
	.dwattr DW$79, DW_AT_location[DW_OP_breg13 12]
DW$80	.dwtag  DW_TAG_variable, DW_AT_name("val"), DW_AT_symbol_name("_val")
	.dwattr DW$80, DW_AT_type(*DW$T$9)
	.dwattr DW$80, DW_AT_location[DW_OP_breg13 16]
	.dwpsn	"GPIO.c",273,2
        MOV       V9, #1                ; |273| 
        STRH      V9, [SP, #16]         ; |273| 
	.dwpsn	"GPIO.c",274,2
        LDRH      V9, [SP, #16]         ; |274| 
        CMP       V9, #0                ; |274| 
        BEQ       L37                   ; |274| 
        ; |274| 
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L29
;*
;*   Loop source line                : 274
;*   Loop closing brace source line  : 325
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L29:    
DW$L$_GPIO_Test$2$B:
	.dwpsn	"GPIO.c",276,3
        ADR       A2, SL1               ; |276| 
        MOV       A1, #1                ; |276| 
        BL        _UART_Printf          ; |276| 
        ; |276| 
	.dwpsn	"GPIO.c",277,5
        ADR       A2, SL2               ; |277| 
        MOV       A1, #1                ; |277| 
        BL        _UART_Printf          ; |277| 
        ; |277| 
	.dwpsn	"GPIO.c",278,5
        ADR       A2, SL1               ; |278| 
        MOV       A1, #1                ; |278| 
        BL        _UART_Printf          ; |278| 
        ; |278| 
	.dwpsn	"GPIO.c",279,6
        ADR       A2, SL3               ; |279| 
        MOV       A1, #1                ; |279| 
        BL        _UART_Printf          ; |279| 
        ; |279| 
	.dwpsn	"GPIO.c",280,3
        ADR       A2, SL4               ; |280| 
        MOV       A1, #1                ; |280| 
        BL        _UART_Printf          ; |280| 
        ; |280| 
	.dwpsn	"GPIO.c",281,3
        ADR       A2, SL5               ; |281| 
        MOV       A1, #1                ; |281| 
        BL        _UART_Printf          ; |281| 
        ; |281| 
	.dwpsn	"GPIO.c",282,3
        ADR       A2, SL6               ; |282| 
        MOV       A1, #1                ; |282| 
        BL        _UART_Printf          ; |282| 
        ; |282| 
	.dwpsn	"GPIO.c",283,3
        ADR       A2, SL7               ; |283| 
        MOV       A1, #1                ; |283| 
        BL        _UART_Printf          ; |283| 
        ; |283| 
	.dwpsn	"GPIO.c",284,3
        MOV       A1, #1                ; |284| 
        BL        _UART_GetNum          ; |284| 
        ; |284| 
        STRH      A1, [SP, #16]         ; |284| 
	.dwpsn	"GPIO.c",285,6
        MOV       A1, #1                ; |285| 
        ADR       A2, SL8               ; |285| 
        BL        _UART_Printf          ; |285| 
        ; |285| 
	.dwpsn	"GPIO.c",288,9
        B         L35                   ; |288| 
        ; |288| 
DW$L$_GPIO_Test$2$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L30:    
DW$L$_GPIO_Test$4$B:
	.dwpsn	"GPIO.c",296,5
        ADR       A2, SL9               ; |296| 
        MOV       A1, #1                ; |296| 
        BL        _UART_Printf          ; |296| 
        ; |296| 
	.dwpsn	"GPIO.c",297,5
        MOV       A1, #1                ; |297| 
        BL        _UART_GetNum          ; |297| 
        ; |297| 
        STR       A1, [SP, #4]          ; |297| 
	.dwpsn	"GPIO.c",298,5
        LDR       V9, [SP, #4]          ; |298| 
        MOV       A1, V9, ASR #4        ; |298| 
        ADD       V9, V9, A1, LSR #27   ; |298| 
        MOV       V9, V9, ASR #5        ; |298| 
        ADD       V9, V9, #1            ; |298| 
        STR       V9, [SP, #8]          ; |298| 
	.dwpsn	"GPIO.c",299,6
        LDR       A1, [SP, #8]          ; |299| 
        LDR       A2, [SP, #4]          ; |299| 
        BL        _gpio_dataout_high    ; |299| 
        ; |299| 
	.dwpsn	"GPIO.c",300,7
        B         L36                   ; |300| 
        ; |300| 
DW$L$_GPIO_Test$4$E:
;* --------------------------------------------------------------------------*
L31:    
DW$L$_GPIO_Test$5$B:
	.dwpsn	"GPIO.c",304,5
        ADR       A2, SL9               ; |304| 
        MOV       A1, #1                ; |304| 
        BL        _UART_Printf          ; |304| 
        ; |304| 
	.dwpsn	"GPIO.c",305,5
        MOV       A1, #1                ; |305| 
        BL        _UART_GetNum          ; |305| 
        ; |305| 
        STR       A1, [SP, #4]          ; |305| 
	.dwpsn	"GPIO.c",306,5
        LDR       V9, [SP, #4]          ; |306| 
        MOV       A1, V9, ASR #4        ; |306| 
        ADD       V9, V9, A1, LSR #27   ; |306| 
        MOV       V9, V9, ASR #5        ; |306| 
        ADD       V9, V9, #1            ; |306| 
        STR       V9, [SP, #8]          ; |306| 
	.dwpsn	"GPIO.c",307,5
        LDR       A1, [SP, #8]          ; |307| 
        LDR       A2, [SP, #4]          ; |307| 
        BL        _gpio_dataout_low     ; |307| 
        ; |307| 
	.dwpsn	"GPIO.c",308,5
        B         L36                   ; |308| 
        ; |308| 
DW$L$_GPIO_Test$5$E:
;* --------------------------------------------------------------------------*
L32:    
DW$L$_GPIO_Test$6$B:
	.dwpsn	"GPIO.c",313,9
        MOV       V9, #0                ; |313| 
        STR       V9, [SP, #0]          ; |313| 
	.dwpsn	"GPIO.c",313,14
        LDR       V9, [SP, #0]          ; |313| 
        CMP       V9, #100              ; |313| 
        BGE       L34                   ; |313| 
        ; |313| 
DW$L$_GPIO_Test$6$E:
;* --------------------------------------------------------------------------*
;*   BEGIN LOOP L33
;*
;*   Loop source line                : 313
;*   Known Minimum Trip Count        : 1
;*   Known Maximum Trip Count        : 4294967295
;*   Known Max Trip Count Factor     : 1
;* --------------------------------------------------------------------------*
L33:    
DW$L$_GPIO_Test$7$B:
	.dwpsn	"GPIO.c",313,21
        LDR       V9, [SP, #0]          ; |313| 
        ADD       V9, V9, #1            ; |313| 
        STR       V9, [SP, #0]          ; |313| 
	.dwpsn	"GPIO.c",313,14
        LDR       V9, [SP, #0]          ; |313| 
        CMP       V9, #100              ; |313| 
        BLT       L33                   ; |313| 
        ; |313| 
DW$L$_GPIO_Test$7$E:
;* --------------------------------------------------------------------------*
L34:    
DW$L$_GPIO_Test$8$B:
	.dwpsn	"GPIO.c",314,5
        ADR       A2, SL9               ; |314| 
        MOV       A1, #1                ; |314| 
        BL        _UART_Printf          ; |314| 
        ; |314| 
	.dwpsn	"GPIO.c",315,5
        MOV       A1, #1                ; |315| 
        BL        _UART_GetNum          ; |315| 
        ; |315| 
        STR       A1, [SP, #4]          ; |315| 
	.dwpsn	"GPIO.c",316,5
        LDR       V9, [SP, #4]          ; |316| 
        MOV       A1, V9, ASR #4        ; |316| 
        ADD       V9, V9, A1, LSR #27   ; |316| 
        MOV       V9, V9, ASR #5        ; |316| 
        ADD       V9, V9, #1            ; |316| 
        STR       V9, [SP, #8]          ; |316| 
	.dwpsn	"GPIO.c",317,5
        MOV       A1, #1                ; |317| 
        ADR       A2, SL10              ; |317| 
        BL        _UART_Printf          ; |317| 
        ; |317| 
	.dwpsn	"GPIO.c",318,5
        MOV       A1, #1                ; |318| 
        BL        _UART_GetNum          ; |318| 
        ; |318| 
        STR       A1, [SP, #12]         ; |318| 
	.dwpsn	"GPIO.c",319,5
        LDRB      A1, [SP, #4]          ; |319| 
        LDR       A2, [SP, #12]         ; |319| 
        LDR       A3, CON16             ; |319| 
        BL        _GPIO_ConfigureInterruptEnable ; |319| 
        ; |319| 
	.dwpsn	"GPIO.c",320,5
        B         L36                   ; |320| 
        ; |320| 
DW$L$_GPIO_Test$8$E:
;* --------------------------------------------------------------------------*
;* --------------------------------------------------------------------------*
L35:    
DW$L$_GPIO_Test$10$B:
	.dwpsn	"GPIO.c",288,9
        LDRH      V9, [SP, #16]         ; |288| 
        CMP       V9, #0                ; |288| 
        BEQ       L36                   ; |288| 
        ; |288| 
DW$L$_GPIO_Test$10$E:
;* --------------------------------------------------------------------------*
DW$L$_GPIO_Test$11$B:
        SUBS      V9, V9, #1            ; |288| 
        BEQ       L30                   ; |288| 
        ; |288| 
DW$L$_GPIO_Test$11$E:
;* --------------------------------------------------------------------------*
DW$L$_GPIO_Test$12$B:
        SUBS      V9, V9, #1            ; |288| 
        BEQ       L31                   ; |288| 
        ; |288| 
DW$L$_GPIO_Test$12$E:
;* --------------------------------------------------------------------------*
DW$L$_GPIO_Test$13$B:
        SUBS      V9, V9, #1            ; |288| 
        BEQ       L32                   ; |288| 
        ; |288| 
DW$L$_GPIO_Test$13$E:
;* --------------------------------------------------------------------------*
L36:    
DW$L$_GPIO_Test$14$B:
	.dwpsn	"GPIO.c",325,2
        LDRH      V9, [SP, #16]         ; |325| 
        CMP       V9, #0                ; |325| 
        BNE       L29                   ; |325| 
        ; |325| 
DW$L$_GPIO_Test$14$E:
;* --------------------------------------------------------------------------*
L37:    
	.dwpsn	"GPIO.c",326,1
        ADD       SP, SP, #20
	.dwcfa	0x0e, 4
        LDMFD     SP!, {PC}

DW$81	.dwtag  DW_TAG_loop
	.dwattr DW$81, DW_AT_name("D:\src\boston_board_test\ARM\arm_src\GPIO.asm:L29:1:1214374289")
	.dwattr DW$81, DW_AT_begin_file("GPIO.c")
	.dwattr DW$81, DW_AT_begin_line(0x112)
	.dwattr DW$81, DW_AT_end_line(0x145)
DW$82	.dwtag  DW_TAG_loop_range
	.dwattr DW$82, DW_AT_low_pc(DW$L$_GPIO_Test$2$B)
	.dwattr DW$82, DW_AT_high_pc(DW$L$_GPIO_Test$2$E)
DW$83	.dwtag  DW_TAG_loop_range
	.dwattr DW$83, DW_AT_low_pc(DW$L$_GPIO_Test$6$B)
	.dwattr DW$83, DW_AT_high_pc(DW$L$_GPIO_Test$6$E)
DW$84	.dwtag  DW_TAG_loop_range
	.dwattr DW$84, DW_AT_low_pc(DW$L$_GPIO_Test$12$B)
	.dwattr DW$84, DW_AT_high_pc(DW$L$_GPIO_Test$12$E)
DW$85	.dwtag  DW_TAG_loop_range
	.dwattr DW$85, DW_AT_low_pc(DW$L$_GPIO_Test$11$B)
	.dwattr DW$85, DW_AT_high_pc(DW$L$_GPIO_Test$11$E)
DW$86	.dwtag  DW_TAG_loop_range
	.dwattr DW$86, DW_AT_low_pc(DW$L$_GPIO_Test$4$B)
	.dwattr DW$86, DW_AT_high_pc(DW$L$_GPIO_Test$4$E)
DW$87	.dwtag  DW_TAG_loop_range
	.dwattr DW$87, DW_AT_low_pc(DW$L$_GPIO_Test$5$B)
	.dwattr DW$87, DW_AT_high_pc(DW$L$_GPIO_Test$5$E)
DW$88	.dwtag  DW_TAG_loop_range
	.dwattr DW$88, DW_AT_low_pc(DW$L$_GPIO_Test$8$B)
	.dwattr DW$88, DW_AT_high_pc(DW$L$_GPIO_Test$8$E)
DW$89	.dwtag  DW_TAG_loop_range
	.dwattr DW$89, DW_AT_low_pc(DW$L$_GPIO_Test$10$B)
	.dwattr DW$89, DW_AT_high_pc(DW$L$_GPIO_Test$10$E)
DW$90	.dwtag  DW_TAG_loop_range
	.dwattr DW$90, DW_AT_low_pc(D

⌨️ 快捷键说明

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