📄 main.lst
字号:
##############################################################################
# #
# IAR ARM ANSI C/C++ Compiler V4.30A/W32 KICKSTART 28/Jul/2006 14:53:08 #
# Copyright 1999-2005 IAR Systems. All rights reserved. #
# #
# Cpu mode = interwork #
# Endian = little #
# Stack alignment = 4 #
# Source file = E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_CA #
# N)\BasicCAN-SAM7A3\src\main.c #
# Command line = "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\src\main.c" -lC #
# "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\compil\FLASH_Debug\List\" -o #
# "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\compil\FLASH_Debug\Obj\" -z2 #
# --no_cse --no_unroll --no_inline --no_code_motion #
# --no_tbaa --no_clustering --no_scheduling --debug #
# --cpu_mode thumb --endian little --cpu ARM7TDMI #
# --stack_align 4 --interwork -e --fpu None #
# --dlib_config "D:\IAR Systems\Embedded Workbench #
# 4.0 Kickstart\arm\LIB\dl4tptinl8f.h" -I #
# "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\compil\srcIAR\" -I #
# "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\compil\..\src\" -I #
# "E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_C #
# AN)\BasicCAN-SAM7A3\compil\..\..\" -I "D:\IAR #
# Systems\Embedded Workbench 4.0 Kickstart\arm\INC\" #
# List file = E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_CA #
# N)\BasicCAN-SAM7A3\compil\FLASH_Debug\List\main.lst #
# Object file = E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_CA #
# N)\BasicCAN-SAM7A3\compil\FLASH_Debug\Obj\main.r79 #
# #
# #
##############################################################################
E:\share\Atmel\AT91SAM7A3(CAN_CAN)\AT91SAM7A3(CAN_CAN)\BasicCAN-SAM7A3\src\main.c
1 // ----------------------------------------------------------------------------
2 // ATMEL Microcontroller Software Support - ROUSSET -
3 // ----------------------------------------------------------------------------
4 // DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
5 // IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
6 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
7 // DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
8 // INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
9 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
10 // OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
11 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
12 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
13 // EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
14 // ----------------------------------------------------------------------------
15 // File Name : main.c
16 // Object : main application written in C
17 // Creation : FBr 02-Sep-2005
18 // ----------------------------------------------------------------------------
19
20 #include "main.h"
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs unsigned int AT91F_AIC_ConfigureIt(AT91PS_AIC, unsigned int, unsigned int, unsigned int, void (*)())
\ AT91F_AIC_ConfigureIt:
\ 00000000 F4B4 PUSH {R2,R4-R7}
\ 00000002 021C MOV R2,R0
\ 00000004 059C LDR R4,[SP, #+0x14]
\ 00000006 0426 MOV R6,#+0x4
\ 00000008 4E43 MUL R6,R1
\ 0000000A 9619 ADD R6,R2,R6
\ 0000000C 8036 ADD R6,#+0x80
\ 0000000E 3668 LDR R6,[R6, #+0]
\ 00000010 301C MOV R0,R6
\ 00000012 0126 MOV R6,#+0x1
\ 00000014 8E40 LSL R6,R1
\ 00000016 351C MOV R5,R6
\ 00000018 9226 MOV R6,#+0x92
\ 0000001A 7600 LSL R6,R6,#+0x1 ;; #+0x124
\ 0000001C 9551 STR R5,[R2, R6]
\ 0000001E 0426 MOV R6,#+0x4
\ 00000020 4E43 MUL R6,R1
\ 00000022 9619 ADD R6,R2,R6
\ 00000024 8036 ADD R6,#+0x80
\ 00000026 3460 STR R4,[R6, #+0]
\ 00000028 0426 MOV R6,#+0x4
\ 0000002A 4E43 MUL R6,R1
\ 0000002C 009F LDR R7,[SP, #+0]
\ 0000002E 1F43 ORR R7,R3
\ 00000030 9751 STR R7,[R2, R6]
\ 00000032 9426 MOV R6,#+0x94
\ 00000034 7600 LSL R6,R6,#+0x1 ;; #+0x128
\ 00000036 9551 STR R5,[R2, R6]
\ 00000038 01B0 ADD SP,#+0x4
\ 0000003A F0BC POP {R4-R7}
\ 0000003C 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_AIC_EnableIt(AT91PS_AIC, unsigned int)
\ AT91F_AIC_EnableIt:
\ 00000000 9022 MOV R2,#+0x90
\ 00000002 5200 LSL R2,R2,#+0x1 ;; #+0x120
\ 00000004 0123 MOV R3,#+0x1
\ 00000006 8B40 LSL R3,R1
\ 00000008 8350 STR R3,[R0, R2]
\ 0000000A 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_SetNextRx(AT91PS_PDC, char *, unsigned int)
\ AT91F_PDC_SetNextRx:
\ 00000000 0161 STR R1,[R0, #+0x10]
\ 00000002 4261 STR R2,[R0, #+0x14]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_SetNextTx(AT91PS_PDC, char *, unsigned int)
\ AT91F_PDC_SetNextTx:
\ 00000000 8161 STR R1,[R0, #+0x18]
\ 00000002 C261 STR R2,[R0, #+0x1C]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_SetRx(AT91PS_PDC, char *, unsigned int)
\ AT91F_PDC_SetRx:
\ 00000000 0160 STR R1,[R0, #+0]
\ 00000002 4260 STR R2,[R0, #+0x4]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_SetTx(AT91PS_PDC, char *, unsigned int)
\ AT91F_PDC_SetTx:
\ 00000000 8160 STR R1,[R0, #+0x8]
\ 00000002 C260 STR R2,[R0, #+0xC]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_EnableTx(AT91PS_PDC)
\ AT91F_PDC_EnableTx:
\ 00000000 8021 MOV R1,#+0x80
\ 00000002 4900 LSL R1,R1,#+0x1 ;; #+0x100
\ 00000004 0162 STR R1,[R0, #+0x20]
\ 00000006 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_EnableRx(AT91PS_PDC)
\ AT91F_PDC_EnableRx:
\ 00000000 0121 MOV R1,#+0x1
\ 00000002 0162 STR R1,[R0, #+0x20]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_DisableTx(AT91PS_PDC)
\ AT91F_PDC_DisableTx:
\ 00000000 8021 MOV R1,#+0x80
\ 00000002 8900 LSL R1,R1,#+0x2 ;; #+0x200
\ 00000004 0162 STR R1,[R0, #+0x20]
\ 00000006 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_DisableRx(AT91PS_PDC)
\ AT91F_PDC_DisableRx:
\ 00000000 0221 MOV R1,#+0x2
\ 00000002 0162 STR R1,[R0, #+0x20]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PDC_Open(AT91PS_PDC)
\ AT91F_PDC_Open:
\ 00000000 10B5 PUSH {R4,LR}
\ 00000002 041C MOV R4,R0
\ 00000004 201C MOV R0,R4
\ 00000006 ........ _BLF AT91F_PDC_DisableRx,AT91F_PDC_DisableRx??rT
\ 0000000A 201C MOV R0,R4
\ 0000000C ........ _BLF AT91F_PDC_DisableTx,AT91F_PDC_DisableTx??rT
\ 00000010 0022 MOV R2,#+0
\ 00000012 0021 MOV R1,#+0
\ 00000014 201C MOV R0,R4
\ 00000016 ........ _BLF AT91F_PDC_SetNextTx,AT91F_PDC_SetNextTx??rT
\ 0000001A 0022 MOV R2,#+0
\ 0000001C 0021 MOV R1,#+0
\ 0000001E 201C MOV R0,R4
\ 00000020 ........ _BLF AT91F_PDC_SetNextRx,AT91F_PDC_SetNextRx??rT
\ 00000024 0022 MOV R2,#+0
\ 00000026 0021 MOV R1,#+0
\ 00000028 201C MOV R0,R4
\ 0000002A ........ _BLF AT91F_PDC_SetTx,AT91F_PDC_SetTx??rT
\ 0000002E 0022 MOV R2,#+0
\ 00000030 0021 MOV R1,#+0
\ 00000032 201C MOV R0,R4
\ 00000034 ........ _BLF AT91F_PDC_SetRx,AT91F_PDC_SetRx??rT
\ 00000038 201C MOV R0,R4
\ 0000003A ........ _BLF AT91F_PDC_EnableRx,AT91F_PDC_EnableRx??rT
\ 0000003E 201C MOV R0,R4
\ 00000040 ........ _BLF AT91F_PDC_EnableTx,AT91F_PDC_EnableTx??rT
\ 00000044 10BC POP {R4}
\ 00000046 01BC POP {R0}
\ 00000048 0047 BX R0 ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_CfgPeriph(AT91PS_PIO, unsigned int, unsigned int)
\ AT91F_PIO_CfgPeriph:
\ 00000000 0167 STR R1,[R0, #+0x70]
\ 00000002 4267 STR R2,[R0, #+0x74]
\ 00000004 131C MOV R3,R2
\ 00000006 0B43 ORR R3,R1
\ 00000008 4360 STR R3,[R0, #+0x4]
\ 0000000A 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_CfgOutput(AT91PS_PIO, unsigned int)
\ AT91F_PIO_CfgOutput:
\ 00000000 0160 STR R1,[R0, #+0]
\ 00000002 0161 STR R1,[R0, #+0x10]
\ 00000004 7047 BX LR ;; return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -