diff --git a/Debug/Motor_Controller2.bin b/Debug/Motor_Controller2.bin index 9755473..0f9e67a 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 ac587fa..7ad3b5b 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 00003e00 080000c0 080000c0 000100c0 2**2 + 1 .text 00003df0 080000c0 080000c0 000100c0 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .rodata 00000058 08003ec0 08003ec0 00013ec0 2**2 + 2 .rodata 00000058 08003eb0 08003eb0 00013eb0 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA - 3 .ARM.extab 00000000 08003f18 08003f18 0002000c 2**0 + 3 .ARM.extab 00000000 08003f08 08003f08 0002000c 2**0 CONTENTS - 4 .ARM 00000000 08003f18 08003f18 0002000c 2**0 + 4 .ARM 00000000 08003f08 08003f08 0002000c 2**0 CONTENTS - 5 .preinit_array 00000000 08003f18 08003f18 0002000c 2**0 + 5 .preinit_array 00000000 08003f08 08003f08 0002000c 2**0 CONTENTS, ALLOC, LOAD, DATA - 6 .init_array 00000004 08003f18 08003f18 00013f18 2**2 + 6 .init_array 00000004 08003f08 08003f08 00013f08 2**2 CONTENTS, ALLOC, LOAD, DATA - 7 .fini_array 00000004 08003f1c 08003f1c 00013f1c 2**2 + 7 .fini_array 00000004 08003f0c 08003f0c 00013f0c 2**2 CONTENTS, ALLOC, LOAD, DATA - 8 .data 0000000c 20000000 08003f20 00020000 2**2 + 8 .data 0000000c 20000000 08003f10 00020000 2**2 CONTENTS, ALLOC, LOAD, DATA - 9 .bss 00000144 2000000c 08003f2c 0002000c 2**2 + 9 .bss 00000148 2000000c 08003f1c 0002000c 2**2 ALLOC - 10 ._user_heap_stack 00000600 20000150 08003f2c 00020150 2**0 + 10 ._user_heap_stack 00000604 20000154 08003f1c 00020154 2**0 ALLOC 11 .ARM.attributes 00000028 00000000 00000000 0002000c 2**0 CONTENTS, READONLY - 12 .debug_info 0000be6e 00000000 00000000 00020034 2**0 + 12 .debug_info 0000c063 00000000 00000000 00020034 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 13 .debug_abbrev 000022ae 00000000 00000000 0002bea2 2**0 + 13 .debug_abbrev 00002283 00000000 00000000 0002c097 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 14 .debug_aranges 00000b88 00000000 00000000 0002e150 2**3 + 14 .debug_aranges 00000b88 00000000 00000000 0002e320 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 15 .debug_ranges 00000a50 00000000 00000000 0002ecd8 2**3 + 15 .debug_ranges 00000a50 00000000 00000000 0002eea8 2**3 CONTENTS, READONLY, DEBUGGING, OCTETS - 16 .debug_macro 00010442 00000000 00000000 0002f728 2**0 + 16 .debug_macro 00010460 00000000 00000000 0002f8f8 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 17 .debug_line 0000f273 00000000 00000000 0003fb6a 2**0 + 17 .debug_line 0000f263 00000000 00000000 0003fd58 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 18 .debug_str 0005f5c4 00000000 00000000 0004eddd 2**0 + 18 .debug_str 0005f616 00000000 00000000 0004efbb 2**0 CONTENTS, READONLY, DEBUGGING, OCTETS - 19 .comment 00000053 00000000 00000000 000ae3a1 2**0 + 19 .comment 00000053 00000000 00000000 000ae5d1 2**0 CONTENTS, READONLY - 20 .debug_frame 00002790 00000000 00000000 000ae3f4 2**2 + 20 .debug_frame 00002790 00000000 00000000 000ae624 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: 08003ea8 .word 0x08003ea8 + 80000e4: 08003e98 .word 0x08003e98 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: 08003ea8 .word 0x08003ea8 + 8000104: 08003e98 .word 0x08003e98 08000108 <__udivsi3>: 8000108: 2200 movs r2, #0 @@ -501,7 +501,7 @@ int main(void) /* USER CODE BEGIN 2 */ my_code(); - 800040c: f003 f804 bl 8003418 + 800040c: f002 ffec bl 80033e8 /* USER CODE END 2 */ /* Infinite loop */ @@ -526,14 +526,14 @@ void SystemClock_Config(void) 800041e: 2330 movs r3, #48 ; 0x30 8000420: 001a movs r2, r3 8000422: 2100 movs r1, #0 - 8000424: f003 fd38 bl 8003e98 + 8000424: f003 fd30 bl 8003e88 RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; 8000428: 003b movs r3, r7 800042a: 0018 movs r0, r3 800042c: 2310 movs r3, #16 800042e: 001a movs r2, r3 8000430: 2100 movs r1, #0 - 8000432: f003 fd31 bl 8003e98 + 8000432: f003 fd29 bl 8003e88 /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. @@ -645,7 +645,7 @@ static void MX_ADC_Init(void) 80004be: 230c movs r3, #12 80004c0: 001a movs r2, r3 80004c2: 2100 movs r1, #0 - 80004c4: f003 fce8 bl 8003e98 + 80004c4: f003 fce0 bl 8003e88 /* USER CODE BEGIN ADC_Init 1 */ /* USER CODE END ADC_Init 1 */ @@ -774,7 +774,7 @@ static void MX_ADC_Init(void) 8000576: 46bd mov sp, r7 8000578: b004 add sp, #16 800057a: bd80 pop {r7, pc} - 800057c: 20000094 .word 0x20000094 + 800057c: 200000a8 .word 0x200000a8 8000580: 40012400 .word 0x40012400 08000584 : @@ -834,7 +834,7 @@ static void MX_TIM14_Init(void) 80005be: 46bd mov sp, r7 80005c0: bd80 pop {r7, pc} 80005c2: 46c0 nop ; (mov r8, r8) - 80005c4: 2000004c .word 0x2000004c + 80005c4: 20000060 .word 0x20000060 80005c8: 40002000 .word 0x40002000 080005cc : @@ -854,7 +854,7 @@ static void MX_GPIO_Init(void) 80005d8: 2314 movs r3, #20 80005da: 001a movs r2, r3 80005dc: 2100 movs r1, #0 - 80005de: f003 fc5b bl 8003e98 + 80005de: f003 fc53 bl 8003e88 /* GPIO Ports Clock Enable */ __HAL_RCC_GPIOF_CLK_ENABLE(); @@ -1201,7 +1201,7 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc) 80007ce: 2314 movs r3, #20 80007d0: 001a movs r2, r3 80007d2: 2100 movs r1, #0 - 80007d4: f003 fb60 bl 8003e98 + 80007d4: f003 fb58 bl 8003e88 if(hadc->Instance==ADC1) 80007d8: 687b ldr r3, [r7, #4] 80007da: 681b ldr r3, [r3, #0] @@ -1480,7 +1480,7 @@ void TIM14_IRQHandler(void) 80008ea: 46bd mov sp, r7 80008ec: bd80 pop {r7, pc} 80008ee: 46c0 nop ; (mov r8, r8) - 80008f0: 2000004c .word 0x2000004c + 80008f0: 20000060 .word 0x20000060 080008f4 : * @brief Setup the microcontroller system @@ -1576,7 +1576,7 @@ LoopFillZerobss: 800092a: f7ff ffe3 bl 80008f4 /* Call static constructors */ bl __libc_init_array - 800092e: f003 fa8f bl 8003e50 <__libc_init_array> + 800092e: f003 fa87 bl 8003e40 <__libc_init_array> /* Call the application's entry point.*/ bl main 8000932: f7ff fd5f bl 80003f4
@@ -1593,11 +1593,11 @@ LoopForever: ldr r1, =_edata 8000940: 2000000c .word 0x2000000c ldr r2, =_sidata - 8000944: 08003f20 .word 0x08003f20 + 8000944: 08003f10 .word 0x08003f10 ldr r2, =_sbss 8000948: 2000000c .word 0x2000000c ldr r4, =_ebss - 800094c: 20000150 .word 0x20000150 + 800094c: 20000154 .word 0x20000154 08000950 : * @retval : None @@ -1745,7 +1745,7 @@ __weak void HAL_IncTick(void) 80009fc: bd80 pop {r7, pc} 80009fe: 46c0 nop ; (mov r8, r8) 8000a00: 20000008 .word 0x20000008 - 8000a04: 200000d4 .word 0x200000d4 + 8000a04: 200000f8 .word 0x200000f8 08000a08 : * @note This function is declared as __weak to be overwritten in case of other @@ -1764,7 +1764,7 @@ __weak uint32_t HAL_GetTick(void) 8000a12: 46bd mov sp, r7 8000a14: bd80 pop {r7, pc} 8000a16: 46c0 nop ; (mov r8, r8) - 8000a18: 200000d4 .word 0x200000d4 + 8000a18: 200000f8 .word 0x200000f8 08000a1c : * implementations in user file. @@ -4602,7 +4602,7 @@ void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin) 80018f4: 1dbb adds r3, r7, #6 80018f6: 881b ldrh r3, [r3, #0] 80018f8: 0018 movs r0, r3 - 80018fa: f002 fa83 bl 8003e04 + 80018fa: f002 fa7b bl 8003df4 } } 80018fe: 46c0 nop ; (mov r8, r8) @@ -6134,7 +6134,7 @@ HAL_StatusTypeDef HAL_RCC_ClockConfig(RCC_ClkInitTypeDef *RCC_ClkInitStruct, ui 8002104: 40021000 .word 0x40021000 8002108: 00001388 .word 0x00001388 800210c: fffff8ff .word 0xfffff8ff - 8002110: 08003ee0 .word 0x08003ee0 + 8002110: 08003ed0 .word 0x08003ed0 8002114: 20000000 .word 0x20000000 08002118 : @@ -6282,8 +6282,8 @@ uint32_t HAL_RCC_GetSysClockFreq(void) 80021ca: b00f add sp, #60 ; 0x3c 80021cc: bd90 pop {r4, r7, pc} 80021ce: 46c0 nop ; (mov r8, r8) - 80021d0: 08003ec0 .word 0x08003ec0 - 80021d4: 08003ed0 .word 0x08003ed0 + 80021d0: 08003eb0 .word 0x08003eb0 + 80021d4: 08003ec0 .word 0x08003ec0 80021d8: 40021000 .word 0x40021000 80021dc: 007a1200 .word 0x007a1200 @@ -6838,7 +6838,7 @@ void HAL_TIM_IRQHandler(TIM_HandleTypeDef *htim) HAL_TIM_PeriodElapsedCallback(htim); 800249e: 687b ldr r3, [r7, #4] 80024a0: 0018 movs r0, r3 - 80024a2: f001 fcbf bl 8003e24 + 80024a2: f001 fcb7 bl 8003e14 #endif /* USE_HAL_TIM_REGISTER_CALLBACKS */ } } @@ -8620,8 +8620,8 @@ uint8_t IIC_Read_Byte(unsigned char ack) 8002f14: 48000400 .word 0x48000400 08002f18 : -// //return READ_HC595_DCK; -//} +config_setting config; + //send data to 959 void Sand_Byte_to_595_2(uint8_t h) @@ -8747,8 +8747,8 @@ void Sand_Byte_to_595_2(uint8_t h) 8002ff0: b004 add sp, #16 8002ff2: bd80 pop {r7, pc} -08002ff4 : -void hc2_sever() +08002ff4 : +void HC595_control_server() { 8002ff4: b580 push {r7, lr} 8002ff6: b082 sub sp, #8 @@ -8758,10 +8758,10 @@ void hc2_sever() 8002ffc: 2200 movs r2, #0 8002ffe: 701a strb r2, [r3, #0] if(dis_buff.led_run==1) - 8003000: 4b1d ldr r3, [pc, #116] ; (8003078 ) + 8003000: 4b1d ldr r3, [pc, #116] ; (8003078 ) 8003002: 7b1b ldrb r3, [r3, #12] 8003004: 2b01 cmp r3, #1 - 8003006: d105 bne.n 8003014 + 8003006: d105 bne.n 8003014 { h|=0x01; 8003008: 1dfb adds r3, r7, #7 @@ -8772,10 +8772,10 @@ void hc2_sever() 8003012: 701a strb r2, [r3, #0] } if(dis_buff.moto1a==1) - 8003014: 4b18 ldr r3, [pc, #96] ; (8003078 ) + 8003014: 4b18 ldr r3, [pc, #96] ; (8003078 ) 8003016: 7b5b ldrb r3, [r3, #13] 8003018: 2b01 cmp r3, #1 - 800301a: d105 bne.n 8003028 + 800301a: d105 bne.n 8003028 { h|=0x02; 800301c: 1dfb adds r3, r7, #7 @@ -8786,10 +8786,10 @@ void hc2_sever() 8003026: 701a strb r2, [r3, #0] } if(dis_buff.moto1b==1) - 8003028: 4b13 ldr r3, [pc, #76] ; (8003078 ) + 8003028: 4b13 ldr r3, [pc, #76] ; (8003078 ) 800302a: 7b9b ldrb r3, [r3, #14] 800302c: 2b01 cmp r3, #1 - 800302e: d105 bne.n 800303c + 800302e: d105 bne.n 800303c { h|=0x04; 8003030: 1dfb adds r3, r7, #7 @@ -8800,10 +8800,10 @@ void hc2_sever() 800303a: 701a strb r2, [r3, #0] } if(dis_buff.moto2a==1) - 800303c: 4b0e ldr r3, [pc, #56] ; (8003078 ) + 800303c: 4b0e ldr r3, [pc, #56] ; (8003078 ) 800303e: 7bdb ldrb r3, [r3, #15] 8003040: 2b01 cmp r3, #1 - 8003042: d105 bne.n 8003050 + 8003042: d105 bne.n 8003050 { h|=0x08; 8003044: 1dfb adds r3, r7, #7 @@ -8814,10 +8814,10 @@ void hc2_sever() 800304e: 701a strb r2, [r3, #0] } if(dis_buff.moto2b==1) - 8003050: 4b09 ldr r3, [pc, #36] ; (8003078 ) + 8003050: 4b09 ldr r3, [pc, #36] ; (8003078 ) 8003052: 7c1b ldrb r3, [r3, #16] 8003054: 2b01 cmp r3, #1 - 8003056: d105 bne.n 8003064 + 8003056: d105 bne.n 8003064 { h|=0x10; 8003058: 1dfb adds r3, r7, #7 @@ -8840,2325 +8840,2305 @@ void hc2_sever() 8003076: 46c0 nop ; (mov r8, r8) 8003078: 20000038 .word 0x20000038 -0800307c : +0800307c : //motor cool start -void moto_server() +void Motoer_control_server() { 800307c: b580 push {r7, lr} 800307e: af00 add r7, sp, #0 if(HAL_GetTick()>moto.moto_run) 8003080: f7fd fcc2 bl 8000a08 8003084: 0002 movs r2, r0 - 8003086: 4b63 ldr r3, [pc, #396] ; (8003214 ) + 8003086: 4b57 ldr r3, [pc, #348] ; (80031e4 ) 8003088: 681b ldr r3, [r3, #0] 800308a: 429a cmp r2, r3 - 800308c: d800 bhi.n 8003090 - 800308e: e07e b.n 800318e + 800308c: d966 bls.n 800315c { - moto.moto_run=HAL_GetTick()+10; - 8003090: f7fd fcba bl 8000a08 - 8003094: 0003 movs r3, r0 - 8003096: 330a adds r3, #10 - 8003098: 001a movs r2, r3 - 800309a: 4b5e ldr r3, [pc, #376] ; (8003214 ) - 800309c: 601a str r2, [r3, #0] - if(moto.moto1a!=moto.moto1a_) - 800309e: 4b5d ldr r3, [pc, #372] ; (8003214 ) - 80030a0: 7a1a ldrb r2, [r3, #8] - 80030a2: 4b5c ldr r3, [pc, #368] ; (8003214 ) - 80030a4: 7b1b ldrb r3, [r3, #12] - 80030a6: 429a cmp r2, r3 - 80030a8: d017 beq.n 80030da + moto.moto_run=HAL_GetTick()+10; //set the index follow delay + 800308e: f7fd fcbb bl 8000a08 + 8003092: 0003 movs r3, r0 + 8003094: 330a adds r3, #10 + 8003096: 001a movs r2, r3 + 8003098: 4b52 ldr r3, [pc, #328] ; (80031e4 ) + 800309a: 601a str r2, [r3, #0] + + if(moto.moto1a>moto.moto1a_) + 800309c: 4b51 ldr r3, [pc, #324] ; (80031e4 ) + 800309e: 7a1a ldrb r2, [r3, #8] + 80030a0: 4b50 ldr r3, [pc, #320] ; (80031e4 ) + 80030a2: 7b1b ldrb r3, [r3, #12] + 80030a4: 429a cmp r2, r3 + 80030a6: d905 bls.n 80030b4 { - if(moto.moto1a>moto.moto1a_) - 80030aa: 4b5a ldr r3, [pc, #360] ; (8003214 ) - 80030ac: 7a1a ldrb r2, [r3, #8] - 80030ae: 4b59 ldr r3, [pc, #356] ; (8003214 ) - 80030b0: 7b1b ldrb r3, [r3, #12] - 80030b2: 429a cmp r2, r3 - 80030b4: d905 bls.n 80030c2 - { - moto.moto1a_++; - 80030b6: 4b57 ldr r3, [pc, #348] ; (8003214 ) - 80030b8: 7b1b ldrb r3, [r3, #12] - 80030ba: 3301 adds r3, #1 - 80030bc: b2da uxtb r2, r3 - 80030be: 4b55 ldr r3, [pc, #340] ; (8003214 ) - 80030c0: 731a strb r2, [r3, #12] - } - if(moto.moto1a) - 80030c4: 7a1a ldrb r2, [r3, #8] - 80030c6: 4b53 ldr r3, [pc, #332] ; (8003214 ) - 80030c8: 7b1b ldrb r3, [r3, #12] - 80030ca: 429a cmp r2, r3 - 80030cc: d205 bcs.n 80030da - { - moto.moto1a_--; - 80030ce: 4b51 ldr r3, [pc, #324] ; (8003214 ) - 80030d0: 7b1b ldrb r3, [r3, #12] - 80030d2: 3b01 subs r3, #1 - 80030d4: b2da uxtb r2, r3 - 80030d6: 4b4f ldr r3, [pc, #316] ; (8003214 ) - 80030d8: 731a strb r2, [r3, #12] - } + moto.moto1a_++; + 80030a8: 4b4e ldr r3, [pc, #312] ; (80031e4 ) + 80030aa: 7b1b ldrb r3, [r3, #12] + 80030ac: 3301 adds r3, #1 + 80030ae: b2da uxtb r2, r3 + 80030b0: 4b4c ldr r3, [pc, #304] ; (80031e4 ) + 80030b2: 731a strb r2, [r3, #12] } - if(moto.moto1b!=moto.moto1b_) - 80030da: 4b4e ldr r3, [pc, #312] ; (8003214 ) - 80030dc: 7a5a ldrb r2, [r3, #9] - 80030de: 4b4d ldr r3, [pc, #308] ; (8003214 ) - 80030e0: 7b5b ldrb r3, [r3, #13] - 80030e2: 429a cmp r2, r3 - 80030e4: d017 beq.n 8003116 + if(moto.moto1a) + 80030b6: 7a1a ldrb r2, [r3, #8] + 80030b8: 4b4a ldr r3, [pc, #296] ; (80031e4 ) + 80030ba: 7b1b ldrb r3, [r3, #12] + 80030bc: 429a cmp r2, r3 + 80030be: d205 bcs.n 80030cc { - if(moto.moto1b>moto.moto1b_) - 80030e6: 4b4b ldr r3, [pc, #300] ; (8003214 ) - 80030e8: 7a5a ldrb r2, [r3, #9] - 80030ea: 4b4a ldr r3, [pc, #296] ; (8003214 ) - 80030ec: 7b5b ldrb r3, [r3, #13] - 80030ee: 429a cmp r2, r3 - 80030f0: d905 bls.n 80030fe - { - moto.moto1b_++; - 80030f2: 4b48 ldr r3, [pc, #288] ; (8003214 ) - 80030f4: 7b5b ldrb r3, [r3, #13] - 80030f6: 3301 adds r3, #1 - 80030f8: b2da uxtb r2, r3 - 80030fa: 4b46 ldr r3, [pc, #280] ; (8003214 ) - 80030fc: 735a strb r2, [r3, #13] - } - if(moto.moto1b) - 8003100: 7a5a ldrb r2, [r3, #9] - 8003102: 4b44 ldr r3, [pc, #272] ; (8003214 ) - 8003104: 7b5b ldrb r3, [r3, #13] - 8003106: 429a cmp r2, r3 - 8003108: d205 bcs.n 8003116 - { - moto.moto1b_--; - 800310a: 4b42 ldr r3, [pc, #264] ; (8003214 ) - 800310c: 7b5b ldrb r3, [r3, #13] - 800310e: 3b01 subs r3, #1 - 8003110: b2da uxtb r2, r3 - 8003112: 4b40 ldr r3, [pc, #256] ; (8003214 ) - 8003114: 735a strb r2, [r3, #13] - } + moto.moto1a_--; + 80030c0: 4b48 ldr r3, [pc, #288] ; (80031e4 ) + 80030c2: 7b1b ldrb r3, [r3, #12] + 80030c4: 3b01 subs r3, #1 + 80030c6: b2da uxtb r2, r3 + 80030c8: 4b46 ldr r3, [pc, #280] ; (80031e4 ) + 80030ca: 731a strb r2, [r3, #12] } - if(moto.moto2a!=moto.moto2a_) - 8003116: 4b3f ldr r3, [pc, #252] ; (8003214 ) - 8003118: 7a9a ldrb r2, [r3, #10] - 800311a: 4b3e ldr r3, [pc, #248] ; (8003214 ) - 800311c: 7b9b ldrb r3, [r3, #14] - 800311e: 429a cmp r2, r3 - 8003120: d017 beq.n 8003152 + + if(moto.moto1b>moto.moto1b_) + 80030cc: 4b45 ldr r3, [pc, #276] ; (80031e4 ) + 80030ce: 7a5a ldrb r2, [r3, #9] + 80030d0: 4b44 ldr r3, [pc, #272] ; (80031e4 ) + 80030d2: 7b5b ldrb r3, [r3, #13] + 80030d4: 429a cmp r2, r3 + 80030d6: d905 bls.n 80030e4 { - if(moto.moto2a>moto.moto2a_) - 8003122: 4b3c ldr r3, [pc, #240] ; (8003214 ) - 8003124: 7a9a ldrb r2, [r3, #10] - 8003126: 4b3b ldr r3, [pc, #236] ; (8003214 ) - 8003128: 7b9b ldrb r3, [r3, #14] - 800312a: 429a cmp r2, r3 - 800312c: d905 bls.n 800313a - { - moto.moto2a_++; - 800312e: 4b39 ldr r3, [pc, #228] ; (8003214 ) - 8003130: 7b9b ldrb r3, [r3, #14] - 8003132: 3301 adds r3, #1 - 8003134: b2da uxtb r2, r3 - 8003136: 4b37 ldr r3, [pc, #220] ; (8003214 ) - 8003138: 739a strb r2, [r3, #14] - } - if(moto.moto2a) - 800313c: 7a9a ldrb r2, [r3, #10] - 800313e: 4b35 ldr r3, [pc, #212] ; (8003214 ) - 8003140: 7b9b ldrb r3, [r3, #14] - 8003142: 429a cmp r2, r3 - 8003144: d205 bcs.n 8003152 - { - moto.moto2a_--; - 8003146: 4b33 ldr r3, [pc, #204] ; (8003214 ) - 8003148: 7b9b ldrb r3, [r3, #14] - 800314a: 3b01 subs r3, #1 - 800314c: b2da uxtb r2, r3 - 800314e: 4b31 ldr r3, [pc, #196] ; (8003214 ) - 8003150: 739a strb r2, [r3, #14] - } + moto.moto1b_++; + 80030d8: 4b42 ldr r3, [pc, #264] ; (80031e4 ) + 80030da: 7b5b ldrb r3, [r3, #13] + 80030dc: 3301 adds r3, #1 + 80030de: b2da uxtb r2, r3 + 80030e0: 4b40 ldr r3, [pc, #256] ; (80031e4 ) + 80030e2: 735a strb r2, [r3, #13] } - if(moto.moto2b!=moto.moto2b_) - 8003152: 4b30 ldr r3, [pc, #192] ; (8003214 ) - 8003154: 7ada ldrb r2, [r3, #11] - 8003156: 4b2f ldr r3, [pc, #188] ; (8003214 ) - 8003158: 7bdb ldrb r3, [r3, #15] - 800315a: 429a cmp r2, r3 - 800315c: d017 beq.n 800318e + if(moto.moto1b) + 80030e6: 7a5a ldrb r2, [r3, #9] + 80030e8: 4b3e ldr r3, [pc, #248] ; (80031e4 ) + 80030ea: 7b5b ldrb r3, [r3, #13] + 80030ec: 429a cmp r2, r3 + 80030ee: d205 bcs.n 80030fc { - if(moto.moto2b>moto.moto2b_) - 800315e: 4b2d ldr r3, [pc, #180] ; (8003214 ) - 8003160: 7ada ldrb r2, [r3, #11] - 8003162: 4b2c ldr r3, [pc, #176] ; (8003214 ) - 8003164: 7bdb ldrb r3, [r3, #15] - 8003166: 429a cmp r2, r3 - 8003168: d905 bls.n 8003176 - { - moto.moto2b_++; - 800316a: 4b2a ldr r3, [pc, #168] ; (8003214 ) - 800316c: 7bdb ldrb r3, [r3, #15] - 800316e: 3301 adds r3, #1 - 8003170: b2da uxtb r2, r3 - 8003172: 4b28 ldr r3, [pc, #160] ; (8003214 ) - 8003174: 73da strb r2, [r3, #15] - } - if(moto.moto2b) - 8003178: 7ada ldrb r2, [r3, #11] - 800317a: 4b26 ldr r3, [pc, #152] ; (8003214 ) - 800317c: 7bdb ldrb r3, [r3, #15] - 800317e: 429a cmp r2, r3 - 8003180: d205 bcs.n 800318e - { - moto.moto2b_--; - 8003182: 4b24 ldr r3, [pc, #144] ; (8003214 ) - 8003184: 7bdb ldrb r3, [r3, #15] - 8003186: 3b01 subs r3, #1 - 8003188: b2da uxtb r2, r3 - 800318a: 4b22 ldr r3, [pc, #136] ; (8003214 ) - 800318c: 73da strb r2, [r3, #15] - + moto.moto1b_--; + 80030f0: 4b3c ldr r3, [pc, #240] ; (80031e4 ) + 80030f2: 7b5b ldrb r3, [r3, #13] + 80030f4: 3b01 subs r3, #1 + 80030f6: b2da uxtb r2, r3 + 80030f8: 4b3a ldr r3, [pc, #232] ; (80031e4 ) + 80030fa: 735a strb r2, [r3, #13] + } + if(moto.moto2a>moto.moto2a_) + 80030fc: 4b39 ldr r3, [pc, #228] ; (80031e4 ) + 80030fe: 7a9a ldrb r2, [r3, #10] + 8003100: 4b38 ldr r3, [pc, #224] ; (80031e4 ) + 8003102: 7b9b ldrb r3, [r3, #14] + 8003104: 429a cmp r2, r3 + 8003106: d905 bls.n 8003114 + { + moto.moto2a_++; + 8003108: 4b36 ldr r3, [pc, #216] ; (80031e4 ) + 800310a: 7b9b ldrb r3, [r3, #14] + 800310c: 3301 adds r3, #1 + 800310e: b2da uxtb r2, r3 + 8003110: 4b34 ldr r3, [pc, #208] ; (80031e4 ) + 8003112: 739a strb r2, [r3, #14] + } + if(moto.moto2a) + 8003116: 7a9a ldrb r2, [r3, #10] + 8003118: 4b32 ldr r3, [pc, #200] ; (80031e4 ) + 800311a: 7b9b ldrb r3, [r3, #14] + 800311c: 429a cmp r2, r3 + 800311e: d205 bcs.n 800312c + { + moto.moto2a_--; + 8003120: 4b30 ldr r3, [pc, #192] ; (80031e4 ) + 8003122: 7b9b ldrb r3, [r3, #14] + 8003124: 3b01 subs r3, #1 + 8003126: b2da uxtb r2, r3 + 8003128: 4b2e ldr r3, [pc, #184] ; (80031e4 ) + 800312a: 739a strb r2, [r3, #14] + } + if(moto.moto2b>moto.moto2b_) + 800312c: 4b2d ldr r3, [pc, #180] ; (80031e4 ) + 800312e: 7ada ldrb r2, [r3, #11] + 8003130: 4b2c ldr r3, [pc, #176] ; (80031e4 ) + 8003132: 7bdb ldrb r3, [r3, #15] + 8003134: 429a cmp r2, r3 + 8003136: d905 bls.n 8003144 + { + moto.moto2b_++; + 8003138: 4b2a ldr r3, [pc, #168] ; (80031e4 ) + 800313a: 7bdb ldrb r3, [r3, #15] + 800313c: 3301 adds r3, #1 + 800313e: b2da uxtb r2, r3 + 8003140: 4b28 ldr r3, [pc, #160] ; (80031e4 ) + 8003142: 73da strb r2, [r3, #15] + } + if(moto.moto2b) + 8003146: 7ada ldrb r2, [r3, #11] + 8003148: 4b26 ldr r3, [pc, #152] ; (80031e4 ) + 800314a: 7bdb ldrb r3, [r3, #15] + 800314c: 429a cmp r2, r3 + 800314e: d205 bcs.n 800315c + { + moto.moto2b_--; + 8003150: 4b24 ldr r3, [pc, #144] ; (80031e4 ) + 8003152: 7bdb ldrb r3, [r3, #15] + 8003154: 3b01 subs r3, #1 + 8003156: b2da uxtb r2, r3 + 8003158: 4b22 ldr r3, [pc, #136] ; (80031e4 ) + 800315a: 73da strb r2, [r3, #15] + } + } moto.pwm_run++; - 800318e: 4b21 ldr r3, [pc, #132] ; (8003214 ) - 8003190: 685b ldr r3, [r3, #4] - 8003192: 1c5a adds r2, r3, #1 - 8003194: 4b1f ldr r3, [pc, #124] ; (8003214 ) - 8003196: 605a str r2, [r3, #4] + 800315c: 4b21 ldr r3, [pc, #132] ; (80031e4 ) + 800315e: 685b ldr r3, [r3, #4] + 8003160: 1c5a adds r2, r3, #1 + 8003162: 4b20 ldr r3, [pc, #128] ; (80031e4 ) + 8003164: 605a str r2, [r3, #4] if(moto.pwm_run==10) - 8003198: 4b1e ldr r3, [pc, #120] ; (8003214 ) - 800319a: 685b ldr r3, [r3, #4] - 800319c: 2b0a cmp r3, #10 - 800319e: d102 bne.n 80031a6 + 8003166: 4b1f ldr r3, [pc, #124] ; (80031e4 ) + 8003168: 685b ldr r3, [r3, #4] + 800316a: 2b0a cmp r3, #10 + 800316c: d102 bne.n 8003174 { moto.pwm_run=0; - 80031a0: 4b1c ldr r3, [pc, #112] ; (8003214 ) - 80031a2: 2200 movs r2, #0 - 80031a4: 605a str r2, [r3, #4] + 800316e: 4b1d ldr r3, [pc, #116] ; (80031e4 ) + 8003170: 2200 movs r2, #0 + 8003172: 605a str r2, [r3, #4] } if(moto.pwm_run) - 80031a8: 685b ldr r3, [r3, #4] - 80031aa: 4a1a ldr r2, [pc, #104] ; (8003214 ) - 80031ac: 7b12 ldrb r2, [r2, #12] - 80031ae: 4293 cmp r3, r2 - 80031b0: da03 bge.n 80031ba + 8003174: 4b1b ldr r3, [pc, #108] ; (80031e4 ) + 8003176: 685b ldr r3, [r3, #4] + 8003178: 4a1a ldr r2, [pc, #104] ; (80031e4 ) + 800317a: 7b12 ldrb r2, [r2, #12] + 800317c: 4293 cmp r3, r2 + 800317e: da03 bge.n 8003188 { dis_buff.moto1a=1; - 80031b2: 4b19 ldr r3, [pc, #100] ; (8003218 ) - 80031b4: 2201 movs r2, #1 - 80031b6: 735a strb r2, [r3, #13] - 80031b8: e002 b.n 80031c0 + 8003180: 4b19 ldr r3, [pc, #100] ; (80031e8 ) + 8003182: 2201 movs r2, #1 + 8003184: 735a strb r2, [r3, #13] + 8003186: e002 b.n 800318e }else { dis_buff.moto1a=0; - 80031ba: 4b17 ldr r3, [pc, #92] ; (8003218 ) - 80031bc: 2200 movs r2, #0 - 80031be: 735a strb r2, [r3, #13] + 8003188: 4b17 ldr r3, [pc, #92] ; (80031e8 ) + 800318a: 2200 movs r2, #0 + 800318c: 735a strb r2, [r3, #13] } if(moto.pwm_run) - 80031c2: 685b ldr r3, [r3, #4] - 80031c4: 4a13 ldr r2, [pc, #76] ; (8003214 ) - 80031c6: 7b52 ldrb r2, [r2, #13] - 80031c8: 4293 cmp r3, r2 - 80031ca: da03 bge.n 80031d4 + 800318e: 4b15 ldr r3, [pc, #84] ; (80031e4 ) + 8003190: 685b ldr r3, [r3, #4] + 8003192: 4a14 ldr r2, [pc, #80] ; (80031e4 ) + 8003194: 7b52 ldrb r2, [r2, #13] + 8003196: 4293 cmp r3, r2 + 8003198: da03 bge.n 80031a2 { dis_buff.moto1b=1; - 80031cc: 4b12 ldr r3, [pc, #72] ; (8003218 ) - 80031ce: 2201 movs r2, #1 - 80031d0: 739a strb r2, [r3, #14] - 80031d2: e002 b.n 80031da + 800319a: 4b13 ldr r3, [pc, #76] ; (80031e8 ) + 800319c: 2201 movs r2, #1 + 800319e: 739a strb r2, [r3, #14] + 80031a0: e002 b.n 80031a8 }else { dis_buff.moto1b=0; - 80031d4: 4b10 ldr r3, [pc, #64] ; (8003218 ) - 80031d6: 2200 movs r2, #0 - 80031d8: 739a strb r2, [r3, #14] + 80031a2: 4b11 ldr r3, [pc, #68] ; (80031e8 ) + 80031a4: 2200 movs r2, #0 + 80031a6: 739a strb r2, [r3, #14] } if(moto.pwm_run) - 80031dc: 685b ldr r3, [r3, #4] - 80031de: 4a0d ldr r2, [pc, #52] ; (8003214 ) - 80031e0: 7b92 ldrb r2, [r2, #14] - 80031e2: 4293 cmp r3, r2 - 80031e4: da03 bge.n 80031ee + 80031a8: 4b0e ldr r3, [pc, #56] ; (80031e4 ) + 80031aa: 685b ldr r3, [r3, #4] + 80031ac: 4a0d ldr r2, [pc, #52] ; (80031e4 ) + 80031ae: 7b92 ldrb r2, [r2, #14] + 80031b0: 4293 cmp r3, r2 + 80031b2: da03 bge.n 80031bc { dis_buff.moto2a=1; - 80031e6: 4b0c ldr r3, [pc, #48] ; (8003218 ) - 80031e8: 2201 movs r2, #1 - 80031ea: 73da strb r2, [r3, #15] - 80031ec: e002 b.n 80031f4 + 80031b4: 4b0c ldr r3, [pc, #48] ; (80031e8 ) + 80031b6: 2201 movs r2, #1 + 80031b8: 73da strb r2, [r3, #15] + 80031ba: e002 b.n 80031c2 }else { dis_buff.moto2a=0; - 80031ee: 4b0a ldr r3, [pc, #40] ; (8003218 ) - 80031f0: 2200 movs r2, #0 - 80031f2: 73da strb r2, [r3, #15] + 80031bc: 4b0a ldr r3, [pc, #40] ; (80031e8 ) + 80031be: 2200 movs r2, #0 + 80031c0: 73da strb r2, [r3, #15] } if(moto.pwm_run) - 80031f6: 685b ldr r3, [r3, #4] - 80031f8: 4a06 ldr r2, [pc, #24] ; (8003214 ) - 80031fa: 7bd2 ldrb r2, [r2, #15] - 80031fc: 4293 cmp r3, r2 - 80031fe: da03 bge.n 8003208 + 80031c2: 4b08 ldr r3, [pc, #32] ; (80031e4 ) + 80031c4: 685b ldr r3, [r3, #4] + 80031c6: 4a07 ldr r2, [pc, #28] ; (80031e4 ) + 80031c8: 7bd2 ldrb r2, [r2, #15] + 80031ca: 4293 cmp r3, r2 + 80031cc: da03 bge.n 80031d6 { dis_buff.moto2b=1; - 8003200: 4b05 ldr r3, [pc, #20] ; (8003218 ) - 8003202: 2201 movs r2, #1 - 8003204: 741a strb r2, [r3, #16] + 80031ce: 4b06 ldr r3, [pc, #24] ; (80031e8 ) + 80031d0: 2201 movs r2, #1 + 80031d2: 741a strb r2, [r3, #16] }else { dis_buff.moto2b=0; } } - 8003206: e002 b.n 800320e + 80031d4: e002 b.n 80031dc dis_buff.moto2b=0; - 8003208: 4b03 ldr r3, [pc, #12] ; (8003218 ) - 800320a: 2200 movs r2, #0 - 800320c: 741a strb r2, [r3, #16] + 80031d6: 4b04 ldr r3, [pc, #16] ; (80031e8 ) + 80031d8: 2200 movs r2, #0 + 80031da: 741a strb r2, [r3, #16] } - 800320e: 46c0 nop ; (mov r8, r8) - 8003210: 46bd mov sp, r7 - 8003212: bd80 pop {r7, pc} - 8003214: 20000134 .word 0x20000134 - 8003218: 20000038 .word 0x20000038 + 80031dc: 46c0 nop ; (mov r8, r8) + 80031de: 46bd mov sp, r7 + 80031e0: bd80 pop {r7, pc} + 80031e2: 46c0 nop ; (mov r8, r8) + 80031e4: 200000e8 .word 0x200000e8 + 80031e8: 20000038 .word 0x20000038 -0800321c : +080031ec : #define E 0x08 #define F 0x04 #define G 0x02 #define H 0x01 void HT1621_Display_GetButton(void) { - 800321c: b580 push {r7, lr} - 800321e: b084 sub sp, #16 - 8003220: af00 add r7, sp, #0 + 80031ec: b580 push {r7, lr} + 80031ee: b084 sub sp, #16 + 80031f0: af00 add r7, sp, #0 unsigned char send_buff[8]; unsigned char lcd_buff[4]; //WritenDataHT1621(0,send_buff,8); lcd_buff[0]=LED_Tab[dis_buff.d_num[0]]; - 8003222: 4b45 ldr r3, [pc, #276] ; (8003338 ) - 8003224: 781b ldrb r3, [r3, #0] - 8003226: 001a movs r2, r3 - 8003228: 4b44 ldr r3, [pc, #272] ; (800333c ) - 800322a: 5c9a ldrb r2, [r3, r2] - 800322c: 1d3b adds r3, r7, #4 - 800322e: 701a strb r2, [r3, #0] + 80031f2: 4b45 ldr r3, [pc, #276] ; (8003308 ) + 80031f4: 781b ldrb r3, [r3, #0] + 80031f6: 001a movs r2, r3 + 80031f8: 4b44 ldr r3, [pc, #272] ; (800330c ) + 80031fa: 5c9a ldrb r2, [r3, r2] + 80031fc: 1d3b adds r3, r7, #4 + 80031fe: 701a strb r2, [r3, #0] if(dis_buff.dot1==1) - 8003230: 4b41 ldr r3, [pc, #260] ; (8003338 ) - 8003232: 7a1b ldrb r3, [r3, #8] - 8003234: 2b01 cmp r3, #1 - 8003236: d107 bne.n 8003248 + 8003200: 4b41 ldr r3, [pc, #260] ; (8003308 ) + 8003202: 7a1b ldrb r3, [r3, #8] + 8003204: 2b01 cmp r3, #1 + 8003206: d107 bne.n 8003218 { lcd_buff[0]|=0x80; - 8003238: 1d3b adds r3, r7, #4 - 800323a: 781b ldrb r3, [r3, #0] - 800323c: 2280 movs r2, #128 ; 0x80 - 800323e: 4252 negs r2, r2 - 8003240: 4313 orrs r3, r2 - 8003242: b2da uxtb r2, r3 - 8003244: 1d3b adds r3, r7, #4 - 8003246: 701a strb r2, [r3, #0] + 8003208: 1d3b adds r3, r7, #4 + 800320a: 781b ldrb r3, [r3, #0] + 800320c: 2280 movs r2, #128 ; 0x80 + 800320e: 4252 negs r2, r2 + 8003210: 4313 orrs r3, r2 + 8003212: b2da uxtb r2, r3 + 8003214: 1d3b adds r3, r7, #4 + 8003216: 701a strb r2, [r3, #0] } lcd_buff[1]=LED_Tab[dis_buff.d_num[1]]; - 8003248: 4b3b ldr r3, [pc, #236] ; (8003338 ) - 800324a: 785b ldrb r3, [r3, #1] - 800324c: 001a movs r2, r3 - 800324e: 4b3b ldr r3, [pc, #236] ; (800333c ) - 8003250: 5c9a ldrb r2, [r3, r2] - 8003252: 1d3b adds r3, r7, #4 - 8003254: 705a strb r2, [r3, #1] + 8003218: 4b3b ldr r3, [pc, #236] ; (8003308 ) + 800321a: 785b ldrb r3, [r3, #1] + 800321c: 001a movs r2, r3 + 800321e: 4b3b ldr r3, [pc, #236] ; (800330c ) + 8003220: 5c9a ldrb r2, [r3, r2] + 8003222: 1d3b adds r3, r7, #4 + 8003224: 705a strb r2, [r3, #1] if(dis_buff.dot2==1) - 8003256: 4b38 ldr r3, [pc, #224] ; (8003338 ) - 8003258: 7a5b ldrb r3, [r3, #9] - 800325a: 2b01 cmp r3, #1 - 800325c: d107 bne.n 800326e + 8003226: 4b38 ldr r3, [pc, #224] ; (8003308 ) + 8003228: 7a5b ldrb r3, [r3, #9] + 800322a: 2b01 cmp r3, #1 + 800322c: d107 bne.n 800323e { lcd_buff[1]|=0x80; - 800325e: 1d3b adds r3, r7, #4 - 8003260: 785b ldrb r3, [r3, #1] - 8003262: 2280 movs r2, #128 ; 0x80 - 8003264: 4252 negs r2, r2 - 8003266: 4313 orrs r3, r2 - 8003268: b2da uxtb r2, r3 - 800326a: 1d3b adds r3, r7, #4 - 800326c: 705a strb r2, [r3, #1] + 800322e: 1d3b adds r3, r7, #4 + 8003230: 785b ldrb r3, [r3, #1] + 8003232: 2280 movs r2, #128 ; 0x80 + 8003234: 4252 negs r2, r2 + 8003236: 4313 orrs r3, r2 + 8003238: b2da uxtb r2, r3 + 800323a: 1d3b adds r3, r7, #4 + 800323c: 705a strb r2, [r3, #1] } lcd_buff[2]=LED_Tab[dis_buff.d_num[2]]; - 800326e: 4b32 ldr r3, [pc, #200] ; (8003338 ) - 8003270: 789b ldrb r3, [r3, #2] - 8003272: 001a movs r2, r3 - 8003274: 4b31 ldr r3, [pc, #196] ; (800333c ) - 8003276: 5c9a ldrb r2, [r3, r2] - 8003278: 1d3b adds r3, r7, #4 - 800327a: 709a strb r2, [r3, #2] + 800323e: 4b32 ldr r3, [pc, #200] ; (8003308 ) + 8003240: 789b ldrb r3, [r3, #2] + 8003242: 001a movs r2, r3 + 8003244: 4b31 ldr r3, [pc, #196] ; (800330c ) + 8003246: 5c9a ldrb r2, [r3, r2] + 8003248: 1d3b adds r3, r7, #4 + 800324a: 709a strb r2, [r3, #2] if(dis_buff.dot3==1) - 800327c: 4b2e ldr r3, [pc, #184] ; (8003338 ) - 800327e: 7a9b ldrb r3, [r3, #10] - 8003280: 2b01 cmp r3, #1 - 8003282: d107 bne.n 8003294 + 800324c: 4b2e ldr r3, [pc, #184] ; (8003308 ) + 800324e: 7a9b ldrb r3, [r3, #10] + 8003250: 2b01 cmp r3, #1 + 8003252: d107 bne.n 8003264 { lcd_buff[2]|=0x80; - 8003284: 1d3b adds r3, r7, #4 - 8003286: 789b ldrb r3, [r3, #2] - 8003288: 2280 movs r2, #128 ; 0x80 - 800328a: 4252 negs r2, r2 - 800328c: 4313 orrs r3, r2 - 800328e: b2da uxtb r2, r3 - 8003290: 1d3b adds r3, r7, #4 - 8003292: 709a strb r2, [r3, #2] + 8003254: 1d3b adds r3, r7, #4 + 8003256: 789b ldrb r3, [r3, #2] + 8003258: 2280 movs r2, #128 ; 0x80 + 800325a: 4252 negs r2, r2 + 800325c: 4313 orrs r3, r2 + 800325e: b2da uxtb r2, r3 + 8003260: 1d3b adds r3, r7, #4 + 8003262: 709a strb r2, [r3, #2] } lcd_buff[3]=LED_Tab[dis_buff.d_num[3]]; - 8003294: 4b28 ldr r3, [pc, #160] ; (8003338 ) - 8003296: 78db ldrb r3, [r3, #3] - 8003298: 001a movs r2, r3 - 800329a: 4b28 ldr r3, [pc, #160] ; (800333c ) - 800329c: 5c9a ldrb r2, [r3, r2] - 800329e: 1d3b adds r3, r7, #4 - 80032a0: 70da strb r2, [r3, #3] + 8003264: 4b28 ldr r3, [pc, #160] ; (8003308 ) + 8003266: 78db ldrb r3, [r3, #3] + 8003268: 001a movs r2, r3 + 800326a: 4b28 ldr r3, [pc, #160] ; (800330c ) + 800326c: 5c9a ldrb r2, [r3, r2] + 800326e: 1d3b adds r3, r7, #4 + 8003270: 70da strb r2, [r3, #3] if(dis_buff.dot4==1) - 80032a2: 4b25 ldr r3, [pc, #148] ; (8003338 ) - 80032a4: 7adb ldrb r3, [r3, #11] - 80032a6: 2b01 cmp r3, #1 - 80032a8: d107 bne.n 80032ba + 8003272: 4b25 ldr r3, [pc, #148] ; (8003308 ) + 8003274: 7adb ldrb r3, [r3, #11] + 8003276: 2b01 cmp r3, #1 + 8003278: d107 bne.n 800328a { lcd_buff[3]|=0x80; - 80032aa: 1d3b adds r3, r7, #4 - 80032ac: 78db ldrb r3, [r3, #3] - 80032ae: 2280 movs r2, #128 ; 0x80 - 80032b0: 4252 negs r2, r2 - 80032b2: 4313 orrs r3, r2 - 80032b4: b2da uxtb r2, r3 - 80032b6: 1d3b adds r3, r7, #4 - 80032b8: 70da strb r2, [r3, #3] + 800327a: 1d3b adds r3, r7, #4 + 800327c: 78db ldrb r3, [r3, #3] + 800327e: 2280 movs r2, #128 ; 0x80 + 8003280: 4252 negs r2, r2 + 8003282: 4313 orrs r3, r2 + 8003284: b2da uxtb r2, r3 + 8003286: 1d3b adds r3, r7, #4 + 8003288: 70da strb r2, [r3, #3] } send_buff[0]=lcd_buff[0]>>4; - 80032ba: 1d3b adds r3, r7, #4 - 80032bc: 781b ldrb r3, [r3, #0] - 80032be: 091b lsrs r3, r3, #4 - 80032c0: b2da uxtb r2, r3 - 80032c2: 2108 movs r1, #8 - 80032c4: 187b adds r3, r7, r1 - 80032c6: 701a strb r2, [r3, #0] + 800328a: 1d3b adds r3, r7, #4 + 800328c: 781b ldrb r3, [r3, #0] + 800328e: 091b lsrs r3, r3, #4 + 8003290: b2da uxtb r2, r3 + 8003292: 2108 movs r1, #8 + 8003294: 187b adds r3, r7, r1 + 8003296: 701a strb r2, [r3, #0] send_buff[1]=lcd_buff[0]&0x0f; - 80032c8: 1d3b adds r3, r7, #4 - 80032ca: 781b ldrb r3, [r3, #0] - 80032cc: 220f movs r2, #15 - 80032ce: 4013 ands r3, r2 - 80032d0: b2da uxtb r2, r3 - 80032d2: 187b adds r3, r7, r1 - 80032d4: 705a strb r2, [r3, #1] + 8003298: 1d3b adds r3, r7, #4 + 800329a: 781b ldrb r3, [r3, #0] + 800329c: 220f movs r2, #15 + 800329e: 4013 ands r3, r2 + 80032a0: b2da uxtb r2, r3 + 80032a2: 187b adds r3, r7, r1 + 80032a4: 705a strb r2, [r3, #1] send_buff[2]=lcd_buff[1]>>4; - 80032d6: 1d3b adds r3, r7, #4 - 80032d8: 785b ldrb r3, [r3, #1] - 80032da: 091b lsrs r3, r3, #4 - 80032dc: b2da uxtb r2, r3 - 80032de: 187b adds r3, r7, r1 - 80032e0: 709a strb r2, [r3, #2] + 80032a6: 1d3b adds r3, r7, #4 + 80032a8: 785b ldrb r3, [r3, #1] + 80032aa: 091b lsrs r3, r3, #4 + 80032ac: b2da uxtb r2, r3 + 80032ae: 187b adds r3, r7, r1 + 80032b0: 709a strb r2, [r3, #2] send_buff[3]=lcd_buff[1]&0x0f; - 80032e2: 1d3b adds r3, r7, #4 - 80032e4: 785b ldrb r3, [r3, #1] - 80032e6: 220f movs r2, #15 - 80032e8: 4013 ands r3, r2 - 80032ea: b2da uxtb r2, r3 - 80032ec: 187b adds r3, r7, r1 - 80032ee: 70da strb r2, [r3, #3] + 80032b2: 1d3b adds r3, r7, #4 + 80032b4: 785b ldrb r3, [r3, #1] + 80032b6: 220f movs r2, #15 + 80032b8: 4013 ands r3, r2 + 80032ba: b2da uxtb r2, r3 + 80032bc: 187b adds r3, r7, r1 + 80032be: 70da strb r2, [r3, #3] send_buff[4]=lcd_buff[2]>>4; - 80032f0: 1d3b adds r3, r7, #4 - 80032f2: 789b ldrb r3, [r3, #2] - 80032f4: 091b lsrs r3, r3, #4 - 80032f6: b2da uxtb r2, r3 - 80032f8: 187b adds r3, r7, r1 - 80032fa: 711a strb r2, [r3, #4] + 80032c0: 1d3b adds r3, r7, #4 + 80032c2: 789b ldrb r3, [r3, #2] + 80032c4: 091b lsrs r3, r3, #4 + 80032c6: b2da uxtb r2, r3 + 80032c8: 187b adds r3, r7, r1 + 80032ca: 711a strb r2, [r3, #4] send_buff[5]=lcd_buff[2]&0x0f; - 80032fc: 1d3b adds r3, r7, #4 - 80032fe: 789b ldrb r3, [r3, #2] - 8003300: 220f movs r2, #15 - 8003302: 4013 ands r3, r2 - 8003304: b2da uxtb r2, r3 - 8003306: 187b adds r3, r7, r1 - 8003308: 715a strb r2, [r3, #5] + 80032cc: 1d3b adds r3, r7, #4 + 80032ce: 789b ldrb r3, [r3, #2] + 80032d0: 220f movs r2, #15 + 80032d2: 4013 ands r3, r2 + 80032d4: b2da uxtb r2, r3 + 80032d6: 187b adds r3, r7, r1 + 80032d8: 715a strb r2, [r3, #5] send_buff[6]=lcd_buff[3]>>4; - 800330a: 1d3b adds r3, r7, #4 - 800330c: 78db ldrb r3, [r3, #3] - 800330e: 091b lsrs r3, r3, #4 - 8003310: b2da uxtb r2, r3 - 8003312: 187b adds r3, r7, r1 - 8003314: 719a strb r2, [r3, #6] + 80032da: 1d3b adds r3, r7, #4 + 80032dc: 78db ldrb r3, [r3, #3] + 80032de: 091b lsrs r3, r3, #4 + 80032e0: b2da uxtb r2, r3 + 80032e2: 187b adds r3, r7, r1 + 80032e4: 719a strb r2, [r3, #6] send_buff[7]=lcd_buff[3]&0x0f; - 8003316: 1d3b adds r3, r7, #4 - 8003318: 78db ldrb r3, [r3, #3] - 800331a: 220f movs r2, #15 - 800331c: 4013 ands r3, r2 - 800331e: b2da uxtb r2, r3 - 8003320: 187b adds r3, r7, r1 - 8003322: 71da strb r2, [r3, #7] + 80032e6: 1d3b adds r3, r7, #4 + 80032e8: 78db ldrb r3, [r3, #3] + 80032ea: 220f movs r2, #15 + 80032ec: 4013 ands r3, r2 + 80032ee: b2da uxtb r2, r3 + 80032f0: 187b adds r3, r7, r1 + 80032f2: 71da strb r2, [r3, #7] WritenDataHT1621(0,send_buff,8); - 8003324: 187b adds r3, r7, r1 - 8003326: 2208 movs r2, #8 - 8003328: 0019 movs r1, r3 - 800332a: 2000 movs r0, #0 - 800332c: f7ff fb74 bl 8002a18 + 80032f4: 187b adds r3, r7, r1 + 80032f6: 2208 movs r2, #8 + 80032f8: 0019 movs r1, r3 + 80032fa: 2000 movs r0, #0 + 80032fc: f7ff fb8c bl 8002a18 } - 8003330: 46c0 nop ; (mov r8, r8) - 8003332: 46bd mov sp, r7 - 8003334: b004 add sp, #16 - 8003336: bd80 pop {r7, pc} - 8003338: 20000038 .word 0x20000038 - 800333c: 08003ef0 .word 0x08003ef0 + 8003300: 46c0 nop ; (mov r8, r8) + 8003302: 46bd mov sp, r7 + 8003304: b004 add sp, #16 + 8003306: bd80 pop {r7, pc} + 8003308: 20000038 .word 0x20000038 + 800330c: 08003ee0 .word 0x08003ee0 -08003340 : +08003310 : char check_need_reset() { - 8003340: b580 push {r7, lr} - 8003342: b082 sub sp, #8 - 8003344: af00 add r7, sp, #0 + 8003310: b580 push {r7, lr} + 8003312: b082 sub sp, #8 + 8003314: af00 add r7, sp, #0 char a=0; - 8003346: 1dfb adds r3, r7, #7 - 8003348: 2200 movs r2, #0 - 800334a: 701a strb r2, [r3, #0] + 8003316: 1dfb adds r3, r7, #7 + 8003318: 2200 movs r2, #0 + 800331a: 701a strb r2, [r3, #0] change_io_function(MOT_IN1_GPIO_Port, MOT_IN1_Pin,1); - 800334c: 4b31 ldr r3, [pc, #196] ; (8003414 ) - 800334e: 2201 movs r2, #1 - 8003350: 2101 movs r1, #1 - 8003352: 0018 movs r0, r3 - 8003354: f7ff faa2 bl 800289c + 800331c: 4b31 ldr r3, [pc, #196] ; (80033e4 ) + 800331e: 2201 movs r2, #1 + 8003320: 2101 movs r1, #1 + 8003322: 0018 movs r0, r3 + 8003324: f7ff faba bl 800289c change_io_function(MOT_IN2_GPIO_Port, MOT_IN2_Pin,0); - 8003358: 4b2e ldr r3, [pc, #184] ; (8003414 ) - 800335a: 2200 movs r2, #0 - 800335c: 2102 movs r1, #2 - 800335e: 0018 movs r0, r3 - 8003360: f7ff fa9c bl 800289c + 8003328: 4b2e ldr r3, [pc, #184] ; (80033e4 ) + 800332a: 2200 movs r2, #0 + 800332c: 2102 movs r1, #2 + 800332e: 0018 movs r0, r3 + 8003330: f7ff fab4 bl 800289c MOT_IN2(0); - 8003364: 4b2b ldr r3, [pc, #172] ; (8003414 ) - 8003366: 2200 movs r2, #0 - 8003368: 2102 movs r1, #2 - 800336a: 0018 movs r0, r3 - 800336c: f7fe fa95 bl 800189a + 8003334: 4b2b ldr r3, [pc, #172] ; (80033e4 ) + 8003336: 2200 movs r2, #0 + 8003338: 2102 movs r1, #2 + 800333a: 0018 movs r0, r3 + 800333c: f7fe faad bl 800189a if(READ_MOT_IN1==0) - 8003370: 4b28 ldr r3, [pc, #160] ; (8003414 ) - 8003372: 2101 movs r1, #1 - 8003374: 0018 movs r0, r3 - 8003376: f7fe fa73 bl 8001860 - 800337a: 1e03 subs r3, r0, #0 - 800337c: d137 bne.n 80033ee + 8003340: 4b28 ldr r3, [pc, #160] ; (80033e4 ) + 8003342: 2101 movs r1, #1 + 8003344: 0018 movs r0, r3 + 8003346: f7fe fa8b bl 8001860 + 800334a: 1e03 subs r3, r0, #0 + 800334c: d137 bne.n 80033be { MOT_IN2(1); - 800337e: 4b25 ldr r3, [pc, #148] ; (8003414 ) - 8003380: 2201 movs r2, #1 - 8003382: 2102 movs r1, #2 - 8003384: 0018 movs r0, r3 - 8003386: f7fe fa88 bl 800189a + 800334e: 4b25 ldr r3, [pc, #148] ; (80033e4 ) + 8003350: 2201 movs r2, #1 + 8003352: 2102 movs r1, #2 + 8003354: 0018 movs r0, r3 + 8003356: f7fe faa0 bl 800189a if(READ_MOT_IN1==1) - 800338a: 4b22 ldr r3, [pc, #136] ; (8003414 ) - 800338c: 2101 movs r1, #1 - 800338e: 0018 movs r0, r3 - 8003390: f7fe fa66 bl 8001860 - 8003394: 0003 movs r3, r0 - 8003396: 2b01 cmp r3, #1 - 8003398: d129 bne.n 80033ee + 800335a: 4b22 ldr r3, [pc, #136] ; (80033e4 ) + 800335c: 2101 movs r1, #1 + 800335e: 0018 movs r0, r3 + 8003360: f7fe fa7e bl 8001860 + 8003364: 0003 movs r3, r0 + 8003366: 2b01 cmp r3, #1 + 8003368: d129 bne.n 80033be { change_io_function(MOT_IN1_GPIO_Port, MOT_IN1_Pin,0); - 800339a: 4b1e ldr r3, [pc, #120] ; (8003414 ) - 800339c: 2200 movs r2, #0 - 800339e: 2101 movs r1, #1 - 80033a0: 0018 movs r0, r3 - 80033a2: f7ff fa7b bl 800289c + 800336a: 4b1e ldr r3, [pc, #120] ; (80033e4 ) + 800336c: 2200 movs r2, #0 + 800336e: 2101 movs r1, #1 + 8003370: 0018 movs r0, r3 + 8003372: f7ff fa93 bl 800289c change_io_function(MOT_IN2_GPIO_Port, MOT_IN2_Pin,1); - 80033a6: 4b1b ldr r3, [pc, #108] ; (8003414 ) - 80033a8: 2201 movs r2, #1 - 80033aa: 2102 movs r1, #2 - 80033ac: 0018 movs r0, r3 - 80033ae: f7ff fa75 bl 800289c + 8003376: 4b1b ldr r3, [pc, #108] ; (80033e4 ) + 8003378: 2201 movs r2, #1 + 800337a: 2102 movs r1, #2 + 800337c: 0018 movs r0, r3 + 800337e: f7ff fa8d bl 800289c MOT_IN1(0); - 80033b2: 4b18 ldr r3, [pc, #96] ; (8003414 ) - 80033b4: 2200 movs r2, #0 - 80033b6: 2101 movs r1, #1 - 80033b8: 0018 movs r0, r3 - 80033ba: f7fe fa6e bl 800189a + 8003382: 4b18 ldr r3, [pc, #96] ; (80033e4 ) + 8003384: 2200 movs r2, #0 + 8003386: 2101 movs r1, #1 + 8003388: 0018 movs r0, r3 + 800338a: f7fe fa86 bl 800189a if(READ_MOT_IN2==0) - 80033be: 4b15 ldr r3, [pc, #84] ; (8003414 ) - 80033c0: 2102 movs r1, #2 - 80033c2: 0018 movs r0, r3 - 80033c4: f7fe fa4c bl 8001860 - 80033c8: 1e03 subs r3, r0, #0 - 80033ca: d110 bne.n 80033ee + 800338e: 4b15 ldr r3, [pc, #84] ; (80033e4 ) + 8003390: 2102 movs r1, #2 + 8003392: 0018 movs r0, r3 + 8003394: f7fe fa64 bl 8001860 + 8003398: 1e03 subs r3, r0, #0 + 800339a: d110 bne.n 80033be { MOT_IN1(1); - 80033cc: 4b11 ldr r3, [pc, #68] ; (8003414 ) - 80033ce: 2201 movs r2, #1 - 80033d0: 2101 movs r1, #1 - 80033d2: 0018 movs r0, r3 - 80033d4: f7fe fa61 bl 800189a + 800339c: 4b11 ldr r3, [pc, #68] ; (80033e4 ) + 800339e: 2201 movs r2, #1 + 80033a0: 2101 movs r1, #1 + 80033a2: 0018 movs r0, r3 + 80033a4: f7fe fa79 bl 800189a if(READ_MOT_IN2==1) - 80033d8: 4b0e ldr r3, [pc, #56] ; (8003414 ) - 80033da: 2102 movs r1, #2 - 80033dc: 0018 movs r0, r3 - 80033de: f7fe fa3f bl 8001860 - 80033e2: 0003 movs r3, r0 - 80033e4: 2b01 cmp r3, #1 - 80033e6: d102 bne.n 80033ee + 80033a8: 4b0e ldr r3, [pc, #56] ; (80033e4 ) + 80033aa: 2102 movs r1, #2 + 80033ac: 0018 movs r0, r3 + 80033ae: f7fe fa57 bl 8001860 + 80033b2: 0003 movs r3, r0 + 80033b4: 2b01 cmp r3, #1 + 80033b6: d102 bne.n 80033be { a=1; - 80033e8: 1dfb adds r3, r7, #7 - 80033ea: 2201 movs r2, #1 - 80033ec: 701a strb r2, [r3, #0] + 80033b8: 1dfb adds r3, r7, #7 + 80033ba: 2201 movs r2, #1 + 80033bc: 701a strb r2, [r3, #0] } } } change_io_function(MOT_IN1_GPIO_Port, MOT_IN1_Pin,1); - 80033ee: 4b09 ldr r3, [pc, #36] ; (8003414 ) - 80033f0: 2201 movs r2, #1 - 80033f2: 2101 movs r1, #1 - 80033f4: 0018 movs r0, r3 - 80033f6: f7ff fa51 bl 800289c + 80033be: 4b09 ldr r3, [pc, #36] ; (80033e4 ) + 80033c0: 2201 movs r2, #1 + 80033c2: 2101 movs r1, #1 + 80033c4: 0018 movs r0, r3 + 80033c6: f7ff fa69 bl 800289c change_io_function(MOT_IN2_GPIO_Port, MOT_IN2_Pin,1); - 80033fa: 4b06 ldr r3, [pc, #24] ; (8003414 ) - 80033fc: 2201 movs r2, #1 - 80033fe: 2102 movs r1, #2 - 8003400: 0018 movs r0, r3 - 8003402: f7ff fa4b bl 800289c + 80033ca: 4b06 ldr r3, [pc, #24] ; (80033e4 ) + 80033cc: 2201 movs r2, #1 + 80033ce: 2102 movs r1, #2 + 80033d0: 0018 movs r0, r3 + 80033d2: f7ff fa63 bl 800289c return a; - 8003406: 1dfb adds r3, r7, #7 - 8003408: 781b ldrb r3, [r3, #0] + 80033d6: 1dfb adds r3, r7, #7 + 80033d8: 781b ldrb r3, [r3, #0] } - 800340a: 0018 movs r0, r3 - 800340c: 46bd mov sp, r7 - 800340e: b002 add sp, #8 - 8003410: bd80 pop {r7, pc} - 8003412: 46c0 nop ; (mov r8, r8) - 8003414: 48001400 .word 0x48001400 + 80033da: 0018 movs r0, r3 + 80033dc: 46bd mov sp, r7 + 80033de: b002 add sp, #8 + 80033e0: bd80 pop {r7, pc} + 80033e2: 46c0 nop ; (mov r8, r8) + 80033e4: 48001400 .word 0x48001400 -08003418 : +080033e8 : void my_code() { - 8003418: b590 push {r4, r7, lr} - 800341a: b089 sub sp, #36 ; 0x24 - 800341c: af00 add r7, sp, #0 + 80033e8: b590 push {r4, r7, lr} + 80033ea: b087 sub sp, #28 + 80033ec: af00 add r7, sp, #0 uint32_t runtime=0,move=0; - 800341e: 2300 movs r3, #0 - 8003420: 61fb str r3, [r7, #28] - 8003422: 2300 movs r3, #0 - 8003424: 61bb str r3, [r7, #24] + 80033ee: 2300 movs r3, #0 + 80033f0: 617b str r3, [r7, #20] + 80033f2: 2300 movs r3, #0 + 80033f4: 613b str r3, [r7, #16] uint8_t mode=1; - 8003426: 2317 movs r3, #23 - 8003428: 18fb adds r3, r7, r3 - 800342a: 2201 movs r2, #1 - 800342c: 701a strb r2, [r3, #0] - - + 80033f6: 230f movs r3, #15 + 80033f8: 18fb adds r3, r7, r3 + 80033fa: 2201 movs r2, #1 + 80033fc: 701a strb r2, [r3, #0] long countdown=1000; - 800342e: 23fa movs r3, #250 ; 0xfa - 8003430: 009b lsls r3, r3, #2 - 8003432: 613b str r3, [r7, #16] - long countdown_set=15000; - 8003434: 4bcb ldr r3, [pc, #812] ; (8003764 ) - 8003436: 60fb str r3, [r7, #12] - - char moto_in1,moto_in2; - uint16_t moto_in1_pp=0,moto_in2_pp=0; - 8003438: 2308 movs r3, #8 - 800343a: 18fb adds r3, r7, r3 - 800343c: 2200 movs r2, #0 - 800343e: 801a strh r2, [r3, #0] - 8003440: 1dbb adds r3, r7, #6 - 8003442: 2200 movs r2, #0 - 8003444: 801a strh r2, [r3, #0] + 80033fe: 23fa movs r3, #250 ; 0xfa + 8003400: 009b lsls r3, r3, #2 + 8003402: 60bb str r3, [r7, #8] + char moto_sw_buff1,moto_sw_buff2; + uint16_t moto_sw_buff1_pp=0,moto_sw_buff2_pp=0; + 8003404: 1d3b adds r3, r7, #4 + 8003406: 2200 movs r2, #0 + 8003408: 801a strh r2, [r3, #0] + 800340a: 1cbb adds r3, r7, #2 + 800340c: 2200 movs r2, #0 + 800340e: 801a strh r2, [r3, #0] HT1621_Init(); - 8003446: f7ff fba8 bl 8002b9a + 8003410: f7ff fbc3 bl 8002b9a r480_init(); - 800344a: f000 fc2f bl 8003cac + 8003414: f000 fc42 bl 8003c9c config.begin=0; - 800344e: 4bc6 ldr r3, [pc, #792] ; (8003768 ) - 8003450: 2200 movs r2, #0 - 8003452: 709a strb r2, [r3, #2] - AT24CXX_Read(32,(char *)&config,sizeof(config_setting)); - 8003454: 4bc4 ldr r3, [pc, #784] ; (8003768 ) - 8003456: 2208 movs r2, #8 - 8003458: 0019 movs r1, r3 - 800345a: 2020 movs r0, #32 - 800345c: f7ff f9cf bl 80027fe - if(config.begin!=0xab||check_need_reset()) - 8003460: 4bc1 ldr r3, [pc, #772] ; (8003768 ) - 8003462: 789b ldrb r3, [r3, #2] - 8003464: 2bab cmp r3, #171 ; 0xab - 8003466: d103 bne.n 8003470 - 8003468: f7ff ff6a bl 8003340 - 800346c: 1e03 subs r3, r0, #0 - 800346e: d006 beq.n 800347e + 8003418: 4bc7 ldr r3, [pc, #796] ; (8003738 ) + 800341a: 2200 movs r2, #0 + 800341c: 709a strb r2, [r3, #2] + AT24CXX_Read(EEPROM_BEGIN_ADD,(char *)&config,sizeof(config_setting)); + 800341e: 4bc6 ldr r3, [pc, #792] ; (8003738 ) + 8003420: 220c movs r2, #12 + 8003422: 0019 movs r1, r3 + 8003424: 2020 movs r0, #32 + 8003426: f7ff f9ea bl 80027fe + if(config.begin!=CONFIG_EFF_CODE||check_need_reset()) + 800342a: 4bc3 ldr r3, [pc, #780] ; (8003738 ) + 800342c: 789b ldrb r3, [r3, #2] + 800342e: 2bab cmp r3, #171 ; 0xab + 8003430: d103 bne.n 800343a + 8003432: f7ff ff6d bl 8003310 + 8003436: 1e03 subs r3, r0, #0 + 8003438: d006 beq.n 8003448 { mode=0; - 8003470: 2317 movs r3, #23 - 8003472: 18fb adds r3, r7, r3 - 8003474: 2200 movs r2, #0 - 8003476: 701a strb r2, [r3, #0] + 800343a: 230f movs r3, #15 + 800343c: 18fb adds r3, r7, r3 + 800343e: 2200 movs r2, #0 + 8003440: 701a strb r2, [r3, #0] r480.key=0; - 8003478: 4bbc ldr r3, [pc, #752] ; (800376c ) - 800347a: 2200 movs r2, #0 - 800347c: 709a strb r2, [r3, #2] + 8003442: 4bbe ldr r3, [pc, #760] ; (800373c ) + 8003444: 2200 movs r2, #0 + 8003446: 709a strb r2, [r3, #2] while(1) { //get ADC for(char a=0;a<2;a++) - 800347e: 1d7b adds r3, r7, #5 - 8003480: 2200 movs r2, #0 - 8003482: 701a strb r2, [r3, #0] - 8003484: e025 b.n 80034d2 + 8003448: 1c7b adds r3, r7, #1 + 800344a: 2200 movs r2, #0 + 800344c: 701a strb r2, [r3, #0] + 800344e: e025 b.n 800349c { HAL_ADC_Start(&hadc); - 8003486: 4bba ldr r3, [pc, #744] ; (8003770 ) - 8003488: 0018 movs r0, r3 - 800348a: f7fd fc2b bl 8000ce4 + 8003450: 4bbb ldr r3, [pc, #748] ; (8003740 ) + 8003452: 0018 movs r0, r3 + 8003454: f7fd fc46 bl 8000ce4 while(HAL_ADC_PollForConversion(&hadc,0xffff)!=HAL_OK); - 800348e: 46c0 nop ; (mov r8, r8) - 8003490: 4ab8 ldr r2, [pc, #736] ; (8003774 ) - 8003492: 4bb7 ldr r3, [pc, #732] ; (8003770 ) - 8003494: 0011 movs r1, r2 - 8003496: 0018 movs r0, r3 - 8003498: f7fd fcb8 bl 8000e0c - 800349c: 1e03 subs r3, r0, #0 - 800349e: d1f7 bne.n 8003490 + 8003458: 46c0 nop ; (mov r8, r8) + 800345a: 4aba ldr r2, [pc, #744] ; (8003744 ) + 800345c: 4bb8 ldr r3, [pc, #736] ; (8003740 ) + 800345e: 0011 movs r1, r2 + 8003460: 0018 movs r0, r3 + 8003462: f7fd fcd3 bl 8000e0c + 8003466: 1e03 subs r3, r0, #0 + 8003468: d1f7 bne.n 800345a ADCC.adc_filtering[a]+=HAL_ADC_GetValue(&hadc); - 80034a0: 4bb3 ldr r3, [pc, #716] ; (8003770 ) - 80034a2: 0018 movs r0, r3 - 80034a4: f7fd fd4a bl 8000f3c - 80034a8: 0001 movs r1, r0 - 80034aa: 1d7b adds r3, r7, #5 - 80034ac: 781b ldrb r3, [r3, #0] - 80034ae: 4ab2 ldr r2, [pc, #712] ; (8003778 ) - 80034b0: 009b lsls r3, r3, #2 - 80034b2: 18d3 adds r3, r2, r3 - 80034b4: 3304 adds r3, #4 - 80034b6: 681a ldr r2, [r3, #0] - 80034b8: 1d7b adds r3, r7, #5 - 80034ba: 781b ldrb r3, [r3, #0] - 80034bc: 188a adds r2, r1, r2 - 80034be: 49ae ldr r1, [pc, #696] ; (8003778 ) - 80034c0: 009b lsls r3, r3, #2 - 80034c2: 18cb adds r3, r1, r3 - 80034c4: 3304 adds r3, #4 - 80034c6: 601a str r2, [r3, #0] + 800346a: 4bb5 ldr r3, [pc, #724] ; (8003740 ) + 800346c: 0018 movs r0, r3 + 800346e: f7fd fd65 bl 8000f3c + 8003472: 0001 movs r1, r0 + 8003474: 1c7b adds r3, r7, #1 + 8003476: 781b ldrb r3, [r3, #0] + 8003478: 4ab3 ldr r2, [pc, #716] ; (8003748 ) + 800347a: 009b lsls r3, r3, #2 + 800347c: 18d3 adds r3, r2, r3 + 800347e: 3304 adds r3, #4 + 8003480: 681a ldr r2, [r3, #0] + 8003482: 1c7b adds r3, r7, #1 + 8003484: 781b ldrb r3, [r3, #0] + 8003486: 188a adds r2, r1, r2 + 8003488: 49af ldr r1, [pc, #700] ; (8003748 ) + 800348a: 009b lsls r3, r3, #2 + 800348c: 18cb adds r3, r1, r3 + 800348e: 3304 adds r3, #4 + 8003490: 601a str r2, [r3, #0] for(char a=0;a<2;a++) - 80034c8: 1d7b adds r3, r7, #5 - 80034ca: 781a ldrb r2, [r3, #0] - 80034cc: 1d7b adds r3, r7, #5 - 80034ce: 3201 adds r2, #1 - 80034d0: 701a strb r2, [r3, #0] - 80034d2: 1d7b adds r3, r7, #5 - 80034d4: 781b ldrb r3, [r3, #0] - 80034d6: 2b01 cmp r3, #1 - 80034d8: d9d5 bls.n 8003486 + 8003492: 1c7b adds r3, r7, #1 + 8003494: 781a ldrb r2, [r3, #0] + 8003496: 1c7b adds r3, r7, #1 + 8003498: 3201 adds r2, #1 + 800349a: 701a strb r2, [r3, #0] + 800349c: 1c7b adds r3, r7, #1 + 800349e: 781b ldrb r3, [r3, #0] + 80034a0: 2b01 cmp r3, #1 + 80034a2: d9d5 bls.n 8003450 } HAL_ADC_Stop(&hadc); - 80034da: 4ba5 ldr r3, [pc, #660] ; (8003770 ) - 80034dc: 0018 movs r0, r3 - 80034de: f7fd fc55 bl 8000d8c + 80034a4: 4ba6 ldr r3, [pc, #664] ; (8003740 ) + 80034a6: 0018 movs r0, r3 + 80034a8: f7fd fc70 bl 8000d8c ADCC.filtering_times+=1; - 80034e2: 4ba5 ldr r3, [pc, #660] ; (8003778 ) - 80034e4: 681b ldr r3, [r3, #0] - 80034e6: 1c5a adds r2, r3, #1 - 80034e8: 4ba3 ldr r3, [pc, #652] ; (8003778 ) - 80034ea: 601a str r2, [r3, #0] + 80034ac: 4ba6 ldr r3, [pc, #664] ; (8003748 ) + 80034ae: 681b ldr r3, [r3, #0] + 80034b0: 1c5a adds r2, r3, #1 + 80034b2: 4ba5 ldr r3, [pc, #660] ; (8003748 ) + 80034b4: 601a str r2, [r3, #0] if(ADCC.filtering_times==set_filtering_times) - 80034ec: 4ba2 ldr r3, [pc, #648] ; (8003778 ) - 80034ee: 681b ldr r3, [r3, #0] - 80034f0: 2b32 cmp r3, #50 ; 0x32 - 80034f2: d11c bne.n 800352e + 80034b6: 4ba4 ldr r3, [pc, #656] ; (8003748 ) + 80034b8: 681b ldr r3, [r3, #0] + 80034ba: 2b32 cmp r3, #50 ; 0x32 + 80034bc: d11c bne.n 80034f8 { ADCC.filtering_times=0; - 80034f4: 4ba0 ldr r3, [pc, #640] ; (8003778 ) - 80034f6: 2200 movs r2, #0 - 80034f8: 601a str r2, [r3, #0] + 80034be: 4ba2 ldr r3, [pc, #648] ; (8003748 ) + 80034c0: 2200 movs r2, #0 + 80034c2: 601a str r2, [r3, #0] ADCC.adc_value[0]=ADCC.adc_filtering[0]/set_filtering_times; - 80034fa: 4b9f ldr r3, [pc, #636] ; (8003778 ) - 80034fc: 685b ldr r3, [r3, #4] - 80034fe: 2132 movs r1, #50 ; 0x32 - 8003500: 0018 movs r0, r3 - 8003502: f7fc fe01 bl 8000108 <__udivsi3> - 8003506: 0003 movs r3, r0 - 8003508: 001a movs r2, r3 - 800350a: 4b9b ldr r3, [pc, #620] ; (8003778 ) - 800350c: 60da str r2, [r3, #12] + 80034c4: 4ba0 ldr r3, [pc, #640] ; (8003748 ) + 80034c6: 685b ldr r3, [r3, #4] + 80034c8: 2132 movs r1, #50 ; 0x32 + 80034ca: 0018 movs r0, r3 + 80034cc: f7fc fe1c bl 8000108 <__udivsi3> + 80034d0: 0003 movs r3, r0 + 80034d2: 001a movs r2, r3 + 80034d4: 4b9c ldr r3, [pc, #624] ; (8003748 ) + 80034d6: 60da str r2, [r3, #12] ADCC.adc_filtering[0]=0; - 800350e: 4b9a ldr r3, [pc, #616] ; (8003778 ) - 8003510: 2200 movs r2, #0 - 8003512: 605a str r2, [r3, #4] + 80034d8: 4b9b ldr r3, [pc, #620] ; (8003748 ) + 80034da: 2200 movs r2, #0 + 80034dc: 605a str r2, [r3, #4] ADCC.adc_value[1]=ADCC.adc_filtering[1]/set_filtering_times; - 8003514: 4b98 ldr r3, [pc, #608] ; (8003778 ) - 8003516: 689b ldr r3, [r3, #8] - 8003518: 2132 movs r1, #50 ; 0x32 - 800351a: 0018 movs r0, r3 - 800351c: f7fc fdf4 bl 8000108 <__udivsi3> - 8003520: 0003 movs r3, r0 - 8003522: 001a movs r2, r3 - 8003524: 4b94 ldr r3, [pc, #592] ; (8003778 ) - 8003526: 611a str r2, [r3, #16] + 80034de: 4b9a ldr r3, [pc, #616] ; (8003748 ) + 80034e0: 689b ldr r3, [r3, #8] + 80034e2: 2132 movs r1, #50 ; 0x32 + 80034e4: 0018 movs r0, r3 + 80034e6: f7fc fe0f bl 8000108 <__udivsi3> + 80034ea: 0003 movs r3, r0 + 80034ec: 001a movs r2, r3 + 80034ee: 4b96 ldr r3, [pc, #600] ; (8003748 ) + 80034f0: 611a str r2, [r3, #16] ADCC.adc_filtering[1]=0; - 8003528: 4b93 ldr r3, [pc, #588] ; (8003778 ) - 800352a: 2200 movs r2, #0 - 800352c: 609a str r2, [r3, #8] + 80034f2: 4b95 ldr r3, [pc, #596] ; (8003748 ) + 80034f4: 2200 movs r2, #0 + 80034f6: 609a str r2, [r3, #8] } switch(mode) - 800352e: 2317 movs r3, #23 - 8003530: 18fb adds r3, r7, r3 - 8003532: 781b ldrb r3, [r3, #0] - 8003534: 2b04 cmp r3, #4 - 8003536: d900 bls.n 800353a - 8003538: e2fe b.n 8003b38 - 800353a: 009a lsls r2, r3, #2 - 800353c: 4b8f ldr r3, [pc, #572] ; (800377c ) - 800353e: 18d3 adds r3, r2, r3 - 8003540: 681b ldr r3, [r3, #0] - 8003542: 469f mov pc, r3 + 80034f8: 230f movs r3, #15 + 80034fa: 18fb adds r3, r7, r3 + 80034fc: 781b ldrb r3, [r3, #0] + 80034fe: 2b04 cmp r3, #4 + 8003500: d900 bls.n 8003504 + 8003502: e314 b.n 8003b2e + 8003504: 009a lsls r2, r3, #2 + 8003506: 4b91 ldr r3, [pc, #580] ; (800374c ) + 8003508: 18d3 adds r3, r2, r3 + 800350a: 681b ldr r3, [r3, #0] + 800350c: 469f mov pc, r3 { case 0: //Startup if(HAL_GetTick()>runtime) - 8003544: f7fd fa60 bl 8000a08 - 8003548: 0002 movs r2, r0 - 800354a: 69fb ldr r3, [r7, #28] - 800354c: 4293 cmp r3, r2 - 800354e: d21c bcs.n 800358a + 800350e: f7fd fa7b bl 8000a08 + 8003512: 0002 movs r2, r0 + 8003514: 697b ldr r3, [r7, #20] + 8003516: 4293 cmp r3, r2 + 8003518: d21c bcs.n 8003554 { runtime+=1000; - 8003550: 69fb ldr r3, [r7, #28] - 8003552: 22fa movs r2, #250 ; 0xfa - 8003554: 0092 lsls r2, r2, #2 - 8003556: 4694 mov ip, r2 - 8003558: 4463 add r3, ip - 800355a: 61fb str r3, [r7, #28] + 800351a: 697b ldr r3, [r7, #20] + 800351c: 22fa movs r2, #250 ; 0xfa + 800351e: 0092 lsls r2, r2, #2 + 8003520: 4694 mov ip, r2 + 8003522: 4463 add r3, ip + 8003524: 617b str r3, [r7, #20] if(dis_buff.led_run==1) - 800355c: 4b88 ldr r3, [pc, #544] ; (8003780 ) - 800355e: 7b1b ldrb r3, [r3, #12] - 8003560: 2b01 cmp r3, #1 - 8003562: d109 bne.n 8003578 + 8003526: 4b8a ldr r3, [pc, #552] ; (8003750 ) + 8003528: 7b1b ldrb r3, [r3, #12] + 800352a: 2b01 cmp r3, #1 + 800352c: d109 bne.n 8003542 { dis_buff.led_run=0; - 8003564: 4b86 ldr r3, [pc, #536] ; (8003780 ) - 8003566: 2200 movs r2, #0 - 8003568: 731a strb r2, [r3, #12] + 800352e: 4b88 ldr r3, [pc, #544] ; (8003750 ) + 8003530: 2200 movs r2, #0 + 8003532: 731a strb r2, [r3, #12] dis_buff.dot4=1; - 800356a: 4b85 ldr r3, [pc, #532] ; (8003780 ) - 800356c: 2201 movs r2, #1 - 800356e: 72da strb r2, [r3, #11] + 8003534: 4b86 ldr r3, [pc, #536] ; (8003750 ) + 8003536: 2201 movs r2, #1 + 8003538: 72da strb r2, [r3, #11] dis_buff.d_num[0]=16; - 8003570: 4b83 ldr r3, [pc, #524] ; (8003780 ) - 8003572: 2210 movs r2, #16 - 8003574: 701a strb r2, [r3, #0] - 8003576: e008 b.n 800358a + 800353a: 4b85 ldr r3, [pc, #532] ; (8003750 ) + 800353c: 2210 movs r2, #16 + 800353e: 701a strb r2, [r3, #0] + 8003540: e008 b.n 8003554 }else { dis_buff.led_run=1; - 8003578: 4b81 ldr r3, [pc, #516] ; (8003780 ) - 800357a: 2201 movs r2, #1 - 800357c: 731a strb r2, [r3, #12] + 8003542: 4b83 ldr r3, [pc, #524] ; (8003750 ) + 8003544: 2201 movs r2, #1 + 8003546: 731a strb r2, [r3, #12] dis_buff.dot4=0; - 800357e: 4b80 ldr r3, [pc, #512] ; (8003780 ) - 8003580: 2200 movs r2, #0 - 8003582: 72da strb r2, [r3, #11] + 8003548: 4b81 ldr r3, [pc, #516] ; (8003750 ) + 800354a: 2200 movs r2, #0 + 800354c: 72da strb r2, [r3, #11] dis_buff.d_num[0]=10; - 8003584: 4b7e ldr r3, [pc, #504] ; (8003780 ) - 8003586: 220a movs r2, #10 - 8003588: 701a strb r2, [r3, #0] + 800354e: 4b80 ldr r3, [pc, #512] ; (8003750 ) + 8003550: 220a movs r2, #10 + 8003552: 701a strb r2, [r3, #0] } } if(r480.key==0xd7) - 800358a: 4b78 ldr r3, [pc, #480] ; (800376c ) - 800358c: 789b ldrb r3, [r3, #2] - 800358e: 2bd7 cmp r3, #215 ; 0xd7 - 8003590: d000 beq.n 8003594 - 8003592: e2ca b.n 8003b2a + 8003554: 4b79 ldr r3, [pc, #484] ; (800373c ) + 8003556: 789b ldrb r3, [r3, #2] + 8003558: 2bd7 cmp r3, #215 ; 0xd7 + 800355a: d000 beq.n 800355e + 800355c: e2e0 b.n 8003b20 { - config.begin=0xab; - 8003594: 4b74 ldr r3, [pc, #464] ; (8003768 ) - 8003596: 22ab movs r2, #171 ; 0xab - 8003598: 709a strb r2, [r3, #2] + config.begin=CONFIG_EFF_CODE; + 800355e: 4b76 ldr r3, [pc, #472] ; (8003738 ) + 8003560: 22ab movs r2, #171 ; 0xab + 8003562: 709a strb r2, [r3, #2] config.key_code[0]=r480.add[0]; - 800359a: 4b74 ldr r3, [pc, #464] ; (800376c ) - 800359c: 781a ldrb r2, [r3, #0] - 800359e: 4b72 ldr r3, [pc, #456] ; (8003768 ) - 80035a0: 701a strb r2, [r3, #0] + 8003564: 4b75 ldr r3, [pc, #468] ; (800373c ) + 8003566: 781a ldrb r2, [r3, #0] + 8003568: 4b73 ldr r3, [pc, #460] ; (8003738 ) + 800356a: 701a strb r2, [r3, #0] config.key_code[1]=r480.add[1]; - 80035a2: 4b72 ldr r3, [pc, #456] ; (800376c ) - 80035a4: 785a ldrb r2, [r3, #1] - 80035a6: 4b70 ldr r3, [pc, #448] ; (8003768 ) - 80035a8: 705a strb r2, [r3, #1] + 800356c: 4b73 ldr r3, [pc, #460] ; (800373c ) + 800356e: 785a ldrb r2, [r3, #1] + 8003570: 4b71 ldr r3, [pc, #452] ; (8003738 ) + 8003572: 705a strb r2, [r3, #1] + config.countdown_set=15000; + 8003574: 4b70 ldr r3, [pc, #448] ; (8003738 ) + 8003576: 4a77 ldr r2, [pc, #476] ; (8003754 ) + 8003578: 609a str r2, [r3, #8] r480.key=0; - 80035aa: 4b70 ldr r3, [pc, #448] ; (800376c ) - 80035ac: 2200 movs r2, #0 - 80035ae: 709a strb r2, [r3, #2] + 800357a: 4b70 ldr r3, [pc, #448] ; (800373c ) + 800357c: 2200 movs r2, #0 + 800357e: 709a strb r2, [r3, #2] r480.add[0]=0; - 80035b0: 4b6e ldr r3, [pc, #440] ; (800376c ) - 80035b2: 2200 movs r2, #0 - 80035b4: 701a strb r2, [r3, #0] + 8003580: 4b6e ldr r3, [pc, #440] ; (800373c ) + 8003582: 2200 movs r2, #0 + 8003584: 701a strb r2, [r3, #0] r480.add[1]=0; - 80035b6: 4b6d ldr r3, [pc, #436] ; (800376c ) - 80035b8: 2200 movs r2, #0 - 80035ba: 705a strb r2, [r3, #1] + 8003586: 4b6d ldr r3, [pc, #436] ; (800373c ) + 8003588: 2200 movs r2, #0 + 800358a: 705a strb r2, [r3, #1] mode=1; - 80035bc: 2317 movs r3, #23 - 80035be: 18fb adds r3, r7, r3 - 80035c0: 2201 movs r2, #1 - 80035c2: 701a strb r2, [r3, #0] - AT24CXX_Write(32,(char *)&config,sizeof(config_setting)); - 80035c4: 4b68 ldr r3, [pc, #416] ; (8003768 ) - 80035c6: 2208 movs r2, #8 - 80035c8: 0019 movs r1, r3 - 80035ca: 2020 movs r0, #32 - 80035cc: f7ff f93e bl 800284c + 800358c: 230f movs r3, #15 + 800358e: 18fb adds r3, r7, r3 + 8003590: 2201 movs r2, #1 + 8003592: 701a strb r2, [r3, #0] + AT24CXX_Write(EEPROM_BEGIN_ADD,(char *)&config,sizeof(config_setting)); + 8003594: 4b68 ldr r3, [pc, #416] ; (8003738 ) + 8003596: 220c movs r2, #12 + 8003598: 0019 movs r1, r3 + 800359a: 2020 movs r0, #32 + 800359c: f7ff f956 bl 800284c } break; - 80035d0: e2ab b.n 8003b2a + 80035a0: e2be b.n 8003b20 case 1: //standby moto.moto1a=0; - 80035d2: 4b6c ldr r3, [pc, #432] ; (8003784 ) + 80035a2: 4b6d ldr r3, [pc, #436] ; (8003758 ) + 80035a4: 2200 movs r2, #0 + 80035a6: 721a strb r2, [r3, #8] + moto.moto1b=0; + 80035a8: 4b6b ldr r3, [pc, #428] ; (8003758 ) + 80035aa: 2200 movs r2, #0 + 80035ac: 725a strb r2, [r3, #9] + moto.moto2a=0; + 80035ae: 4b6a ldr r3, [pc, #424] ; (8003758 ) + 80035b0: 2200 movs r2, #0 + 80035b2: 729a strb r2, [r3, #10] + moto.moto2b=0; + 80035b4: 4b68 ldr r3, [pc, #416] ; (8003758 ) + 80035b6: 2200 movs r2, #0 + 80035b8: 72da strb r2, [r3, #11] + dis_buff.d_num[0]=16; + 80035ba: 4b65 ldr r3, [pc, #404] ; (8003750 ) + 80035bc: 2210 movs r2, #16 + 80035be: 701a strb r2, [r3, #0] + dis_buff.d_num[1]=16; + 80035c0: 4b63 ldr r3, [pc, #396] ; (8003750 ) + 80035c2: 2210 movs r2, #16 + 80035c4: 705a strb r2, [r3, #1] + dis_buff.d_num[2]=16; + 80035c6: 4b62 ldr r3, [pc, #392] ; (8003750 ) + 80035c8: 2210 movs r2, #16 + 80035ca: 709a strb r2, [r3, #2] + dis_buff.d_num[3]=16; + 80035cc: 4b60 ldr r3, [pc, #384] ; (8003750 ) + 80035ce: 2210 movs r2, #16 + 80035d0: 70da strb r2, [r3, #3] + dis_buff.dot1=0; + 80035d2: 4b5f ldr r3, [pc, #380] ; (8003750 ) 80035d4: 2200 movs r2, #0 80035d6: 721a strb r2, [r3, #8] - moto.moto1b=0; - 80035d8: 4b6a ldr r3, [pc, #424] ; (8003784 ) + dis_buff.dot2=0; + 80035d8: 4b5d ldr r3, [pc, #372] ; (8003750 ) 80035da: 2200 movs r2, #0 80035dc: 725a strb r2, [r3, #9] - moto.moto2a=0; - 80035de: 4b69 ldr r3, [pc, #420] ; (8003784 ) + dis_buff.dot3=0; + 80035de: 4b5c ldr r3, [pc, #368] ; (8003750 ) 80035e0: 2200 movs r2, #0 80035e2: 729a strb r2, [r3, #10] - moto.moto2b=0; - 80035e4: 4b67 ldr r3, [pc, #412] ; (8003784 ) - 80035e6: 2200 movs r2, #0 - 80035e8: 72da strb r2, [r3, #11] - dis_buff.d_num[0]=16; - 80035ea: 4b65 ldr r3, [pc, #404] ; (8003780 ) - 80035ec: 2210 movs r2, #16 - 80035ee: 701a strb r2, [r3, #0] - dis_buff.d_num[1]=16; - 80035f0: 4b63 ldr r3, [pc, #396] ; (8003780 ) - 80035f2: 2210 movs r2, #16 - 80035f4: 705a strb r2, [r3, #1] - dis_buff.d_num[2]=16; - 80035f6: 4b62 ldr r3, [pc, #392] ; (8003780 ) - 80035f8: 2210 movs r2, #16 - 80035fa: 709a strb r2, [r3, #2] - dis_buff.d_num[3]=16; - 80035fc: 4b60 ldr r3, [pc, #384] ; (8003780 ) - 80035fe: 2210 movs r2, #16 - 8003600: 70da strb r2, [r3, #3] - dis_buff.dot1=0; - 8003602: 4b5f ldr r3, [pc, #380] ; (8003780 ) - 8003604: 2200 movs r2, #0 - 8003606: 721a strb r2, [r3, #8] - dis_buff.dot2=0; - 8003608: 4b5d ldr r3, [pc, #372] ; (8003780 ) - 800360a: 2200 movs r2, #0 - 800360c: 725a strb r2, [r3, #9] - dis_buff.dot3=0; - 800360e: 4b5c ldr r3, [pc, #368] ; (8003780 ) - 8003610: 2200 movs r2, #0 - 8003612: 729a strb r2, [r3, #10] if(HAL_GetTick()>runtime) - 8003614: f7fd f9f8 bl 8000a08 - 8003618: 0002 movs r2, r0 - 800361a: 69fb ldr r3, [r7, #28] - 800361c: 4293 cmp r3, r2 - 800361e: d216 bcs.n 800364e + 80035e4: f7fd fa10 bl 8000a08 + 80035e8: 0002 movs r2, r0 + 80035ea: 697b ldr r3, [r7, #20] + 80035ec: 4293 cmp r3, r2 + 80035ee: d216 bcs.n 800361e { runtime+=1000; - 8003620: 69fb ldr r3, [r7, #28] - 8003622: 22fa movs r2, #250 ; 0xfa - 8003624: 0092 lsls r2, r2, #2 - 8003626: 4694 mov ip, r2 - 8003628: 4463 add r3, ip - 800362a: 61fb str r3, [r7, #28] + 80035f0: 697b ldr r3, [r7, #20] + 80035f2: 22fa movs r2, #250 ; 0xfa + 80035f4: 0092 lsls r2, r2, #2 + 80035f6: 4694 mov ip, r2 + 80035f8: 4463 add r3, ip + 80035fa: 617b str r3, [r7, #20] if(dis_buff.led_run==1) - 800362c: 4b54 ldr r3, [pc, #336] ; (8003780 ) - 800362e: 7b1b ldrb r3, [r3, #12] - 8003630: 2b01 cmp r3, #1 - 8003632: d106 bne.n 8003642 + 80035fc: 4b54 ldr r3, [pc, #336] ; (8003750 ) + 80035fe: 7b1b ldrb r3, [r3, #12] + 8003600: 2b01 cmp r3, #1 + 8003602: d106 bne.n 8003612 { dis_buff.led_run=0; - 8003634: 4b52 ldr r3, [pc, #328] ; (8003780 ) - 8003636: 2200 movs r2, #0 - 8003638: 731a strb r2, [r3, #12] + 8003604: 4b52 ldr r3, [pc, #328] ; (8003750 ) + 8003606: 2200 movs r2, #0 + 8003608: 731a strb r2, [r3, #12] dis_buff.dot4=1; - 800363a: 4b51 ldr r3, [pc, #324] ; (8003780 ) - 800363c: 2201 movs r2, #1 - 800363e: 72da strb r2, [r3, #11] - 8003640: e005 b.n 800364e + 800360a: 4b51 ldr r3, [pc, #324] ; (8003750 ) + 800360c: 2201 movs r2, #1 + 800360e: 72da strb r2, [r3, #11] + 8003610: e005 b.n 800361e }else { dis_buff.led_run=1; - 8003642: 4b4f ldr r3, [pc, #316] ; (8003780 ) - 8003644: 2201 movs r2, #1 - 8003646: 731a strb r2, [r3, #12] + 8003612: 4b4f ldr r3, [pc, #316] ; (8003750 ) + 8003614: 2201 movs r2, #1 + 8003616: 731a strb r2, [r3, #12] dis_buff.dot4=0; - 8003648: 4b4d ldr r3, [pc, #308] ; (8003780 ) - 800364a: 2200 movs r2, #0 - 800364c: 72da strb r2, [r3, #11] + 8003618: 4b4d ldr r3, [pc, #308] ; (8003750 ) + 800361a: 2200 movs r2, #0 + 800361c: 72da strb r2, [r3, #11] } } if(key2.code!=0) - 800364e: 4b4e ldr r3, [pc, #312] ; (8003788 ) - 8003650: 681b ldr r3, [r3, #0] - 8003652: 2b00 cmp r3, #0 - 8003654: d011 beq.n 800367a + 800361e: 4b4f ldr r3, [pc, #316] ; (800375c ) + 8003620: 681b ldr r3, [r3, #0] + 8003622: 2b00 cmp r3, #0 + 8003624: d012 beq.n 800364c { mode=2; - 8003656: 2317 movs r3, #23 - 8003658: 18fb adds r3, r7, r3 - 800365a: 2202 movs r2, #2 - 800365c: 701a strb r2, [r3, #0] - countdown=countdown_set; - 800365e: 68fb ldr r3, [r7, #12] - 8003660: 613b str r3, [r7, #16] + 8003626: 230f movs r3, #15 + 8003628: 18fb adds r3, r7, r3 + 800362a: 2202 movs r2, #2 + 800362c: 701a strb r2, [r3, #0] + countdown=config.countdown_set; + 800362e: 4b42 ldr r3, [pc, #264] ; (8003738 ) + 8003630: 689b ldr r3, [r3, #8] + 8003632: 60bb str r3, [r7, #8] moto.moto1a=10; - 8003662: 4b48 ldr r3, [pc, #288] ; (8003784 ) - 8003664: 220a movs r2, #10 - 8003666: 721a strb r2, [r3, #8] + 8003634: 4b48 ldr r3, [pc, #288] ; (8003758 ) + 8003636: 220a movs r2, #10 + 8003638: 721a strb r2, [r3, #8] moto.moto1b=0; - 8003668: 4b46 ldr r3, [pc, #280] ; (8003784 ) - 800366a: 2200 movs r2, #0 - 800366c: 725a strb r2, [r3, #9] + 800363a: 4b47 ldr r3, [pc, #284] ; (8003758 ) + 800363c: 2200 movs r2, #0 + 800363e: 725a strb r2, [r3, #9] moto.moto2a=10; - 800366e: 4b45 ldr r3, [pc, #276] ; (8003784 ) - 8003670: 220a movs r2, #10 - 8003672: 729a strb r2, [r3, #10] + 8003640: 4b45 ldr r3, [pc, #276] ; (8003758 ) + 8003642: 220a movs r2, #10 + 8003644: 729a strb r2, [r3, #10] moto.moto2b=0; - 8003674: 4b43 ldr r3, [pc, #268] ; (8003784 ) - 8003676: 2200 movs r2, #0 - 8003678: 72da strb r2, [r3, #11] + 8003646: 4b44 ldr r3, [pc, #272] ; (8003758 ) + 8003648: 2200 movs r2, #0 + 800364a: 72da strb r2, [r3, #11] } if(key3.code!=0) - 800367a: 4b44 ldr r3, [pc, #272] ; (800378c ) - 800367c: 681b ldr r3, [r3, #0] - 800367e: 2b00 cmp r3, #0 - 8003680: d011 beq.n 80036a6 + 800364c: 4b44 ldr r3, [pc, #272] ; (8003760 ) + 800364e: 681b ldr r3, [r3, #0] + 8003650: 2b00 cmp r3, #0 + 8003652: d012 beq.n 800367a { moto.moto1a=0; - 8003682: 4b40 ldr r3, [pc, #256] ; (8003784 ) - 8003684: 2200 movs r2, #0 - 8003686: 721a strb r2, [r3, #8] + 8003654: 4b40 ldr r3, [pc, #256] ; (8003758 ) + 8003656: 2200 movs r2, #0 + 8003658: 721a strb r2, [r3, #8] moto.moto1b=10; - 8003688: 4b3e ldr r3, [pc, #248] ; (8003784 ) - 800368a: 220a movs r2, #10 - 800368c: 725a strb r2, [r3, #9] + 800365a: 4b3f ldr r3, [pc, #252] ; (8003758 ) + 800365c: 220a movs r2, #10 + 800365e: 725a strb r2, [r3, #9] moto.moto2a=0; - 800368e: 4b3d ldr r3, [pc, #244] ; (8003784 ) - 8003690: 2200 movs r2, #0 - 8003692: 729a strb r2, [r3, #10] + 8003660: 4b3d ldr r3, [pc, #244] ; (8003758 ) + 8003662: 2200 movs r2, #0 + 8003664: 729a strb r2, [r3, #10] moto.moto2b=10; - 8003694: 4b3b ldr r3, [pc, #236] ; (8003784 ) - 8003696: 220a movs r2, #10 - 8003698: 72da strb r2, [r3, #11] + 8003666: 4b3c ldr r3, [pc, #240] ; (8003758 ) + 8003668: 220a movs r2, #10 + 800366a: 72da strb r2, [r3, #11] mode=3; - 800369a: 2317 movs r3, #23 - 800369c: 18fb adds r3, r7, r3 - 800369e: 2203 movs r2, #3 - 80036a0: 701a strb r2, [r3, #0] - countdown=countdown_set; - 80036a2: 68fb ldr r3, [r7, #12] - 80036a4: 613b str r3, [r7, #16] + 800366c: 230f movs r3, #15 + 800366e: 18fb adds r3, r7, r3 + 8003670: 2203 movs r2, #3 + 8003672: 701a strb r2, [r3, #0] + countdown=config.countdown_set; + 8003674: 4b30 ldr r3, [pc, #192] ; (8003738 ) + 8003676: 689b ldr r3, [r3, #8] + 8003678: 60bb str r3, [r7, #8] } if(key1.code!=0) - 80036a6: 4b3a ldr r3, [pc, #232] ; (8003790 ) - 80036a8: 681b ldr r3, [r3, #0] - 80036aa: 2b00 cmp r3, #0 - 80036ac: d100 bne.n 80036b0 - 80036ae: e23e b.n 8003b2e + 800367a: 4b3a ldr r3, [pc, #232] ; (8003764 ) + 800367c: 681b ldr r3, [r3, #0] + 800367e: 2b00 cmp r3, #0 + 8003680: d100 bne.n 8003684 + 8003682: e24f b.n 8003b24 { mode=4; - 80036b0: 2317 movs r3, #23 - 80036b2: 18fb adds r3, r7, r3 - 80036b4: 2204 movs r2, #4 - 80036b6: 701a strb r2, [r3, #0] + 8003684: 230f movs r3, #15 + 8003686: 18fb adds r3, r7, r3 + 8003688: 2204 movs r2, #4 + 800368a: 701a strb r2, [r3, #0] countdown=10000; - 80036b8: 4b36 ldr r3, [pc, #216] ; (8003794 ) - 80036ba: 613b str r3, [r7, #16] + 800368c: 4b36 ldr r3, [pc, #216] ; (8003768 ) + 800368e: 60bb str r3, [r7, #8] } break; - 80036bc: e237 b.n 8003b2e + 8003690: e248 b.n 8003b24 case 2: if(HAL_GetTick()>move) - 80036be: f7fd f9a3 bl 8000a08 - 80036c2: 0002 movs r2, r0 - 80036c4: 69bb ldr r3, [r7, #24] - 80036c6: 4293 cmp r3, r2 - 80036c8: d219 bcs.n 80036fe + 8003692: f7fd f9b9 bl 8000a08 + 8003696: 0002 movs r2, r0 + 8003698: 693b ldr r3, [r7, #16] + 800369a: 4293 cmp r3, r2 + 800369c: d219 bcs.n 80036d2 { move=HAL_GetTick()+100; - 80036ca: f7fd f99d bl 8000a08 - 80036ce: 0003 movs r3, r0 - 80036d0: 3364 adds r3, #100 ; 0x64 - 80036d2: 61bb str r3, [r7, #24] + 800369e: f7fd f9b3 bl 8000a08 + 80036a2: 0003 movs r3, r0 + 80036a4: 3364 adds r3, #100 ; 0x64 + 80036a6: 613b str r3, [r7, #16] if(dis_buff.led_run==1) - 80036d4: 4b2a ldr r3, [pc, #168] ; (8003780 ) - 80036d6: 7b1b ldrb r3, [r3, #12] - 80036d8: 2b01 cmp r3, #1 - 80036da: d103 bne.n 80036e4 + 80036a8: 4b29 ldr r3, [pc, #164] ; (8003750 ) + 80036aa: 7b1b ldrb r3, [r3, #12] + 80036ac: 2b01 cmp r3, #1 + 80036ae: d103 bne.n 80036b8 { dis_buff.led_run=0; - 80036dc: 4b28 ldr r3, [pc, #160] ; (8003780 ) - 80036de: 2200 movs r2, #0 - 80036e0: 731a strb r2, [r3, #12] - 80036e2: e002 b.n 80036ea + 80036b0: 4b27 ldr r3, [pc, #156] ; (8003750 ) + 80036b2: 2200 movs r2, #0 + 80036b4: 731a strb r2, [r3, #12] + 80036b6: e002 b.n 80036be }else { dis_buff.led_run=1; - 80036e4: 4b26 ldr r3, [pc, #152] ; (8003780 ) - 80036e6: 2201 movs r2, #1 - 80036e8: 731a strb r2, [r3, #12] + 80036b8: 4b25 ldr r3, [pc, #148] ; (8003750 ) + 80036ba: 2201 movs r2, #1 + 80036bc: 731a strb r2, [r3, #12] } countdown-=100; - 80036ea: 693b ldr r3, [r7, #16] - 80036ec: 3b64 subs r3, #100 ; 0x64 - 80036ee: 613b str r3, [r7, #16] + 80036be: 68bb ldr r3, [r7, #8] + 80036c0: 3b64 subs r3, #100 ; 0x64 + 80036c2: 60bb str r3, [r7, #8] if(countdown<0) - 80036f0: 693b ldr r3, [r7, #16] - 80036f2: 2b00 cmp r3, #0 - 80036f4: da03 bge.n 80036fe + 80036c4: 68bb ldr r3, [r7, #8] + 80036c6: 2b00 cmp r3, #0 + 80036c8: da03 bge.n 80036d2 { mode=1; - 80036f6: 2317 movs r3, #23 - 80036f8: 18fb adds r3, r7, r3 - 80036fa: 2201 movs r2, #1 - 80036fc: 701a strb r2, [r3, #0] + 80036ca: 230f movs r3, #15 + 80036cc: 18fb adds r3, r7, r3 + 80036ce: 2201 movs r2, #1 + 80036d0: 701a strb r2, [r3, #0] } } dis_buff.d_num[3]=(countdown/100)%10; - 80036fe: 693b ldr r3, [r7, #16] - 8003700: 2164 movs r1, #100 ; 0x64 - 8003702: 0018 movs r0, r3 - 8003704: f7fc fd8a bl 800021c <__divsi3> - 8003708: 0003 movs r3, r0 - 800370a: 210a movs r1, #10 - 800370c: 0018 movs r0, r3 - 800370e: f7fc fe6b bl 80003e8 <__aeabi_idivmod> - 8003712: 000b movs r3, r1 - 8003714: b2da uxtb r2, r3 - 8003716: 4b1a ldr r3, [pc, #104] ; (8003780 ) - 8003718: 70da strb r2, [r3, #3] + 80036d2: 68bb ldr r3, [r7, #8] + 80036d4: 2164 movs r1, #100 ; 0x64 + 80036d6: 0018 movs r0, r3 + 80036d8: f7fc fda0 bl 800021c <__divsi3> + 80036dc: 0003 movs r3, r0 + 80036de: 210a movs r1, #10 + 80036e0: 0018 movs r0, r3 + 80036e2: f7fc fe81 bl 80003e8 <__aeabi_idivmod> + 80036e6: 000b movs r3, r1 + 80036e8: b2da uxtb r2, r3 + 80036ea: 4b19 ldr r3, [pc, #100] ; (8003750 ) + 80036ec: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown/1000)%10; - 800371a: 693b ldr r3, [r7, #16] - 800371c: 22fa movs r2, #250 ; 0xfa - 800371e: 0091 lsls r1, r2, #2 - 8003720: 0018 movs r0, r3 - 8003722: f7fc fd7b bl 800021c <__divsi3> - 8003726: 0003 movs r3, r0 - 8003728: 210a movs r1, #10 - 800372a: 0018 movs r0, r3 - 800372c: f7fc fe5c bl 80003e8 <__aeabi_idivmod> - 8003730: 000b movs r3, r1 - 8003732: b2da uxtb r2, r3 - 8003734: 4b12 ldr r3, [pc, #72] ; (8003780 ) - 8003736: 709a strb r2, [r3, #2] + 80036ee: 68bb ldr r3, [r7, #8] + 80036f0: 22fa movs r2, #250 ; 0xfa + 80036f2: 0091 lsls r1, r2, #2 + 80036f4: 0018 movs r0, r3 + 80036f6: f7fc fd91 bl 800021c <__divsi3> + 80036fa: 0003 movs r3, r0 + 80036fc: 210a movs r1, #10 + 80036fe: 0018 movs r0, r3 + 8003700: f7fc fe72 bl 80003e8 <__aeabi_idivmod> + 8003704: 000b movs r3, r1 + 8003706: b2da uxtb r2, r3 + 8003708: 4b11 ldr r3, [pc, #68] ; (8003750 ) + 800370a: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown/10000)%10); - 8003738: 693b ldr r3, [r7, #16] - 800373a: 4916 ldr r1, [pc, #88] ; (8003794 ) - 800373c: 0018 movs r0, r3 - 800373e: f7fc fd6d bl 800021c <__divsi3> - 8003742: 0003 movs r3, r0 - 8003744: 210a movs r1, #10 - 8003746: 0018 movs r0, r3 - 8003748: f7fc fe4e bl 80003e8 <__aeabi_idivmod> - 800374c: 000b movs r3, r1 - 800374e: b2da uxtb r2, r3 - 8003750: 4b0b ldr r3, [pc, #44] ; (8003780 ) - 8003752: 705a strb r2, [r3, #1] + 800370c: 68bb ldr r3, [r7, #8] + 800370e: 4916 ldr r1, [pc, #88] ; (8003768 ) + 8003710: 0018 movs r0, r3 + 8003712: f7fc fd83 bl 800021c <__divsi3> + 8003716: 0003 movs r3, r0 + 8003718: 210a movs r1, #10 + 800371a: 0018 movs r0, r3 + 800371c: f7fc fe64 bl 80003e8 <__aeabi_idivmod> + 8003720: 000b movs r3, r1 + 8003722: b2da uxtb r2, r3 + 8003724: 4b0a ldr r3, [pc, #40] ; (8003750 ) + 8003726: 705a strb r2, [r3, #1] dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; - 8003754: 4b0a ldr r3, [pc, #40] ; (8003780 ) - 8003756: 785b ldrb r3, [r3, #1] - 8003758: 2b00 cmp r3, #0 - 800375a: d01d beq.n 8003798 - 800375c: 4b08 ldr r3, [pc, #32] ; (8003780 ) - 800375e: 785a ldrb r2, [r3, #1] - 8003760: e01b b.n 800379a - 8003762: 46c0 nop ; (mov r8, r8) - 8003764: 00003a98 .word 0x00003a98 - 8003768: 20000144 .word 0x20000144 - 800376c: 200000e8 .word 0x200000e8 - 8003770: 20000094 .word 0x20000094 - 8003774: 0000ffff .word 0x0000ffff - 8003778: 20000110 .word 0x20000110 - 800377c: 08003f04 .word 0x08003f04 - 8003780: 20000038 .word 0x20000038 - 8003784: 20000134 .word 0x20000134 - 8003788: 20000124 .word 0x20000124 - 800378c: 20000100 .word 0x20000100 - 8003790: 200000f0 .word 0x200000f0 - 8003794: 00002710 .word 0x00002710 - 8003798: 2210 movs r2, #16 - 800379a: 4b9c ldr r3, [pc, #624] ; (8003a0c ) - 800379c: 705a strb r2, [r3, #1] + 8003728: 4b09 ldr r3, [pc, #36] ; (8003750 ) + 800372a: 785b ldrb r3, [r3, #1] + 800372c: 2b00 cmp r3, #0 + 800372e: d01d beq.n 800376c + 8003730: 4b07 ldr r3, [pc, #28] ; (8003750 ) + 8003732: 785a ldrb r2, [r3, #1] + 8003734: e01b b.n 800376e + 8003736: 46c0 nop ; (mov r8, r8) + 8003738: 20000144 .word 0x20000144 + 800373c: 2000010c .word 0x2000010c + 8003740: 200000a8 .word 0x200000a8 + 8003744: 0000ffff .word 0x0000ffff + 8003748: 2000004c .word 0x2000004c + 800374c: 08003ef4 .word 0x08003ef4 + 8003750: 20000038 .word 0x20000038 + 8003754: 00003a98 .word 0x00003a98 + 8003758: 200000e8 .word 0x200000e8 + 800375c: 20000134 .word 0x20000134 + 8003760: 20000124 .word 0x20000124 + 8003764: 20000114 .word 0x20000114 + 8003768: 00002710 .word 0x00002710 + 800376c: 2210 movs r2, #16 + 800376e: 4b9b ldr r3, [pc, #620] ; (80039dc ) + 8003770: 705a strb r2, [r3, #1] dis_buff.dot4=1; - 800379e: 4b9b ldr r3, [pc, #620] ; (8003a0c ) - 80037a0: 2201 movs r2, #1 - 80037a2: 72da strb r2, [r3, #11] + 8003772: 4b9a ldr r3, [pc, #616] ; (80039dc ) + 8003774: 2201 movs r2, #1 + 8003776: 72da strb r2, [r3, #11] if(key3.code!=0) - 80037a4: 4b9a ldr r3, [pc, #616] ; (8003a10 ) - 80037a6: 681b ldr r3, [r3, #0] - 80037a8: 2b00 cmp r3, #0 - 80037aa: d013 beq.n 80037d4 + 8003778: 4b99 ldr r3, [pc, #612] ; (80039e0 ) + 800377a: 681b ldr r3, [r3, #0] + 800377c: 2b00 cmp r3, #0 + 800377e: d014 beq.n 80037aa { mode=3; - 80037ac: 2317 movs r3, #23 - 80037ae: 18fb adds r3, r7, r3 - 80037b0: 2203 movs r2, #3 - 80037b2: 701a strb r2, [r3, #0] - countdown=countdown_set-countdown; - 80037b4: 68fa ldr r2, [r7, #12] - 80037b6: 693b ldr r3, [r7, #16] - 80037b8: 1ad3 subs r3, r2, r3 - 80037ba: 613b str r3, [r7, #16] + 8003780: 230f movs r3, #15 + 8003782: 18fb adds r3, r7, r3 + 8003784: 2203 movs r2, #3 + 8003786: 701a strb r2, [r3, #0] + countdown=config.countdown_set-countdown; + 8003788: 4b96 ldr r3, [pc, #600] ; (80039e4 ) + 800378a: 689a ldr r2, [r3, #8] + 800378c: 68bb ldr r3, [r7, #8] + 800378e: 1ad3 subs r3, r2, r3 + 8003790: 60bb str r3, [r7, #8] moto.moto1a=0; - 80037bc: 4b95 ldr r3, [pc, #596] ; (8003a14 ) - 80037be: 2200 movs r2, #0 - 80037c0: 721a strb r2, [r3, #8] + 8003792: 4b95 ldr r3, [pc, #596] ; (80039e8 ) + 8003794: 2200 movs r2, #0 + 8003796: 721a strb r2, [r3, #8] moto.moto1b=10; - 80037c2: 4b94 ldr r3, [pc, #592] ; (8003a14 ) - 80037c4: 220a movs r2, #10 - 80037c6: 725a strb r2, [r3, #9] + 8003798: 4b93 ldr r3, [pc, #588] ; (80039e8 ) + 800379a: 220a movs r2, #10 + 800379c: 725a strb r2, [r3, #9] moto.moto2a=0; - 80037c8: 4b92 ldr r3, [pc, #584] ; (8003a14 ) - 80037ca: 2200 movs r2, #0 - 80037cc: 729a strb r2, [r3, #10] + 800379e: 4b92 ldr r3, [pc, #584] ; (80039e8 ) + 80037a0: 2200 movs r2, #0 + 80037a2: 729a strb r2, [r3, #10] moto.moto2b=10; - 80037ce: 4b91 ldr r3, [pc, #580] ; (8003a14 ) - 80037d0: 220a movs r2, #10 - 80037d2: 72da strb r2, [r3, #11] + 80037a4: 4b90 ldr r3, [pc, #576] ; (80039e8 ) + 80037a6: 220a movs r2, #10 + 80037a8: 72da strb r2, [r3, #11] } if(key4.code!=0||(moto.moto1a==0&&moto.moto1b==0&&moto.moto2a==0&&moto.moto2b==0)) - 80037d4: 4b90 ldr r3, [pc, #576] ; (8003a18 ) - 80037d6: 681b ldr r3, [r3, #0] - 80037d8: 2b00 cmp r3, #0 - 80037da: d10f bne.n 80037fc - 80037dc: 4b8d ldr r3, [pc, #564] ; (8003a14 ) - 80037de: 7a1b ldrb r3, [r3, #8] - 80037e0: 2b00 cmp r3, #0 - 80037e2: d10f bne.n 8003804 - 80037e4: 4b8b ldr r3, [pc, #556] ; (8003a14 ) - 80037e6: 7a5b ldrb r3, [r3, #9] - 80037e8: 2b00 cmp r3, #0 - 80037ea: d10b bne.n 8003804 - 80037ec: 4b89 ldr r3, [pc, #548] ; (8003a14 ) - 80037ee: 7a9b ldrb r3, [r3, #10] - 80037f0: 2b00 cmp r3, #0 - 80037f2: d107 bne.n 8003804 - 80037f4: 4b87 ldr r3, [pc, #540] ; (8003a14 ) - 80037f6: 7adb ldrb r3, [r3, #11] - 80037f8: 2b00 cmp r3, #0 - 80037fa: d103 bne.n 8003804 + 80037aa: 4b90 ldr r3, [pc, #576] ; (80039ec ) + 80037ac: 681b ldr r3, [r3, #0] + 80037ae: 2b00 cmp r3, #0 + 80037b0: d10f bne.n 80037d2 + 80037b2: 4b8d ldr r3, [pc, #564] ; (80039e8 ) + 80037b4: 7a1b ldrb r3, [r3, #8] + 80037b6: 2b00 cmp r3, #0 + 80037b8: d10f bne.n 80037da + 80037ba: 4b8b ldr r3, [pc, #556] ; (80039e8 ) + 80037bc: 7a5b ldrb r3, [r3, #9] + 80037be: 2b00 cmp r3, #0 + 80037c0: d10b bne.n 80037da + 80037c2: 4b89 ldr r3, [pc, #548] ; (80039e8 ) + 80037c4: 7a9b ldrb r3, [r3, #10] + 80037c6: 2b00 cmp r3, #0 + 80037c8: d107 bne.n 80037da + 80037ca: 4b87 ldr r3, [pc, #540] ; (80039e8 ) + 80037cc: 7adb ldrb r3, [r3, #11] + 80037ce: 2b00 cmp r3, #0 + 80037d0: d103 bne.n 80037da { mode=1; - 80037fc: 2317 movs r3, #23 - 80037fe: 18fb adds r3, r7, r3 - 8003800: 2201 movs r2, #1 - 8003802: 701a strb r2, [r3, #0] + 80037d2: 230f movs r3, #15 + 80037d4: 18fb adds r3, r7, r3 + 80037d6: 2201 movs r2, #1 + 80037d8: 701a strb r2, [r3, #0] } - if(ADCC.adc_value[1]>400||(moto_in1==1&&READ_MOT_IN1==0)) - 8003804: 4b85 ldr r3, [pc, #532] ; (8003a1c ) - 8003806: 691a ldr r2, [r3, #16] - 8003808: 23c8 movs r3, #200 ; 0xc8 - 800380a: 005b lsls r3, r3, #1 - 800380c: 429a cmp r2, r3 - 800380e: dc0b bgt.n 8003828 - 8003810: 230b movs r3, #11 - 8003812: 18fb adds r3, r7, r3 - 8003814: 781b ldrb r3, [r3, #0] - 8003816: 2b01 cmp r3, #1 - 8003818: d10c bne.n 8003834 - 800381a: 4b81 ldr r3, [pc, #516] ; (8003a20 ) - 800381c: 2101 movs r1, #1 - 800381e: 0018 movs r0, r3 - 8003820: f7fe f81e bl 8001860 - 8003824: 1e03 subs r3, r0, #0 - 8003826: d105 bne.n 8003834 + if(ADCC.adc_value[1]>400||(moto_sw_buff1==1&&READ_MOT_IN1==0)) + 80037da: 4b85 ldr r3, [pc, #532] ; (80039f0 ) + 80037dc: 691a ldr r2, [r3, #16] + 80037de: 23c8 movs r3, #200 ; 0xc8 + 80037e0: 005b lsls r3, r3, #1 + 80037e2: 429a cmp r2, r3 + 80037e4: dc0a bgt.n 80037fc + 80037e6: 1dfb adds r3, r7, #7 + 80037e8: 781b ldrb r3, [r3, #0] + 80037ea: 2b01 cmp r3, #1 + 80037ec: d10c bne.n 8003808 + 80037ee: 4b81 ldr r3, [pc, #516] ; (80039f4 ) + 80037f0: 2101 movs r1, #1 + 80037f2: 0018 movs r0, r3 + 80037f4: f7fe f834 bl 8001860 + 80037f8: 1e03 subs r3, r0, #0 + 80037fa: d105 bne.n 8003808 { //overload_times=0; moto.moto1a=0; - 8003828: 4b7a ldr r3, [pc, #488] ; (8003a14 ) - 800382a: 2200 movs r2, #0 - 800382c: 721a strb r2, [r3, #8] + 80037fc: 4b7a ldr r3, [pc, #488] ; (80039e8 ) + 80037fe: 2200 movs r2, #0 + 8003800: 721a strb r2, [r3, #8] moto.moto1b=0; - 800382e: 4b79 ldr r3, [pc, #484] ; (8003a14 ) - 8003830: 2200 movs r2, #0 - 8003832: 725a strb r2, [r3, #9] + 8003802: 4b79 ldr r3, [pc, #484] ; (80039e8 ) + 8003804: 2200 movs r2, #0 + 8003806: 725a strb r2, [r3, #9] } - if(ADCC.adc_value[0]>400||(moto_in2==1&&READ_MOT_IN2==0)) - 8003834: 4b79 ldr r3, [pc, #484] ; (8003a1c ) - 8003836: 68da ldr r2, [r3, #12] - 8003838: 23c8 movs r3, #200 ; 0xc8 - 800383a: 005b lsls r3, r3, #1 - 800383c: 429a cmp r2, r3 - 800383e: dc0d bgt.n 800385c - 8003840: 230a movs r3, #10 - 8003842: 18fb adds r3, r7, r3 - 8003844: 781b ldrb r3, [r3, #0] - 8003846: 2b01 cmp r3, #1 - 8003848: d000 beq.n 800384c - 800384a: e172 b.n 8003b32 - 800384c: 4b74 ldr r3, [pc, #464] ; (8003a20 ) - 800384e: 2102 movs r1, #2 - 8003850: 0018 movs r0, r3 - 8003852: f7fe f805 bl 8001860 - 8003856: 1e03 subs r3, r0, #0 - 8003858: d000 beq.n 800385c - 800385a: e16a b.n 8003b32 + if(ADCC.adc_value[0]>400||(moto_sw_buff2==1&&READ_MOT_IN2==0)) + 8003808: 4b79 ldr r3, [pc, #484] ; (80039f0 ) + 800380a: 68da ldr r2, [r3, #12] + 800380c: 23c8 movs r3, #200 ; 0xc8 + 800380e: 005b lsls r3, r3, #1 + 8003810: 429a cmp r2, r3 + 8003812: dc0c bgt.n 800382e + 8003814: 1dbb adds r3, r7, #6 + 8003816: 781b ldrb r3, [r3, #0] + 8003818: 2b01 cmp r3, #1 + 800381a: d000 beq.n 800381e + 800381c: e184 b.n 8003b28 + 800381e: 4b75 ldr r3, [pc, #468] ; (80039f4 ) + 8003820: 2102 movs r1, #2 + 8003822: 0018 movs r0, r3 + 8003824: f7fe f81c bl 8001860 + 8003828: 1e03 subs r3, r0, #0 + 800382a: d000 beq.n 800382e + 800382c: e17c b.n 8003b28 { moto.moto2a=0; - 800385c: 4b6d ldr r3, [pc, #436] ; (8003a14 ) - 800385e: 2200 movs r2, #0 - 8003860: 729a strb r2, [r3, #10] + 800382e: 4b6e ldr r3, [pc, #440] ; (80039e8 ) + 8003830: 2200 movs r2, #0 + 8003832: 729a strb r2, [r3, #10] moto.moto2b=0; - 8003862: 4b6c ldr r3, [pc, #432] ; (8003a14 ) - 8003864: 2200 movs r2, #0 - 8003866: 72da strb r2, [r3, #11] + 8003834: 4b6c ldr r3, [pc, #432] ; (80039e8 ) + 8003836: 2200 movs r2, #0 + 8003838: 72da strb r2, [r3, #11] } break; - 8003868: e163 b.n 8003b32 + 800383a: e175 b.n 8003b28 case 3: if(HAL_GetTick()>move) - 800386a: f7fd f8cd bl 8000a08 - 800386e: 0002 movs r2, r0 - 8003870: 69bb ldr r3, [r7, #24] - 8003872: 4293 cmp r3, r2 - 8003874: d219 bcs.n 80038aa + 800383c: f7fd f8e4 bl 8000a08 + 8003840: 0002 movs r2, r0 + 8003842: 693b ldr r3, [r7, #16] + 8003844: 4293 cmp r3, r2 + 8003846: d219 bcs.n 800387c { move=HAL_GetTick()+100; - 8003876: f7fd f8c7 bl 8000a08 - 800387a: 0003 movs r3, r0 - 800387c: 3364 adds r3, #100 ; 0x64 - 800387e: 61bb str r3, [r7, #24] + 8003848: f7fd f8de bl 8000a08 + 800384c: 0003 movs r3, r0 + 800384e: 3364 adds r3, #100 ; 0x64 + 8003850: 613b str r3, [r7, #16] if(dis_buff.led_run==1) - 8003880: 4b62 ldr r3, [pc, #392] ; (8003a0c ) - 8003882: 7b1b ldrb r3, [r3, #12] - 8003884: 2b01 cmp r3, #1 - 8003886: d103 bne.n 8003890 + 8003852: 4b62 ldr r3, [pc, #392] ; (80039dc ) + 8003854: 7b1b ldrb r3, [r3, #12] + 8003856: 2b01 cmp r3, #1 + 8003858: d103 bne.n 8003862 { dis_buff.led_run=0; - 8003888: 4b60 ldr r3, [pc, #384] ; (8003a0c ) - 800388a: 2200 movs r2, #0 - 800388c: 731a strb r2, [r3, #12] - 800388e: e002 b.n 8003896 + 800385a: 4b60 ldr r3, [pc, #384] ; (80039dc ) + 800385c: 2200 movs r2, #0 + 800385e: 731a strb r2, [r3, #12] + 8003860: e002 b.n 8003868 }else { dis_buff.led_run=1; - 8003890: 4b5e ldr r3, [pc, #376] ; (8003a0c ) - 8003892: 2201 movs r2, #1 - 8003894: 731a strb r2, [r3, #12] + 8003862: 4b5e ldr r3, [pc, #376] ; (80039dc ) + 8003864: 2201 movs r2, #1 + 8003866: 731a strb r2, [r3, #12] } countdown-=100; - 8003896: 693b ldr r3, [r7, #16] - 8003898: 3b64 subs r3, #100 ; 0x64 - 800389a: 613b str r3, [r7, #16] + 8003868: 68bb ldr r3, [r7, #8] + 800386a: 3b64 subs r3, #100 ; 0x64 + 800386c: 60bb str r3, [r7, #8] if(countdown<0) - 800389c: 693b ldr r3, [r7, #16] - 800389e: 2b00 cmp r3, #0 - 80038a0: da03 bge.n 80038aa + 800386e: 68bb ldr r3, [r7, #8] + 8003870: 2b00 cmp r3, #0 + 8003872: da03 bge.n 800387c { mode=1; - 80038a2: 2317 movs r3, #23 - 80038a4: 18fb adds r3, r7, r3 - 80038a6: 2201 movs r2, #1 - 80038a8: 701a strb r2, [r3, #0] + 8003874: 230f movs r3, #15 + 8003876: 18fb adds r3, r7, r3 + 8003878: 2201 movs r2, #1 + 800387a: 701a strb r2, [r3, #0] } } dis_buff.d_num[3]=(countdown/100)%10; - 80038aa: 693b ldr r3, [r7, #16] - 80038ac: 2164 movs r1, #100 ; 0x64 - 80038ae: 0018 movs r0, r3 - 80038b0: f7fc fcb4 bl 800021c <__divsi3> - 80038b4: 0003 movs r3, r0 - 80038b6: 210a movs r1, #10 - 80038b8: 0018 movs r0, r3 - 80038ba: f7fc fd95 bl 80003e8 <__aeabi_idivmod> - 80038be: 000b movs r3, r1 - 80038c0: b2da uxtb r2, r3 - 80038c2: 4b52 ldr r3, [pc, #328] ; (8003a0c ) - 80038c4: 70da strb r2, [r3, #3] + 800387c: 68bb ldr r3, [r7, #8] + 800387e: 2164 movs r1, #100 ; 0x64 + 8003880: 0018 movs r0, r3 + 8003882: f7fc fccb bl 800021c <__divsi3> + 8003886: 0003 movs r3, r0 + 8003888: 210a movs r1, #10 + 800388a: 0018 movs r0, r3 + 800388c: f7fc fdac bl 80003e8 <__aeabi_idivmod> + 8003890: 000b movs r3, r1 + 8003892: b2da uxtb r2, r3 + 8003894: 4b51 ldr r3, [pc, #324] ; (80039dc ) + 8003896: 70da strb r2, [r3, #3] dis_buff.d_num[2]=(countdown/1000)%10; - 80038c6: 693b ldr r3, [r7, #16] - 80038c8: 22fa movs r2, #250 ; 0xfa - 80038ca: 0091 lsls r1, r2, #2 - 80038cc: 0018 movs r0, r3 - 80038ce: f7fc fca5 bl 800021c <__divsi3> - 80038d2: 0003 movs r3, r0 - 80038d4: 210a movs r1, #10 - 80038d6: 0018 movs r0, r3 - 80038d8: f7fc fd86 bl 80003e8 <__aeabi_idivmod> - 80038dc: 000b movs r3, r1 - 80038de: b2da uxtb r2, r3 - 80038e0: 4b4a ldr r3, [pc, #296] ; (8003a0c ) - 80038e2: 709a strb r2, [r3, #2] + 8003898: 68bb ldr r3, [r7, #8] + 800389a: 22fa movs r2, #250 ; 0xfa + 800389c: 0091 lsls r1, r2, #2 + 800389e: 0018 movs r0, r3 + 80038a0: f7fc fcbc bl 800021c <__divsi3> + 80038a4: 0003 movs r3, r0 + 80038a6: 210a movs r1, #10 + 80038a8: 0018 movs r0, r3 + 80038aa: f7fc fd9d bl 80003e8 <__aeabi_idivmod> + 80038ae: 000b movs r3, r1 + 80038b0: b2da uxtb r2, r3 + 80038b2: 4b4a ldr r3, [pc, #296] ; (80039dc ) + 80038b4: 709a strb r2, [r3, #2] dis_buff.d_num[1]=((countdown/10000)%10); - 80038e4: 693b ldr r3, [r7, #16] - 80038e6: 494f ldr r1, [pc, #316] ; (8003a24 ) - 80038e8: 0018 movs r0, r3 - 80038ea: f7fc fc97 bl 800021c <__divsi3> - 80038ee: 0003 movs r3, r0 - 80038f0: 210a movs r1, #10 - 80038f2: 0018 movs r0, r3 - 80038f4: f7fc fd78 bl 80003e8 <__aeabi_idivmod> - 80038f8: 000b movs r3, r1 - 80038fa: b2da uxtb r2, r3 - 80038fc: 4b43 ldr r3, [pc, #268] ; (8003a0c ) - 80038fe: 705a strb r2, [r3, #1] + 80038b6: 68bb ldr r3, [r7, #8] + 80038b8: 494f ldr r1, [pc, #316] ; (80039f8 ) + 80038ba: 0018 movs r0, r3 + 80038bc: f7fc fcae bl 800021c <__divsi3> + 80038c0: 0003 movs r3, r0 + 80038c2: 210a movs r1, #10 + 80038c4: 0018 movs r0, r3 + 80038c6: f7fc fd8f bl 80003e8 <__aeabi_idivmod> + 80038ca: 000b movs r3, r1 + 80038cc: b2da uxtb r2, r3 + 80038ce: 4b43 ldr r3, [pc, #268] ; (80039dc ) + 80038d0: 705a strb r2, [r3, #1] dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; - 8003900: 4b42 ldr r3, [pc, #264] ; (8003a0c ) - 8003902: 785b ldrb r3, [r3, #1] - 8003904: 2b00 cmp r3, #0 - 8003906: d002 beq.n 800390e - 8003908: 4b40 ldr r3, [pc, #256] ; (8003a0c ) - 800390a: 785a ldrb r2, [r3, #1] - 800390c: e000 b.n 8003910 - 800390e: 2210 movs r2, #16 - 8003910: 4b3e ldr r3, [pc, #248] ; (8003a0c ) - 8003912: 705a strb r2, [r3, #1] + 80038d2: 4b42 ldr r3, [pc, #264] ; (80039dc ) + 80038d4: 785b ldrb r3, [r3, #1] + 80038d6: 2b00 cmp r3, #0 + 80038d8: d002 beq.n 80038e0 + 80038da: 4b40 ldr r3, [pc, #256] ; (80039dc ) + 80038dc: 785a ldrb r2, [r3, #1] + 80038de: e000 b.n 80038e2 + 80038e0: 2210 movs r2, #16 + 80038e2: 4b3e ldr r3, [pc, #248] ; (80039dc ) + 80038e4: 705a strb r2, [r3, #1] dis_buff.dot4=1; - 8003914: 4b3d ldr r3, [pc, #244] ; (8003a0c ) - 8003916: 2201 movs r2, #1 - 8003918: 72da strb r2, [r3, #11] + 80038e6: 4b3d ldr r3, [pc, #244] ; (80039dc ) + 80038e8: 2201 movs r2, #1 + 80038ea: 72da strb r2, [r3, #11] if(key2.code!=0) - 800391a: 4b43 ldr r3, [pc, #268] ; (8003a28 ) - 800391c: 681b ldr r3, [r3, #0] - 800391e: 2b00 cmp r3, #0 - 8003920: d013 beq.n 800394a + 80038ec: 4b43 ldr r3, [pc, #268] ; (80039fc ) + 80038ee: 681b ldr r3, [r3, #0] + 80038f0: 2b00 cmp r3, #0 + 80038f2: d014 beq.n 800391e { mode=2; - 8003922: 2317 movs r3, #23 - 8003924: 18fb adds r3, r7, r3 - 8003926: 2202 movs r2, #2 - 8003928: 701a strb r2, [r3, #0] - countdown=countdown_set-countdown; - 800392a: 68fa ldr r2, [r7, #12] - 800392c: 693b ldr r3, [r7, #16] - 800392e: 1ad3 subs r3, r2, r3 - 8003930: 613b str r3, [r7, #16] + 80038f4: 230f movs r3, #15 + 80038f6: 18fb adds r3, r7, r3 + 80038f8: 2202 movs r2, #2 + 80038fa: 701a strb r2, [r3, #0] + countdown=config.countdown_set-countdown; + 80038fc: 4b39 ldr r3, [pc, #228] ; (80039e4 ) + 80038fe: 689a ldr r2, [r3, #8] + 8003900: 68bb ldr r3, [r7, #8] + 8003902: 1ad3 subs r3, r2, r3 + 8003904: 60bb str r3, [r7, #8] moto.moto1a=10; - 8003932: 4b38 ldr r3, [pc, #224] ; (8003a14 ) - 8003934: 220a movs r2, #10 - 8003936: 721a strb r2, [r3, #8] + 8003906: 4b38 ldr r3, [pc, #224] ; (80039e8 ) + 8003908: 220a movs r2, #10 + 800390a: 721a strb r2, [r3, #8] moto.moto1b=0; - 8003938: 4b36 ldr r3, [pc, #216] ; (8003a14 ) - 800393a: 2200 movs r2, #0 - 800393c: 725a strb r2, [r3, #9] + 800390c: 4b36 ldr r3, [pc, #216] ; (80039e8 ) + 800390e: 2200 movs r2, #0 + 8003910: 725a strb r2, [r3, #9] moto.moto2a=10; - 800393e: 4b35 ldr r3, [pc, #212] ; (8003a14 ) - 8003940: 220a movs r2, #10 - 8003942: 729a strb r2, [r3, #10] + 8003912: 4b35 ldr r3, [pc, #212] ; (80039e8 ) + 8003914: 220a movs r2, #10 + 8003916: 729a strb r2, [r3, #10] moto.moto2b=0; - 8003944: 4b33 ldr r3, [pc, #204] ; (8003a14 ) - 8003946: 2200 movs r2, #0 - 8003948: 72da strb r2, [r3, #11] + 8003918: 4b33 ldr r3, [pc, #204] ; (80039e8 ) + 800391a: 2200 movs r2, #0 + 800391c: 72da strb r2, [r3, #11] } if(key4.code!=0||(moto.moto1a==0&&moto.moto1b==0&&moto.moto2a==0&&moto.moto2b==0)) - 800394a: 4b33 ldr r3, [pc, #204] ; (8003a18 ) - 800394c: 681b ldr r3, [r3, #0] - 800394e: 2b00 cmp r3, #0 - 8003950: d10f bne.n 8003972 - 8003952: 4b30 ldr r3, [pc, #192] ; (8003a14 ) - 8003954: 7a1b ldrb r3, [r3, #8] - 8003956: 2b00 cmp r3, #0 - 8003958: d10f bne.n 800397a - 800395a: 4b2e ldr r3, [pc, #184] ; (8003a14 ) - 800395c: 7a5b ldrb r3, [r3, #9] - 800395e: 2b00 cmp r3, #0 - 8003960: d10b bne.n 800397a - 8003962: 4b2c ldr r3, [pc, #176] ; (8003a14 ) - 8003964: 7a9b ldrb r3, [r3, #10] - 8003966: 2b00 cmp r3, #0 - 8003968: d107 bne.n 800397a - 800396a: 4b2a ldr r3, [pc, #168] ; (8003a14 ) - 800396c: 7adb ldrb r3, [r3, #11] - 800396e: 2b00 cmp r3, #0 - 8003970: d103 bne.n 800397a + 800391e: 4b33 ldr r3, [pc, #204] ; (80039ec ) + 8003920: 681b ldr r3, [r3, #0] + 8003922: 2b00 cmp r3, #0 + 8003924: d10f bne.n 8003946 + 8003926: 4b30 ldr r3, [pc, #192] ; (80039e8 ) + 8003928: 7a1b ldrb r3, [r3, #8] + 800392a: 2b00 cmp r3, #0 + 800392c: d10f bne.n 800394e + 800392e: 4b2e ldr r3, [pc, #184] ; (80039e8 ) + 8003930: 7a5b ldrb r3, [r3, #9] + 8003932: 2b00 cmp r3, #0 + 8003934: d10b bne.n 800394e + 8003936: 4b2c ldr r3, [pc, #176] ; (80039e8 ) + 8003938: 7a9b ldrb r3, [r3, #10] + 800393a: 2b00 cmp r3, #0 + 800393c: d107 bne.n 800394e + 800393e: 4b2a ldr r3, [pc, #168] ; (80039e8 ) + 8003940: 7adb ldrb r3, [r3, #11] + 8003942: 2b00 cmp r3, #0 + 8003944: d103 bne.n 800394e { mode=1; - 8003972: 2317 movs r3, #23 - 8003974: 18fb adds r3, r7, r3 - 8003976: 2201 movs r2, #1 - 8003978: 701a strb r2, [r3, #0] + 8003946: 230f movs r3, #15 + 8003948: 18fb adds r3, r7, r3 + 800394a: 2201 movs r2, #1 + 800394c: 701a strb r2, [r3, #0] } - if(ADCC.adc_value[1]>400||(moto_in1==1&&READ_MOT_IN1==0)) - 800397a: 4b28 ldr r3, [pc, #160] ; (8003a1c ) - 800397c: 691a ldr r2, [r3, #16] - 800397e: 23c8 movs r3, #200 ; 0xc8 - 8003980: 005b lsls r3, r3, #1 - 8003982: 429a cmp r2, r3 - 8003984: dc0b bgt.n 800399e - 8003986: 230b movs r3, #11 - 8003988: 18fb adds r3, r7, r3 - 800398a: 781b ldrb r3, [r3, #0] - 800398c: 2b01 cmp r3, #1 - 800398e: d10c bne.n 80039aa - 8003990: 4b23 ldr r3, [pc, #140] ; (8003a20 ) - 8003992: 2101 movs r1, #1 - 8003994: 0018 movs r0, r3 - 8003996: f7fd ff63 bl 8001860 - 800399a: 1e03 subs r3, r0, #0 - 800399c: d105 bne.n 80039aa + if(ADCC.adc_value[1]>400||(moto_sw_buff1==1&&READ_MOT_IN1==0)) + 800394e: 4b28 ldr r3, [pc, #160] ; (80039f0 ) + 8003950: 691a ldr r2, [r3, #16] + 8003952: 23c8 movs r3, #200 ; 0xc8 + 8003954: 005b lsls r3, r3, #1 + 8003956: 429a cmp r2, r3 + 8003958: dc0a bgt.n 8003970 + 800395a: 1dfb adds r3, r7, #7 + 800395c: 781b ldrb r3, [r3, #0] + 800395e: 2b01 cmp r3, #1 + 8003960: d10c bne.n 800397c + 8003962: 4b24 ldr r3, [pc, #144] ; (80039f4 ) + 8003964: 2101 movs r1, #1 + 8003966: 0018 movs r0, r3 + 8003968: f7fd ff7a bl 8001860 + 800396c: 1e03 subs r3, r0, #0 + 800396e: d105 bne.n 800397c { //overload_times=0; moto.moto1a=0; - 800399e: 4b1d ldr r3, [pc, #116] ; (8003a14 ) - 80039a0: 2200 movs r2, #0 - 80039a2: 721a strb r2, [r3, #8] + 8003970: 4b1d ldr r3, [pc, #116] ; (80039e8 ) + 8003972: 2200 movs r2, #0 + 8003974: 721a strb r2, [r3, #8] moto.moto1b=0; - 80039a4: 4b1b ldr r3, [pc, #108] ; (8003a14 ) - 80039a6: 2200 movs r2, #0 - 80039a8: 725a strb r2, [r3, #9] + 8003976: 4b1c ldr r3, [pc, #112] ; (80039e8 ) + 8003978: 2200 movs r2, #0 + 800397a: 725a strb r2, [r3, #9] } - if(ADCC.adc_value[0]>400||(moto_in2==1&&READ_MOT_IN2==0)) - 80039aa: 4b1c ldr r3, [pc, #112] ; (8003a1c ) - 80039ac: 68da ldr r2, [r3, #12] - 80039ae: 23c8 movs r3, #200 ; 0xc8 - 80039b0: 005b lsls r3, r3, #1 - 80039b2: 429a cmp r2, r3 - 80039b4: dc0d bgt.n 80039d2 - 80039b6: 230a movs r3, #10 - 80039b8: 18fb adds r3, r7, r3 - 80039ba: 781b ldrb r3, [r3, #0] - 80039bc: 2b01 cmp r3, #1 - 80039be: d000 beq.n 80039c2 - 80039c0: e0b9 b.n 8003b36 - 80039c2: 4b17 ldr r3, [pc, #92] ; (8003a20 ) - 80039c4: 2102 movs r1, #2 - 80039c6: 0018 movs r0, r3 - 80039c8: f7fd ff4a bl 8001860 - 80039cc: 1e03 subs r3, r0, #0 - 80039ce: d000 beq.n 80039d2 - 80039d0: e0b1 b.n 8003b36 + if(ADCC.adc_value[0]>400||(moto_sw_buff2==1&&READ_MOT_IN2==0)) + 800397c: 4b1c ldr r3, [pc, #112] ; (80039f0 ) + 800397e: 68da ldr r2, [r3, #12] + 8003980: 23c8 movs r3, #200 ; 0xc8 + 8003982: 005b lsls r3, r3, #1 + 8003984: 429a cmp r2, r3 + 8003986: dc0c bgt.n 80039a2 + 8003988: 1dbb adds r3, r7, #6 + 800398a: 781b ldrb r3, [r3, #0] + 800398c: 2b01 cmp r3, #1 + 800398e: d000 beq.n 8003992 + 8003990: e0cc b.n 8003b2c + 8003992: 4b18 ldr r3, [pc, #96] ; (80039f4 ) + 8003994: 2102 movs r1, #2 + 8003996: 0018 movs r0, r3 + 8003998: f7fd ff62 bl 8001860 + 800399c: 1e03 subs r3, r0, #0 + 800399e: d000 beq.n 80039a2 + 80039a0: e0c4 b.n 8003b2c { //overload_times2=0; moto.moto2a=0; - 80039d2: 4b10 ldr r3, [pc, #64] ; (8003a14 ) - 80039d4: 2200 movs r2, #0 - 80039d6: 729a strb r2, [r3, #10] + 80039a2: 4b11 ldr r3, [pc, #68] ; (80039e8 ) + 80039a4: 2200 movs r2, #0 + 80039a6: 729a strb r2, [r3, #10] moto.moto2b=0; - 80039d8: 4b0e ldr r3, [pc, #56] ; (8003a14 ) - 80039da: 2200 movs r2, #0 - 80039dc: 72da strb r2, [r3, #11] + 80039a8: 4b0f ldr r3, [pc, #60] ; (80039e8 ) + 80039aa: 2200 movs r2, #0 + 80039ac: 72da strb r2, [r3, #11] } break; - 80039de: e0aa b.n 8003b36 + 80039ae: e0bd b.n 8003b2c case 4: //setting mode dis_buff.led_run=0; - 80039e0: 4b0a ldr r3, [pc, #40] ; (8003a0c ) - 80039e2: 2200 movs r2, #0 - 80039e4: 731a strb r2, [r3, #12] + 80039b0: 4b0a ldr r3, [pc, #40] ; (80039dc ) + 80039b2: 2200 movs r2, #0 + 80039b4: 731a strb r2, [r3, #12] if(HAL_GetTick()>move) - 80039e6: f7fd f80f bl 8000a08 - 80039ea: 0002 movs r2, r0 - 80039ec: 69bb ldr r3, [r7, #24] - 80039ee: 4293 cmp r3, r2 - 80039f0: d240 bcs.n 8003a74 + 80039b6: f7fd f827 bl 8000a08 + 80039ba: 0002 movs r2, r0 + 80039bc: 693b ldr r3, [r7, #16] + 80039be: 4293 cmp r3, r2 + 80039c0: d23d bcs.n 8003a3e { move=HAL_GetTick()+100; - 80039f2: f7fd f809 bl 8000a08 - 80039f6: 0003 movs r3, r0 - 80039f8: 3364 adds r3, #100 ; 0x64 - 80039fa: 61bb str r3, [r7, #24] + 80039c2: f7fd f821 bl 8000a08 + 80039c6: 0003 movs r3, r0 + 80039c8: 3364 adds r3, #100 ; 0x64 + 80039ca: 613b str r3, [r7, #16] if(dis_buff.dot4==1) - 80039fc: 4b03 ldr r3, [pc, #12] ; (8003a0c ) - 80039fe: 7adb ldrb r3, [r3, #11] - 8003a00: 2b01 cmp r3, #1 - 8003a02: d113 bne.n 8003a2c + 80039cc: 4b03 ldr r3, [pc, #12] ; (80039dc ) + 80039ce: 7adb ldrb r3, [r3, #11] + 80039d0: 2b01 cmp r3, #1 + 80039d2: d115 bne.n 8003a00 { dis_buff.dot4=0; - 8003a04: 4b01 ldr r3, [pc, #4] ; (8003a0c ) - 8003a06: 2200 movs r2, #0 - 8003a08: 72da strb r2, [r3, #11] - 8003a0a: e012 b.n 8003a32 - 8003a0c: 20000038 .word 0x20000038 - 8003a10: 20000100 .word 0x20000100 - 8003a14: 20000134 .word 0x20000134 - 8003a18: 200000d8 .word 0x200000d8 - 8003a1c: 20000110 .word 0x20000110 - 8003a20: 48001400 .word 0x48001400 - 8003a24: 00002710 .word 0x00002710 - 8003a28: 20000124 .word 0x20000124 + 80039d4: 4b01 ldr r3, [pc, #4] ; (80039dc ) + 80039d6: 2200 movs r2, #0 + 80039d8: 72da strb r2, [r3, #11] + 80039da: e014 b.n 8003a06 + 80039dc: 20000038 .word 0x20000038 + 80039e0: 20000124 .word 0x20000124 + 80039e4: 20000144 .word 0x20000144 + 80039e8: 200000e8 .word 0x200000e8 + 80039ec: 200000fc .word 0x200000fc + 80039f0: 2000004c .word 0x2000004c + 80039f4: 48001400 .word 0x48001400 + 80039f8: 00002710 .word 0x00002710 + 80039fc: 20000134 .word 0x20000134 }else { dis_buff.dot4=1; - 8003a2c: 4b94 ldr r3, [pc, #592] ; (8003c80 ) - 8003a2e: 2201 movs r2, #1 - 8003a30: 72da strb r2, [r3, #11] + 8003a00: 4b9b ldr r3, [pc, #620] ; (8003c70 ) + 8003a02: 2201 movs r2, #1 + 8003a04: 72da strb r2, [r3, #11] } countdown-=100; - 8003a32: 693b ldr r3, [r7, #16] - 8003a34: 3b64 subs r3, #100 ; 0x64 - 8003a36: 613b str r3, [r7, #16] - if(countdown<0) - 8003a38: 693b ldr r3, [r7, #16] - 8003a3a: 2b00 cmp r3, #0 - 8003a3c: da03 bge.n 8003a46 - { - mode=1; - 8003a3e: 2317 movs r3, #23 - 8003a40: 18fb adds r3, r7, r3 - 8003a42: 2201 movs r2, #1 - 8003a44: 701a strb r2, [r3, #0] - } + 8003a06: 68bb ldr r3, [r7, #8] + 8003a08: 3b64 subs r3, #100 ; 0x64 + 8003a0a: 60bb str r3, [r7, #8] - if(key2.code<0){countdown_set+=1000;countdown=10000;} - 8003a46: 4b8f ldr r3, [pc, #572] ; (8003c84 ) - 8003a48: 681b ldr r3, [r3, #0] - 8003a4a: 2b00 cmp r3, #0 - 8003a4c: da07 bge.n 8003a5e - 8003a4e: 68fb ldr r3, [r7, #12] - 8003a50: 22fa movs r2, #250 ; 0xfa - 8003a52: 0092 lsls r2, r2, #2 - 8003a54: 4694 mov ip, r2 - 8003a56: 4463 add r3, ip - 8003a58: 60fb str r3, [r7, #12] - 8003a5a: 4b8b ldr r3, [pc, #556] ; (8003c88 ) - 8003a5c: 613b str r3, [r7, #16] - if(key3.code<0){countdown_set-=1000;countdown=10000;} - 8003a5e: 4b8b ldr r3, [pc, #556] ; (8003c8c ) - 8003a60: 681b ldr r3, [r3, #0] - 8003a62: 2b00 cmp r3, #0 - 8003a64: da06 bge.n 8003a74 - 8003a66: 68fb ldr r3, [r7, #12] - 8003a68: 4a89 ldr r2, [pc, #548] ; (8003c90 ) - 8003a6a: 4694 mov ip, r2 - 8003a6c: 4463 add r3, ip - 8003a6e: 60fb str r3, [r7, #12] - 8003a70: 4b85 ldr r3, [pc, #532] ; (8003c88 ) - 8003a72: 613b str r3, [r7, #16] + + if(key2.code<0){config.countdown_set+=1000;countdown=10000;} + 8003a0c: 4b99 ldr r3, [pc, #612] ; (8003c74 ) + 8003a0e: 681b ldr r3, [r3, #0] + 8003a10: 2b00 cmp r3, #0 + 8003a12: da08 bge.n 8003a26 + 8003a14: 4b98 ldr r3, [pc, #608] ; (8003c78 ) + 8003a16: 689b ldr r3, [r3, #8] + 8003a18: 22fa movs r2, #250 ; 0xfa + 8003a1a: 0092 lsls r2, r2, #2 + 8003a1c: 189a adds r2, r3, r2 + 8003a1e: 4b96 ldr r3, [pc, #600] ; (8003c78 ) + 8003a20: 609a str r2, [r3, #8] + 8003a22: 4b96 ldr r3, [pc, #600] ; (8003c7c ) + 8003a24: 60bb str r3, [r7, #8] + if(key3.code<0){config.countdown_set-=1000;countdown=10000;} + 8003a26: 4b96 ldr r3, [pc, #600] ; (8003c80 ) + 8003a28: 681b ldr r3, [r3, #0] + 8003a2a: 2b00 cmp r3, #0 + 8003a2c: da07 bge.n 8003a3e + 8003a2e: 4b92 ldr r3, [pc, #584] ; (8003c78 ) + 8003a30: 689b ldr r3, [r3, #8] + 8003a32: 4a94 ldr r2, [pc, #592] ; (8003c84 ) + 8003a34: 189a adds r2, r3, r2 + 8003a36: 4b90 ldr r3, [pc, #576] ; (8003c78 ) + 8003a38: 609a str r2, [r3, #8] + 8003a3a: 4b90 ldr r3, [pc, #576] ; (8003c7c ) + 8003a3c: 60bb str r3, [r7, #8] } - if(key2.code>0){countdown_set+=100;countdown=10000;} - 8003a74: 4b83 ldr r3, [pc, #524] ; (8003c84 ) - 8003a76: 681b ldr r3, [r3, #0] - 8003a78: 2b00 cmp r3, #0 - 8003a7a: dd04 ble.n 8003a86 - 8003a7c: 68fb ldr r3, [r7, #12] - 8003a7e: 3364 adds r3, #100 ; 0x64 - 8003a80: 60fb str r3, [r7, #12] - 8003a82: 4b81 ldr r3, [pc, #516] ; (8003c88 ) - 8003a84: 613b str r3, [r7, #16] - if(key3.code>0){countdown_set-=100;countdown=10000;} - 8003a86: 4b81 ldr r3, [pc, #516] ; (8003c8c ) - 8003a88: 681b ldr r3, [r3, #0] - 8003a8a: 2b00 cmp r3, #0 - 8003a8c: dd04 ble.n 8003a98 - 8003a8e: 68fb ldr r3, [r7, #12] - 8003a90: 3b64 subs r3, #100 ; 0x64 - 8003a92: 60fb str r3, [r7, #12] - 8003a94: 4b7c ldr r3, [pc, #496] ; (8003c88 ) - 8003a96: 613b str r3, [r7, #16] - if(countdown_set<100){countdown_set=100;} - 8003a98: 68fb ldr r3, [r7, #12] - 8003a9a: 2b63 cmp r3, #99 ; 0x63 - 8003a9c: dc01 bgt.n 8003aa2 - 8003a9e: 2364 movs r3, #100 ; 0x64 - 8003aa0: 60fb str r3, [r7, #12] - if(countdown_set>60000){countdown_set=60000;} - 8003aa2: 68fb ldr r3, [r7, #12] - 8003aa4: 4a7b ldr r2, [pc, #492] ; (8003c94 ) - 8003aa6: 4293 cmp r3, r2 - 8003aa8: dd01 ble.n 8003aae - 8003aaa: 4b7a ldr r3, [pc, #488] ; (8003c94 ) - 8003aac: 60fb str r3, [r7, #12] + if(key2.code>0){config.countdown_set+=100;countdown=10000;} + 8003a3e: 4b8d ldr r3, [pc, #564] ; (8003c74 ) + 8003a40: 681b ldr r3, [r3, #0] + 8003a42: 2b00 cmp r3, #0 + 8003a44: dd07 ble.n 8003a56 + 8003a46: 4b8c ldr r3, [pc, #560] ; (8003c78 ) + 8003a48: 689b ldr r3, [r3, #8] + 8003a4a: 3364 adds r3, #100 ; 0x64 + 8003a4c: 001a movs r2, r3 + 8003a4e: 4b8a ldr r3, [pc, #552] ; (8003c78 ) + 8003a50: 609a str r2, [r3, #8] + 8003a52: 4b8a ldr r3, [pc, #552] ; (8003c7c ) + 8003a54: 60bb str r3, [r7, #8] + if(key3.code>0){config.countdown_set-=100;countdown=10000;} + 8003a56: 4b8a ldr r3, [pc, #552] ; (8003c80 ) + 8003a58: 681b ldr r3, [r3, #0] + 8003a5a: 2b00 cmp r3, #0 + 8003a5c: dd07 ble.n 8003a6e + 8003a5e: 4b86 ldr r3, [pc, #536] ; (8003c78 ) + 8003a60: 689b ldr r3, [r3, #8] + 8003a62: 3b64 subs r3, #100 ; 0x64 + 8003a64: 001a movs r2, r3 + 8003a66: 4b84 ldr r3, [pc, #528] ; (8003c78 ) + 8003a68: 609a str r2, [r3, #8] + 8003a6a: 4b84 ldr r3, [pc, #528] ; (8003c7c ) + 8003a6c: 60bb str r3, [r7, #8] + if(config.countdown_set<100){config.countdown_set=100;} + 8003a6e: 4b82 ldr r3, [pc, #520] ; (8003c78 ) + 8003a70: 689b ldr r3, [r3, #8] + 8003a72: 2b63 cmp r3, #99 ; 0x63 + 8003a74: dc02 bgt.n 8003a7c + 8003a76: 4b80 ldr r3, [pc, #512] ; (8003c78 ) + 8003a78: 2264 movs r2, #100 ; 0x64 + 8003a7a: 609a str r2, [r3, #8] + if(config.countdown_set>60000){config.countdown_set=60000;} + 8003a7c: 4b7e ldr r3, [pc, #504] ; (8003c78 ) + 8003a7e: 689b ldr r3, [r3, #8] + 8003a80: 4a81 ldr r2, [pc, #516] ; (8003c88 ) + 8003a82: 4293 cmp r3, r2 + 8003a84: dd02 ble.n 8003a8c + 8003a86: 4b7c ldr r3, [pc, #496] ; (8003c78 ) + 8003a88: 4a7f ldr r2, [pc, #508] ; (8003c88 ) + 8003a8a: 609a str r2, [r3, #8] - if(key4.code!=0){mode=1;} - 8003aae: 4b7a ldr r3, [pc, #488] ; (8003c98 ) - 8003ab0: 681b ldr r3, [r3, #0] - 8003ab2: 2b00 cmp r3, #0 - 8003ab4: d003 beq.n 8003abe - 8003ab6: 2317 movs r3, #23 - 8003ab8: 18fb adds r3, r7, r3 - 8003aba: 2201 movs r2, #1 - 8003abc: 701a strb r2, [r3, #0] - dis_buff.d_num[3]=(countdown_set/100)%10; - 8003abe: 68fb ldr r3, [r7, #12] - 8003ac0: 2164 movs r1, #100 ; 0x64 - 8003ac2: 0018 movs r0, r3 - 8003ac4: f7fc fbaa bl 800021c <__divsi3> - 8003ac8: 0003 movs r3, r0 - 8003aca: 210a movs r1, #10 - 8003acc: 0018 movs r0, r3 - 8003ace: f7fc fc8b bl 80003e8 <__aeabi_idivmod> - 8003ad2: 000b movs r3, r1 - 8003ad4: b2da uxtb r2, r3 - 8003ad6: 4b6a ldr r3, [pc, #424] ; (8003c80 ) - 8003ad8: 70da strb r2, [r3, #3] - dis_buff.d_num[2]=(countdown_set/1000)%10; - 8003ada: 68fb ldr r3, [r7, #12] - 8003adc: 22fa movs r2, #250 ; 0xfa - 8003ade: 0091 lsls r1, r2, #2 - 8003ae0: 0018 movs r0, r3 - 8003ae2: f7fc fb9b bl 800021c <__divsi3> - 8003ae6: 0003 movs r3, r0 - 8003ae8: 210a movs r1, #10 - 8003aea: 0018 movs r0, r3 - 8003aec: f7fc fc7c bl 80003e8 <__aeabi_idivmod> - 8003af0: 000b movs r3, r1 - 8003af2: b2da uxtb r2, r3 - 8003af4: 4b62 ldr r3, [pc, #392] ; (8003c80 ) - 8003af6: 709a strb r2, [r3, #2] - dis_buff.d_num[1]=((countdown_set/10000)%10); - 8003af8: 68fb ldr r3, [r7, #12] - 8003afa: 4963 ldr r1, [pc, #396] ; (8003c88 ) + if(key4.code!=0||countdown<0) + 8003a8c: 4b7f ldr r3, [pc, #508] ; (8003c8c ) + 8003a8e: 681b ldr r3, [r3, #0] + 8003a90: 2b00 cmp r3, #0 + 8003a92: d102 bne.n 8003a9a + 8003a94: 68bb ldr r3, [r7, #8] + 8003a96: 2b00 cmp r3, #0 + 8003a98: da09 bge.n 8003aae + { + mode=1; + 8003a9a: 230f movs r3, #15 + 8003a9c: 18fb adds r3, r7, r3 + 8003a9e: 2201 movs r2, #1 + 8003aa0: 701a strb r2, [r3, #0] + AT24CXX_Write(EEPROM_BEGIN_ADD,(char *)&config,sizeof(config_setting)); + 8003aa2: 4b75 ldr r3, [pc, #468] ; (8003c78 ) + 8003aa4: 220c movs r2, #12 + 8003aa6: 0019 movs r1, r3 + 8003aa8: 2020 movs r0, #32 + 8003aaa: f7fe fecf bl 800284c + } + dis_buff.d_num[3]=(config.countdown_set/100)%10; + 8003aae: 4b72 ldr r3, [pc, #456] ; (8003c78 ) + 8003ab0: 689b ldr r3, [r3, #8] + 8003ab2: 2164 movs r1, #100 ; 0x64 + 8003ab4: 0018 movs r0, r3 + 8003ab6: f7fc fbb1 bl 800021c <__divsi3> + 8003aba: 0003 movs r3, r0 + 8003abc: 210a movs r1, #10 + 8003abe: 0018 movs r0, r3 + 8003ac0: f7fc fc92 bl 80003e8 <__aeabi_idivmod> + 8003ac4: 000b movs r3, r1 + 8003ac6: b2da uxtb r2, r3 + 8003ac8: 4b69 ldr r3, [pc, #420] ; (8003c70 ) + 8003aca: 70da strb r2, [r3, #3] + dis_buff.d_num[2]=(config.countdown_set/1000)%10; + 8003acc: 4b6a ldr r3, [pc, #424] ; (8003c78 ) + 8003ace: 689b ldr r3, [r3, #8] + 8003ad0: 22fa movs r2, #250 ; 0xfa + 8003ad2: 0091 lsls r1, r2, #2 + 8003ad4: 0018 movs r0, r3 + 8003ad6: f7fc fba1 bl 800021c <__divsi3> + 8003ada: 0003 movs r3, r0 + 8003adc: 210a movs r1, #10 + 8003ade: 0018 movs r0, r3 + 8003ae0: f7fc fc82 bl 80003e8 <__aeabi_idivmod> + 8003ae4: 000b movs r3, r1 + 8003ae6: b2da uxtb r2, r3 + 8003ae8: 4b61 ldr r3, [pc, #388] ; (8003c70 ) + 8003aea: 709a strb r2, [r3, #2] + dis_buff.d_num[1]=((config.countdown_set/10000)%10); + 8003aec: 4b62 ldr r3, [pc, #392] ; (8003c78 ) + 8003aee: 689b ldr r3, [r3, #8] + 8003af0: 4962 ldr r1, [pc, #392] ; (8003c7c ) + 8003af2: 0018 movs r0, r3 + 8003af4: f7fc fb92 bl 800021c <__divsi3> + 8003af8: 0003 movs r3, r0 + 8003afa: 210a movs r1, #10 8003afc: 0018 movs r0, r3 - 8003afe: f7fc fb8d bl 800021c <__divsi3> - 8003b02: 0003 movs r3, r0 - 8003b04: 210a movs r1, #10 - 8003b06: 0018 movs r0, r3 - 8003b08: f7fc fc6e bl 80003e8 <__aeabi_idivmod> - 8003b0c: 000b movs r3, r1 - 8003b0e: b2da uxtb r2, r3 - 8003b10: 4b5b ldr r3, [pc, #364] ; (8003c80 ) - 8003b12: 705a strb r2, [r3, #1] + 8003afe: f7fc fc73 bl 80003e8 <__aeabi_idivmod> + 8003b02: 000b movs r3, r1 + 8003b04: b2da uxtb r2, r3 + 8003b06: 4b5a ldr r3, [pc, #360] ; (8003c70 ) + 8003b08: 705a strb r2, [r3, #1] dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; - 8003b14: 4b5a ldr r3, [pc, #360] ; (8003c80 ) - 8003b16: 785b ldrb r3, [r3, #1] - 8003b18: 2b00 cmp r3, #0 - 8003b1a: d002 beq.n 8003b22 - 8003b1c: 4b58 ldr r3, [pc, #352] ; (8003c80 ) - 8003b1e: 785a ldrb r2, [r3, #1] - 8003b20: e000 b.n 8003b24 - 8003b22: 2210 movs r2, #16 - 8003b24: 4b56 ldr r3, [pc, #344] ; (8003c80 ) - 8003b26: 705a strb r2, [r3, #1] + 8003b0a: 4b59 ldr r3, [pc, #356] ; (8003c70 ) + 8003b0c: 785b ldrb r3, [r3, #1] + 8003b0e: 2b00 cmp r3, #0 + 8003b10: d002 beq.n 8003b18 + 8003b12: 4b57 ldr r3, [pc, #348] ; (8003c70 ) + 8003b14: 785a ldrb r2, [r3, #1] + 8003b16: e000 b.n 8003b1a + 8003b18: 2210 movs r2, #16 + 8003b1a: 4b55 ldr r3, [pc, #340] ; (8003c70 ) + 8003b1c: 705a strb r2, [r3, #1] break; - 8003b28: e006 b.n 8003b38 + 8003b1e: e006 b.n 8003b2e break; - 8003b2a: 46c0 nop ; (mov r8, r8) - 8003b2c: e004 b.n 8003b38 + 8003b20: 46c0 nop ; (mov r8, r8) + 8003b22: e004 b.n 8003b2e break; - 8003b2e: 46c0 nop ; (mov r8, r8) - 8003b30: e002 b.n 8003b38 + 8003b24: 46c0 nop ; (mov r8, r8) + 8003b26: e002 b.n 8003b2e break; - 8003b32: 46c0 nop ; (mov r8, r8) - 8003b34: e000 b.n 8003b38 + 8003b28: 46c0 nop ; (mov r8, r8) + 8003b2a: e000 b.n 8003b2e break; - 8003b36: 46c0 nop ; (mov r8, r8) + 8003b2c: 46c0 nop ; (mov r8, r8) if(r480.add[0]==config.key_code[0]&&r480.add[1]==config.key_code[1]) - 8003b38: 4b58 ldr r3, [pc, #352] ; (8003c9c ) - 8003b3a: 781a ldrb r2, [r3, #0] - 8003b3c: 4b58 ldr r3, [pc, #352] ; (8003ca0 ) - 8003b3e: 781b ldrb r3, [r3, #0] - 8003b40: 429a cmp r2, r3 - 8003b42: d122 bne.n 8003b8a - 8003b44: 4b55 ldr r3, [pc, #340] ; (8003c9c ) - 8003b46: 785a ldrb r2, [r3, #1] - 8003b48: 4b55 ldr r3, [pc, #340] ; (8003ca0 ) - 8003b4a: 785b ldrb r3, [r3, #1] - 8003b4c: 429a cmp r2, r3 - 8003b4e: d11c bne.n 8003b8a + 8003b2e: 4b58 ldr r3, [pc, #352] ; (8003c90 ) + 8003b30: 781a ldrb r2, [r3, #0] + 8003b32: 4b51 ldr r3, [pc, #324] ; (8003c78 ) + 8003b34: 781b ldrb r3, [r3, #0] + 8003b36: 429a cmp r2, r3 + 8003b38: d122 bne.n 8003b80 + 8003b3a: 4b55 ldr r3, [pc, #340] ; (8003c90 ) + 8003b3c: 785a ldrb r2, [r3, #1] + 8003b3e: 4b4e ldr r3, [pc, #312] ; (8003c78 ) + 8003b40: 785b ldrb r3, [r3, #1] + 8003b42: 429a cmp r2, r3 + 8003b44: d11c bne.n 8003b80 { switch(r480.key) - 8003b50: 4b52 ldr r3, [pc, #328] ; (8003c9c ) - 8003b52: 789b ldrb r3, [r3, #2] - 8003b54: 2bde cmp r3, #222 ; 0xde - 8003b56: d014 beq.n 8003b82 - 8003b58: dc18 bgt.n 8003b8c - 8003b5a: 2bdd cmp r3, #221 ; 0xdd - 8003b5c: d00d beq.n 8003b7a - 8003b5e: dc15 bgt.n 8003b8c - 8003b60: 2bd7 cmp r3, #215 ; 0xd7 - 8003b62: d002 beq.n 8003b6a - 8003b64: 2bdb cmp r3, #219 ; 0xdb - 8003b66: d004 beq.n 8003b72 - 8003b68: e010 b.n 8003b8c + 8003b46: 4b52 ldr r3, [pc, #328] ; (8003c90 ) + 8003b48: 789b ldrb r3, [r3, #2] + 8003b4a: 2bde cmp r3, #222 ; 0xde + 8003b4c: d014 beq.n 8003b78 + 8003b4e: dc18 bgt.n 8003b82 + 8003b50: 2bdd cmp r3, #221 ; 0xdd + 8003b52: d00d beq.n 8003b70 + 8003b54: dc15 bgt.n 8003b82 + 8003b56: 2bd7 cmp r3, #215 ; 0xd7 + 8003b58: d002 beq.n 8003b60 + 8003b5a: 2bdb cmp r3, #219 ; 0xdb + 8003b5c: d004 beq.n 8003b68 + 8003b5e: e010 b.n 8003b82 { case 0xd7: dis_buff.button_flag[0]=1; - 8003b6a: 4b45 ldr r3, [pc, #276] ; (8003c80 ) - 8003b6c: 2201 movs r2, #1 - 8003b6e: 711a strb r2, [r3, #4] + 8003b60: 4b43 ldr r3, [pc, #268] ; (8003c70 ) + 8003b62: 2201 movs r2, #1 + 8003b64: 711a strb r2, [r3, #4] break; - 8003b70: e00c b.n 8003b8c + 8003b66: e00c b.n 8003b82 case 0xdb: dis_buff.button_flag[1]=1; - 8003b72: 4b43 ldr r3, [pc, #268] ; (8003c80 ) - 8003b74: 2201 movs r2, #1 - 8003b76: 715a strb r2, [r3, #5] + 8003b68: 4b41 ldr r3, [pc, #260] ; (8003c70 ) + 8003b6a: 2201 movs r2, #1 + 8003b6c: 715a strb r2, [r3, #5] break; - 8003b78: e008 b.n 8003b8c + 8003b6e: e008 b.n 8003b82 case 0xdd: dis_buff.button_flag[2]=1; - 8003b7a: 4b41 ldr r3, [pc, #260] ; (8003c80 ) - 8003b7c: 2201 movs r2, #1 - 8003b7e: 719a strb r2, [r3, #6] + 8003b70: 4b3f ldr r3, [pc, #252] ; (8003c70 ) + 8003b72: 2201 movs r2, #1 + 8003b74: 719a strb r2, [r3, #6] break; - 8003b80: e004 b.n 8003b8c + 8003b76: e004 b.n 8003b82 case 0xde: dis_buff.button_flag[3]=1; - 8003b82: 4b3f ldr r3, [pc, #252] ; (8003c80 ) - 8003b84: 2201 movs r2, #1 - 8003b86: 71da strb r2, [r3, #7] + 8003b78: 4b3d ldr r3, [pc, #244] ; (8003c70 ) + 8003b7a: 2201 movs r2, #1 + 8003b7c: 71da strb r2, [r3, #7] break; - 8003b88: e000 b.n 8003b8c + 8003b7e: e000 b.n 8003b82 } } - 8003b8a: 46c0 nop ; (mov r8, r8) + 8003b80: 46c0 nop ; (mov r8, r8) r480.key=0; - 8003b8c: 4b43 ldr r3, [pc, #268] ; (8003c9c ) - 8003b8e: 2200 movs r2, #0 - 8003b90: 709a strb r2, [r3, #2] + 8003b82: 4b43 ldr r3, [pc, #268] ; (8003c90 ) + 8003b84: 2200 movs r2, #0 + 8003b86: 709a strb r2, [r3, #2] r480.add[0]=0; - 8003b92: 4b42 ldr r3, [pc, #264] ; (8003c9c ) - 8003b94: 2200 movs r2, #0 - 8003b96: 701a strb r2, [r3, #0] + 8003b88: 4b41 ldr r3, [pc, #260] ; (8003c90 ) + 8003b8a: 2200 movs r2, #0 + 8003b8c: 701a strb r2, [r3, #0] r480.add[1]=0; - 8003b98: 4b40 ldr r3, [pc, #256] ; (8003c9c ) - 8003b9a: 2200 movs r2, #0 - 8003b9c: 705a strb r2, [r3, #1] + 8003b8e: 4b40 ldr r3, [pc, #256] ; (8003c90 ) + 8003b90: 2200 movs r2, #0 + 8003b92: 705a strb r2, [r3, #1] GEI_BUTTON_CODE(&key1,dis_buff.button_flag[0]); - 8003b9e: 4b38 ldr r3, [pc, #224] ; (8003c80 ) - 8003ba0: 791a ldrb r2, [r3, #4] - 8003ba2: 4b40 ldr r3, [pc, #256] ; (8003ca4 ) - 8003ba4: 0011 movs r1, r2 - 8003ba6: 0018 movs r0, r3 - 8003ba8: f7fe fd62 bl 8002670 + 8003b94: 4b36 ldr r3, [pc, #216] ; (8003c70 ) + 8003b96: 791a ldrb r2, [r3, #4] + 8003b98: 4b3e ldr r3, [pc, #248] ; (8003c94 ) + 8003b9a: 0011 movs r1, r2 + 8003b9c: 0018 movs r0, r3 + 8003b9e: f7fe fd67 bl 8002670 GEI_BUTTON_CODE(&key2,dis_buff.button_flag[1]); - 8003bac: 4b34 ldr r3, [pc, #208] ; (8003c80 ) - 8003bae: 795a ldrb r2, [r3, #5] - 8003bb0: 4b34 ldr r3, [pc, #208] ; (8003c84 ) - 8003bb2: 0011 movs r1, r2 - 8003bb4: 0018 movs r0, r3 - 8003bb6: f7fe fd5b bl 8002670 + 8003ba2: 4b33 ldr r3, [pc, #204] ; (8003c70 ) + 8003ba4: 795a ldrb r2, [r3, #5] + 8003ba6: 4b33 ldr r3, [pc, #204] ; (8003c74 ) + 8003ba8: 0011 movs r1, r2 + 8003baa: 0018 movs r0, r3 + 8003bac: f7fe fd60 bl 8002670 GEI_BUTTON_CODE(&key3,dis_buff.button_flag[2]); - 8003bba: 4b31 ldr r3, [pc, #196] ; (8003c80 ) - 8003bbc: 799a ldrb r2, [r3, #6] - 8003bbe: 4b33 ldr r3, [pc, #204] ; (8003c8c ) - 8003bc0: 0011 movs r1, r2 - 8003bc2: 0018 movs r0, r3 - 8003bc4: f7fe fd54 bl 8002670 + 8003bb0: 4b2f ldr r3, [pc, #188] ; (8003c70 ) + 8003bb2: 799a ldrb r2, [r3, #6] + 8003bb4: 4b32 ldr r3, [pc, #200] ; (8003c80 ) + 8003bb6: 0011 movs r1, r2 + 8003bb8: 0018 movs r0, r3 + 8003bba: f7fe fd59 bl 8002670 GEI_BUTTON_CODE(&key4,dis_buff.button_flag[3]); - 8003bc8: 4b2d ldr r3, [pc, #180] ; (8003c80 ) - 8003bca: 79da ldrb r2, [r3, #7] - 8003bcc: 4b32 ldr r3, [pc, #200] ; (8003c98 ) - 8003bce: 0011 movs r1, r2 - 8003bd0: 0018 movs r0, r3 - 8003bd2: f7fe fd4d bl 8002670 + 8003bbe: 4b2c ldr r3, [pc, #176] ; (8003c70 ) + 8003bc0: 79da ldrb r2, [r3, #7] + 8003bc2: 4b32 ldr r3, [pc, #200] ; (8003c8c ) + 8003bc4: 0011 movs r1, r2 + 8003bc6: 0018 movs r0, r3 + 8003bc8: f7fe fd52 bl 8002670 dis_buff.button_flag[0]=0; - 8003bd6: 4b2a ldr r3, [pc, #168] ; (8003c80 ) - 8003bd8: 2200 movs r2, #0 - 8003bda: 711a strb r2, [r3, #4] + 8003bcc: 4b28 ldr r3, [pc, #160] ; (8003c70 ) + 8003bce: 2200 movs r2, #0 + 8003bd0: 711a strb r2, [r3, #4] dis_buff.button_flag[1]=0; - 8003bdc: 4b28 ldr r3, [pc, #160] ; (8003c80 ) - 8003bde: 2200 movs r2, #0 - 8003be0: 715a strb r2, [r3, #5] + 8003bd2: 4b27 ldr r3, [pc, #156] ; (8003c70 ) + 8003bd4: 2200 movs r2, #0 + 8003bd6: 715a strb r2, [r3, #5] dis_buff.button_flag[2]=0; - 8003be2: 4b27 ldr r3, [pc, #156] ; (8003c80 ) - 8003be4: 2200 movs r2, #0 - 8003be6: 719a strb r2, [r3, #6] + 8003bd8: 4b25 ldr r3, [pc, #148] ; (8003c70 ) + 8003bda: 2200 movs r2, #0 + 8003bdc: 719a strb r2, [r3, #6] dis_buff.button_flag[3]=0; - 8003be8: 4b25 ldr r3, [pc, #148] ; (8003c80 ) - 8003bea: 2200 movs r2, #0 - 8003bec: 71da strb r2, [r3, #7] + 8003bde: 4b24 ldr r3, [pc, #144] ; (8003c70 ) + 8003be0: 2200 movs r2, #0 + 8003be2: 71da strb r2, [r3, #7] - if(moto_in1!=READ_MOT_IN1) - 8003bee: 4b2e ldr r3, [pc, #184] ; (8003ca8 ) - 8003bf0: 2101 movs r1, #1 - 8003bf2: 0018 movs r0, r3 - 8003bf4: f7fd fe34 bl 8001860 - 8003bf8: 0003 movs r3, r0 - 8003bfa: 001a movs r2, r3 - 8003bfc: 200b movs r0, #11 - 8003bfe: 183b adds r3, r7, r0 - 8003c00: 781b ldrb r3, [r3, #0] - 8003c02: 4293 cmp r3, r2 - 8003c04: d014 beq.n 8003c30 + if(moto_sw_buff1!=READ_MOT_IN1) + 8003be4: 4b2c ldr r3, [pc, #176] ; (8003c98 ) + 8003be6: 2101 movs r1, #1 + 8003be8: 0018 movs r0, r3 + 8003bea: f7fd fe39 bl 8001860 + 8003bee: 0003 movs r3, r0 + 8003bf0: 001a movs r2, r3 + 8003bf2: 1dfb adds r3, r7, #7 + 8003bf4: 781b ldrb r3, [r3, #0] + 8003bf6: 4293 cmp r3, r2 + 8003bf8: d013 beq.n 8003c22 { - moto_in1_pp++; - 8003c06: 2108 movs r1, #8 - 8003c08: 187b adds r3, r7, r1 - 8003c0a: 881a ldrh r2, [r3, #0] - 8003c0c: 187b adds r3, r7, r1 - 8003c0e: 3201 adds r2, #1 - 8003c10: 801a strh r2, [r3, #0] - if(moto_in1_pp==100) - 8003c12: 187b adds r3, r7, r1 - 8003c14: 881b ldrh r3, [r3, #0] - 8003c16: 2b64 cmp r3, #100 ; 0x64 - 8003c18: d10a bne.n 8003c30 + moto_sw_buff1_pp++; + 8003bfa: 1d3b adds r3, r7, #4 + 8003bfc: 881a ldrh r2, [r3, #0] + 8003bfe: 1d3b adds r3, r7, #4 + 8003c00: 3201 adds r2, #1 + 8003c02: 801a strh r2, [r3, #0] + if(moto_sw_buff1_pp==100) + 8003c04: 1d3b adds r3, r7, #4 + 8003c06: 881b ldrh r3, [r3, #0] + 8003c08: 2b64 cmp r3, #100 ; 0x64 + 8003c0a: d10a bne.n 8003c22 { - moto_in1_pp=0; - 8003c1a: 187b adds r3, r7, r1 - 8003c1c: 2200 movs r2, #0 - 8003c1e: 801a strh r2, [r3, #0] - moto_in1=READ_MOT_IN1; - 8003c20: 183c adds r4, r7, r0 - 8003c22: 4b21 ldr r3, [pc, #132] ; (8003ca8 ) - 8003c24: 2101 movs r1, #1 + moto_sw_buff1_pp=0; + 8003c0c: 1d3b adds r3, r7, #4 + 8003c0e: 2200 movs r2, #0 + 8003c10: 801a strh r2, [r3, #0] + moto_sw_buff1=READ_MOT_IN1; + 8003c12: 1dfc adds r4, r7, #7 + 8003c14: 4b20 ldr r3, [pc, #128] ; (8003c98 ) + 8003c16: 2101 movs r1, #1 + 8003c18: 0018 movs r0, r3 + 8003c1a: f7fd fe21 bl 8001860 + 8003c1e: 0003 movs r3, r0 + 8003c20: 7023 strb r3, [r4, #0] + } + } + + if(moto_sw_buff2!=READ_MOT_IN2) + 8003c22: 4b1d ldr r3, [pc, #116] ; (8003c98 ) + 8003c24: 2102 movs r1, #2 8003c26: 0018 movs r0, r3 8003c28: f7fd fe1a bl 8001860 8003c2c: 0003 movs r3, r0 - 8003c2e: 7023 strb r3, [r4, #0] - } - } - - if(moto_in2!=READ_MOT_IN2) - 8003c30: 4b1d ldr r3, [pc, #116] ; (8003ca8 ) - 8003c32: 2102 movs r1, #2 - 8003c34: 0018 movs r0, r3 - 8003c36: f7fd fe13 bl 8001860 - 8003c3a: 0003 movs r3, r0 - 8003c3c: 001a movs r2, r3 - 8003c3e: 210a movs r1, #10 - 8003c40: 187b adds r3, r7, r1 - 8003c42: 781b ldrb r3, [r3, #0] - 8003c44: 4293 cmp r3, r2 - 8003c46: d013 beq.n 8003c70 + 8003c2e: 001a movs r2, r3 + 8003c30: 1dbb adds r3, r7, #6 + 8003c32: 781b ldrb r3, [r3, #0] + 8003c34: 4293 cmp r3, r2 + 8003c36: d013 beq.n 8003c60 { - moto_in2_pp++; - 8003c48: 1dbb adds r3, r7, #6 - 8003c4a: 881a ldrh r2, [r3, #0] - 8003c4c: 1dbb adds r3, r7, #6 - 8003c4e: 3201 adds r2, #1 - 8003c50: 801a strh r2, [r3, #0] - if(moto_in2_pp==100) - 8003c52: 1dbb adds r3, r7, #6 - 8003c54: 881b ldrh r3, [r3, #0] - 8003c56: 2b64 cmp r3, #100 ; 0x64 - 8003c58: d10a bne.n 8003c70 + moto_sw_buff2_pp++; + 8003c38: 1cbb adds r3, r7, #2 + 8003c3a: 881a ldrh r2, [r3, #0] + 8003c3c: 1cbb adds r3, r7, #2 + 8003c3e: 3201 adds r2, #1 + 8003c40: 801a strh r2, [r3, #0] + if(moto_sw_buff2_pp==100) + 8003c42: 1cbb adds r3, r7, #2 + 8003c44: 881b ldrh r3, [r3, #0] + 8003c46: 2b64 cmp r3, #100 ; 0x64 + 8003c48: d10a bne.n 8003c60 { - moto_in2_pp=0; - 8003c5a: 1dbb adds r3, r7, #6 - 8003c5c: 2200 movs r2, #0 - 8003c5e: 801a strh r2, [r3, #0] - moto_in2=READ_MOT_IN2; - 8003c60: 187c adds r4, r7, r1 - 8003c62: 4b11 ldr r3, [pc, #68] ; (8003ca8 ) - 8003c64: 2102 movs r1, #2 - 8003c66: 0018 movs r0, r3 - 8003c68: f7fd fdfa bl 8001860 - 8003c6c: 0003 movs r3, r0 - 8003c6e: 7023 strb r3, [r4, #0] + moto_sw_buff2_pp=0; + 8003c4a: 1cbb adds r3, r7, #2 + 8003c4c: 2200 movs r2, #0 + 8003c4e: 801a strh r2, [r3, #0] + moto_sw_buff2=READ_MOT_IN2; + 8003c50: 1dbc adds r4, r7, #6 + 8003c52: 4b11 ldr r3, [pc, #68] ; (8003c98 ) + 8003c54: 2102 movs r1, #2 + 8003c56: 0018 movs r0, r3 + 8003c58: f7fd fe02 bl 8001860 + 8003c5c: 0003 movs r3, r0 + 8003c5e: 7023 strb r3, [r4, #0] } } HT1621_Display_GetButton(); - 8003c70: f7ff fad4 bl 800321c - hc2_sever(); - 8003c74: f7ff f9be bl 8002ff4 - moto_server(); - 8003c78: f7ff fa00 bl 800307c + 8003c60: f7ff fac4 bl 80031ec + HC595_control_server(); + 8003c64: f7ff f9c6 bl 8002ff4 + Motoer_control_server(); + 8003c68: f7ff fa08 bl 800307c for(char a=0;a<2;a++) - 8003c7c: f7ff fbff bl 800347e - 8003c80: 20000038 .word 0x20000038 - 8003c84: 20000124 .word 0x20000124 - 8003c88: 00002710 .word 0x00002710 - 8003c8c: 20000100 .word 0x20000100 - 8003c90: fffffc18 .word 0xfffffc18 - 8003c94: 0000ea60 .word 0x0000ea60 - 8003c98: 200000d8 .word 0x200000d8 - 8003c9c: 200000e8 .word 0x200000e8 - 8003ca0: 20000144 .word 0x20000144 - 8003ca4: 200000f0 .word 0x200000f0 - 8003ca8: 48001400 .word 0x48001400 + 8003c6c: f7ff fbec bl 8003448 + 8003c70: 20000038 .word 0x20000038 + 8003c74: 20000134 .word 0x20000134 + 8003c78: 20000144 .word 0x20000144 + 8003c7c: 00002710 .word 0x00002710 + 8003c80: 20000124 .word 0x20000124 + 8003c84: fffffc18 .word 0xfffffc18 + 8003c88: 0000ea60 .word 0x0000ea60 + 8003c8c: 200000fc .word 0x200000fc + 8003c90: 2000010c .word 0x2000010c + 8003c94: 20000114 .word 0x20000114 + 8003c98: 48001400 .word 0x48001400 -08003cac : +08003c9c : int read_char_flag=0; char read_data_buffer[3]; char read_begin=0; void r480_init() { - 8003cac: b580 push {r7, lr} - 8003cae: af00 add r7, sp, #0 + 8003c9c: b580 push {r7, lr} + 8003c9e: af00 add r7, sp, #0 HAL_TIM_Base_Start_IT(&htim14); - 8003cb0: 4b04 ldr r3, [pc, #16] ; (8003cc4 ) - 8003cb2: 0018 movs r0, r3 - 8003cb4: f7fe fae4 bl 8002280 + 8003ca0: 4b04 ldr r3, [pc, #16] ; (8003cb4 ) + 8003ca2: 0018 movs r0, r3 + 8003ca4: f7fe faec bl 8002280 r480.times=0; - 8003cb8: 4b03 ldr r3, [pc, #12] ; (8003cc8 ) - 8003cba: 2200 movs r2, #0 - 8003cbc: 809a strh r2, [r3, #4] + 8003ca8: 4b03 ldr r3, [pc, #12] ; (8003cb8 ) + 8003caa: 2200 movs r2, #0 + 8003cac: 809a strh r2, [r3, #4] } - 8003cbe: 46c0 nop ; (mov r8, r8) - 8003cc0: 46bd mov sp, r7 - 8003cc2: bd80 pop {r7, pc} - 8003cc4: 2000004c .word 0x2000004c - 8003cc8: 200000e8 .word 0x200000e8 + 8003cae: 46c0 nop ; (mov r8, r8) + 8003cb0: 46bd mov sp, r7 + 8003cb2: bd80 pop {r7, pc} + 8003cb4: 20000060 .word 0x20000060 + 8003cb8: 2000010c .word 0x2000010c -08003ccc : +08003cbc : void read_433_exit() { - 8003ccc: b590 push {r4, r7, lr} - 8003cce: b083 sub sp, #12 - 8003cd0: af00 add r7, sp, #0 + 8003cbc: b590 push {r4, r7, lr} + 8003cbe: b083 sub sp, #12 + 8003cc0: af00 add r7, sp, #0 char a=read_infrared; - 8003cd2: 1dfc adds r4, r7, #7 - 8003cd4: 2390 movs r3, #144 ; 0x90 - 8003cd6: 05db lsls r3, r3, #23 - 8003cd8: 2108 movs r1, #8 - 8003cda: 0018 movs r0, r3 - 8003cdc: f7fd fdc0 bl 8001860 - 8003ce0: 0003 movs r3, r0 - 8003ce2: 7023 strb r3, [r4, #0] + 8003cc2: 1dfc adds r4, r7, #7 + 8003cc4: 2390 movs r3, #144 ; 0x90 + 8003cc6: 05db lsls r3, r3, #23 + 8003cc8: 2108 movs r1, #8 + 8003cca: 0018 movs r0, r3 + 8003ccc: f7fd fdc8 bl 8001860 + 8003cd0: 0003 movs r3, r0 + 8003cd2: 7023 strb r3, [r4, #0] int b; if(read_begin==0) - 8003ce4: 4b41 ldr r3, [pc, #260] ; (8003dec ) - 8003ce6: 781b ldrb r3, [r3, #0] - 8003ce8: 2b00 cmp r3, #0 - 8003cea: d123 bne.n 8003d34 + 8003cd4: 4b41 ldr r3, [pc, #260] ; (8003ddc ) + 8003cd6: 781b ldrb r3, [r3, #0] + 8003cd8: 2b00 cmp r3, #0 + 8003cda: d123 bne.n 8003d24 { if(a==0) - 8003cec: 1dfb adds r3, r7, #7 - 8003cee: 781b ldrb r3, [r3, #0] - 8003cf0: 2b00 cmp r3, #0 - 8003cf2: d103 bne.n 8003cfc + 8003cdc: 1dfb adds r3, r7, #7 + 8003cde: 781b ldrb r3, [r3, #0] + 8003ce0: 2b00 cmp r3, #0 + 8003ce2: d103 bne.n 8003cec { timer_100us_tick=0; - 8003cf4: 4b3e ldr r3, [pc, #248] ; (8003df0 ) - 8003cf6: 2200 movs r2, #0 - 8003cf8: 801a strh r2, [r3, #0] + 8003ce4: 4b3e ldr r3, [pc, #248] ; (8003de0 ) + 8003ce6: 2200 movs r2, #0 + 8003ce8: 801a strh r2, [r3, #0] return ; - 8003cfa: e073 b.n 8003de4 + 8003cea: e073 b.n 8003dd4 }else { if(timer_100us_tick>70&&timer_100us_tick<100) - 8003cfc: 4b3c ldr r3, [pc, #240] ; (8003df0 ) - 8003cfe: 881b ldrh r3, [r3, #0] - 8003d00: 2b46 cmp r3, #70 ; 0x46 - 8003d02: d800 bhi.n 8003d06 - 8003d04: e06e b.n 8003de4 - 8003d06: 4b3a ldr r3, [pc, #232] ; (8003df0 ) - 8003d08: 881b ldrh r3, [r3, #0] - 8003d0a: 2b63 cmp r3, #99 ; 0x63 - 8003d0c: d86a bhi.n 8003de4 + 8003cec: 4b3c ldr r3, [pc, #240] ; (8003de0 ) + 8003cee: 881b ldrh r3, [r3, #0] + 8003cf0: 2b46 cmp r3, #70 ; 0x46 + 8003cf2: d800 bhi.n 8003cf6 + 8003cf4: e06e b.n 8003dd4 + 8003cf6: 4b3a ldr r3, [pc, #232] ; (8003de0 ) + 8003cf8: 881b ldrh r3, [r3, #0] + 8003cfa: 2b63 cmp r3, #99 ; 0x63 + 8003cfc: d86a bhi.n 8003dd4 { read_begin=1; - 8003d0e: 4b37 ldr r3, [pc, #220] ; (8003dec ) - 8003d10: 2201 movs r2, #1 - 8003d12: 701a strb r2, [r3, #0] + 8003cfe: 4b37 ldr r3, [pc, #220] ; (8003ddc ) + 8003d00: 2201 movs r2, #1 + 8003d02: 701a strb r2, [r3, #0] r480.times++; - 8003d14: 4b37 ldr r3, [pc, #220] ; (8003df4 ) - 8003d16: 889b ldrh r3, [r3, #4] - 8003d18: 3301 adds r3, #1 - 8003d1a: b29a uxth r2, r3 - 8003d1c: 4b35 ldr r3, [pc, #212] ; (8003df4 ) - 8003d1e: 809a strh r2, [r3, #4] + 8003d04: 4b37 ldr r3, [pc, #220] ; (8003de4 ) + 8003d06: 889b ldrh r3, [r3, #4] + 8003d08: 3301 adds r3, #1 + 8003d0a: b29a uxth r2, r3 + 8003d0c: 4b35 ldr r3, [pc, #212] ; (8003de4 ) + 8003d0e: 809a strh r2, [r3, #4] read_bit_flag=0; - 8003d20: 4b35 ldr r3, [pc, #212] ; (8003df8 ) - 8003d22: 2200 movs r2, #0 - 8003d24: 601a str r2, [r3, #0] + 8003d10: 4b35 ldr r3, [pc, #212] ; (8003de8 ) + 8003d12: 2200 movs r2, #0 + 8003d14: 601a str r2, [r3, #0] read_char_flag=0; - 8003d26: 4b35 ldr r3, [pc, #212] ; (8003dfc ) - 8003d28: 2200 movs r2, #0 - 8003d2a: 601a str r2, [r3, #0] + 8003d16: 4b35 ldr r3, [pc, #212] ; (8003dec ) + 8003d18: 2200 movs r2, #0 + 8003d1a: 601a str r2, [r3, #0] timer_100us_tick=0; - 8003d2c: 4b30 ldr r3, [pc, #192] ; (8003df0 ) - 8003d2e: 2200 movs r2, #0 - 8003d30: 801a strh r2, [r3, #0] + 8003d1c: 4b30 ldr r3, [pc, #192] ; (8003de0 ) + 8003d1e: 2200 movs r2, #0 + 8003d20: 801a strh r2, [r3, #0] return ; - 8003d32: e057 b.n 8003de4 + 8003d22: e057 b.n 8003dd4 } } }else { if(timer_100us_tick<5) - 8003d34: 4b2e ldr r3, [pc, #184] ; (8003df0 ) - 8003d36: 881b ldrh r3, [r3, #0] - 8003d38: 2b04 cmp r3, #4 - 8003d3a: d803 bhi.n 8003d44 + 8003d24: 4b2e ldr r3, [pc, #184] ; (8003de0 ) + 8003d26: 881b ldrh r3, [r3, #0] + 8003d28: 2b04 cmp r3, #4 + 8003d2a: d803 bhi.n 8003d34 { timer_100us_tick=0; - 8003d3c: 4b2c ldr r3, [pc, #176] ; (8003df0 ) - 8003d3e: 2200 movs r2, #0 - 8003d40: 801a strh r2, [r3, #0] + 8003d2c: 4b2c ldr r3, [pc, #176] ; (8003de0 ) + 8003d2e: 2200 movs r2, #0 + 8003d30: 801a strh r2, [r3, #0] return ; - 8003d42: e04f b.n 8003de4 + 8003d32: e04f b.n 8003dd4 }else if(timer_100us_tick<12) - 8003d44: 4b2a ldr r3, [pc, #168] ; (8003df0 ) - 8003d46: 881b ldrh r3, [r3, #0] - 8003d48: 2b0b cmp r3, #11 - 8003d4a: d844 bhi.n 8003dd6 + 8003d34: 4b2a ldr r3, [pc, #168] ; (8003de0 ) + 8003d36: 881b ldrh r3, [r3, #0] + 8003d38: 2b0b cmp r3, #11 + 8003d3a: d844 bhi.n 8003dc6 { read_data_buffer[read_char_flag]<<=1; - 8003d4c: 4b2b ldr r3, [pc, #172] ; (8003dfc ) - 8003d4e: 681b ldr r3, [r3, #0] - 8003d50: 4a2b ldr r2, [pc, #172] ; (8003e00 ) - 8003d52: 5cd1 ldrb r1, [r2, r3] - 8003d54: 4b29 ldr r3, [pc, #164] ; (8003dfc ) - 8003d56: 681a ldr r2, [r3, #0] - 8003d58: 1c0b adds r3, r1, #0 - 8003d5a: 18db adds r3, r3, r3 - 8003d5c: b2d9 uxtb r1, r3 - 8003d5e: 4b28 ldr r3, [pc, #160] ; (8003e00 ) - 8003d60: 5499 strb r1, [r3, r2] + 8003d3c: 4b2b ldr r3, [pc, #172] ; (8003dec ) + 8003d3e: 681b ldr r3, [r3, #0] + 8003d40: 4a2b ldr r2, [pc, #172] ; (8003df0 ) + 8003d42: 5cd1 ldrb r1, [r2, r3] + 8003d44: 4b29 ldr r3, [pc, #164] ; (8003dec ) + 8003d46: 681a ldr r2, [r3, #0] + 8003d48: 1c0b adds r3, r1, #0 + 8003d4a: 18db adds r3, r3, r3 + 8003d4c: b2d9 uxtb r1, r3 + 8003d4e: 4b28 ldr r3, [pc, #160] ; (8003df0 ) + 8003d50: 5499 strb r1, [r3, r2] if(a==1) - 8003d62: 1dfb adds r3, r7, #7 - 8003d64: 781b ldrb r3, [r3, #0] - 8003d66: 2b01 cmp r3, #1 - 8003d68: d10a bne.n 8003d80 + 8003d52: 1dfb adds r3, r7, #7 + 8003d54: 781b ldrb r3, [r3, #0] + 8003d56: 2b01 cmp r3, #1 + 8003d58: d10a bne.n 8003d70 { read_data_buffer[read_char_flag]|=0x01; - 8003d6a: 4b24 ldr r3, [pc, #144] ; (8003dfc ) - 8003d6c: 681b ldr r3, [r3, #0] - 8003d6e: 4a24 ldr r2, [pc, #144] ; (8003e00 ) - 8003d70: 5cd2 ldrb r2, [r2, r3] - 8003d72: 4b22 ldr r3, [pc, #136] ; (8003dfc ) - 8003d74: 681b ldr r3, [r3, #0] - 8003d76: 2101 movs r1, #1 - 8003d78: 430a orrs r2, r1 - 8003d7a: b2d1 uxtb r1, r2 - 8003d7c: 4a20 ldr r2, [pc, #128] ; (8003e00 ) - 8003d7e: 54d1 strb r1, [r2, r3] + 8003d5a: 4b24 ldr r3, [pc, #144] ; (8003dec ) + 8003d5c: 681b ldr r3, [r3, #0] + 8003d5e: 4a24 ldr r2, [pc, #144] ; (8003df0 ) + 8003d60: 5cd2 ldrb r2, [r2, r3] + 8003d62: 4b22 ldr r3, [pc, #136] ; (8003dec ) + 8003d64: 681b ldr r3, [r3, #0] + 8003d66: 2101 movs r1, #1 + 8003d68: 430a orrs r2, r1 + 8003d6a: b2d1 uxtb r1, r2 + 8003d6c: 4a20 ldr r2, [pc, #128] ; (8003df0 ) + 8003d6e: 54d1 strb r1, [r2, r3] } read_bit_flag++; - 8003d80: 4b1d ldr r3, [pc, #116] ; (8003df8 ) - 8003d82: 681b ldr r3, [r3, #0] - 8003d84: 1c5a adds r2, r3, #1 - 8003d86: 4b1c ldr r3, [pc, #112] ; (8003df8 ) - 8003d88: 601a str r2, [r3, #0] + 8003d70: 4b1d ldr r3, [pc, #116] ; (8003de8 ) + 8003d72: 681b ldr r3, [r3, #0] + 8003d74: 1c5a adds r2, r3, #1 + 8003d76: 4b1c ldr r3, [pc, #112] ; (8003de8 ) + 8003d78: 601a str r2, [r3, #0] if(read_bit_flag==8) - 8003d8a: 4b1b ldr r3, [pc, #108] ; (8003df8 ) - 8003d8c: 681b ldr r3, [r3, #0] - 8003d8e: 2b08 cmp r3, #8 - 8003d90: d11d bne.n 8003dce + 8003d7a: 4b1b ldr r3, [pc, #108] ; (8003de8 ) + 8003d7c: 681b ldr r3, [r3, #0] + 8003d7e: 2b08 cmp r3, #8 + 8003d80: d11d bne.n 8003dbe { read_bit_flag=0; - 8003d92: 4b19 ldr r3, [pc, #100] ; (8003df8 ) - 8003d94: 2200 movs r2, #0 - 8003d96: 601a str r2, [r3, #0] + 8003d82: 4b19 ldr r3, [pc, #100] ; (8003de8 ) + 8003d84: 2200 movs r2, #0 + 8003d86: 601a str r2, [r3, #0] read_char_flag++; - 8003d98: 4b18 ldr r3, [pc, #96] ; (8003dfc ) - 8003d9a: 681b ldr r3, [r3, #0] - 8003d9c: 1c5a adds r2, r3, #1 - 8003d9e: 4b17 ldr r3, [pc, #92] ; (8003dfc ) - 8003da0: 601a str r2, [r3, #0] + 8003d88: 4b18 ldr r3, [pc, #96] ; (8003dec ) + 8003d8a: 681b ldr r3, [r3, #0] + 8003d8c: 1c5a adds r2, r3, #1 + 8003d8e: 4b17 ldr r3, [pc, #92] ; (8003dec ) + 8003d90: 601a str r2, [r3, #0] if(read_char_flag==3) - 8003da2: 4b16 ldr r3, [pc, #88] ; (8003dfc ) - 8003da4: 681b ldr r3, [r3, #0] - 8003da6: 2b03 cmp r3, #3 - 8003da8: d111 bne.n 8003dce + 8003d92: 4b16 ldr r3, [pc, #88] ; (8003dec ) + 8003d94: 681b ldr r3, [r3, #0] + 8003d96: 2b03 cmp r3, #3 + 8003d98: d111 bne.n 8003dbe { //got data read_char_flag=0; - 8003daa: 4b14 ldr r3, [pc, #80] ; (8003dfc ) - 8003dac: 2200 movs r2, #0 - 8003dae: 601a str r2, [r3, #0] + 8003d9a: 4b14 ldr r3, [pc, #80] ; (8003dec ) + 8003d9c: 2200 movs r2, #0 + 8003d9e: 601a str r2, [r3, #0] timer_100us_tick=0; - 8003db0: 4b0f ldr r3, [pc, #60] ; (8003df0 ) - 8003db2: 2200 movs r2, #0 - 8003db4: 801a strh r2, [r3, #0] + 8003da0: 4b0f ldr r3, [pc, #60] ; (8003de0 ) + 8003da2: 2200 movs r2, #0 + 8003da4: 801a strh r2, [r3, #0] r480.add[0]=read_data_buffer[0]; - 8003db6: 4b12 ldr r3, [pc, #72] ; (8003e00 ) - 8003db8: 781a ldrb r2, [r3, #0] - 8003dba: 4b0e ldr r3, [pc, #56] ; (8003df4 ) - 8003dbc: 701a strb r2, [r3, #0] + 8003da6: 4b12 ldr r3, [pc, #72] ; (8003df0 ) + 8003da8: 781a ldrb r2, [r3, #0] + 8003daa: 4b0e ldr r3, [pc, #56] ; (8003de4 ) + 8003dac: 701a strb r2, [r3, #0] r480.add[1]=read_data_buffer[1]; - 8003dbe: 4b10 ldr r3, [pc, #64] ; (8003e00 ) - 8003dc0: 785a ldrb r2, [r3, #1] - 8003dc2: 4b0c ldr r3, [pc, #48] ; (8003df4 ) - 8003dc4: 705a strb r2, [r3, #1] + 8003dae: 4b10 ldr r3, [pc, #64] ; (8003df0 ) + 8003db0: 785a ldrb r2, [r3, #1] + 8003db2: 4b0c ldr r3, [pc, #48] ; (8003de4 ) + 8003db4: 705a strb r2, [r3, #1] r480.key=read_data_buffer[2]; - 8003dc6: 4b0e ldr r3, [pc, #56] ; (8003e00 ) - 8003dc8: 789a ldrb r2, [r3, #2] - 8003dca: 4b0a ldr r3, [pc, #40] ; (8003df4 ) - 8003dcc: 709a strb r2, [r3, #2] + 8003db6: 4b0e ldr r3, [pc, #56] ; (8003df0 ) + 8003db8: 789a ldrb r2, [r3, #2] + 8003dba: 4b0a ldr r3, [pc, #40] ; (8003de4 ) + 8003dbc: 709a strb r2, [r3, #2] } } timer_100us_tick=0; - 8003dce: 4b08 ldr r3, [pc, #32] ; (8003df0 ) - 8003dd0: 2200 movs r2, #0 - 8003dd2: 801a strh r2, [r3, #0] + 8003dbe: 4b08 ldr r3, [pc, #32] ; (8003de0 ) + 8003dc0: 2200 movs r2, #0 + 8003dc2: 801a strh r2, [r3, #0] return ; - 8003dd4: e006 b.n 8003de4 + 8003dc4: e006 b.n 8003dd4 }else//time out { read_begin=0; - 8003dd6: 4b05 ldr r3, [pc, #20] ; (8003dec ) - 8003dd8: 2200 movs r2, #0 - 8003dda: 701a strb r2, [r3, #0] + 8003dc6: 4b05 ldr r3, [pc, #20] ; (8003ddc ) + 8003dc8: 2200 movs r2, #0 + 8003dca: 701a strb r2, [r3, #0] timer_100us_tick=0; - 8003ddc: 4b04 ldr r3, [pc, #16] ; (8003df0 ) - 8003dde: 2200 movs r2, #0 - 8003de0: 801a strh r2, [r3, #0] + 8003dcc: 4b04 ldr r3, [pc, #16] ; (8003de0 ) + 8003dce: 2200 movs r2, #0 + 8003dd0: 801a strh r2, [r3, #0] return ; - 8003de2: 46c0 nop ; (mov r8, r8) + 8003dd2: 46c0 nop ; (mov r8, r8) } } } - 8003de4: 46bd mov sp, r7 - 8003de6: b003 add sp, #12 - 8003de8: bd90 pop {r4, r7, pc} - 8003dea: 46c0 nop ; (mov r8, r8) - 8003dec: 20000034 .word 0x20000034 - 8003df0: 20000028 .word 0x20000028 - 8003df4: 200000e8 .word 0x200000e8 - 8003df8: 2000002c .word 0x2000002c - 8003dfc: 20000030 .word 0x20000030 - 8003e00: 2000014c .word 0x2000014c + 8003dd4: 46bd mov sp, r7 + 8003dd6: b003 add sp, #12 + 8003dd8: bd90 pop {r4, r7, pc} + 8003dda: 46c0 nop ; (mov r8, r8) + 8003ddc: 20000034 .word 0x20000034 + 8003de0: 20000028 .word 0x20000028 + 8003de4: 2000010c .word 0x2000010c + 8003de8: 2000002c .word 0x2000002c + 8003dec: 20000030 .word 0x20000030 + 8003df0: 20000150 .word 0x20000150 -08003e04 : +08003df4 : void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) { - 8003e04: b580 push {r7, lr} - 8003e06: b082 sub sp, #8 - 8003e08: af00 add r7, sp, #0 - 8003e0a: 0002 movs r2, r0 - 8003e0c: 1dbb adds r3, r7, #6 - 8003e0e: 801a strh r2, [r3, #0] + 8003df4: b580 push {r7, lr} + 8003df6: b082 sub sp, #8 + 8003df8: af00 add r7, sp, #0 + 8003dfa: 0002 movs r2, r0 + 8003dfc: 1dbb adds r3, r7, #6 + 8003dfe: 801a strh r2, [r3, #0] switch(GPIO_Pin) - 8003e10: 1dbb adds r3, r7, #6 - 8003e12: 881b ldrh r3, [r3, #0] - 8003e14: 2b08 cmp r3, #8 - 8003e16: d102 bne.n 8003e1e + 8003e00: 1dbb adds r3, r7, #6 + 8003e02: 881b ldrh r3, [r3, #0] + 8003e04: 2b08 cmp r3, #8 + 8003e06: d102 bne.n 8003e0e { case infeaed_Pin: read_433_exit(); - 8003e18: f7ff ff58 bl 8003ccc + 8003e08: f7ff ff58 bl 8003cbc return ; - 8003e1c: 46c0 nop ; (mov r8, r8) + 8003e0c: 46c0 nop ; (mov r8, r8) break; } } - 8003e1e: 46bd mov sp, r7 - 8003e20: b002 add sp, #8 - 8003e22: bd80 pop {r7, pc} + 8003e0e: 46bd mov sp, r7 + 8003e10: b002 add sp, #8 + 8003e12: bd80 pop {r7, pc} -08003e24 : +08003e14 : void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)//100us { - 8003e24: b580 push {r7, lr} - 8003e26: b082 sub sp, #8 - 8003e28: af00 add r7, sp, #0 - 8003e2a: 6078 str r0, [r7, #4] + 8003e14: b580 push {r7, lr} + 8003e16: b082 sub sp, #8 + 8003e18: af00 add r7, sp, #0 + 8003e1a: 6078 str r0, [r7, #4] if (htim == (&htim14)) - 8003e2c: 687a ldr r2, [r7, #4] - 8003e2e: 4b06 ldr r3, [pc, #24] ; (8003e48 ) - 8003e30: 429a cmp r2, r3 - 8003e32: d105 bne.n 8003e40 + 8003e1c: 687a ldr r2, [r7, #4] + 8003e1e: 4b06 ldr r3, [pc, #24] ; (8003e38 ) + 8003e20: 429a cmp r2, r3 + 8003e22: d105 bne.n 8003e30 { timer_100us_tick++; - 8003e34: 4b05 ldr r3, [pc, #20] ; (8003e4c ) - 8003e36: 881b ldrh r3, [r3, #0] - 8003e38: 3301 adds r3, #1 - 8003e3a: b29a uxth r2, r3 - 8003e3c: 4b03 ldr r3, [pc, #12] ; (8003e4c ) - 8003e3e: 801a strh r2, [r3, #0] + 8003e24: 4b05 ldr r3, [pc, #20] ; (8003e3c ) + 8003e26: 881b ldrh r3, [r3, #0] + 8003e28: 3301 adds r3, #1 + 8003e2a: b29a uxth r2, r3 + 8003e2c: 4b03 ldr r3, [pc, #12] ; (8003e3c ) + 8003e2e: 801a strh r2, [r3, #0] } } - 8003e40: 46c0 nop ; (mov r8, r8) - 8003e42: 46bd mov sp, r7 - 8003e44: b002 add sp, #8 - 8003e46: bd80 pop {r7, pc} - 8003e48: 2000004c .word 0x2000004c - 8003e4c: 20000028 .word 0x20000028 + 8003e30: 46c0 nop ; (mov r8, r8) + 8003e32: 46bd mov sp, r7 + 8003e34: b002 add sp, #8 + 8003e36: bd80 pop {r7, pc} + 8003e38: 20000060 .word 0x20000060 + 8003e3c: 20000028 .word 0x20000028 -08003e50 <__libc_init_array>: - 8003e50: b570 push {r4, r5, r6, lr} - 8003e52: 2600 movs r6, #0 - 8003e54: 4d0c ldr r5, [pc, #48] ; (8003e88 <__libc_init_array+0x38>) - 8003e56: 4c0d ldr r4, [pc, #52] ; (8003e8c <__libc_init_array+0x3c>) - 8003e58: 1b64 subs r4, r4, r5 - 8003e5a: 10a4 asrs r4, r4, #2 - 8003e5c: 42a6 cmp r6, r4 - 8003e5e: d109 bne.n 8003e74 <__libc_init_array+0x24> - 8003e60: 2600 movs r6, #0 - 8003e62: f000 f821 bl 8003ea8 <_init> - 8003e66: 4d0a ldr r5, [pc, #40] ; (8003e90 <__libc_init_array+0x40>) - 8003e68: 4c0a ldr r4, [pc, #40] ; (8003e94 <__libc_init_array+0x44>) - 8003e6a: 1b64 subs r4, r4, r5 - 8003e6c: 10a4 asrs r4, r4, #2 - 8003e6e: 42a6 cmp r6, r4 - 8003e70: d105 bne.n 8003e7e <__libc_init_array+0x2e> - 8003e72: bd70 pop {r4, r5, r6, pc} - 8003e74: 00b3 lsls r3, r6, #2 - 8003e76: 58eb ldr r3, [r5, r3] - 8003e78: 4798 blx r3 - 8003e7a: 3601 adds r6, #1 - 8003e7c: e7ee b.n 8003e5c <__libc_init_array+0xc> - 8003e7e: 00b3 lsls r3, r6, #2 - 8003e80: 58eb ldr r3, [r5, r3] - 8003e82: 4798 blx r3 - 8003e84: 3601 adds r6, #1 - 8003e86: e7f2 b.n 8003e6e <__libc_init_array+0x1e> - 8003e88: 08003f18 .word 0x08003f18 - 8003e8c: 08003f18 .word 0x08003f18 - 8003e90: 08003f18 .word 0x08003f18 - 8003e94: 08003f1c .word 0x08003f1c +08003e40 <__libc_init_array>: + 8003e40: b570 push {r4, r5, r6, lr} + 8003e42: 2600 movs r6, #0 + 8003e44: 4d0c ldr r5, [pc, #48] ; (8003e78 <__libc_init_array+0x38>) + 8003e46: 4c0d ldr r4, [pc, #52] ; (8003e7c <__libc_init_array+0x3c>) + 8003e48: 1b64 subs r4, r4, r5 + 8003e4a: 10a4 asrs r4, r4, #2 + 8003e4c: 42a6 cmp r6, r4 + 8003e4e: d109 bne.n 8003e64 <__libc_init_array+0x24> + 8003e50: 2600 movs r6, #0 + 8003e52: f000 f821 bl 8003e98 <_init> + 8003e56: 4d0a ldr r5, [pc, #40] ; (8003e80 <__libc_init_array+0x40>) + 8003e58: 4c0a ldr r4, [pc, #40] ; (8003e84 <__libc_init_array+0x44>) + 8003e5a: 1b64 subs r4, r4, r5 + 8003e5c: 10a4 asrs r4, r4, #2 + 8003e5e: 42a6 cmp r6, r4 + 8003e60: d105 bne.n 8003e6e <__libc_init_array+0x2e> + 8003e62: bd70 pop {r4, r5, r6, pc} + 8003e64: 00b3 lsls r3, r6, #2 + 8003e66: 58eb ldr r3, [r5, r3] + 8003e68: 4798 blx r3 + 8003e6a: 3601 adds r6, #1 + 8003e6c: e7ee b.n 8003e4c <__libc_init_array+0xc> + 8003e6e: 00b3 lsls r3, r6, #2 + 8003e70: 58eb ldr r3, [r5, r3] + 8003e72: 4798 blx r3 + 8003e74: 3601 adds r6, #1 + 8003e76: e7f2 b.n 8003e5e <__libc_init_array+0x1e> + 8003e78: 08003f08 .word 0x08003f08 + 8003e7c: 08003f08 .word 0x08003f08 + 8003e80: 08003f08 .word 0x08003f08 + 8003e84: 08003f0c .word 0x08003f0c -08003e98 : - 8003e98: 0003 movs r3, r0 - 8003e9a: 1882 adds r2, r0, r2 - 8003e9c: 4293 cmp r3, r2 - 8003e9e: d100 bne.n 8003ea2 - 8003ea0: 4770 bx lr - 8003ea2: 7019 strb r1, [r3, #0] - 8003ea4: 3301 adds r3, #1 - 8003ea6: e7f9 b.n 8003e9c +08003e88 : + 8003e88: 0003 movs r3, r0 + 8003e8a: 1882 adds r2, r0, r2 + 8003e8c: 4293 cmp r3, r2 + 8003e8e: d100 bne.n 8003e92 + 8003e90: 4770 bx lr + 8003e92: 7019 strb r1, [r3, #0] + 8003e94: 3301 adds r3, #1 + 8003e96: e7f9 b.n 8003e8c -08003ea8 <_init>: - 8003ea8: b5f8 push {r3, r4, r5, r6, r7, lr} - 8003eaa: 46c0 nop ; (mov r8, r8) - 8003eac: bcf8 pop {r3, r4, r5, r6, r7} - 8003eae: bc08 pop {r3} - 8003eb0: 469e mov lr, r3 - 8003eb2: 4770 bx lr +08003e98 <_init>: + 8003e98: b5f8 push {r3, r4, r5, r6, r7, lr} + 8003e9a: 46c0 nop ; (mov r8, r8) + 8003e9c: bcf8 pop {r3, r4, r5, r6, r7} + 8003e9e: bc08 pop {r3} + 8003ea0: 469e mov lr, r3 + 8003ea2: 4770 bx lr -08003eb4 <_fini>: - 8003eb4: b5f8 push {r3, r4, r5, r6, r7, lr} - 8003eb6: 46c0 nop ; (mov r8, r8) - 8003eb8: bcf8 pop {r3, r4, r5, r6, r7} - 8003eba: bc08 pop {r3} - 8003ebc: 469e mov lr, r3 - 8003ebe: 4770 bx lr +08003ea4 <_fini>: + 8003ea4: b5f8 push {r3, r4, r5, r6, r7, lr} + 8003ea6: 46c0 nop ; (mov r8, r8) + 8003ea8: bcf8 pop {r3, r4, r5, r6, r7} + 8003eaa: bc08 pop {r3} + 8003eac: 469e mov lr, r3 + 8003eae: 4770 bx lr diff --git a/Debug/Motor_Controller2.map b/Debug/Motor_Controller2.map index 1096f3a..a0c342c 100644 --- a/Debug/Motor_Controller2.map +++ b/Debug/Motor_Controller2.map @@ -28,12 +28,12 @@ pFlash 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0 dis_buff 0x11 ./Core/Src/main.o key1 0x10 ./my_software/my_code.o key3 0x10 ./my_software/my_code.o -ADCC 0x14 ./my_software/my_code.o +ADCC 0x14 ./Core/Src/main.o key2 0x10 ./my_software/my_code.o htim14 0x48 ./Core/Src/main.o hadc 0x40 ./Core/Src/main.o -moto 0x10 ./my_software/my_code.o -config 0x8 ./my_software/my_code.o +moto 0x10 ./Core/Src/main.o +config 0xc ./my_software/my_code.o Discarded input sections @@ -3148,7 +3148,7 @@ Discarded input sections .debug_macro 0x0000000000000000 0x28 ./my_software/ht1621.o .debug_macro 0x0000000000000000 0xf1 ./my_software/ht1621.o .debug_macro 0x0000000000000000 0xa6 ./my_software/ht1621.o - .debug_macro 0x0000000000000000 0x40 ./my_software/ht1621.o + .debug_macro 0x0000000000000000 0x52 ./my_software/ht1621.o .group 0x0000000000000000 0xc ./my_software/iic.o .group 0x0000000000000000 0xc ./my_software/iic.o .group 0x0000000000000000 0xc ./my_software/iic.o @@ -3532,7 +3532,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000008000000 g_pfnVectors 0x00000000080000c0 . = ALIGN (0x4) -.text 0x00000000080000c0 0x3e00 +.text 0x00000000080000c0 0x3df0 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 @@ -3787,121 +3787,121 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .text.Sand_Byte_to_595_2 0x0000000008002f18 0xdc ./my_software/my_code.o 0x0000000008002f18 Sand_Byte_to_595_2 - .text.hc2_sever + .text.HC595_control_server 0x0000000008002ff4 0x88 ./my_software/my_code.o - 0x0000000008002ff4 hc2_sever - .text.moto_server - 0x000000000800307c 0x1a0 ./my_software/my_code.o - 0x000000000800307c moto_server + 0x0000000008002ff4 HC595_control_server + .text.Motoer_control_server + 0x000000000800307c 0x170 ./my_software/my_code.o + 0x000000000800307c Motoer_control_server .text.HT1621_Display_GetButton - 0x000000000800321c 0x124 ./my_software/my_code.o - 0x000000000800321c HT1621_Display_GetButton + 0x00000000080031ec 0x124 ./my_software/my_code.o + 0x00000000080031ec HT1621_Display_GetButton .text.check_need_reset - 0x0000000008003340 0xd8 ./my_software/my_code.o - 0x0000000008003340 check_need_reset - .text.my_code 0x0000000008003418 0x894 ./my_software/my_code.o - 0x0000000008003418 my_code + 0x0000000008003310 0xd8 ./my_software/my_code.o + 0x0000000008003310 check_need_reset + .text.my_code 0x00000000080033e8 0x8b4 ./my_software/my_code.o + 0x00000000080033e8 my_code .text.r480_init - 0x0000000008003cac 0x20 ./my_software/r480r.o - 0x0000000008003cac r480_init + 0x0000000008003c9c 0x20 ./my_software/r480r.o + 0x0000000008003c9c r480_init .text.read_433_exit - 0x0000000008003ccc 0x138 ./my_software/r480r.o - 0x0000000008003ccc read_433_exit + 0x0000000008003cbc 0x138 ./my_software/r480r.o + 0x0000000008003cbc read_433_exit .text.HAL_GPIO_EXTI_Callback - 0x0000000008003e04 0x20 ./my_software/r480r.o - 0x0000000008003e04 HAL_GPIO_EXTI_Callback + 0x0000000008003df4 0x20 ./my_software/r480r.o + 0x0000000008003df4 HAL_GPIO_EXTI_Callback .text.HAL_TIM_PeriodElapsedCallback - 0x0000000008003e24 0x2c ./my_software/r480r.o - 0x0000000008003e24 HAL_TIM_PeriodElapsedCallback + 0x0000000008003e14 0x2c ./my_software/r480r.o + 0x0000000008003e14 HAL_TIM_PeriodElapsedCallback .text.__libc_init_array - 0x0000000008003e50 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) - 0x0000000008003e50 __libc_init_array - .text.memset 0x0000000008003e98 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) - 0x0000000008003e98 memset + 0x0000000008003e40 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) + 0x0000000008003e40 __libc_init_array + .text.memset 0x0000000008003e88 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) + 0x0000000008003e88 memset *(.glue_7) - .glue_7 0x0000000008003ea8 0x0 linker stubs + .glue_7 0x0000000008003e98 0x0 linker stubs *(.glue_7t) - .glue_7t 0x0000000008003ea8 0x0 linker stubs + .glue_7t 0x0000000008003e98 0x0 linker stubs *(.eh_frame) - .eh_frame 0x0000000008003ea8 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 0x0000000008003e98 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 0x0000000008003ea8 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 - 0x0000000008003ea8 _init - .init 0x0000000008003eac 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 0x0000000008003e98 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 + 0x0000000008003e98 _init + .init 0x0000000008003e9c 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 0x0000000008003eb4 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 - 0x0000000008003eb4 _fini - .fini 0x0000000008003eb8 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 - 0x0000000008003ec0 . = ALIGN (0x4) - 0x0000000008003ec0 _etext = . + .fini 0x0000000008003ea4 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 + 0x0000000008003ea4 _fini + .fini 0x0000000008003ea8 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 + 0x0000000008003eb0 . = ALIGN (0x4) + 0x0000000008003eb0 _etext = . -.vfp11_veneer 0x0000000008003ec0 0x0 - .vfp11_veneer 0x0000000008003ec0 0x0 linker stubs +.vfp11_veneer 0x0000000008003eb0 0x0 + .vfp11_veneer 0x0000000008003eb0 0x0 linker stubs -.v4_bx 0x0000000008003ec0 0x0 - .v4_bx 0x0000000008003ec0 0x0 linker stubs +.v4_bx 0x0000000008003eb0 0x0 + .v4_bx 0x0000000008003eb0 0x0 linker stubs -.iplt 0x0000000008003ec0 0x0 - .iplt 0x0000000008003ec0 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 0x0000000008003eb0 0x0 + .iplt 0x0000000008003eb0 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 0x0000000008003ec0 0x58 - 0x0000000008003ec0 . = ALIGN (0x4) +.rodata 0x0000000008003eb0 0x58 + 0x0000000008003eb0 . = ALIGN (0x4) *(.rodata) - .rodata 0x0000000008003ec0 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .rodata 0x0000000008003eb0 0x20 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o *(.rodata*) .rodata.AHBPrescTable - 0x0000000008003ee0 0x10 ./Core/Src/system_stm32f0xx.o - 0x0000000008003ee0 AHBPrescTable + 0x0000000008003ed0 0x10 ./Core/Src/system_stm32f0xx.o + 0x0000000008003ed0 AHBPrescTable .rodata.LED_Tab - 0x0000000008003ef0 0x12 ./my_software/my_code.o - 0x0000000008003ef0 LED_Tab - *fill* 0x0000000008003f02 0x2 + 0x0000000008003ee0 0x12 ./my_software/my_code.o + 0x0000000008003ee0 LED_Tab + *fill* 0x0000000008003ef2 0x2 .rodata.my_code - 0x0000000008003f04 0x14 ./my_software/my_code.o - 0x0000000008003f18 . = ALIGN (0x4) + 0x0000000008003ef4 0x14 ./my_software/my_code.o + 0x0000000008003f08 . = ALIGN (0x4) -.rel.dyn 0x0000000008003f18 0x0 - .rel.iplt 0x0000000008003f18 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 0x0000000008003f08 0x0 + .rel.iplt 0x0000000008003f08 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 0x0000000008003f18 0x0 - 0x0000000008003f18 . = ALIGN (0x4) +.ARM.extab 0x0000000008003f08 0x0 + 0x0000000008003f08 . = ALIGN (0x4) *(.ARM.extab* .gnu.linkonce.armextab.*) - 0x0000000008003f18 . = ALIGN (0x4) + 0x0000000008003f08 . = ALIGN (0x4) -.ARM 0x0000000008003f18 0x0 - 0x0000000008003f18 . = ALIGN (0x4) - 0x0000000008003f18 __exidx_start = . +.ARM 0x0000000008003f08 0x0 + 0x0000000008003f08 . = ALIGN (0x4) + 0x0000000008003f08 __exidx_start = . *(.ARM.exidx*) - 0x0000000008003f18 __exidx_end = . - 0x0000000008003f18 . = ALIGN (0x4) + 0x0000000008003f08 __exidx_end = . + 0x0000000008003f08 . = ALIGN (0x4) -.preinit_array 0x0000000008003f18 0x0 - 0x0000000008003f18 . = ALIGN (0x4) - 0x0000000008003f18 PROVIDE (__preinit_array_start = .) +.preinit_array 0x0000000008003f08 0x0 + 0x0000000008003f08 . = ALIGN (0x4) + 0x0000000008003f08 PROVIDE (__preinit_array_start = .) *(.preinit_array*) - 0x0000000008003f18 PROVIDE (__preinit_array_end = .) - 0x0000000008003f18 . = ALIGN (0x4) + 0x0000000008003f08 PROVIDE (__preinit_array_end = .) + 0x0000000008003f08 . = ALIGN (0x4) -.init_array 0x0000000008003f18 0x4 - 0x0000000008003f18 . = ALIGN (0x4) - 0x0000000008003f18 PROVIDE (__init_array_start = .) +.init_array 0x0000000008003f08 0x4 + 0x0000000008003f08 . = ALIGN (0x4) + 0x0000000008003f08 PROVIDE (__init_array_start = .) *(SORT_BY_NAME(.init_array.*)) *(.init_array*) - .init_array 0x0000000008003f18 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 - 0x0000000008003f1c PROVIDE (__init_array_end = .) - 0x0000000008003f1c . = ALIGN (0x4) + .init_array 0x0000000008003f08 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 + 0x0000000008003f0c PROVIDE (__init_array_end = .) + 0x0000000008003f0c . = ALIGN (0x4) -.fini_array 0x0000000008003f1c 0x4 - 0x0000000008003f1c . = ALIGN (0x4) +.fini_array 0x0000000008003f0c 0x4 + 0x0000000008003f0c . = ALIGN (0x4) [!provide] PROVIDE (__fini_array_start = .) *(SORT_BY_NAME(.fini_array.*)) *(.fini_array*) - .fini_array 0x0000000008003f1c 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 0x0000000008003f0c 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 = .) - 0x0000000008003f20 . = ALIGN (0x4) - 0x0000000008003f20 _sidata = LOADADDR (.data) + 0x0000000008003f10 . = ALIGN (0x4) + 0x0000000008003f10 _sidata = LOADADDR (.data) -.data 0x0000000020000000 0xc load address 0x0000000008003f20 +.data 0x0000000020000000 0xc load address 0x0000000008003f10 0x0000000020000000 . = ALIGN (0x4) 0x0000000020000000 _sdata = . *(.data) @@ -3921,11 +3921,11 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id *fill* 0x0000000020000009 0x3 0x000000002000000c _edata = . -.igot.plt 0x000000002000000c 0x0 load address 0x0000000008003f2c +.igot.plt 0x000000002000000c 0x0 load address 0x0000000008003f1c .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 0x144 load address 0x0000000008003f2c +.bss 0x000000002000000c 0x148 load address 0x0000000008003f1c 0x000000002000000c _sbss = . 0x000000002000000c __bss_start__ = _sbss *(.bss) @@ -3946,38 +3946,39 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id 0x0000000020000034 read_begin *(COMMON) *fill* 0x0000000020000035 0x3 - COMMON 0x0000000020000038 0x9c ./Core/Src/main.o + COMMON 0x0000000020000038 0xc0 ./Core/Src/main.o 0x0000000020000038 dis_buff - 0x000000002000004c htim14 - 0x0000000020000094 hadc - COMMON 0x00000000200000d4 0x4 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o - 0x00000000200000d4 uwTick - COMMON 0x00000000200000d8 0x74 ./my_software/my_code.o - 0x00000000200000d8 key4 - 0x00000000200000e8 r480 - 0x00000000200000f0 key1 - 0x0000000020000100 key3 - 0x0000000020000110 ADCC - 0x0000000020000124 key2 - 0x0000000020000134 moto + 0x000000002000004c ADCC + 0x0000000020000060 htim14 + 0x00000000200000a8 hadc + 0x00000000200000e8 moto + COMMON 0x00000000200000f8 0x4 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o + 0x00000000200000f8 uwTick + COMMON 0x00000000200000fc 0x54 ./my_software/my_code.o + 0x00000000200000fc key4 + 0x000000002000010c r480 + 0x0000000020000114 key1 + 0x0000000020000124 key3 + 0x0000000020000134 key2 0x0000000020000144 config - COMMON 0x000000002000014c 0x3 ./my_software/r480r.o - 0x000000002000014c read_data_buffer - 0x0000000020000150 . = ALIGN (0x4) - *fill* 0x000000002000014f 0x1 - 0x0000000020000150 _ebss = . - 0x0000000020000150 __bss_end__ = _ebss + COMMON 0x0000000020000150 0x3 ./my_software/r480r.o + 0x0000000020000150 read_data_buffer + 0x0000000020000154 . = ALIGN (0x4) + *fill* 0x0000000020000153 0x1 + 0x0000000020000154 _ebss = . + 0x0000000020000154 __bss_end__ = _ebss ._user_heap_stack - 0x0000000020000150 0x600 load address 0x0000000008003f2c - 0x0000000020000150 . = ALIGN (0x8) + 0x0000000020000154 0x604 load address 0x0000000008003f1c + 0x0000000020000158 . = ALIGN (0x8) + *fill* 0x0000000020000154 0x4 [!provide] PROVIDE (end = .) - 0x0000000020000150 PROVIDE (_end = .) - 0x0000000020000350 . = (. + _Min_Heap_Size) - *fill* 0x0000000020000150 0x200 - 0x0000000020000750 . = (. + _Min_Stack_Size) - *fill* 0x0000000020000350 0x400 - 0x0000000020000750 . = ALIGN (0x8) + 0x0000000020000158 PROVIDE (_end = .) + 0x0000000020000358 . = (. + _Min_Heap_Size) + *fill* 0x0000000020000158 0x200 + 0x0000000020000758 . = (. + _Min_Stack_Size) + *fill* 0x0000000020000358 0x400 + 0x0000000020000758 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -4049,29 +4050,29 @@ 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 0xbe6e - .debug_info 0x0000000000000000 0xf4c ./Core/Src/main.o - .debug_info 0x0000000000000f4c 0xcdc ./Core/Src/stm32f0xx_hal_msp.o - .debug_info 0x0000000000001c28 0x76a ./Core/Src/stm32f0xx_it.o - .debug_info 0x0000000000002392 0x2c3 ./Core/Src/system_stm32f0xx.o - .debug_info 0x0000000000002655 0x22 ./Core/Startup/startup_stm32f030f4px.o - .debug_info 0x0000000000002677 0x6be ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o - .debug_info 0x0000000000002d35 0xd62 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o - .debug_info 0x0000000000003a97 0x7a0 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o - .debug_info 0x0000000000004237 0x6d3 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o - .debug_info 0x000000000000490a 0x8ed ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o - .debug_info 0x00000000000051f7 0x88d ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o - .debug_info 0x0000000000005a84 0x2ba9 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o - .debug_info 0x000000000000862d 0x1529 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o - .debug_info 0x0000000000009b56 0x1d4 ./my_software/button.o - .debug_info 0x0000000000009d2a 0x269 ./my_software/eeprom.o - .debug_info 0x0000000000009f93 0x2d3 ./my_software/gpio.o - .debug_info 0x000000000000a266 0x3cc ./my_software/ht1621.o - .debug_info 0x000000000000a632 0x3ea ./my_software/iic.o - .debug_info 0x000000000000aa1c 0xb63 ./my_software/my_code.o - .debug_info 0x000000000000b57f 0x8ef ./my_software/r480r.o +.debug_info 0x0000000000000000 0xc063 + .debug_info 0x0000000000000000 0x104d ./Core/Src/main.o + .debug_info 0x000000000000104d 0xcdc ./Core/Src/stm32f0xx_hal_msp.o + .debug_info 0x0000000000001d29 0x76a ./Core/Src/stm32f0xx_it.o + .debug_info 0x0000000000002493 0x2c3 ./Core/Src/system_stm32f0xx.o + .debug_info 0x0000000000002756 0x22 ./Core/Startup/startup_stm32f030f4px.o + .debug_info 0x0000000000002778 0x6be ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o + .debug_info 0x0000000000002e36 0xd62 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o + .debug_info 0x0000000000003b98 0x7a0 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o + .debug_info 0x0000000000004338 0x6d3 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o + .debug_info 0x0000000000004a0b 0x8ed ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o + .debug_info 0x00000000000052f8 0x88d ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .debug_info 0x0000000000005b85 0x2ba9 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o + .debug_info 0x000000000000872e 0x1529 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o + .debug_info 0x0000000000009c57 0x1d4 ./my_software/button.o + .debug_info 0x0000000000009e2b 0x269 ./my_software/eeprom.o + .debug_info 0x000000000000a094 0x2d3 ./my_software/gpio.o + .debug_info 0x000000000000a367 0x4cd ./my_software/ht1621.o + .debug_info 0x000000000000a834 0x3ea ./my_software/iic.o + .debug_info 0x000000000000ac1e 0xb56 ./my_software/my_code.o + .debug_info 0x000000000000b774 0x8ef ./my_software/r480r.o -.debug_abbrev 0x0000000000000000 0x22ae +.debug_abbrev 0x0000000000000000 0x2283 .debug_abbrev 0x0000000000000000 0x23c ./Core/Src/main.o .debug_abbrev 0x000000000000023c 0x1c8 ./Core/Src/stm32f0xx_hal_msp.o .debug_abbrev 0x0000000000000404 0x187 ./Core/Src/stm32f0xx_it.o @@ -4090,8 +4091,8 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_abbrev 0x0000000000001a88 0x127 ./my_software/gpio.o .debug_abbrev 0x0000000000001baf 0x176 ./my_software/ht1621.o .debug_abbrev 0x0000000000001d25 0x179 ./my_software/iic.o - .debug_abbrev 0x0000000000001e9e 0x20f ./my_software/my_code.o - .debug_abbrev 0x00000000000020ad 0x201 ./my_software/r480r.o + .debug_abbrev 0x0000000000001e9e 0x1e4 ./my_software/my_code.o + .debug_abbrev 0x0000000000002082 0x201 ./my_software/r480r.o .debug_aranges 0x0000000000000000 0xb88 .debug_aranges @@ -4157,7 +4158,7 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_ranges 0x00000000000009f0 0x38 ./my_software/my_code.o .debug_ranges 0x0000000000000a28 0x28 ./my_software/r480r.o -.debug_macro 0x0000000000000000 0x10442 +.debug_macro 0x0000000000000000 0x10460 .debug_macro 0x0000000000000000 0x1d9 ./Core/Src/main.o .debug_macro 0x00000000000001d9 0xa7e ./Core/Src/main.o .debug_macro 0x0000000000000c57 0x133 ./Core/Src/main.o @@ -4200,32 +4201,32 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_macro 0x000000000000df02 0x28 ./Core/Src/main.o .debug_macro 0x000000000000df2a 0xf1 ./Core/Src/main.o .debug_macro 0x000000000000e01b 0xa6 ./Core/Src/main.o - .debug_macro 0x000000000000e0c1 0x40 ./Core/Src/main.o - .debug_macro 0x000000000000e101 0x1d0 ./Core/Src/stm32f0xx_hal_msp.o - .debug_macro 0x000000000000e2d1 0x1da ./Core/Src/stm32f0xx_it.o - .debug_macro 0x000000000000e4ab 0x1c1 ./Core/Src/system_stm32f0xx.o - .debug_macro 0x000000000000e66c 0x1e5 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o - .debug_macro 0x000000000000e851 0x1e5 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o - .debug_macro 0x000000000000ea36 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o - .debug_macro 0x000000000000ebf7 0x1c8 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o - .debug_macro 0x000000000000edbf 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o - .debug_macro 0x000000000000ef80 0x1d3 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o - .debug_macro 0x000000000000f153 0x1c2 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o - .debug_macro 0x000000000000f315 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o - .debug_macro 0x000000000000f4d6 0x1e0 ./my_software/button.o - .debug_macro 0x000000000000f6b6 0x1e9 ./my_software/eeprom.o - .debug_macro 0x000000000000f89f 0x46 ./my_software/eeprom.o - .debug_macro 0x000000000000f8e5 0x1da ./my_software/gpio.o - .debug_macro 0x000000000000fabf 0x1ee ./my_software/ht1621.o - .debug_macro 0x000000000000fcad 0x5e ./my_software/ht1621.o - .debug_macro 0x000000000000fd0b 0x220 ./my_software/iic.o - .debug_macro 0x000000000000ff2b 0x24d ./my_software/my_code.o - .debug_macro 0x0000000000010178 0x3a ./my_software/my_code.o - .debug_macro 0x00000000000101b2 0x64 ./my_software/my_code.o - .debug_macro 0x0000000000010216 0x4c ./my_software/my_code.o - .debug_macro 0x0000000000010262 0x1e0 ./my_software/r480r.o + .debug_macro 0x000000000000e0c1 0x52 ./Core/Src/main.o + .debug_macro 0x000000000000e113 0x1d0 ./Core/Src/stm32f0xx_hal_msp.o + .debug_macro 0x000000000000e2e3 0x1da ./Core/Src/stm32f0xx_it.o + .debug_macro 0x000000000000e4bd 0x1c1 ./Core/Src/system_stm32f0xx.o + .debug_macro 0x000000000000e67e 0x1e5 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o + .debug_macro 0x000000000000e863 0x1e5 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o + .debug_macro 0x000000000000ea48 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o + .debug_macro 0x000000000000ec09 0x1c8 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o + .debug_macro 0x000000000000edd1 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o + .debug_macro 0x000000000000ef92 0x1d3 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .debug_macro 0x000000000000f165 0x1c2 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o + .debug_macro 0x000000000000f327 0x1c1 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o + .debug_macro 0x000000000000f4e8 0x1e0 ./my_software/button.o + .debug_macro 0x000000000000f6c8 0x1e9 ./my_software/eeprom.o + .debug_macro 0x000000000000f8b1 0x46 ./my_software/eeprom.o + .debug_macro 0x000000000000f8f7 0x1da ./my_software/gpio.o + .debug_macro 0x000000000000fad1 0x1ee ./my_software/ht1621.o + .debug_macro 0x000000000000fcbf 0x5e ./my_software/ht1621.o + .debug_macro 0x000000000000fd1d 0x220 ./my_software/iic.o + .debug_macro 0x000000000000ff3d 0x247 ./my_software/my_code.o + .debug_macro 0x0000000000010184 0x4c ./my_software/my_code.o + .debug_macro 0x00000000000101d0 0x64 ./my_software/my_code.o + .debug_macro 0x0000000000010234 0x4c ./my_software/my_code.o + .debug_macro 0x0000000000010280 0x1e0 ./my_software/r480r.o -.debug_line 0x0000000000000000 0xf273 +.debug_line 0x0000000000000000 0xf263 .debug_line 0x0000000000000000 0x8df ./Core/Src/main.o .debug_line 0x00000000000008df 0x793 ./Core/Src/stm32f0xx_hal_msp.o .debug_line 0x0000000000001072 0x7a5 ./Core/Src/stm32f0xx_it.o @@ -4244,49 +4245,49 @@ LOAD /Applications/STM32CubeIDE.app/Contents/Eclipse/plugins/com.st.stm32cube.id .debug_line 0x000000000000c3c8 0x725 ./my_software/gpio.o .debug_line 0x000000000000caed 0x835 ./my_software/ht1621.o .debug_line 0x000000000000d322 0x923 ./my_software/iic.o - .debug_line 0x000000000000dc45 0xe3d ./my_software/my_code.o - .debug_line 0x000000000000ea82 0x7f1 ./my_software/r480r.o + .debug_line 0x000000000000dc45 0xe2d ./my_software/my_code.o + .debug_line 0x000000000000ea72 0x7f1 ./my_software/r480r.o -.debug_str 0x0000000000000000 0x5f5c4 - .debug_str 0x0000000000000000 0x5c9bc ./Core/Src/main.o - 0x5cd69 (size before relaxing) - .debug_str 0x000000000005c9bc 0x84 ./Core/Src/stm32f0xx_hal_msp.o +.debug_str 0x0000000000000000 0x5f616 + .debug_str 0x0000000000000000 0x5ca5f ./Core/Src/main.o + 0x5ce0c (size before relaxing) + .debug_str 0x000000000005ca5f 0x84 ./Core/Src/stm32f0xx_hal_msp.o 0x5c924 (size before relaxing) - .debug_str 0x000000000005ca40 0x9a ./Core/Src/stm32f0xx_it.o + .debug_str 0x000000000005cae3 0x9a ./Core/Src/stm32f0xx_it.o 0x5c5a4 (size before relaxing) - .debug_str 0x000000000005cada 0x5f ./Core/Src/system_stm32f0xx.o + .debug_str 0x000000000005cb7d 0x5f ./Core/Src/system_stm32f0xx.o 0x5be5e (size before relaxing) - .debug_str 0x000000000005cb39 0x36 ./Core/Startup/startup_stm32f030f4px.o + .debug_str 0x000000000005cbdc 0x36 ./Core/Startup/startup_stm32f030f4px.o 0x7c (size before relaxing) - .debug_str 0x000000000005cb6f 0x317 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o + .debug_str 0x000000000005cc12 0x317 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal.o 0x5c335 (size before relaxing) - .debug_str 0x000000000005ce86 0x387 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o + .debug_str 0x000000000005cf29 0x387 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_adc.o 0x5c55e (size before relaxing) - .debug_str 0x000000000005d20d 0x1dc ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o + .debug_str 0x000000000005d2b0 0x1dc ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_cortex.o 0x5c1e9 (size before relaxing) - .debug_str 0x000000000005d3e9 0x150 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o + .debug_str 0x000000000005d48c 0x150 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_gpio.o 0x5c03d (size before relaxing) - .debug_str 0x000000000005d539 0x2eb ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o + .debug_str 0x000000000005d5dc 0x2eb ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_i2c_ex.o 0x5c3cd (size before relaxing) - .debug_str 0x000000000005d824 0x240 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o + .debug_str 0x000000000005d8c7 0x240 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_rcc.o 0x5c268 (size before relaxing) - .debug_str 0x000000000005da64 0xe27 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o + .debug_str 0x000000000005db07 0xe27 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim.o 0x5d219 (size before relaxing) - .debug_str 0x000000000005e88b 0x538 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o + .debug_str 0x000000000005e92e 0x538 ./Drivers/STM32F0xx_HAL_Driver/Src/stm32f0xx_hal_tim_ex.o 0x5c9ca (size before relaxing) - .debug_str 0x000000000005edc3 0x40 ./my_software/button.o + .debug_str 0x000000000005ee66 0x40 ./my_software/button.o 0x5c090 (size before relaxing) - .debug_str 0x000000000005ee03 0x145 ./my_software/eeprom.o + .debug_str 0x000000000005eea6 0x145 ./my_software/eeprom.o 0x5c199 (size before relaxing) - .debug_str 0x000000000005ef48 0x32 ./my_software/gpio.o + .debug_str 0x000000000005efeb 0x32 ./my_software/gpio.o 0x5c0fd (size before relaxing) - .debug_str 0x000000000005ef7a 0x16d ./my_software/ht1621.o - 0x5c4ba (size before relaxing) - .debug_str 0x000000000005f0e7 0x256 ./my_software/iic.o + .debug_str 0x000000000005f01d 0x16d ./my_software/ht1621.o + 0x5c55d (size before relaxing) + .debug_str 0x000000000005f18a 0x256 ./my_software/iic.o 0x5c2f3 (size before relaxing) - .debug_str 0x000000000005f33d 0x1d0 ./my_software/my_code.o - 0x5ca6d (size before relaxing) - .debug_str 0x000000000005f50d 0xb7 ./my_software/r480r.o + .debug_str 0x000000000005f3e0 0x17f ./my_software/my_code.o + 0x5cabf (size before relaxing) + .debug_str 0x000000000005f55f 0xb7 ./my_software/r480r.o 0x5c64b (size before relaxing) .comment 0x0000000000000000 0x53 diff --git a/Debug/my_software/my_code.su b/Debug/my_software/my_code.su index e9c12ad..461e36c 100644 --- a/Debug/my_software/my_code.su +++ b/Debug/my_software/my_code.su @@ -1,6 +1,6 @@ -my_code.c:56:6:Sand_Byte_to_595_2 24 static -my_code.c:77:6:hc2_sever 16 static -my_code.c:104:6:moto_server 8 static -my_code.c:210:6:HT1621_Display_GetButton 24 static -my_code.c:255:6:check_need_reset 16 static -my_code.c:288:6:my_code 48 static +my_code.c:21:6:Sand_Byte_to_595_2 24 static +my_code.c:42:6:HC595_control_server 16 static +my_code.c:69:6:Motoer_control_server 8 static +my_code.c:164:6:HT1621_Display_GetButton 24 static +my_code.c:209:6:check_need_reset 16 static +my_code.c:242:6:my_code 40 static diff --git a/my_software/my_code.c b/my_software/my_code.c index 8862040..4bb44c7 100644 --- a/my_software/my_code.c +++ b/my_software/my_code.c @@ -16,41 +16,6 @@ struct button key1,key2,key3,key4; config_setting config; -#define set_filtering_times 50 -struct -{ - //ADC_HandleTypeDef *device; - int filtering_times; - unsigned long adc_filtering[2]; - int adc_value[2]; -}ADCC; - - -struct -{ - uint32_t moto_run; - int pwm_run; - - - char moto1a; - char moto1b; - char moto2a; - char moto2b; - - char moto1a_; - char moto1b_; - char moto2a_; - char moto2b_; - -}moto; - - -//uint8_t Read_Ds() -//{ -// change_io_function(HC595_DLK_GPIO_Port,HC595_DLK_Pin,1); -// if(READ_HC595_DCK){return 0;}else{return 1;} -// //return READ_HC595_DCK; -//} //send data to 959 void Sand_Byte_to_595_2(uint8_t h) @@ -74,7 +39,7 @@ void Sand_Byte_to_595_2(uint8_t h) HC595_RCK(1); HC595_RCK(0); } -void hc2_sever() +void HC595_control_server() { char h=0; if(dis_buff.led_run==1) @@ -101,61 +66,50 @@ void hc2_sever() } //motor cool start -void moto_server() +void Motoer_control_server() { if(HAL_GetTick()>moto.moto_run) { - moto.moto_run=HAL_GetTick()+10; - if(moto.moto1a!=moto.moto1a_) + moto.moto_run=HAL_GetTick()+10; //set the index follow delay + + if(moto.moto1a>moto.moto1a_) { - if(moto.moto1a>moto.moto1a_) - { - moto.moto1a_++; - } - if(moto.moto1amoto.moto1b_) - { - moto.moto1b_++; - } - if(moto.moto1bmoto.moto1b_) { - if(moto.moto2a>moto.moto2a_) - { - moto.moto2a_++; - } - if(moto.moto2amoto.moto2b_) - { - moto.moto2b_++; - } - if(moto.moto2bmoto.moto2a_) + { + moto.moto2a_++; + } + if(moto.moto2amoto.moto2b_) + { + moto.moto2b_++; + } + if(moto.moto2b400||(moto_in1==1&&READ_MOT_IN1==0)) + if(ADCC.adc_value[1]>400||(moto_sw_buff1==1&&READ_MOT_IN1==0)) { //overload_times=0; moto.moto1a=0; moto.moto1b=0; } - if(ADCC.adc_value[0]>400||(moto_in2==1&&READ_MOT_IN2==0)) + if(ADCC.adc_value[0]>400||(moto_sw_buff2==1&&READ_MOT_IN2==0)) { moto.moto2a=0; moto.moto2b=0; @@ -494,7 +445,7 @@ void my_code() if(key2.code!=0) { mode=2; - countdown=countdown_set-countdown; + countdown=config.countdown_set-countdown; moto.moto1a=10; moto.moto1b=0; moto.moto2a=10; @@ -504,13 +455,13 @@ void my_code() { mode=1; } - if(ADCC.adc_value[1]>400||(moto_in1==1&&READ_MOT_IN1==0)) + if(ADCC.adc_value[1]>400||(moto_sw_buff1==1&&READ_MOT_IN1==0)) { //overload_times=0; moto.moto1a=0; moto.moto1b=0; } - if(ADCC.adc_value[0]>400||(moto_in2==1&&READ_MOT_IN2==0)) + if(ADCC.adc_value[0]>400||(moto_sw_buff2==1&&READ_MOT_IN2==0)) { //overload_times2=0; moto.moto2a=0; @@ -531,25 +482,26 @@ void my_code() dis_buff.dot4=1; } countdown-=100; - if(countdown<0) - { - mode=1; - } - if(key2.code<0){countdown_set+=1000;countdown=10000;} - if(key3.code<0){countdown_set-=1000;countdown=10000;} + + if(key2.code<0){config.countdown_set+=1000;countdown=10000;} + if(key3.code<0){config.countdown_set-=1000;countdown=10000;} } - if(key2.code>0){countdown_set+=100;countdown=10000;} - if(key3.code>0){countdown_set-=100;countdown=10000;} - if(countdown_set<100){countdown_set=100;} - if(countdown_set>60000){countdown_set=60000;} + if(key2.code>0){config.countdown_set+=100;countdown=10000;} + if(key3.code>0){config.countdown_set-=100;countdown=10000;} + if(config.countdown_set<100){config.countdown_set=100;} + if(config.countdown_set>60000){config.countdown_set=60000;} - if(key4.code!=0){mode=1;} - 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); + if(key4.code!=0||countdown<0) + { + mode=1; + AT24CXX_Write(EEPROM_BEGIN_ADD,(char *)&config,sizeof(config_setting)); + } + dis_buff.d_num[3]=(config.countdown_set/100)%10; + dis_buff.d_num[2]=(config.countdown_set/1000)%10; + dis_buff.d_num[1]=((config.countdown_set/10000)%10); dis_buff.d_num[1]=dis_buff.d_num[1]==0?16:dis_buff.d_num[1]; @@ -595,28 +547,28 @@ void my_code() dis_buff.button_flag[2]=0; dis_buff.button_flag[3]=0; - if(moto_in1!=READ_MOT_IN1) + if(moto_sw_buff1!=READ_MOT_IN1) { - moto_in1_pp++; - if(moto_in1_pp==100) + moto_sw_buff1_pp++; + if(moto_sw_buff1_pp==100) { - moto_in1_pp=0; - moto_in1=READ_MOT_IN1; + moto_sw_buff1_pp=0; + moto_sw_buff1=READ_MOT_IN1; } } - if(moto_in2!=READ_MOT_IN2) + if(moto_sw_buff2!=READ_MOT_IN2) { - moto_in2_pp++; - if(moto_in2_pp==100) + moto_sw_buff2_pp++; + if(moto_sw_buff2_pp==100) { - moto_in2_pp=0; - moto_in2=READ_MOT_IN2; + moto_sw_buff2_pp=0; + moto_sw_buff2=READ_MOT_IN2; } } HT1621_Display_GetButton(); - hc2_sever(); - moto_server(); + HC595_control_server(); + Motoer_control_server(); } } diff --git a/my_software/my_code.h b/my_software/my_code.h index 5bca142..0091495 100644 --- a/my_software/my_code.h +++ b/my_software/my_code.h @@ -25,12 +25,16 @@ void my_code(); #define READ_MOT_IN1 HAL_GPIO_ReadPin(MOT_IN1_GPIO_Port, MOT_IN1_Pin) #define READ_MOT_IN2 HAL_GPIO_ReadPin(MOT_IN2_GPIO_Port, MOT_IN2_Pin) +#define EEPROM_BEGIN_ADD 32 +#define CONFIG_EFF_CODE 0xab + typedef struct { char key_code[2]; char begin; int time; + long countdown_set; }config_setting; struct display_penal @@ -49,4 +53,32 @@ struct display_penal char moto2b; }dis_buff; +#define set_filtering_times 50 +struct +{ + //ADC_HandleTypeDef *device; + int filtering_times; + unsigned long adc_filtering[2]; + int adc_value[2]; +}ADCC; + + +struct +{ + uint32_t moto_run; + int pwm_run; + + + char moto1a; + char moto1b; + char moto2a; + char moto2b; + + char moto1a_; + char moto1b_; + char moto2a_; + char moto2b_; + +}moto; + #endif /* MY_CODE_H_ */