📄 waveplayer.txt
字号:
;;;455 case ALL:
;;;456 I2S_CODEC_LCDConfig();
000074 f7fffffe BL I2S_CODEC_LCDConfig
|L3.120|
000078 4630 MOV r0,r6 ;412
00007a f7fffffe BL LCD_SetTextColor
00007e 4972 LDR r1,|L3.584|
000080 2048 MOVS r0,#0x48 ;413
000082 3128 ADDS r1,r1,#0x28 ;413
000084 f7fffffe BL LCD_DisplayStringLine
000088 496f LDR r1,|L3.584|
00008a 2060 MOVS r0,#0x60 ;414
00008c 313c ADDS r1,r1,#0x3c ;414
00008e f7fffffe BL LCD_DisplayStringLine
000092 f44f4078 MOV r0,#0xf800 ;415
000096 f7fffffe BL LCD_SetTextColor
00009a 496b LDR r1,|L3.584|
00009c 3150 ADDS r1,r1,#0x50 ;416
00009e e0ab B |L3.504|
|L3.160|
0000a0 f7fffffe BL GetVar_AudioDataIndex
0000a4 fb00f407 MUL r4,r0,r7 ;384
0000a8 f7fffffe BL GetVar_AudioDataLength
0000ac fbb4f0f0 UDIV r0,r4,r0 ;384
0000b0 f01004ff ANDS r4,r0,#0xff ;384
0000b4 4648 MOV r0,r9 ;387
0000b6 d10c BNE |L3.210|
0000b8 f7fffffe BL LCD_SetTextColor
0000bc 20c0 MOVS r0,#0xc0 ;388
0000be f7fffffe BL LCD_ClearLine
0000c2 465b MOV r3,r11 ;389
0000c4 2210 MOVS r2,#0x10 ;389
0000c6 f44f719b MOV r1,#0x136 ;389
0000ca 20c0 MOVS r0,#0xc0 ;389
|L3.204|
0000cc f7fffffe BL LCD_DrawRect
0000d0 e035 B |L3.318|
|L3.210|
0000d2 f7fffffe BL LCD_SetTextColor
0000d6 eba40084 SUB r0,r4,r4,LSL #2 ;394
0000da f500709b ADD r0,r0,#0x136 ;394
0000de b281 UXTH r1,r0 ;394
0000e0 2301 MOVS r3,#1 ;394
0000e2 2210 MOVS r2,#0x10 ;394
0000e4 20c0 MOVS r0,#0xc0 ;394
0000e6 f7fffffe BL LCD_DrawLine
0000ea e028 B |L3.318|
|L3.236|
0000ec f7fffffe BL GetVar_AudioDataIndex
0000f0 fb00f607 MUL r6,r0,r7 ;398
0000f4 f7fffffe BL GetVar_AudioDataLength
0000f8 fbb6f0f0 UDIV r0,r6,r0 ;398
0000fc b2c6 UXTB r6,r0 ;398
0000fe 4648 MOV r0,r9 ;400
000100 f7fffffe BL LCD_SetTextColor
000104 20c0 MOVS r0,#0xc0 ;401
000106 f7fffffe BL LCD_ClearLine
00010a 465b MOV r3,r11 ;402
00010c 2210 MOVS r2,#0x10 ;402
00010e f44f719b MOV r1,#0x136 ;402
000112 20c0 MOVS r0,#0xc0 ;402
000114 f7fffffe BL LCD_DrawRect
000118 4648 MOV r0,r9 ;403
00011a f7fffffe BL LCD_SetTextColor
00011e e00c B |L3.314|
|L3.288|
000120 e04a B |L3.440|
000122 bf00 NOP ;407
|L3.292|
000124 eba40084 SUB r0,r4,r4,LSL #2 ;407
000128 f500709b ADD r0,r0,#0x136 ;407
00012c b281 UXTH r1,r0 ;407
00012e 2301 MOVS r3,#1 ;407
000130 2210 MOVS r2,#0x10 ;407
000132 20c0 MOVS r0,#0xc0 ;407
000134 f7fffffe BL LCD_DrawLine
000138 1c64 ADDS r4,r4,#1 ;405
|L3.314|
00013a 42b4 CMP r4,r6 ;405
00013c d9f2 BLS |L3.292|
|L3.318|
;;;457 /* Display the stopped status menu */
;;;458 LCD_SetTextColor(White);
;;;459 LCD_DisplayStringLine(Line3, CmdTitle1Stopped);
;;;460 LCD_DisplayStringLine(Line4, CmdTitle2Stopped);
;;;461 LCD_SetTextColor(Red);
;;;462 LCD_DisplayStringLine(Line6, StatusTitleStopped);
;;;463 LCD_ClearLine(Line9);
;;;464 LCD_SetTextColor(Black);
;;;465 LCD_DisplayChar(Line9, 250, 'v');
;;;466 LCD_DisplayChar(Line9, 235, 'o');
;;;467 LCD_DisplayChar(Line9, 220, 'l');
;;;468 LCD_DisplayChar(Line9, 200, '-');
;;;469 LCD_DisplayChar(Line9, 85, '+');
;;;470 LCD_DrawRect(Line9 + 8, 185, 10, 100);
;;;471 break;
;;;472 }
;;;473 /* Update the volume bar in all cases except when progress bar is to be apdated */
;;;474 if (Status != PROGRESS)
00013e 4545 CMP r5,r8
000140 d034 BEQ |L3.428|
;;;475 {
;;;476 /* Compute the current volume percentage */
;;;477 tmp = (u8) ((u16)((0xFF - GetVar_CurrentVolume()) * 100) / 0xFF) ;
000142 f7fffffe BL GetVar_CurrentVolume
000146 f1c000ff RSB r0,r0,#0xff
00014a 4378 MULS r0,r7,r0
00014c 21ff MOVS r1,#0xff
00014e fbb0f0f1 UDIV r0,r0,r1
000152 b2c4 UXTB r4,r0
;;;478
;;;479 /* Clear the previuos volume bar */
;;;480 LCD_SetTextColor(Blue);
000154 201f MOVS r0,#0x1f
000156 f7fffffe BL LCD_SetTextColor
;;;481 LCD_DrawLine(Line9 + 10, 185 - previoustmp , 8, Vertical);
00015a 4d3b LDR r5,|L3.584|
00015c 2301 MOVS r3,#1
00015e 3d51 SUBS r5,r5,#0x51
000160 7828 LDRB r0,[r5,#0] ; previoustmp
000162 2208 MOVS r2,#8
000164 f1c000b9 RSB r0,r0,#0xb9
000168 b281 UXTH r1,r0
00016a 20e2 MOVS r0,#0xe2
00016c f7fffffe BL LCD_DrawLine
;;;482 LCD_DrawLine(Line9 + 10, 185 - previoustmp + 1 , 8, Vertical);
000170 7828 LDRB r0,[r5,#0] ; previoustmp
000172 2301 MOVS r3,#1
000174 f1c000ba RSB r0,r0,#0xba
000178 b281 UXTH r1,r0
00017a 2208 MOVS r2,#8
00017c 20e2 MOVS r0,#0xe2
00017e f7fffffe BL LCD_DrawLine
;;;483
;;;484 /* Draw the new volume bar */
;;;485 LCD_SetTextColor(Red);
000182 f44f4078 MOV r0,#0xf800
000186 f7fffffe BL LCD_SetTextColor
;;;486 LCD_DrawLine(Line9 + 10, 185 - tmp , 8, Vertical);
00018a f1c400b9 RSB r0,r4,#0xb9
00018e b281 UXTH r1,r0
000190 2301 MOVS r3,#1
000192 2208 MOVS r2,#8
000194 20e2 MOVS r0,#0xe2
000196 f7fffffe BL LCD_DrawLine
;;;487 LCD_DrawLine(Line9 + 10, 185 - tmp + 1 , 8, Vertical);
00019a f1c400ba RSB r0,r4,#0xba
00019e b281 UXTH r1,r0
0001a0 2301 MOVS r3,#1
0001a2 2208 MOVS r2,#8
0001a4 20e2 MOVS r0,#0xe2
0001a6 f7fffffe BL LCD_DrawLine
;;;488
;;;489 /* save the current position */
;;;490 previoustmp = tmp;
0001aa 702c STRB r4,[r5,#0] ; previoustmp
|L3.428|
;;;491 }
;;;492 /* Disable the FSMC that share a pin w/ I2C1 (LBAR) */
;;;493 RCC_AHBPeriphClockCmd(RCC_AHBPeriph_FSMC, DISABLE);
0001ac 4650 MOV r0,r10
0001ae e8bd5ff0 POP {r4-r12,lr}
0001b2 2100 MOVS r1,#0
0001b4 f7ffbffe B.W RCC_AHBPeriphClockCmd
|L3.440|
0001b8 2000 MOVS r0,#0 ;436
0001ba f7fffffe BL LCD_SetTextColor
0001be 4922 LDR r1,|L3.584|
0001c0 2000 MOVS r0,#0 ;437
0001c2 3950 SUBS r1,r1,#0x50 ;437
0001c4 f7fffffe BL LCD_DisplayStringLine
0001c8 491f LDR r1,|L3.584|
0001ca 2030 MOVS r0,#0x30 ;438
0001cc 393c SUBS r1,r1,#0x3c ;438
0001ce f7fffffe BL LCD_DisplayStringLine
0001d2 4630 MOV r0,r6 ;441
0001d4 f7fffffe BL LCD_SetTextColor
0001d8 491b LDR r1,|L3.584|
0001da 2048 MOVS r0,#0x48 ;442
0001dc 3928 SUBS r1,r1,#0x28 ;442
0001de f7fffffe BL LCD_DisplayStringLine
0001e2 4919 LDR r1,|L3.584|
0001e4 2060 MOVS r0,#0x60 ;443
0001e6 3914 SUBS r1,r1,#0x14 ;443
0001e8 f7fffffe BL LCD_DisplayStringLine
0001ec f44f4078 MOV r0,#0xf800 ;444
0001f0 f7fffffe BL LCD_SetTextColor
0001f4 4914 LDR r1,|L3.584|
0001f6 3164 ADDS r1,r1,#0x64 ;445
|L3.504|
0001f8 2090 MOVS r0,#0x90 ;462
0001fa f7fffffe BL LCD_DisplayStringLine
0001fe 20d8 MOVS r0,#0xd8 ;463
000200 f7fffffe BL LCD_ClearLine
000204 2000 MOVS r0,#0 ;464
000206 f7fffffe BL LCD_SetTextColor
00020a 2276 MOVS r2,#0x76 ;465
00020c 21fa MOVS r1,#0xfa ;465
00020e 20d8 MOVS r0,#0xd8 ;465
000210 f7fffffe BL LCD_DisplayChar
000214 226f MOVS r2,#0x6f ;466
000216 21eb MOVS r1,#0xeb ;466
000218 20d8 MOVS r0,#0xd8 ;466
00021a f7fffffe BL LCD_DisplayChar
00021e 226c MOVS r2,#0x6c ;467
000220 21dc MOVS r1,#0xdc ;467
000222 20d8 MOVS r0,#0xd8 ;467
000224 f7fffffe BL LCD_DisplayChar
000228 222d MOVS r2,#0x2d ;468
00022a 21c8 MOVS r1,#0xc8 ;468
00022c 20d8 MOVS r0,#0xd8 ;468
00022e f7fffffe BL LCD_DisplayChar
000232 222b MOVS r2,#0x2b ;469
000234 2155 MOVS r1,#0x55 ;469
000236 20d8 MOVS r0,#0xd8 ;469
000238 f7fffffe BL LCD_DisplayChar
00023c 2364 MOVS r3,#0x64 ;470
00023e 220a MOVS r2,#0xa ;470
000240 21b9 MOVS r1,#0xb9 ;470
000242 20e0 MOVS r0,#0xe0 ;470
000244 e742 B |L3.204|
;;;494 }
;;;495
ENDP
000246 0000 DCW 0x0000
|L3.584|
000248 00000051 DCD ||.data||+0x51
|L3.588|
00024c eeeeff00 DCD 0xeeeeff00
AREA ||i.WavePlayer_StartSpeaker||, CODE, READONLY, ALIGN=2
WavePlayer_StartSpeaker PROC
;;;63 void WavePlayer_StartSpeaker(void)
;;;64 {
000000 e92d47f0 PUSH {r4-r10,lr}
;;;65 u8 MyKey = 0;
;;;66 u32 err = 0, Counter = 0x0;
000004 2600 MOVS r6,#0
;;;67
;;;68 LCD_Clear(White);
000006 f64f77ff MOV r7,#0xffff
00000a 4635 MOV r5,r6 ;66
00000c 4638 MOV r0,r7
00000e f7fffffe BL LCD_Clear
;;;69
;;;70 /* Disable the JoyStick interrupts */
;;;71 IntExtOnOffConfig(DISABLE);
000012 2000 MOVS r0,#0
000014 f7fffffe BL IntExtOnOffConfig
|L4.24|
;;;72
;;;73 while(ReadKey() != NOKEY)
000018 f7fffffe BL ReadKey
00001c 2800 CMP r0,#0
00001e d1fb BNE |L4.24|
;;;74 {
;;;75 }
;;;76
;;;77 /* Display the welcome screen and the commands */
;;;78 LCD_Update(ALL);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -