📄 iis.txt
字号:
RxInt PROC
;;;562 void __irq RxInt(void)
;;;563 {
0008d0 e92d0003 STMFD sp!,{r0,r1}
;;;564 rSUBSRCPND = BIT_SUB_RXD1; //Clear pending bit (Requested)
0008d4 e3a00008 MOV r0,#8
0008d8 e3a0144a MOV r1,#0x4a000000
0008dc e5810018 STR r0,[r1,#0x18]
;;;565 rSUBSRCPND;
0008e0 e3a0044a MOV r0,#0x4a000000
0008e4 e5900018 LDR r0,[r0,#0x18]
;;;566 ClearPending(BIT_UART1);
0008e8 e3a00880 MOV r0,#0x800000
0008ec e3a0144a MOV r1,#0x4a000000
0008f0 e5810000 STR r0,[r1,#0]
0008f4 e3a00880 MOV r0,#0x800000
0008f8 e3a0144a MOV r1,#0x4a000000
0008fc e5810010 STR r0,[r1,#0x10]
000900 e3a0044a MOV r0,#0x4a000000
000904 e5900010 LDR r0,[r0,#0x10]
;;;567
;;;568 *_temp ++= RdURXH1();
000908 e59f024c LDR r0,|L1.2908|
00090c e5d01024 LDRB r1,[r0,#0x24]
000910 e59f0248 LDR r0,|L1.2912|
000914 e5900000 LDR r0,[r0,#0] ; _temp
000918 e4c01001 STRB r1,[r0],#1
00091c e59f123c LDR r1,|L1.2912|
000920 e5810000 STR r0,[r1,#0] ; _temp
;;;569 }
000924 e8bd0003 LDMFD sp!,{r0,r1}
000928 e25ef004 SUBS pc,lr,#4
ENDP
Download_Wave_File PROC
;;;203 void Download_Wave_File(void)
;;;204 {
00092c e92d4008 STMFD sp!,{r3,lr}
;;;205 unsigned int temp;
;;;206
;;;207 pISR_UART1 = (unsigned)RxInt;
000930 e59f022c LDR r0,|L1.2916|
000934 e51f11c8 LDR r1,|L1.1908|
000938 e5810f7c STR r0,[r1,#0xf7c]
;;;208
;;;209 rINTMSK = ~(BIT_UART1);
00093c e3e00880 MVN r0,#0x800000
000940 e3a0144a MOV r1,#0x4a000000
000944 e5810008 STR r0,[r1,#8]
;;;210 rINTSUBMSK = ~(BIT_SUB_RXD1);
000948 e3e00008 MVN r0,#8
00094c e3a0144a MOV r1,#0x4a000000
000950 e581001c STR r0,[r1,#0x1c]
;;;211
;;;212 //Non-cacheable area = 0x31000000 ~ 0x33feffff
;;;213 Buf = (unsigned char *)0x31000000;
000954 e3a005c4 MOV r0,#0x31000000
000958 e59f1208 LDR r1,|L1.2920|
00095c e5810000 STR r0,[r1,#0] ; Buf
;;;214 _temp = Buf;
000960 e59f0200 LDR r0,|L1.2920|
000964 e5900000 LDR r0,[r0,#0] ; Buf
000968 e59f11f0 LDR r1,|L1.2912|
00096c e5810000 STR r0,[r1,#0] ; _temp
;;;215
;;;216 Uart_Printf("\n\nDownload the PCM(no ADPCM) file by DNW serial port(With header)!!\n");
000970 e59f01f4 LDR r0,|L1.2924|
000974 ebfffffe BL Uart_Printf
;;;217 Uart_Printf("Download Start Address: 0x%x\n", Buf);
000978 e59f01e8 LDR r0,|L1.2920|
00097c e5901000 LDR r1,[r0,#0] ; Buf
000980 e28f0f7a ADR r0,|L1.2928|
000984 ebfffffe BL Uart_Printf
;;;218
;;;219 while(((unsigned int)_temp - (unsigned int)Buf) < 4)
000988 e1a00000 NOP
|L1.2444|
00098c e59f01cc LDR r0,|L1.2912|
000990 e5900000 LDR r0,[r0,#0] ; _temp
000994 e59f11cc LDR r1,|L1.2920|
000998 e5911000 LDR r1,[r1,#0] ; Buf
00099c e0400001 SUB r0,r0,r1
0009a0 e3500004 CMP r0,#4
0009a4 2a000008 BCS |L1.2508|
;;;220 {
;;;221 Led_Display(0);
0009a8 e3a00000 MOV r0,#0
0009ac ebfffffe BL Led_Display
;;;222 Delay(1500);
0009b0 e59f01d8 LDR r0,|L1.2960|
0009b4 ebfffffe BL Delay
;;;223 Led_Display(15);
0009b8 e3a0000f MOV r0,#0xf
0009bc ebfffffe BL Led_Display
;;;224 Delay(1500);
0009c0 e59f01c8 LDR r0,|L1.2960|
0009c4 ebfffffe BL Delay
;;;225 }
0009c8 eaffffef B |L1.2444|
;;;226
;;;227 size = *(Buf) | *(Buf + 1)<<8 | *(Buf + 2)<<16 | *(Buf + 3)<<24;
|L1.2508|
0009cc e59f0194 LDR r0,|L1.2920|
0009d0 e5900000 LDR r0,[r0,#0] ; Buf
0009d4 e5d00000 LDRB r0,[r0,#0]
0009d8 e59f1188 LDR r1,|L1.2920|
0009dc e5911000 LDR r1,[r1,#0] ; Buf
0009e0 e5d11001 LDRB r1,[r1,#1]
0009e4 e1800401 ORR r0,r0,r1,LSL #8
0009e8 e59f1178 LDR r1,|L1.2920|
0009ec e5911000 LDR r1,[r1,#0] ; Buf
0009f0 e5d11002 LDRB r1,[r1,#2]
0009f4 e1800801 ORR r0,r0,r1,LSL #16
0009f8 e59f1168 LDR r1,|L1.2920|
0009fc e5911000 LDR r1,[r1,#0] ; Buf
000a00 e5d11003 LDRB r1,[r1,#3]
000a04 e1800c01 ORR r0,r0,r1,LSL #24
000a08 e59f1184 LDR r1,|L1.2964|
000a0c e5810000 STR r0,[r1,#0] ; size
;;;228 Uart_Printf("\nNow, Downloading... [ File Size : %7d 0]", size);
000a10 e59f017c LDR r0,|L1.2964|
000a14 e5901000 LDR r1,[r0,#0] ; size
000a18 e28f0f5e ADR r0,|L1.2968|
000a1c ebfffffe BL Uart_Printf
;;;229
;;;230 while(((unsigned int)_temp - (unsigned int)Buf) < size)
000a20 e1a00000 NOP
|L1.2596|
000a24 e59f0134 LDR r0,|L1.2912|
000a28 e5900000 LDR r0,[r0,#0] ; _temp
000a2c e59f1134 LDR r1,|L1.2920|
000a30 e5911000 LDR r1,[r1,#0] ; Buf
000a34 e0400001 SUB r0,r0,r1
000a38 e59f1154 LDR r1,|L1.2964|
000a3c e5911000 LDR r1,[r1,#0] ; size
000a40 e1500001 CMP r0,r1
000a44 2a000007 BCS |L1.2664|
;;;231 Uart_Printf("\b\b\b\b\b\b\b\b%7d ",(unsigned int)_temp - (unsigned int)Buf);
000a48 e59f0110 LDR r0,|L1.2912|
000a4c e5900000 LDR r0,[r0,#0] ; _temp
000a50 e59f2110 LDR r2,|L1.2920|
000a54 e5922000 LDR r2,[r2,#0] ; Buf
000a58 e0401002 SUB r1,r0,r2
000a5c e28f0f59 ADR r0,|L1.3016|
000a60 ebfffffe BL Uart_Printf
000a64 eaffffee B |L1.2596|
;;;232
;;;233 Uart_Printf("\b\b\b\b\b\b\b\b%7d ]\n",(unsigned int)_temp - (unsigned int)Buf);
|L1.2664|
000a68 e59f00f0 LDR r0,|L1.2912|
000a6c e5900000 LDR r0,[r0,#0] ; _temp
000a70 e59f20f0 LDR r2,|L1.2920|
000a74 e5922000 LDR r2,[r2,#0] ; Buf
000a78 e0401002 SUB r1,r0,r2
000a7c e28f0f55 ADR r0,|L1.3032|
000a80 ebfffffe BL Uart_Printf
;;;234
;;;235 rINTSUBMSK |= BIT_SUB_RXD1;
000a84 e3a0044a MOV r0,#0x4a000000
000a88 e590001c LDR r0,[r0,#0x1c]
000a8c e3800008 ORR r0,r0,#8
000a90 e3a0144a MOV r1,#0x4a000000
000a94 e581001c STR r0,[r1,#0x1c]
;;;236
;;;237 size = *(Buf + 0x2c) | *(Buf + 0x2d)<<8 | *(Buf + 0x2e)<<16 | *(Buf + 0x2f)<<24;
000a98 e59f00c8 LDR r0,|L1.2920|
000a9c e5900000 LDR r0,[r0,#0] ; Buf
000aa0 e5d0002c LDRB r0,[r0,#0x2c]
000aa4 e59f10bc LDR r1,|L1.2920|
000aa8 e5911000 LDR r1,[r1,#0] ; Buf
000aac e5d1102d LDRB r1,[r1,#0x2d]
000ab0 e1800401 ORR r0,r0,r1,LSL #8
000ab4 e59f10ac LDR r1,|L1.2920|
000ab8 e5911000 LDR r1,[r1,#0] ; Buf
000abc e5d1102e LDRB r1,[r1,#0x2e]
000ac0 e1800801 ORR r0,r0,r1,LSL #16
000ac4 e59f109c LDR r1,|L1.2920|
000ac8 e5911000 LDR r1,[r1,#0] ; Buf
000acc e5d1102f LDRB r1,[r1,#0x2f]
000ad0 e1800c01 ORR r0,r0,r1,LSL #24
000ad4 e59f10b8 LDR r1,|L1.2964|
000ad8 e5810000 STR r0,[r1,#0] ; size
;;;238 size = (size>>1)<<1;
000adc e59f00b0 LDR r0,|L1.2964|
000ae0 e5900000 LDR r0,[r0,#0] ; size
000ae4 e1a000a0 MOV r0,r0,LSR #1
000ae8 e1a00080 MOV r0,r0,LSL #1
000aec e59f10a0 LDR r1,|L1.2964|
000af0 e5810000 STR r0,[r1,#0] ; size
;;;239
;;;240 fs = *(Buf + 0x1c) | *(Buf + 0x1d)<<8 | *(Buf + 0x1e)<<16 | *(Buf + 0x1f)<<24;
000af4 e59f006c LDR r0,|L1.2920|
000af8 e5900000 LDR r0,[r0,#0] ; Buf
000afc e5d0001c LDRB r0,[r0,#0x1c]
000b00 e59f1060 LDR r1,|L1.2920|
000b04 e5911000 LDR r1,[r1,#0] ; Buf
000b08 e5d1101d LDRB r1,[r1,#0x1d]
000b0c e1800401 ORR r0,r0,r1,LSL #8
000b10 e59f1050 LDR r1,|L1.2920|
000b14 e5911000 LDR r1,[r1,#0] ; Buf
000b18 e5d1101e LDRB r1,[r1,#0x1e]
000b1c e1800801 ORR r0,r0,r1,LSL #16
000b20 e59f1040 LDR r1,|L1.2920|
000b24 e5911000 LDR r1,[r1,#0] ; Buf
000b28 e5d1101f LDRB r1,[r1,#0x1f]
000b2c e1800c01 ORR r0,r0,r1,LSL #24
000b30 e59f10b0 LDR r1,|L1.3048|
000b34 e5810000 STR r0,[r1,#0] ; fs
;;;241
;;;242 Uart_Printf("Sample PCM Data Size = %d\n", size);
000b38 e59f0054 LDR r0,|L1.2964|
000b3c e5901000 LDR r1,[r0,#0] ; size
000b40 e28f00a4 ADR r0,|L1.3052|
000b44 ebfffffe BL Uart_Printf
;;;243 Uart_Printf("Sampling Frequency = %d Hz\n", fs);
000b48 e59f0098 LDR r0,|L1.3048|
000b4c e5901000 LDR r1,[r0,#0] ; fs
000b50 e28f00b0 ADR r0,|L1.3080|
000b54 ebfffffe BL Uart_Printf
;;;244
;;;245 }
000b58 e8bd8008 LDMFD sp!,{r3,pc}
|L1.2908|
000b5c 50004000 DCD 0x50004000
|L1.2912|
000b60 00000008 DCD ||.bss$2|| + 8
|L1.2916|
000b64 00000000 DCD RxInt
|L1.2920|
000b68 00000004 DCD ||.bss$2|| + 4
|L1.2924|
000b6c 000000a8 DCD ||.constdata$1|| + 168
|L1.2928|
000b70 6e776f44 DCB "Down"
000b74 64616f6c DCB "load"
000b78 61745320 DCB " Sta"
000b7c 41207472 DCB "rt A"
000b80 65726464 DCB "ddre"
000b84 203a7373 DCB "ss: "
000b88 78257830 DCB "0x%x"
000b8c 0000000a DCB "\n\0\0\0"
|L1.2960|
000b90 000005dc DCD 0x000005dc
|L1.2964|
000b94 0000000c DCD ||.bss$2|| + 12
|L1.2968|
000b98 776f4e0a DCB "\nNow"
000b9c 6f44202c DCB ", Do"
000ba0 6f6c6e77 DCB "wnlo"
000ba4 6e696461 DCB "adin"
000ba8 2e2e2e67 DCB "g..."
000bac 46205b20 DCB " [ F"
000bb0 20656c69 DCB "ile "
000bb4 657a6953 DCB "Size"
000bb8 25203a20 DCB " : %"
000bbc 20206437 DCB "7d "
000bc0 20202009 DCB "\t "
000bc4 005d3020 DCB " 0]\0"
|L1.3016|
000bc8 08080808 DCB "\b\b\b\b"
000bcc 08080808 DCB "\b\b\b\b"
000bd0 20643725 DCB "%7d "
000bd4 00000000 DCB "\0\0\0\0"
|L1.3032|
000bd8 08080808 DCB "\b\b\b\b"
000bdc 08080808 DCB "\b\b\b\b"
000be0 20643725 DCB "%7d "
000be4 00000a5d DCB "]\n\0\0"
|L1.3048|
000be8 00000010 DCD ||.bss$2|| + 16
|L1.3052|
000bec 706d6153 DCB "Samp"
000bf0 5020656c DCB "le P"
000bf4 44204d43 DCB "CM D"
000bf8 20617461 DCB "ata "
000bfc 657a6953 DCB "Size"
000c00 25203d20 DCB " = %"
000c04 00000a64 DCB "d\n\0\0"
|L1.3080|
000c08 706d6153 DCB "Samp"
000c0c 676e696c DCB "ling"
000c10 65724620 DCB " Fre"
000c14 6e657571 DCB "quen"
000c18 3d207963 DCB "cy ="
000c1c 20642520 DCB " %d "
000c20 000a7a48 DCB "Hz\n\0"
ENDP
Select_IIS_Master_CLK PROC
;;;363 void Select_IIS_Master_CLK(void)
;;;364 {
000c24 e92d4070 STMFD sp!,{r4-r6,lr}
000c28 e24dd018 SUB sp,sp,#0x18
;;;365 int sel;
;;;366
;;;367 //Uart_Printf("\nIIS Master Clock Source => MPLLin\n");
;;;368 Uart_Printf("\nSelect IIS Master Clock Source\n");
000c2c e28f0f9c ADR r0,|L1.3748|
000c30 ebfffffe BL Uart_Printf
;;;369 Uart_Printf("0:PCLK, 1:MPLLin\n");
000c34 e28f0fa3 ADR r0,|L1.3784|
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -