📄 cstartup_sam7.lst
字号:
63 0078 0231A0E3 mov r3, r3, asr #21
64 007c C33AA0E1 ldr r3, [r3, #104]
65 0080 683093E5 and r3, r3, #8
66 0084 083003E2 cmp r3, #0
67 0088 000053E3 beq .L5
68 008c F9FFFF0A .loc 1 79 0
72:Compil/srcWinARM/Cstartup_SAM7.c ****
73:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
74:Compil/srcWinARM/Cstartup_SAM7.c **** // Init PMC Step 3.
75:Compil/srcWinARM/Cstartup_SAM7.c **** // Selection of Master Clock MCK equal to (Processor Clock PCK) PLL/2=48MHz
76:Compil/srcWinARM/Cstartup_SAM7.c **** // The PMC_MCKR register must not be programmed in a single write operation
77:Compil/srcWinARM/Cstartup_SAM7.c **** // (see. Product Errata Sheet)
78:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
79:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_PMC->PMC_MCKR = AT91C_PMC_PRES_CLK_2;
69 , #-2147483648
70 0090 0231A0E3 mov r3, r3, asr #21
71 0094 C33AA0E1 mov r2, #4
72 0098 0420A0E3 str r2, [r3, #48]
73 009c 302083E5 .L7:
74 .loc 1 81 0
80:Compil/srcWinARM/Cstartup_SAM7.c **** // Wait until the master clock is established
81:Compil/srcWinARM/Cstartup_SAM7.c **** while( !(AT91C_BASE_PMC->PMC_SR & AT91C_PMC_MCKRDY) );
75 3, #-2147483648
76 00a0 0231A0E3 mov r3, r3, asr #21
77 00a4 C33AA0E1 ldr r3, [r3, #104]
78 00a8 683093E5 and r3, r3, #8
79 00ac 083003E2 cmp r3, #0
80 00b0 000053E3 beq .L7
81 00b4 F9FFFF0A .loc 1 83 0
82:Compil/srcWinARM/Cstartup_SAM7.c ****
83:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_PMC->PMC_MCKR |= AT91C_PMC_CSS_PLL_CLK;
82 , #-2147483648
83 00b8 0221A0E3 mov r2, r2, asr #21
84 00bc C22AA0E1 mov r3, #-2147483648
85 00c0 0231A0E3 mov r3, r3, asr #21
86 00c4 C33AA0E1 ldr r3, [r3, #48]
87 00c8 303093E5 orr r3, r3, #3
88 00cc 033083E3 str r3, [r2, #48]
89 00d0 303082E5 .L9:
90 .loc 1 85 0
84:Compil/srcWinARM/Cstartup_SAM7.c **** // Wait until the master clock is established
85:Compil/srcWinARM/Cstartup_SAM7.c **** while( !(AT91C_BASE_PMC->PMC_SR & AT91C_PMC_MCKRDY) );
91 #-2147483648
92 00d4 0231A0E3 mov r3, r3, asr #21
93 00d8 C33AA0E1 ldr r3, [r3, #104]
94 00dc 683093E5 and r3, r3, #8
95 00e0 083003E2 cmp r3, #0
96 00e4 000053E3 beq .L9
97 00e8 F9FFFF0A .loc 1 90 0
86:Compil/srcWinARM/Cstartup_SAM7.c ****
87:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
88:Compil/srcWinARM/Cstartup_SAM7.c **** // Disable Watchdog (write once register)
89:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
90:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_WDTC->WDTC_WDMR = AT91C_WDTC_WDDIS;
98 , #-1476395008
99 00ec 2A33A0E3 mov r3, r3, asr #21
100 00f0 C33AA0E1 mov r2, #32768
101 00f4 0229A0E3 str r2, [r3, #4]
102 00f8 042083E5 .loc 1 95 0
91:Compil/srcWinARM/Cstartup_SAM7.c ****
92:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
93:Compil/srcWinARM/Cstartup_SAM7.c **** // Init AIC: assign corresponding handler for each interrupt source
94:Compil/srcWinARM/Cstartup_SAM7.c **** ///////////////////////////////////////////////////////////////////////////
95:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_AIC->AIC_SVR[0] = (int) AT91F_Default_FIQ_handler ;
103 r3, #-2147483648
104 00fc 0231A0E3 mov r3, r3, asr #19
105 0100 C339A0E1 ldr r2, .L15
106 0104 60209FE5 str r2, [r3, #128]
107 0108 802083E5 .loc 1 96 0
96:Compil/srcWinARM/Cstartup_SAM7.c **** for (i = 1; i < 31; i++) {
108 r3, #1
109 010c 0130A0E3 strb r3, [fp, #-13]
110 0110 0D304BE5 b .L11
111 0114 0C0000EA .L12:
112 .loc 1 97 0
97:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_AIC->AIC_SVR[i] = (int) AT91F_Default_IRQ_handler ;
113 r2, #-2147483648
114 0118 0221A0E3 mov r2, r2, asr #19
115 011c C229A0E1 ldrb r0, [fp, #-13] @ zero_extendqisi2
116 0120 0D005BE5 ldr r3, .L15+4
117 0124 44309FE5 mov ip, r3
118 0128 03C0A0E1 mov r1, #128
119 012c 8010A0E3 mov r3, r0, asl #2
120 0130 0031A0E1 add r3, r3, r2
121 0134 023083E0 add r3, r3, r1
122 0138 013083E0 str ip, [r3, #0]
123 013c 00C083E5 .loc 1 96 0
124 ldrb r3, [fp, #-13]
125 0140 0D305BE5 add r3, r3, #1
126 0144 013083E2 strb r3, [fp, #-13]
127 0148 0D304BE5 .L11:
128 ldrb r3, [fp, #-13] @ zero_extendqisi2
129 014c 0D305BE5 cmp r3, #30
130 0150 1E0053E3 bls .L12
131 0154 EFFFFF9A .loc 1 99 0
98:Compil/srcWinARM/Cstartup_SAM7.c **** }
99:Compil/srcWinARM/Cstartup_SAM7.c **** AT91C_BASE_AIC->AIC_SPU = (unsigned int) AT91F_Spurious_handler;
132 48
133 0158 0231A0E3 mov r3, r3, asr #19
134 015c C339A0E1 ldr r2, .L15+8
135 0160 0C209FE5 str r2, [r3, #308]
136 0164 342183E5 .loc 1 100 0
100:Compil/srcWinARM/Cstartup_SAM7.c **** }
137 d sp, {r3, fp, sp, pc}
138 0168 08A89DE8 .L16:
139 .align 2
140 .L15:
141 .word AT91F_Default_FIQ_handler
142 016c 00000000 .word AT91F_Default_IRQ_handler
143 0170 00000000 .word AT91F_Spurious_handler
144 0174 00000000 .LFE290:
146 .section .debug_frame,"",%progbits
188 .section .debug_loc,"",%progbits
DEFINED SYMBOLS
*ABS*:00000000 Cstartup_SAM7.c
C:\DOCUME~1\user\LOCALS~1\Temp/ccUPaaaa.s:14 .text.AT91F_LowLevelInit:00000000 AT91F_LowLevelInit
C:\DOCUME~1\user\LOCALS~1\Temp/ccUPaaaa.s:20 .text.AT91F_LowLevelInit:00000000 $a
C:\DOCUME~1\user\LOCALS~1\Temp/ccUPaaaa.s:142 .text.AT91F_LowLevelInit:0000016c $d
UNDEFINED SYMBOLS
AT91F_Default_FIQ_handler
AT91F_Default_IRQ_handler
AT91F_Spurious_handler
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -