📄 iis_dual.txt
字号:
;;;73
;;;74 IIS_PortSetting();
000ae8 ebfffffe BL IIS_PortSetting
;;;75 Init1341RecPlay();
000aec ebfffffe BL Init1341RecPlay
;;;76
;;;77 playBuf=(U16 (*)[AUDIO_BUF_SIZE])0x11000000;
000af0 e3a00544 MOV r0,#0x11000000
000af4 e51f1880 LDR r1,|L1.636|
000af8 e5810000 STR r0,[r1,#0] ; playBuf
;;;78 recBuf = (U16 (*)[AUDIO_BUF_SIZE])(0x11000000+sizeof(U16)*AUDIO_BUF_SIZE*MAX_INDEX_AUDIO_BUF);
000afc e59f0244 LDR r0,|L1.3400|
000b00 e51f1890 LDR r1,|L1.632|
000b04 e5810000 STR r0,[r1,#0] ; recBuf
;;;79
;;;80 indexPlayBuf=indexRecBuf=0;
000b08 e3a00000 MOV r0,#0
000b0c e51f15f8 LDR r1,|L1.1308|
000b10 e5810000 STR r0,[r1,#0] ; indexRecBuf
000b14 e51f1788 LDR r1,|L1.916|
000b18 e5810000 STR r0,[r1,#0] ; indexPlayBuf
;;;81 audioOutActive=audioInActive=FALSE;
000b1c e3a00000 MOV r0,#0
000b20 e51f18dc LDR r1,|L1.588|
000b24 e5810000 STR r0,[r1,#0] ; audioInActive
000b28 e51f17bc LDR r1,|L1.884|
000b2c e5810000 STR r0,[r1,#0] ; audioOutActive
;;;82 stopPlay=stopRec=FALSE;
000b30 e3a00000 MOV r0,#0
000b34 e51f1768 LDR r1,|L1.980|
000b38 e5810000 STR r0,[r1,#0] ; stopRec
000b3c e51f1894 LDR r1,|L1.688|
000b40 e5810000 STR r0,[r1,#0] ; stopPlay
;;;83
;;;84 //for(i=0x31000000;i<0x31100000;i+=4)*((U32 *)i)=0;
;;;85
;;;86 AudioInit();
000b44 ebfffffe BL AudioInit
;;;87 pISR_DMA = (U32)IsrAudioInOut;
000b48 e59f01fc LDR r0,|L1.3404|
000b4c e51f19d0 LDR r1,|L1.388|
000b50 e5810f70 STR r0,[r1,#0xf70]
;;;88 pISR_EINT0_2 = (U32)IsrAudioMute;
000b54 e59f01f4 LDR r0,|L1.3408|
000b58 e5810f20 STR r0,[r1,#0xf20]
;;;89
;;;90 Uart_Printf("If you want to mute or no mute push the 'EIN9' key repeatedly\n");
000b5c e28f0f7c ADR r0,|L1.3412|
000b60 ebfffffe BL _printf
;;;91 Uart_Printf("Sampling Frequency = %d Hz\n",22050);
000b64 e59f1228 LDR r1,|L1.3476|
000b68 e28f0f8a ADR r0,|L1.3480|
000b6c ebfffffe BL _printf
;;;92
;;;93 // Clear Int Pending and Unmask
;;;94 ClearPending(BIT_EINT0_2);
000b70 e3a00001 MOV r0,#1
000b74 e51f1b58 LDR r1,|L1.36|
000b78 e5810000 STR r0,[r1,#0]
000b7c e1c10000 BIC r0,r1,r0
000b80 e5900010 LDR r0,[r0,#0x10]
000b84 e5810010 STR r0,[r1,#0x10]
000b88 e1a00001 MOV r0,r1
000b8c e5900010 LDR r0,[r0,#0x10]
;;;95 rINTMSK = ~(BIT_EINT0_2);
000b90 e3e00001 MVN r0,#1
000b94 e0011000 AND r1,r1,r0
000b98 e5810008 STR r0,[r1,#8]
;;;96
;;;97 ClearPending(BIT_DMA);
000b9c e3a00940 MOV r0,#0x100000
000ba0 e1c11000 BIC r1,r1,r0
000ba4 e5810000 STR r0,[r1,#0]
000ba8 e1c10000 BIC r0,r1,r0
000bac e5900010 LDR r0,[r0,#0x10]
000bb0 e5810010 STR r0,[r1,#0x10]
000bb4 e1a00001 MOV r0,r1
000bb8 e5900010 LDR r0,[r0,#0x10]
;;;98 rINTMSK=~(BIT_DMA);
000bbc e3e00940 MVN r0,#0x100000
000bc0 e0011000 AND r1,r1,r0
000bc4 e5810008 STR r0,[r1,#8]
;;;99 rSUBSRCPND=(BIT_SUB_DMA0|BIT_SUB_DMA2);
000bc8 e3a006a0 MOV r0,#0xa000000
000bcc e1c11000 BIC r1,r1,r0
000bd0 e5810018 STR r0,[r1,#0x18]
;;;100 rINTSUBMSK=~(BIT_SUB_DMA0|BIT_SUB_DMA2);
000bd4 e3e006a0 MVN r0,#0xa000000
000bd8 e0011000 AND r1,r1,r0
000bdc e581001c STR r0,[r1,#0x1c]
;;;101
;;;102 while(1)
000be0 e1a00000 NOP
|L1.3044|
000be4 e1a00000 NOP
;;;103 {
;;;104 Uart_Printf("\n[Select Menu] (Rec Play Begin End Toggle Random)\n"
000be8 e59f01c4 LDR r0,|L1.3508|
000bec ebfffffe BL _printf
;;;105 "1:R_B 2:R_E 3:PR_T 4:P_B 5:P_E 6:Copy:R->P 7:IL_B 8:IL_E 9:Exit\n");
;;;106 // Uart_Printf("\n[Select Menu] (Rec Play Begin End)\n"
;;;107 // "1:R_B 2:R_E 3:P_B 4:P_E 5:Copy_R->P 6:Exit\n");
;;;108
;;;109 while((key=Uart_GetKey())==0)
000bf0 e1a00000 NOP
|L1.3060|
000bf4 ebfffffe BL Uart_GetKey
000bf8 e1b05000 MOVS r5,r0
000bfc 1a000003 BNE |L1.3088|
;;;110 {
;;;111 if(ranPlay==TRUE)
000c00 e3540001 CMP r4,#1
000c04 1a000000 BNE |L1.3084|
;;;112 AudioOutRandom();
000c08 ebfffffe BL AudioOutRandom
;;;113 }
|L1.3084|
000c0c eafffff8 B |L1.3060|
;;;114
;;;115 switch(key)
|L1.3088|
000c10 e2450031 SUB r0,r5,#0x31
000c14 e3500008 CMP r0,#8
000c18 908ff100 ADDLS pc,pc,r0,LSL #2
000c1c ea000037 B |L1.3328|
000c20 ea000007 B |L1.3140|
000c24 ea000008 B |L1.3148|
000c28 ea000009 B |L1.3156|
000c2c ea000012 B |L1.3196|
000c30 ea000013 B |L1.3204|
000c34 ea000014 B |L1.3212|
000c38 ea000015 B |L1.3220|
000c3c ea000016 B |L1.3228|
000c40 ea000017 B |L1.3236|
;;;116 {
;;;117 case '1':
;;;118 AudioInStart();
|L1.3140|
000c44 ebfffffe BL AudioInStart
;;;119 break;
000c48 ea00002d B |L1.3332|
;;;120 case '2':
;;;121 AudioInStop();
|L1.3148|
000c4c ebfffffe BL AudioInStop
;;;122 break;
000c50 ea00002b B |L1.3332|
;;;123 case '3':
;;;124
;;;125
;;;126 if(ranPlay==FALSE)
|L1.3156|
000c54 e3540000 CMP r4,#0
000c58 1a000003 BNE |L1.3180|
;;;127 {
;;;128 ranPlay=TRUE;
000c5c e3a04001 MOV r4,#1
;;;129 Uart_Printf("Random Play Stop/Start begins.\n");
000c60 e28f0f54 ADR r0,|L1.3512|
000c64 ebfffffe BL _printf
000c68 ea000002 B |L1.3192|
;;;130 }
;;;131 else
;;;132 {
;;;133 ranPlay=FALSE;
|L1.3180|
000c6c e3a04000 MOV r4,#0
;;;134 Uart_Printf("Random Play Stop/Start ends.\n");
000c70 e28f0f58 ADR r0,|L1.3544|
000c74 ebfffffe BL _printf
;;;135 }
;;;136
;;;137 break;
|L1.3192|
000c78 ea000021 B |L1.3332|
;;;138 case '4':
;;;139 AudioOutStart();
|L1.3196|
000c7c ebfffffe BL AudioOutStart
;;;140 break;
000c80 ea00001f B |L1.3332|
;;;141 case '5':
;;;142 AudioOutStop();
|L1.3204|
000c84 ebfffffe BL AudioOutStop
;;;143 break;
000c88 ea00001d B |L1.3332|
;;;144 case '6':
;;;145 AudioBufCopy();
|L1.3212|
000c8c ebfffffe BL AudioBufCopy
;;;146 break;
000c90 ea00001b B |L1.3332|
;;;147 case '7':
;;;148 InterruptLatencyStart();
|L1.3220|
000c94 ebfffffe BL InterruptLatencyStart
;;;149 break;
000c98 ea000019 B |L1.3332|
;;;150 case '8':
;;;151 InterruptLatencyStop();
|L1.3228|
000c9c ebfffffe BL InterruptLatencyStop
;;;152 break;
000ca0 ea000017 B |L1.3332|
;;;153 case '9':
;;;154 rINTSUBMSK|=(BIT_SUB_DMA0|BIT_SUB_DMA2);
|L1.3236|
000ca4 e51f0c88 LDR r0,|L1.36|
000ca8 e590001c LDR r0,[r0,#0x1c]
000cac e38006a0 ORR r0,r0,#0xa000000
000cb0 e51f1c94 LDR r1,|L1.36|
000cb4 e581001c STR r0,[r1,#0x1c]
;;;155 rINTMSK|=(BIT_DMA|BIT_EINT7_10);
000cb8 e1a00001 MOV r0,r1
000cbc e5900008 LDR r0,[r0,#8]
000cc0 e3800940 ORR r0,r0,#0x100000
000cc4 e3800004 ORR r0,r0,#4
000cc8 e5810008 STR r0,[r1,#8]
;;;156 //(0,0)=1:1:1, (0,1)=1:1:2, (1,0)=1:2:2 (1,1)=1:2:4, (2,0)=1:4:5, (2,1)=1:4:8
;;;157 ChangeClockDivider(1,1);
000ccc e3a01001 MOV r1,#1
000cd0 e3a00001 MOV r0,#1
000cd4 ebfffffe BL ChangeClockDivider
;;;158 //(76,4,1)=84Mhz, (93,4,1)=101Mhz, (54,1,1)=124Mhz, (68,4,0)=152Mhz
;;;159 //(93,4,0)=202Mhz, (47,1,0)=220Mhz, (72,2,0)=240Mhz, (79,2,0)=261Mhz
;;;160 //(60.2.0)=204MHz
;;;161 ChangeMPllValue(60,2,0);// FCLK=204Mhz
000cd8 e3a02000 MOV r2,#0
000cdc e3a01002 MOV r1,#2
000ce0 e3a0003c MOV r0,#0x3c
000ce4 ebfffffe BL ChangeMPllValue
;;;162 ChangeSdramParameter(HCLK);
000ce8 e59f004c LDR r0,|L1.3388|
000cec ebfffffe BL ChangeSdramParameter
;;;163 Uart_Init(0,115200);
000cf0 e59f1048 LDR r1,|L1.3392|
000cf4 e3a00000 MOV r0,#0
000cf8 ebfffffe BL Uart_Init
;;;164 return;
;;;165 default:
;;;166 break;
;;;167 }
;;;168 }
;;;169 }
000cfc e8bd8038 LDMFD sp!,{r3-r5,pc}
|L1.3328|
000d00 e1a00000 NOP ;166
|L1.3332|
000d04 eaffffb6 B |L1.3044| ;168
|L1.3336|
000d08 44800000 DCD 0x44800000 ;168
|L1.3340|
000d0c 4949205b DCB "[ II" ;168
000d10 4d282053 DCB "S (M" ;168
000d14 65747361 DCB "aste" ;168
000d18 6f4d2072 DCB "r Mo" ;168
000d1c 522c6564 DCB "de,R" ;168
000d20 50266365 DCB "ec&P" ;168
000d24 2979616c DCB "lay)" ;168
000d28 73655420 DCB " Tes" ;168
000d2c 44552874 DCB "t(UD" ;168
000d30 34333141 DCB "A134" ;168
000d34 5d202931 DCB "1) ]" ;168
000d38 0000000a DCB "\n\0\0\0" ;168
|L1.3388|
000d3c 06146580 DCD 0x06146580 ;168
|L1.3392|
000d40 0001c200 DCD 0x0001c200 ;168
|L1.3396|
000d44 02b11000 DCD 0x02b11000 ;168
|L1.3400|
000d48 11061a80 DCD 0x11061a80 ;168
|L1.3404|
000d4c 00000000 DCD IsrAudioInOut ;168
|L1.3408|
000d50 00000000 DCD IsrAudioMute ;168
|L1.3412|
000d54 79206649 DCB "If y" ;168
000d58 7720756f DCB "ou w" ;168
000d5c 20746e61 DCB "ant " ;168
000d60 6d206f74 DCB "to m" ;168
000d64 20657475 DCB "ute " ;168
000d68 6e20726f DCB "or n" ;168
000d6c 756d206f DCB "o mu" ;168
000d70 70206574 DCB "te p" ;168
000d74 20687375 DCB "ush " ;168
000d78 20656874 DCB "the " ;168
000d7c 4e494527 DCB "\
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -