diff --git a/Debug/Motor_Controller2.bin b/Debug/Motor_Controller2.bin index 6cd3658..9d308fc 100755 Binary files a/Debug/Motor_Controller2.bin and b/Debug/Motor_Controller2.bin differ diff --git a/Debug/Motor_Controller2.list b/Debug/Motor_Controller2.list index 8494916..ed8f5b3 100644 --- a/Debug/Motor_Controller2.list +++ b/Debug/Motor_Controller2.list @@ -5,45 +5,45 @@ Sections: Idx Name Size VMA LMA File off Algn 0 .isr_vector 000000c0 08000000 08000000 00010000 2**0 CONTENTS, ALLOC, LOAD, READONLY, DATA - 1 .text 0000303c 080000c0 080000c0 000100c0 2**2 + 1 .text 00003070 080000c0 080000c0 000100c0 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .rodata 00000060 080030fc 080030fc 000130fc 2**2 + 2 .rodata 00000064 08003130 08003130 00013130 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA - 3 .ARM.extab 00000000 0800315c 0800315c 0002000c 2**0 + 3 .ARM.extab 00000000 08003194 08003194 0002000c 2**0 CONTENTS - 4 .ARM 00000000 0800315c 0800315c 0002000c 2**0 + 4 .ARM 00000000 08003194 08003194 0002000c 2**0 CONTENTS - 5 .preinit_array 00000000 0800315c 0800315c 0002000c 2**0 + 5 .preinit_array 00000000 08003194 08003194 0002000c 2**0 CONTENTS, ALLOC, LOAD, DATA - 6 .init_array 00000004 0800315c 0800315c 0001315c 2**2 + 6 .init_array 00000004 08003194 08003194 00013194 2**2 CONTENTS, ALLOC, LOAD, DATA - 7 .fini_array 00000004 08003160 08003160 00013160 2**2 + 7 .fini_array 00000004 08003198 08003198 00013198 2**2 CONTENTS, ALLOC, LOAD, DATA - 8 .data 0000000c 20000000 08003164 00020000 2**2 + 8 .data 0000000c 20000000 0800319c 00020000 2**2 CONTENTS, ALLOC, LOAD, DATA - 9 .bss 000000f8 2000000c 08003170 0002000c 2**2 + 9 .bss 000000e0 2000000c 080031a8 0002000c 2**2 ALLOC - 10 ._user_heap_stack 00000604 20000104 08003170 00020104 2**0 + 10 ._user_heap_stack 00000604 200000ec 080031a8 000200ec 2**0 ALLOC 11 .ARM.attributes 00000028 00000000 00000000 0002000c 2**0 CONTENTS, READONLY - 12 .debug_info 000054e8 00000000 00000000 00020034 2**0 + 12 .debug_info 000054cd 00000000 00000000 00020034 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 13 .debug_abbrev 00001556 00000000 00000000 0002551c 2**0 + 13 .debug_abbrev 00001576 00000000 00000000 00025501 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 14 .debug_aranges 00000518 00000000 00000000 00026a78 2**3 + 14 .debug_aranges 00000510 00000000 00000000 00026a78 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 15 .debug_ranges 00000450 00000000 00000000 00026f90 2**3 + 15 .debug_ranges 00000448 00000000 00000000 00026f88 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 16 .debug_macro 0000ec48 00000000 00000000 000273e0 2**0 + 16 .debug_macro 0000ec48 00000000 00000000 000273d0 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 17 .debug_line 0000791f 00000000 00000000 00036028 2**0 + 17 .debug_line 000078b1 00000000 00000000 00036018 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 18 .debug_str 0005692c 00000000 00000000 0003d947 2**0 + 18 .debug_str 00056904 00000000 00000000 0003d8c9 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 19 .comment 00000053 00000000 00000000 00094273 2**0 + 19 .comment 00000053 00000000 00000000 000941cd 2**0 CONTENTS, READONLY - 20 .debug_frame 00000ff4 00000000 00000000 000942c8 2**2 + 20 .debug_frame 00000fd8 00000000 00000000 00094220 2**2 CONTENTS, READONLY, DEBUGGING, OCTETS Disassembly of section .text: @@ -65,7 +65,7 @@ Disassembly of section .text: 80000da: bd10 pop {r4, pc} 80000dc: 2000000c .word 0x2000000c 80000e0: 00000000 .word 0x00000000 - 80000e4: 080030e4 .word 0x080030e4 + 80000e4: 08003118 .word 0x08003118 080000e8 : 80000e8: 4b04 ldr r3, [pc, #16] ; (80000fc ) @@ -80,7 +80,7 @@ Disassembly of section .text: 80000fa: 46c0 nop ; (mov r8, r8) 80000fc: 00000000 .word 0x00000000 8000100: 20000010 .word 0x20000010 - 8000104: 080030e4 .word 0x080030e4 + 8000104: 08003118 .word 0x08003118 08000108 <__udivsi3>: 8000108: 2200 movs r2, #0 @@ -499,7 +499,7 @@ int main(void) /* USER CODE BEGIN 2 */ my_code(); - 8000408: f002 f9b2 bl 8002770 + 8000408: f002 f9d2 bl 80027b0 /* USER CODE END 2 */ /* Infinite loop */ @@ -524,14 +524,14 @@ void SystemClock_Config(void) 800041a: 2330 movs r3, #48 ; 0x30 800041c: 001a movs r2, r3 800041e: 2100 movs r1, #0 - 8000420: f002 fe58 bl 80030d4 + 8000420: f002 fe72 bl 8003108 RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; 8000424: 003b movs r3, r7 8000426: 0018 movs r0, r3 8000428: 2310 movs r3, #16 800042a: 001a movs r2, r3 800042c: 2100 movs r1, #0 - 800042e: f002 fe51 bl 80030d4 + 800042e: f002 fe6b bl 8003108 /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. @@ -643,7 +643,7 @@ static void MX_ADC_Init(void) 80004ba: 230c movs r3, #12 80004bc: 001a movs r2, r3 80004be: 2100 movs r1, #0 - 80004c0: f002 fe08 bl 80030d4 + 80004c0: f002 fe22 bl 8003108 /* USER CODE BEGIN ADC_Init 1 */ /* USER CODE END ADC_Init 1 */ @@ -792,7 +792,7 @@ static void MX_GPIO_Init(void) 800058c: 2314 movs r3, #20 800058e: 001a movs r2, r3 8000590: 2100 movs r1, #0 - 8000592: f002 fd9f bl 80030d4 + 8000592: f002 fdb9 bl 8003108 /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOF_CLK_ENABLE(); @@ -1014,7 +1014,7 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc) 80006ba: 2314 movs r3, #20 80006bc: 001a movs r2, r3 80006be: 2100 movs r1, #0 - 80006c0: f002 fd08 bl 80030d4 + 80006c0: f002 fd22 bl 8003108 if(hadc->Instance==ADC1) 80006c4: 687b ldr r3, [r7, #4] 80006c6: 681b ldr r3, [r3, #0] @@ -1278,7 +1278,7 @@ LoopFillZerobss: 800079a: f7ff ffe4 bl 8000766 /* Call static constructors */ bl __libc_init_array - 800079e: f002 fc75 bl 800308c <__libc_init_array> + 800079e: f002 fc8f bl 80030c0 <__libc_init_array> /* Call the application's entry point.*/ bl main 80007a2: f7ff fe27 bl 80003f4
@@ -1295,11 +1295,11 @@ LoopForever: ldr r1, =_edata 80007b0: 2000000c .word 0x2000000c ldr r2, =_sidata - 80007b4: 08003164 .word 0x08003164 + 80007b4: 0800319c .word 0x0800319c ldr r2, =_sbss 80007b8: 2000000c .word 0x2000000c ldr r4, =_ebss - 80007bc: 20000104 .word 0x20000104 + 80007bc: 200000ec .word 0x200000ec 080007c0 : * @retval : None @@ -5578,7 +5578,7 @@ HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, ui 8001e2c: 40021000 .word 0x40021000 8001e30: 00001388 .word 0x00001388 8001e34: fffff8ff .word 0xfffff8ff - 8001e38: 0800311c .word 0x0800311c + 8001e38: 08003158 .word 0x08003158 8001e3c: 20000000 .word 0x20000000 08001e40 : @@ -5726,8 +5726,8 @@ uint32_t HAL_RCC_GetSysClockFreq(void) 8001ef2: b00f add sp, #60 ; 0x3c 8001ef4: bd90 pop {r4, r7, pc} 8001ef6: 46c0 nop ; (mov r8, r8) - 8001ef8: 080030fc .word 0x080030fc - 8001efc: 0800310c .word 0x0800310c + 8001ef8: 08003130 .word 0x08003130 + 8001efc: 08003140 .word 0x08003140 8001f00: 40021000 .word 0x40021000 8001f04: 007a1200 .word 0x007a1200 @@ -6043,2543 +6043,2578 @@ void WriteCommandHT1621(unsigned char FunctonCode) 80020d4: b004 add sp, #16 80020d6: bd80 pop {r7, pc} -080020d8 : - * @param Addr->写入ram的地址 - * @param Databuf->写入ram的数据 +080020d8 : + * @param Databuf->写入ram的数据buffer + * @param Cnt->写入ram的数据个数 * @retval None */ -void Write1DataHT1621(unsigned char Addr,unsigned char Dat) +void WritenDataHT1621(unsigned char Addr,unsigned char *Databuf,unsigned char Cnt) { 80020d8: b580 push {r7, lr} 80020da: b084 sub sp, #16 80020dc: af00 add r7, sp, #0 - 80020de: 0002 movs r2, r0 - 80020e0: 1dfb adds r3, r7, #7 - 80020e2: 701a strb r2, [r3, #0] - 80020e4: 1dbb adds r3, r7, #6 - 80020e6: 1c0a adds r2, r1, #0 - 80020e8: 701a strb r2, [r3, #0] - unsigned char i; + 80020de: 6039 str r1, [r7, #0] + 80020e0: 0011 movs r1, r2 + 80020e2: 1dfb adds r3, r7, #7 + 80020e4: 1c02 adds r2, r0, #0 + 80020e6: 701a strb r2, [r3, #0] + 80020e8: 1dbb adds r3, r7, #6 + 80020ea: 1c0a adds r2, r1, #0 + 80020ec: 701a strb r2, [r3, #0] + unsigned char i,j; unsigned char Shift; - HC595_RCK(0); //CS 片选开 - 80020ea: 2390 movs r3, #144 ; 0x90 - 80020ec: 05db lsls r3, r3, #23 - 80020ee: 2200 movs r2, #0 - 80020f0: 2180 movs r1, #128 ; 0x80 - 80020f2: 0018 movs r0, r3 - 80020f4: f7ff fa9e bl 8001634 - HC595_DCK(1); //101 - 80020f8: 2390 movs r3, #144 ; 0x90 - 80020fa: 05db lsls r3, r3, #23 - 80020fc: 2201 movs r2, #1 - 80020fe: 2120 movs r1, #32 - 8002100: 0018 movs r0, r3 - 8002102: f7ff fa97 bl 8001634 + unsigned char dataval; + HC595_RCK(0); //CS 片选开 + 80020ee: 2390 movs r3, #144 ; 0x90 + 80020f0: 05db lsls r3, r3, #23 + 80020f2: 2200 movs r2, #0 + 80020f4: 2180 movs r1, #128 ; 0x80 + 80020f6: 0018 movs r0, r3 + 80020f8: f7ff fa9c bl 8001634 + HC595_DCK(1); //101 + 80020fc: 2390 movs r3, #144 ; 0x90 + 80020fe: 05db lsls r3, r3, #23 + 8002100: 2201 movs r2, #1 + 8002102: 2120 movs r1, #32 + 8002104: 0018 movs r0, r3 + 8002106: f7ff fa95 bl 8001634 WriteClockHT1621(); - 8002106: f7ff ff5d bl 8001fc4 + 800210a: f7ff ff5b bl 8001fc4 HC595_DCK(0); - 800210a: 2390 movs r3, #144 ; 0x90 - 800210c: 05db lsls r3, r3, #23 - 800210e: 2200 movs r2, #0 - 8002110: 2120 movs r1, #32 - 8002112: 0018 movs r0, r3 - 8002114: f7ff fa8e bl 8001634 + 800210e: 2390 movs r3, #144 ; 0x90 + 8002110: 05db lsls r3, r3, #23 + 8002112: 2200 movs r2, #0 + 8002114: 2120 movs r1, #32 + 8002116: 0018 movs r0, r3 + 8002118: f7ff fa8c bl 8001634 WriteClockHT1621(); - 8002118: f7ff ff54 bl 8001fc4 + 800211c: f7ff ff52 bl 8001fc4 HC595_DCK(1); - 800211c: 2390 movs r3, #144 ; 0x90 - 800211e: 05db lsls r3, r3, #23 - 8002120: 2201 movs r2, #1 - 8002122: 2120 movs r1, #32 - 8002124: 0018 movs r0, r3 - 8002126: f7ff fa85 bl 8001634 + 8002120: 2390 movs r3, #144 ; 0x90 + 8002122: 05db lsls r3, r3, #23 + 8002124: 2201 movs r2, #1 + 8002126: 2120 movs r1, #32 + 8002128: 0018 movs r0, r3 + 800212a: f7ff fa83 bl 8001634 WriteClockHT1621(); - 800212a: f7ff ff4b bl 8001fc4 + 800212e: f7ff ff49 bl 8001fc4 Shift = 0x20; //屏蔽高3位 只用5位 - 800212e: 230e movs r3, #14 - 8002130: 18fb adds r3, r7, r3 - 8002132: 2220 movs r2, #32 - 8002134: 701a strb r2, [r3, #0] + 8002132: 230d movs r3, #13 + 8002134: 18fb adds r3, r7, r3 + 8002136: 2220 movs r2, #32 + 8002138: 701a strb r2, [r3, #0] for( i = 0; i < HT1621_addrbit; i++) - 8002136: 230f movs r3, #15 - 8002138: 18fb adds r3, r7, r3 - 800213a: 2200 movs r2, #0 - 800213c: 701a strb r2, [r3, #0] - 800213e: e025 b.n 800218c + 800213a: 230f movs r3, #15 + 800213c: 18fb adds r3, r7, r3 + 800213e: 2200 movs r2, #0 + 8002140: 701a strb r2, [r3, #0] + 8002142: e025 b.n 8002190 { - if(Addr & Shift) - 8002140: 1dfb adds r3, r7, #7 - 8002142: 220e movs r2, #14 - 8002144: 18ba adds r2, r7, r2 - 8002146: 781b ldrb r3, [r3, #0] - 8002148: 7812 ldrb r2, [r2, #0] - 800214a: 4013 ands r3, r2 - 800214c: b2db uxtb r3, r3 - 800214e: 2b00 cmp r3, #0 - 8002150: d007 beq.n 8002162 + if (Addr & Shift) + 8002144: 1dfb adds r3, r7, #7 + 8002146: 220d movs r2, #13 + 8002148: 18ba adds r2, r7, r2 + 800214a: 781b ldrb r3, [r3, #0] + 800214c: 7812 ldrb r2, [r2, #0] + 800214e: 4013 ands r3, r2 + 8002150: b2db uxtb r3, r3 + 8002152: 2b00 cmp r3, #0 + 8002154: d007 beq.n 8002166 {HC595_DCK(1);} - 8002152: 2390 movs r3, #144 ; 0x90 - 8002154: 05db lsls r3, r3, #23 - 8002156: 2201 movs r2, #1 - 8002158: 2120 movs r1, #32 - 800215a: 0018 movs r0, r3 - 800215c: f7ff fa6a bl 8001634 - 8002160: e006 b.n 8002170 + 8002156: 2390 movs r3, #144 ; 0x90 + 8002158: 05db lsls r3, r3, #23 + 800215a: 2201 movs r2, #1 + 800215c: 2120 movs r1, #32 + 800215e: 0018 movs r0, r3 + 8002160: f7ff fa68 bl 8001634 + 8002164: e006 b.n 8002174 else {HC595_DCK(0);} - 8002162: 2390 movs r3, #144 ; 0x90 - 8002164: 05db lsls r3, r3, #23 - 8002166: 2200 movs r2, #0 - 8002168: 2120 movs r1, #32 - 800216a: 0018 movs r0, r3 - 800216c: f7ff fa62 bl 8001634 + 8002166: 2390 movs r3, #144 ; 0x90 + 8002168: 05db lsls r3, r3, #23 + 800216a: 2200 movs r2, #0 + 800216c: 2120 movs r1, #32 + 800216e: 0018 movs r0, r3 + 8002170: f7ff fa60 bl 8001634 WriteClockHT1621(); - 8002170: f7ff ff28 bl 8001fc4 + 8002174: f7ff ff26 bl 8001fc4 Shift = Shift >> 1; - 8002174: 220e movs r2, #14 - 8002176: 18bb adds r3, r7, r2 - 8002178: 18ba adds r2, r7, r2 - 800217a: 7812 ldrb r2, [r2, #0] - 800217c: 0852 lsrs r2, r2, #1 - 800217e: 701a strb r2, [r3, #0] + 8002178: 220d movs r2, #13 + 800217a: 18bb adds r3, r7, r2 + 800217c: 18ba adds r2, r7, r2 + 800217e: 7812 ldrb r2, [r2, #0] + 8002180: 0852 lsrs r2, r2, #1 + 8002182: 701a strb r2, [r3, #0] for( i = 0; i < HT1621_addrbit; i++) - 8002180: 210f movs r1, #15 - 8002182: 187b adds r3, r7, r1 - 8002184: 781a ldrb r2, [r3, #0] + 8002184: 210f movs r1, #15 8002186: 187b adds r3, r7, r1 - 8002188: 3201 adds r2, #1 - 800218a: 701a strb r2, [r3, #0] - 800218c: 210f movs r1, #15 - 800218e: 187b adds r3, r7, r1 - 8002190: 781b ldrb r3, [r3, #0] - 8002192: 2b05 cmp r3, #5 - 8002194: d9d4 bls.n 8002140 + 8002188: 781a ldrb r2, [r3, #0] + 800218a: 187b adds r3, r7, r1 + 800218c: 3201 adds r2, #1 + 800218e: 701a strb r2, [r3, #0] + 8002190: 230f movs r3, #15 + 8002192: 18fb adds r3, r7, r3 + 8002194: 781b ldrb r3, [r3, #0] + 8002196: 2b05 cmp r3, #5 + 8002198: d9d4 bls.n 8002144 } - - Shift = 0x01; - 8002196: 230e movs r3, #14 - 8002198: 18fb adds r3, r7, r3 - 800219a: 2201 movs r2, #1 - 800219c: 701a strb r2, [r3, #0] - for (i = 0; i < 4; i++) - 800219e: 187b adds r3, r7, r1 - 80021a0: 2200 movs r2, #0 - 80021a2: 701a strb r2, [r3, #0] - 80021a4: e025 b.n 80021f2 + for (j = 0; j < Cnt; j++) + 800219a: 230e movs r3, #14 + 800219c: 18fb adds r3, r7, r3 + 800219e: 2200 movs r2, #0 + 80021a0: 701a strb r2, [r3, #0] + 80021a2: e041 b.n 8002228 { - if( Dat & Shift) - 80021a6: 1dbb adds r3, r7, #6 - 80021a8: 220e movs r2, #14 - 80021aa: 18ba adds r2, r7, r2 - 80021ac: 781b ldrb r3, [r3, #0] - 80021ae: 7812 ldrb r2, [r2, #0] - 80021b0: 4013 ands r3, r2 - 80021b2: b2db uxtb r3, r3 - 80021b4: 2b00 cmp r3, #0 - 80021b6: d007 beq.n 80021c8 - {HC595_DCK(1);} - 80021b8: 2390 movs r3, #144 ; 0x90 - 80021ba: 05db lsls r3, r3, #23 - 80021bc: 2201 movs r2, #1 - 80021be: 2120 movs r1, #32 - 80021c0: 0018 movs r0, r3 - 80021c2: f7ff fa37 bl 8001634 - 80021c6: e006 b.n 80021d6 - else - {HC595_DCK(0);} - 80021c8: 2390 movs r3, #144 ; 0x90 - 80021ca: 05db lsls r3, r3, #23 - 80021cc: 2200 movs r2, #0 - 80021ce: 2120 movs r1, #32 - 80021d0: 0018 movs r0, r3 - 80021d2: f7ff fa2f bl 8001634 - WriteClockHT1621(); - 80021d6: f7ff fef5 bl 8001fc4 - Shift = Shift << 1; - 80021da: 230e movs r3, #14 - 80021dc: 18fa adds r2, r7, r3 - 80021de: 18fb adds r3, r7, r3 - 80021e0: 781b ldrb r3, [r3, #0] - 80021e2: 18db adds r3, r3, r3 - 80021e4: 7013 strb r3, [r2, #0] - for (i = 0; i < 4; i++) - 80021e6: 210f movs r1, #15 - 80021e8: 187b adds r3, r7, r1 - 80021ea: 781a ldrb r2, [r3, #0] - 80021ec: 187b adds r3, r7, r1 - 80021ee: 3201 adds r2, #1 - 80021f0: 701a strb r2, [r3, #0] - 80021f2: 230f movs r3, #15 - 80021f4: 18fb adds r3, r7, r3 - 80021f6: 781b ldrb r3, [r3, #0] - 80021f8: 2b03 cmp r3, #3 - 80021fa: d9d4 bls.n 80021a6 + Shift = 0x01; + 80021a4: 230d movs r3, #13 + 80021a6: 18fb adds r3, r7, r3 + 80021a8: 2201 movs r2, #1 + 80021aa: 701a strb r2, [r3, #0] + dataval=*Databuf++; + 80021ac: 683b ldr r3, [r7, #0] + 80021ae: 1c5a adds r2, r3, #1 + 80021b0: 603a str r2, [r7, #0] + 80021b2: 220c movs r2, #12 + 80021b4: 18ba adds r2, r7, r2 + 80021b6: 781b ldrb r3, [r3, #0] + 80021b8: 7013 strb r3, [r2, #0] + for (i = 0; i < 4; i++) + 80021ba: 230f movs r3, #15 + 80021bc: 18fb adds r3, r7, r3 + 80021be: 2200 movs r2, #0 + 80021c0: 701a strb r2, [r3, #0] + 80021c2: e026 b.n 8002212 + { + if( dataval & Shift) + 80021c4: 230c movs r3, #12 + 80021c6: 18fb adds r3, r7, r3 + 80021c8: 220d movs r2, #13 + 80021ca: 18ba adds r2, r7, r2 + 80021cc: 781b ldrb r3, [r3, #0] + 80021ce: 7812 ldrb r2, [r2, #0] + 80021d0: 4013 ands r3, r2 + 80021d2: b2db uxtb r3, r3 + 80021d4: 2b00 cmp r3, #0 + 80021d6: d007 beq.n 80021e8 + {HC595_DCK(1);} + 80021d8: 2390 movs r3, #144 ; 0x90 + 80021da: 05db lsls r3, r3, #23 + 80021dc: 2201 movs r2, #1 + 80021de: 2120 movs r1, #32 + 80021e0: 0018 movs r0, r3 + 80021e2: f7ff fa27 bl 8001634 + 80021e6: e006 b.n 80021f6 + else + {HC595_DCK(0);} + 80021e8: 2390 movs r3, #144 ; 0x90 + 80021ea: 05db lsls r3, r3, #23 + 80021ec: 2200 movs r2, #0 + 80021ee: 2120 movs r1, #32 + 80021f0: 0018 movs r0, r3 + 80021f2: f7ff fa1f bl 8001634 + WriteClockHT1621(); + 80021f6: f7ff fee5 bl 8001fc4 + Shift = Shift << 1; + 80021fa: 230d movs r3, #13 + 80021fc: 18fa adds r2, r7, r3 + 80021fe: 18fb adds r3, r7, r3 + 8002200: 781b ldrb r3, [r3, #0] + 8002202: 18db adds r3, r3, r3 + 8002204: 7013 strb r3, [r2, #0] + for (i = 0; i < 4; i++) + 8002206: 210f movs r1, #15 + 8002208: 187b adds r3, r7, r1 + 800220a: 781a ldrb r2, [r3, #0] + 800220c: 187b adds r3, r7, r1 + 800220e: 3201 adds r2, #1 + 8002210: 701a strb r2, [r3, #0] + 8002212: 230f movs r3, #15 + 8002214: 18fb adds r3, r7, r3 + 8002216: 781b ldrb r3, [r3, #0] + 8002218: 2b03 cmp r3, #3 + 800221a: d9d3 bls.n 80021c4 + for (j = 0; j < Cnt; j++) + 800221c: 210e movs r1, #14 + 800221e: 187b adds r3, r7, r1 + 8002220: 781a ldrb r2, [r3, #0] + 8002222: 187b adds r3, r7, r1 + 8002224: 3201 adds r2, #1 + 8002226: 701a strb r2, [r3, #0] + 8002228: 230e movs r3, #14 + 800222a: 18fa adds r2, r7, r3 + 800222c: 1dbb adds r3, r7, #6 + 800222e: 7812 ldrb r2, [r2, #0] + 8002230: 781b ldrb r3, [r3, #0] + 8002232: 429a cmp r2, r3 + 8002234: d3b6 bcc.n 80021a4 + } } - HC595_RCK(1); //CS 片选关 - 80021fc: 2390 movs r3, #144 ; 0x90 - 80021fe: 05db lsls r3, r3, #23 - 8002200: 2201 movs r2, #1 - 8002202: 2180 movs r1, #128 ; 0x80 - 8002204: 0018 movs r0, r3 - 8002206: f7ff fa15 bl 8001634 + HC595_RCK(1); //CS 片选关 + 8002236: 2390 movs r3, #144 ; 0x90 + 8002238: 05db lsls r3, r3, #23 + 800223a: 2201 movs r2, #1 + 800223c: 2180 movs r1, #128 ; 0x80 + 800223e: 0018 movs r0, r3 + 8002240: f7ff f9f8 bl 8001634 HC595_DCK(1); - 800220a: 2390 movs r3, #144 ; 0x90 - 800220c: 05db lsls r3, r3, #23 - 800220e: 2201 movs r2, #1 - 8002210: 2120 movs r1, #32 - 8002212: 0018 movs r0, r3 - 8002214: f7ff fa0e bl 8001634 + 8002244: 2390 movs r3, #144 ; 0x90 + 8002246: 05db lsls r3, r3, #23 + 8002248: 2201 movs r2, #1 + 800224a: 2120 movs r1, #32 + 800224c: 0018 movs r0, r3 + 800224e: f7ff f9f1 bl 8001634 } - 8002218: 46c0 nop ; (mov r8, r8) - 800221a: 46bd mov sp, r7 - 800221c: b004 add sp, #16 - 800221e: bd80 pop {r7, pc} + 8002252: 46c0 nop ; (mov r8, r8) + 8002254: 46bd mov sp, r7 + 8002256: b004 add sp, #16 + 8002258: bd80 pop {r7, pc} -08002220 : -#define LCD_F 0x20 -#define LCD_G 0x40 -#define LCD_P 0x80 - -void HT1621_num_init(void) -{ - 8002220: b580 push {r7, lr} - 8002222: b082 sub sp, #8 - 8002224: af00 add r7, sp, #0 - unsigned char num,LCD_data; - - for(num=0; num - { - LCD_data = 0; - 800222e: 1dbb adds r3, r7, #6 - 8002230: 2200 movs r2, #0 - 8002232: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_P)) << 7); - 8002234: 1dbb adds r3, r7, #6 - 8002236: 1dba adds r2, r7, #6 - 8002238: 7812 ldrb r2, [r2, #0] - 800223a: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_E)) << 6); - 800223c: 1dbb adds r3, r7, #6 - 800223e: 1dba adds r2, r7, #6 - 8002240: 7812 ldrb r2, [r2, #0] - 8002242: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_F)) << 5); - 8002244: 1dbb adds r3, r7, #6 - 8002246: 1dba adds r2, r7, #6 - 8002248: 7812 ldrb r2, [r2, #0] - 800224a: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_A)) << 4); - 800224c: 1dfb adds r3, r7, #7 - 800224e: 781b ldrb r3, [r3, #0] - 8002250: 4a30 ldr r2, [pc, #192] ; (8002314 ) - 8002252: 5cd3 ldrb r3, [r2, r3] - 8002254: 011b lsls r3, r3, #4 - 8002256: b25b sxtb r3, r3 - 8002258: 2210 movs r2, #16 - 800225a: 4013 ands r3, r2 - 800225c: b25a sxtb r2, r3 - 800225e: 1dbb adds r3, r7, #6 - 8002260: 781b ldrb r3, [r3, #0] - 8002262: b25b sxtb r3, r3 - 8002264: 4313 orrs r3, r2 - 8002266: b25a sxtb r2, r3 - 8002268: 1dbb adds r3, r7, #6 - 800226a: 701a strb r2, [r3, #0] - - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_D)) << 3); - 800226c: 1dfb adds r3, r7, #7 - 800226e: 781b ldrb r3, [r3, #0] - 8002270: 4a28 ldr r2, [pc, #160] ; (8002314 ) - 8002272: 5cd3 ldrb r3, [r2, r3] - 8002274: 00db lsls r3, r3, #3 - 8002276: b25b sxtb r3, r3 - 8002278: 2240 movs r2, #64 ; 0x40 - 800227a: 4013 ands r3, r2 - 800227c: b25a sxtb r2, r3 - 800227e: 1dbb adds r3, r7, #6 - 8002280: 781b ldrb r3, [r3, #0] - 8002282: b25b sxtb r3, r3 - 8002284: 4313 orrs r3, r2 - 8002286: b25a sxtb r2, r3 - 8002288: 1dbb adds r3, r7, #6 - 800228a: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_C)) << 2); - 800228c: 1dfb adds r3, r7, #7 - 800228e: 781b ldrb r3, [r3, #0] - 8002290: 4a20 ldr r2, [pc, #128] ; (8002314 ) - 8002292: 5cd3 ldrb r3, [r2, r3] - 8002294: 009b lsls r3, r3, #2 - 8002296: b25b sxtb r3, r3 - 8002298: 2210 movs r2, #16 - 800229a: 4013 ands r3, r2 - 800229c: b25a sxtb r2, r3 - 800229e: 1dbb adds r3, r7, #6 - 80022a0: 781b ldrb r3, [r3, #0] - 80022a2: b25b sxtb r3, r3 - 80022a4: 4313 orrs r3, r2 - 80022a6: b25a sxtb r2, r3 - 80022a8: 1dbb adds r3, r7, #6 - 80022aa: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_G)) << 1); - 80022ac: 1dfb adds r3, r7, #7 - 80022ae: 781b ldrb r3, [r3, #0] - 80022b0: 4a18 ldr r2, [pc, #96] ; (8002314 ) - 80022b2: 5cd3 ldrb r3, [r2, r3] - 80022b4: 005b lsls r3, r3, #1 - 80022b6: b25b sxtb r3, r3 - 80022b8: 227f movs r2, #127 ; 0x7f - 80022ba: 4393 bics r3, r2 - 80022bc: b25a sxtb r2, r3 - 80022be: 1dbb adds r3, r7, #6 - 80022c0: 781b ldrb r3, [r3, #0] - 80022c2: b25b sxtb r3, r3 - 80022c4: 4313 orrs r3, r2 - 80022c6: b25a sxtb r2, r3 - 80022c8: 1dbb adds r3, r7, #6 - 80022ca: 701a strb r2, [r3, #0] - LCD_data = LCD_data | ((unsigned char)((char)(LED_Tab[num] & LCD_B)) << 0); - 80022cc: 1dfb adds r3, r7, #7 - 80022ce: 781b ldrb r3, [r3, #0] - 80022d0: 4a10 ldr r2, [pc, #64] ; (8002314 ) - 80022d2: 5cd3 ldrb r3, [r2, r3] - 80022d4: b25b sxtb r3, r3 - 80022d6: 2202 movs r2, #2 - 80022d8: 4013 ands r3, r2 - 80022da: b25a sxtb r2, r3 - 80022dc: 1dbb adds r3, r7, #6 - 80022de: 781b ldrb r3, [r3, #0] - 80022e0: b25b sxtb r3, r3 - 80022e2: 4313 orrs r3, r2 - 80022e4: b25a sxtb r2, r3 - 80022e6: 1dbb adds r3, r7, #6 - 80022e8: 701a strb r2, [r3, #0] - - LCD_RAM_Tab[num] = LCD_data; - 80022ea: 1dfb adds r3, r7, #7 - 80022ec: 781b ldrb r3, [r3, #0] - 80022ee: 4a0a ldr r2, [pc, #40] ; (8002318 ) - 80022f0: 1db9 adds r1, r7, #6 - 80022f2: 7809 ldrb r1, [r1, #0] - 80022f4: 54d1 strb r1, [r2, r3] - for(num=0; num - } -} - 8002308: 46c0 nop ; (mov r8, r8) - 800230a: 46c0 nop ; (mov r8, r8) - 800230c: 46bd mov sp, r7 - 800230e: b002 add sp, #8 - 8002310: bd80 pop {r7, pc} - 8002312: 46c0 nop ; (mov r8, r8) - 8002314: 0800312c .word 0x0800312c - 8002318: 20000078 .word 0x20000078 - -0800231c : +0800225a : * @brief HT1621 Init * @param None * @retval None */ void HT1621_Init(void) //退出掉电低功耗状态重新初始化HT1621 { - 800231c: b580 push {r7, lr} - 800231e: af00 add r7, sp, #0 + 800225a: b580 push {r7, lr} + 800225c: af00 add r7, sp, #0 HC595_RCK(1); - 8002320: 2390 movs r3, #144 ; 0x90 - 8002322: 05db lsls r3, r3, #23 - 8002324: 2201 movs r2, #1 - 8002326: 2180 movs r1, #128 ; 0x80 - 8002328: 0018 movs r0, r3 - 800232a: f7ff f983 bl 8001634 + 800225e: 2390 movs r3, #144 ; 0x90 + 8002260: 05db lsls r3, r3, #23 + 8002262: 2201 movs r2, #1 + 8002264: 2180 movs r1, #128 ; 0x80 + 8002266: 0018 movs r0, r3 + 8002268: f7ff f9e4 bl 8001634 HC595_SCK(1); - 800232e: 2390 movs r3, #144 ; 0x90 - 8002330: 05db lsls r3, r3, #23 - 8002332: 2201 movs r2, #1 - 8002334: 2140 movs r1, #64 ; 0x40 - 8002336: 0018 movs r0, r3 - 8002338: f7ff f97c bl 8001634 + 800226c: 2390 movs r3, #144 ; 0x90 + 800226e: 05db lsls r3, r3, #23 + 8002270: 2201 movs r2, #1 + 8002272: 2140 movs r1, #64 ; 0x40 + 8002274: 0018 movs r0, r3 + 8002276: f7ff f9dd bl 8001634 HC595_DCK(1); - 800233c: 2390 movs r3, #144 ; 0x90 - 800233e: 05db lsls r3, r3, #23 - 8002340: 2201 movs r2, #1 - 8002342: 2120 movs r1, #32 - 8002344: 0018 movs r0, r3 - 8002346: f7ff f975 bl 8001634 + 800227a: 2390 movs r3, #144 ; 0x90 + 800227c: 05db lsls r3, r3, #23 + 800227e: 2201 movs r2, #1 + 8002280: 2120 movs r1, #32 + 8002282: 0018 movs r0, r3 + 8002284: f7ff f9d6 bl 8001634 WriteCommandHT1621(OSC_ON); - 800234a: 2001 movs r0, #1 - 800234c: f7ff fe4d bl 8001fea + 8002288: 2001 movs r0, #1 + 800228a: f7ff feae bl 8001fea WriteCommandHT1621(DISP_ON); - 8002350: 2003 movs r0, #3 - 8002352: f7ff fe4a bl 8001fea + 800228e: 2003 movs r0, #3 + 8002290: f7ff feab bl 8001fea WriteCommandHT1621(COM_1_3__4); - 8002356: 2029 movs r0, #41 ; 0x29 - 8002358: f7ff fe47 bl 8001fea + 8002294: 2029 movs r0, #41 ; 0x29 + 8002296: f7ff fea8 bl 8001fea //上电默认配置(以下未用功能关闭降低功耗) WriteCommandHT1621(TIMER_DIS); - 800235c: 2004 movs r0, #4 - 800235e: f7ff fe44 bl 8001fea + 800229a: 2004 movs r0, #4 + 800229c: f7ff fea5 bl 8001fea WriteCommandHT1621(WDT_DIS); - 8002362: 2005 movs r0, #5 - 8002364: f7ff fe41 bl 8001fea + 80022a0: 2005 movs r0, #5 + 80022a2: f7ff fea2 bl 8001fea WriteCommandHT1621(BUZZ_OFF); - 8002368: 2008 movs r0, #8 - 800236a: f7ff fe3e bl 8001fea + 80022a6: 2008 movs r0, #8 + 80022a8: f7ff fe9f bl 8001fea WriteCommandHT1621(IRQ_DIS); - 800236e: 2080 movs r0, #128 ; 0x80 - 8002370: f7ff fe3b bl 8001fea - - HT1621_num_init(); //自动生成液晶屏需要的数组 - 8002374: f7ff ff54 bl 8002220 -} - 8002378: 46c0 nop ; (mov r8, r8) - 800237a: 46bd mov sp, r7 - 800237c: bd80 pop {r7, pc} - -0800237e : - * @param None - * @retval None - */ - -void HT1621_Display(void) -{ - 800237e: b580 push {r7, lr} - 8002380: af00 add r7, sp, #0 - - Write1DataHT1621(0,0x00); - 8002382: 2100 movs r1, #0 - 8002384: 2000 movs r0, #0 - 8002386: f7ff fea7 bl 80020d8 - Write1DataHT1621(1,0x00); - 800238a: 2100 movs r1, #0 - 800238c: 2001 movs r0, #1 - 800238e: f7ff fea3 bl 80020d8 - Write1DataHT1621(2,0x00); - 8002392: 2100 movs r1, #0 - 8002394: 2002 movs r0, #2 - 8002396: f7ff fe9f bl 80020d8 - Write1DataHT1621(3,0x00); - 800239a: 2100 movs r1, #0 - 800239c: 2003 movs r0, #3 - 800239e: f7ff fe9b bl 80020d8 - Write1DataHT1621(4,0x00); - 80023a2: 2100 movs r1, #0 - 80023a4: 2004 movs r0, #4 - 80023a6: f7ff fe97 bl 80020d8 - Write1DataHT1621(5,0x00); - 80023aa: 2100 movs r1, #0 - 80023ac: 2005 movs r0, #5 - 80023ae: f7ff fe93 bl 80020d8 - Write1DataHT1621(6,0x00); - 80023b2: 2100 movs r1, #0 - 80023b4: 2006 movs r0, #6 - 80023b6: f7ff fe8f bl 80020d8 - Write1DataHT1621(7,0x00); - 80023ba: 2100 movs r1, #0 - 80023bc: 2007 movs r0, #7 - 80023be: f7ff fe8b bl 80020d8 + 80022ac: 2080 movs r0, #128 ; 0x80 + 80022ae: f7ff fe9c bl 8001fea } - 80023c2: 46c0 nop ; (mov r8, r8) - 80023c4: 46bd mov sp, r7 - 80023c6: bd80 pop {r7, pc} + 80022b2: 46c0 nop ; (mov r8, r8) + 80022b4: 46bd mov sp, r7 + 80022b6: bd80 pop {r7, pc} -080023c8 : +080022b8 : char moto2b_; }moto; void ds_in_or_out(char a)//change the io function { - 80023c8: b590 push {r4, r7, lr} - 80023ca: b089 sub sp, #36 ; 0x24 - 80023cc: af00 add r7, sp, #0 - 80023ce: 0002 movs r2, r0 - 80023d0: 1dfb adds r3, r7, #7 - 80023d2: 701a strb r2, [r3, #0] + 80022b8: b590 push {r4, r7, lr} + 80022ba: b089 sub sp, #36 ; 0x24 + 80022bc: af00 add r7, sp, #0 + 80022be: 0002 movs r2, r0 + 80022c0: 1dfb adds r3, r7, #7 + 80022c2: 701a strb r2, [r3, #0] GPIO_InitTypeDef GPIO_InitStruct = {0}; - 80023d4: 240c movs r4, #12 - 80023d6: 193b adds r3, r7, r4 - 80023d8: 0018 movs r0, r3 - 80023da: 2314 movs r3, #20 - 80023dc: 001a movs r2, r3 - 80023de: 2100 movs r1, #0 - 80023e0: f000 fe78 bl 80030d4 + 80022c4: 240c movs r4, #12 + 80022c6: 193b adds r3, r7, r4 + 80022c8: 0018 movs r0, r3 + 80022ca: 2314 movs r3, #20 + 80022cc: 001a movs r2, r3 + 80022ce: 2100 movs r1, #0 + 80022d0: f000 ff1a bl 8003108 GPIO_InitStruct.Pin = HC595_DLK_Pin; - 80023e4: 0021 movs r1, r4 - 80023e6: 187b adds r3, r7, r1 - 80023e8: 2220 movs r2, #32 - 80023ea: 601a str r2, [r3, #0] + 80022d4: 0021 movs r1, r4 + 80022d6: 187b adds r3, r7, r1 + 80022d8: 2220 movs r2, #32 + 80022da: 601a str r2, [r3, #0] GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; - 80023ec: 187b adds r3, r7, r1 - 80023ee: 2203 movs r2, #3 - 80023f0: 60da str r2, [r3, #12] + 80022dc: 187b adds r3, r7, r1 + 80022de: 2203 movs r2, #3 + 80022e0: 60da str r2, [r3, #12] if(a==0) - 80023f2: 1dfb adds r3, r7, #7 - 80023f4: 781b ldrb r3, [r3, #0] - 80023f6: 2b00 cmp r3, #0 - 80023f8: d105 bne.n 8002406 + 80022e2: 1dfb adds r3, r7, #7 + 80022e4: 781b ldrb r3, [r3, #0] + 80022e6: 2b00 cmp r3, #0 + 80022e8: d105 bne.n 80022f6 { GPIO_InitStruct.Pull = GPIO_PULLUP; - 80023fa: 187b adds r3, r7, r1 - 80023fc: 2201 movs r2, #1 - 80023fe: 609a str r2, [r3, #8] + 80022ea: 187b adds r3, r7, r1 + 80022ec: 2201 movs r2, #1 + 80022ee: 609a str r2, [r3, #8] GPIO_InitStruct.Mode = GPIO_MODE_INPUT; - 8002400: 187b adds r3, r7, r1 - 8002402: 2200 movs r2, #0 - 8002404: 605a str r2, [r3, #4] + 80022f0: 187b adds r3, r7, r1 + 80022f2: 2200 movs r2, #0 + 80022f4: 605a str r2, [r3, #4] } if(a==1) - 8002406: 1dfb adds r3, r7, #7 - 8002408: 781b ldrb r3, [r3, #0] - 800240a: 2b01 cmp r3, #1 - 800240c: d106 bne.n 800241c + 80022f6: 1dfb adds r3, r7, #7 + 80022f8: 781b ldrb r3, [r3, #0] + 80022fa: 2b01 cmp r3, #1 + 80022fc: d106 bne.n 800230c { GPIO_InitStruct.Pull = GPIO_NOPULL; - 800240e: 210c movs r1, #12 - 8002410: 187b adds r3, r7, r1 - 8002412: 2200 movs r2, #0 - 8002414: 609a str r2, [r3, #8] + 80022fe: 210c movs r1, #12 + 8002300: 187b adds r3, r7, r1 + 8002302: 2200 movs r2, #0 + 8002304: 609a str r2, [r3, #8] GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - 8002416: 187b adds r3, r7, r1 - 8002418: 2201 movs r2, #1 - 800241a: 605a str r2, [r3, #4] + 8002306: 187b adds r3, r7, r1 + 8002308: 2201 movs r2, #1 + 800230a: 605a str r2, [r3, #4] } HAL_GPIO_Init(HC595_DLK_GPIO_Port, &GPIO_InitStruct); - 800241c: 230c movs r3, #12 - 800241e: 18fa adds r2, r7, r3 - 8002420: 2390 movs r3, #144 ; 0x90 - 8002422: 05db lsls r3, r3, #23 - 8002424: 0011 movs r1, r2 - 8002426: 0018 movs r0, r3 - 8002428: f7fe ff94 bl 8001354 + 800230c: 230c movs r3, #12 + 800230e: 18fa adds r2, r7, r3 + 8002310: 2390 movs r3, #144 ; 0x90 + 8002312: 05db lsls r3, r3, #23 + 8002314: 0011 movs r1, r2 + 8002316: 0018 movs r0, r3 + 8002318: f7ff f81c bl 8001354 } - 800242c: 46c0 nop ; (mov r8, r8) - 800242e: 46bd mov sp, r7 - 8002430: b009 add sp, #36 ; 0x24 - 8002432: bd90 pop {r4, r7, pc} + 800231c: 46c0 nop ; (mov r8, r8) + 800231e: 46bd mov sp, r7 + 8002320: b009 add sp, #36 ; 0x24 + 8002322: bd90 pop {r4, r7, pc} -08002434 : - if(READ_HC595_DCK){return 0;}else{return 1;} +08002324 : //return READ_HC595_DCK; } +//send data to 959 void Sand_Byte_to_595_2(uint8_t h) { - 8002434: b580 push {r7, lr} - 8002436: b084 sub sp, #16 - 8002438: af00 add r7, sp, #0 - 800243a: 0002 movs r2, r0 - 800243c: 1dfb adds r3, r7, #7 - 800243e: 701a strb r2, [r3, #0] + 8002324: b580 push {r7, lr} + 8002326: b084 sub sp, #16 + 8002328: af00 add r7, sp, #0 + 800232a: 0002 movs r2, r0 + 800232c: 1dfb adds r3, r7, #7 + 800232e: 701a strb r2, [r3, #0] ds_in_or_out(1); - 8002440: 2001 movs r0, #1 - 8002442: f7ff ffc1 bl 80023c8 + 8002330: 2001 movs r0, #1 + 8002332: f7ff ffc1 bl 80022b8 HC595_DCK(0); - 8002446: 2390 movs r3, #144 ; 0x90 - 8002448: 05db lsls r3, r3, #23 - 800244a: 2200 movs r2, #0 - 800244c: 2120 movs r1, #32 - 800244e: 0018 movs r0, r3 - 8002450: f7ff f8f0 bl 8001634 + 8002336: 2390 movs r3, #144 ; 0x90 + 8002338: 05db lsls r3, r3, #23 + 800233a: 2200 movs r2, #0 + 800233c: 2120 movs r1, #32 + 800233e: 0018 movs r0, r3 + 8002340: f7ff f978 bl 8001634 HC595_SCK2(0); - 8002454: 2380 movs r3, #128 ; 0x80 - 8002456: 0099 lsls r1, r3, #2 - 8002458: 2390 movs r3, #144 ; 0x90 - 800245a: 05db lsls r3, r3, #23 - 800245c: 2200 movs r2, #0 - 800245e: 0018 movs r0, r3 - 8002460: f7ff f8e8 bl 8001634 + 8002344: 2380 movs r3, #128 ; 0x80 + 8002346: 0099 lsls r1, r3, #2 + 8002348: 2390 movs r3, #144 ; 0x90 + 800234a: 05db lsls r3, r3, #23 + 800234c: 2200 movs r2, #0 + 800234e: 0018 movs r0, r3 + 8002350: f7ff f970 bl 8001634 HC595_RCK(0); - 8002464: 2390 movs r3, #144 ; 0x90 - 8002466: 05db lsls r3, r3, #23 - 8002468: 2200 movs r2, #0 - 800246a: 2180 movs r1, #128 ; 0x80 - 800246c: 0018 movs r0, r3 - 800246e: f7ff f8e1 bl 8001634 + 8002354: 2390 movs r3, #144 ; 0x90 + 8002356: 05db lsls r3, r3, #23 + 8002358: 2200 movs r2, #0 + 800235a: 2180 movs r1, #128 ; 0x80 + 800235c: 0018 movs r0, r3 + 800235e: f7ff f969 bl 8001634 for(char a=0;a<8;a++) - 8002472: 230f movs r3, #15 - 8002474: 18fb adds r3, r7, r3 - 8002476: 2200 movs r2, #0 - 8002478: 701a strb r2, [r3, #0] - 800247a: e02e b.n 80024da + 8002362: 230f movs r3, #15 + 8002364: 18fb adds r3, r7, r3 + 8002366: 2200 movs r2, #0 + 8002368: 701a strb r2, [r3, #0] + 800236a: e02e b.n 80023ca { if((h< + 800236c: 1dfb adds r3, r7, #7 + 800236e: 781a ldrb r2, [r3, #0] + 8002370: 230f movs r3, #15 + 8002372: 18fb adds r3, r7, r3 + 8002374: 781b ldrb r3, [r3, #0] + 8002376: 409a lsls r2, r3 + 8002378: 0013 movs r3, r2 + 800237a: 2280 movs r2, #128 ; 0x80 + 800237c: 4013 ands r3, r2 + 800237e: d007 beq.n 8002390 { HC595_DCK(1); - 8002490: 2390 movs r3, #144 ; 0x90 - 8002492: 05db lsls r3, r3, #23 - 8002494: 2201 movs r2, #1 - 8002496: 2120 movs r1, #32 - 8002498: 0018 movs r0, r3 - 800249a: f7ff f8cb bl 8001634 - 800249e: e006 b.n 80024ae + 8002380: 2390 movs r3, #144 ; 0x90 + 8002382: 05db lsls r3, r3, #23 + 8002384: 2201 movs r2, #1 + 8002386: 2120 movs r1, #32 + 8002388: 0018 movs r0, r3 + 800238a: f7ff f953 bl 8001634 + 800238e: e006 b.n 800239e }else { HC595_DCK(0); - 80024a0: 2390 movs r3, #144 ; 0x90 - 80024a2: 05db lsls r3, r3, #23 - 80024a4: 2200 movs r2, #0 - 80024a6: 2120 movs r1, #32 - 80024a8: 0018 movs r0, r3 - 80024aa: f7ff f8c3 bl 8001634 + 8002390: 2390 movs r3, #144 ; 0x90 + 8002392: 05db lsls r3, r3, #23 + 8002394: 2200 movs r2, #0 + 8002396: 2120 movs r1, #32 + 8002398: 0018 movs r0, r3 + 800239a: f7ff f94b bl 8001634 } HC595_SCK2(1); - 80024ae: 2380 movs r3, #128 ; 0x80 - 80024b0: 0099 lsls r1, r3, #2 - 80024b2: 2390 movs r3, #144 ; 0x90 - 80024b4: 05db lsls r3, r3, #23 - 80024b6: 2201 movs r2, #1 - 80024b8: 0018 movs r0, r3 - 80024ba: f7ff f8bb bl 8001634 + 800239e: 2380 movs r3, #128 ; 0x80 + 80023a0: 0099 lsls r1, r3, #2 + 80023a2: 2390 movs r3, #144 ; 0x90 + 80023a4: 05db lsls r3, r3, #23 + 80023a6: 2201 movs r2, #1 + 80023a8: 0018 movs r0, r3 + 80023aa: f7ff f943 bl 8001634 HC595_SCK2(0); - 80024be: 2380 movs r3, #128 ; 0x80 - 80024c0: 0099 lsls r1, r3, #2 - 80024c2: 2390 movs r3, #144 ; 0x90 - 80024c4: 05db lsls r3, r3, #23 - 80024c6: 2200 movs r2, #0 - 80024c8: 0018 movs r0, r3 - 80024ca: f7ff f8b3 bl 8001634 + 80023ae: 2380 movs r3, #128 ; 0x80 + 80023b0: 0099 lsls r1, r3, #2 + 80023b2: 2390 movs r3, #144 ; 0x90 + 80023b4: 05db lsls r3, r3, #23 + 80023b6: 2200 movs r2, #0 + 80023b8: 0018 movs r0, r3 + 80023ba: f7ff f93b bl 8001634 for(char a=0;a<8;a++) - 80024ce: 210f movs r1, #15 - 80024d0: 187b adds r3, r7, r1 - 80024d2: 781a ldrb r2, [r3, #0] - 80024d4: 187b adds r3, r7, r1 - 80024d6: 3201 adds r2, #1 - 80024d8: 701a strb r2, [r3, #0] - 80024da: 230f movs r3, #15 - 80024dc: 18fb adds r3, r7, r3 - 80024de: 781b ldrb r3, [r3, #0] - 80024e0: 2b07 cmp r3, #7 - 80024e2: d9cb bls.n 800247c + 80023be: 210f movs r1, #15 + 80023c0: 187b adds r3, r7, r1 + 80023c2: 781a ldrb r2, [r3, #0] + 80023c4: 187b adds r3, r7, r1 + 80023c6: 3201 adds r2, #1 + 80023c8: 701a strb r2, [r3, #0] + 80023ca: 230f movs r3, #15 + 80023cc: 18fb adds r3, r7, r3 + 80023ce: 781b ldrb r3, [r3, #0] + 80023d0: 2b07 cmp r3, #7 + 80023d2: d9cb bls.n 800236c } HC595_RCK(1); - 80024e4: 2390 movs r3, #144 ; 0x90 - 80024e6: 05db lsls r3, r3, #23 - 80024e8: 2201 movs r2, #1 - 80024ea: 2180 movs r1, #128 ; 0x80 - 80024ec: 0018 movs r0, r3 - 80024ee: f7ff f8a1 bl 8001634 + 80023d4: 2390 movs r3, #144 ; 0x90 + 80023d6: 05db lsls r3, r3, #23 + 80023d8: 2201 movs r2, #1 + 80023da: 2180 movs r1, #128 ; 0x80 + 80023dc: 0018 movs r0, r3 + 80023de: f7ff f929 bl 8001634 HC595_RCK(0); - 80024f2: 2390 movs r3, #144 ; 0x90 - 80024f4: 05db lsls r3, r3, #23 - 80024f6: 2200 movs r2, #0 - 80024f8: 2180 movs r1, #128 ; 0x80 - 80024fa: 0018 movs r0, r3 - 80024fc: f7ff f89a bl 8001634 + 80023e2: 2390 movs r3, #144 ; 0x90 + 80023e4: 05db lsls r3, r3, #23 + 80023e6: 2200 movs r2, #0 + 80023e8: 2180 movs r1, #128 ; 0x80 + 80023ea: 0018 movs r0, r3 + 80023ec: f7ff f922 bl 8001634 } - 8002500: 46c0 nop ; (mov r8, r8) - 8002502: 46bd mov sp, r7 - 8002504: b004 add sp, #16 - 8002506: bd80 pop {r7, pc} - -08002508 : - + 80023f0: 46c0 nop ; (mov r8, r8) + 80023f2: 46bd mov sp, r7 + 80023f4: b004 add sp, #16 + 80023f6: bd80 pop {r7, pc} +080023f8 : void hc2_sever() { - 8002508: b580 push {r7, lr} - 800250a: b082 sub sp, #8 - 800250c: af00 add r7, sp, #0 + 80023f8: b580 push {r7, lr} + 80023fa: b082 sub sp, #8 + 80023fc: af00 add r7, sp, #0 char h=0; - 800250e: 1dfb adds r3, r7, #7 - 8002510: 2200 movs r2, #0 - 8002512: 701a strb r2, [r3, #0] + 80023fe: 1dfb adds r3, r7, #7 + 8002400: 2200 movs r2, #0 + 8002402: 701a strb r2, [r3, #0] if(dis_buff.led_run==1) - 8002514: 4b24 ldr r3, [pc, #144] ; (80025a8 ) - 8002516: 7a1b ldrb r3, [r3, #8] - 8002518: 2210 movs r2, #16 - 800251a: 4013 ands r3, r2 - 800251c: b2db uxtb r3, r3 - 800251e: 2b00 cmp r3, #0 - 8002520: d005 beq.n 800252e + 8002404: 4b24 ldr r3, [pc, #144] ; (8002498 ) + 8002406: 7a1b ldrb r3, [r3, #8] + 8002408: 2210 movs r2, #16 + 800240a: 4013 ands r3, r2 + 800240c: b2db uxtb r3, r3 + 800240e: 2b00 cmp r3, #0 + 8002410: d005 beq.n 800241e { h|=0x01; - 8002522: 1dfb adds r3, r7, #7 - 8002524: 1dfa adds r2, r7, #7 - 8002526: 7812 ldrb r2, [r2, #0] - 8002528: 2101 movs r1, #1 - 800252a: 430a orrs r2, r1 - 800252c: 701a strb r2, [r3, #0] + 8002412: 1dfb adds r3, r7, #7 + 8002414: 1dfa adds r2, r7, #7 + 8002416: 7812 ldrb r2, [r2, #0] + 8002418: 2101 movs r1, #1 + 800241a: 430a orrs r2, r1 + 800241c: 701a strb r2, [r3, #0] } if(dis_buff.moto1a==1) - 800252e: 4b1e ldr r3, [pc, #120] ; (80025a8 ) - 8002530: 7a1b ldrb r3, [r3, #8] - 8002532: 2220 movs r2, #32 - 8002534: 4013 ands r3, r2 - 8002536: b2db uxtb r3, r3 - 8002538: 2b00 cmp r3, #0 - 800253a: d005 beq.n 8002548 + 800241e: 4b1e ldr r3, [pc, #120] ; (8002498 ) + 8002420: 7a1b ldrb r3, [r3, #8] + 8002422: 2220 movs r2, #32 + 8002424: 4013 ands r3, r2 + 8002426: b2db uxtb r3, r3 + 8002428: 2b00 cmp r3, #0 + 800242a: d005 beq.n 8002438 { h|=0x02; - 800253c: 1dfb adds r3, r7, #7 - 800253e: 1dfa adds r2, r7, #7 - 8002540: 7812 ldrb r2, [r2, #0] - 8002542: 2102 movs r1, #2 - 8002544: 430a orrs r2, r1 - 8002546: 701a strb r2, [r3, #0] + 800242c: 1dfb adds r3, r7, #7 + 800242e: 1dfa adds r2, r7, #7 + 8002430: 7812 ldrb r2, [r2, #0] + 8002432: 2102 movs r1, #2 + 8002434: 430a orrs r2, r1 + 8002436: 701a strb r2, [r3, #0] } if(dis_buff.moto1b==1) - 8002548: 4b17 ldr r3, [pc, #92] ; (80025a8 ) - 800254a: 7a1b ldrb r3, [r3, #8] - 800254c: 2240 movs r2, #64 ; 0x40 - 800254e: 4013 ands r3, r2 - 8002550: b2db uxtb r3, r3 - 8002552: 2b00 cmp r3, #0 - 8002554: d005 beq.n 8002562 + 8002438: 4b17 ldr r3, [pc, #92] ; (8002498 ) + 800243a: 7a1b ldrb r3, [r3, #8] + 800243c: 2240 movs r2, #64 ; 0x40 + 800243e: 4013 ands r3, r2 + 8002440: b2db uxtb r3, r3 + 8002442: 2b00 cmp r3, #0 + 8002444: d005 beq.n 8002452 { h|=0x04; - 8002556: 1dfb adds r3, r7, #7 - 8002558: 1dfa adds r2, r7, #7 - 800255a: 7812 ldrb r2, [r2, #0] - 800255c: 2104 movs r1, #4 - 800255e: 430a orrs r2, r1 - 8002560: 701a strb r2, [r3, #0] + 8002446: 1dfb adds r3, r7, #7 + 8002448: 1dfa adds r2, r7, #7 + 800244a: 7812 ldrb r2, [r2, #0] + 800244c: 2104 movs r1, #4 + 800244e: 430a orrs r2, r1 + 8002450: 701a strb r2, [r3, #0] } if(dis_buff.moto2a==1) - 8002562: 4b11 ldr r3, [pc, #68] ; (80025a8 ) - 8002564: 7a1b ldrb r3, [r3, #8] - 8002566: 227f movs r2, #127 ; 0x7f - 8002568: 4393 bics r3, r2 - 800256a: b2db uxtb r3, r3 - 800256c: 2b00 cmp r3, #0 - 800256e: d005 beq.n 800257c + 8002452: 4b11 ldr r3, [pc, #68] ; (8002498 ) + 8002454: 7a1b ldrb r3, [r3, #8] + 8002456: 227f movs r2, #127 ; 0x7f + 8002458: 4393 bics r3, r2 + 800245a: b2db uxtb r3, r3 + 800245c: 2b00 cmp r3, #0 + 800245e: d005 beq.n 800246c { h|=0x08; - 8002570: 1dfb adds r3, r7, #7 - 8002572: 1dfa adds r2, r7, #7 - 8002574: 7812 ldrb r2, [r2, #0] - 8002576: 2108 movs r1, #8 - 8002578: 430a orrs r2, r1 - 800257a: 701a strb r2, [r3, #0] + 8002460: 1dfb adds r3, r7, #7 + 8002462: 1dfa adds r2, r7, #7 + 8002464: 7812 ldrb r2, [r2, #0] + 8002466: 2108 movs r1, #8 + 8002468: 430a orrs r2, r1 + 800246a: 701a strb r2, [r3, #0] } if(dis_buff.moto2b==1) - 800257c: 4b0a ldr r3, [pc, #40] ; (80025a8 ) - 800257e: 7a5b ldrb r3, [r3, #9] - 8002580: 2201 movs r2, #1 - 8002582: 4013 ands r3, r2 - 8002584: b2db uxtb r3, r3 - 8002586: 2b00 cmp r3, #0 - 8002588: d005 beq.n 8002596 + 800246c: 4b0a ldr r3, [pc, #40] ; (8002498 ) + 800246e: 7a5b ldrb r3, [r3, #9] + 8002470: 2201 movs r2, #1 + 8002472: 4013 ands r3, r2 + 8002474: b2db uxtb r3, r3 + 8002476: 2b00 cmp r3, #0 + 8002478: d005 beq.n 8002486 { h|=0x10; - 800258a: 1dfb adds r3, r7, #7 - 800258c: 1dfa adds r2, r7, #7 - 800258e: 7812 ldrb r2, [r2, #0] - 8002590: 2110 movs r1, #16 - 8002592: 430a orrs r2, r1 - 8002594: 701a strb r2, [r3, #0] + 800247a: 1dfb adds r3, r7, #7 + 800247c: 1dfa adds r2, r7, #7 + 800247e: 7812 ldrb r2, [r2, #0] + 8002480: 2110 movs r1, #16 + 8002482: 430a orrs r2, r1 + 8002484: 701a strb r2, [r3, #0] } Sand_Byte_to_595_2(h); - 8002596: 1dfb adds r3, r7, #7 - 8002598: 781b ldrb r3, [r3, #0] - 800259a: 0018 movs r0, r3 - 800259c: f7ff ff4a bl 8002434 + 8002486: 1dfb adds r3, r7, #7 + 8002488: 781b ldrb r3, [r3, #0] + 800248a: 0018 movs r0, r3 + 800248c: f7ff ff4a bl 8002324 } - 80025a0: 46c0 nop ; (mov r8, r8) - 80025a2: 46bd mov sp, r7 - 80025a4: b002 add sp, #8 - 80025a6: bd80 pop {r7, pc} - 80025a8: 20000028 .word 0x20000028 + 8002490: 46c0 nop ; (mov r8, r8) + 8002492: 46bd mov sp, r7 + 8002494: b002 add sp, #8 + 8002496: bd80 pop {r7, pc} + 8002498: 20000028 .word 0x20000028 -080025ac : +0800249c : +//motor cool start void moto_server() { - 80025ac: b580 push {r7, lr} - 80025ae: af00 add r7, sp, #0 + 800249c: b580 push {r7, lr} + 800249e: af00 add r7, sp, #0 if(HAL_GetTick()>moto.moto_run) - 80025b0: f7fe f962 bl 8000878 - 80025b4: 0002 movs r2, r0 - 80025b6: 4b6c ldr r3, [pc, #432] ; (8002768 ) - 80025b8: 681b ldr r3, [r3, #0] - 80025ba: 429a cmp r2, r3 - 80025bc: d800 bhi.n 80025c0 - 80025be: e07e b.n 80026be + 80024a0: f7fe f9ea bl 8000878 + 80024a4: 0002 movs r2, r0 + 80024a6: 4b6c ldr r3, [pc, #432] ; (8002658 ) + 80024a8: 681b ldr r3, [r3, #0] + 80024aa: 429a cmp r2, r3 + 80024ac: d800 bhi.n 80024b0 + 80024ae: e07e b.n 80025ae { moto.moto_run=HAL_GetTick()+10; - 80025c0: f7fe f95a bl 8000878 - 80025c4: 0003 movs r3, r0 - 80025c6: 330a adds r3, #10 - 80025c8: 001a movs r2, r3 - 80025ca: 4b67 ldr r3, [pc, #412] ; (8002768 ) - 80025cc: 601a str r2, [r3, #0] + 80024b0: f7fe f9e2 bl 8000878 + 80024b4: 0003 movs r3, r0 + 80024b6: 330a adds r3, #10 + 80024b8: 001a movs r2, r3 + 80024ba: 4b67 ldr r3, [pc, #412] ; (8002658 ) + 80024bc: 601a str r2, [r3, #0] if(moto.moto1a!=moto.moto1a_) - 80025ce: 4b66 ldr r3, [pc, #408] ; (8002768 ) - 80025d0: 7a1a ldrb r2, [r3, #8] - 80025d2: 4b65 ldr r3, [pc, #404] ; (8002768 ) - 80025d4: 7b1b ldrb r3, [r3, #12] - 80025d6: 429a cmp r2, r3 - 80025d8: d017 beq.n 800260a + 80024be: 4b66 ldr r3, [pc, #408] ; (8002658 ) + 80024c0: 7a1a ldrb r2, [r3, #8] + 80024c2: 4b65 ldr r3, [pc, #404] ; (8002658 ) + 80024c4: 7b1b ldrb r3, [r3, #12] + 80024c6: 429a cmp r2, r3 + 80024c8: d017 beq.n 80024fa { if(moto.moto1a>moto.moto1a_) - 80025da: 4b63 ldr r3, [pc, #396] ; (8002768 ) - 80025dc: 7a1a ldrb r2, [r3, #8] - 80025de: 4b62 ldr r3, [pc, #392] ; (8002768 ) - 80025e0: 7b1b ldrb r3, [r3, #12] - 80025e2: 429a cmp r2, r3 - 80025e4: d905 bls.n 80025f2 + 80024ca: 4b63 ldr r3, [pc, #396] ; (8002658 ) + 80024cc: 7a1a ldrb r2, [r3, #8] + 80024ce: 4b62 ldr r3, [pc, #392] ; (8002658 ) + 80024d0: 7b1b ldrb r3, [r3, #12] + 80024d2: 429a cmp r2, r3 + 80024d4: d905 bls.n 80024e2 { moto.moto1a_++; - 80025e6: 4b60 ldr r3, [pc, #384] ; (8002768 ) - 80025e8: 7b1b ldrb r3, [r3, #12] - 80025ea: 3301 adds r3, #1 - 80025ec: b2da uxtb r2, r3 - 80025ee: 4b5e ldr r3, [pc, #376] ; (8002768 ) - 80025f0: 731a strb r2, [r3, #12] + 80024d6: 4b60 ldr r3, [pc, #384] ; (8002658 ) + 80024d8: 7b1b ldrb r3, [r3, #12] + 80024da: 3301 adds r3, #1 + 80024dc: b2da uxtb r2, r3 + 80024de: 4b5e ldr r3, [pc, #376] ; (8002658 ) + 80024e0: 731a strb r2, [r3, #12] } if(moto.moto1a) - 80025f4: 7a1a ldrb r2, [r3, #8] - 80025f6: 4b5c ldr r3, [pc, #368] ; (8002768 ) - 80025f8: 7b1b ldrb r3, [r3, #12] - 80025fa: 429a cmp r2, r3 - 80025fc: d205 bcs.n 800260a + 80024e2: 4b5d ldr r3, [pc, #372] ; (8002658 ) + 80024e4: 7a1a ldrb r2, [r3, #8] + 80024e6: 4b5c ldr r3, [pc, #368] ; (8002658 ) + 80024e8: 7b1b ldrb r3, [r3, #12] + 80024ea: 429a cmp r2, r3 + 80024ec: d205 bcs.n 80024fa { moto.moto1a_--; - 80025fe: 4b5a ldr r3, [pc, #360] ; (8002768 ) - 8002600: 7b1b ldrb r3, [r3, #12] - 8002602: 3b01 subs r3, #1 - 8002604: b2da uxtb r2, r3 - 8002606: 4b58 ldr r3, [pc, #352] ; (8002768 ) - 8002608: 731a strb r2, [r3, #12] + 80024ee: 4b5a ldr r3, [pc, #360] ; (8002658 ) + 80024f0: 7b1b ldrb r3, [r3, #12] + 80024f2: 3b01 subs r3, #1 + 80024f4: b2da uxtb r2, r3 + 80024f6: 4b58 ldr r3, [pc, #352] ; (8002658 ) + 80024f8: 731a strb r2, [r3, #12] } } if(moto.moto1b!=moto.moto1b_) - 800260a: 4b57 ldr r3, [pc, #348] ; (8002768 ) - 800260c: 7a5a ldrb r2, [r3, #9] - 800260e: 4b56 ldr r3, [pc, #344] ; (8002768 ) - 8002610: 7b5b ldrb r3, [r3, #13] - 8002612: 429a cmp r2, r3 - 8002614: d017 beq.n 8002646 + 80024fa: 4b57 ldr r3, [pc, #348] ; (8002658 ) + 80024fc: 7a5a ldrb r2, [r3, #9] + 80024fe: 4b56 ldr r3, [pc, #344] ; (8002658 ) + 8002500: 7b5b ldrb r3, [r3, #13] + 8002502: 429a cmp r2, r3 + 8002504: d017 beq.n 8002536 { if(moto.moto1b>moto.moto1b_) - 8002616: 4b54 ldr r3, [pc, #336] ; (8002768 ) - 8002618: 7a5a ldrb r2, [r3, #9] - 800261a: 4b53 ldr r3, [pc, #332] ; (8002768 ) - 800261c: 7b5b ldrb r3, [r3, #13] - 800261e: 429a cmp r2, r3 - 8002620: d905 bls.n 800262e + 8002506: 4b54 ldr r3, [pc, #336] ; (8002658 ) + 8002508: 7a5a ldrb r2, [r3, #9] + 800250a: 4b53 ldr r3, [pc, #332] ; (8002658 ) + 800250c: 7b5b ldrb r3, [r3, #13] + 800250e: 429a cmp r2, r3 + 8002510: d905 bls.n 800251e { moto.moto1b_++; - 8002622: 4b51 ldr r3, [pc, #324] ; (8002768 ) - 8002624: 7b5b ldrb r3, [r3, #13] - 8002626: 3301 adds r3, #1 - 8002628: b2da uxtb r2, r3 - 800262a: 4b4f ldr r3, [pc, #316] ; (8002768 ) - 800262c: 735a strb r2, [r3, #13] + 8002512: 4b51 ldr r3, [pc, #324] ; (8002658 ) + 8002514: 7b5b ldrb r3, [r3, #13] + 8002516: 3301 adds r3, #1 + 8002518: b2da uxtb r2, r3 + 800251a: 4b4f ldr r3, [pc, #316] ; (8002658 ) + 800251c: 735a strb r2, [r3, #13] } if(moto.moto1b) - 8002630: 7a5a ldrb r2, [r3, #9] - 8002632: 4b4d ldr r3, [pc, #308] ; (8002768 ) - 8002634: 7b5b ldrb r3, [r3, #13] - 8002636: 429a cmp r2, r3 - 8002638: d205 bcs.n 8002646 + 800251e: 4b4e ldr r3, [pc, #312] ; (8002658 ) + 8002520: 7a5a ldrb r2, [r3, #9] + 8002522: 4b4d ldr r3, [pc, #308] ; (8002658 ) + 8002524: 7b5b ldrb r3, [r3, #13] + 8002526: 429a cmp r2, r3 + 8002528: d205 bcs.n 8002536 { moto.moto1b_--; - 800263a: 4b4b ldr r3, [pc, #300] ; (8002768 ) - 800263c: 7b5b ldrb r3, [r3, #13] - 800263e: 3b01 subs r3, #1 - 8002640: b2da uxtb r2, r3 - 8002642: 4b49 ldr r3, [pc, #292] ; (8002768 ) - 8002644: 735a strb r2, [r3, #13] + 800252a: 4b4b ldr r3, [pc, #300] ; (8002658 ) + 800252c: 7b5b ldrb r3, [r3, #13] + 800252e: 3b01 subs r3, #1 + 8002530: b2da uxtb r2, r3 + 8002532: 4b49 ldr r3, [pc, #292] ; (8002658 ) + 8002534: 735a strb r2, [r3, #13] } } if(moto.moto2a!=moto.moto2a_) - 8002646: 4b48 ldr r3, [pc, #288] ; (8002768 ) - 8002648: 7a9a ldrb r2, [r3, #10] - 800264a: 4b47 ldr r3, [pc, #284] ; (8002768 ) - 800264c: 7b9b ldrb r3, [r3, #14] - 800264e: 429a cmp r2, r3 - 8002650: d017 beq.n 8002682 + 8002536: 4b48 ldr r3, [pc, #288] ; (8002658 ) + 8002538: 7a9a ldrb r2, [r3, #10] + 800253a: 4b47 ldr r3, [pc, #284] ; (8002658 ) + 800253c: 7b9b ldrb r3, [r3, #14] + 800253e: 429a cmp r2, r3 + 8002540: d017 beq.n 8002572 { if(moto.moto2a>moto.moto2a_) - 8002652: 4b45 ldr r3, [pc, #276] ; (8002768 ) - 8002654: 7a9a ldrb r2, [r3, #10] - 8002656: 4b44 ldr r3, [pc, #272] ; (8002768 ) - 8002658: 7b9b ldrb r3, [r3, #14] - 800265a: 429a cmp r2, r3 - 800265c: d905 bls.n 800266a + 8002542: 4b45 ldr r3, [pc, #276] ; (8002658 ) + 8002544: 7a9a ldrb r2, [r3, #10] + 8002546: 4b44 ldr r3, [pc, #272] ; (8002658 ) + 8002548: 7b9b ldrb r3, [r3, #14] + 800254a: 429a cmp r2, r3 + 800254c: d905 bls.n 800255a { moto.moto2a_++; - 800265e: 4b42 ldr r3, [pc, #264] ; (8002768 ) - 8002660: 7b9b ldrb r3, [r3, #14] - 8002662: 3301 adds r3, #1 - 8002664: b2da uxtb r2, r3 - 8002666: 4b40 ldr r3, [pc, #256] ; (8002768 ) - 8002668: 739a strb r2, [r3, #14] + 800254e: 4b42 ldr r3, [pc, #264] ; (8002658 ) + 8002550: 7b9b ldrb r3, [r3, #14] + 8002552: 3301 adds r3, #1 + 8002554: b2da uxtb r2, r3 + 8002556: 4b40 ldr r3, [pc, #256] ; (8002658 ) + 8002558: 739a strb r2, [r3, #14] } if(moto.moto2a) - 800266c: 7a9a ldrb r2, [r3, #10] - 800266e: 4b3e ldr r3, [pc, #248] ; (8002768 ) - 8002670: 7b9b ldrb r3, [r3, #14] - 8002672: 429a cmp r2, r3 - 8002674: d205 bcs.n 8002682 + 800255a: 4b3f ldr r3, [pc, #252] ; (8002658 ) + 800255c: 7a9a ldrb r2, [r3, #10] + 800255e: 4b3e ldr r3, [pc, #248] ; (8002658 ) + 8002560: 7b9b ldrb r3, [r3, #14] + 8002562: 429a cmp r2, r3 + 8002564: d205 bcs.n 8002572 { moto.moto2a_--; - 8002676: 4b3c ldr r3, [pc, #240] ; (8002768 ) - 8002678: 7b9b ldrb r3, [r3, #14] - 800267a: 3b01 subs r3, #1 - 800267c: b2da uxtb r2, r3 - 800267e: 4b3a ldr r3, [pc, #232] ; (8002768 ) - 8002680: 739a strb r2, [r3, #14] + 8002566: 4b3c ldr r3, [pc, #240] ; (8002658 ) + 8002568: 7b9b ldrb r3, [r3, #14] + 800256a: 3b01 subs r3, #1 + 800256c: b2da uxtb r2, r3 + 800256e: 4b3a ldr r3, [pc, #232] ; (8002658 ) + 8002570: 739a strb r2, [r3, #14] } } if(moto.moto2b!=moto.moto2b_) - 8002682: 4b39 ldr r3, [pc, #228] ; (8002768 ) - 8002684: 7ada ldrb r2, [r3, #11] - 8002686: 4b38 ldr r3, [pc, #224] ; (8002768 ) - 8002688: 7bdb ldrb r3, [r3, #15] - 800268a: 429a cmp r2, r3 - 800268c: d017 beq.n 80026be + 8002572: 4b39 ldr r3, [pc, #228] ; (8002658 ) + 8002574: 7ada ldrb r2, [r3, #11] + 8002576: 4b38 ldr r3, [pc, #224] ; (8002658 ) + 8002578: 7bdb ldrb r3, [r3, #15] + 800257a: 429a cmp r2, r3 + 800257c: d017 beq.n 80025ae { if(moto.moto2b>moto.moto2b_) - 800268e: 4b36 ldr r3, [pc, #216] ; (8002768 ) - 8002690: 7ada ldrb r2, [r3, #11] - 8002692: 4b35 ldr r3, [pc, #212] ; (8002768 ) - 8002694: 7bdb ldrb r3, [r3, #15] - 8002696: 429a cmp r2, r3 - 8002698: d905 bls.n 80026a6 + 800257e: 4b36 ldr r3, [pc, #216] ; (8002658 ) + 8002580: 7ada ldrb r2, [r3, #11] + 8002582: 4b35 ldr r3, [pc, #212] ; (8002658 ) + 8002584: 7bdb ldrb r3, [r3, #15] + 8002586: 429a cmp r2, r3 + 8002588: d905 bls.n 8002596 { moto.moto2b_++; - 800269a: 4b33 ldr r3, [pc, #204] ; (8002768 ) - 800269c: 7bdb ldrb r3, [r3, #15] - 800269e: 3301 adds r3, #1 - 80026a0: b2da uxtb r2, r3 - 80026a2: 4b31 ldr r3, [pc, #196] ; (8002768 ) - 80026a4: 73da strb r2, [r3, #15] + 800258a: 4b33 ldr r3, [pc, #204] ; (8002658 ) + 800258c: 7bdb ldrb r3, [r3, #15] + 800258e: 3301 adds r3, #1 + 8002590: b2da uxtb r2, r3 + 8002592: 4b31 ldr r3, [pc, #196] ; (8002658 ) + 8002594: 73da strb r2, [r3, #15] } if(moto.moto2b) - 80026a8: 7ada ldrb r2, [r3, #11] - 80026aa: 4b2f ldr r3, [pc, #188] ; (8002768 ) - 80026ac: 7bdb ldrb r3, [r3, #15] - 80026ae: 429a cmp r2, r3 - 80026b0: d205 bcs.n 80026be + 8002596: 4b30 ldr r3, [pc, #192] ; (8002658 ) + 8002598: 7ada ldrb r2, [r3, #11] + 800259a: 4b2f ldr r3, [pc, #188] ; (8002658 ) + 800259c: 7bdb ldrb r3, [r3, #15] + 800259e: 429a cmp r2, r3 + 80025a0: d205 bcs.n 80025ae { moto.moto2b_--; - 80026b2: 4b2d ldr r3, [pc, #180] ; (8002768 ) - 80026b4: 7bdb ldrb r3, [r3, #15] - 80026b6: 3b01 subs r3, #1 - 80026b8: b2da uxtb r2, r3 - 80026ba: 4b2b ldr r3, [pc, #172] ; (8002768 ) - 80026bc: 73da strb r2, [r3, #15] + 80025a2: 4b2d ldr r3, [pc, #180] ; (8002658 ) + 80025a4: 7bdb ldrb r3, [r3, #15] + 80025a6: 3b01 subs r3, #1 + 80025a8: b2da uxtb r2, r3 + 80025aa: 4b2b ldr r3, [pc, #172] ; (8002658 ) + 80025ac: 73da strb r2, [r3, #15] moto.pwm_run++; - 80026be: 4b2a ldr r3, [pc, #168] ; (8002768 ) - 80026c0: 685b ldr r3, [r3, #4] - 80026c2: 1c5a adds r2, r3, #1 - 80026c4: 4b28 ldr r3, [pc, #160] ; (8002768 ) - 80026c6: 605a str r2, [r3, #4] + 80025ae: 4b2a ldr r3, [pc, #168] ; (8002658 ) + 80025b0: 685b ldr r3, [r3, #4] + 80025b2: 1c5a adds r2, r3, #1 + 80025b4: 4b28 ldr r3, [pc, #160] ; (8002658 ) + 80025b6: 605a str r2, [r3, #4] if(moto.pwm_run==10) - 80026c8: 4b27 ldr r3, [pc, #156] ; (8002768 ) - 80026ca: 685b ldr r3, [r3, #4] - 80026cc: 2b0a cmp r3, #10 - 80026ce: d102 bne.n 80026d6 + 80025b8: 4b27 ldr r3, [pc, #156] ; (8002658 ) + 80025ba: 685b ldr r3, [r3, #4] + 80025bc: 2b0a cmp r3, #10 + 80025be: d102 bne.n 80025c6 { moto.pwm_run=0; - 80026d0: 4b25 ldr r3, [pc, #148] ; (8002768 ) - 80026d2: 2200 movs r2, #0 - 80026d4: 605a str r2, [r3, #4] + 80025c0: 4b25 ldr r3, [pc, #148] ; (8002658 ) + 80025c2: 2200 movs r2, #0 + 80025c4: 605a str r2, [r3, #4] } if(moto.pwm_run) - 80026d8: 685b ldr r3, [r3, #4] - 80026da: 4a23 ldr r2, [pc, #140] ; (8002768 ) - 80026dc: 7b12 ldrb r2, [r2, #12] - 80026de: 4293 cmp r3, r2 - 80026e0: da05 bge.n 80026ee + 80025c6: 4b24 ldr r3, [pc, #144] ; (8002658 ) + 80025c8: 685b ldr r3, [r3, #4] + 80025ca: 4a23 ldr r2, [pc, #140] ; (8002658 ) + 80025cc: 7b12 ldrb r2, [r2, #12] + 80025ce: 4293 cmp r3, r2 + 80025d0: da05 bge.n 80025de { dis_buff.moto1a=1; - 80026e2: 4b22 ldr r3, [pc, #136] ; (800276c ) - 80026e4: 7a1a ldrb r2, [r3, #8] - 80026e6: 2120 movs r1, #32 - 80026e8: 430a orrs r2, r1 - 80026ea: 721a strb r2, [r3, #8] - 80026ec: e004 b.n 80026f8 + 80025d2: 4b22 ldr r3, [pc, #136] ; (800265c ) + 80025d4: 7a1a ldrb r2, [r3, #8] + 80025d6: 2120 movs r1, #32 + 80025d8: 430a orrs r2, r1 + 80025da: 721a strb r2, [r3, #8] + 80025dc: e004 b.n 80025e8 }else { dis_buff.moto1a=0; - 80026ee: 4b1f ldr r3, [pc, #124] ; (800276c ) - 80026f0: 7a1a ldrb r2, [r3, #8] - 80026f2: 2120 movs r1, #32 - 80026f4: 438a bics r2, r1 - 80026f6: 721a strb r2, [r3, #8] + 80025de: 4b1f ldr r3, [pc, #124] ; (800265c ) + 80025e0: 7a1a ldrb r2, [r3, #8] + 80025e2: 2120 movs r1, #32 + 80025e4: 438a bics r2, r1 + 80025e6: 721a strb r2, [r3, #8] } if(moto.pwm_run) - 80026fa: 685b ldr r3, [r3, #4] - 80026fc: 4a1a ldr r2, [pc, #104] ; (8002768 ) - 80026fe: 7b52 ldrb r2, [r2, #13] - 8002700: 4293 cmp r3, r2 - 8002702: da05 bge.n 8002710 + 80025e8: 4b1b ldr r3, [pc, #108] ; (8002658 ) + 80025ea: 685b ldr r3, [r3, #4] + 80025ec: 4a1a ldr r2, [pc, #104] ; (8002658 ) + 80025ee: 7b52 ldrb r2, [r2, #13] + 80025f0: 4293 cmp r3, r2 + 80025f2: da05 bge.n 8002600 { dis_buff.moto1b=1; - 8002704: 4b19 ldr r3, [pc, #100] ; (800276c ) - 8002706: 7a1a ldrb r2, [r3, #8] - 8002708: 2140 movs r1, #64 ; 0x40 - 800270a: 430a orrs r2, r1 - 800270c: 721a strb r2, [r3, #8] - 800270e: e004 b.n 800271a + 80025f4: 4b19 ldr r3, [pc, #100] ; (800265c ) + 80025f6: 7a1a ldrb r2, [r3, #8] + 80025f8: 2140 movs r1, #64 ; 0x40 + 80025fa: 430a orrs r2, r1 + 80025fc: 721a strb r2, [r3, #8] + 80025fe: e004 b.n 800260a }else { dis_buff.moto1b=0; - 8002710: 4b16 ldr r3, [pc, #88] ; (800276c ) - 8002712: 7a1a ldrb r2, [r3, #8] - 8002714: 2140 movs r1, #64 ; 0x40 - 8002716: 438a bics r2, r1 - 8002718: 721a strb r2, [r3, #8] + 8002600: 4b16 ldr r3, [pc, #88] ; (800265c ) + 8002602: 7a1a ldrb r2, [r3, #8] + 8002604: 2140 movs r1, #64 ; 0x40 + 8002606: 438a bics r2, r1 + 8002608: 721a strb r2, [r3, #8] } if(moto.pwm_run) - 800271c: 685b ldr r3, [r3, #4] - 800271e: 4a12 ldr r2, [pc, #72] ; (8002768 ) - 8002720: 7b92 ldrb r2, [r2, #14] - 8002722: 4293 cmp r3, r2 - 8002724: da06 bge.n 8002734 + 800260a: 4b13 ldr r3, [pc, #76] ; (8002658 ) + 800260c: 685b ldr r3, [r3, #4] + 800260e: 4a12 ldr r2, [pc, #72] ; (8002658 ) + 8002610: 7b92 ldrb r2, [r2, #14] + 8002612: 4293 cmp r3, r2 + 8002614: da06 bge.n 8002624 { dis_buff.moto2a=1; - 8002726: 4b11 ldr r3, [pc, #68] ; (800276c ) - 8002728: 7a1a ldrb r2, [r3, #8] - 800272a: 2180 movs r1, #128 ; 0x80 - 800272c: 4249 negs r1, r1 - 800272e: 430a orrs r2, r1 - 8002730: 721a strb r2, [r3, #8] - 8002732: e004 b.n 800273e + 8002616: 4b11 ldr r3, [pc, #68] ; (800265c ) + 8002618: 7a1a ldrb r2, [r3, #8] + 800261a: 2180 movs r1, #128 ; 0x80 + 800261c: 4249 negs r1, r1 + 800261e: 430a orrs r2, r1 + 8002620: 721a strb r2, [r3, #8] + 8002622: e004 b.n 800262e }else { dis_buff.moto2a=0; - 8002734: 4b0d ldr r3, [pc, #52] ; (800276c ) - 8002736: 7a1a ldrb r2, [r3, #8] - 8002738: 217f movs r1, #127 ; 0x7f - 800273a: 400a ands r2, r1 - 800273c: 721a strb r2, [r3, #8] + 8002624: 4b0d ldr r3, [pc, #52] ; (800265c ) + 8002626: 7a1a ldrb r2, [r3, #8] + 8002628: 217f movs r1, #127 ; 0x7f + 800262a: 400a ands r2, r1 + 800262c: 721a strb r2, [r3, #8] } if(moto.pwm_run) - 8002740: 685b ldr r3, [r3, #4] - 8002742: 4a09 ldr r2, [pc, #36] ; (8002768 ) - 8002744: 7bd2 ldrb r2, [r2, #15] - 8002746: 4293 cmp r3, r2 - 8002748: da05 bge.n 8002756 + 800262e: 4b0a ldr r3, [pc, #40] ; (8002658 ) + 8002630: 685b ldr r3, [r3, #4] + 8002632: 4a09 ldr r2, [pc, #36] ; (8002658 ) + 8002634: 7bd2 ldrb r2, [r2, #15] + 8002636: 4293 cmp r3, r2 + 8002638: da05 bge.n 8002646 { dis_buff.moto2b=1; - 800274a: 4b08 ldr r3, [pc, #32] ; (800276c ) - 800274c: 7a5a ldrb r2, [r3, #9] - 800274e: 2101 movs r1, #1 - 8002750: 430a orrs r2, r1 - 8002752: 725a strb r2, [r3, #9] + 800263a: 4b08 ldr r3, [pc, #32] ; (800265c ) + 800263c: 7a5a ldrb r2, [r3, #9] + 800263e: 2101 movs r1, #1 + 8002640: 430a orrs r2, r1 + 8002642: 725a strb r2, [r3, #9] }else { dis_buff.moto2b=0; } } - 8002754: e004 b.n 8002760 + 8002644: e004 b.n 8002650 dis_buff.moto2b=0; - 8002756: 4b05 ldr r3, [pc, #20] ; (800276c ) - 8002758: 7a5a ldrb r2, [r3, #9] - 800275a: 2101 movs r1, #1 - 800275c: 438a bics r2, r1 - 800275e: 725a strb r2, [r3, #9] + 8002646: 4b05 ldr r3, [pc, #20] ; (800265c ) + 8002648: 7a5a ldrb r2, [r3, #9] + 800264a: 2101 movs r1, #1 + 800264c: 438a bics r2, r1 + 800264e: 725a strb r2, [r3, #9] } - 8002760: 46c0 nop ; (mov r8, r8) - 8002762: 46bd mov sp, r7 - 8002764: bd80 pop {r7, pc} - 8002766: 46c0 nop ; (mov r8, r8) - 8002768: 200000f4 .word 0x200000f4 - 800276c: 20000028 .word 0x20000028 + 8002650: 46c0 nop ; (mov r8, r8) + 8002652: 46bd mov sp, r7 + 8002654: bd80 pop {r7, pc} + 8002656: 46c0 nop ; (mov r8, r8) + 8002658: 200000dc .word 0x200000dc + 800265c: 20000028 .word 0x20000028 -08002770 : +08002660 : +#define E 0x08 +#define F 0x04 +#define G 0x02 +#define H 0x01 +void HT1621_Display_GetButton(void) +{ + 8002660: b580 push {r7, lr} + 8002662: b084 sub sp, #16 + 8002664: af00 add r7, sp, #0 + unsigned char send_buff[8]={0,0,0,0,0,0,0,0,0}; + 8002666: 2308 movs r3, #8 + 8002668: 18fb adds r3, r7, r3 + 800266a: 4a4e ldr r2, [pc, #312] ; (80027a4 ) + 800266c: ca03 ldmia r2!, {r0, r1} + 800266e: c303 stmia r3!, {r0, r1} + unsigned char lcd_buff[4]={0,0,0,0}; + 8002670: 1d3b adds r3, r7, #4 + 8002672: 2200 movs r2, #0 + 8002674: 601a str r2, [r3, #0] + + //WritenDataHT1621(0,send_buff,8); + + lcd_buff[0]=LED_Tab[dis_buff.d_num[0]]; + 8002676: 4b4c ldr r3, [pc, #304] ; (80027a8 ) + 8002678: 781b ldrb r3, [r3, #0] + 800267a: 001a movs r2, r3 + 800267c: 4b4b ldr r3, [pc, #300] ; (80027ac ) + 800267e: 5c9a ldrb r2, [r3, r2] + 8002680: 1d3b adds r3, r7, #4 + 8002682: 701a strb r2, [r3, #0] + if(dis_buff.dot1==1) + 8002684: 4b48 ldr r3, [pc, #288] ; (80027a8 ) + 8002686: 7a1b ldrb r3, [r3, #8] + 8002688: 2201 movs r2, #1 + 800268a: 4013 ands r3, r2 + 800268c: b2db uxtb r3, r3 + 800268e: 2b00 cmp r3, #0 + 8002690: d007 beq.n 80026a2 + { + lcd_buff[0]|=0x80; + 8002692: 1d3b adds r3, r7, #4 + 8002694: 781b ldrb r3, [r3, #0] + 8002696: 2280 movs r2, #128 ; 0x80 + 8002698: 4252 negs r2, r2 + 800269a: 4313 orrs r3, r2 + 800269c: b2da uxtb r2, r3 + 800269e: 1d3b adds r3, r7, #4 + 80026a0: 701a strb r2, [r3, #0] + } + lcd_buff[1]=LED_Tab[dis_buff.d_num[1]]; + 80026a2: 4b41 ldr r3, [pc, #260] ; (80027a8 ) + 80026a4: 785b ldrb r3, [r3, #1] + 80026a6: 001a movs r2, r3 + 80026a8: 4b40 ldr r3, [pc, #256] ; (80027ac ) + 80026aa: 5c9a ldrb r2, [r3, r2] + 80026ac: 1d3b adds r3, r7, #4 + 80026ae: 705a strb r2, [r3, #1] + if(dis_buff.dot2==1) + 80026b0: 4b3d ldr r3, [pc, #244] ; (80027a8 ) + 80026b2: 7a1b ldrb r3, [r3, #8] + 80026b4: 2202 movs r2, #2 + 80026b6: 4013 ands r3, r2 + 80026b8: b2db uxtb r3, r3 + 80026ba: 2b00 cmp r3, #0 + 80026bc: d007 beq.n 80026ce + { + lcd_buff[1]|=0x80; + 80026be: 1d3b adds r3, r7, #4 + 80026c0: 785b ldrb r3, [r3, #1] + 80026c2: 2280 movs r2, #128 ; 0x80 + 80026c4: 4252 negs r2, r2 + 80026c6: 4313 orrs r3, r2 + 80026c8: b2da uxtb r2, r3 + 80026ca: 1d3b adds r3, r7, #4 + 80026cc: 705a strb r2, [r3, #1] + } + lcd_buff[2]=LED_Tab[dis_buff.d_num[2]]; + 80026ce: 4b36 ldr r3, [pc, #216] ; (80027a8 ) + 80026d0: 789b ldrb r3, [r3, #2] + 80026d2: 001a movs r2, r3 + 80026d4: 4b35 ldr r3, [pc, #212] ; (80027ac ) + 80026d6: 5c9a ldrb r2, [r3, r2] + 80026d8: 1d3b adds r3, r7, #4 + 80026da: 709a strb r2, [r3, #2] + if(dis_buff.dot3==1) + 80026dc: 4b32 ldr r3, [pc, #200] ; (80027a8 ) + 80026de: 7a1b ldrb r3, [r3, #8] + 80026e0: 2204 movs r2, #4 + 80026e2: 4013 ands r3, r2 + 80026e4: b2db uxtb r3, r3 + 80026e6: 2b00 cmp r3, #0 + 80026e8: d007 beq.n 80026fa + { + lcd_buff[2]|=0x80; + 80026ea: 1d3b adds r3, r7, #4 + 80026ec: 789b ldrb r3, [r3, #2] + 80026ee: 2280 movs r2, #128 ; 0x80 + 80026f0: 4252 negs r2, r2 + 80026f2: 4313 orrs r3, r2 + 80026f4: b2da uxtb r2, r3 + 80026f6: 1d3b adds r3, r7, #4 + 80026f8: 709a strb r2, [r3, #2] + } + lcd_buff[3]=LED_Tab[dis_buff.d_num[3]]; + 80026fa: 4b2b ldr r3, [pc, #172] ; (80027a8 ) + 80026fc: 78db ldrb r3, [r3, #3] + 80026fe: 001a movs r2, r3 + 8002700: 4b2a ldr r3, [pc, #168] ; (80027ac ) + 8002702: 5c9a ldrb r2, [r3, r2] + 8002704: 1d3b adds r3, r7, #4 + 8002706: 70da strb r2, [r3, #3] + if(dis_buff.dot4==1) + 8002708: 4b27 ldr r3, [pc, #156] ; (80027a8 ) + 800270a: 7a1b ldrb r3, [r3, #8] + 800270c: 2208 movs r2, #8 + 800270e: 4013 ands r3, r2 + 8002710: b2db uxtb r3, r3 + 8002712: 2b00 cmp r3, #0 + 8002714: d007 beq.n 8002726 + { + lcd_buff[3]|=0x80; + 8002716: 1d3b adds r3, r7, #4 + 8002718: 78db ldrb r3, [r3, #3] + 800271a: 2280 movs r2, #128 ; 0x80 + 800271c: 4252 negs r2, r2 + 800271e: 4313 orrs r3, r2 + 8002720: b2da uxtb r2, r3 + 8002722: 1d3b adds r3, r7, #4 + 8002724: 70da strb r2, [r3, #3] + } + send_buff[0]=lcd_buff[0]>>4; + 8002726: 1d3b adds r3, r7, #4 + 8002728: 781b ldrb r3, [r3, #0] + 800272a: 091b lsrs r3, r3, #4 + 800272c: b2da uxtb r2, r3 + 800272e: 2108 movs r1, #8 + 8002730: 187b adds r3, r7, r1 + 8002732: 701a strb r2, [r3, #0] + send_buff[1]=lcd_buff[0]&0x0f; + 8002734: 1d3b adds r3, r7, #4 + 8002736: 781b ldrb r3, [r3, #0] + 8002738: 220f movs r2, #15 + 800273a: 4013 ands r3, r2 + 800273c: b2da uxtb r2, r3 + 800273e: 187b adds r3, r7, r1 + 8002740: 705a strb r2, [r3, #1] + send_buff[2]=lcd_buff[1]>>4; + 8002742: 1d3b adds r3, r7, #4 + 8002744: 785b ldrb r3, [r3, #1] + 8002746: 091b lsrs r3, r3, #4 + 8002748: b2da uxtb r2, r3 + 800274a: 187b adds r3, r7, r1 + 800274c: 709a strb r2, [r3, #2] + send_buff[3]=lcd_buff[1]&0x0f; + 800274e: 1d3b adds r3, r7, #4 + 8002750: 785b ldrb r3, [r3, #1] + 8002752: 220f movs r2, #15 + 8002754: 4013 ands r3, r2 + 8002756: b2da uxtb r2, r3 + 8002758: 187b adds r3, r7, r1 + 800275a: 70da strb r2, [r3, #3] + send_buff[4]=lcd_buff[2]>>4; + 800275c: 1d3b adds r3, r7, #4 + 800275e: 789b ldrb r3, [r3, #2] + 8002760: 091b lsrs r3, r3, #4 + 8002762: b2da uxtb r2, r3 + 8002764: 187b adds r3, r7, r1 + 8002766: 711a strb r2, [r3, #4] + send_buff[5]=lcd_buff[2]&0x0f; + 8002768: 1d3b adds r3, r7, #4 + 800276a: 789b ldrb r3, [r3, #2] + 800276c: 220f movs r2, #15 + 800276e: 4013 ands r3, r2 + 8002770: b2da uxtb r2, r3 + 8002772: 187b adds r3, r7, r1 + 8002774: 715a strb r2, [r3, #5] + send_buff[6]=lcd_buff[3]>>4; + 8002776: 1d3b adds r3, r7, #4 + 8002778: 78db ldrb r3, [r3, #3] + 800277a: 091b lsrs r3, r3, #4 + 800277c: b2da uxtb r2, r3 + 800277e: 187b adds r3, r7, r1 + 8002780: 719a strb r2, [r3, #6] + send_buff[7]=lcd_buff[3]&0x0f; + 8002782: 1d3b adds r3, r7, #4 + 8002784: 78db ldrb r3, [r3, #3] + 8002786: 220f movs r2, #15 + 8002788: 4013 ands r3, r2 + 800278a: b2da uxtb r2, r3 + 800278c: 187b adds r3, r7, r1 + 800278e: 71da strb r2, [r3, #7] + + + WritenDataHT1621(0,send_buff,8); + 8002790: 187b adds r3, r7, r1 + 8002792: 2208 movs r2, #8 + 8002794: 0019 movs r1, r3 + 8002796: 2000 movs r0, #0 + 8002798: f7ff fc9e bl 80020d8 + + + + +} + 800279c: 46c0 nop ; (mov r8, r8) + 800279e: 46bd mov sp, r7 + 80027a0: b004 add sp, #16 + 80027a2: bd80 pop {r7, pc} + 80027a4: 08003150 .word 0x08003150 + 80027a8: 20000028 .word 0x20000028 + 80027ac: 08003168 .word 0x08003168 + +080027b0 : void my_code() { - 8002770: b580 push {r7, lr} - 8002772: b086 sub sp, #24 - 8002774: af00 add r7, sp, #0 + 80027b0: b580 push {r7, lr} + 80027b2: b086 sub sp, #24 + 80027b4: af00 add r7, sp, #0 uint32_t runtime=0,move=0; - 8002776: 2300 movs r3, #0 - 8002778: 617b str r3, [r7, #20] - 800277a: 2300 movs r3, #0 - 800277c: 613b str r3, [r7, #16] + 80027b6: 2300 movs r3, #0 + 80027b8: 617b str r3, [r7, #20] + 80027ba: 2300 movs r3, #0 + 80027bc: 613b str r3, [r7, #16] uint8_t mode=0,overload_mode=0; - 800277e: 230f movs r3, #15 - 8002780: 18fb adds r3, r7, r3 - 8002782: 2200 movs r2, #0 - 8002784: 701a strb r2, [r3, #0] - 8002786: 230e movs r3, #14 - 8002788: 18fb adds r3, r7, r3 - 800278a: 2200 movs r2, #0 - 800278c: 701a strb r2, [r3, #0] + 80027be: 230f movs r3, #15 + 80027c0: 18fb adds r3, r7, r3 + 80027c2: 2200 movs r2, #0 + 80027c4: 701a strb r2, [r3, #0] + 80027c6: 230e movs r3, #14 + 80027c8: 18fb adds r3, r7, r3 + 80027ca: 2200 movs r2, #0 + 80027cc: 701a strb r2, [r3, #0] uint16_t overload_times=0; - 800278e: 230c movs r3, #12 - 8002790: 18fb adds r3, r7, r3 - 8002792: 2200 movs r2, #0 - 8002794: 801a strh r2, [r3, #0] - long countdown=0; - 8002796: 2300 movs r3, #0 - 8002798: 60bb str r3, [r7, #8] + 80027ce: 230c movs r3, #12 + 80027d0: 18fb adds r3, r7, r3 + 80027d2: 2200 movs r2, #0 + 80027d4: 801a strh r2, [r3, #0] + long countdown=1000; + 80027d6: 23fa movs r3, #250 ; 0xfa + 80027d8: 009b lsls r3, r3, #2 + 80027da: 60bb str r3, [r7, #8] long countdown_set=15000; - 800279a: 4be5 ldr r3, [pc, #916] ; (8002b30 ) - 800279c: 607b str r3, [r7, #4] - dis_buff.d_num[0]=8; - 800279e: 4be5 ldr r3, [pc, #916] ; (8002b34 ) - 80027a0: 2208 movs r2, #8 - 80027a2: 701a strb r2, [r3, #0] - dis_buff.d_num[1]=8; - 80027a4: 4be3 ldr r3, [pc, #908] ; (8002b34 ) - 80027a6: 2208 movs r2, #8 - 80027a8: 705a strb r2, [r3, #1] - dis_buff.d_num[2]=8; - 80027aa: 4be2 ldr r3, [pc, #904] ; (8002b34 ) - 80027ac: 2208 movs r2, #8 - 80027ae: 709a strb r2, [r3, #2] - dis_buff.d_num[3]=8; - 80027b0: 4be0 ldr r3, [pc, #896] ; (8002b34 ) - 80027b2: 2208 movs r2, #8 - 80027b4: 70da strb r2, [r3, #3] + 80027dc: 4be1 ldr r3, [pc, #900] ; (8002b64 ) + 80027de: 607b str r3, [r7, #4] + dis_buff.moto1a=0; - 80027b6: 4bdf ldr r3, [pc, #892] ; (8002b34 ) - 80027b8: 7a1a ldrb r2, [r3, #8] - 80027ba: 2120 movs r1, #32 - 80027bc: 438a bics r2, r1 - 80027be: 721a strb r2, [r3, #8] + 80027e0: 4be1 ldr r3, [pc, #900] ; (8002b68 ) + 80027e2: 7a1a ldrb r2, [r3, #8] + 80027e4: 2120 movs r1, #32 + 80027e6: 438a bics r2, r1 + 80027e8: 721a strb r2, [r3, #8] dis_buff.moto1b=0; - 80027c0: 4bdc ldr r3, [pc, #880] ; (8002b34 ) - 80027c2: 7a1a ldrb r2, [r3, #8] - 80027c4: 2140 movs r1, #64 ; 0x40 - 80027c6: 438a bics r2, r1 - 80027c8: 721a strb r2, [r3, #8] + 80027ea: 4bdf ldr r3, [pc, #892] ; (8002b68 ) + 80027ec: 7a1a ldrb r2, [r3, #8] + 80027ee: 2140 movs r1, #64 ; 0x40 + 80027f0: 438a bics r2, r1 + 80027f2: 721a strb r2, [r3, #8] dis_buff.moto2a=0; - 80027ca: 4bda ldr r3, [pc, #872] ; (8002b34 ) - 80027cc: 7a1a ldrb r2, [r3, #8] - 80027ce: 217f movs r1, #127 ; 0x7f - 80027d0: 400a ands r2, r1 - 80027d2: 721a strb r2, [r3, #8] + 80027f4: 4bdc ldr r3, [pc, #880] ; (8002b68 ) + 80027f6: 7a1a ldrb r2, [r3, #8] + 80027f8: 217f movs r1, #127 ; 0x7f + 80027fa: 400a ands r2, r1 + 80027fc: 721a strb r2, [r3, #8] dis_buff.moto2b=0; - 80027d4: 4bd7 ldr r3, [pc, #860] ; (8002b34 ) - 80027d6: 7a5a ldrb r2, [r3, #9] - 80027d8: 2101 movs r1, #1 - 80027da: 438a bics r2, r1 - 80027dc: 725a strb r2, [r3, #9] + 80027fe: 4bda ldr r3, [pc, #872] ; (8002b68 ) + 8002800: 7a5a ldrb r2, [r3, #9] + 8002802: 2101 movs r1, #1 + 8002804: 438a bics r2, r1 + 8002806: 725a strb r2, [r3, #9] moto.moto_run=0; - 80027de: 4bd6 ldr r3, [pc, #856] ; (8002b38 ) - 80027e0: 2200 movs r2, #0 - 80027e2: 601a str r2, [r3, #0] + 8002808: 4bd8 ldr r3, [pc, #864] ; (8002b6c ) + 800280a: 2200 movs r2, #0 + 800280c: 601a str r2, [r3, #0] moto.pwm_run=0; - 80027e4: 4bd4 ldr r3, [pc, #848] ; (8002b38 ) - 80027e6: 2200 movs r2, #0 - 80027e8: 605a str r2, [r3, #4] + 800280e: 4bd7 ldr r3, [pc, #860] ; (8002b6c ) + 8002810: 2200 movs r2, #0 + 8002812: 605a str r2, [r3, #4] moto.moto1a=0; - 80027ea: 4bd3 ldr r3, [pc, #844] ; (8002b38 ) - 80027ec: 2200 movs r2, #0 - 80027ee: 721a strb r2, [r3, #8] + 8002814: 4bd5 ldr r3, [pc, #852] ; (8002b6c ) + 8002816: 2200 movs r2, #0 + 8002818: 721a strb r2, [r3, #8] moto.moto1b=0; - 80027f0: 4bd1 ldr r3, [pc, #836] ; (8002b38 ) - 80027f2: 2200 movs r2, #0 - 80027f4: 725a strb r2, [r3, #9] + 800281a: 4bd4 ldr r3, [pc, #848] ; (8002b6c ) + 800281c: 2200 movs r2, #0 + 800281e: 725a strb r2, [r3, #9] moto.moto2a=0; - 80027f6: 4bd0 ldr r3, [pc, #832] ; (8002b38 ) - 80027f8: 2200 movs r2, #0 - 80027fa: 729a strb r2, [r3, #10] + 8002820: 4bd2 ldr r3, [pc, #840] ; (8002b6c ) + 8002822: 2200 movs r2, #0 + 8002824: 729a strb r2, [r3, #10] moto.moto2b=0; - 80027fc: 4bce ldr r3, [pc, #824] ; (8002b38 ) - 80027fe: 2200 movs r2, #0 - 8002800: 72da strb r2, [r3, #11] + 8002826: 4bd1 ldr r3, [pc, #836] ; (8002b6c ) + 8002828: 2200 movs r2, #0 + 800282a: 72da strb r2, [r3, #11] moto.moto1a_=0; - 8002802: 4bcd ldr r3, [pc, #820] ; (8002b38 ) - 8002804: 2200 movs r2, #0 - 8002806: 731a strb r2, [r3, #12] + 800282c: 4bcf ldr r3, [pc, #828] ; (8002b6c ) + 800282e: 2200 movs r2, #0 + 8002830: 731a strb r2, [r3, #12] moto.moto1b_=0; - 8002808: 4bcb ldr r3, [pc, #812] ; (8002b38 ) - 800280a: 2200 movs r2, #0 - 800280c: 735a strb r2, [r3, #13] + 8002832: 4bce ldr r3, [pc, #824] ; (8002b6c ) + 8002834: 2200 movs r2, #0 + 8002836: 735a strb r2, [r3, #13] moto.moto2a_=0; - 800280e: 4bca ldr r3, [pc, #808] ; (8002b38 ) - 8002810: 2200 movs r2, #0 - 8002812: 739a strb r2, [r3, #14] + 8002838: 4bcc ldr r3, [pc, #816] ; (8002b6c ) + 800283a: 2200 movs r2, #0 + 800283c: 739a strb r2, [r3, #14] moto.moto2b_=0; - 8002814: 4bc8 ldr r3, [pc, #800] ; (8002b38 ) - 8002816: 2200 movs r2, #0 - 8002818: 73da strb r2, [r3, #15] + 800283e: 4bcb ldr r3, [pc, #812] ; (8002b6c ) + 8002840: 2200 movs r2, #0 + 8002842: 73da strb r2, [r3, #15] HT1621_Init(); - 800281a: f7ff fd7f bl 800231c + 8002844: f7ff fd09 bl 800225a while(1) { - //*adc读取 并计滤波 并计算温度*/ - ///*获取两个通道*/ + //get ADC for(char a=0;a<2;a++) - 800281e: 1cfb adds r3, r7, #3 - 8002820: 2200 movs r2, #0 - 8002822: 701a strb r2, [r3, #0] - 8002824: e025 b.n 8002872 + 8002848: 1cfb adds r3, r7, #3 + 800284a: 2200 movs r2, #0 + 800284c: 701a strb r2, [r3, #0] + 800284e: e025 b.n 800289c { HAL_ADC_Start(&hadc); - 8002826: 4bc5 ldr r3, [pc, #788] ; (8002b3c ) - 8002828: 0018 movs r0, r3 - 800282a: f7fe f96f bl 8000b0c + 8002850: 4bc7 ldr r3, [pc, #796] ; (8002b70 ) + 8002852: 0018 movs r0, r3 + 8002854: f7fe f95a bl 8000b0c while(HAL_ADC_PollForConversion(&hadc,0xffff)!=HAL_OK); - 800282e: 46c0 nop ; (mov r8, r8) - 8002830: 4ac3 ldr r2, [pc, #780] ; (8002b40 ) - 8002832: 4bc2 ldr r3, [pc, #776] ; (8002b3c ) - 8002834: 0011 movs r1, r2 - 8002836: 0018 movs r0, r3 - 8002838: f7fe f9fc bl 8000c34 - 800283c: 1e03 subs r3, r0, #0 - 800283e: d1f7 bne.n 8002830 - ADCC.adc_filtering[a]+=HAL_ADC_GetValue(&hadc); //把读到的值加到滤波缓存 - 8002840: 4bbe ldr r3, [pc, #760] ; (8002b3c ) - 8002842: 0018 movs r0, r3 - 8002844: f7fe fa8e bl 8000d64 - 8002848: 0001 movs r1, r0 - 800284a: 1cfb adds r3, r7, #3 - 800284c: 781b ldrb r3, [r3, #0] - 800284e: 4abd ldr r2, [pc, #756] ; (8002b44 ) - 8002850: 009b lsls r3, r3, #2 - 8002852: 18d3 adds r3, r2, r3 - 8002854: 3304 adds r3, #4 - 8002856: 681a ldr r2, [r3, #0] - 8002858: 1cfb adds r3, r7, #3 - 800285a: 781b ldrb r3, [r3, #0] - 800285c: 188a adds r2, r1, r2 - 800285e: 49b9 ldr r1, [pc, #740] ; (8002b44 ) - 8002860: 009b lsls r3, r3, #2 - 8002862: 18cb adds r3, r1, r3 - 8002864: 3304 adds r3, #4 - 8002866: 601a str r2, [r3, #0] + 8002858: 46c0 nop ; (mov r8, r8) + 800285a: 4ac6 ldr r2, [pc, #792] ; (8002b74 ) + 800285c: 4bc4 ldr r3, [pc, #784] ; (8002b70 ) + 800285e: 0011 movs r1, r2 + 8002860: 0018 movs r0, r3 + 8002862: f7fe f9e7 bl 8000c34 + 8002866: 1e03 subs r3, r0, #0 + 8002868: d1f7 bne.n 800285a + ADCC.adc_filtering[a]+=HAL_ADC_GetValue(&hadc); + 800286a: 4bc1 ldr r3, [pc, #772] ; (8002b70 ) + 800286c: 0018 movs r0, r3 + 800286e: f7fe fa79 bl 8000d64 + 8002872: 0001 movs r1, r0 + 8002874: 1cfb adds r3, r7, #3 + 8002876: 781b ldrb r3, [r3, #0] + 8002878: 4abf ldr r2, [pc, #764] ; (8002b78 ) + 800287a: 009b lsls r3, r3, #2 + 800287c: 18d3 adds r3, r2, r3 + 800287e: 3304 adds r3, #4 + 8002880: 681a ldr r2, [r3, #0] + 8002882: 1cfb adds r3, r7, #3 + 8002884: 781b ldrb r3, [r3, #0] + 8002886: 188a adds r2, r1, r2 + 8002888: 49bb ldr r1, [pc, #748] ; (8002b78 ) + 800288a: 009b lsls r3, r3, #2 + 800288c: 18cb adds r3, r1, r3 + 800288e: 3304 adds r3, #4 + 8002890: 601a str r2, [r3, #0] for(char a=0;a<2;a++) - 8002868: 1cfb adds r3, r7, #3 - 800286a: 781a ldrb r2, [r3, #0] - 800286c: 1cfb adds r3, r7, #3 - 800286e: 3201 adds r2, #1 - 8002870: 701a strb r2, [r3, #0] - 8002872: 1cfb adds r3, r7, #3 - 8002874: 781b ldrb r3, [r3, #0] - 8002876: 2b01 cmp r3, #1 - 8002878: d9d5 bls.n 8002826 + 8002892: 1cfb adds r3, r7, #3 + 8002894: 781a ldrb r2, [r3, #0] + 8002896: 1cfb adds r3, r7, #3 + 8002898: 3201 adds r2, #1 + 800289a: 701a strb r2, [r3, #0] + 800289c: 1cfb adds r3, r7, #3 + 800289e: 781b ldrb r3, [r3, #0] + 80028a0: 2b01 cmp r3, #1 + 80028a2: d9d5 bls.n 8002850 } HAL_ADC_Stop(&hadc); - 800287a: 4bb0 ldr r3, [pc, #704] ; (8002b3c ) - 800287c: 0018 movs r0, r3 - 800287e: f7fe f999 bl 8000bb4 - ///*开始滤波*/ - ADCC.filtering_times+=1; //每采样加一次记一次 - 8002882: 4bb0 ldr r3, [pc, #704] ; (8002b44 ) - 8002884: 681b ldr r3, [r3, #0] - 8002886: 1c5a adds r2, r3, #1 - 8002888: 4bae ldr r3, [pc, #696] ; (8002b44 ) - 800288a: 601a str r2, [r3, #0] - if(ADCC.filtering_times==set_filtering_times) //当达到设定的滤波采样次数 - 800288c: 4bad ldr r3, [pc, #692] ; (8002b44 ) - 800288e: 681b ldr r3, [r3, #0] - 8002890: 2b32 cmp r3, #50 ; 0x32 - 8002892: d11c bne.n 80028ce + 80028a4: 4bb2 ldr r3, [pc, #712] ; (8002b70 ) + 80028a6: 0018 movs r0, r3 + 80028a8: f7fe f984 bl 8000bb4 + ADCC.filtering_times+=1; + 80028ac: 4bb2 ldr r3, [pc, #712] ; (8002b78 ) + 80028ae: 681b ldr r3, [r3, #0] + 80028b0: 1c5a adds r2, r3, #1 + 80028b2: 4bb1 ldr r3, [pc, #708] ; (8002b78 ) + 80028b4: 601a str r2, [r3, #0] + if(ADCC.filtering_times==set_filtering_times) + 80028b6: 4bb0 ldr r3, [pc, #704] ; (8002b78 ) + 80028b8: 681b ldr r3, [r3, #0] + 80028ba: 2b32 cmp r3, #50 ; 0x32 + 80028bc: d11c bne.n 80028f8 { ADCC.filtering_times=0; - 8002894: 4bab ldr r3, [pc, #684] ; (8002b44 ) - 8002896: 2200 movs r2, #0 - 8002898: 601a str r2, [r3, #0] - ADCC.adc_value[0]=ADCC.adc_filtering[0]/set_filtering_times; //就除于采样次数 - 800289a: 4baa ldr r3, [pc, #680] ; (8002b44 ) - 800289c: 685b ldr r3, [r3, #4] - 800289e: 2132 movs r1, #50 ; 0x32 - 80028a0: 0018 movs r0, r3 - 80028a2: f7fd fc31 bl 8000108 <__udivsi3> - 80028a6: 0003 movs r3, r0 - 80028a8: 001a movs r2, r3 - 80028aa: 4ba6 ldr r3, [pc, #664] ; (8002b44 ) - 80028ac: 60da str r2, [r3, #12] + 80028be: 4bae ldr r3, [pc, #696] ; (8002b78 ) + 80028c0: 2200 movs r2, #0 + 80028c2: 601a str r2, [r3, #0] + ADCC.adc_value[0]=ADCC.adc_filtering[0]/set_filtering_times; + 80028c4: 4bac ldr r3, [pc, #688] ; (8002b78 ) + 80028c6: 685b ldr r3, [r3, #4] + 80028c8: 2132 movs r1, #50 ; 0x32 + 80028ca: 0018 movs r0, r3 + 80028cc: f7fd fc1c bl 8000108 <__udivsi3> + 80028d0: 0003 movs r3, r0 + 80028d2: 001a movs r2, r3 + 80028d4: 4ba8 ldr r3, [pc, #672] ; (8002b78 ) + 80028d6: 60da str r2, [r3, #12] ADCC.adc_filtering[0]=0; - 80028ae: 4ba5 ldr r3, [pc, #660] ; (8002b44 ) - 80028b0: 2200 movs r2, #0 - 80028b2: 605a str r2, [r3, #4] + 80028d8: 4ba7 ldr r3, [pc, #668] ; (8002b78 ) + 80028da: 2200 movs r2, #0 + 80028dc: 605a str r2, [r3, #4] ADCC.adc_value[1]=ADCC.adc_filtering[1]/set_filtering_times; - 80028b4: 4ba3 ldr r3, [pc, #652] ; (8002b44 ) - 80028b6: 689b ldr r3, [r3, #8] - 80028b8: 2132 movs r1, #50 ; 0x32 - 80028ba: 0018 movs r0, r3 - 80028bc: f7fd fc24 bl 8000108 <__udivsi3> - 80028c0: 0003 movs r3, r0 - 80028c2: 001a movs r2, r3 - 80028c4: 4b9f ldr r3, [pc, #636] ; (8002b44 ) - 80028c6: 611a str r2, [r3, #16] + 80028de: 4ba6 ldr r3, [pc, #664] ; (8002b78 ) + 80028e0: 689b ldr r3, [r3, #8] + 80028e2: 2132 movs r1, #50 ; 0x32 + 80028e4: 0018 movs r0, r3 + 80028e6: f7fd fc0f bl 8000108 <__udivsi3> + 80028ea: 0003 movs r3, r0 + 80028ec: 001a movs r2, r3 + 80028ee: 4ba2 ldr r3, [pc, #648] ; (8002b78 ) + 80028f0: 611a str r2, [r3, #16] ADCC.adc_filtering[1]=0; - 80028c8: 4b9e ldr r3, [pc, #632] ; (8002b44 ) - 80028ca: 2200 movs r2, #0 - 80028cc: 609a str r2, [r3, #8] + 80028f2: 4ba1 ldr r3, [pc, #644] ; (8002b78 ) + 80028f4: 2200 movs r2, #0 + 80028f6: 609a str r2, [r3, #8] } switch(mode) - 80028ce: 230f movs r3, #15 - 80028d0: 18fb adds r3, r7, r3 - 80028d2: 781b ldrb r3, [r3, #0] - 80028d4: 2b05 cmp r3, #5 - 80028d6: d900 bls.n 80028da - 80028d8: e38b b.n 8002ff2 - 80028da: 009a lsls r2, r3, #2 - 80028dc: 4b9a ldr r3, [pc, #616] ; (8002b48 ) - 80028de: 18d3 adds r3, r2, r3 - 80028e0: 681b ldr r3, [r3, #0] - 80028e2: 469f mov pc, r3 + 80028f8: 230f movs r3, #15 + 80028fa: 18fb adds r3, r7, r3 + 80028fc: 781b ldrb r3, [r3, #0] + 80028fe: 2b05 cmp r3, #5 + 8002900: d900 bls.n 8002904 + 8002902: e390 b.n 8003026 + 8002904: 009a lsls r2, r3, #2 + 8002906: 4b9d ldr r3, [pc, #628] ; (8002b7c ) + 8002908: 18d3 adds r3, r2, r3 + 800290a: 681b ldr r3, [r3, #0] + 800290c: 469f mov pc, r3 { case 0: //Startup if(HAL_GetTick()>move) - 80028e4: f7fd ffc8 bl 8000878 - 80028e8: 0002 movs r2, r0 - 80028ea: 693b ldr r3, [r7, #16] - 80028ec: 4293 cmp r3, r2 - 80028ee: d300 bcc.n 80028f2 - 80028f0: e376 b.n 8002fe0 + 800290e: f7fd ffb3 bl 8000878 + 8002912: 0002 movs r2, r0 + 8002914: 693b ldr r3, [r7, #16] + 8002916: 4293 cmp r3, r2 + 8002918: d300 bcc.n 800291c + 800291a: e37b b.n 8003014 { move=HAL_GetTick()+100; - 80028f2: f7fd ffc1 bl 8000878 - 80028f6: 0003 movs r3, r0 - 80028f8: 3364 adds r3, #100 ; 0x64 - 80028fa: 613b str r3, [r7, #16] + 800291c: f7fd ffac bl 8000878 + 8002920: 0003 movs r3, r0 + 8002922: 3364 adds r3, #100 ; 0x64 + 8002924: 613b str r3, [r7, #16] countdown-=100; - 80028fc: 68bb ldr r3, [r7, #8] - 80028fe: 3b64 subs r3, #100 ; 0x64 - 8002900: 60bb str r3, [r7, #8] + 8002926: 68bb ldr r3, [r7, #8] + 8002928: 3b64 subs r3, #100 ; 0x64 + 800292a: 60bb str r3, [r7, #8] if(countdown<0) - 8002902: 68bb ldr r3, [r7, #8] - 8002904: 2b00 cmp r3, #0 - 8002906: da03 bge.n 8002910 + 800292c: 68bb ldr r3, [r7, #8] + 800292e: 2b00 cmp r3, #0 + 8002930: da03 bge.n 800293a { mode=1; - 8002908: 230f movs r3, #15 - 800290a: 18fb adds r3, r7, r3 - 800290c: 2201 movs r2, #1 - 800290e: 701a strb r2, [r3, #0] + 8002932: 230f movs r3, #15 + 8002934: 18fb adds r3, r7, r3 + 8002936: 2201 movs r2, #1 + 8002938: 701a strb r2, [r3, #0] } dis_buff.d_num[0]=((countdown/100)%10); - 8002910: 68bb ldr r3, [r7, #8] - 8002912: 2164 movs r1, #100 ; 0x64 - 8002914: 0018 movs r0, r3 - 8002916: f7fd fc81 bl 800021c <__divsi3> - 800291a: 0003 movs r3, r0 - 800291c: 210a movs r1, #10 - 800291e: 0018 movs r0, r3 - 8002920: f7fd fd62 bl 80003e8 <__aeabi_idivmod> - 8002924: 000b movs r3, r1 - 8002926: b2da uxtb r2, r3 - 8002928: 4b82 ldr r3, [pc, #520] ; (8002b34 ) - 800292a: 701a strb r2, [r3, #0] + 800293a: 68bb ldr r3, [r7, #8] + 800293c: 2164 movs r1, #100 ; 0x64 + 800293e: 0018 movs r0, r3 + 8002940: f7fd fc6c bl 800021c <__divsi3> + 8002944: 0003 movs r3, r0 + 8002946: 210a movs r1, #10 + 8002948: 0018 movs r0, r3 + 800294a: f7fd fd4d bl 80003e8 <__aeabi_idivmod> + 800294e: 000b movs r3, r1 + 8002950: b2da uxtb r2, r3 + 8002952: 4b85 ldr r3, [pc, #532] ; (8002b68 ) + 8002954: 701a strb r2, [r3, #0] dis_buff.d_num[1]=((countdown/100)%10); - 800292c: 68bb ldr r3, [r7, #8] - 800292e: 2164 movs r1, #100 ; 0x64 - 8002930: 0018 movs r0, r3 - 8002932: f7fd fc73 bl 800021c <__divsi3> - 8002936: 0003 movs r3, r0 - 8002938: 210a movs r1, #10 - 800293a: 0018 movs r0, r3 - 800293c: f7fd fd54 bl 80003e8 <__aeabi_idivmod> - 8002940: 000b movs r3, r1 - 8002942: b2da uxtb r2, r3 - 8002944: 4b7b ldr r3, [pc, #492] ; (8002b34 ) - 8002946: 705a strb r2, [r3, #1] + 8002956: 68bb ldr r3, [r7, #8] + 8002958: 2164 movs r1, #100 ; 0x64 + 800295a: 0018 movs r0, r3 + 800295c: f7fd fc5e bl 800021c <__divsi3> + 8002960: 0003 movs r3, r0 + 8002962: 210a movs r1, #10 + 8002964: 0018 movs r0, r3 + 8002966: f7fd fd3f bl 80003e8 <__aeabi_idivmod> + 800296a: 000b movs r3, r1 + 800296c: b2da uxtb r2, r3 + 800296e: 4b7e ldr r3, [pc, #504] ; (8002b68 ) + 8002970: 705a strb r2, [r3, #1] dis_buff.d_num[2]=((countdown/100)%10); - 8002948: 68bb ldr r3, [r7, #8] - 800294a: 2164 movs r1, #100 ; 0x64 - 800294c: 0018 movs r0, r3 - 800294e: f7fd fc65 bl 800021c <__divsi3> - 8002952: 0003 movs r3, r0 - 8002954: 210a movs r1, #10 - 8002956: 0018 movs r0, r3 - 8002958: f7fd fd46 bl 80003e8 <__aeabi_idivmod> - 800295c: 000b movs r3, r1 - 800295e: b2da uxtb r2, r3 - 8002960: 4b74 ldr r3, [pc, #464] ; (8002b34 ) - 8002962: 709a strb r2, [r3, #2] + 8002972: 68bb ldr r3, [r7, #8] + 8002974: 2164 movs r1, #100 ; 0x64 + 8002976: 0018 movs r0, r3 + 8002978: f7fd fc50 bl 800021c <__divsi3> + 800297c: 0003 movs r3, r0 + 800297e: 210a movs r1, #10 + 8002980: 0018 movs r0, r3 + 8002982: f7fd fd31 bl 80003e8 <__aeabi_idivmod> + 8002986: 000b movs r3, r1 + 8002988: b2da uxtb r2, r3 + 800298a: 4b77 ldr r3, [pc, #476] ; (8002b68 ) + 800298c: 709a strb r2, [r3, #2] dis_buff.d_num[3]=((countdown/100)%10); - 8002964: 68bb ldr r3, [r7, #8] - 8002966: 2164 movs r1, #100 ; 0x64 - 8002968: 0018 movs r0, r3 - 800296a: f7fd fc57 bl 800021c <__divsi3> - 800296e: 0003 movs r3, r0 - 8002970: 210a movs r1, #10 - 8002972: 0018 movs r0, r3 - 8002974: f7fd fd38 bl 80003e8 <__aeabi_idivmod> - 8002978: 000b movs r3, r1 - 800297a: b2da uxtb r2, r3 - 800297c: 4b6d ldr r3, [pc, #436] ; (8002b34 ) - 800297e: 70da strb r2, [r3, #3] + 800298e: 68bb ldr r3, [r7, #8] + 8002990: 2164 movs r1, #100 ; 0x64 + 8002992: 0018 movs r0, r3 + 8002994: f7fd fc42 bl 800021c <__divsi3> + 8002998: 0003 movs r3, r0 + 800299a: 210a movs r1, #10 + 800299c: 0018 movs r0, r3 + 800299e: f7fd fd23 bl 80003e8 <__aeabi_idivmod> + 80029a2: 000b movs r3, r1 + 80029a4: b2da uxtb r2, r3 + 80029a6: 4b70 ldr r3, [pc, #448] ; (8002b68 ) + 80029a8: 70da strb r2, [r3, #3] dis_buff.dot1=countdown>>3; - 8002980: 68bb ldr r3, [r7, #8] - 8002982: 10db asrs r3, r3, #3 - 8002984: 1c1a adds r2, r3, #0 - 8002986: 2301 movs r3, #1 - 8002988: 4013 ands r3, r2 - 800298a: b2da uxtb r2, r3 - 800298c: 4b69 ldr r3, [pc, #420] ; (8002b34 ) - 800298e: 2101 movs r1, #1 - 8002990: 400a ands r2, r1 - 8002992: 0010 movs r0, r2 - 8002994: 7a1a ldrb r2, [r3, #8] - 8002996: 2101 movs r1, #1 - 8002998: 438a bics r2, r1 - 800299a: 1c11 adds r1, r2, #0 - 800299c: 1c02 adds r2, r0, #0 - 800299e: 430a orrs r2, r1 - 80029a0: 721a strb r2, [r3, #8] + 80029aa: 68bb ldr r3, [r7, #8] + 80029ac: 10db asrs r3, r3, #3 + 80029ae: 1c1a adds r2, r3, #0 + 80029b0: 2301 movs r3, #1 + 80029b2: 4013 ands r3, r2 + 80029b4: b2da uxtb r2, r3 + 80029b6: 4b6c ldr r3, [pc, #432] ; (8002b68 ) + 80029b8: 2101 movs r1, #1 + 80029ba: 400a ands r2, r1 + 80029bc: 0010 movs r0, r2 + 80029be: 7a1a ldrb r2, [r3, #8] + 80029c0: 2101 movs r1, #1 + 80029c2: 438a bics r2, r1 + 80029c4: 1c11 adds r1, r2, #0 + 80029c6: 1c02 adds r2, r0, #0 + 80029c8: 430a orrs r2, r1 + 80029ca: 721a strb r2, [r3, #8] dis_buff.dot2=countdown>>4; - 80029a2: 68bb ldr r3, [r7, #8] - 80029a4: 111b asrs r3, r3, #4 - 80029a6: 1c1a adds r2, r3, #0 - 80029a8: 2301 movs r3, #1 - 80029aa: 4013 ands r3, r2 - 80029ac: b2da uxtb r2, r3 - 80029ae: 4b61 ldr r3, [pc, #388] ; (8002b34 ) - 80029b0: 2101 movs r1, #1 - 80029b2: 400a ands r2, r1 - 80029b4: 1890 adds r0, r2, r2 - 80029b6: 7a1a ldrb r2, [r3, #8] - 80029b8: 2102 movs r1, #2 - 80029ba: 438a bics r2, r1 - 80029bc: 1c11 adds r1, r2, #0 - 80029be: 1c02 adds r2, r0, #0 - 80029c0: 430a orrs r2, r1 - 80029c2: 721a strb r2, [r3, #8] + 80029cc: 68bb ldr r3, [r7, #8] + 80029ce: 111b asrs r3, r3, #4 + 80029d0: 1c1a adds r2, r3, #0 + 80029d2: 2301 movs r3, #1 + 80029d4: 4013 ands r3, r2 + 80029d6: b2da uxtb r2, r3 + 80029d8: 4b63 ldr r3, [pc, #396] ; (8002b68 ) + 80029da: 2101 movs r1, #1 + 80029dc: 400a ands r2, r1 + 80029de: 1890 adds r0, r2, r2 + 80029e0: 7a1a ldrb r2, [r3, #8] + 80029e2: 2102 movs r1, #2 + 80029e4: 438a bics r2, r1 + 80029e6: 1c11 adds r1, r2, #0 + 80029e8: 1c02 adds r2, r0, #0 + 80029ea: 430a orrs r2, r1 + 80029ec: 721a strb r2, [r3, #8] dis_buff.dot3=countdown>>5; - 80029c4: 68bb ldr r3, [r7, #8] - 80029c6: 115b asrs r3, r3, #5 - 80029c8: 1c1a adds r2, r3, #0 - 80029ca: 2301 movs r3, #1 - 80029cc: 4013 ands r3, r2 - 80029ce: b2da uxtb r2, r3 - 80029d0: 4b58 ldr r3, [pc, #352] ; (8002b34 ) - 80029d2: 2101 movs r1, #1 - 80029d4: 400a ands r2, r1 - 80029d6: 0090 lsls r0, r2, #2 - 80029d8: 7a1a ldrb r2, [r3, #8] - 80029da: 2104 movs r1, #4 - 80029dc: 438a bics r2, r1 - 80029de: 1c11 adds r1, r2, #0 - 80029e0: 1c02 adds r2, r0, #0 - 80029e2: 430a orrs r2, r1 - 80029e4: 721a strb r2, [r3, #8] + 80029ee: 68bb ldr r3, [r7, #8] + 80029f0: 115b asrs r3, r3, #5 + 80029f2: 1c1a adds r2, r3, #0 + 80029f4: 2301 movs r3, #1 + 80029f6: 4013 ands r3, r2 + 80029f8: b2da uxtb r2, r3 + 80029fa: 4b5b ldr r3, [pc, #364] ; (8002b68 ) + 80029fc: 2101 movs r1, #1 + 80029fe: 400a ands r2, r1 + 8002a00: 0090 lsls r0, r2, #2 + 8002a02: 7a1a ldrb r2, [r3, #8] + 8002a04: 2104 movs r1, #4 + 8002a06: 438a bics r2, r1 + 8002a08: 1c11 adds r1, r2, #0 + 8002a0a: 1c02 adds r2, r0, #0 + 8002a0c: 430a orrs r2, r1 + 8002a0e: 721a strb r2, [r3, #8] dis_buff.dot4=countdown>>6; - 80029e6: 68bb ldr r3, [r7, #8] - 80029e8: 119b asrs r3, r3, #6 - 80029ea: 1c1a adds r2, r3, #0 - 80029ec: 2301 movs r3, #1 - 80029ee: 4013 ands r3, r2 - 80029f0: b2da uxtb r2, r3 - 80029f2: 4b50 ldr r3, [pc, #320] ; (8002b34 ) - 80029f4: 2101 movs r1, #1 - 80029f6: 400a ands r2, r1 - 80029f8: 00d0 lsls r0, r2, #3 - 80029fa: 7a1a ldrb r2, [r3, #8] - 80029fc: 2108 movs r1, #8 - 80029fe: 438a bics r2, r1 - 8002a00: 1c11 adds r1, r2, #0 - 8002a02: 1c02 adds r2, r0, #0 - 8002a04: 430a orrs r2, r1 - 8002a06: 721a strb r2, [r3, #8] + 8002a10: 68bb ldr r3, [r7, #8] + 8002a12: 119b asrs r3, r3, #6 + 8002a14: 1c1a adds r2, r3, #0 + 8002a16: 2301 movs r3, #1 + 8002a18: 4013 ands r3, r2 + 8002a1a: b2da uxtb r2, r3 + 8002a1c: 4b52 ldr r3, [pc, #328] ; (8002b68 ) + 8002a1e: 2101 movs r1, #1 + 8002a20: 400a ands r2, r1 + 8002a22: 00d0 lsls r0, r2, #3 + 8002a24: 7a1a ldrb r2, [r3, #8] + 8002a26: 2108 movs r1, #8 + 8002a28: 438a bics r2, r1 + 8002a2a: 1c11 adds r1, r2, #0 + 8002a2c: 1c02 adds r2, r0, #0 + 8002a2e: 430a orrs r2, r1 + 8002a30: 721a strb r2, [r3, #8] } break; - 8002a08: e2ea b.n 8002fe0 + 8002a32: e2ef b.n 8003014 case 1: //standby moto.moto1a=0; - 8002a0a: 4b4b ldr r3, [pc, #300] ; (8002b38 ) - 8002a0c: 2200 movs r2, #0 - 8002a0e: 721a strb r2, [r3, #8] + 8002a34: 4b4d ldr r3, [pc, #308] ; (8002b6c ) + 8002a36: 2200 movs r2, #0 + 8002a38: 721a strb r2, [r3, #8] moto.moto1b=0; - 8002a10: 4b49 ldr r3, [pc, #292] ; (8002b38 ) - 8002a12: 2200 movs r2, #0 - 8002a14: 725a strb r2, [r3, #9] + 8002a3a: 4b4c ldr r3, [pc, #304] ; (8002b6c ) + 8002a3c: 2200 movs r2, #0 + 8002a3e: 725a strb r2, [r3, #9] moto.moto2a=0; - 8002a16: 4b48 ldr r3, [pc, #288] ; (8002b38 ) - 8002a18: 2200 movs r2, #0 - 8002a1a: 729a strb r2, [r3, #10] + 8002a40: 4b4a ldr r3, [pc, #296] ; (8002b6c ) + 8002a42: 2200 movs r2, #0 + 8002a44: 729a strb r2, [r3, #10] moto.moto2b=0; - 8002a1c: 4b46 ldr r3, [pc, #280] ; (8002b38 ) - 8002a1e: 2200 movs r2, #0 - 8002a20: 72da strb r2, [r3, #11] + 8002a46: 4b49 ldr r3, [pc, #292] ; (8002b6c ) + 8002a48: 2200 movs r2, #0 + 8002a4a: 72da strb r2, [r3, #11] if(HAL_GetTick()>runtime) - 8002a22: f7fd ff29 bl 8000878 - 8002a26: 0002 movs r2, r0 - 8002a28: 697b ldr r3, [r7, #20] - 8002a2a: 4293 cmp r3, r2 - 8002a2c: d217 bcs.n 8002a5e + 8002a4c: f7fd ff14 bl 8000878 + 8002a50: 0002 movs r2, r0 + 8002a52: 697b ldr r3, [r7, #20] + 8002a54: 4293 cmp r3, r2 + 8002a56: d221 bcs.n 8002a9c { runtime+=1000; - 8002a2e: 697b ldr r3, [r7, #20] - 8002a30: 22fa movs r2, #250 ; 0xfa - 8002a32: 0092 lsls r2, r2, #2 - 8002a34: 4694 mov ip, r2 - 8002a36: 4463 add r3, ip - 8002a38: 617b str r3, [r7, #20] + 8002a58: 697b ldr r3, [r7, #20] + 8002a5a: 22fa movs r2, #250 ; 0xfa + 8002a5c: 0092 lsls r2, r2, #2 + 8002a5e: 4694 mov ip, r2 + 8002a60: 4463 add r3, ip + 8002a62: 617b str r3, [r7, #20] if(dis_buff.led_run==1) - 8002a3a: 4b3e ldr r3, [pc, #248] ; (8002b34 ) - 8002a3c: 7a1b ldrb r3, [r3, #8] - 8002a3e: 2210 movs r2, #16 - 8002a40: 4013 ands r3, r2 - 8002a42: b2db uxtb r3, r3 - 8002a44: 2b00 cmp r3, #0 - 8002a46: d005 beq.n 8002a54 + 8002a64: 4b40 ldr r3, [pc, #256] ; (8002b68 ) + 8002a66: 7a1b ldrb r3, [r3, #8] + 8002a68: 2210 movs r2, #16 + 8002a6a: 4013 ands r3, r2 + 8002a6c: b2db uxtb r3, r3 + 8002a6e: 2b00 cmp r3, #0 + 8002a70: d00a beq.n 8002a88 { dis_buff.led_run=0; - 8002a48: 4b3a ldr r3, [pc, #232] ; (8002b34 ) - 8002a4a: 7a1a ldrb r2, [r3, #8] - 8002a4c: 2110 movs r1, #16 - 8002a4e: 438a bics r2, r1 - 8002a50: 721a strb r2, [r3, #8] - 8002a52: e004 b.n 8002a5e + 8002a72: 4b3d ldr r3, [pc, #244] ; (8002b68 ) + 8002a74: 7a1a ldrb r2, [r3, #8] + 8002a76: 2110 movs r1, #16 + 8002a78: 438a bics r2, r1 + 8002a7a: 721a strb r2, [r3, #8] + dis_buff.dot4=1; + 8002a7c: 4b3a ldr r3, [pc, #232] ; (8002b68 ) + 8002a7e: 7a1a ldrb r2, [r3, #8] + 8002a80: 2108 movs r1, #8 + 8002a82: 430a orrs r2, r1 + 8002a84: 721a strb r2, [r3, #8] + 8002a86: e009 b.n 8002a9c }else { dis_buff.led_run=1; - 8002a54: 4b37 ldr r3, [pc, #220] ; (8002b34 ) - 8002a56: 7a1a ldrb r2, [r3, #8] - 8002a58: 2110 movs r1, #16 - 8002a5a: 430a orrs r2, r1 - 8002a5c: 721a strb r2, [r3, #8] + 8002a88: 4b37 ldr r3, [pc, #220] ; (8002b68 ) + 8002a8a: 7a1a ldrb r2, [r3, #8] + 8002a8c: 2110 movs r1, #16 + 8002a8e: 430a orrs r2, r1 + 8002a90: 721a strb r2, [r3, #8] + dis_buff.dot4=0; + 8002a92: 4b35 ldr r3, [pc, #212] ; (8002b68 ) + 8002a94: 7a1a ldrb r2, [r3, #8] + 8002a96: 2108 movs r1, #8 + 8002a98: 438a bics r2, r1 + 8002a9a: 721a strb r2, [r3, #8] } } - dis_buff.d_num[0]=0xff; - 8002a5e: 4b35 ldr r3, [pc, #212] ; (8002b34 ) - 8002a60: 22ff movs r2, #255 ; 0xff - 8002a62: 701a strb r2, [r3, #0] - dis_buff.d_num[1]=0xff; - 8002a64: 4b33 ldr r3, [pc, #204] ; (8002b34 ) - 8002a66: 22ff movs r2, #255 ; 0xff - 8002a68: 705a strb r2, [r3, #1] - dis_buff.d_num[2]=0xff; - 8002a6a: 4b32 ldr r3, [pc, #200] ; (8002b34 ) - 8002a6c: 22ff movs r2, #255 ; 0xff - 8002a6e: 709a strb r2, [r3, #2] - dis_buff.d_num[3]=0xff; - 8002a70: 4b30 ldr r3, [pc, #192] ; (8002b34 ) - 8002a72: 22ff movs r2, #255 ; 0xff - 8002a74: 70da strb r2, [r3, #3] + dis_buff.d_num[0]=16; + 8002a9c: 4b32 ldr r3, [pc, #200] ; (8002b68 ) + 8002a9e: 2210 movs r2, #16 + 8002aa0: 701a strb r2, [r3, #0] + dis_buff.d_num[1]=16; + 8002aa2: 4b31 ldr r3, [pc, #196] ; (8002b68 ) + 8002aa4: 2210 movs r2, #16 + 8002aa6: 705a strb r2, [r3, #1] + dis_buff.d_num[2]=16; + 8002aa8: 4b2f ldr r3, [pc, #188] ; (8002b68 ) + 8002aaa: 2210 movs r2, #16 + 8002aac: 709a strb r2, [r3, #2] + dis_buff.d_num[3]=16; + 8002aae: 4b2e ldr r3, [pc, #184] ; (8002b68 ) + 8002ab0: 2210 movs r2, #16 + 8002ab2: 70da strb r2, [r3, #3] dis_buff.dot1=0; - 8002a76: 4b2f ldr r3, [pc, #188] ; (8002b34 ) - 8002a78: 7a1a ldrb r2, [r3, #8] - 8002a7a: 2101 movs r1, #1 - 8002a7c: 438a bics r2, r1 - 8002a7e: 721a strb r2, [r3, #8] + 8002ab4: 4b2c ldr r3, [pc, #176] ; (8002b68 ) + 8002ab6: 7a1a ldrb r2, [r3, #8] + 8002ab8: 2101 movs r1, #1 + 8002aba: 438a bics r2, r1 + 8002abc: 721a strb r2, [r3, #8] dis_buff.dot2=0; - 8002a80: 4b2c ldr r3, [pc, #176] ; (8002b34 ) - 8002a82: 7a1a ldrb r2, [r3, #8] - 8002a84: 2102 movs r1, #2 - 8002a86: 438a bics r2, r1 - 8002a88: 721a strb r2, [r3, #8] + 8002abe: 4b2a ldr r3, [pc, #168] ; (8002b68 ) + 8002ac0: 7a1a ldrb r2, [r3, #8] + 8002ac2: 2102 movs r1, #2 + 8002ac4: 438a bics r2, r1 + 8002ac6: 721a strb r2, [r3, #8] dis_buff.dot3=0; - 8002a8a: 4b2a ldr r3, [pc, #168] ; (8002b34 ) - 8002a8c: 7a1a ldrb r2, [r3, #8] - 8002a8e: 2104 movs r1, #4 - 8002a90: 438a bics r2, r1 - 8002a92: 721a strb r2, [r3, #8] - dis_buff.dot4=0; - 8002a94: 4b27 ldr r3, [pc, #156] ; (8002b34 ) - 8002a96: 7a1a ldrb r2, [r3, #8] - 8002a98: 2108 movs r1, #8 - 8002a9a: 438a bics r2, r1 - 8002a9c: 721a strb r2, [r3, #8] + 8002ac8: 4b27 ldr r3, [pc, #156] ; (8002b68 ) + 8002aca: 7a1a ldrb r2, [r3, #8] + 8002acc: 2104 movs r1, #4 + 8002ace: 438a bics r2, r1 + 8002ad0: 721a strb r2, [r3, #8] + overload_times=0; - 8002a9e: 230c movs r3, #12 - 8002aa0: 18fb adds r3, r7, r3 - 8002aa2: 2200 movs r2, #0 - 8002aa4: 801a strh r2, [r3, #0] + 8002ad2: 230c movs r3, #12 + 8002ad4: 18fb adds r3, r7, r3 + 8002ad6: 2200 movs r2, #0 + 8002ad8: 801a strh r2, [r3, #0] if(key2.code!=0) - 8002aa6: 4b29 ldr r3, [pc, #164] ; (8002b4c ) - 8002aa8: 681b ldr r3, [r3, #0] - 8002aaa: 2b00 cmp r3, #0 - 8002aac: d005 beq.n 8002aba + 8002ada: 4b29 ldr r3, [pc, #164] ; (8002b80 ) + 8002adc: 681b ldr r3, [r3, #0] + 8002ade: 2b00 cmp r3, #0 + 8002ae0: d005 beq.n 8002aee { mode=2; - 8002aae: 230f movs r3, #15 - 8002ab0: 18fb adds r3, r7, r3 - 8002ab2: 2202 movs r2, #2 - 8002ab4: 701a strb r2, [r3, #0] + 8002ae2: 230f movs r3, #15 + 8002ae4: 18fb adds r3, r7, r3 + 8002ae6: 2202 movs r2, #2 + 8002ae8: 701a strb r2, [r3, #0] countdown=countdown_set; - 8002ab6: 687b ldr r3, [r7, #4] - 8002ab8: 60bb str r3, [r7, #8] + 8002aea: 687b ldr r3, [r7, #4] + 8002aec: 60bb str r3, [r7, #8] } if(key3.code!=0) - 8002aba: 4b25 ldr r3, [pc, #148] ; (8002b50 ) - 8002abc: 681b ldr r3, [r3, #0] - 8002abe: 2b00 cmp r3, #0 - 8002ac0: d005 beq.n 8002ace + 8002aee: 4b25 ldr r3, [pc, #148] ; (8002b84 ) + 8002af0: 681b ldr r3, [r3, #0] + 8002af2: 2b00 cmp r3, #0 + 8002af4: d005 beq.n 8002b02 { mode=3; - 8002ac2: 230f movs r3, #15 - 8002ac4: 18fb adds r3, r7, r3 - 8002ac6: 2203 movs r2, #3 - 8002ac8: 701a strb r2, [r3, #0] + 8002af6: 230f movs r3, #15 + 8002af8: 18fb adds r3, r7, r3 + 8002afa: 2203 movs r2, #3 + 8002afc: 701a strb r2, [r3, #0] countdown=countdown_set; - 8002aca: 687b ldr r3, [r7, #4] - 8002acc: 60bb str r3, [r7, #8] + 8002afe: 687b ldr r3, [r7, #4] + 8002b00: 60bb str r3, [r7, #8] } if(key1.code!=0) - 8002ace: 4b21 ldr r3, [pc, #132] ; (8002b54 ) - 8002ad0: 681b ldr r3, [r3, #0] - 8002ad2: 2b00 cmp r3, #0 - 8002ad4: d100 bne.n 8002ad8 - 8002ad6: e285 b.n 8002fe4 + 8002b02: 4b21 ldr r3, [pc, #132] ; (8002b88 ) + 8002b04: 681b ldr r3, [r3, #0] + 8002b06: 2b00 cmp r3, #0 + 8002b08: d100 bne.n 8002b0c + 8002b0a: e285 b.n 8003018 { mode=4; - 8002ad8: 230f movs r3, #15 - 8002ada: 18fb adds r3, r7, r3 - 8002adc: 2204 movs r2, #4 - 8002ade: 701a strb r2, [r3, #0] + 8002b0c: 230f movs r3, #15 + 8002b0e: 18fb adds r3, r7, r3 + 8002b10: 2204 movs r2, #4 + 8002b12: 701a strb r2, [r3, #0] countdown=10000; - 8002ae0: 4b1d ldr r3, [pc, #116] ; (8002b58 ) - 8002ae2: 60bb str r3, [r7, #8] + 8002b14: 4b1d ldr r3, [pc, #116] ; (8002b8c ) + 8002b16: 60bb str r3, [r7, #8] } break; - 8002ae4: e27e b.n 8002fe4 + 8002b18: e27e b.n 8003018 case 2: moto.moto1a=10; - 8002ae6: 4b14 ldr r3, [pc, #80] ; (8002b38 ) - 8002ae8: 220a movs r2, #10 - 8002aea: 721a strb r2, [r3, #8] + 8002b1a: 4b14 ldr r3, [pc, #80] ; (8002b6c ) + 8002b1c: 220a movs r2, #10 + 8002b1e: 721a strb r2, [r3, #8] moto.moto1b=0; - 8002aec: 4b12 ldr r3, [pc, #72] ; (8002b38 ) - 8002aee: 2200 movs r2, #0 - 8002af0: 725a strb r2, [r3, #9] + 8002b20: 4b12 ldr r3, [pc, #72] ; (8002b6c ) + 8002b22: 2200 movs r2, #0 + 8002b24: 725a strb r2, [r3, #9] moto.moto2a=10; - 8002af2: 4b11 ldr r3, [pc, #68] ; (8002b38 ) - 8002af4: 220a movs r2, #10 - 8002af6: 729a strb r2, [r3, #10] + 8002b26: 4b11 ldr r3, [pc, #68] ; (8002b6c ) + 8002b28: 220a movs r2, #10 + 8002b2a: 729a strb r2, [r3, #10] moto.moto2b=0; - 8002af8: 4b0f ldr r3, [pc, #60] ; (8002b38 ) - 8002afa: 2200 movs r2, #0 - 8002afc: 72da strb r2, [r3, #11] + 8002b2c: 4b0f ldr r3, [pc, #60] ; (8002b6c ) + 8002b2e: 2200 movs r2, #0 + 8002b30: 72da strb r2, [r3, #11] if(HAL_GetTick()>move) - 8002afe: f7fd febb bl 8000878 - 8002b02: 0002 movs r2, r0 - 8002b04: 693b ldr r3, [r7, #16] - 8002b06: 4293 cmp r3, r2 - 8002b08: d237 bcs.n 8002b7a + 8002b32: f7fd fea1 bl 8000878 + 8002b36: 0002 movs r2, r0 + 8002b38: 693b ldr r3, [r7, #16] + 8002b3a: 4293 cmp r3, r2 + 8002b3c: d237 bcs.n 8002bae { move=HAL_GetTick()+100; - 8002b0a: f7fd feb5 bl 8000878 - 8002b0e: 0003 movs r3, r0 - 8002b10: 3364 adds r3, #100 ; 0x64 - 8002b12: 613b str r3, [r7, #16] + 8002b3e: f7fd fe9b bl 8000878 + 8002b42: 0003 movs r3, r0 + 8002b44: 3364 adds r3, #100 ; 0x64 + 8002b46: 613b str r3, [r7, #16] if(dis_buff.led_run==1) - 8002b14: 4b07 ldr r3, [pc, #28] ; (8002b34 ) - 8002b16: 7a1b ldrb r3, [r3, #8] - 8002b18: 2210 movs r2, #16 - 8002b1a: 4013 ands r3, r2 - 8002b1c: b2db uxtb r3, r3 - 8002b1e: 2b00 cmp r3, #0 - 8002b20: d01c beq.n 8002b5c + 8002b48: 4b07 ldr r3, [pc, #28] ; (8002b68 ) + 8002b4a: 7a1b ldrb r3, [r3, #8] + 8002b4c: 2210 movs r2, #16 + 8002b4e: 4013 ands r3, r2 + 8002b50: b2db uxtb r3, r3 + 8002b52: 2b00 cmp r3, #0 + 8002b54: d01c beq.n 8002b90 { dis_buff.led_run=0; - 8002b22: 4b04 ldr r3, [pc, #16] ; (8002b34 ) - 8002b24: 7a1a ldrb r2, [r3, #8] - 8002b26: 2110 movs r1, #16 - 8002b28: 438a bics r2, r1 - 8002b2a: 721a strb r2, [r3, #8] - 8002b2c: e01b b.n 8002b66 - 8002b2e: 46c0 nop ; (mov r8, r8) - 8002b30: 00003a98 .word 0x00003a98 - 8002b34: 20000028 .word 0x20000028 - 8002b38: 200000f4 .word 0x200000f4 - 8002b3c: 20000034 .word 0x20000034 - 8002b40: 0000ffff .word 0x0000ffff - 8002b44: 200000d0 .word 0x200000d0 - 8002b48: 08003144 .word 0x08003144 - 8002b4c: 200000e4 .word 0x200000e4 - 8002b50: 200000c0 .word 0x200000c0 - 8002b54: 200000a0 .word 0x200000a0 - 8002b58: 00002710 .word 0x00002710 + 8002b56: 4b04 ldr r3, [pc, #16] ; (8002b68 ) + 8002b58: 7a1a ldrb r2, [r3, #8] + 8002b5a: 2110 movs r1, #16 + 8002b5c: 438a bics r2, r1 + 8002b5e: 721a strb r2, [r3, #8] + 8002b60: e01b b.n 8002b9a + 8002b62: 46c0 nop ; (mov r8, r8) + 8002b64: 00003a98 .word 0x00003a98 + 8002b68: 20000028 .word 0x20000028 + 8002b6c: 200000dc .word 0x200000dc + 8002b70: 20000034 .word 0x20000034 + 8002b74: 0000ffff .word 0x0000ffff + 8002b78: 200000b8 .word 0x200000b8 + 8002b7c: 0800317c .word 0x0800317c + 8002b80: 200000cc .word 0x200000cc + 8002b84: 200000a8 .word 0x200000a8 + 8002b88: 20000088 .word 0x20000088 + 8002b8c: 00002710 .word 0x00002710 }else { dis_buff.led_run=1; - 8002b5c: 4bd9 ldr r3, [pc, #868] ; (8002ec4 ) - 8002b5e: 7a1a ldrb r2, [r3, #8] - 8002b60: 2110 movs r1, #16 - 8002b62: 430a orrs r2, r1 - 8002b64: 721a strb r2, [r3, #8] + 8002b90: 4bd9 ldr r3, [pc, #868] ; (8002ef8 ) + 8002b92: 7a1a ldrb r2, [r3, #8] + 8002b94: 2110 movs r1, #16 + 8002b96: 430a orrs r2, r1 + 8002b98: 721a strb r2, [r3, #8] } countdown-=100; - 8002b66: 68bb ldr r3, [r7, #8] - 8002b68: 3b64 subs r3, #100 ; 0x64 - 8002b6a: 60bb str r3, [r7, #8] + 8002b9a: 68bb ldr r3, [r7, #8] + 8002b9c: 3b64 subs r3, #100 ; 0x64 + 8002b9e: 60bb str r3, [r7, #8] if(countdown<0) - 8002b6c: 68bb ldr r3, [r7, #8] - 8002b6e: 2b00 cmp r3, #0 - 8002b70: da03 bge.n 8002b7a + 8002ba0: 68bb ldr r3, [r7, #8] + 8002ba2: 2b00 cmp r3, #0 + 8002ba4: da03 bge.n 8002bae { mode=1; - 8002b72: 230f movs r3, #15 - 8002b74: 18fb adds r3, r7, r3 - 8002b76: 2201 movs r2, #1 - 8002b78: 701a strb r2, [r3, #0] + 8002ba6: 230f movs r3, #15 + 8002ba8: 18fb adds r3, r7, r3 + 8002baa: 2201 movs r2, #1 + 8002bac: 701a strb r2, [r3, #0] } } dis_buff.d_num[3]=(countdown/100)%10; - 8002b7a: 68bb ldr r3, [r7, #8] - 8002b7c: 2164 movs r1, #100 ; 0x64 - 8002b7e: 0018 movs r0, r3 - 8002b80: f7fd fb4c bl 800021c <__divsi3> - 8002b84: 0003 movs r3, r0 - 8002b86: 210a movs r1, #10 - 8002b88: 0018 movs r0, r3 - 8002b8a: f7fd fc2d bl 80003e8 <__aeabi_idivmod> - 8002b8e: 000b movs r3, r1 - 8002b90: b2da uxtb r2, r3 - 8002b92: 4bcc ldr r3, [pc, #816] ; (8002ec4 ) - 8002b94: 70da strb r2, [r3, #3] + 8002bae: 68bb ldr r3, [r7, #8] + 8002bb0: 2164 movs r1, #100 ; 0x64 + 8002bb2: 0018 movs r0, r3 + 8002bb4: f7fd fb32 bl 800021c <__divsi3> + 8002bb8: 0003 movs r3, r0 + 8002bba: 210a movs r1, #10 + 8002bbc: 0018 movs r0, r3 + 8002bbe: f7fd fc13 bl 80003e8 <__aeabi_idivmod> + 8002bc2: 000b movs r3, r1 + 8002bc4: b2da uxtb r2, r3 + 8002bc6: 4bcc ldr r3, [pc, #816] ; (8002ef8 ) + 8002bc8: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown/1000)%10; - 8002b96: 68bb ldr r3, [r7, #8] - 8002b98: 22fa movs r2, #250 ; 0xfa - 8002b9a: 0091 lsls r1, r2, #2 - 8002b9c: 0018 movs r0, r3 - 8002b9e: f7fd fb3d bl 800021c <__divsi3> - 8002ba2: 0003 movs r3, r0 - 8002ba4: 210a movs r1, #10 - 8002ba6: 0018 movs r0, r3 - 8002ba8: f7fd fc1e bl 80003e8 <__aeabi_idivmod> - 8002bac: 000b movs r3, r1 - 8002bae: b2da uxtb r2, r3 - 8002bb0: 4bc4 ldr r3, [pc, #784] ; (8002ec4 ) - 8002bb2: 709a strb r2, [r3, #2] + 8002bca: 68bb ldr r3, [r7, #8] + 8002bcc: 22fa movs r2, #250 ; 0xfa + 8002bce: 0091 lsls r1, r2, #2 + 8002bd0: 0018 movs r0, r3 + 8002bd2: f7fd fb23 bl 800021c <__divsi3> + 8002bd6: 0003 movs r3, r0 + 8002bd8: 210a movs r1, #10 + 8002bda: 0018 movs r0, r3 + 8002bdc: f7fd fc04 bl 80003e8 <__aeabi_idivmod> + 8002be0: 000b movs r3, r1 + 8002be2: b2da uxtb r2, r3 + 8002be4: 4bc4 ldr r3, [pc, #784] ; (8002ef8 ) + 8002be6: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown/10000)%10); - 8002bb4: 68bb ldr r3, [r7, #8] - 8002bb6: 49c4 ldr r1, [pc, #784] ; (8002ec8 ) - 8002bb8: 0018 movs r0, r3 - 8002bba: f7fd fb2f bl 800021c <__divsi3> - 8002bbe: 0003 movs r3, r0 - 8002bc0: 210a movs r1, #10 - 8002bc2: 0018 movs r0, r3 - 8002bc4: f7fd fc10 bl 80003e8 <__aeabi_idivmod> - 8002bc8: 000b movs r3, r1 - 8002bca: b2da uxtb r2, r3 - 8002bcc: 4bbd ldr r3, [pc, #756] ; (8002ec4 ) - 8002bce: 705a strb r2, [r3, #1] - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; - 8002bd0: 4bbc ldr r3, [pc, #752] ; (8002ec4 ) - 8002bd2: 785b ldrb r3, [r3, #1] - 8002bd4: 2b00 cmp r3, #0 - 8002bd6: d002 beq.n 8002bde - 8002bd8: 4bba ldr r3, [pc, #744] ; (8002ec4 ) - 8002bda: 785a ldrb r2, [r3, #1] - 8002bdc: e000 b.n 8002be0 - 8002bde: 22ff movs r2, #255 ; 0xff - 8002be0: 4bb8 ldr r3, [pc, #736] ; (8002ec4 ) - 8002be2: 705a strb r2, [r3, #1] + 8002be8: 68bb ldr r3, [r7, #8] + 8002bea: 49c4 ldr r1, [pc, #784] ; (8002efc ) + 8002bec: 0018 movs r0, r3 + 8002bee: f7fd fb15 bl 800021c <__divsi3> + 8002bf2: 0003 movs r3, r0 + 8002bf4: 210a movs r1, #10 + 8002bf6: 0018 movs r0, r3 + 8002bf8: f7fd fbf6 bl 80003e8 <__aeabi_idivmod> + 8002bfc: 000b movs r3, r1 + 8002bfe: b2da uxtb r2, r3 + 8002c00: 4bbd ldr r3, [pc, #756] ; (8002ef8 ) + 8002c02: 705a strb r2, [r3, #1] + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; + 8002c04: 4bbc ldr r3, [pc, #752] ; (8002ef8 ) + 8002c06: 785b ldrb r3, [r3, #1] + 8002c08: 2b00 cmp r3, #0 + 8002c0a: d002 beq.n 8002c12 + 8002c0c: 4bba ldr r3, [pc, #744] ; (8002ef8 ) + 8002c0e: 785a ldrb r2, [r3, #1] + 8002c10: e000 b.n 8002c14 + 8002c12: 2210 movs r2, #16 + 8002c14: 4bb8 ldr r3, [pc, #736] ; (8002ef8 ) + 8002c16: 705a strb r2, [r3, #1] dis_buff.dot3=1; - 8002be4: 4bb7 ldr r3, [pc, #732] ; (8002ec4 ) - 8002be6: 7a1a ldrb r2, [r3, #8] - 8002be8: 2104 movs r1, #4 - 8002bea: 430a orrs r2, r1 - 8002bec: 721a strb r2, [r3, #8] + 8002c18: 4bb7 ldr r3, [pc, #732] ; (8002ef8 ) + 8002c1a: 7a1a ldrb r2, [r3, #8] + 8002c1c: 2104 movs r1, #4 + 8002c1e: 430a orrs r2, r1 + 8002c20: 721a strb r2, [r3, #8] if(key3.code!=0) - 8002bee: 4bb7 ldr r3, [pc, #732] ; (8002ecc ) - 8002bf0: 681b ldr r3, [r3, #0] - 8002bf2: 2b00 cmp r3, #0 - 8002bf4: d007 beq.n 8002c06 + 8002c22: 4bb7 ldr r3, [pc, #732] ; (8002f00 ) + 8002c24: 681b ldr r3, [r3, #0] + 8002c26: 2b00 cmp r3, #0 + 8002c28: d007 beq.n 8002c3a { mode=3; - 8002bf6: 230f movs r3, #15 - 8002bf8: 18fb adds r3, r7, r3 - 8002bfa: 2203 movs r2, #3 - 8002bfc: 701a strb r2, [r3, #0] + 8002c2a: 230f movs r3, #15 + 8002c2c: 18fb adds r3, r7, r3 + 8002c2e: 2203 movs r2, #3 + 8002c30: 701a strb r2, [r3, #0] countdown=countdown_set-countdown; - 8002bfe: 687a ldr r2, [r7, #4] - 8002c00: 68bb ldr r3, [r7, #8] - 8002c02: 1ad3 subs r3, r2, r3 - 8002c04: 60bb str r3, [r7, #8] + 8002c32: 687a ldr r2, [r7, #4] + 8002c34: 68bb ldr r3, [r7, #8] + 8002c36: 1ad3 subs r3, r2, r3 + 8002c38: 60bb str r3, [r7, #8] } if(key4.code!=0) - 8002c06: 4bb2 ldr r3, [pc, #712] ; (8002ed0 ) - 8002c08: 681b ldr r3, [r3, #0] - 8002c0a: 2b00 cmp r3, #0 - 8002c0c: d003 beq.n 8002c16 + 8002c3a: 4bb2 ldr r3, [pc, #712] ; (8002f04 ) + 8002c3c: 681b ldr r3, [r3, #0] + 8002c3e: 2b00 cmp r3, #0 + 8002c40: d003 beq.n 8002c4a { mode=1; - 8002c0e: 230f movs r3, #15 - 8002c10: 18fb adds r3, r7, r3 - 8002c12: 2201 movs r2, #1 - 8002c14: 701a strb r2, [r3, #0] + 8002c42: 230f movs r3, #15 + 8002c44: 18fb adds r3, r7, r3 + 8002c46: 2201 movs r2, #1 + 8002c48: 701a strb r2, [r3, #0] } if(overload.code!=0) - 8002c16: 4baf ldr r3, [pc, #700] ; (8002ed4 ) - 8002c18: 681b ldr r3, [r3, #0] - 8002c1a: 2b00 cmp r3, #0 - 8002c1c: d005 beq.n 8002c2a + 8002c4a: 4baf ldr r3, [pc, #700] ; (8002f08 ) + 8002c4c: 681b ldr r3, [r3, #0] + 8002c4e: 2b00 cmp r3, #0 + 8002c50: d005 beq.n 8002c5e { overload_times+=1; - 8002c1e: 220c movs r2, #12 - 8002c20: 18bb adds r3, r7, r2 - 8002c22: 18ba adds r2, r7, r2 - 8002c24: 8812 ldrh r2, [r2, #0] - 8002c26: 3201 adds r2, #1 - 8002c28: 801a strh r2, [r3, #0] + 8002c52: 220c movs r2, #12 + 8002c54: 18bb adds r3, r7, r2 + 8002c56: 18ba adds r2, r7, r2 + 8002c58: 8812 ldrh r2, [r2, #0] + 8002c5a: 3201 adds r2, #1 + 8002c5c: 801a strh r2, [r3, #0] } if(overload_times>2) - 8002c2a: 230c movs r3, #12 - 8002c2c: 18fb adds r3, r7, r3 - 8002c2e: 881b ldrh r3, [r3, #0] - 8002c30: 2b02 cmp r3, #2 - 8002c32: d800 bhi.n 8002c36 - 8002c34: e1d8 b.n 8002fe8 + 8002c5e: 230c movs r3, #12 + 8002c60: 18fb adds r3, r7, r3 + 8002c62: 881b ldrh r3, [r3, #0] + 8002c64: 2b02 cmp r3, #2 + 8002c66: d800 bhi.n 8002c6a + 8002c68: e1d8 b.n 800301c { overload_mode=2; - 8002c36: 230e movs r3, #14 - 8002c38: 18fb adds r3, r7, r3 - 8002c3a: 2202 movs r2, #2 - 8002c3c: 701a strb r2, [r3, #0] + 8002c6a: 230e movs r3, #14 + 8002c6c: 18fb adds r3, r7, r3 + 8002c6e: 2202 movs r2, #2 + 8002c70: 701a strb r2, [r3, #0] mode=5; - 8002c3e: 230f movs r3, #15 - 8002c40: 18fb adds r3, r7, r3 - 8002c42: 2205 movs r2, #5 - 8002c44: 701a strb r2, [r3, #0] + 8002c72: 230f movs r3, #15 + 8002c74: 18fb adds r3, r7, r3 + 8002c76: 2205 movs r2, #5 + 8002c78: 701a strb r2, [r3, #0] } break; - 8002c46: e1cf b.n 8002fe8 + 8002c7a: e1cf b.n 800301c case 3: moto.moto1a=0; - 8002c48: 4ba3 ldr r3, [pc, #652] ; (8002ed8 ) - 8002c4a: 2200 movs r2, #0 - 8002c4c: 721a strb r2, [r3, #8] + 8002c7c: 4ba3 ldr r3, [pc, #652] ; (8002f0c ) + 8002c7e: 2200 movs r2, #0 + 8002c80: 721a strb r2, [r3, #8] moto.moto1b=10; - 8002c4e: 4ba2 ldr r3, [pc, #648] ; (8002ed8 ) - 8002c50: 220a movs r2, #10 - 8002c52: 725a strb r2, [r3, #9] + 8002c82: 4ba2 ldr r3, [pc, #648] ; (8002f0c ) + 8002c84: 220a movs r2, #10 + 8002c86: 725a strb r2, [r3, #9] moto.moto2a=0; - 8002c54: 4ba0 ldr r3, [pc, #640] ; (8002ed8 ) - 8002c56: 2200 movs r2, #0 - 8002c58: 729a strb r2, [r3, #10] + 8002c88: 4ba0 ldr r3, [pc, #640] ; (8002f0c ) + 8002c8a: 2200 movs r2, #0 + 8002c8c: 729a strb r2, [r3, #10] moto.moto2b=10; - 8002c5a: 4b9f ldr r3, [pc, #636] ; (8002ed8 ) - 8002c5c: 220a movs r2, #10 - 8002c5e: 72da strb r2, [r3, #11] + 8002c8e: 4b9f ldr r3, [pc, #636] ; (8002f0c ) + 8002c90: 220a movs r2, #10 + 8002c92: 72da strb r2, [r3, #11] if(HAL_GetTick()>move) - 8002c60: f7fd fe0a bl 8000878 - 8002c64: 0002 movs r2, r0 - 8002c66: 693b ldr r3, [r7, #16] - 8002c68: 4293 cmp r3, r2 - 8002c6a: d220 bcs.n 8002cae + 8002c94: f7fd fdf0 bl 8000878 + 8002c98: 0002 movs r2, r0 + 8002c9a: 693b ldr r3, [r7, #16] + 8002c9c: 4293 cmp r3, r2 + 8002c9e: d220 bcs.n 8002ce2 { move=HAL_GetTick()+100; - 8002c6c: f7fd fe04 bl 8000878 - 8002c70: 0003 movs r3, r0 - 8002c72: 3364 adds r3, #100 ; 0x64 - 8002c74: 613b str r3, [r7, #16] + 8002ca0: f7fd fdea bl 8000878 + 8002ca4: 0003 movs r3, r0 + 8002ca6: 3364 adds r3, #100 ; 0x64 + 8002ca8: 613b str r3, [r7, #16] if(dis_buff.led_run==1) - 8002c76: 4b93 ldr r3, [pc, #588] ; (8002ec4 ) - 8002c78: 7a1b ldrb r3, [r3, #8] - 8002c7a: 2210 movs r2, #16 - 8002c7c: 4013 ands r3, r2 - 8002c7e: b2db uxtb r3, r3 - 8002c80: 2b00 cmp r3, #0 - 8002c82: d005 beq.n 8002c90 + 8002caa: 4b93 ldr r3, [pc, #588] ; (8002ef8 ) + 8002cac: 7a1b ldrb r3, [r3, #8] + 8002cae: 2210 movs r2, #16 + 8002cb0: 4013 ands r3, r2 + 8002cb2: b2db uxtb r3, r3 + 8002cb4: 2b00 cmp r3, #0 + 8002cb6: d005 beq.n 8002cc4 { dis_buff.led_run=0; - 8002c84: 4b8f ldr r3, [pc, #572] ; (8002ec4 ) - 8002c86: 7a1a ldrb r2, [r3, #8] - 8002c88: 2110 movs r1, #16 - 8002c8a: 438a bics r2, r1 - 8002c8c: 721a strb r2, [r3, #8] - 8002c8e: e004 b.n 8002c9a + 8002cb8: 4b8f ldr r3, [pc, #572] ; (8002ef8 ) + 8002cba: 7a1a ldrb r2, [r3, #8] + 8002cbc: 2110 movs r1, #16 + 8002cbe: 438a bics r2, r1 + 8002cc0: 721a strb r2, [r3, #8] + 8002cc2: e004 b.n 8002cce }else { dis_buff.led_run=1; - 8002c90: 4b8c ldr r3, [pc, #560] ; (8002ec4 ) - 8002c92: 7a1a ldrb r2, [r3, #8] - 8002c94: 2110 movs r1, #16 - 8002c96: 430a orrs r2, r1 - 8002c98: 721a strb r2, [r3, #8] + 8002cc4: 4b8c ldr r3, [pc, #560] ; (8002ef8 ) + 8002cc6: 7a1a ldrb r2, [r3, #8] + 8002cc8: 2110 movs r1, #16 + 8002cca: 430a orrs r2, r1 + 8002ccc: 721a strb r2, [r3, #8] } countdown-=100; - 8002c9a: 68bb ldr r3, [r7, #8] - 8002c9c: 3b64 subs r3, #100 ; 0x64 - 8002c9e: 60bb str r3, [r7, #8] + 8002cce: 68bb ldr r3, [r7, #8] + 8002cd0: 3b64 subs r3, #100 ; 0x64 + 8002cd2: 60bb str r3, [r7, #8] if(countdown<0) - 8002ca0: 68bb ldr r3, [r7, #8] - 8002ca2: 2b00 cmp r3, #0 - 8002ca4: da03 bge.n 8002cae + 8002cd4: 68bb ldr r3, [r7, #8] + 8002cd6: 2b00 cmp r3, #0 + 8002cd8: da03 bge.n 8002ce2 { mode=1; - 8002ca6: 230f movs r3, #15 - 8002ca8: 18fb adds r3, r7, r3 - 8002caa: 2201 movs r2, #1 - 8002cac: 701a strb r2, [r3, #0] + 8002cda: 230f movs r3, #15 + 8002cdc: 18fb adds r3, r7, r3 + 8002cde: 2201 movs r2, #1 + 8002ce0: 701a strb r2, [r3, #0] } } dis_buff.d_num[3]=(countdown/100)%10; - 8002cae: 68bb ldr r3, [r7, #8] - 8002cb0: 2164 movs r1, #100 ; 0x64 - 8002cb2: 0018 movs r0, r3 - 8002cb4: f7fd fab2 bl 800021c <__divsi3> - 8002cb8: 0003 movs r3, r0 - 8002cba: 210a movs r1, #10 - 8002cbc: 0018 movs r0, r3 - 8002cbe: f7fd fb93 bl 80003e8 <__aeabi_idivmod> - 8002cc2: 000b movs r3, r1 - 8002cc4: b2da uxtb r2, r3 - 8002cc6: 4b7f ldr r3, [pc, #508] ; (8002ec4 ) - 8002cc8: 70da strb r2, [r3, #3] + 8002ce2: 68bb ldr r3, [r7, #8] + 8002ce4: 2164 movs r1, #100 ; 0x64 + 8002ce6: 0018 movs r0, r3 + 8002ce8: f7fd fa98 bl 800021c <__divsi3> + 8002cec: 0003 movs r3, r0 + 8002cee: 210a movs r1, #10 + 8002cf0: 0018 movs r0, r3 + 8002cf2: f7fd fb79 bl 80003e8 <__aeabi_idivmod> + 8002cf6: 000b movs r3, r1 + 8002cf8: b2da uxtb r2, r3 + 8002cfa: 4b7f ldr r3, [pc, #508] ; (8002ef8 ) + 8002cfc: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown/1000)%10; - 8002cca: 68bb ldr r3, [r7, #8] - 8002ccc: 22fa movs r2, #250 ; 0xfa - 8002cce: 0091 lsls r1, r2, #2 - 8002cd0: 0018 movs r0, r3 - 8002cd2: f7fd faa3 bl 800021c <__divsi3> - 8002cd6: 0003 movs r3, r0 - 8002cd8: 210a movs r1, #10 - 8002cda: 0018 movs r0, r3 - 8002cdc: f7fd fb84 bl 80003e8 <__aeabi_idivmod> - 8002ce0: 000b movs r3, r1 - 8002ce2: b2da uxtb r2, r3 - 8002ce4: 4b77 ldr r3, [pc, #476] ; (8002ec4 ) - 8002ce6: 709a strb r2, [r3, #2] + 8002cfe: 68bb ldr r3, [r7, #8] + 8002d00: 22fa movs r2, #250 ; 0xfa + 8002d02: 0091 lsls r1, r2, #2 + 8002d04: 0018 movs r0, r3 + 8002d06: f7fd fa89 bl 800021c <__divsi3> + 8002d0a: 0003 movs r3, r0 + 8002d0c: 210a movs r1, #10 + 8002d0e: 0018 movs r0, r3 + 8002d10: f7fd fb6a bl 80003e8 <__aeabi_idivmod> + 8002d14: 000b movs r3, r1 + 8002d16: b2da uxtb r2, r3 + 8002d18: 4b77 ldr r3, [pc, #476] ; (8002ef8 ) + 8002d1a: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown/10000)%10); - 8002ce8: 68bb ldr r3, [r7, #8] - 8002cea: 4977 ldr r1, [pc, #476] ; (8002ec8 ) - 8002cec: 0018 movs r0, r3 - 8002cee: f7fd fa95 bl 800021c <__divsi3> - 8002cf2: 0003 movs r3, r0 - 8002cf4: 210a movs r1, #10 - 8002cf6: 0018 movs r0, r3 - 8002cf8: f7fd fb76 bl 80003e8 <__aeabi_idivmod> - 8002cfc: 000b movs r3, r1 - 8002cfe: b2da uxtb r2, r3 - 8002d00: 4b70 ldr r3, [pc, #448] ; (8002ec4 ) - 8002d02: 705a strb r2, [r3, #1] - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; - 8002d04: 4b6f ldr r3, [pc, #444] ; (8002ec4 ) - 8002d06: 785b ldrb r3, [r3, #1] - 8002d08: 2b00 cmp r3, #0 - 8002d0a: d002 beq.n 8002d12 - 8002d0c: 4b6d ldr r3, [pc, #436] ; (8002ec4 ) - 8002d0e: 785a ldrb r2, [r3, #1] - 8002d10: e000 b.n 8002d14 - 8002d12: 22ff movs r2, #255 ; 0xff - 8002d14: 4b6b ldr r3, [pc, #428] ; (8002ec4 ) - 8002d16: 705a strb r2, [r3, #1] + 8002d1c: 68bb ldr r3, [r7, #8] + 8002d1e: 4977 ldr r1, [pc, #476] ; (8002efc ) + 8002d20: 0018 movs r0, r3 + 8002d22: f7fd fa7b bl 800021c <__divsi3> + 8002d26: 0003 movs r3, r0 + 8002d28: 210a movs r1, #10 + 8002d2a: 0018 movs r0, r3 + 8002d2c: f7fd fb5c bl 80003e8 <__aeabi_idivmod> + 8002d30: 000b movs r3, r1 + 8002d32: b2da uxtb r2, r3 + 8002d34: 4b70 ldr r3, [pc, #448] ; (8002ef8 ) + 8002d36: 705a strb r2, [r3, #1] + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; + 8002d38: 4b6f ldr r3, [pc, #444] ; (8002ef8 ) + 8002d3a: 785b ldrb r3, [r3, #1] + 8002d3c: 2b00 cmp r3, #0 + 8002d3e: d002 beq.n 8002d46 + 8002d40: 4b6d ldr r3, [pc, #436] ; (8002ef8 ) + 8002d42: 785a ldrb r2, [r3, #1] + 8002d44: e000 b.n 8002d48 + 8002d46: 2210 movs r2, #16 + 8002d48: 4b6b ldr r3, [pc, #428] ; (8002ef8 ) + 8002d4a: 705a strb r2, [r3, #1] dis_buff.dot3=1; - 8002d18: 4b6a ldr r3, [pc, #424] ; (8002ec4 ) - 8002d1a: 7a1a ldrb r2, [r3, #8] - 8002d1c: 2104 movs r1, #4 - 8002d1e: 430a orrs r2, r1 - 8002d20: 721a strb r2, [r3, #8] + 8002d4c: 4b6a ldr r3, [pc, #424] ; (8002ef8 ) + 8002d4e: 7a1a ldrb r2, [r3, #8] + 8002d50: 2104 movs r1, #4 + 8002d52: 430a orrs r2, r1 + 8002d54: 721a strb r2, [r3, #8] if(key2.code!=0) - 8002d22: 4b6e ldr r3, [pc, #440] ; (8002edc ) - 8002d24: 681b ldr r3, [r3, #0] - 8002d26: 2b00 cmp r3, #0 - 8002d28: d007 beq.n 8002d3a + 8002d56: 4b6e ldr r3, [pc, #440] ; (8002f10 ) + 8002d58: 681b ldr r3, [r3, #0] + 8002d5a: 2b00 cmp r3, #0 + 8002d5c: d007 beq.n 8002d6e { mode=2; - 8002d2a: 230f movs r3, #15 - 8002d2c: 18fb adds r3, r7, r3 - 8002d2e: 2202 movs r2, #2 - 8002d30: 701a strb r2, [r3, #0] + 8002d5e: 230f movs r3, #15 + 8002d60: 18fb adds r3, r7, r3 + 8002d62: 2202 movs r2, #2 + 8002d64: 701a strb r2, [r3, #0] countdown=countdown_set-countdown; - 8002d32: 687a ldr r2, [r7, #4] - 8002d34: 68bb ldr r3, [r7, #8] - 8002d36: 1ad3 subs r3, r2, r3 - 8002d38: 60bb str r3, [r7, #8] + 8002d66: 687a ldr r2, [r7, #4] + 8002d68: 68bb ldr r3, [r7, #8] + 8002d6a: 1ad3 subs r3, r2, r3 + 8002d6c: 60bb str r3, [r7, #8] } if(key4.code!=0) - 8002d3a: 4b65 ldr r3, [pc, #404] ; (8002ed0 ) - 8002d3c: 681b ldr r3, [r3, #0] - 8002d3e: 2b00 cmp r3, #0 - 8002d40: d003 beq.n 8002d4a + 8002d6e: 4b65 ldr r3, [pc, #404] ; (8002f04 ) + 8002d70: 681b ldr r3, [r3, #0] + 8002d72: 2b00 cmp r3, #0 + 8002d74: d003 beq.n 8002d7e { mode=1; - 8002d42: 230f movs r3, #15 - 8002d44: 18fb adds r3, r7, r3 - 8002d46: 2201 movs r2, #1 - 8002d48: 701a strb r2, [r3, #0] + 8002d76: 230f movs r3, #15 + 8002d78: 18fb adds r3, r7, r3 + 8002d7a: 2201 movs r2, #1 + 8002d7c: 701a strb r2, [r3, #0] } if(overload.code!=0) - 8002d4a: 4b62 ldr r3, [pc, #392] ; (8002ed4 ) - 8002d4c: 681b ldr r3, [r3, #0] - 8002d4e: 2b00 cmp r3, #0 - 8002d50: d005 beq.n 8002d5e + 8002d7e: 4b62 ldr r3, [pc, #392] ; (8002f08 ) + 8002d80: 681b ldr r3, [r3, #0] + 8002d82: 2b00 cmp r3, #0 + 8002d84: d005 beq.n 8002d92 { overload_times+=1; - 8002d52: 220c movs r2, #12 - 8002d54: 18bb adds r3, r7, r2 - 8002d56: 18ba adds r2, r7, r2 - 8002d58: 8812 ldrh r2, [r2, #0] - 8002d5a: 3201 adds r2, #1 - 8002d5c: 801a strh r2, [r3, #0] + 8002d86: 220c movs r2, #12 + 8002d88: 18bb adds r3, r7, r2 + 8002d8a: 18ba adds r2, r7, r2 + 8002d8c: 8812 ldrh r2, [r2, #0] + 8002d8e: 3201 adds r2, #1 + 8002d90: 801a strh r2, [r3, #0] } if(overload_times>2) - 8002d5e: 230c movs r3, #12 - 8002d60: 18fb adds r3, r7, r3 - 8002d62: 881b ldrh r3, [r3, #0] - 8002d64: 2b02 cmp r3, #2 - 8002d66: d800 bhi.n 8002d6a - 8002d68: e140 b.n 8002fec + 8002d92: 230c movs r3, #12 + 8002d94: 18fb adds r3, r7, r3 + 8002d96: 881b ldrh r3, [r3, #0] + 8002d98: 2b02 cmp r3, #2 + 8002d9a: d800 bhi.n 8002d9e + 8002d9c: e140 b.n 8003020 { overload_mode=3; - 8002d6a: 230e movs r3, #14 - 8002d6c: 18fb adds r3, r7, r3 - 8002d6e: 2203 movs r2, #3 - 8002d70: 701a strb r2, [r3, #0] + 8002d9e: 230e movs r3, #14 + 8002da0: 18fb adds r3, r7, r3 + 8002da2: 2203 movs r2, #3 + 8002da4: 701a strb r2, [r3, #0] mode=5; - 8002d72: 230f movs r3, #15 - 8002d74: 18fb adds r3, r7, r3 - 8002d76: 2205 movs r2, #5 - 8002d78: 701a strb r2, [r3, #0] + 8002da6: 230f movs r3, #15 + 8002da8: 18fb adds r3, r7, r3 + 8002daa: 2205 movs r2, #5 + 8002dac: 701a strb r2, [r3, #0] } break; - 8002d7a: e137 b.n 8002fec + 8002dae: e137 b.n 8003020 case 4: //setting mode dis_buff.led_run=0; - 8002d7c: 4b51 ldr r3, [pc, #324] ; (8002ec4 ) - 8002d7e: 7a1a ldrb r2, [r3, #8] - 8002d80: 2110 movs r1, #16 - 8002d82: 438a bics r2, r1 - 8002d84: 721a strb r2, [r3, #8] + 8002db0: 4b51 ldr r3, [pc, #324] ; (8002ef8 ) + 8002db2: 7a1a ldrb r2, [r3, #8] + 8002db4: 2110 movs r1, #16 + 8002db6: 438a bics r2, r1 + 8002db8: 721a strb r2, [r3, #8] if(HAL_GetTick()>move) - 8002d86: f7fd fd77 bl 8000878 - 8002d8a: 0002 movs r2, r0 - 8002d8c: 693b ldr r3, [r7, #16] - 8002d8e: 4293 cmp r3, r2 - 8002d90: d237 bcs.n 8002e02 + 8002dba: f7fd fd5d bl 8000878 + 8002dbe: 0002 movs r2, r0 + 8002dc0: 693b ldr r3, [r7, #16] + 8002dc2: 4293 cmp r3, r2 + 8002dc4: d237 bcs.n 8002e36 { move=HAL_GetTick()+100; - 8002d92: f7fd fd71 bl 8000878 - 8002d96: 0003 movs r3, r0 - 8002d98: 3364 adds r3, #100 ; 0x64 - 8002d9a: 613b str r3, [r7, #16] + 8002dc6: f7fd fd57 bl 8000878 + 8002dca: 0003 movs r3, r0 + 8002dcc: 3364 adds r3, #100 ; 0x64 + 8002dce: 613b str r3, [r7, #16] if(dis_buff.dot1==1) - 8002d9c: 4b49 ldr r3, [pc, #292] ; (8002ec4 ) - 8002d9e: 7a1b ldrb r3, [r3, #8] - 8002da0: 2201 movs r2, #1 - 8002da2: 4013 ands r3, r2 - 8002da4: b2db uxtb r3, r3 - 8002da6: 2b00 cmp r3, #0 - 8002da8: d005 beq.n 8002db6 + 8002dd0: 4b49 ldr r3, [pc, #292] ; (8002ef8 ) + 8002dd2: 7a1b ldrb r3, [r3, #8] + 8002dd4: 2201 movs r2, #1 + 8002dd6: 4013 ands r3, r2 + 8002dd8: b2db uxtb r3, r3 + 8002dda: 2b00 cmp r3, #0 + 8002ddc: d005 beq.n 8002dea { dis_buff.dot1=0; - 8002daa: 4b46 ldr r3, [pc, #280] ; (8002ec4 ) - 8002dac: 7a1a ldrb r2, [r3, #8] - 8002dae: 2101 movs r1, #1 - 8002db0: 438a bics r2, r1 - 8002db2: 721a strb r2, [r3, #8] - 8002db4: e004 b.n 8002dc0 + 8002dde: 4b46 ldr r3, [pc, #280] ; (8002ef8 ) + 8002de0: 7a1a ldrb r2, [r3, #8] + 8002de2: 2101 movs r1, #1 + 8002de4: 438a bics r2, r1 + 8002de6: 721a strb r2, [r3, #8] + 8002de8: e004 b.n 8002df4 }else { dis_buff.dot1=1; - 8002db6: 4b43 ldr r3, [pc, #268] ; (8002ec4 ) - 8002db8: 7a1a ldrb r2, [r3, #8] - 8002dba: 2101 movs r1, #1 - 8002dbc: 430a orrs r2, r1 - 8002dbe: 721a strb r2, [r3, #8] + 8002dea: 4b43 ldr r3, [pc, #268] ; (8002ef8 ) + 8002dec: 7a1a ldrb r2, [r3, #8] + 8002dee: 2101 movs r1, #1 + 8002df0: 430a orrs r2, r1 + 8002df2: 721a strb r2, [r3, #8] } countdown-=100; - 8002dc0: 68bb ldr r3, [r7, #8] - 8002dc2: 3b64 subs r3, #100 ; 0x64 - 8002dc4: 60bb str r3, [r7, #8] + 8002df4: 68bb ldr r3, [r7, #8] + 8002df6: 3b64 subs r3, #100 ; 0x64 + 8002df8: 60bb str r3, [r7, #8] if(countdown<0) - 8002dc6: 68bb ldr r3, [r7, #8] - 8002dc8: 2b00 cmp r3, #0 - 8002dca: da03 bge.n 8002dd4 + 8002dfa: 68bb ldr r3, [r7, #8] + 8002dfc: 2b00 cmp r3, #0 + 8002dfe: da03 bge.n 8002e08 { mode=1; - 8002dcc: 230f movs r3, #15 - 8002dce: 18fb adds r3, r7, r3 - 8002dd0: 2201 movs r2, #1 - 8002dd2: 701a strb r2, [r3, #0] + 8002e00: 230f movs r3, #15 + 8002e02: 18fb adds r3, r7, r3 + 8002e04: 2201 movs r2, #1 + 8002e06: 701a strb r2, [r3, #0] } if(key2.code<0){countdown_set+=1000;countdown=10000;} - 8002dd4: 4b41 ldr r3, [pc, #260] ; (8002edc ) - 8002dd6: 681b ldr r3, [r3, #0] - 8002dd8: 2b00 cmp r3, #0 - 8002dda: da07 bge.n 8002dec - 8002ddc: 687b ldr r3, [r7, #4] - 8002dde: 22fa movs r2, #250 ; 0xfa - 8002de0: 0092 lsls r2, r2, #2 - 8002de2: 4694 mov ip, r2 - 8002de4: 4463 add r3, ip - 8002de6: 607b str r3, [r7, #4] - 8002de8: 4b37 ldr r3, [pc, #220] ; (8002ec8 ) - 8002dea: 60bb str r3, [r7, #8] + 8002e08: 4b41 ldr r3, [pc, #260] ; (8002f10 ) + 8002e0a: 681b ldr r3, [r3, #0] + 8002e0c: 2b00 cmp r3, #0 + 8002e0e: da07 bge.n 8002e20 + 8002e10: 687b ldr r3, [r7, #4] + 8002e12: 22fa movs r2, #250 ; 0xfa + 8002e14: 0092 lsls r2, r2, #2 + 8002e16: 4694 mov ip, r2 + 8002e18: 4463 add r3, ip + 8002e1a: 607b str r3, [r7, #4] + 8002e1c: 4b37 ldr r3, [pc, #220] ; (8002efc ) + 8002e1e: 60bb str r3, [r7, #8] if(key3.code<0){countdown_set-=1000;countdown=10000;} - 8002dec: 4b37 ldr r3, [pc, #220] ; (8002ecc ) - 8002dee: 681b ldr r3, [r3, #0] - 8002df0: 2b00 cmp r3, #0 - 8002df2: da06 bge.n 8002e02 - 8002df4: 687b ldr r3, [r7, #4] - 8002df6: 4a3a ldr r2, [pc, #232] ; (8002ee0 ) - 8002df8: 4694 mov ip, r2 - 8002dfa: 4463 add r3, ip - 8002dfc: 607b str r3, [r7, #4] - 8002dfe: 4b32 ldr r3, [pc, #200] ; (8002ec8 ) - 8002e00: 60bb str r3, [r7, #8] + 8002e20: 4b37 ldr r3, [pc, #220] ; (8002f00 ) + 8002e22: 681b ldr r3, [r3, #0] + 8002e24: 2b00 cmp r3, #0 + 8002e26: da06 bge.n 8002e36 + 8002e28: 687b ldr r3, [r7, #4] + 8002e2a: 4a3a ldr r2, [pc, #232] ; (8002f14 ) + 8002e2c: 4694 mov ip, r2 + 8002e2e: 4463 add r3, ip + 8002e30: 607b str r3, [r7, #4] + 8002e32: 4b32 ldr r3, [pc, #200] ; (8002efc ) + 8002e34: 60bb str r3, [r7, #8] } if(key2.code>0){countdown_set+=100;countdown=10000;} - 8002e02: 4b36 ldr r3, [pc, #216] ; (8002edc ) - 8002e04: 681b ldr r3, [r3, #0] - 8002e06: 2b00 cmp r3, #0 - 8002e08: dd04 ble.n 8002e14 - 8002e0a: 687b ldr r3, [r7, #4] - 8002e0c: 3364 adds r3, #100 ; 0x64 - 8002e0e: 607b str r3, [r7, #4] - 8002e10: 4b2d ldr r3, [pc, #180] ; (8002ec8 ) - 8002e12: 60bb str r3, [r7, #8] + 8002e36: 4b36 ldr r3, [pc, #216] ; (8002f10 ) + 8002e38: 681b ldr r3, [r3, #0] + 8002e3a: 2b00 cmp r3, #0 + 8002e3c: dd04 ble.n 8002e48 + 8002e3e: 687b ldr r3, [r7, #4] + 8002e40: 3364 adds r3, #100 ; 0x64 + 8002e42: 607b str r3, [r7, #4] + 8002e44: 4b2d ldr r3, [pc, #180] ; (8002efc ) + 8002e46: 60bb str r3, [r7, #8] if(key3.code>0){countdown_set-=100;countdown=10000;} - 8002e14: 4b2d ldr r3, [pc, #180] ; (8002ecc ) - 8002e16: 681b ldr r3, [r3, #0] - 8002e18: 2b00 cmp r3, #0 - 8002e1a: dd04 ble.n 8002e26 - 8002e1c: 687b ldr r3, [r7, #4] - 8002e1e: 3b64 subs r3, #100 ; 0x64 - 8002e20: 607b str r3, [r7, #4] - 8002e22: 4b29 ldr r3, [pc, #164] ; (8002ec8 ) - 8002e24: 60bb str r3, [r7, #8] + 8002e48: 4b2d ldr r3, [pc, #180] ; (8002f00 ) + 8002e4a: 681b ldr r3, [r3, #0] + 8002e4c: 2b00 cmp r3, #0 + 8002e4e: dd04 ble.n 8002e5a + 8002e50: 687b ldr r3, [r7, #4] + 8002e52: 3b64 subs r3, #100 ; 0x64 + 8002e54: 607b str r3, [r7, #4] + 8002e56: 4b29 ldr r3, [pc, #164] ; (8002efc ) + 8002e58: 60bb str r3, [r7, #8] if(countdown_set<100){countdown_set=100;} - 8002e26: 687b ldr r3, [r7, #4] - 8002e28: 2b63 cmp r3, #99 ; 0x63 - 8002e2a: dc01 bgt.n 8002e30 - 8002e2c: 2364 movs r3, #100 ; 0x64 - 8002e2e: 607b str r3, [r7, #4] + 8002e5a: 687b ldr r3, [r7, #4] + 8002e5c: 2b63 cmp r3, #99 ; 0x63 + 8002e5e: dc01 bgt.n 8002e64 + 8002e60: 2364 movs r3, #100 ; 0x64 + 8002e62: 607b str r3, [r7, #4] if(countdown_set>60000){countdown_set=60000;} - 8002e30: 687b ldr r3, [r7, #4] - 8002e32: 4a2c ldr r2, [pc, #176] ; (8002ee4 ) - 8002e34: 4293 cmp r3, r2 - 8002e36: dd01 ble.n 8002e3c - 8002e38: 4b2a ldr r3, [pc, #168] ; (8002ee4 ) - 8002e3a: 607b str r3, [r7, #4] + 8002e64: 687b ldr r3, [r7, #4] + 8002e66: 4a2c ldr r2, [pc, #176] ; (8002f18 ) + 8002e68: 4293 cmp r3, r2 + 8002e6a: dd01 ble.n 8002e70 + 8002e6c: 4b2a ldr r3, [pc, #168] ; (8002f18 ) + 8002e6e: 607b str r3, [r7, #4] if(key1.code!=0){mode=1;} - 8002e3c: 4b2a ldr r3, [pc, #168] ; (8002ee8 ) - 8002e3e: 681b ldr r3, [r3, #0] - 8002e40: 2b00 cmp r3, #0 - 8002e42: d003 beq.n 8002e4c - 8002e44: 230f movs r3, #15 - 8002e46: 18fb adds r3, r7, r3 - 8002e48: 2201 movs r2, #1 - 8002e4a: 701a strb r2, [r3, #0] + 8002e70: 4b2a ldr r3, [pc, #168] ; (8002f1c ) + 8002e72: 681b ldr r3, [r3, #0] + 8002e74: 2b00 cmp r3, #0 + 8002e76: d003 beq.n 8002e80 + 8002e78: 230f movs r3, #15 + 8002e7a: 18fb adds r3, r7, r3 + 8002e7c: 2201 movs r2, #1 + 8002e7e: 701a strb r2, [r3, #0] dis_buff.d_num[3]=(countdown_set/100)%10; - 8002e4c: 687b ldr r3, [r7, #4] - 8002e4e: 2164 movs r1, #100 ; 0x64 - 8002e50: 0018 movs r0, r3 - 8002e52: f7fd f9e3 bl 800021c <__divsi3> - 8002e56: 0003 movs r3, r0 - 8002e58: 210a movs r1, #10 - 8002e5a: 0018 movs r0, r3 - 8002e5c: f7fd fac4 bl 80003e8 <__aeabi_idivmod> - 8002e60: 000b movs r3, r1 - 8002e62: b2da uxtb r2, r3 - 8002e64: 4b17 ldr r3, [pc, #92] ; (8002ec4 ) - 8002e66: 70da strb r2, [r3, #3] + 8002e80: 687b ldr r3, [r7, #4] + 8002e82: 2164 movs r1, #100 ; 0x64 + 8002e84: 0018 movs r0, r3 + 8002e86: f7fd f9c9 bl 800021c <__divsi3> + 8002e8a: 0003 movs r3, r0 + 8002e8c: 210a movs r1, #10 + 8002e8e: 0018 movs r0, r3 + 8002e90: f7fd faaa bl 80003e8 <__aeabi_idivmod> + 8002e94: 000b movs r3, r1 + 8002e96: b2da uxtb r2, r3 + 8002e98: 4b17 ldr r3, [pc, #92] ; (8002ef8 ) + 8002e9a: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown_set/1000)%10; - 8002e68: 687b ldr r3, [r7, #4] - 8002e6a: 22fa movs r2, #250 ; 0xfa - 8002e6c: 0091 lsls r1, r2, #2 - 8002e6e: 0018 movs r0, r3 - 8002e70: f7fd f9d4 bl 800021c <__divsi3> - 8002e74: 0003 movs r3, r0 - 8002e76: 210a movs r1, #10 - 8002e78: 0018 movs r0, r3 - 8002e7a: f7fd fab5 bl 80003e8 <__aeabi_idivmod> - 8002e7e: 000b movs r3, r1 - 8002e80: b2da uxtb r2, r3 - 8002e82: 4b10 ldr r3, [pc, #64] ; (8002ec4 ) - 8002e84: 709a strb r2, [r3, #2] + 8002e9c: 687b ldr r3, [r7, #4] + 8002e9e: 22fa movs r2, #250 ; 0xfa + 8002ea0: 0091 lsls r1, r2, #2 + 8002ea2: 0018 movs r0, r3 + 8002ea4: f7fd f9ba bl 800021c <__divsi3> + 8002ea8: 0003 movs r3, r0 + 8002eaa: 210a movs r1, #10 + 8002eac: 0018 movs r0, r3 + 8002eae: f7fd fa9b bl 80003e8 <__aeabi_idivmod> + 8002eb2: 000b movs r3, r1 + 8002eb4: b2da uxtb r2, r3 + 8002eb6: 4b10 ldr r3, [pc, #64] ; (8002ef8 ) + 8002eb8: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown_set/10000)%10); - 8002e86: 687b ldr r3, [r7, #4] - 8002e88: 490f ldr r1, [pc, #60] ; (8002ec8 ) - 8002e8a: 0018 movs r0, r3 - 8002e8c: f7fd f9c6 bl 800021c <__divsi3> - 8002e90: 0003 movs r3, r0 - 8002e92: 210a movs r1, #10 - 8002e94: 0018 movs r0, r3 - 8002e96: f7fd faa7 bl 80003e8 <__aeabi_idivmod> - 8002e9a: 000b movs r3, r1 - 8002e9c: b2da uxtb r2, r3 - 8002e9e: 4b09 ldr r3, [pc, #36] ; (8002ec4 ) - 8002ea0: 705a strb r2, [r3, #1] - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; - 8002ea2: 4b08 ldr r3, [pc, #32] ; (8002ec4 ) - 8002ea4: 785b ldrb r3, [r3, #1] - 8002ea6: 2b00 cmp r3, #0 - 8002ea8: d002 beq.n 8002eb0 - 8002eaa: 4b06 ldr r3, [pc, #24] ; (8002ec4 ) - 8002eac: 785a ldrb r2, [r3, #1] - 8002eae: e000 b.n 8002eb2 - 8002eb0: 22ff movs r2, #255 ; 0xff - 8002eb2: 4b04 ldr r3, [pc, #16] ; (8002ec4 ) - 8002eb4: 705a strb r2, [r3, #1] + 8002eba: 687b ldr r3, [r7, #4] + 8002ebc: 490f ldr r1, [pc, #60] ; (8002efc ) + 8002ebe: 0018 movs r0, r3 + 8002ec0: f7fd f9ac bl 800021c <__divsi3> + 8002ec4: 0003 movs r3, r0 + 8002ec6: 210a movs r1, #10 + 8002ec8: 0018 movs r0, r3 + 8002eca: f7fd fa8d bl 80003e8 <__aeabi_idivmod> + 8002ece: 000b movs r3, r1 + 8002ed0: b2da uxtb r2, r3 + 8002ed2: 4b09 ldr r3, [pc, #36] ; (8002ef8 ) + 8002ed4: 705a strb r2, [r3, #1] + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; + 8002ed6: 4b08 ldr r3, [pc, #32] ; (8002ef8 ) + 8002ed8: 785b ldrb r3, [r3, #1] + 8002eda: 2b00 cmp r3, #0 + 8002edc: d002 beq.n 8002ee4 + 8002ede: 4b06 ldr r3, [pc, #24] ; (8002ef8 ) + 8002ee0: 785a ldrb r2, [r3, #1] + 8002ee2: e000 b.n 8002ee6 + 8002ee4: 2210 movs r2, #16 + 8002ee6: 4b04 ldr r3, [pc, #16] ; (8002ef8 ) + 8002ee8: 705a strb r2, [r3, #1] dis_buff.dot3=1; - 8002eb6: 4b03 ldr r3, [pc, #12] ; (8002ec4 ) - 8002eb8: 7a1a ldrb r2, [r3, #8] - 8002eba: 2104 movs r1, #4 - 8002ebc: 430a orrs r2, r1 - 8002ebe: 721a strb r2, [r3, #8] + 8002eea: 4b03 ldr r3, [pc, #12] ; (8002ef8 ) + 8002eec: 7a1a ldrb r2, [r3, #8] + 8002eee: 2104 movs r1, #4 + 8002ef0: 430a orrs r2, r1 + 8002ef2: 721a strb r2, [r3, #8] break; - 8002ec0: e097 b.n 8002ff2 - 8002ec2: 46c0 nop ; (mov r8, r8) - 8002ec4: 20000028 .word 0x20000028 - 8002ec8: 00002710 .word 0x00002710 - 8002ecc: 200000c0 .word 0x200000c0 - 8002ed0: 20000090 .word 0x20000090 - 8002ed4: 200000b0 .word 0x200000b0 - 8002ed8: 200000f4 .word 0x200000f4 - 8002edc: 200000e4 .word 0x200000e4 - 8002ee0: fffffc18 .word 0xfffffc18 - 8002ee4: 0000ea60 .word 0x0000ea60 - 8002ee8: 200000a0 .word 0x200000a0 + 8002ef4: e097 b.n 8003026 + 8002ef6: 46c0 nop ; (mov r8, r8) + 8002ef8: 20000028 .word 0x20000028 + 8002efc: 00002710 .word 0x00002710 + 8002f00: 200000a8 .word 0x200000a8 + 8002f04: 20000078 .word 0x20000078 + 8002f08: 20000098 .word 0x20000098 + 8002f0c: 200000dc .word 0x200000dc + 8002f10: 200000cc .word 0x200000cc + 8002f14: fffffc18 .word 0xfffffc18 + 8002f18: 0000ea60 .word 0x0000ea60 + 8002f1c: 20000088 .word 0x20000088 case 5: //overload moto.moto1a=0; - 8002eec: 4b5e ldr r3, [pc, #376] ; (8003068 ) - 8002eee: 2200 movs r2, #0 - 8002ef0: 721a strb r2, [r3, #8] + 8002f20: 4b5e ldr r3, [pc, #376] ; (800309c ) + 8002f22: 2200 movs r2, #0 + 8002f24: 721a strb r2, [r3, #8] moto.moto1b=0; - 8002ef2: 4b5d ldr r3, [pc, #372] ; (8003068 ) - 8002ef4: 2200 movs r2, #0 - 8002ef6: 725a strb r2, [r3, #9] + 8002f26: 4b5d ldr r3, [pc, #372] ; (800309c ) + 8002f28: 2200 movs r2, #0 + 8002f2a: 725a strb r2, [r3, #9] moto.moto2a=0; - 8002ef8: 4b5b ldr r3, [pc, #364] ; (8003068 ) - 8002efa: 2200 movs r2, #0 - 8002efc: 729a strb r2, [r3, #10] + 8002f2c: 4b5b ldr r3, [pc, #364] ; (800309c ) + 8002f2e: 2200 movs r2, #0 + 8002f30: 729a strb r2, [r3, #10] moto.moto2b=0; - 8002efe: 4b5a ldr r3, [pc, #360] ; (8003068 ) - 8002f00: 2200 movs r2, #0 - 8002f02: 72da strb r2, [r3, #11] + 8002f32: 4b5a ldr r3, [pc, #360] ; (800309c ) + 8002f34: 2200 movs r2, #0 + 8002f36: 72da strb r2, [r3, #11] dis_buff.led_run=1; - 8002f04: 4b59 ldr r3, [pc, #356] ; (800306c ) - 8002f06: 7a1a ldrb r2, [r3, #8] - 8002f08: 2110 movs r1, #16 - 8002f0a: 430a orrs r2, r1 - 8002f0c: 721a strb r2, [r3, #8] + 8002f38: 4b59 ldr r3, [pc, #356] ; (80030a0 ) + 8002f3a: 7a1a ldrb r2, [r3, #8] + 8002f3c: 2110 movs r1, #16 + 8002f3e: 430a orrs r2, r1 + 8002f40: 721a strb r2, [r3, #8] overload_times=0; - 8002f0e: 230c movs r3, #12 - 8002f10: 18fb adds r3, r7, r3 - 8002f12: 2200 movs r2, #0 - 8002f14: 801a strh r2, [r3, #0] + 8002f42: 230c movs r3, #12 + 8002f44: 18fb adds r3, r7, r3 + 8002f46: 2200 movs r2, #0 + 8002f48: 801a strh r2, [r3, #0] dis_buff.d_num[3]=(countdown/100)%10; - 8002f16: 68bb ldr r3, [r7, #8] - 8002f18: 2164 movs r1, #100 ; 0x64 - 8002f1a: 0018 movs r0, r3 - 8002f1c: f7fd f97e bl 800021c <__divsi3> - 8002f20: 0003 movs r3, r0 - 8002f22: 210a movs r1, #10 - 8002f24: 0018 movs r0, r3 - 8002f26: f7fd fa5f bl 80003e8 <__aeabi_idivmod> - 8002f2a: 000b movs r3, r1 - 8002f2c: b2da uxtb r2, r3 - 8002f2e: 4b4f ldr r3, [pc, #316] ; (800306c ) - 8002f30: 70da strb r2, [r3, #3] + 8002f4a: 68bb ldr r3, [r7, #8] + 8002f4c: 2164 movs r1, #100 ; 0x64 + 8002f4e: 0018 movs r0, r3 + 8002f50: f7fd f964 bl 800021c <__divsi3> + 8002f54: 0003 movs r3, r0 + 8002f56: 210a movs r1, #10 + 8002f58: 0018 movs r0, r3 + 8002f5a: f7fd fa45 bl 80003e8 <__aeabi_idivmod> + 8002f5e: 000b movs r3, r1 + 8002f60: b2da uxtb r2, r3 + 8002f62: 4b4f ldr r3, [pc, #316] ; (80030a0 ) + 8002f64: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown/1000)%10; - 8002f32: 68bb ldr r3, [r7, #8] - 8002f34: 22fa movs r2, #250 ; 0xfa - 8002f36: 0091 lsls r1, r2, #2 - 8002f38: 0018 movs r0, r3 - 8002f3a: f7fd f96f bl 800021c <__divsi3> - 8002f3e: 0003 movs r3, r0 - 8002f40: 210a movs r1, #10 - 8002f42: 0018 movs r0, r3 - 8002f44: f7fd fa50 bl 80003e8 <__aeabi_idivmod> - 8002f48: 000b movs r3, r1 - 8002f4a: b2da uxtb r2, r3 - 8002f4c: 4b47 ldr r3, [pc, #284] ; (800306c ) - 8002f4e: 709a strb r2, [r3, #2] + 8002f66: 68bb ldr r3, [r7, #8] + 8002f68: 22fa movs r2, #250 ; 0xfa + 8002f6a: 0091 lsls r1, r2, #2 + 8002f6c: 0018 movs r0, r3 + 8002f6e: f7fd f955 bl 800021c <__divsi3> + 8002f72: 0003 movs r3, r0 + 8002f74: 210a movs r1, #10 + 8002f76: 0018 movs r0, r3 + 8002f78: f7fd fa36 bl 80003e8 <__aeabi_idivmod> + 8002f7c: 000b movs r3, r1 + 8002f7e: b2da uxtb r2, r3 + 8002f80: 4b47 ldr r3, [pc, #284] ; (80030a0 ) + 8002f82: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown/10000)%10); - 8002f50: 68bb ldr r3, [r7, #8] - 8002f52: 4947 ldr r1, [pc, #284] ; (8003070 ) - 8002f54: 0018 movs r0, r3 - 8002f56: f7fd f961 bl 800021c <__divsi3> - 8002f5a: 0003 movs r3, r0 - 8002f5c: 210a movs r1, #10 - 8002f5e: 0018 movs r0, r3 - 8002f60: f7fd fa42 bl 80003e8 <__aeabi_idivmod> - 8002f64: 000b movs r3, r1 - 8002f66: b2da uxtb r2, r3 - 8002f68: 4b40 ldr r3, [pc, #256] ; (800306c ) - 8002f6a: 705a strb r2, [r3, #1] - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; - 8002f6c: 4b3f ldr r3, [pc, #252] ; (800306c ) - 8002f6e: 785b ldrb r3, [r3, #1] - 8002f70: 2b00 cmp r3, #0 - 8002f72: d002 beq.n 8002f7a - 8002f74: 4b3d ldr r3, [pc, #244] ; (800306c ) - 8002f76: 785a ldrb r2, [r3, #1] - 8002f78: e000 b.n 8002f7c - 8002f7a: 22ff movs r2, #255 ; 0xff - 8002f7c: 4b3b ldr r3, [pc, #236] ; (800306c ) - 8002f7e: 705a strb r2, [r3, #1] + 8002f84: 68bb ldr r3, [r7, #8] + 8002f86: 4947 ldr r1, [pc, #284] ; (80030a4 ) + 8002f88: 0018 movs r0, r3 + 8002f8a: f7fd f947 bl 800021c <__divsi3> + 8002f8e: 0003 movs r3, r0 + 8002f90: 210a movs r1, #10 + 8002f92: 0018 movs r0, r3 + 8002f94: f7fd fa28 bl 80003e8 <__aeabi_idivmod> + 8002f98: 000b movs r3, r1 + 8002f9a: b2da uxtb r2, r3 + 8002f9c: 4b40 ldr r3, [pc, #256] ; (80030a0 ) + 8002f9e: 705a strb r2, [r3, #1] + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; + 8002fa0: 4b3f ldr r3, [pc, #252] ; (80030a0 ) + 8002fa2: 785b ldrb r3, [r3, #1] + 8002fa4: 2b00 cmp r3, #0 + 8002fa6: d002 beq.n 8002fae + 8002fa8: 4b3d ldr r3, [pc, #244] ; (80030a0 ) + 8002faa: 785a ldrb r2, [r3, #1] + 8002fac: e000 b.n 8002fb0 + 8002fae: 2210 movs r2, #16 + 8002fb0: 4b3b ldr r3, [pc, #236] ; (80030a0 ) + 8002fb2: 705a strb r2, [r3, #1] dis_buff.dot3=1; - 8002f80: 4b3a ldr r3, [pc, #232] ; (800306c ) - 8002f82: 7a1a ldrb r2, [r3, #8] - 8002f84: 2104 movs r1, #4 - 8002f86: 430a orrs r2, r1 - 8002f88: 721a strb r2, [r3, #8] + 8002fb4: 4b3a ldr r3, [pc, #232] ; (80030a0 ) + 8002fb6: 7a1a ldrb r2, [r3, #8] + 8002fb8: 2104 movs r1, #4 + 8002fba: 430a orrs r2, r1 + 8002fbc: 721a strb r2, [r3, #8] if(key4.code!=0){mode=1;} - 8002f8a: 4b3a ldr r3, [pc, #232] ; (8003074 ) - 8002f8c: 681b ldr r3, [r3, #0] - 8002f8e: 2b00 cmp r3, #0 - 8002f90: d003 beq.n 8002f9a - 8002f92: 230f movs r3, #15 - 8002f94: 18fb adds r3, r7, r3 - 8002f96: 2201 movs r2, #1 - 8002f98: 701a strb r2, [r3, #0] + 8002fbe: 4b3a ldr r3, [pc, #232] ; (80030a8 ) + 8002fc0: 681b ldr r3, [r3, #0] + 8002fc2: 2b00 cmp r3, #0 + 8002fc4: d003 beq.n 8002fce + 8002fc6: 230f movs r3, #15 + 8002fc8: 18fb adds r3, r7, r3 + 8002fca: 2201 movs r2, #1 + 8002fcc: 701a strb r2, [r3, #0] if(key2.code!=0) - 8002f9a: 4b37 ldr r3, [pc, #220] ; (8003078 ) - 8002f9c: 681b ldr r3, [r3, #0] - 8002f9e: 2b00 cmp r3, #0 - 8002fa0: d00c beq.n 8002fbc + 8002fce: 4b37 ldr r3, [pc, #220] ; (80030ac ) + 8002fd0: 681b ldr r3, [r3, #0] + 8002fd2: 2b00 cmp r3, #0 + 8002fd4: d00c beq.n 8002ff0 { mode=2; - 8002fa2: 230f movs r3, #15 - 8002fa4: 18fb adds r3, r7, r3 - 8002fa6: 2202 movs r2, #2 - 8002fa8: 701a strb r2, [r3, #0] + 8002fd6: 230f movs r3, #15 + 8002fd8: 18fb adds r3, r7, r3 + 8002fda: 2202 movs r2, #2 + 8002fdc: 701a strb r2, [r3, #0] if(overload_mode==2) - 8002faa: 230e movs r3, #14 - 8002fac: 18fb adds r3, r7, r3 - 8002fae: 781b ldrb r3, [r3, #0] - 8002fb0: 2b02 cmp r3, #2 - 8002fb2: d003 beq.n 8002fbc + 8002fde: 230e movs r3, #14 + 8002fe0: 18fb adds r3, r7, r3 + 8002fe2: 781b ldrb r3, [r3, #0] + 8002fe4: 2b02 cmp r3, #2 + 8002fe6: d003 beq.n 8002ff0 { }else { countdown=countdown_set-countdown; - 8002fb4: 687a ldr r2, [r7, #4] - 8002fb6: 68bb ldr r3, [r7, #8] - 8002fb8: 1ad3 subs r3, r2, r3 - 8002fba: 60bb str r3, [r7, #8] + 8002fe8: 687a ldr r2, [r7, #4] + 8002fea: 68bb ldr r3, [r7, #8] + 8002fec: 1ad3 subs r3, r2, r3 + 8002fee: 60bb str r3, [r7, #8] } } if(key3.code!=0) - 8002fbc: 4b2f ldr r3, [pc, #188] ; (800307c ) - 8002fbe: 681b ldr r3, [r3, #0] - 8002fc0: 2b00 cmp r3, #0 - 8002fc2: d015 beq.n 8002ff0 + 8002ff0: 4b2f ldr r3, [pc, #188] ; (80030b0 ) + 8002ff2: 681b ldr r3, [r3, #0] + 8002ff4: 2b00 cmp r3, #0 + 8002ff6: d015 beq.n 8003024 { mode=3; - 8002fc4: 230f movs r3, #15 - 8002fc6: 18fb adds r3, r7, r3 - 8002fc8: 2203 movs r2, #3 - 8002fca: 701a strb r2, [r3, #0] + 8002ff8: 230f movs r3, #15 + 8002ffa: 18fb adds r3, r7, r3 + 8002ffc: 2203 movs r2, #3 + 8002ffe: 701a strb r2, [r3, #0] if(overload_mode==3) - 8002fcc: 230e movs r3, #14 - 8002fce: 18fb adds r3, r7, r3 - 8002fd0: 781b ldrb r3, [r3, #0] - 8002fd2: 2b03 cmp r3, #3 - 8002fd4: d00c beq.n 8002ff0 + 8003000: 230e movs r3, #14 + 8003002: 18fb adds r3, r7, r3 + 8003004: 781b ldrb r3, [r3, #0] + 8003006: 2b03 cmp r3, #3 + 8003008: d00c beq.n 8003024 { }else { countdown=countdown_set-countdown; - 8002fd6: 687a ldr r2, [r7, #4] - 8002fd8: 68bb ldr r3, [r7, #8] - 8002fda: 1ad3 subs r3, r2, r3 - 8002fdc: 60bb str r3, [r7, #8] + 800300a: 687a ldr r2, [r7, #4] + 800300c: 68bb ldr r3, [r7, #8] + 800300e: 1ad3 subs r3, r2, r3 + 8003010: 60bb str r3, [r7, #8] } } break; - 8002fde: e007 b.n 8002ff0 + 8003012: e007 b.n 8003024 break; - 8002fe0: 46c0 nop ; (mov r8, r8) - 8002fe2: e006 b.n 8002ff2 + 8003014: 46c0 nop ; (mov r8, r8) + 8003016: e006 b.n 8003026 break; - 8002fe4: 46c0 nop ; (mov r8, r8) - 8002fe6: e004 b.n 8002ff2 + 8003018: 46c0 nop ; (mov r8, r8) + 800301a: e004 b.n 8003026 break; - 8002fe8: 46c0 nop ; (mov r8, r8) - 8002fea: e002 b.n 8002ff2 + 800301c: 46c0 nop ; (mov r8, r8) + 800301e: e002 b.n 8003026 break; - 8002fec: 46c0 nop ; (mov r8, r8) - 8002fee: e000 b.n 8002ff2 + 8003020: 46c0 nop ; (mov r8, r8) + 8003022: e000 b.n 8003026 break; - 8002ff0: 46c0 nop ; (mov r8, r8) + 8003024: 46c0 nop ; (mov r8, r8) } if(ADCC.adc_value[0]>600||ADCC.adc_value[1]>600) - 8002ff2: 4b23 ldr r3, [pc, #140] ; (8003080 ) - 8002ff4: 68da ldr r2, [r3, #12] - 8002ff6: 2396 movs r3, #150 ; 0x96 - 8002ff8: 009b lsls r3, r3, #2 - 8002ffa: 429a cmp r2, r3 - 8002ffc: dc05 bgt.n 800300a - 8002ffe: 4b20 ldr r3, [pc, #128] ; (8003080 ) - 8003000: 691a ldr r2, [r3, #16] - 8003002: 2396 movs r3, #150 ; 0x96 - 8003004: 009b lsls r3, r3, #2 - 8003006: 429a cmp r2, r3 - 8003008: dd05 ble.n 8003016 + 8003026: 4b23 ldr r3, [pc, #140] ; (80030b4 ) + 8003028: 68da ldr r2, [r3, #12] + 800302a: 2396 movs r3, #150 ; 0x96 + 800302c: 009b lsls r3, r3, #2 + 800302e: 429a cmp r2, r3 + 8003030: dc05 bgt.n 800303e + 8003032: 4b20 ldr r3, [pc, #128] ; (80030b4 ) + 8003034: 691a ldr r2, [r3, #16] + 8003036: 2396 movs r3, #150 ; 0x96 + 8003038: 009b lsls r3, r3, #2 + 800303a: 429a cmp r2, r3 + 800303c: dd05 ble.n 800304a { GEI_BUTTON_CODE(&overload,1); - 800300a: 4b1e ldr r3, [pc, #120] ; (8003084 ) - 800300c: 2101 movs r1, #1 - 800300e: 0018 movs r0, r3 - 8003010: f7fe ff7a bl 8001f08 - 8003014: e004 b.n 8003020 + 800303e: 4b1e ldr r3, [pc, #120] ; (80030b8 ) + 8003040: 2101 movs r1, #1 + 8003042: 0018 movs r0, r3 + 8003044: f7fe ff60 bl 8001f08 + 8003048: e004 b.n 8003054 }else { GEI_BUTTON_CODE(&overload,0); - 8003016: 4b1b ldr r3, [pc, #108] ; (8003084 ) - 8003018: 2100 movs r1, #0 - 800301a: 0018 movs r0, r3 - 800301c: f7fe ff74 bl 8001f08 + 800304a: 4b1b ldr r3, [pc, #108] ; (80030b8 ) + 800304c: 2100 movs r1, #0 + 800304e: 0018 movs r0, r3 + 8003050: f7fe ff5a bl 8001f08 } GEI_BUTTON_CODE(&key1,dis_buff.button_flag[0]); - 8003020: 4b12 ldr r3, [pc, #72] ; (800306c ) - 8003022: 791a ldrb r2, [r3, #4] - 8003024: 4b18 ldr r3, [pc, #96] ; (8003088 ) - 8003026: 0011 movs r1, r2 - 8003028: 0018 movs r0, r3 - 800302a: f7fe ff6d bl 8001f08 + 8003054: 4b12 ldr r3, [pc, #72] ; (80030a0 ) + 8003056: 791a ldrb r2, [r3, #4] + 8003058: 4b18 ldr r3, [pc, #96] ; (80030bc ) + 800305a: 0011 movs r1, r2 + 800305c: 0018 movs r0, r3 + 800305e: f7fe ff53 bl 8001f08 GEI_BUTTON_CODE(&key2,dis_buff.button_flag[1]); - 800302e: 4b0f ldr r3, [pc, #60] ; (800306c ) - 8003030: 795a ldrb r2, [r3, #5] - 8003032: 4b11 ldr r3, [pc, #68] ; (8003078 ) - 8003034: 0011 movs r1, r2 - 8003036: 0018 movs r0, r3 - 8003038: f7fe ff66 bl 8001f08 + 8003062: 4b0f ldr r3, [pc, #60] ; (80030a0 ) + 8003064: 795a ldrb r2, [r3, #5] + 8003066: 4b11 ldr r3, [pc, #68] ; (80030ac ) + 8003068: 0011 movs r1, r2 + 800306a: 0018 movs r0, r3 + 800306c: f7fe ff4c bl 8001f08 GEI_BUTTON_CODE(&key3,dis_buff.button_flag[2]); - 800303c: 4b0b ldr r3, [pc, #44] ; (800306c ) - 800303e: 799a ldrb r2, [r3, #6] - 8003040: 4b0e ldr r3, [pc, #56] ; (800307c ) - 8003042: 0011 movs r1, r2 - 8003044: 0018 movs r0, r3 - 8003046: f7fe ff5f bl 8001f08 + 8003070: 4b0b ldr r3, [pc, #44] ; (80030a0 ) + 8003072: 799a ldrb r2, [r3, #6] + 8003074: 4b0e ldr r3, [pc, #56] ; (80030b0 ) + 8003076: 0011 movs r1, r2 + 8003078: 0018 movs r0, r3 + 800307a: f7fe ff45 bl 8001f08 GEI_BUTTON_CODE(&key4,dis_buff.button_flag[3]); - 800304a: 4b08 ldr r3, [pc, #32] ; (800306c ) - 800304c: 79da ldrb r2, [r3, #7] - 800304e: 4b09 ldr r3, [pc, #36] ; (8003074 ) - 8003050: 0011 movs r1, r2 - 8003052: 0018 movs r0, r3 - 8003054: f7fe ff58 bl 8001f08 - //display_and_button_loop(); - HT1621_Display(); - 8003058: f7ff f991 bl 800237e + 800307e: 4b08 ldr r3, [pc, #32] ; (80030a0 ) + 8003080: 79da ldrb r2, [r3, #7] + 8003082: 4b09 ldr r3, [pc, #36] ; (80030a8 ) + 8003084: 0011 movs r1, r2 + 8003086: 0018 movs r0, r3 + 8003088: f7fe ff3e bl 8001f08 + HT1621_Display_GetButton(); + 800308c: f7ff fae8 bl 8002660 hc2_sever(); - 800305c: f7ff fa54 bl 8002508 + 8003090: f7ff f9b2 bl 80023f8 moto_server(); - 8003060: f7ff faa4 bl 80025ac + 8003094: f7ff fa02 bl 800249c for(char a=0;a<2;a++) - 8003064: f7ff fbdb bl 800281e - 8003068: 200000f4 .word 0x200000f4 - 800306c: 20000028 .word 0x20000028 - 8003070: 00002710 .word 0x00002710 - 8003074: 20000090 .word 0x20000090 - 8003078: 200000e4 .word 0x200000e4 - 800307c: 200000c0 .word 0x200000c0 - 8003080: 200000d0 .word 0x200000d0 - 8003084: 200000b0 .word 0x200000b0 - 8003088: 200000a0 .word 0x200000a0 + 8003098: f7ff fbd6 bl 8002848 + 800309c: 200000dc .word 0x200000dc + 80030a0: 20000028 .word 0x20000028 + 80030a4: 00002710 .word 0x00002710 + 80030a8: 20000078 .word 0x20000078 + 80030ac: 200000cc .word 0x200000cc + 80030b0: 200000a8 .word 0x200000a8 + 80030b4: 200000b8 .word 0x200000b8 + 80030b8: 20000098 .word 0x20000098 + 80030bc: 20000088 .word 0x20000088 -0800308c <__libc_init_array>: - 800308c: b570 push {r4, r5, r6, lr} - 800308e: 2600 movs r6, #0 - 8003090: 4d0c ldr r5, [pc, #48] ; (80030c4 <__libc_init_array+0x38>) - 8003092: 4c0d ldr r4, [pc, #52] ; (80030c8 <__libc_init_array+0x3c>) - 8003094: 1b64 subs r4, r4, r5 - 8003096: 10a4 asrs r4, r4, #2 - 8003098: 42a6 cmp r6, r4 - 800309a: d109 bne.n 80030b0 <__libc_init_array+0x24> - 800309c: 2600 movs r6, #0 - 800309e: f000 f821 bl 80030e4 <_init> - 80030a2: 4d0a ldr r5, [pc, #40] ; (80030cc <__libc_init_array+0x40>) - 80030a4: 4c0a ldr r4, [pc, #40] ; (80030d0 <__libc_init_array+0x44>) - 80030a6: 1b64 subs r4, r4, r5 - 80030a8: 10a4 asrs r4, r4, #2 - 80030aa: 42a6 cmp r6, r4 - 80030ac: d105 bne.n 80030ba <__libc_init_array+0x2e> - 80030ae: bd70 pop {r4, r5, r6, pc} - 80030b0: 00b3 lsls r3, r6, #2 - 80030b2: 58eb ldr r3, [r5, r3] - 80030b4: 4798 blx r3 - 80030b6: 3601 adds r6, #1 - 80030b8: e7ee b.n 8003098 <__libc_init_array+0xc> - 80030ba: 00b3 lsls r3, r6, #2 - 80030bc: 58eb ldr r3, [r5, r3] - 80030be: 4798 blx r3 - 80030c0: 3601 adds r6, #1 - 80030c2: e7f2 b.n 80030aa <__libc_init_array+0x1e> - 80030c4: 0800315c .word 0x0800315c - 80030c8: 0800315c .word 0x0800315c - 80030cc: 0800315c .word 0x0800315c - 80030d0: 08003160 .word 0x08003160 +080030c0 <__libc_init_array>: + 80030c0: b570 push {r4, r5, r6, lr} + 80030c2: 2600 movs r6, #0 + 80030c4: 4d0c ldr r5, [pc, #48] ; (80030f8 <__libc_init_array+0x38>) + 80030c6: 4c0d ldr r4, [pc, #52] ; (80030fc <__libc_init_array+0x3c>) + 80030c8: 1b64 subs r4, r4, r5 + 80030ca: 10a4 asrs r4, r4, #2 + 80030cc: 42a6 cmp r6, r4 + 80030ce: d109 bne.n 80030e4 <__libc_init_array+0x24> + 80030d0: 2600 movs r6, #0 + 80030d2: f000 f821 bl 8003118 <_init> + 80030d6: 4d0a ldr r5, [pc, #40] ; (8003100 <__libc_init_array+0x40>) + 80030d8: 4c0a ldr r4, [pc, #40] ; (8003104 <__libc_init_array+0x44>) + 80030da: 1b64 subs r4, r4, r5 + 80030dc: 10a4 asrs r4, r4, #2 + 80030de: 42a6 cmp r6, r4 + 80030e0: d105 bne.n 80030ee <__libc_init_array+0x2e> + 80030e2: bd70 pop {r4, r5, r6, pc} + 80030e4: 00b3 lsls r3, r6, #2 + 80030e6: 58eb ldr r3, [r5, r3] + 80030e8: 4798 blx r3 + 80030ea: 3601 adds r6, #1 + 80030ec: e7ee b.n 80030cc <__libc_init_array+0xc> + 80030ee: 00b3 lsls r3, r6, #2 + 80030f0: 58eb ldr r3, [r5, r3] + 80030f2: 4798 blx r3 + 80030f4: 3601 adds r6, #1 + 80030f6: e7f2 b.n 80030de <__libc_init_array+0x1e> + 80030f8: 08003194 .word 0x08003194 + 80030fc: 08003194 .word 0x08003194 + 8003100: 08003194 .word 0x08003194 + 8003104: 08003198 .word 0x08003198 -080030d4 : - 80030d4: 0003 movs r3, r0 - 80030d6: 1882 adds r2, r0, r2 - 80030d8: 4293 cmp r3, r2 - 80030da: d100 bne.n 80030de - 80030dc: 4770 bx lr - 80030de: 7019 strb r1, [r3, #0] - 80030e0: 3301 adds r3, #1 - 80030e2: e7f9 b.n 80030d8 +08003108 : + 8003108: 0003 movs r3, r0 + 800310a: 1882 adds r2, r0, r2 + 800310c: 4293 cmp r3, r2 + 800310e: d100 bne.n 8003112 + 8003110: 4770 bx lr + 8003112: 7019 strb r1, [r3, #0] + 8003114: 3301 adds r3, #1 + 8003116: e7f9 b.n 800310c -080030e4 <_init>: - 80030e4: b5f8 push {r3, r4, r5, r6, r7, lr} - 80030e6: 46c0 nop ; (mov r8, r8) - 80030e8: bcf8 pop {r3, r4, r5, r6, r7} - 80030ea: bc08 pop {r3} - 80030ec: 469e mov lr, r3 - 80030ee: 4770 bx lr +08003118 <_init>: + 8003118: b5f8 push {r3, r4, r5, r6, r7, lr} + 800311a: 46c0 nop ; (mov r8, r8) + 800311c: bcf8 pop {r3, r4, r5, r6, r7} + 800311e: bc08 pop {r3} + 8003120: 469e mov lr, r3 + 8003122: 4770 bx lr -080030f0 <_fini>: - 80030f0: b5f8 push {r3, r4, r5, r6, r7, lr} - 80030f2: 46c0 nop ; (mov r8, r8) - 80030f4: bcf8 pop {r3, r4, r5, r6, r7} - 80030f6: bc08 pop {r3} - 80030f8: 469e mov lr, r3 - 80030fa: 4770 bx lr +08003124 <_fini>: + 8003124: b5f8 push {r3, r4, r5, r6, r7, lr} + 8003126: 46c0 nop ; (mov r8, r8) + 8003128: bcf8 pop {r3, r4, r5, r6, r7} + 800312a: bc08 pop {r3} + 800312c: 469e mov lr, r3 + 800312e: 4770 bx lr diff --git a/Debug/Motor_Controller2.map b/Debug/Motor_Controller2.map index f6abf54..f4cc63d 100644 --- a/Debug/Motor_Controller2.map +++ b/Debug/Motor_Controller2.map @@ -22,7 +22,6 @@ Common symbol size file key4 0x10 ./my_software/my_code.o uwTick 0x4 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o -LCD_RAM_Tab 0x17 ./my_software/ht1621.o pFlash 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_flash.o dis_buff 0xa ./Core/Src/main.o key1 0x10 ./my_software/my_code.o @@ -2586,8 +2585,8 @@ Discarded input sections .text 0x0000000000000000 0x0 ./my_software/ht1621.o .data 0x0000000000000000 0x0 ./my_software/ht1621.o .bss 0x0000000000000000 0x0 ./my_software/ht1621.o - .text.WritenDataHT1621 - 0x0000000000000000 0x182 ./my_software/ht1621.o + .text.Write1DataHT1621 + 0x0000000000000000 0x148 ./my_software/ht1621.o .debug_macro 0x0000000000000000 0xa7e ./my_software/ht1621.o .debug_macro 0x0000000000000000 0x12d ./my_software/ht1621.o .debug_macro 0x0000000000000000 0x2e ./my_software/ht1621.o @@ -2829,7 +2828,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000008000000 g_pfnVectors 0x00000000080000c0 . = ALIGN (0x4) -.text 0x00000000080000c0 0x303c +.text 0x00000000080000c0 0x3070 0x00000000080000c0 . = ALIGN (0x4) *(.text) .text 0x00000000080000c0 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o @@ -2983,121 +2982,119 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .text.WriteCommandHT1621 0x0000000008001fea 0xee ./my_software/ht1621.o 0x0000000008001fea WriteCommandHT1621 - .text.Write1DataHT1621 - 0x00000000080020d8 0x148 ./my_software/ht1621.o - 0x00000000080020d8 Write1DataHT1621 - .text.HT1621_num_init - 0x0000000008002220 0xfc ./my_software/ht1621.o - 0x0000000008002220 HT1621_num_init + .text.WritenDataHT1621 + 0x00000000080020d8 0x182 ./my_software/ht1621.o + 0x00000000080020d8 WritenDataHT1621 .text.HT1621_Init - 0x000000000800231c 0x62 ./my_software/ht1621.o - 0x000000000800231c HT1621_Init - .text.HT1621_Display - 0x000000000800237e 0x4a ./my_software/ht1621.o - 0x000000000800237e HT1621_Display + 0x000000000800225a 0x5e ./my_software/ht1621.o + 0x000000000800225a HT1621_Init .text.ds_in_or_out - 0x00000000080023c8 0x6c ./my_software/my_code.o - 0x00000000080023c8 ds_in_or_out + 0x00000000080022b8 0x6c ./my_software/my_code.o + 0x00000000080022b8 ds_in_or_out .text.Sand_Byte_to_595_2 - 0x0000000008002434 0xd4 ./my_software/my_code.o - 0x0000000008002434 Sand_Byte_to_595_2 + 0x0000000008002324 0xd4 ./my_software/my_code.o + 0x0000000008002324 Sand_Byte_to_595_2 .text.hc2_sever - 0x0000000008002508 0xa4 ./my_software/my_code.o - 0x0000000008002508 hc2_sever + 0x00000000080023f8 0xa4 ./my_software/my_code.o + 0x00000000080023f8 hc2_sever .text.moto_server - 0x00000000080025ac 0x1c4 ./my_software/my_code.o - 0x00000000080025ac moto_server - .text.my_code 0x0000000008002770 0x91c ./my_software/my_code.o - 0x0000000008002770 my_code + 0x000000000800249c 0x1c4 ./my_software/my_code.o + 0x000000000800249c moto_server + .text.HT1621_Display_GetButton + 0x0000000008002660 0x150 ./my_software/my_code.o + 0x0000000008002660 HT1621_Display_GetButton + .text.my_code 0x00000000080027b0 0x910 ./my_software/my_code.o + 0x00000000080027b0 my_code .text.__libc_init_array - 0x000000000800308c 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-init.o) - 0x000000000800308c __libc_init_array - .text.memset 0x00000000080030d4 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-memset.o) - 0x00000000080030d4 memset + 0x00000000080030c0 0x48 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-init.o) + 0x00000000080030c0 __libc_init_array + .text.memset 0x0000000008003108 0x10 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-memset.o) + 0x0000000008003108 memset *(.glue_7) - .glue_7 0x00000000080030e4 0x0 linker stubs + .glue_7 0x0000000008003118 0x0 linker stubs *(.glue_7t) - .glue_7t 0x00000000080030e4 0x0 linker stubs + .glue_7t 0x0000000008003118 0x0 linker stubs *(.eh_frame) - .eh_frame 0x00000000080030e4 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o + .eh_frame 0x0000000008003118 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o *(.init) - .init 0x00000000080030e4 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crti.o - 0x00000000080030e4 _init - .init 0x00000000080030e8 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtn.o + .init 0x0000000008003118 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crti.o + 0x0000000008003118 _init + .init 0x000000000800311c 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtn.o *(.fini) - .fini 0x00000000080030f0 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crti.o - 0x00000000080030f0 _fini - .fini 0x00000000080030f4 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtn.o - 0x00000000080030fc . = ALIGN (0x4) - 0x00000000080030fc _etext = . + .fini 0x0000000008003124 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crti.o + 0x0000000008003124 _fini + .fini 0x0000000008003128 0x8 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtn.o + 0x0000000008003130 . = ALIGN (0x4) + 0x0000000008003130 _etext = . -.vfp11_veneer 0x00000000080030fc 0x0 - .vfp11_veneer 0x00000000080030fc 0x0 linker stubs +.vfp11_veneer 0x0000000008003130 0x0 + .vfp11_veneer 0x0000000008003130 0x0 linker stubs -.v4_bx 0x00000000080030fc 0x0 - .v4_bx 0x00000000080030fc 0x0 linker stubs +.v4_bx 0x0000000008003130 0x0 + .v4_bx 0x0000000008003130 0x0 linker stubs -.iplt 0x00000000080030fc 0x0 - .iplt 0x00000000080030fc 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o +.iplt 0x0000000008003130 0x0 + .iplt 0x0000000008003130 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o -.rodata 0x00000000080030fc 0x60 - 0x00000000080030fc . = ALIGN (0x4) +.rodata 0x0000000008003130 0x64 + 0x0000000008003130 . = ALIGN (0x4) *(.rodata) - .rodata 0x00000000080030fc 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .rodata 0x0000000008003130 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .rodata 0x0000000008003150 0x8 ./my_software/my_code.o *(.rodata*) .rodata.AHBPrescTable - 0x000000000800311c 0x10 ./Core/Src/system_stm32f0xx.o - 0x000000000800311c AHBPrescTable + 0x0000000008003158 0x10 ./Core/Src/system_stm32f0xx.o + 0x0000000008003158 AHBPrescTable .rodata.LED_Tab - 0x000000000800312c 0x17 ./my_software/ht1621.o - 0x000000000800312c LED_Tab - *fill* 0x0000000008003143 0x1 + 0x0000000008003168 0x12 ./my_software/my_code.o + 0x0000000008003168 LED_Tab + *fill* 0x000000000800317a 0x2 .rodata.my_code - 0x0000000008003144 0x18 ./my_software/my_code.o - 0x000000000800315c . = ALIGN (0x4) + 0x000000000800317c 0x18 ./my_software/my_code.o + 0x0000000008003194 . = ALIGN (0x4) -.rel.dyn 0x000000000800315c 0x0 - .rel.iplt 0x000000000800315c 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o +.rel.dyn 0x0000000008003194 0x0 + .rel.iplt 0x0000000008003194 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o -.ARM.extab 0x000000000800315c 0x0 - 0x000000000800315c . = ALIGN (0x4) +.ARM.extab 0x0000000008003194 0x0 + 0x0000000008003194 . = ALIGN (0x4) *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x000000000800315c . = ALIGN (0x4) + 0x0000000008003194 . = ALIGN (0x4) -.ARM 0x000000000800315c 0x0 - 0x000000000800315c . = ALIGN (0x4) - 0x000000000800315c __exidx_start = . +.ARM 0x0000000008003194 0x0 + 0x0000000008003194 . = ALIGN (0x4) + 0x0000000008003194 __exidx_start = . *(.ARM.exidx*) - 0x000000000800315c __exidx_end = . - 0x000000000800315c . = ALIGN (0x4) + 0x0000000008003194 __exidx_end = . + 0x0000000008003194 . = ALIGN (0x4) -.preinit_array 0x000000000800315c 0x0 - 0x000000000800315c . = ALIGN (0x4) - 0x000000000800315c PROVIDE (__preinit_array_start = .) +.preinit_array 0x0000000008003194 0x0 + 0x0000000008003194 . = ALIGN (0x4) + 0x0000000008003194 PROVIDE (__preinit_array_start = .) *(.preinit_array*) - 0x000000000800315c PROVIDE (__preinit_array_end = .) - 0x000000000800315c . = ALIGN (0x4) + 0x0000000008003194 PROVIDE (__preinit_array_end = .) + 0x0000000008003194 . = ALIGN (0x4) -.init_array 0x000000000800315c 0x4 - 0x000000000800315c . = ALIGN (0x4) - 0x000000000800315c PROVIDE (__init_array_start = .) +.init_array 0x0000000008003194 0x4 + 0x0000000008003194 . = ALIGN (0x4) + 0x0000000008003194 PROVIDE (__init_array_start = .) *(SORT_BY_NAME(.init_array.*)) *(.init_array*) - .init_array 0x000000000800315c 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o - 0x0000000008003160 PROVIDE (__init_array_end = .) - 0x0000000008003160 . = ALIGN (0x4) + .init_array 0x0000000008003194 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o + 0x0000000008003198 PROVIDE (__init_array_end = .) + 0x0000000008003198 . = ALIGN (0x4) -.fini_array 0x0000000008003160 0x4 - 0x0000000008003160 . = ALIGN (0x4) +.fini_array 0x0000000008003198 0x4 + 0x0000000008003198 . = ALIGN (0x4) [!provide] PROVIDE (__fini_array_start = .) *(SORT_BY_NAME(.fini_array.*)) *(.fini_array*) - .fini_array 0x0000000008003160 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o + .fini_array 0x0000000008003198 0x4 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o [!provide] PROVIDE (__fini_array_end = .) - 0x0000000008003164 . = ALIGN (0x4) - 0x0000000008003164 _sidata = LOADADDR (.data) + 0x000000000800319c . = ALIGN (0x4) + 0x000000000800319c _sidata = LOADADDR (.data) -.data 0x0000000020000000 0xc load address 0x0000000008003164 +.data 0x0000000020000000 0xc load address 0x000000000800319c 0x0000000020000000 . = ALIGN (0x4) 0x0000000020000000 _sdata = . *(.data) @@ -3117,11 +3114,11 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id *fill* 0x0000000020000009 0x3 0x000000002000000c _edata = . -.igot.plt 0x000000002000000c 0x0 load address 0x0000000008003170 +.igot.plt 0x000000002000000c 0x0 load address 0x00000000080031a8 .igot.plt 0x000000002000000c 0x0 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/crtbegin.o 0x000000002000000c . = ALIGN (0x4) -.bss 0x000000002000000c 0xf8 load address 0x0000000008003170 +.bss 0x000000002000000c 0xe0 load address 0x00000000080031a8 0x000000002000000c _sbss = . 0x000000002000000c __bss_start__ = _sbss *(.bss) @@ -3133,32 +3130,29 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000020000034 hadc COMMON 0x0000000020000074 0x4 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o 0x0000000020000074 uwTick - COMMON 0x0000000020000078 0x17 ./my_software/ht1621.o - 0x0000000020000078 LCD_RAM_Tab - *fill* 0x000000002000008f 0x1 - COMMON 0x0000000020000090 0x74 ./my_software/my_code.o - 0x0000000020000090 key4 - 0x00000000200000a0 key1 - 0x00000000200000b0 overload - 0x00000000200000c0 key3 - 0x00000000200000d0 ADCC - 0x00000000200000e4 key2 - 0x00000000200000f4 moto - 0x0000000020000104 . = ALIGN (0x4) - 0x0000000020000104 _ebss = . - 0x0000000020000104 __bss_end__ = _ebss + COMMON 0x0000000020000078 0x74 ./my_software/my_code.o + 0x0000000020000078 key4 + 0x0000000020000088 key1 + 0x0000000020000098 overload + 0x00000000200000a8 key3 + 0x00000000200000b8 ADCC + 0x00000000200000cc key2 + 0x00000000200000dc moto + 0x00000000200000ec . = ALIGN (0x4) + 0x00000000200000ec _ebss = . + 0x00000000200000ec __bss_end__ = _ebss ._user_heap_stack - 0x0000000020000104 0x604 load address 0x0000000008003170 - 0x0000000020000108 . = ALIGN (0x8) - *fill* 0x0000000020000104 0x4 + 0x00000000200000ec 0x604 load address 0x00000000080031a8 + 0x00000000200000f0 . = ALIGN (0x8) + *fill* 0x00000000200000ec 0x4 [!provide] PROVIDE (end = .) - 0x0000000020000108 PROVIDE (_end = .) - 0x0000000020000308 . = (. + _Min_Heap_Size) - *fill* 0x0000000020000108 0x200 - 0x0000000020000708 . = (. + _Min_Stack_Size) - *fill* 0x0000000020000308 0x400 - 0x0000000020000708 . = ALIGN (0x8) + 0x00000000200000f0 PROVIDE (_end = .) + 0x00000000200002f0 . = (. + _Min_Heap_Size) + *fill* 0x00000000200000f0 0x200 + 0x00000000200006f0 . = (. + _Min_Stack_Size) + *fill* 0x00000000200002f0 0x400 + 0x00000000200006f0 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -3216,7 +3210,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libm.a LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/libgcc.a -.debug_info 0x0000000000000000 0x54e8 +.debug_info 0x0000000000000000 0x54cd .debug_info 0x0000000000000000 0xb3c ./Core/Src/main.o .debug_info 0x0000000000000b3c 0x888 ./Core/Src/stm32f0xx_hal_msp.o .debug_info 0x00000000000013c4 0x1b3 ./Core/Src/stm32f0xx_it.o @@ -3228,10 +3222,10 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_info 0x000000000000341c 0x6d3 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_info 0x0000000000003aef 0x88d ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_info 0x000000000000437c 0x1d4 ./my_software/button.o - .debug_info 0x0000000000004550 0x4cd ./my_software/ht1621.o - .debug_info 0x0000000000004a1d 0xacb ./my_software/my_code.o + .debug_info 0x0000000000004550 0x438 ./my_software/ht1621.o + .debug_info 0x0000000000004988 0xb45 ./my_software/my_code.o -.debug_abbrev 0x0000000000000000 0x1556 +.debug_abbrev 0x0000000000000000 0x1576 .debug_abbrev 0x0000000000000000 0x21f ./Core/Src/main.o .debug_abbrev 0x000000000000021f 0x1ac ./Core/Src/stm32f0xx_hal_msp.o .debug_abbrev 0x00000000000003cb 0xd2 ./Core/Src/stm32f0xx_it.o @@ -3243,10 +3237,10 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_abbrev 0x0000000000000cac 0x1e8 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_abbrev 0x0000000000000e94 0x23b ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_abbrev 0x00000000000010cf 0xf6 ./my_software/button.o - .debug_abbrev 0x00000000000011c5 0x1a9 ./my_software/ht1621.o - .debug_abbrev 0x000000000000136e 0x1e8 ./my_software/my_code.o + .debug_abbrev 0x00000000000011c5 0x18d ./my_software/ht1621.o + .debug_abbrev 0x0000000000001352 0x224 ./my_software/my_code.o -.debug_aranges 0x0000000000000000 0x518 +.debug_aranges 0x0000000000000000 0x510 .debug_aranges 0x0000000000000000 0x40 ./Core/Src/main.o .debug_aranges @@ -3270,11 +3264,11 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_aranges 0x0000000000000460 0x20 ./my_software/button.o .debug_aranges - 0x0000000000000480 0x50 ./my_software/ht1621.o + 0x0000000000000480 0x40 ./my_software/ht1621.o .debug_aranges - 0x00000000000004d0 0x48 ./my_software/my_code.o + 0x00000000000004c0 0x50 ./my_software/my_code.o -.debug_ranges 0x0000000000000000 0x450 +.debug_ranges 0x0000000000000000 0x448 .debug_ranges 0x0000000000000000 0x30 ./Core/Src/main.o .debug_ranges 0x0000000000000030 0x20 ./Core/Src/stm32f0xx_hal_msp.o .debug_ranges 0x0000000000000050 0x30 ./Core/Src/stm32f0xx_it.o @@ -3286,8 +3280,8 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_ranges 0x0000000000000310 0x48 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_ranges 0x0000000000000358 0x70 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_ranges 0x00000000000003c8 0x10 ./my_software/button.o - .debug_ranges 0x00000000000003d8 0x40 ./my_software/ht1621.o - .debug_ranges 0x0000000000000418 0x38 ./my_software/my_code.o + .debug_ranges 0x00000000000003d8 0x30 ./my_software/ht1621.o + .debug_ranges 0x0000000000000408 0x40 ./my_software/my_code.o .debug_macro 0x0000000000000000 0xec48 .debug_macro 0x0000000000000000 0x1c5 ./Core/Src/main.o @@ -3340,13 +3334,13 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_macro 0x000000000000e22f 0x1b4 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_macro 0x000000000000e3e3 0x1bf ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_macro 0x000000000000e5a2 0x1cc ./my_software/button.o - .debug_macro 0x000000000000e76e 0x212 ./my_software/ht1621.o - .debug_macro 0x000000000000e980 0x5e ./my_software/ht1621.o - .debug_macro 0x000000000000e9de 0x1e4 ./my_software/my_code.o + .debug_macro 0x000000000000e76e 0x1da ./my_software/ht1621.o + .debug_macro 0x000000000000e948 0x5e ./my_software/ht1621.o + .debug_macro 0x000000000000e9a6 0x21c ./my_software/my_code.o .debug_macro 0x000000000000ebc2 0x22 ./my_software/my_code.o .debug_macro 0x000000000000ebe4 0x64 ./my_software/my_code.o -.debug_line 0x0000000000000000 0x791f +.debug_line 0x0000000000000000 0x78b1 .debug_line 0x0000000000000000 0x851 ./Core/Src/main.o .debug_line 0x0000000000000851 0x727 ./Core/Src/stm32f0xx_hal_msp.o .debug_line 0x0000000000000f78 0x744 ./Core/Src/stm32f0xx_it.o @@ -3358,10 +3352,10 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_line 0x0000000000004369 0xad7 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_line 0x0000000000004e40 0xd46 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_line 0x0000000000005b86 0x73a ./my_software/button.o - .debug_line 0x00000000000062c0 0x987 ./my_software/ht1621.o - .debug_line 0x0000000000006c47 0xcd8 ./my_software/my_code.o + .debug_line 0x00000000000062c0 0x88a ./my_software/ht1621.o + .debug_line 0x0000000000006b4a 0xd67 ./my_software/my_code.o -.debug_str 0x0000000000000000 0x5692c +.debug_str 0x0000000000000000 0x56904 .debug_str 0x0000000000000000 0x55732 ./Core/Src/main.o 0x55a16 (size before relaxing) .debug_str 0x0000000000055732 0x4e ./Core/Src/stm32f0xx_hal_msp.o @@ -3384,10 +3378,10 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x554c9 (size before relaxing) .debug_str 0x000000000005659d 0x40 ./my_software/button.o 0x5526b (size before relaxing) - .debug_str 0x00000000000565dd 0x217 ./my_software/ht1621.o - 0x55642 (size before relaxing) - .debug_str 0x00000000000567f4 0x138 ./my_software/my_code.o - 0x55a38 (size before relaxing) + .debug_str 0x00000000000565dd 0x183 ./my_software/ht1621.o + 0x555ae (size before relaxing) + .debug_str 0x0000000000056760 0x1a4 ./my_software/my_code.o + 0x55aa4 (size before relaxing) .comment 0x0000000000000000 0x53 .comment 0x0000000000000000 0x53 ./Core/Src/main.o @@ -3404,7 +3398,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .comment 0x0000000000000053 0x54 ./my_software/ht1621.o .comment 0x0000000000000053 0x54 ./my_software/my_code.o -.debug_frame 0x0000000000000000 0xff4 +.debug_frame 0x0000000000000000 0xfd8 .debug_frame 0x0000000000000000 0xa8 ./Core/Src/main.o .debug_frame 0x00000000000000a8 0x70 ./Core/Src/stm32f0xx_hal_msp.o .debug_frame 0x0000000000000118 0x9c ./Core/Src/stm32f0xx_it.o @@ -3415,9 +3409,9 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_frame 0x0000000000000ae4 0x110 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o .debug_frame 0x0000000000000bf4 0x198 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o .debug_frame 0x0000000000000d8c 0x30 ./my_software/button.o - .debug_frame 0x0000000000000dbc 0xe4 ./my_software/ht1621.o - .debug_frame 0x0000000000000ea0 0xc8 ./my_software/my_code.o - .debug_frame 0x0000000000000f68 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-init.o) - .debug_frame 0x0000000000000f94 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-memset.o) - .debug_frame 0x0000000000000fb4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/libgcc.a(_udivsi3.o) - .debug_frame 0x0000000000000fd4 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/libgcc.a(_divsi3.o) + .debug_frame 0x0000000000000dbc 0xa8 ./my_software/ht1621.o + .debug_frame 0x0000000000000e64 0xe8 ./my_software/my_code.o + .debug_frame 0x0000000000000f4c 0x2c /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-init.o) + .debug_frame 0x0000000000000f78 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/../../../../arm-none-eabi/lib/thumb/v6-m/nofp/libc_nano.a(lib_a-memset.o) + .debug_frame 0x0000000000000f98 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/libgcc.a(_udivsi3.o) + .debug_frame 0x0000000000000fb8 0x20 /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.9-2020-q2-update.macos64_2.0.0.202105311346/tools/bin/../lib/gcc/arm-none-eabi/9.3.1/thumb/v6-m/nofp/libgcc.a(_divsi3.o) diff --git a/Debug/my_software/ht1621.su b/Debug/my_software/ht1621.su index 3151e69..d3e58f5 100644 --- a/Debug/my_software/ht1621.su +++ b/Debug/my_software/ht1621.su @@ -2,6 +2,4 @@ ht1621.c:19:6:WriteClockHT1621 8 static ht1621.c:29:6:WriteCommandHT1621 24 static ht1621.c:61:6:Write1DataHT1621 24 static ht1621.c:103:6:WritenDataHT1621 24 static -ht1621.c:169:6:HT1621_num_init 16 static -ht1621.c:194:6:HT1621_Init 8 static -ht1621.c:222:6:HT1621_Display 8 static +ht1621.c:150:6:HT1621_Init 8 static diff --git a/Debug/my_software/my_code.su b/Debug/my_software/my_code.su index a349568..5bced31 100644 --- a/Debug/my_software/my_code.su +++ b/Debug/my_software/my_code.su @@ -1,6 +1,7 @@ my_code.c:45:6:ds_in_or_out 48 static my_code.c:63:9:Read_Ds 8 static -my_code.c:70:6:Sand_Byte_to_595_2 24 static -my_code.c:93:6:hc2_sever 16 static +my_code.c:71:6:Sand_Byte_to_595_2 24 static +my_code.c:92:6:hc2_sever 16 static my_code.c:119:6:moto_server 8 static -my_code.c:211:6:my_code 32 static +my_code.c:225:6:HT1621_Display_GetButton 24 static +my_code.c:269:6:my_code 32 static diff --git a/my_software/ht1621.c b/my_software/ht1621.c index 733630e..6f5e2db 100644 --- a/my_software/ht1621.c +++ b/my_software/ht1621.c @@ -139,53 +139,9 @@ void WritenDataHT1621(unsigned char Addr,unsigned char *Databuf,unsigned char Cn HC595_RCK(1); //CS 片选关 HC595_DCK(1); } -/** - * @brief 数据交换,自动生成液晶需要的数组,此程序,需要根据液晶图纸修改 - * @param None - * @retval None - */ -const unsigned char LED_Tab[]= -{ - 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71, //0-15 = 0--f - 0x58, //16=c - 0x37, //17=N - 0x40, //18=- - 0x0E, //19=J - 0x3E, //20=U - 0x76, //21=H - 0x30, //22=I -}; -unsigned char LCD_RAM_Tab[sizeof(LED_Tab)]; -#define LCD_A 0x01 -#define LCD_B 0x02 -#define LCD_C 0x04 -#define LCD_D 0x08 -#define LCD_E 0x10 -#define LCD_F 0x20 -#define LCD_G 0x40 -#define LCD_P 0x80 -void HT1621_num_init(void) -{ - unsigned char num,LCD_data; - for(num=0; nummoto.moto_run) @@ -206,6 +206,64 @@ void moto_server() dis_buff.moto2b=0; } +} + +const unsigned char LED_Tab[]= +{ + 0x7d,0x05,0x5b,0x1f,0x27,0x3e,0x7e,0x15,0x7f,0x3f, //0-9 + 0x77,0x6e,0x71,0x5e,0x7a,0x73, //a-f + 0x00,0x02 +}; +#define A 0x80 +#define B 0x40 +#define C 0x20 +#define D 0x10 +#define E 0x08 +#define F 0x04 +#define G 0x02 +#define H 0x01 +void HT1621_Display_GetButton(void) +{ + unsigned char send_buff[8]={0,0,0,0,0,0,0,0,0}; + unsigned char lcd_buff[4]={0,0,0,0}; + + //WritenDataHT1621(0,send_buff,8); + + lcd_buff[0]=LED_Tab[dis_buff.d_num[0]]; + if(dis_buff.dot1==1) + { + lcd_buff[0]|=0x80; + } + lcd_buff[1]=LED_Tab[dis_buff.d_num[1]]; + if(dis_buff.dot2==1) + { + lcd_buff[1]|=0x80; + } + lcd_buff[2]=LED_Tab[dis_buff.d_num[2]]; + if(dis_buff.dot3==1) + { + lcd_buff[2]|=0x80; + } + lcd_buff[3]=LED_Tab[dis_buff.d_num[3]]; + if(dis_buff.dot4==1) + { + lcd_buff[3]|=0x80; + } + send_buff[0]=lcd_buff[0]>>4; + send_buff[1]=lcd_buff[0]&0x0f; + send_buff[2]=lcd_buff[1]>>4; + send_buff[3]=lcd_buff[1]&0x0f; + send_buff[4]=lcd_buff[2]>>4; + send_buff[5]=lcd_buff[2]&0x0f; + send_buff[6]=lcd_buff[3]>>4; + send_buff[7]=lcd_buff[3]&0x0f; + + + WritenDataHT1621(0,send_buff,8); + + + + } void my_code() @@ -214,12 +272,9 @@ void my_code() uint8_t mode=0,overload_mode=0; uint16_t overload_times=0; - long countdown=0; + long countdown=1000; long countdown_set=15000; - dis_buff.d_num[0]=8; - dis_buff.d_num[1]=8; - dis_buff.d_num[2]=8; - dis_buff.d_num[3]=8; + dis_buff.moto1a=0; dis_buff.moto1b=0; @@ -241,21 +296,19 @@ void my_code() HT1621_Init(); while(1) { - //*adc读取 并计滤波 并计算温度*/ - ///*获取两个通道*/ + //get ADC for(char a=0;a<2;a++) { HAL_ADC_Start(&hadc); while(HAL_ADC_PollForConversion(&hadc,0xffff)!=HAL_OK); - ADCC.adc_filtering[a]+=HAL_ADC_GetValue(&hadc); //把读到的值加到滤波缓存 + ADCC.adc_filtering[a]+=HAL_ADC_GetValue(&hadc); } HAL_ADC_Stop(&hadc); - ///*开始滤波*/ - ADCC.filtering_times+=1; //每采样加一次记一次 - if(ADCC.filtering_times==set_filtering_times) //当达到设定的滤波采样次数 + ADCC.filtering_times+=1; + if(ADCC.filtering_times==set_filtering_times) { ADCC.filtering_times=0; - ADCC.adc_value[0]=ADCC.adc_filtering[0]/set_filtering_times; //就除于采样次数 + ADCC.adc_value[0]=ADCC.adc_filtering[0]/set_filtering_times; ADCC.adc_filtering[0]=0; ADCC.adc_value[1]=ADCC.adc_filtering[1]/set_filtering_times; ADCC.adc_filtering[1]=0; @@ -304,20 +357,22 @@ void my_code() if(dis_buff.led_run==1) { dis_buff.led_run=0; + dis_buff.dot4=1; }else { dis_buff.led_run=1; + dis_buff.dot4=0; } } - dis_buff.d_num[0]=0xff; - dis_buff.d_num[1]=0xff; - dis_buff.d_num[2]=0xff; - dis_buff.d_num[3]=0xff; + dis_buff.d_num[0]=16; + dis_buff.d_num[1]=16; + dis_buff.d_num[2]=16; + dis_buff.d_num[3]=16; dis_buff.dot1=0; dis_buff.dot2=0; dis_buff.dot3=0; - dis_buff.dot4=0; + overload_times=0; if(key2.code!=0) { @@ -359,7 +414,7 @@ void my_code() dis_buff.d_num[3]=(countdown/100)%10; dis_buff.d_num[2]=(countdown/1000)%10; dis_buff.d_num[1]=((countdown/10000)%10); - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; dis_buff.dot3=1; if(key3.code!=0) @@ -405,7 +460,7 @@ void my_code() dis_buff.d_num[3]=(countdown/100)%10; dis_buff.d_num[2]=(countdown/1000)%10; dis_buff.d_num[1]=((countdown/10000)%10); - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; dis_buff.dot3=1; if(key2.code!=0) { @@ -459,7 +514,7 @@ void my_code() dis_buff.d_num[3]=(countdown_set/100)%10; dis_buff.d_num[2]=(countdown_set/1000)%10; dis_buff.d_num[1]=((countdown_set/10000)%10); - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; dis_buff.dot3=1; break; @@ -474,7 +529,7 @@ void my_code() dis_buff.d_num[3]=(countdown/100)%10; dis_buff.d_num[2]=(countdown/1000)%10; dis_buff.d_num[1]=((countdown/10000)%10); - dis_buff.d_num[1]=dis_buff.d_num[1]==0?255:dis_buff.d_num[1]; + dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; dis_buff.dot3=1; if(key4.code!=0){mode=1;} @@ -518,8 +573,7 @@ void my_code() GEI_BUTTON_CODE(&key2,dis_buff.button_flag[1]); GEI_BUTTON_CODE(&key3,dis_buff.button_flag[2]); GEI_BUTTON_CODE(&key4,dis_buff.button_flag[3]); - //display_and_button_loop(); - HT1621_Display(); + HT1621_Display_GetButton(); hc2_sever(); moto_server(); } diff --git a/my_software/my_code.h b/my_software/my_code.h index 5b589f9..ad56a37 100644 --- a/my_software/my_code.h +++ b/my_software/my_code.h @@ -22,8 +22,8 @@ void my_code(); struct display_penal { - char d_num[4]; - char button_flag[4]; + unsigned char d_num[4]; + unsigned char button_flag[4]; char dot1:1; char dot2:1; char dot3:1;