From 6e8fd579b8f3ba896607c17b23c0c7c2549770e2 Mon Sep 17 00:00:00 2001 From: kevin Date: Sun, 1 May 2022 11:46:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BE=93=E5=85=A5=E6=96=B9=E5=BC=8F=E6=94=B9?= =?UTF-8?q?=E6=88=90=E4=B8=AD=E6=96=AD=EF=BC=8C=E5=BC=80=E5=90=AF=E4=BA=86?= =?UTF-8?q?=E4=B8=A4=E4=B8=AA=E5=AE=9A=E6=97=B6=E5=99=A8=20Signed-off-by:?= =?UTF-8?q?=20kevin=20?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- f103c8t6_keil/.mxproject | 16 +- f103c8t6_keil/Core/Inc/main.h | 2 + f103c8t6_keil/Core/Inc/stm32f1xx_it.h | 3 + f103c8t6_keil/Core/Src/main.c | 66 +- f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c | 28 + f103c8t6_keil/Core/Src/stm32f1xx_it.c | 43 + f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.c | 85 - f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.h | 11 +- f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.c | 55 +- f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.h | 2 + .../MDK-ARM/f103c8t6_KEIL.uvguix.wuwen | 113 +- .../MDK-ARM/f103c8t6_KEIL/buzzer.crf | Bin 563182 -> 562371 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/buzzer.o | Bin 624776 -> 619612 bytes .../MDK-ARM/f103c8t6_KEIL/encode.crf | Bin 562815 -> 562889 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/encode.o | Bin 620764 -> 620552 bytes .../MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.axf | Bin 590964 -> 588004 bytes .../f103c8t6_KEIL/f103c8t6_KEIL.build_log.htm | 66 +- .../MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.hex | 1625 ++++++++--------- .../MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.htm | 1215 ++++++------ .../MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.map | 1279 ++++++------- .../f103c8t6_KEIL_f103c8t6_KEIL.dep | 1248 ++++++------- f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/fonts.o | Bin 4812 -> 4804 bytes .../MDK-ARM/f103c8t6_KEIL/hread_interface.crf | Bin 562924 -> 562998 bytes .../MDK-ARM/f103c8t6_KEIL/hread_interface.o | Bin 621668 -> 621456 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/main.crf | Bin 568080 -> 568358 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/main.o | Bin 631484 -> 632796 bytes .../MDK-ARM/f103c8t6_KEIL/mymain.crf | Bin 566735 -> 566661 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/mymain.o | Bin 630384 -> 631780 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/oled.crf | Bin 568371 -> 568445 bytes f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/oled.o | Bin 650900 -> 650560 bytes .../f103c8t6_KEIL/startup_stm32f103xb.o | Bin 6004 -> 5996 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal.crf | Bin 562839 -> 562839 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal.o | Bin 651828 -> 651380 bytes .../f103c8t6_KEIL/stm32f1xx_hal_cortex.crf | Bin 562300 -> 562300 bytes .../f103c8t6_KEIL/stm32f1xx_hal_cortex.o | Bin 641652 -> 641284 bytes .../f103c8t6_KEIL/stm32f1xx_hal_dma.crf | Bin 569296 -> 569296 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_dma.o | Bin 639252 -> 638908 bytes .../f103c8t6_KEIL/stm32f1xx_hal_exti.crf | Bin 564449 -> 564449 bytes .../f103c8t6_KEIL/stm32f1xx_hal_exti.o | Bin 630956 -> 630648 bytes .../f103c8t6_KEIL/stm32f1xx_hal_flash.crf | Bin 566249 -> 566249 bytes .../f103c8t6_KEIL/stm32f1xx_hal_flash.o | Bin 638940 -> 638580 bytes .../f103c8t6_KEIL/stm32f1xx_hal_flash_ex.crf | Bin 567473 -> 567473 bytes .../f103c8t6_KEIL/stm32f1xx_hal_flash_ex.o | Bin 638292 -> 637960 bytes .../f103c8t6_KEIL/stm32f1xx_hal_gpio.crf | Bin 565241 -> 565241 bytes .../f103c8t6_KEIL/stm32f1xx_hal_gpio.o | Bin 630404 -> 630104 bytes .../f103c8t6_KEIL/stm32f1xx_hal_gpio_ex.crf | Bin 561500 -> 561500 bytes .../f103c8t6_KEIL/stm32f1xx_hal_gpio_ex.o | Bin 620300 -> 620036 bytes .../f103c8t6_KEIL/stm32f1xx_hal_i2c.crf | Bin 627523 -> 627523 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_i2c.o | Bin 767496 -> 766672 bytes .../f103c8t6_KEIL/stm32f1xx_hal_msp.crf | Bin 563764 -> 564163 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_msp.o | Bin 626580 -> 626524 bytes .../f103c8t6_KEIL/stm32f1xx_hal_pwr.crf | Bin 564298 -> 564298 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_pwr.o | Bin 641876 -> 641492 bytes .../f103c8t6_KEIL/stm32f1xx_hal_rcc.crf | Bin 573647 -> 573647 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_rcc.o | Bin 641116 -> 640764 bytes .../f103c8t6_KEIL/stm32f1xx_hal_rcc_ex.crf | Bin 564116 -> 564116 bytes .../f103c8t6_KEIL/stm32f1xx_hal_rcc_ex.o | Bin 622248 -> 621984 bytes .../f103c8t6_KEIL/stm32f1xx_hal_tim.crf | Bin 624836 -> 624836 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_hal_tim.o | Bin 817736 -> 816560 bytes .../f103c8t6_KEIL/stm32f1xx_hal_tim_ex.crf | Bin 587506 -> 587506 bytes .../f103c8t6_KEIL/stm32f1xx_hal_tim_ex.o | Bin 691780 -> 691204 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_it.crf | Bin 562561 -> 562846 bytes .../MDK-ARM/f103c8t6_KEIL/stm32f1xx_it.o | Bin 631868 -> 635532 bytes .../f103c8t6_KEIL/system_stm32f1xx.crf | Bin 561642 -> 561642 bytes .../MDK-ARM/f103c8t6_KEIL/system_stm32f1xx.o | Bin 619308 -> 619044 bytes f103c8t6_keil/MDK-ARM/startup_stm32f103xb.lst | 4 +- f103c8t6_keil/f103c8t6_KEIL.ioc | 30 +- 67 files changed, 2869 insertions(+), 3022 deletions(-) diff --git a/f103c8t6_keil/.mxproject b/f103c8t6_keil/.mxproject index 5c46cee..b548d8d 100644 --- a/f103c8t6_keil/.mxproject +++ b/f103c8t6_keil/.mxproject @@ -9,17 +9,17 @@ CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER; [PreviousGenFiles] AdvancedFolderStructure=true HeaderFileListSize=3 -HeaderFiles#0=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Inc/stm32f1xx_it.h -HeaderFiles#1=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Inc/stm32f1xx_hal_conf.h -HeaderFiles#2=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Inc/main.h +HeaderFiles#0=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Inc/stm32f1xx_it.h +HeaderFiles#1=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Inc/stm32f1xx_hal_conf.h +HeaderFiles#2=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Inc/main.h HeaderFolderListSize=1 -HeaderPath#0=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Inc +HeaderPath#0=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Inc HeaderFiles=; SourceFileListSize=3 -SourceFiles#0=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Src/stm32f1xx_it.c -SourceFiles#1=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c -SourceFiles#2=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Src/main.c +SourceFiles#0=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Src/stm32f1xx_it.c +SourceFiles#1=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c +SourceFiles#2=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Src/main.c SourceFolderListSize=1 -SourcePath#0=C:/Users/kevin/Desktop/morse_code_trainer/f103c8t6_keil/Core/Src +SourcePath#0=C:/Users/wuwen/morse_code_trainer/f103c8t6_keil/Core/Src SourceFiles=; diff --git a/f103c8t6_keil/Core/Inc/main.h b/f103c8t6_keil/Core/Inc/main.h index c50808a..a202bb0 100644 --- a/f103c8t6_keil/Core/Inc/main.h +++ b/f103c8t6_keil/Core/Inc/main.h @@ -63,8 +63,10 @@ void Error_Handler(void); #define mute_GPIO_Port GPIOA #define tack_a_Pin GPIO_PIN_0 #define tack_a_GPIO_Port GPIOB +#define tack_a_EXTI_IRQn EXTI0_IRQn #define tack_b_Pin GPIO_PIN_1 #define tack_b_GPIO_Port GPIOB +#define tack_b_EXTI_IRQn EXTI1_IRQn #define run_led2_Pin GPIO_PIN_12 #define run_led2_GPIO_Port GPIOB #define run_led_Pin GPIO_PIN_15 diff --git a/f103c8t6_keil/Core/Inc/stm32f1xx_it.h b/f103c8t6_keil/Core/Inc/stm32f1xx_it.h index 6af45aa..dc8a764 100644 --- a/f103c8t6_keil/Core/Inc/stm32f1xx_it.h +++ b/f103c8t6_keil/Core/Inc/stm32f1xx_it.h @@ -55,8 +55,11 @@ void SVC_Handler(void); void DebugMon_Handler(void); void PendSV_Handler(void); void SysTick_Handler(void); +void EXTI0_IRQHandler(void); +void EXTI1_IRQHandler(void); void EXTI4_IRQHandler(void); void TIM2_IRQHandler(void); +void TIM3_IRQHandler(void); /* USER CODE BEGIN EFP */ /* USER CODE END EFP */ diff --git a/f103c8t6_keil/Core/Src/main.c b/f103c8t6_keil/Core/Src/main.c index aef8059..bb1bc60 100644 --- a/f103c8t6_keil/Core/Src/main.c +++ b/f103c8t6_keil/Core/Src/main.c @@ -42,6 +42,7 @@ I2C_HandleTypeDef hi2c1; TIM_HandleTypeDef htim2; +TIM_HandleTypeDef htim3; /* USER CODE BEGIN PV */ @@ -52,6 +53,7 @@ void SystemClock_Config(void); static void MX_GPIO_Init(void); static void MX_I2C1_Init(void); static void MX_TIM2_Init(void); +static void MX_TIM3_Init(void); /* USER CODE BEGIN PFP */ /* USER CODE END PFP */ @@ -91,6 +93,7 @@ int main(void) MX_GPIO_Init(); MX_I2C1_Init(); MX_TIM2_Init(); + MX_TIM3_Init(); /* USER CODE BEGIN 2 */ mymain(); /* USER CODE END 2 */ @@ -238,6 +241,51 @@ static void MX_TIM2_Init(void) } +/** + * @brief TIM3 Initialization Function + * @param None + * @retval None + */ +static void MX_TIM3_Init(void) +{ + + /* USER CODE BEGIN TIM3_Init 0 */ + + /* USER CODE END TIM3_Init 0 */ + + TIM_ClockConfigTypeDef sClockSourceConfig = {0}; + TIM_MasterConfigTypeDef sMasterConfig = {0}; + + /* USER CODE BEGIN TIM3_Init 1 */ + + /* USER CODE END TIM3_Init 1 */ + htim3.Instance = TIM3; + htim3.Init.Prescaler = 72-1; + htim3.Init.CounterMode = TIM_COUNTERMODE_UP; + htim3.Init.Period = 1000-1; + htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + if (HAL_TIM_Base_Init(&htim3) != HAL_OK) + { + Error_Handler(); + } + sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; + if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK) + { + Error_Handler(); + } + sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; + sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + if (HAL_TIMEx_MasterConfigSynchronization(&htim3, &sMasterConfig) != HAL_OK) + { + Error_Handler(); + } + /* USER CODE BEGIN TIM3_Init 2 */ + + /* USER CODE END TIM3_Init 2 */ + +} + /** * @brief GPIO Initialization Function * @param None @@ -269,9 +317,9 @@ static void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(mute_GPIO_Port, &GPIO_InitStruct); - /*Configure GPIO pins : tack_a_Pin tack_b_Pin en_c_Pin en_b_Pin */ - GPIO_InitStruct.Pin = tack_a_Pin|tack_b_Pin|en_c_Pin|en_b_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + /*Configure GPIO pins : tack_a_Pin tack_b_Pin */ + GPIO_InitStruct.Pin = tack_a_Pin|tack_b_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING; GPIO_InitStruct.Pull = GPIO_PULLUP; HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); @@ -289,6 +337,12 @@ static void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(run_led_GPIO_Port, &GPIO_InitStruct); + /*Configure GPIO pins : en_c_Pin en_b_Pin */ + GPIO_InitStruct.Pin = en_c_Pin|en_b_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_INPUT; + GPIO_InitStruct.Pull = GPIO_PULLUP; + HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + /*Configure GPIO pin : en_a_Pin */ GPIO_InitStruct.Pin = en_a_Pin; GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING; @@ -296,6 +350,12 @@ static void MX_GPIO_Init(void) HAL_GPIO_Init(en_a_GPIO_Port, &GPIO_InitStruct); /* EXTI interrupt init*/ + HAL_NVIC_SetPriority(EXTI0_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(EXTI0_IRQn); + + HAL_NVIC_SetPriority(EXTI1_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(EXTI1_IRQn); + HAL_NVIC_SetPriority(EXTI4_IRQn, 0, 0); HAL_NVIC_EnableIRQ(EXTI4_IRQn); diff --git a/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c b/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c index 8679d81..297a282 100644 --- a/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c +++ b/f103c8t6_keil/Core/Src/stm32f1xx_hal_msp.c @@ -169,6 +169,20 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM2_MspInit 1 */ } + else if(htim_base->Instance==TIM3) + { + /* USER CODE BEGIN TIM3_MspInit 0 */ + + /* USER CODE END TIM3_MspInit 0 */ + /* Peripheral clock enable */ + __HAL_RCC_TIM3_CLK_ENABLE(); + /* TIM3 interrupt Init */ + HAL_NVIC_SetPriority(TIM3_IRQn, 0, 0); + HAL_NVIC_EnableIRQ(TIM3_IRQn); + /* USER CODE BEGIN TIM3_MspInit 1 */ + + /* USER CODE END TIM3_MspInit 1 */ + } } @@ -218,6 +232,20 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) /* USER CODE END TIM2_MspDeInit 1 */ } + else if(htim_base->Instance==TIM3) + { + /* USER CODE BEGIN TIM3_MspDeInit 0 */ + + /* USER CODE END TIM3_MspDeInit 0 */ + /* Peripheral clock disable */ + __HAL_RCC_TIM3_CLK_DISABLE(); + + /* TIM3 interrupt DeInit */ + HAL_NVIC_DisableIRQ(TIM3_IRQn); + /* USER CODE BEGIN TIM3_MspDeInit 1 */ + + /* USER CODE END TIM3_MspDeInit 1 */ + } } diff --git a/f103c8t6_keil/Core/Src/stm32f1xx_it.c b/f103c8t6_keil/Core/Src/stm32f1xx_it.c index f003dd8..02d9cbd 100644 --- a/f103c8t6_keil/Core/Src/stm32f1xx_it.c +++ b/f103c8t6_keil/Core/Src/stm32f1xx_it.c @@ -56,6 +56,7 @@ /* External variables --------------------------------------------------------*/ extern TIM_HandleTypeDef htim2; +extern TIM_HandleTypeDef htim3; /* USER CODE BEGIN EV */ /* USER CODE END EV */ @@ -198,6 +199,34 @@ void SysTick_Handler(void) /* please refer to the startup file (startup_stm32f1xx.s). */ /******************************************************************************/ +/** + * @brief This function handles EXTI line0 interrupt. + */ +void EXTI0_IRQHandler(void) +{ + /* USER CODE BEGIN EXTI0_IRQn 0 */ + + /* USER CODE END EXTI0_IRQn 0 */ + HAL_GPIO_EXTI_IRQHandler(tack_a_Pin); + /* USER CODE BEGIN EXTI0_IRQn 1 */ + + /* USER CODE END EXTI0_IRQn 1 */ +} + +/** + * @brief This function handles EXTI line1 interrupt. + */ +void EXTI1_IRQHandler(void) +{ + /* USER CODE BEGIN EXTI1_IRQn 0 */ + + /* USER CODE END EXTI1_IRQn 0 */ + HAL_GPIO_EXTI_IRQHandler(tack_b_Pin); + /* USER CODE BEGIN EXTI1_IRQn 1 */ + + /* USER CODE END EXTI1_IRQn 1 */ +} + /** * @brief This function handles EXTI line4 interrupt. */ @@ -226,6 +255,20 @@ void TIM2_IRQHandler(void) /* USER CODE END TIM2_IRQn 1 */ } +/** + * @brief This function handles TIM3 global interrupt. + */ +void TIM3_IRQHandler(void) +{ + /* USER CODE BEGIN TIM3_IRQn 0 */ + + /* USER CODE END TIM3_IRQn 0 */ + HAL_TIM_IRQHandler(&htim3); + /* USER CODE BEGIN TIM3_IRQn 1 */ + + /* USER CODE END TIM3_IRQn 1 */ +} + /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ diff --git a/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.c b/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.c index 6017a1f..ac60e37 100644 --- a/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.c +++ b/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.c @@ -10,88 +10,3 @@ TIM2->ARR = (uint32_t)((72000000/freq)-1);TIM2->CCR3 = (uint32_t)(((72000000/fr -void add_a_note(uint16_t freq,uint8_t duty,uint16_t deley) -{ -struct notes* buff; -buff = (struct notes*)malloc(sizeof(struct notes)); -if (buff != NULL) -{ -buff->freq = freq; -buff->duty = duty; -buff->deley = deley; -buff->next_note = NULL; - -if (notes == NULL) -{ -notes = buff; -} -else -{ -struct notes *t = notes; -while (t->next_note != NULL) -{ -t = t->next_note; -} -t->next_note = buff; -} -} - -} - -void delhead() -{ -if (notes == NULL) -{ -return; -} - - -if (notes->next_note == NULL) -{ -free(notes); -notes = NULL; -} -else -{ -struct notes *t = notes; -notes = notes->next_note; -free(t); - -} - - - -} - -char buzzer_play_server() -{ - - -static char busy_flag=0; -static uint32_t play_delay; - -if(notes == NULL) -{ - play_ones(0,0); -}else -{ - if(busy_flag==0) - { - busy_flag=1; - play_delay=HAL_GetTick()+notes->deley; - play_ones(notes->freq,notes->duty); - } - if(busy_flag==1) - { - if(HAL_GetTick()>play_delay) - { - busy_flag=0; - delhead(); - } - } -} - - - -return busy_flag; -} \ No newline at end of file diff --git a/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.h b/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.h index 3292a8f..aed5485 100644 --- a/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.h +++ b/f103c8t6_keil/MDK-ARM/MYDEIVERS/buzzer.h @@ -3,16 +3,9 @@ #include "main.h" -struct notes -{ - uint16_t freq; - uint8_t duty; - uint16_t deley; - struct notes *next_note; -}; + void play_ones(uint16_t freq,uint8_t dutya); -void add_a_note(uint16_t freq,uint8_t duty,uint16_t deley); -char buzzer_play_server(); + #endif /* BUZZER_H_ */ diff --git a/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.c b/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.c index 27221f3..aef9fd2 100644 --- a/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.c +++ b/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.c @@ -177,6 +177,8 @@ char sys_lan=0; int encode_c=0; +int test_code=0; + menu menu_main= { "Back\nInput\nBuzzer\nOLED\nAuto\nType\nLanguage\nAbout", @@ -194,10 +196,10 @@ void mymain() OLED_Init();//屏幕初始化 HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_3);//启动n通道的pwm - MUTE(1);//静音 - //add_a_note(1000,50,1000);//开机响一声 - - + HAL_TIM_Base_Start_IT(&htim3); + MUTE(0); + + //play_ones(1000,50); while(1) { @@ -218,6 +220,9 @@ void mymain() encode_c+=GET_ENCODE(&E1); sprintf(str,"ENCODE:%d",encode_c); OLED_Str(0,8,8,str,1); + + sprintf(str,"testcode:%d",test_code); + OLED_Str(0,16,8,str,1); fps_++; sprintf(str,"FPS:%d",fps); @@ -247,7 +252,7 @@ void mymain() GEI_BUTTON_CODE(&B1);//循环更新按钮 OLED_Cache_to_hardware();//刷新屏幕 - buzzer_play_server(); + if(HAL_GetTick()>run_tick) { run_tick+=1000; @@ -266,22 +271,40 @@ void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin) switch (GPIO_Pin) { case en_a_Pin: - switch(HAL_GPIO_ReadPin(en_b_GPIO_Port,en_b_Pin)) - { - case 1: - E1.code+=1; - E1.move_flag=1; - break; - case 0: - E1.code-=1; - E1.move_flag=1; - break; - } + switch(HAL_GPIO_ReadPin(en_b_GPIO_Port,en_b_Pin)) + { + case 1: + E1.code+=1; + E1.move_flag=1; + break; + case 0: + E1.code-=1; + E1.move_flag=1; + break; + } break; + + case tack_a_Pin: + test_code++; + break; + case tack_b_Pin: + test_code--; + break; + default: break; //__HAL_GPIO_EXTI_CLEAR_IT(GPIO_Pin); } +} + + + +void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)//1ms +{ + if (htim == (&htim3)) + { + + } } \ No newline at end of file diff --git a/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.h b/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.h index a0d0570..a38b2ef 100644 --- a/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.h +++ b/f103c8t6_keil/MDK-ARM/MYDEIVERS/mymain.h @@ -20,6 +20,8 @@ struct morsecode char letter; }; +extern TIM_HandleTypeDef htim3; + void mymain(); #endif /* MYMAIN_H_ */ diff --git a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL.uvguix.wuwen b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL.uvguix.wuwen index b28e110..32ea775 100644 --- a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL.uvguix.wuwen +++ b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL.uvguix.wuwen @@ -15,7 +15,7 @@ 38003 Registers - 254 166 + 210 210 346 @@ -40,7 +40,7 @@ 1506 Symbols - 143 143 143 + 80 80 80 1936 @@ -90,8 +90,8 @@ 44 - 0 - 1 + 2 + 3 -32000 -32000 @@ -101,17 +101,17 @@ -1 - 240 - 1003 - 3116 - 1269 + 184 + 257 + 1697 + 943 0 - 1410 - 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000B0000000A0000000100000047433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000C5D4F200FFFFFFFF52433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6D796D61696E2E6800000000086D796D61696E2E6800000000FFDC7800FFFFFFFF50433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6F6C65642E6300000000066F6C65642E6300000000BECEA100FFFFFFFF5B433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C68726561645F696E746572666163652E63000000001168726561645F696E746572666163652E6300000000F0A0A100FFFFFFFF5B433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C68726561645F696E746572666163652E68000000001168726561645F696E746572666163652E6800000000BCA8E100FFFFFFFF50433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6F6C65642E6800000000066F6C65642E68000000009CC1B600FFFFFFFF51433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C666F6E74732E630000000007666F6E74732E6300000000F7B88600FFFFFFFF52433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C62757A7A65722E63000000000862757A7A65722E6300000000D9ADC200FFFFFFFF52433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C62757A7A65722E68000000000862757A7A65722E6800000000A5C2D700FFFFFFFF6C433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D2E63000000001373746D3332663178785F68616C5F74696D2E6300000000B3A6BE00FFFFFFFF52433A5C55736572735C777577656E5C4465736B746F705C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6D796D61696E2E6300000000086D796D61696E2E6300000000EAD6A300FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000A50500005E010000240C000010040000 + 1409 + 0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000C00000009000000010000004A433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6D796D61696E2E6800000000086D796D61696E2E6800000000C5D4F200FFFFFFFF48433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6F6C65642E6300000000066F6C65642E6300000000FFDC7800FFFFFFFF53433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C68726561645F696E746572666163652E63000000001168726561645F696E746572666163652E6300000000BECEA100FFFFFFFF53433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C68726561645F696E746572666163652E68000000001168726561645F696E746572666163652E6800000000F0A0A100FFFFFFFF48433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6F6C65642E6800000000066F6C65642E6800000000BCA8E100FFFFFFFF49433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C666F6E74732E630000000007666F6E74732E63000000009CC1B600FFFFFFFF4A433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C62757A7A65722E63000000000862757A7A65722E6300000000F7B88600FFFFFFFF4A433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C62757A7A65722E68000000000862757A7A65722E6800000000D9ADC200FFFFFFFF64433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C447269766572735C53544D3332463178785F48414C5F4472697665725C5372635C73746D3332663178785F68616C5F74696D2E63000000001373746D3332663178785F68616C5F74696D2E6300000000A5C2D700FFFFFFFF4A433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C4D444B2D41524D5C4D59444549564552535C6D796D61696E2E6300000000086D796D61696E2E6300000000B3A6BE00FFFFFFFF3F433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C436F72655C5372635C6D61696E2E6300000000066D61696E2E6300000000EAD6A300FFFFFFFF3F433A5C55736572735C777577656E5C6D6F7273655F636F64655F747261696E65725C66313033633874365F6B65696C5C436F72655C496E635C6D61696E2E6800000000066D61696E2E6800000000F6FA7D00FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD500010000000000000002000000B2010000660000008007000033030000 @@ -134,7 +134,7 @@ 16 - A50500005E010000F70D000024020000 + B201000066000000040A00002C010000 @@ -150,7 +150,7 @@ 0 16 - 0300000066000000AB010000E8020000 + 0300000066000000AB01000003030000 16 @@ -170,7 +170,7 @@ 0 16 - 0300000066000000AB010000E8020000 + 0300000066000000AB01000003030000 16 @@ -450,7 +450,7 @@ 0 16 - 0300000066000000AB010000E8020000 + 0300000066000000AB01000003030000 16 @@ -470,7 +470,7 @@ 0 16 - 0300000066000000AB010000E8020000 + 0300000066000000AB01000003030000 16 @@ -490,7 +490,7 @@ 0 16 - 000000001903000031080000CB030000 + 000000003403000080070000E6030000 16 @@ -530,7 +530,7 @@ 0 16 - 030000001C0300002E080000B2030000 + 03000000370300007D070000CD030000 16 @@ -1150,7 +1150,7 @@ 0 16 - 0300000066000000AB010000E8020000 + 0300000066000000AB01000003030000 16 @@ -1170,7 +1170,7 @@ 0 16 - 030000001C0300002E080000B2030000 + 03000000370300007D070000CD030000 16 @@ -1190,7 +1190,7 @@ 0 16 - 030000001C0300002E080000B2030000 + 03000000370300007D070000CD030000 16 @@ -1250,7 +1250,7 @@ 0 16 - 030000001C0300002E080000B2030000 + 03000000370300007D070000CD030000 16 @@ -1270,7 +1270,7 @@ 0 16 - 030000001C0300002E080000B2030000 + 03000000370300007D070000CD030000 16 @@ -1730,7 +1730,7 @@ 0 16 - 00000000CB03000031080000DE030000 + 00000000E603000080070000F9030000 16 @@ -1799,7 +1799,7 @@ 3312 - 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFB201000015010000040A000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000A50500005E010000F70D000024020000B20100004F000000040A0000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF520800004F0000005608000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C3000001800040000000000000490C00005E010000F70D000010040000560800004F000000040A00000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFAE0100004F000000B201000001030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C40000007394000001800010000001000000F30300005E010000A105000010040000000000004F000000AE010000010300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED020000040A0000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB09000001800080000000000000F303000000040000F70D0000DA04000000000000F1020000040A0000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF02050000F102000006050000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF00000000010300003108000005030000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000F303000014040000240C0000DA040000000000000503000031080000CB0300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 + 000000000B000000000000000020000000000000FFFFFFFFFFFFFFFFB201000015010000040A000019010000000000000100000004000000010000000000000000000000FFFFFFFF08000000CB00000057010000CC000000F08B00005A01000079070000D601000045890000FFFF02000B004354616262656450616E650020000000000000B201000066000000040A00002C010000B20100004F000000040A0000150100000000000040280046080000000B446973617373656D626C7900000000CB00000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A6572000000005701000001000000FFFFFFFFFFFFFFFF14506572666F726D616E636520416E616C797A657200000000CC00000001000000FFFFFFFFFFFFFFFF0E4C6F67696320416E616C797A657200000000F08B000001000000FFFFFFFFFFFFFFFF0D436F646520436F766572616765000000005A01000001000000FFFFFFFFFFFFFFFF11496E737472756374696F6E205472616365000000007907000001000000FFFFFFFFFFFFFFFF0F53797374656D20416E616C797A657200000000D601000001000000FFFFFFFFFFFFFFFF104576656E742053746174697374696373000000004589000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFCB00000001000000FFFFFFFFCB000000000000000040000000000000FFFFFFFFFFFFFFFF520800004F0000005608000001030000000000000200000004000000010000000000000000000000FFFFFFFF2B000000E2050000CA0900002D8C00002E8C00002F8C0000308C0000318C0000328C0000338C0000348C0000358C0000368C0000378C0000388C0000398C00003A8C00003B8C00003C8C00003D8C00003E8C00003F8C0000408C0000418C000050C3000051C3000052C3000053C3000054C3000055C3000056C3000057C3000058C3000059C300005AC300005BC300005CC300005DC300005EC300005FC3000060C3000061C3000062C3000063C30000018000400000000000005608000066000000040A000018030000560800004F000000040A00000103000000000000404100462B0000000753796D626F6C7300000000E205000001000000FFFFFFFFFFFFFFFF0A5472616365204461746100000000CA09000001000000FFFFFFFFFFFFFFFF00000000002D8C000001000000FFFFFFFFFFFFFFFF00000000002E8C000001000000FFFFFFFFFFFFFFFF00000000002F8C000001000000FFFFFFFFFFFFFFFF0000000000308C000001000000FFFFFFFFFFFFFFFF0000000000318C000001000000FFFFFFFFFFFFFFFF0000000000328C000001000000FFFFFFFFFFFFFFFF0000000000338C000001000000FFFFFFFFFFFFFFFF0000000000348C000001000000FFFFFFFFFFFFFFFF0000000000358C000001000000FFFFFFFFFFFFFFFF0000000000368C000001000000FFFFFFFFFFFFFFFF0000000000378C000001000000FFFFFFFFFFFFFFFF0000000000388C000001000000FFFFFFFFFFFFFFFF0000000000398C000001000000FFFFFFFFFFFFFFFF00000000003A8C000001000000FFFFFFFFFFFFFFFF00000000003B8C000001000000FFFFFFFFFFFFFFFF00000000003C8C000001000000FFFFFFFFFFFFFFFF00000000003D8C000001000000FFFFFFFFFFFFFFFF00000000003E8C000001000000FFFFFFFFFFFFFFFF00000000003F8C000001000000FFFFFFFFFFFFFFFF0000000000408C000001000000FFFFFFFFFFFFFFFF0000000000418C000001000000FFFFFFFFFFFFFFFF000000000050C3000001000000FFFFFFFFFFFFFFFF000000000051C3000001000000FFFFFFFFFFFFFFFF000000000052C3000001000000FFFFFFFFFFFFFFFF000000000053C3000001000000FFFFFFFFFFFFFFFF000000000054C3000001000000FFFFFFFFFFFFFFFF000000000055C3000001000000FFFFFFFFFFFFFFFF000000000056C3000001000000FFFFFFFFFFFFFFFF000000000057C3000001000000FFFFFFFFFFFFFFFF000000000058C3000001000000FFFFFFFFFFFFFFFF000000000059C3000001000000FFFFFFFFFFFFFFFF00000000005AC3000001000000FFFFFFFFFFFFFFFF00000000005BC3000001000000FFFFFFFFFFFFFFFF00000000005CC3000001000000FFFFFFFFFFFFFFFF00000000005DC3000001000000FFFFFFFFFFFFFFFF00000000005EC3000001000000FFFFFFFFFFFFFFFF00000000005FC3000001000000FFFFFFFFFFFFFFFF000000000060C3000001000000FFFFFFFFFFFFFFFF000000000061C3000001000000FFFFFFFFFFFFFFFF000000000062C3000001000000FFFFFFFFFFFFFFFF000000000063C3000001000000FFFFFFFFFFFFFFFFFFFFFFFF000000000000000000000000000000000000000001000000FFFFFFFFE205000001000000FFFFFFFFE2050000000000000010000001000000FFFFFFFFFFFFFFFFAE0100004F000000B20100001C030000010000000200001004000000010000000000000000000000FFFFFFFF05000000ED0300006D000000C3000000C400000073940000018000100000010000000000000066000000AE01000033030000000000004F000000AE0100001C0300000000000040410056050000000750726F6A65637401000000ED03000001000000FFFFFFFFFFFFFFFF05426F6F6B73010000006D00000001000000FFFFFFFFFFFFFFFF0946756E6374696F6E7301000000C300000001000000FFFFFFFFFFFFFFFF0954656D706C6174657301000000C400000001000000FFFFFFFFFFFFFFFF09526567697374657273000000007394000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFED03000001000000FFFFFFFFED030000000000000080000000000000FFFFFFFFFFFFFFFF00000000ED020000040A0000F102000000000000010000000400000001000000000000000000000000000000000000000000000001000000C6000000FFFFFFFF0F0000008F070000930700009407000095070000960700009007000091070000B5010000B801000038030000B9050000BA050000BB050000BC050000CB090000018000800000000000000000000008030000040A0000E203000000000000F1020000040A0000CB03000000000000404100460F0000001343616C6C20537461636B202B204C6F63616C73000000008F07000001000000FFFFFFFFFFFFFFFF0755415254202331000000009307000001000000FFFFFFFFFFFFFFFF0755415254202332000000009407000001000000FFFFFFFFFFFFFFFF0755415254202333000000009507000001000000FFFFFFFFFFFFFFFF15446562756720287072696E74662920566965776572000000009607000001000000FFFFFFFFFFFFFFFF0757617463682031000000009007000001000000FFFFFFFFFFFFFFFF0757617463682032000000009107000001000000FFFFFFFFFFFFFFFF10547261636520457863657074696F6E7300000000B501000001000000FFFFFFFFFFFFFFFF0E4576656E7420436F756E7465727300000000B801000001000000FFFFFFFFFFFFFFFF09554C494E4B706C7573000000003803000001000000FFFFFFFFFFFFFFFF084D656D6F7279203100000000B905000001000000FFFFFFFFFFFFFFFF084D656D6F7279203200000000BA05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203300000000BB05000001000000FFFFFFFFFFFFFFFF084D656D6F7279203400000000BC05000001000000FFFFFFFFFFFFFFFF105472616365204E617669676174696F6E00000000CB09000001000000FFFFFFFFFFFFFFFFFFFFFFFF0000000001000000000000000000000001000000FFFFFFFF02050000F102000006050000CB03000000000000020000000400000000000000000000000000000000000000000000000000000002000000C6000000FFFFFFFF8F07000001000000FFFFFFFF8F07000001000000C6000000000000000080000001000000FFFFFFFFFFFFFFFF000000001C0300008007000020030000010000000100001004000000010000000000000000000000FFFFFFFF06000000C5000000C7000000B4010000D2010000CF0100007794000001800080000001000000000000003703000080070000FD030000000000002003000080070000E60300000000000040820056060000000C4275696C64204F757470757401000000C500000001000000FFFFFFFFFFFFFFFF0D46696E6420496E2046696C657300000000C700000001000000FFFFFFFFFFFFFFFF0A4572726F72204C69737400000000B401000001000000FFFFFFFFFFFFFFFF0E536F757263652042726F7773657200000000D201000001000000FFFFFFFFFFFFFFFF0E416C6C205265666572656E63657300000000CF01000001000000FFFFFFFFFFFFFFFF0742726F77736572000000007794000001000000FFFFFFFFFFFFFFFF00000000000000000000000000000000000000000000000001000000FFFFFFFFC500000001000000FFFFFFFFC5000000000000000000000000000000 59392 @@ -1838,7 +1838,7 @@ Debug 2373 - 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720000000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7200000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720000000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720000000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730000000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72000000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 + 00200000000000001900FFFF01001100434D4643546F6F6C426172427574746F6ECC880000000000002500000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018017800000000000002600000000000000000000000000000000010000000100000001801D800000000000002700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001801A800000000000002800000000000000000000000000000000010000000100000001801B80000000000000290000000000000000000000000000000001000000010000000180E57F0000000000002A00000000000000000000000000000000010000000100000001801C800000000000002B00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018000890000000000002C00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180E48B0000000000002D0000000000000000000000000000000001000000010000000180F07F0000000000002E0000000000000000000000000000000001000000010000000180E8880000000000003700000000000000000000000000000000010000000100000001803B010000000000002F0000000000000000000000000000000001000000010000000180BB8A00000000000030000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E0E01000000000000310000000D57617463682057696E646F7773000000000000000000000000010000000100000000000000000000000100000003001380D88B00000000000031000000085761746368202631000000000000000000000000010000000100000000000000000000000100000000001380D98B00000000000031000000085761746368202632000000000000000000000000010000000100000000000000000000000100000000001380CE01000000000000FFFFFFFF0C576174636820416E63686F720100000000000000010000000000000001000000000000000000000001000000000013800F01000000000000320000000E4D656D6F72792057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380D28B00000000000032000000094D656D6F7279202631000000000000000000000000010000000100000000000000000000000100000000001380D38B00000000000032000000094D656D6F7279202632000000000000000000000000010000000100000000000000000000000100000000001380D48B00000000000032000000094D656D6F7279202633000000000000000000000000010000000100000000000000000000000100000000001380D58B00000000000032000000094D656D6F72792026340000000000000000000000000100000001000000000000000000000001000000000013801001000000000000330000000E53657269616C2057696E646F77730000000000000000000000000100000001000000000000000000000001000000040013809307000000000000330000000855415254202326310000000000000000000000000100000001000000000000000000000001000000000013809407000000000000330000000855415254202326320000000000000000000000000100000001000000000000000000000001000000000013809507000000000000330000000855415254202326330000000000000000000000000100000001000000000000000000000001000000000013809607000000000000330000001626446562756720287072696E746629205669657765720000000000000000000000000100000001000000000000000000000001000000000013803C010000000000007200000010416E616C797369732057696E646F7773000000000000000000000000010000000100000000000000000000000100000004001380658A000000000000340000000F264C6F67696320416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380DC7F0000000000003E0000001526506572666F726D616E636520416E616C797A6572000000000000000000000000010000000100000000000000000000000100000000001380E788000000000000380000000E26436F646520436F766572616765000000000000000000000000010000000100000000000000000000000100000000001380CD01000000000000FFFFFFFF0F416E616C7973697320416E63686F7201000000000000000100000000000000010000000000000000000000010000000000138053010000000000003F0000000D54726163652057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013805401000000000000FFFFFFFF115472616365204D656E7520416E63686F720100000000000000010000000000000001000000000000000000000001000000000013802901000000000000350000001553797374656D205669657765722057696E646F77730000000000000000000000000100000001000000000000000000000001000000010013804B01000000000000FFFFFFFF1453797374656D2056696577657220416E63686F720100000000000000010000000000000001000000000000000000000001000000000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000013800189000000000000360000000F26546F6F6C626F782057696E646F7700000000000000000000000001000000010000000000000000000000010000000300138044C5000000000000FFFFFFFF0E5570646174652057696E646F77730100000000000000010000000000000001000000000000000000000001000000000013800000000000000400FFFFFFFF000000000000000000010000000000000001000000000000000000000001000000000013805B01000000000000FFFFFFFF12546F6F6C626F78204D656E75416E63686F72010000000000000001000000000000000100000000000000000000000100000000000000000005446562756764020000 898 @@ -1851,8 +1851,8 @@ 0 - 3440 - 1440 + 1920 + 1080 @@ -1862,21 +1862,12 @@ 0 100 - 10 - - ../Core/Src/main.c - 0 - 31 - 44 - 1 - - 0 - + 9 ./MYDEIVERS/mymain.h - 16 + 31 1 - 15 + 23 1 0 @@ -1884,10 +1875,10 @@ .\MYDEIVERS\oled.c 0 - 318 + 1010 1011 1 - 153,348,542 + 0 @@ -1910,9 +1901,9 @@ ./MYDEIVERS/oled.h - 13 - 1 - 25 + 14 + 5 + 26 1 0 @@ -1928,18 +1919,18 @@ .\MYDEIVERS\buzzer.c - 5 - 58 - 75 + 0 + 1 + 13 1 0 MYDEIVERS\buzzer.h - 44 + 0 1 - 14 + 6 1 0 @@ -1955,13 +1946,31 @@ .\MYDEIVERS\mymain.c - 29 - 32 - 190 + 10 + 134 + 293 1 21,140 0 + + ../Core/Src/main.c + 14 + 1 + 20 + 1 + + 0 + + + ../Core/Inc/main.h + 18 + 50 + 64 + 1 + + 0 + diff --git a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/buzzer.crf b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/buzzer.crf index 61eafec7a293a1e67c37ffe28c0dc2f8a178f337..560f427e730aa60186a1ad671648feeafa293b9c 100644 GIT binary patch delta 961 zcmZ8gQAkr!82-=McJ6i)x2cG!aJM1!qEnDEqhva_G79I^s3_((=ajCS%?T+Hivl4Z zY@TohK``ne34)An`p`o?ghbR!;BADxNfJ>HS+26qmfpL%@WcQ8|M#8m{}1PWx^H`S z*H*M_0Kf=@O%Z6asDfWeKBNTLXG+>D__>$!f6-9V(_DUg8!gIpfUS0Wy)zmM(Tk+i z9E?T=?1OOq&X(FsKa(a?EEr@(MOKwB_J?vzrC39|Pz$fXS$YFGj0$wg4S;LtG_EXT zR=(hHBh%j8o}-m6Yiem5ZsC>E6M6;L8x{6XCvlUge zNT)PT6~19k=T#`vFWRQ^@W@cKaFw)t2=IP-RZ~OzxMKQF%d3h$rYKl5mAeW$q9ZE9 zN)tMV3Rf6xst877@zA+KlgF|f@V;%6k^#{_I#}3mrKd@odd%;<(R)&0)XPc-R7N(> zh;RiAL(Y45d}!GBulI9V091PPM7yiwn9JLJDlj%N5sKM^puC#$OKaTZ8i!b578({> z7CLE-Bdg6-JHZ2h0L*cJ@Qlyza~<#L@O5~*BCwu%-AWq&BLoTvUnSf|j3_nYBzsK7 zu(z7MS|E{VJTwY3DZZUlR%b=sKrD0?ZoM@@EwLd$S&{UQ#mD_nCs|#@inP56G$Xm) zByB(kQy)5sL$6ODL6<<|lG8&xSeMJEq(@$|Vl;4Y4+*TlG?@+%DIMTGF6}VD^htBK z!`x%xrG;Aki!iT;SE6PPC(r|F_L}|z3KLitai`@-hQK!wdn|`D9DElMJE(zW8~Ln0 w!$UTo2|CLvEB_D$O#+oM%}6`5GnZWG}fr9IK00My~HMl=n;CFxg+1)7#`19dpjo$^wkQkN&(?uh z!Tsb5$2Ch%_UvtAL2SxR4)TgQG-e#NwdUYSp7d%Co-*#(>&tiT-4k29N^G_b#FNHx z+j3*4(_?&Zcjr3RaL1xGqox(cUWb%p+%|Maa}J(kSnrR-;)BY*#X}CyZU)ixV2H0z z4G-*IeC{!JNG-W*zOe@VAT1gc;L=k$#+MeO-?@l!&7A$j;2tgX-`Uf%1X%Ly_Klm` zdp31-ztB6hf4>s1iNK+&3+Y#L`QV&$Y|e=sg2TpP=WrzEoYJkvnctq49!somkv#aK z2O1vchX+!BY)~11sbmqzo&bWFR~>zEh4$e4Tj9?U|^=LRjQ8`LbZoyi1dXkl8hzBn7+=R^kmL6mwk~e0dJ*)MdgR1 z(NH*j*R|x*OtmDvZ)mR?9u5sC@t2i2ESZ^Tl`2N=WkkQr600rI_f*Lg9fnoBN42%t zsFoJ8#H?5(u2`G7%(e_CBjzI}xvb5Y)H~GI2TjRh7V-$o8`YdzSXE;Y*p@6XStD$~ zs3ry>#uuemaIrzVm2ebF_@Z>%xHVsas&o_gjGH~t{~?ru-4b{}bN3Dn42Src?Sk55 z8Q9&X*$1?I%LJYg9)^pl#FbV_Mtir8(}}r_(#bsBI&-W;YOcuB5j`A5I+8=jttls* zMJm+sO5$pV)G4aat>b&CrSL(P_ke4%%s8J|6_jok73RY^Bp27V=y+qy7nTyfu=Cfi zRRRDje=#r^KP#4}}cvrol@0~(r=TjYmQYvG_qHktfL6@n_+54HoTjtvpi zV5*=-LG5e<5903#I#~Z9%^dDxuW>q+2ZuB8BImDbRLG0tSI;3(P_TidF&3O-7$)?%xz^(Sikvn{RFTJ>jbe^^1Swf$-Nf6u*Vb~g~Ppa1-A3i*yDOVH0 zU|Dffc`%rnRov5?IXy2kKQBK&3mSsKrm9-Wm{xdMLH?r`C8oP){QznY;ZijsBhqn^ z3xqg{>p@&Soh_S#-CeMV5}7h4{HNrLO_Cgk%X-w8awgu)M0Px`tnldZXSAp6d;ZUx z8lIXJV{m@>jjT8`2Qm|IUG(VtS+5zc1W)*-?K$DUeJL3AY`%W^=URBrq${KxZ+-td8`h1!q8FHN1JeK|ZbuMCW)yeqYn;r)4+XuHEt=Urq@gh7|!$_>At zcT_v(7@r(|dD^lVyJUxjyYoH6CqZ~Jt|_>tKDsS`-h8boe0=-17-3iLUEw`DS}uOb z<<3|k{7;CCjUsU|`7cl$Xlw{JZSH9o{;`_&dri+h=?bsjc~R~tAsWvp`8irtzA7r; zscD}={#W5uJC7Ov&}SSGLf1gkRp3GVY(qXX;;za|B9BAVt@+2Q>Zr zVeN+G(3gN5()3p%B8>rv%q0<*{$8AHu{KIr4dqb2u)Hi^_?J-;m%iN_(MmB7I4is<_HBSnf!P~>~MepU8>TYrhm%!*c1ApAe2GH(5^UjM~z?E?+X3kd(4 zR7;$`%}}*$_e6`#5dOb|d&+AyHdR6U`0xieSfM|SUAk116aiFRaE&m~;zNq#+y8mt&Py zIJ!d>H)_Hs-P-S8 z?+G-PmT;_H>DG4ZdhQGH3HsOLmESRKI02C-{QIGa9NNUjxUJ&SrWzpRT|+=sS5(_x zk9LPg&kctX;M1mt8YLyHn)+h&4fjVelMSo1xTdN^H8%m8Hup7kw60;p-tcHodGy9- z6Wkf=3kCWlWBs(5!e17bv3`0!=@R{kRT#0k`w|B-^%DtxpP^;ImGuox!XK)Sqj7R7 zLAB_Qaf6!F7Dr>mYNGKn-i>^^e&=u{IU*`JP55tx;Er^wiG~0P9!uAMa;_k(ISRpN zA?SEJG%!y8UzSXds>EP!J}spO8p?i3RIOr1&O{Q5sWKBUX=*kOUMa{ z%u>i7B!V~~&YKc}V+eUiB4|7z?@0vhBjjX8$SSQW<3gu02;o8>ON0x3DiJR9S%&EM zPmBvxHPvziRL5zz#Ob*Qla>yOrP9TvrFH0I6-}jqst9IS<;{v0A|^(7O?i1B!cK&r z7DTXQtD?T9EP|$40XfEL=%rhw^|b+*Pg*jq+TzA}jO17q3+hUns_N^QFj0S54J$-q z%&3{}f7WniPm+4ja?*o20eToIi0ENLp?-V#Pq(Cm;!Rg}kt_xuQL#C)7$aqoVoa#i zU-zpRiK!mE2B@i#YT#W`6Od{cX^N;}LbC{zEoy?>zeLO4MTYiQ`2Fvx2$9A{EN|4S zGzpX{g!H*F&m7vFQuG2U!n9hdMu;mrQU5$i88kEM547<^$R%5i0cRwg()90yPw!3* zjUA?Ef2>&*a$2O|8HfYo41yg%G?#L#LgZYsf~1osgC)HwZ#l*DRU^ke%DqvIhmDJstzFi=S!+Crsis5Ut> z9E`T~o#9t*P09Ti%3^Sq))ZIOHkQjM#X^TTCqk*3Huda#GxTS}Blo0Sb7{PueP4!E zR=!ZJU3&KO5^Gu~j9fhryn-!-*=d-dEOk4m)4qHB_{%1RrYMafMFtsK-% z22`sVC4B3i)QP*|wUegapO}soucLw1u&HGI%9ZWC!vC9iO)GjSO?y5*H5d#}8AuDi zv**gV8%Ard#g7SJKQK02wl__CFuZKdwh)cwS+O@%xx**GkXn9%1shQpN!FtB%sc^g;k}&#`gX|dskaW z*D6#X1hhr!D!M0Jvo9kdO1S*B@Wy?X(u4Z;g^%nT3+(v5(c1CwpZ8@toXfu)&c5w2 z?cwl=+pbJ~d}L3cx4nIBPk*4dqr11Gf3wK(KOUYOzS{lp$fAFQ_k>5I-2LGU&%-0d zi$XEkHbs%7iu4c5A2_= zJrMrI{+ZfuZaXm3)9e%C58=xXj2=D>viZ2C<0=TZ9JoQ7Wc$2EYWU278)7!7;pcA8 z2z{pc-xu0Qv97qX1XlO8Hnpti!~p$BXqtYfi*yRNzu)g*>3Y28QJo z_Lg?{wwHExx2_SNfi_t2Xh_Crb9J_df0s3O`+$AJfUV(j;nH!rj}F+LXMHZWALoOy z;ll^g?XCBFmPgH>uHAOjdcaeohh7od^?L5@!vYq?XR4Y;8Zd|`>$Xa1G*Z^E8fya% z9TPVY<|JCx^%V{$St86ylL&@CDM*(HMlT_mRwZp$QavG8c8*n}@~-TOR^xm}(U17HPl^fGkc%7VAG{(~!mLPuX;2vH7BGCbE~RY$yl$X_yy@KGAAulG|rOu;Q@? z@~~QPwm<|*<^|*oR@S~!_z!rr=V1M=;fa>q%TqyNHI+HtE0y#N3e~kbS)!crdQjEgYGx{9NjVys%Q{pVZRVHDNiI`W>-Jru?l5OU~pZA!4)WN zD2+zd2}8RLx_;+3tg5oo`ZBDas?TIZ+J_$Tq|PidwXeEdx!+3S6CVrI#l#GbOx$TW zp47^`eew~{*ietD-4Fe*Cqci{nK&28tqSQu+sbN-qxL*wY7ayH$>cO_>RF|*%AG74 z7ZX7hkv!(UMUl8kv}nIX+LJ>fP~P06_5sp&r%mn0(0?o?2ivcR{(0q#Iq$aW15HsB z6D%_lB4aesa@v|4=}T2znpIC{c&a(wTGRk5LK4Xofr^^q#>!|j1H-geV8&Ca7=>j4 z;V+7(!Ms2|tf0KhDr@O)K~xih2?+>dk&rl2%nXC_Odm%1d?k}WdCas$@tv;h5q#nc z)T_g*bi;3kX>X$b`$u8ZPUlVT(uPWvbt4$KA%<1&WD~5CMmltnaH3V>WRtC$(s@L- zPd(;Ip0OZa`v9tMOUty%7e-xNTkLd-TYq~LbkMn+`i4Y)Z(sVjCj(;zj>EI0imLjk ztDcV6J|lgj@eILPRHWJZ?ymVqO?eNpo(+kyC*aA0}M?0%3 zKW2nnoS@x;qyDR-6D`?F*ogBoy8-bSopU3hA_7&5%H~F!@a+Wc4yf2Z27`kO(y_qN zAp(I#^zbaiQJPwAO#Tg<{lHbti%#8_zPmAIR)yk6cI+jkB z(h)RG3P;d%D^!9#u)5$uH7wQj=A~$?f!(@Z+e>R5n<*e`9jh@c<#S200qvrLJ7sgM5S|>V{6tJcta6ei?I#Ir zAR=BUpnSfPE~GqfzHm}5b@noItdhtyUPfmiC5}Crn#G~A#-b;Iq&y(7AE{Cg8ss$c z^a$-^-IaSVGd?W%`kOzHgesoq&p8i~5PGe?t)r-uN<$-)=Vy_W>R79kag~|g3 z%*Fi7MX~v#qJ9*e!OZCVkF}hbsbJ1zW?G~qHi*O=1LiDdrtAB&K-3bW+X3ty<9)7d zoPz5@G@hx*oQMu=Cy7vkRn%dYMVQ!N60^dpprKCL$_TGm5vr}S;xg(P;?_jCc#KGd zI&80sOKPzA6BYE{0#+c$k8)a3KMrE81SHT(V&^| zxKDe;jURxp4-uE)x*S&#uGzSBoX(+0iN1(!AZr}7%PxiE2b(j;gpjDmb1|T&L7YjB=vUHvmYwXv5 z>KSET3Gq3&ijRK&Q%}61waFu?6Mjh; znRJgm`nV_8@M_vUnx6D4d){%+gp^D1TNxHS+3r$QQHHDhhMmVfM|U2N`|UpMRr-Bq zs(nk)+ZnA&{hCHU&X{u{Ux};gXw`CWlFOWjd=0MJqwOoazty#7GIh2cT5Njk&`NJ( zRLOL0hn=*_Tjf12w8?tXF}rn@clxMtnl=;WAi)!&9#;U@eEW2gk#_XCRo?6j*F=|n z#Y%6H{o`F;)1G>Rw;`%C-uN+jO}G}Qx{7b|Zg18OEAw4%d7B5-a)W)>Ti#kS{c;?K?GN7a z-k3UG(*jZ*S-uEYGp@x)cfajTO4D8;Ki(OmBN0pzyb9M+T+3_-jy-zsXWq_X+H$J) z_84hb?#=dlUZc*7zAVy{Ua)5y#*9(fnpPfdKoDA%<7zp2lVRLtYL6+~&-e_l-QhQ4 z+%#P~X@BN7W-NiW0&MnNhE>zi)vg}-U>8w;$R)D;=^A_{AKsL)@&N~zs4Cc0V1Q!Fjql%HLecom-M4gSVrFnt<%;z5mv!CGtTar9NV`1$?G?C zceKI&J)Qm0j(8e!lj`4fWK2;&Qrx>%tskug+y{vLjU%GO? zZl9_&+KgWb?Fsb7Z|tR2#-piMXxf`JX~_XZzm?MyyY))(>}n&!qvhDk>J2+;#B}Wg zdq%)G8hTl1je71s^-L?!+uhpUw!XK$zH4qbo=^(^KM~y6CE!TY(7v{%qe~J$r--*A zULX|PC&&oDjvs6h?J-@Q=J=7^NTTWZ5u{sFi$Q;4hi0#tZ;Vdat!XPA^EbluO}I8I z^N-9o>c?n@D7+6u&Bwg9!~Sij@pGDSs`aGDkA7>dF;(;4rD@mdNe|kubs63HzjSE_ z;iET=CWK;Ne@j;@j94BMnmc4udgu{xpubo6SK8Ng8(E=Fh~&!1sPF0T=xHGNg;+Q%}cWKdm;9=Q(JR@E!N>@l89&4mBpwDHG)B9$J&28;*x4T&tBvx#Moo}%p=#~l>tbnT7`iDvW>S1)wXFVL@e=+fZ`3ikc@?dTqv*S>wEk9nOFy6 z1w!uekra3;%pUdj`==TG{=-IqP9>30Q<3%+Q~O-)JE*5`z;z?8n{esk==cB6m=cer z`+wrh>tn{he4XcJh}?o}w|&HGUOTNND3@XS=_ZqMc|rLrj#k=_r8>AG80hHAoEyLs zi$GOfaGKD{>?;j3Z9zG+2N#~kg)4g3cLh7!+w#vUo-eey5th=5RYdA95n82vt6`3= ztYV4aIRe$~UBTADDyJi6CG{NP8v6soOi8N+x8+<_b#}UGjvZAG?pbY|Au!JBO!F&v z{p)w;Ij?^i<{mh2FRp#|ox{vE>Ls!CaQ^L0F`ibdRTxtHaUHOI31$%ean|c(DU;P} zTv`76AcaI-X&=30xcN++o}WMM==(|L%`P{+z-C{UYF0*aW9+w5&0mF9WXn=~)5Kuh zbr!Clg}X%%<>{EBl3O$m(&sq~ze8LZ!*`3*p)=E&;D!dAZ^XreaF-azc%0!I1C}I+6Xk1GpaW0oy03%gc;jLX@8X36Tqo6pFV>{AnS5z;t)kNzPt_sP!KqCYV`Q$LOC9)CBt&f{Bvo8ZS}3K; zFd!0=B)ZD!ZP(L;i$WJ@DU^dYA2R6S9}`L`H zmft3eTF8DCNC&QD=|5s63$dJvw8vNvvM(9dw1^}$4aH=eKwXc1O_J@WdgTZdN#HJ% zQi6_2Bs>lG#R44R`v;Zw3)R7rEk(DAA4yTa)V*LkA*2!mw_?7`gG0$Ld^>qQb&Lp! zm&q&JNM0qMxSjM+FH=Iy?N=uINU4ujO&WH}FNv(jH{o@n3vs6qiQrwLih!^X7s|QD zgDxiHRYj8GImmU3ioZ9oV^aE9-N;HA{$$ijT)vUxs1TU62FTncYX*lN=v@JG@? zHH|n#R3YZbJGt|6m2-_i96*AksUq5Jg?ycgDgKLSk=4bu!#BK!Im2D_*ugiOP{_1V zE#$_JaIrhZaU!qqQaE0Ck)BPP{D5TOZ)9>T;+OGUh52p{@?J8?w3lx)TkP-dh! z#Apf<*A1g$Lj0ZdJw%VDKu}`7HkBcX04@?A2L#Zy19>DoUJxdrPYe($2-&Sl<)i(= zq%vV*)N$1iq4J=N6no@*`NZ}8R}RszqATSSiAZ9Z1bm>2D=6orNnS+J=L$Op;PuhA zHB!YkAD$R`L&7Du446`h=_`@iOQqO9B`r>fnKDDSIM?H-JkHn06xWr!`-wwr$)dtV z`)IX1$#MA>iDJ_591uL$&tpjlxk7?4X_SWYt7O5)+@e*MlJ2COFNj+QE&ei5^;kTx zH$d{aUZO=&_|%A{teR2rNRJrX$-nvxJPDN55L^5&*Xav^wo%S$LR>5EA)b<=yKfO* z?vVsZ^WiC|OLaX|9wS+#?LzCrDvgm8SqIU?LU69#V_puE(GEsf{5#T8Qw<_gZWpC|AwLL zY{*5*Vf+af#)~WnC<~6{g1}`#Kv@tlQjp5Ub2&g+4vu_<>8~=B<-o^wL%N83MTSZ| z3I3M^D3$~?TjEXu%(D{59za%%7(YY`CUC`BQMxo>iV$#`aKTN3~fc!9g%1jBb3e$3Ft9!z9-3BziJEey9Xyo=!@^gcUz;O9(ugW*Yr8oP9)<64Ga zVt6UTxeS*x+|KX-!v`5Y$MAE8Q$y_H7KZy7{+!`I8R9J)4eW8Q#IL0=}gN zt!8)|!zUTO!|)=kdL$RRiZjm}iZBwB12Gmde2L*F3^OoS5WkJ#BMkq|a5m-+;-6rc zoS^W0hE)uE6%2`OO!x*t%tF6l{AI@9X5546l=zbgqJrs+&t<%mahu_jOn-*)Uo-wG z?pWy=pY5X5y z!m9*fz#kc>y(%dfMG*8aF}{xB0K=~_yqDn<41dk=HHPmqOu#xpddC9F@jrnH#S8-s z5i7zqJvuCp6aFnBen}A9oImsM`+%X8pBI&Xp6Is;@gl)~?7BHfn;Cw~L%Rl8awiAj z2Mi~3FxD~bVR#e6&lx6iQ06eaf`jgJhSH$PLaj0Tg<4}apo@8Uw>#rs3SJhq{AXlw zm?xg~QTl%oeIGrs0PKs>zfAZZUUb$)>CX|}Mo<&Pxydo;dBVQ|&&c(EhY3KLVS<$=NZ1u@ZSubilssKutD3=|9{{LojyFn_%tr)xaw-g zH!!@Fp`%!~@M{9!(!!vDXiI-a_*dDJXzdBs|E_`|;mqOsSqf#rgIw@B9D$kd%;mD> z@Yn#;_nlQf5>&0z|j*GZ^c%N1ki#rEa>5uIR&KazRs@OCd3fujm|4+j%o-MkFp;J&+@J+5@XEatm1)oS-^g_B8vC*t=C$_wGtBPfHGO$V!M4iE?k&@+^Qt$u2B+J_ zGtE&ctEc1#H!5!X{N93`1!dQ)Ut#~d(M zt}ShiRkfD}TkP?dnwFgzFpcEGx_r`E+0|&g_1p{BfoVD8ClTRO^WLl z&78HSb#vR6jVtU^v&`J&zBXAB+|>oE8dl_2w+364;>1Gr%7teXim&RQP8Cd>ws}KS zZ~u(`wJpI8C3bV68Sg7^lx@vhJhxzDeN{*0Jo`w%9DjQQOe?PKq>5Kvv$ASYV9mxw zYgYzKRY`iGCk46}l*zW$Y@XZFnLodzzkj82$d#9xW^%zgXjF&$YdiB+wMy&8^tLM3 zyu5d z$XT%H(&C)%x$|cbGh?)5=FF95&#Nn4vT9@Bg8r`j;A*OPl)d(HcxHZIF&Z8$?A}sS z(zU31OH*rbjs04kIl(`#UwWjvx?=O%ioX1+`f2tvmzxsY*bp7g;i`-LJiWG|R)7Te#LZRRDPYZ}_LtrBhe ze72dMJY?Tvbp*5gLyUG`m8x&F{cyDzH}s6*C>UiAEXF)J#E^5e zq}rFwGZTiMlGrJUOUz+I&BKn06#HwXFy#Evh$j2&HzDI6Vgx%{M%tNW=CGm1sneX{ z_O2S!H`FBIXc=bTS7z=SYBiA(Z82EOnNwyvG7I%??gQ83g9bu?hHI%nwH4s*mf z9{n;3&K>?Ob*lFaYsLC4TiSb-73VC9vy?)3E+W`U8qZx@Nif6ypu$W!?{LojqLDn> zJ~r1(`l8`{y2`xdLc@8+c?WT>eSz^i&)b# z$KL#UbNrZK`zExzIf<0QEuPAU=#cWTj&eyK(UX^vUeAn=FltQ__3|sG`KK!hZtL5ya^qBp$+Wl z3+zzQ>J&TFXeJJ|=waKud8h$3sp&%7*YU~c?ml_v`UM+X>p~mbV7)x!r44z;o25>G zWBo&{U+b>I`gQFBGi9iqc=rsUn92>bk7({)SC3Cb{9+J+u$QJM2^PNOmxSnKR#ORzjkyT4$E8e{tfR=rt6 z55A}^U$E3g1<$wMp;I&MJxkzd)p-|O`J(F1xBLxK=e3LGnZt%2s7W!dI^VuEs_bAX zcDCp4TWv($WZyY^RlDaZEOBU*C;dWeq5Z)UvtX#`#gN*OVZX2xJL#d!0=Wd*qs?Yui14k1il)79Nr=J2;iYOv*j+NsT0;EtTK>Ib7%MCHaRy(GW^b2%v_j znB-{ky$P9($eomEos@-wV}v@zq<=N}H%5s}f#@V9f+w$oQw{zW(K~3GAUod<6iu}!AS-W@=7v+sg8jcJ7Rdj_LUf3CJBU4NVQHxMl+^Hp1(ZQEq^?U96?Y%eU;}>B zMN%G-S$ry_V43Rr=x12i_}R~Tj}jxqz7@q2ZR!C4`{KgJH)p6px7kpv?R6& zU%X4dKsblmpMu|r3S2cnS$MC~;@r_8&nk|zm+E-d;YG>_cdo3{=^Yt)kh)Py`UHNy zSr94Y7==K>BzRv)+#TtgTnJG_(@%Po2ppme&0W{3jB_V*u62x-#CO=E@J+KL1*nOo z7@?F%-EPWc$CSf60z{JOViA|FBsc)!RVN6Omm}LjxR9OCszfF%?pI_-k+goRyc1(T z*VZPb=%WK9)!k4+6Dg7=4Wpc+h4K`p2t+E8M_FX#zlns1YI&D8RS540$YG27LP^GK zE1ST>39-`uo)n^xRlUXaOYuZhNdBiWzDL%&gQ})Ct5hOPcyK?Y@atqVA{M_Qsjho4 zNTj4hm-;Ds9o%U*Sg8L|n)Hy|WFUU}YU0Sj3$3ybQSedHPDUX)N&wZG;VF~!)jTOl zMBb#uJfvJ=;6Wlj;S`VPAu9bwN^f2QxRwgffP96I7)pxBauLOBsAd&{l%B*Tt2y|j z1cWGOgORvMhyg(SiEUg&_OWkCuaYM&-Vt6-fQ%4N(vYBxOq!@6IZ2RgNp1e=eTwbe zxqyDrJv|CI zCaMLF4fKjO>1_%-YVqL2HbR0s@&xlyQ)rR4G>s$RU{180@=+q*5pI@5Z)D1o!`ll@ z+E&IMG*e0YmN`P?lB=<p=)Vq)Dm~GOup37*9E?280_Ot5WD=)v<1TSHearS@=p0Yba$p zdI&^QY1?$tK}=Yk*^m(drXPYot48*wC!$<<{wRJkPI~^N-vTySL}Xm z1;(#iuCQqOYf8ze=qCOSshP}OPB}`>@Q_*D;3@H;SIy|is)PpM9d&lHS2|HLK5_&I zzAAm%qw#*@Zy(FU3(PHxNVUK?Iio9s!Qo#Z0ve)_tE`xXrI2gH4cZXhz94FhI^PChkY$lWAFrYsX;1La||Gm|97OA|p1 z2?OuDR}$Yz2@1YMR za^%=`Jn{!A13o$H5;D>_$UL`dgA~9_N2%rvjSby791sb5xkosZG*>1yT%*O7Cpp0D zq$_0mX@o@GRTFI`sIp2DC6AJVkL5~-45fqO*m3|0HF|RhDPrPe@w_C+cAijKVaOOK zq)kz9^4hARVls+uid4;NP_gu-D3aC+aV0Avph%C&Dm7URC=mF}X}*+o!7l1rp9nhI z56iwMdw0n87e{-r7{p_^RQ+4UAu8h-?Owh=>L&RYbHSwf+NF#HrqV=N9y*kXlDO1R zCE!0t4A8!RlNld6NE^!ZR@~@&H5g{7j}j?DPvMe{Bgkp%Bv+MGE>(GP%z~dB&!-cn zni{RCpNOcL>Y#M50uaMOPEOd1Ybm)zKt`4$1joL%0)o!SB|b4!Wvi*01XUMpU_j+@ zL2^pXYA7p{5vhqoFicsZG_ZZL6Uc?kThB!kc+@6?741{i)lx*wbl|Ek&U9m@iLvy* zMdE77gk8~DMH3s8k;?8IOaggPM@f0QQ42MQXd6V68X%Gt>FF0GN|I5m*|wXq1YN5H+OY5a9cM2IA zt8?sWtIQTTBM<1#n)e80GVXItaBO@ZMQ0bB~j%8G$CIEFH1SCi4P!X^4>O)J(jGTnj zvT}%t1mJx9OJvL3ZapCWJ7zGz(524kq=nT{EwgHL=+enjm178p76M0~p|KRJGhT9_U( zg?r3Ih{?YTX7bL|%~3~Wbq1z}QfkhF9>^PGlqf9q%B`}YzPgt}F|7t4|FG$i;$TQM zL?TLFvz!hI18EF^v0UYGAEOFN{Ggn(krhVFJV>~7gVcwI7tP8Dw=lT@2k#&mmByIQ zM>NLEfrVy9>W2(PgnZ^^nD~nVWDOE#4VhlST~)(ima5`SanN*R`B|kZpiXM^EKxQ@ zj$NoYrMR=yH`J&f4pEvwI+%#hg_WZrHkRw75;9A25Q&hG59;wn{!1kE&OFGkow zBTKeotm7x~CJi=DFiW)`H8vlVIxeC?@ ziu7KOL|~Dak0Mw(R zl7$w70EftApa!Mfq=TaD3gv%kY<4qSMMV!5;%15#RZ`t?G+I4}vgm$Cr{lMFknh7K zEmR&M5f!&ii>Mk!r7Ajb9Sk{+I0j4(4cQjK56P&6Bye+pk}nI_axq0-2Qm|KNFIOg zeG^ES7zZUc2vUqR5^sGD#~(-K^PnBvi<|U^`Xe3694cl~nVe6NqeN{Y9d7yjpK=qo zPQYCz6k>bG9FPl%OhS0D1LaB`p`pWcCvA?C-UCzBFZTsIQEY-4Rd_LpOHFCWoN^)w z0$l7S$#nWfRs~7S4iia)Rpa@;3gD3Jt4ykXqVlwqg8V*}!QG(fZKj!xCIgkI1u}7M zD1RX4q2iAnHo<^GXm6&8iKhJRO7~I3WUIgTqBagAbtQ+o^Js67I<7}P6`)Oo*3XTm KKc*nl>i-9e1s~%8 delta 33379 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 F|39TZ1u*~s diff --git a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/encode.crf b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/encode.crf index 83810934a5d6416845a299599674d42acfe13077..2097efa2ef3ebba5b5795f8bcaa75b501d3db70c 100644 GIT binary patch delta 1295 zcmZ8hTWDNW6y5vWnKP5y=}elLgh@g@Cn5NNW}<|W^c9-Ns1Zx1u@MW(G?`2u^q!fL zPPHFOrY|QppiK`t3hIZb1z#UNh*S{qNBr=^4`6p_`oR)?HS+sZ20p^svpS%oj? zm+)|?3ge}_fpzHTSWASgk}1_qy)SR)=+`U89zDSN%qsP%zRbEpRXAPh26hMai-z$z z<;1C8`&{2(ao71Gjp(B5deInk;Wy;;qzg;>H&0K~^r_iw?I^F6?gw^IUokrL313iu z>oMJq6Vy>NX3@SC`jnTuiZ-419(LjP1bd>X>|8E=w$|k1(!Id;Z<{nsS>vZ?YOnX} z$M}G|&4y$21Fta}BkGW=Sa%c|UyY*9_THPDRmuN)e^C;E;UmX~;=>QeM<04Lok?XU z)3Fp(-x_&g)mK>cAr+%Cs615O_^ccP$=eZ-7%Q7P37^=ENsNaW3ZI7e%Jm?F#IQAs z+stX`v8m{$h~JkO9ytqdmcvz5olPYZvl)1mc8l7d2KXk<KqW90zsaqJ6x zjg@X#DBgVDf6wT5G~j}wRQ5@8*;6}b7dDg2GfH@AKyqo#;}aC;vZ4)~IQTokMJ4tV PWa1G1vf`m1AhiDr@iT3{ delta 1211 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 delta 26049 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%0A3&7YR%uuTVc39%WtT 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: -C:\Users\kevin\Desktop\morse_code_trainer\f103c8t6_keil\MDK-ARM\f103c8t6_KEIL.uvprojx -Project File Date: 04/28/2022 +C:\Users\wuwen\morse_code_trainer\f103c8t6_keil\MDK-ARM\f103c8t6_KEIL.uvprojx +Project File Date: 04/30/2022

Output:

*** Using Compiler 'V5.06 update 7 (build 960)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin' Build target 'f103c8t6_KEIL' +assembling startup_stm32f103xb.s... +compiling stm32f1xx_hal_msp.c... +compiling stm32f1xx_it.c... +compiling main.c... +./MYDEIVERS/oled.h(33): warning: #1295-D: Deprecated declaration OLED_Cache_to_hardware - give arg types + void OLED_Cache_to_hardware(); +./MYDEIVERS/mymain.h(25): warning: #1295-D: Deprecated declaration mymain - give arg types + void mymain(); +../Core/Src/main.c: 2 warnings, 0 errors +compiling stm32f1xx_hal_gpio_ex.c... +compiling stm32f1xx_hal.c... +compiling stm32f1xx_hal_i2c.c... +compiling stm32f1xx_hal_rcc_ex.c... +compiling stm32f1xx_hal_rcc.c... +compiling stm32f1xx_hal_gpio.c... +compiling stm32f1xx_hal_cortex.c... +compiling stm32f1xx_hal_dma.c... +compiling stm32f1xx_hal_pwr.c... +compiling stm32f1xx_hal_flash_ex.c... +compiling stm32f1xx_hal_flash.c... +compiling stm32f1xx_hal_exti.c... +compiling system_stm32f1xx.c... +compiling stm32f1xx_hal_tim_ex.c... +compiling stm32f1xx_hal_tim.c... +compiling hread_interface.c... compiling mymain.c... MYDEIVERS\oled.h(33): warning: #1295-D: Deprecated declaration OLED_Cache_to_hardware - give arg types void OLED_Cache_to_hardware(); -MYDEIVERS\buzzer.h(16): warning: #1295-D: Deprecated declaration buzzer_play_server - give arg types - char buzzer_play_server(); -MYDEIVERS\mymain.h(23): warning: #1295-D: Deprecated declaration mymain - give arg types +MYDEIVERS\mymain.h(25): warning: #1295-D: Deprecated declaration mymain - give arg types void mymain(); -MYDEIVERS\mymain.c(197): warning: #188-D: enumerated type mixed with another type - MUTE(1);//静音 -MYDEIVERS\mymain.c(215): warning: #223-D: function "sprintf" declared implicitly +MYDEIVERS\mymain.c(200): warning: #188-D: enumerated type mixed with another type + MUTE(0); +MYDEIVERS\mymain.c(217): warning: #223-D: function "sprintf" declared implicitly sprintf(str,"BUTTON:%d",B1.code); -MYDEIVERS\mymain.c(287): warning: #1-D: last line of file ends without a newline +MYDEIVERS\mymain.c(310): warning: #1-D: last line of file ends without a newline } -MYDEIVERS\mymain.c: 6 warnings, 0 errors +MYDEIVERS\mymain.c: 5 warnings, 0 errors +compiling oled.c... +MYDEIVERS\oled.h(33): warning: #1295-D: Deprecated declaration OLED_Cache_to_hardware - give arg types + void OLED_Cache_to_hardware(); +MYDEIVERS\oled.c(1036): warning: #550-D: variable "absx" was set but never used + int dx,dy,absx,absy; +MYDEIVERS\oled.c(1036): warning: #550-D: variable "absy" was set but never used + int dx,dy,absx,absy; +MYDEIVERS\oled.c: 3 warnings, 0 errors +compiling buzzer.c... +compiling encode.c... +MYDEIVERS\encode.c(62): warning: #1-D: last line of file ends without a newline + } +MYDEIVERS\encode.c: 1 warning, 0 errors linking... -Program Size: Code=9832 RO-data=3768 RW-data=76 ZI-data=3876 +Program Size: Code=8984 RO-data=3768 RW-data=68 ZI-data=3948 FromELF: creating hex file... -"f103c8t6_KEIL\f103c8t6_KEIL.axf" - 0 Error(s), 6 Warning(s). +"f103c8t6_KEIL\f103c8t6_KEIL.axf" - 0 Error(s), 11 Warning(s).

Software Packages used:

@@ -61,14 +97,14 @@ Package Vendor: Keil

Collection of Component include folders:

.\RTE\_f103c8t6_KEIL - C:\Users\kevin\AppData\Local\Arm\Packs\ARM\CMSIS\5.8.0\CMSIS\Core\Include - C:\Users\kevin\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.0\Device\Include + C:\Users\wuwen\AppData\Local\Arm\Packs\ARM\CMSIS\5.8.0\CMSIS\Core\Include + C:\Users\wuwen\AppData\Local\Arm\Packs\Keil\STM32F1xx_DFP\2.4.0\Device\Include

Collection of Component Files used:

* Component: ARM::CMSIS:CORE:5.5.0 Include file: CMSIS\Core\Include\tz_context.h -Build Time Elapsed: 00:00:02 +Build Time Elapsed: 00:00:12 diff --git a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.hex b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.hex index 81c0637..ef4f217 100644 --- a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.hex +++ b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.hex @@ -1,858 +1,805 @@ :020000040800F2 -:10000000700F0020910100087B1A00085D1600089F -:10001000791A0008E90400083321000800000000F4 -:10002000000000000000000000000000891E000821 -:10003000EB04000800000000851D00088B1E00086E +:10000000B00F0020910100085F1B0008A516000832 +:100010005D1B00088F040008232200080000000078 +:100020000000000000000000000000006D1F00083C +:100030009104000800000000691E00086F1F0008FE :10004000AB010008AB010008AB010008AB010008E0 -:10005000AB010008AB010008AB010008AB010008D0 -:10006000AB010008AB010008ED040008AB0100087B +:10005000AB010008AB0100089304000899040008F4 +:10006000AB010008AB0100089F040008AB010008C9 :10007000AB010008AB010008AB010008AB010008B0 :10008000AB010008AB010008AB010008AB010008A0 :10009000AB010008AB010008AB010008AB01000890 :1000A000AB010008AB010008AB010008AB01000880 -:1000B000F11E0008AB010008AB010008AB0100080D +:1000B000D51F0008E11F0008AB010008AB010008D4 :1000C000AB010008AB010008AB010008AB01000860 :1000D000AB010008AB010008AB010008AB01000850 :1000E000AB010008AB010008AB01000800F002F80A :1000F00000F03FF80AA090E8000C82448344AAF183 :100100000107DA4501D100F034F8AFF2090EBAE880 :100110000F0013F0010F18BFFB1A43F0010318473B -:10012000E033000000340000103A24BF78C878C1E2 +:1001200090300000B0300000103A24BF78C878C189 :10013000FAD8520724BF30C830C144BF04680C60ED :10014000704700000023002400250026103A28BF35 :1001500078C1FBD8520728BF30C148BF0B60704739 -:10016000642900F0A580002070471FB51FBD10B5A1 -:1001700010BD00F084F91146FFF7F7FF02F026F8F2 -:1001800000F0A2F903B4FFF7F2FF03BC00F0A6F9F8 +:10016000642900F07D80002070471FB51FBD10B5C9 +:1001700010BD00F052F91146FFF7F7FF02F062F8E8 +:1001800000F070F903B4FFF7F2FF03BC00F078F958 :100190000948804709480047FEE7FEE7FEE7FEE71B :1001A000FEE7FEE7FEE7FEE7FEE7FEE70448054957 -:1001B000054A064B70470000ED1E0008ED000008E0 -:1001C00070090020700F0020700B0020700B0020C1 -:1001D00070B50446051F00F0D1F80068002C14BF6C -:1001E000446870BD002C18BFAC423CBF2046646818 -:1001F000F8D301680A18AA4218BF456003D12A68DB -:1002000005461144016028684119A1421CBF6C6079 -:1002100070BD6168696021680844286070BD000095 -:100220000FB41CB5074B06AA7B446946009005989D -:1002300000F007F90020694600F016F91CBC5DF8D3 -:1002400014FB00003D0200002DE9F0410E4604467B -:10025000002020622046E168884730B3252805D079 -:10026000D4E901219047206A401CF2E7E16820466A -:1002700000278847050018D0A5F14100192802D8A9 -:1002800020354FF400673246294620462760FFF7A5 -:1002900067FF40B1012804D0F61D26F00706083696 -:1002A000D8E7361DD6E72846DAE7206ABDE8F081B0 -:1002B0002DE9F0410646002410687529314616A53F -:1002C00010D0AFF30080002802DA404213A507E007 -:1002D00031688A0701D512A502E0490704D511A5A6 -:1002E000012401E0AFF3008000210A2206F1240777 -:1002F00009E0B0FBF2FCB0FBF2F302FB1C00303073 -:1003000078541846491C0028F3D123462A46304623 -:10031000BDE8F04100F036B8000000002D000000FC -:100320002B000000200000004FF0000200B5134633 -:1003300094469646203922BFA0E80C50A0E80C5005 -:10034000B1F12001BFF4F7AF090728BFA0E80C50B6 -:1003500048BF0CC05DF804EB890028BF40F8042BAF -:1003600008BF704748BF20F8022B11F0804F18BF1C -:1003700000F8012B7047704770477047004870477E -:10038000140900202DE9F0470D469946924604468F -:1003900000F124080168880604D5E06921F0100105 -:1003A000216000E00120A84201DD471B00E000279A -:1003B000A1697A1902EB0900081AA0612078C00629 -:1003C00002D42046AFF30080002608E0D4E90121E2 -:1003D0001AF806009047206A401C761C20624E45A1 -:1003E000F4DB2078C0060AD52046AFF3008006E093 -:1003F000D4E9012130209047206A401C2062381E39 -:10040000A7F10107F4DC07E0D4E9012118F80500A1 -:100410009047206A401C2062281EA5F10105F3DCEC -:100420002046AFF300802078000602D50220BDE808 -:10043000F0870120FBE7000001694A1C026108788F -:10044000704700B58FB0CDE9013100210591054914 -:100450007944CDE9031011466846FFF7F5FE0FB069 -:1004600000BD0000E5FFFFFF0A6802F8010B0A600B -:1004700070470000004870470C090020704775461F -:10048000FFF7F8FFAE4605006946534620F0070027 -:10049000854618B020B5FFF789FEBDE820404FF033 -:1004A00000064FF000074FF000084FF0000B21F05E -:1004B0000701AC46ACE8C009ACE8C009ACE8C0092B -:1004C000ACE8C0098D46704710B50446AFF3008014 -:1004D0002046BDE81040FFF755BE00000149182036 -:1004E000ABBEFEE726000200FEE77047102000F0DA -:1004F00057B870B5002606800446018AC06800F02F -:100500004BF9F8B9A07810B1012811D01AE000F029 -:1005100055F96168012501F5FA71884203D22089F5 -:10052000401C208100E0258100F048F96060A57042 -:1005300000F044F9616801F5FA71884202D9FF20A0 -:1005400020802081218AE06800F026F9012808D166 -:10055000A078012805D12088FF2801D0208920809B -:10056000A67070BD00220168026008467047000056 -:1005700010B510280FD12021074800F00DF90749C8 -:10058000012220B1012806D10868401C01E008685A -:10059000401E08600A7110BD000C014028000020B8 -:1005A000044910B50A68024202D00860FFF7E0FF74 -:1005B00010BD0000140401402DE9F84FDFF8B89198 -:1005C000002409F1040A0AF1040B23460F270BF15A -:1005D000040EC9E00125A5402A40AA427DD1674EFC -:1005E000D1F804C0ACEB0608B44532D014DCBCF141 -:1005F000030F3AD009DCBCF1000F2AD0BCF1010F87 -:100600001CD0BCF1020F31D11DE0BCF1110F17D08D -:10061000BCF1120F2AD119E0B8F5881F19D006DCF9 -:10062000B8F5803F15D0B8F5801F1FD111E0B8F59F -:10063000001F0ED0B8F5041F18D10AE0CB6815E0F2 -:10064000CB681B1D12E0CB6808330FE0CB680C337E -:100650000CE08B682BB1012B4FF0080303D04561F0 -:1006600004E0042302E0056100E00023FF2A01D832 -:10067000064601E000F104064FEA840501D9A5F120 -:100680002005D6F8008007FA05FC28EA0C0803FAD2 -:1006900005F548EA0508C6F800804D68ED0062D50A -:1006A000374DAE6946F00106AE61AD6924F0030630 -:1006B00005F001050095334D06EB050CDCF80850FC -:1006C000A607360F07FA06F825EA0805DFF8B8800E -:1006D000404503D14FF0000817E044E0DFF8AC805C -:1006E000404502D14FF001080FE0DFF8A4804045FB -:1006F00002D14FF0020808E0DFF89880404502D1AF -:100700004FF0030801E04FF0040808FA06F848EA41 -:100710000508CCF808804D68D9F80060ED034D4617 -:1007200001D5164300E096432E604D68DAF800606C -:10073000AD03554601D5164300E096432E604D6843 -:10074000DBF80060ED025D4601D5164300E09643FC -:100750002E604D68DEF80060AD02754601D5164387 -:1007600000E096432E60641C0D682A46E5407FF445 -:1007700031AFBDE8F88F0000000401400000111007 -:10078000001002400000014000080140000C014040 -:1007900000100140001401408068084000D0012092 -:1007A0007047C26821EA02030A4043EA024101613C -:1007B00070470AB1016170470904FBE7014880688E -:1007C000704700000000002070B5040025D094F8A8 -:1007D0003D00002520B984F83C50204600F050F937 -:1007E000242084F83D002068016821F001010160A7 -:1007F0002068016841F4004101602068016821F42B -:100800000041016000F098FA4D4A6168914201D8B8 -:100810004C4900E04C49884201D2012070BD4B494F -:100820002368B0FBF1F15E6826F03F060E435E6080 -:100830006368934206D94FF4967359434FF47A7321 -:10084000B1FBF3F12368491C1E6A26F03F063143D1 -:1008500019626168914210D84900401EB0FBF1F264 -:10086000521CC2F30B02042A01D2042022E0B0FB86 -:10087000F1F0401CC0F30B001CE0A268F2B301EBE6 -:10088000C10303EB0116431EB3FBF6F35B1C43F4F9 -:1008900080431B0549D092B301EBC10202EB011169 -:1008A000401EB0FBF1F0401CC0F30B0040F4804050 -:1008B00040F400402168CA694CF6FF739A43104324 -:1008C000C861D4E9071001432068026822F0C00221 -:1008D00011430160D4E9030101432068826848F2B2 -:1008E000FF339A4311438160D4E90501084321682D -:1008F000CA6822F0FF021043C86001E00EE016E073 -:100900002068016841F0010101602564202084F81D -:100910003D00256384F83E50002070BD01EB410688 -:10092000431EB3FBF6F35B1CB3E70120C2E701EB08 -:100930004101401EB0FBF1F0401CC0F30B00B7E7D3 -:10094000A086010080841E0000093D0040420F0087 -:100950002DE9FF4F83B09A46DDE91197934604468F -:10096000DDF84080FFF72AFF054694F83D00202877 -:100970007FD11923012240492046009500F000FF55 -:10098000002876D194F83C00012872D0012084F828 -:100990003C0020680168C90703D1016841F00101EA -:1009A00001602068016821F400610160212084F861 -:1009B0003D00402084F83E0000262664C4F82480D0 -:1009C000A4F82A90608D20852C48E062CDE900755E -:1009D00053465A462046049900F058FE70B930E05C -:1009E0002A463946204600F04AFF58B1206C0428B8 -:1009F00004D12068016841F400710160012007B052 -:100A0000BDE8F08F606A216800780861606A401C68 -:100A10006062218D491E89B22185628D521E6285D8 -:100A200022685369DB435B070BD469B1007810611E -:100A3000606A401C6062208D401E2085608D401ED3 -:100A40006085208D0028CBD12A463946204600F00B -:100A500071FE0028CAD154F83D0B016841F40071C1 -:100A60000160202004F81E09E67766770020C6E7BB -:100A7000FFE70220C3E70000020010000000FFFFB4 -:100A800010B586B000210091019102910391006898 -:100A90000F4988421AD10F4CA06940F00800A061AC -:100AA000A069694600F008000490C0200090122060 -:100AB0000190032003900848FFF77EFDE06940F4B1 -:100AC0000010E061E06900F40010049006B010BD71 -:100AD0000054004000100240000C014002488168B0 -:100AE000027811448160704700000020074810B56B -:100AF000016841F010010160032000F075F80F203B -:100B000000F006F800F024F8002010BD002002409C -:100B100070B50D4D04464FF47A712878B1FBF0F0B2 -:100B20000A490968B1FBF0F000F0DCFA48B9102C72 -:100B300007D200222146501E00F036F800206C60DB -:100B400070BD012070BD0000000000200C000020DE -:100B50000C4808B5816941F001018161816901F0AA -:100B600001010091C16941F08051C161C06900F08B -:100B7000805000900448416821F0E06141F000712C -:100B8000416008BD0010024000000140002809DB60 -:100B900000F01F02012191404009800000F1E02097 -:100BA000C0F8001170470000F0B40E4B1B680C46F3 -:100BB000C3F30223C3F10705042D00D90425191D31 -:100BC000072901D2002300E0DB1E012606FA05F109 -:100BD000491E214099409E40761E16403143F0BC8C -:100BE00001F0A8BA0CED00E0064900F00702086821 -:100BF0004FF6FF03184040EA0220034A1043086002 -:100C0000704700000CED00E00000FA052DE9F04708 -:100C10000F46050061D0434E306800F00700B8422F -:100C200009D2306820F0070038433060306800F0A7 -:100C30000700B84251D128683B4C810712D54007C4 -:100C400003D5606840F4E06060602878000703D551 -:100C5000606840F4605060606068A96820F0F0004F -:100C6000084360602878C00728D06868012810D041 -:100C70002168022810D0890700292EDA616821F046 -:100C8000030101436160FFF799FD804641F2883915 -:100C90000DE021688903EFE78901EDE7FFF78EFD9D -:100CA000A0EB0801494502D90320BDE8F087606840 -:100CB000696800F00C00B0EB810FEFD1306800F0F4 -:100CC0000700B8420BD9306820F007003843306085 -:100CD000306800F00700B84201D00120E5E728782D -:100CE000400705D56068E96820F4E060084360606B -:100CF0002878000706D56068296920F4605040EA2A -:100D0000C100606000F028F86168084AC1F303116F -:100D1000515CC8400649086006480068FFF7F8FEC5 -:100D20000020C2E7002002400010024054270008C3 -:100D30000C000020040000200448054900684968B0 -:100D4000044AC1F30221515CC84070470C000020E6 -:100D5000001002406427000812A185B00FC98DE879 -:100D60000F0014A0144A006804905168134801F061 -:100D70000C03042B10D0082B0ED1C1F38343C903FD -:100D80001DF803000AD5516804AAC1F34041515C23 -:100D90000A4A5043B0FBF1F005B070470849484398 -:100DA000FAE7000002030405060708090A0B0C0D08 -:100DB0000E0F1010010200000010024000127A0015 -:100DC00000093D002DE9F84F040070D02078C04D97 -:100DD000C00749D06868C0F38100012807D068685F -:100DE000C0F38100022809D16868C00306D52868CD -:100DF000800339D560680028E7D035E06068B0F539 -:100E0000803F0BD010B1B0F5A02F11D0286820F48E -:100E100080302860286820F4802002E0286840F4B0 -:100E200080302860606890B1FFF7C8FC06460AE091 -:100E3000286840F480202860F0E700BFFFF7BEFC80 -:100E4000801B642873D828688003F7D50CE0FFF76F -:100E5000B5FC064605E000BFFFF7B0FC801B642828 -:100E6000F0D828688003F7D420789A4E80074FF096 -:100E700001094FF0000839D5686810F00C0F07D051 -:100E80006868C0F38100022809D16868C00306D4ED -:100E90002868800714D52069012808D110E020694E -:100EA000B0B1C6F80090FFF789FC074605E00AE1FB -:100EB000FFF784FCC01B0228C4D828688007F7D538 -:100EC0002868616920F0F80040EAC10028600DE060 -:100ED000C6F80080FFF772FC074604E0FFF76EFCDF -:100EE000C01B022823D828688007F7D42078000781 -:100EF0002CD57948A169D9B1C0F80090FFF75EFC04 -:100F0000074604E0FFF75AFCC01B02280FD8686AA6 -:100F10008007F7D571484FF4FA510068B0FBF1F043 -:100F2000009000BF0098411E0091FAD20EE080E0D0 -:100F3000C0F80080FFF742FC074604E0FFF73EFCE4 -:100F4000C01B022875D8686A8007F7D4207840074C -:100F500060D5E8690027C00008D4E86940F08050F7 -:100F6000E861E869012700F0805000905C48016862 -:100F7000C90513D40168834641F480710160FFF70D -:100F80001DFC824606E000BFFFF718FCA0EB0A003C -:100F900064284ED8DBF80000C005F5D5E0680128CC -:100FA0000AD008B1052813D0286A20F00100286271 -:100FB000286A20F0040002E0286A40F0010028625C -:100FC000E06841F2883B98B1FFF7F8FB82460BE0FE -:100FD000286A40F004002862EEE700BFFFF7EEFB4E -:100FE000A0EB0A0159455AD8286A8007F6D50CE0CB -:100FF000FFF7E4FB824605E0FFF7E0FBA0EB0A0108 -:1010000059454CD8286A8007F6D41FB1E86920F00A -:101010008050E861E06988B36968C1F38101022901 -:1010200044D00228C6F8608004D0FFF7C7FB04460E -:1010300038E034E0FFF7C2FB074604E0FFF7BEFBF1 -:10104000C01B02282BD828688001F7D4206AB0F58D -:10105000803F05D16868A16820F4003008436860CB -:10106000D4E908010843696821F4741108436860F1 -:10107000C6F86090FFF7A2FB044606E025E000BF3B -:10108000FFF79CFB001B022809D828688001F7D5D0 -:101090001BE000BFFFF792FB001B022802D90320D0 -:1010A000BDE8F88F28688001F4D40EE00128F7D05D -:1010B0006868226A00F48031914204D1616A00F4C8 -:1010C0007010884201D00120EAE70020E8E7000024 -:1010D0000010024000004242800442420C00002006 -:1010E0000070004010B5401EB0F1807F01D3012098 -:1010F00010BD4FF0E02460610F21601701F01AF875 -:101100000020A06107202061002010BD70477047BB -:1011100070B590F83C20012A26D0012480F83C408C -:10112000022280F83D2003685A689D6822F070060C -:101130000A6832435A600D4B02689A4208D0B2F1F5 -:10114000804F05D00A4B9A4202D00A4B9A4204D1F2 -:10115000496825F080031943916080F83D400021E3 -:1011600080F83C10084670BD022070BD002C014084 -:10117000000400400008004010B5040003D094F8BB -:101180003D0010B107E0012010BD002084F83C00B4 -:10119000204600F01FF8022084F83D00211D206841 -:1011A00000F0ACFE012084F8460084F83E0084F88C -:1011B0003F0084F8400084F8410084F8420084F83D -:1011C000430084F8440084F8450084F83D00002082 -:1011D00010BD000008B50068B0F1804F12D10A4878 -:1011E000C16941F00101C161C069002200F0010044 -:1011F000009011461C20FFF7D7FCBDE808401C20DA -:10120000FFF7C4BC08BD00000010024070B50446E2 -:1012100090F83C00012817D0012584F83C500220AA -:1012200084F83D002068826822F0770222F47F4231 -:1012300082600868502830D00DDC20284DD005DCB5 -:1012400098B310283BD148E0022070BD302844D02C -:10125000402834D139E0602828D0702806D0B0F575 -:10126000805F2CD0B0F5005F29D10AE0CB68D1E9CE -:101270000121206800F085FE2068816841F0770137 -:1012800009E0CB68D1E90121206800F07AFE2068EE -:10129000816841F48041816011E0CA684968206832 -:1012A00000F024FF5021206807E016E0CA68496872 -:1012B000206800F02CFF6021206800F06CFE84F8AC -:1012C0003D50002084F83C0070BDCA684968206821 -:1012D00000F00CFF40212068EFE72268014610462D -:1012E000EBE7704770B50446006801694FF00005F0 -:1012F000C943890715D4C168C943890711D4E91EB8 -:10130000016101202077206880698007204602D093 -:10131000FFF7E7FF04E000F0BDF8204600F04CF9CD -:10132000257720680169C943490717D4C168C943B3 -:10133000490713D46FF0040101610220207720686F -:10134000806910F4407F204602D0FFF7CAFF04E016 -:1013500000F0A0F8204600F02FF9257720680169F9 -:10136000C943090716D4C168C943090712D46FF0ED -:1013700008010161042020772068C06980072046A9 -:1013800002D0FFF7AEFF04E000F084F8204600F042 -:1013900013F9257720680169C943C90617D4C168C4 -:1013A000C943C90613D46FF01001016108202077EA -:1013B0002068C06910F4407F204602D0FFF791FFFB -:1013C00004E000F067F8204600F0F6F82577206882 -:1013D0000169C943C90708D1C168C943C90704D114 -:1013E000891E0161204600F037F920680169C94370 -:1013F000090609D4C168C943090605D46FF0800104 -:1014000001612046FFF782FE20680169C943490651 -:1014100009D4C168C943490605D46FF04001016190 -:10142000204600F01AF920680169C94389060BD4E7 -:10143000C168C943890607D46FF0200101612046C5 -:10144000BDE87040FFF763BE70BD000000B585B019 -:10145000002100910191029103910068B0F1804F49 -:1014600011D10A48816941F00401816180696946AE -:1014700000F00400049004200090022001900390EA -:101480000348FFF799F805B000BD000000100240C6 -:1014900000080140704770B5044690F83C000D46C6 -:1014A00001280AD0012084F83C0042B1042A18D057 -:1014B000082A2AD00C2A4DD139E0022070BD2068BC -:1014C00000F072FD2068816941F0080181612068A7 -:1014D000816921F004018161206881692A691143D1 -:1014E00011E0206800F088FD2068816941F4006106 -:1014F00081612068816921F480618161206881694E -:101500002A6941EA0221816124E0206800F0A0FDFF -:101510002068C16941F00801C1612068C16921F0FA -:101520000401C1612068C1692A69114311E0206882 -:1015300000F0BAFD2068C16941F40061C161206812 -:10154000C16921F48061C1612068C1692A6941EAE9 -:101550000221C161002084F83C0070BD10B5040078 -:1015600003D094F83D0010B107E0012010BD002029 -:1015700084F83C00204600F01EF8022084F83D006C -:10158000211D206800F0BAFC012084F8460084F890 -:101590003E0084F83F0084F8400084F8410084F85D -:1015A000420084F8430084F8440084F8450084F83D -:1015B0003D00002010BD70477047000010B5044684 -:1015C000022249B104290ED0082913D094F8410011 -:1015D000012816D0012010BD94F83E000128F9D151 -:1015E00084F83E200FE094F83F000128F2D184F8FF -:1015F0003F2008E094F840000128EBD184F8402017 -:1016000001E084F841200122206800F0ADFC0F4980 -:101610002068884203D1426C42F400424264206850 -:10162000884208D0B0F1804F05D00949884202D0E5 -:101630000849884204D1816801F00701062903D0D6 -:10164000016841F001010160002010BD002C014043 -:10165000000400400008004070477047FEE7016842 -:101660004A69D24352050FD46FF480624A61002167 -:1016700040F8301F202242738173026942F0040255 -:101680000261017301207047002070472DE9F84383 -:10169000044600680D46DDE908970168984616463D -:1016A00041F4807101604B4600224FF00111204649 -:1016B000009700F065F848B120680068C00502D5C1 -:1016C0004FF4007020640320BDE8F883216805F022 -:1016D000FE0008613B464A461549204600F084F862 -:1016E00088B920684169806900903A464946204699 -:1016F00000F0C5F848B1206C042804D120680168C6 -:1017000041F4007101600120DEE7F5B2B8F1010F8C -:1017100009D02168300A08613A464946204600F05F -:10172000AEF80028E7D1206805610020CCE7000072 -:101730000200010070B516460D4604460DE0204635 -:10174000FFF78DFF08B1012070BD681C05D0FFF7C1 -:1017500035F8801BA84207D835B120684069C043DE -:101760004007ECD4002070BD002044F8300F202149 -:101770006173A073216941F0200121612073E2E7C8 -:101780002DE9F0471E4690460D460446C1F3074733 -:10179000DDF8209008E0701C06D0FFF70FF8A0EBF2 -:1017A0000900B0420FD876B12068012F18D08069A7 -:1017B00025EA00000004000C14D000214145EAD0C5 -:1017C0000020BDE8F087002044F8300F202161732D -:1017D000A073216941F02001216120730120F0E70D -:1017E0004069E5E70121E9E72DE9F0479A4691468E -:1017F0000E46044600254FF02008C1F3074725E0B8 -:1018000020684069C043400514D42068016841F451 -:101810000071016021686FF480604861256384F87D -:101820003D8084F83E50206C40F00400206484F831 -:101830003C501FE0B9F1FF3F08D0FEF7BFFFA0EB1F -:101840000A0149450CD8B9F1000F09D02068012FD1 -:1018500013D0806926EA00000004000C0BD0CFE70B -:1018600044F8305F84F80D80A573206940F02000B3 -:10187000206125730120BDE8F0874069EAE770B573 -:1018800016460D4604460DE02046FFF7E8FE08B177 -:10189000012070BD681C05D0FEF790FF801BA84298 -:1018A00007D835B120684069C0430006ECD4002059 -:1018B00070BD002044F8300F20216173A0732169AE -:1018C00041F0200121612073E2E700003EB564246D -:1018D0008DE81C000A46014601230248FFF738F84C -:1018E0003EBD00004C0000202DE9F04786B00025E9 -:1018F00039480095019502950395816941F01001E1 -:101900008161816901F010010491816941F0200138 -:101910008161816901F020010491816941F0040134 -:101920008161816901F004010491816941F008013C -:1019300081618069DFF8A49000F008000490012222 -:1019400008214846FEF735FFDFF894A04FF4805792 -:10195000002239465046FEF72CFF4FF40048012282 -:1019600041465046FEF725FF01240820CDE900043A -:101970000326CDE9024669464846FEF71DFE2B20A8 -:10198000CDE90005694602945046FEF715FE022097 -:10199000CDE90250CDE9007469465046FEF70CFED1 -:1019A000CDE90084CDE9024669465046FEF704FEC3 -:1019B000102000900B48CDE9010469465046FEF71F -:1019C000FBFD002211460A20FFF7EEF80A20FFF780 -:1019D000DDF806B0BDE8F0870010024000080140C5 -:1019E000000C01400000111010B58EB000240794C7 -:1019F000089409940A940B941C2168460C94FEF7F1 -:101A000093FC1C484FF08041C0E900148460C4601E -:101A100004618461FFF7B0FB08B172B6FEE74FF4D2 -:101A20008050079007A91348FFF7F0FB08B172B682 -:101A3000FEE71048FFF792FD08B172B6FEE70B947F -:101A40000BA90C480C94FFF763FB08B172B6FEE7D4 -:101A50006020CDE9000402940822694605480494F8 -:101A6000FFF719FD08B172B6FEE70248FFF7EEFC7A -:101A70000EB010BDA0000020FEE7FEE73CB5A3F1CC -:101A80002005059C5E2D26D8082A0DD00C2A15D0DD -:101A9000102A20D1104A02EB0312A2F50072CDE900 -:101AA00000241023082214E00C4A02EBC302A2F522 -:101AB0008072CDE90024082305220AE003EB4302EB -:101AC000074B03EB8202A2F5C072CDE900240C2380 -:101AD000062200F096F83CBDD82E00086C270008BE -:101AE000642A00082DE9F05F4FF00008DFF85CA0E1 -:101AF0004546C146AAF5806B2946002000F0D3F880 -:101B000000240AEBC5170BEBC516395D305D884222 -:101B10000ED0B8F1000F05D14FF00108294620463C -:101B200000F0C1F8305D00F007F9305D385501E094 -:101B30004FF0000806F80490641CE4B2802CE4D353 -:101B40006D1CEDB2082DD7D3BDE8F09F0C05002029 -:101B500010B5AE2000F0E8F8D52000F0E5F85020F0 -:101B600000F0E2F8A82000F0DFF83F2000F0DCF8F9 -:101B7000D32000F0D9F8002000F0D6F8402000F083 -:101B8000D3F88D2000F0D0F8142000F0CDF82020FC -:101B900000F0CAF8022000F0C7F8A12000F0C4F855 -:101BA000C02000F0C1F8D92000F0BEF8F12000F00C -:101BB000BBF8DB2000F0B8F8302000F0B5F8A42026 -:101BC00000F0B2F8A62000F0AFF8AF2000F0ACF8BB -:101BD000BDE810400020AFF3008070B50646002439 -:101BE0002146002000F05FF80025304600F0A4F800 -:101BF0006D1CEDB2802DF8D3641CE4B2082CEFD339 -:101C000070BD2DE9FF4F0026DDE90DBA99469046DB -:101C10003746354643E000243AE01BF807008021B0 -:101C2000F140084225D0BAF1060F1DD2DFE80AF0D4 -:101C3000030B0B030313019800222844C1B2009840 -:101C40002044C0B20EE0019801222844C1B200989D -:101C50002044C0B206E0019802222844C1B2009894 -:101C60002044C0B200F070F8761CF6B2082E0BD0FB -:101C70000CE05FEA0A00DED00128DCD00228F3D0B5 -:101C8000BAF1040FF0D1DEE700267F1C641CE4B239 -:101C90004445C2D30EB100267F1C6D1CEDB24D45EC -:101CA000B9D3BDE8FF8F10B50446C1F1B700C0B28B -:101CB00000F03AF8102040EA141000F035F804F073 -:101CC0000F00BDE8104000F02FB82DE9F84305469D -:101CD000DDF820901F4690460E461046082A04D094 -:101CE0000C2804D0102A1AD103E0062417E0072498 -:101CF00015E0082413E02819802806D306EB080015 -:101D0000C6B2402E00D30026002542463146284662 -:101D1000CDF80090FFF7B2FE2819C5B27F1C3B78C2 -:101D2000002BE8D1BDE8F88301B56A460123002104 -:101D30007820FFF7CBFD08BD01B56A46012340219D -:101D40007820FFF7C3FD08BD10B5802816D24029C2 -:101D500014D2CC0801F007018023CB40084901EBE5 -:101D6000C414215C22B1012A04D0022A05D103E067 -:101D7000994302E0194300E05940215410BD00008E -:101D80000C01002070472DE9FF4F0026044689B062 -:101D90004FF0FF393246304613B1012B70D101E0CC -:101DA000256807E0656805E00A2B01D1761CB6B20C -:101DB000521C92B2AB5C002BF6D1A2689B46511824 -:101DC000A16002D55946C4F808B0B14200DDA66052 -:101DD000D4E90221CB1C9A4201DA491EE1608A4211 -:101DE00004DDCA1CB24201DA491CE16006F10108B7 -:101DF000B8F1040F01D9E26800E000220021E2609E -:101E000007E06D1C2B780BB10A2BFAD1491C89B263 -:101E10006D1C8A42F6DC00270DF1040A23E0E1681C -:101E2000A2683944914201D13E2200E020220AF802 -:101E300000205246401C03E01154401C80B26D1C2F -:101E4000297809B10A29F7D102F800B001200090E1 -:101E50003807010E01AB10220020FFF736FF7F1C70 -:101E60000020BFB26D1CB8F1040F01D9042100E0BD -:101E7000711CB942D3D80B98012801D1D4F808902D -:101E80000DB04846BDE8F08F7047FEF727BE30B56D -:101E90008FB028216846FEF747FA14210AA8FEF7FA -:101EA00043FA01210804CDE9001000240294022520 -:101EB0000491CDE907504FF4E01009906846FEF711 -:101EC00081FF08B172B6FEE70F20CDE90A054FF495 -:101ED0008060CDE90C4002210AA80E94FEF796FE20 -:101EE000002801D072B6FEE70FB030BD7047000089 -:101EF0000148FFF7F7B90000A0000020F0B5026824 -:101F0000164B174C174D4FF08047984205D0B842FA -:101F100003D0A04201D0A84203D122F070064A6843 -:101F20003243984205D0B84203D0A04201D0A84223 -:101F300003D122F44074CA6822434C6922F0800223 -:101F4000224302608A68C2620A688262984201D1B2 -:101F50000969016301214161F0BD0000002C0140CD -:101F6000000400400008004010B501F01F030121EB -:101F7000046A99408C430462016A9A4011430162E9 -:101F800010BD10B5846842EA032224F47F440A435A -:101F90002243826010BD826822F070020A4342F040 -:101FA000070181607047000030B5026A22F001022B -:101FB0000262026A4368846924F073050C682C434A -:101FC00022F002058A682A430A4DA8420BD122F06A -:101FD0000805CA6823F440732A434D6922F00402BD -:101FE0001D438B692B4343608461496841630262EE -:101FF00030BD0000002C014030B5026A22F0100212 -:102000000262026A436884690D6824F4E64444EA83 -:1020100005248D6822F0200242EA05120B4DA842E9 -:102020000ED1CD6822F0800242EA05124D6923F4F8 -:10203000406343EA85038D6922F0400243EA850349 -:102040004360846149688163026230BD002C0140B5 -:1020500030B5026A22F480720262036A4268C4697F -:1020600023F4007324F073050C682C438D6843EA55 -:1020700005230C4DA8420ED1CD6823F4006343EA3A -:1020800005234D6922F4405242EA05128D6923F47A -:10209000806342EA05124260C4614968C163036219 -:1020A00030BD0000002C014030B5026A22F480529D -:1020B0000262046A4268C3690D6823F4E64343EA96 -:1020C00005238D6824F4005444EA0534064DA842E3 -:1020D00004D14D6922F4804242EA85124260C36114 -:1020E00049680164046230BD002C014010B5036AE8 -:1020F000046A24F001040462846924F0F00444EAD0 -:10210000021423F00A020A438461026210BD10B572 -:10211000036A23F0100303628369046A23F47043A3 -:1021200043EA023224F0A00343EA01118261016212 -:1021300010BDFEE70907090E002804DB00F1E020CE -:1021400080F80014704700F00F0000F1E02080F8E4 -:10215000141D704710B5124CA06810B1207828B13A -:1021600010E00021084600F0F9F817E00120207087 -:10217000FEF724FBA268918808446060917810887B -:1021800000F0ECF82078012808D1FEF717FB616811 -:10219000884203D90020207000F004F8207810BD98 -:1021A0004000002010B5084CA06800280AD08168C3 -:1021B00021B1A160BDE81040FEF70AB8FEF708F8AB -:1021C0000020A06010BD000040000020FEF78EFC43 -:1021D000FFF75DFEFFF788FB0D480C494FF4804286 -:1021E00001600C49416000218160C0E90312416136 -:1021F0008161C1610162FEF7E7FA08B172B6FEE7DC -:10220000FFF7F2FB00F008F8FEE700000054004082 -:102210004C000020A086010008B5444D424F082024 -:10222000EF602882FFF794FC08214148FFF7C6F9C8 -:10223000012208213F48FEF7BCFA3F4C0126A06866 -:10224000002855D0012802D0022852D13EE037485C -:102250002A883AA11430FDF7E3FF344B00211433F0 -:10226000082208460096FFF730FD33481830FEF785 -:1022700079F9616942182D4833A114306261FDF784 -:10228000CFFF2A4B08221433114600200096FFF797 -:102290001CFDA0882FA1401CA08024486288143017 -:1022A000FDF7BEFF214B0822143338210020009691 -:1022B000FFF70BFD2888FF281BD10220A060FEF746 -:1022C0007DFA42F210710844206112E01A48183079 -:1022D000FEF748F9014618482A7823782030FFF79E -:1022E00052FD00B9A660FEF769FA2169884200D95B -:1022F000A6600E48FEF7FDF8FFF7F4FBFFF72AFF94 -:10230000FEF75CFA0146E068814298D900F57A70E0 -:10231000E0604FF400413846FEF743FAA088608041 -:102320000020A0808BE70000000C0140E8000020A6 -:10233000A000002000080140100000204255545425 -:102340004F4E3A2564000000454E434F44453A2520 -:10235000640000004650533A256400002DE9F04126 -:102360000D4E0546B6FBF5F07705401EF8620846AF -:1023700000F010F9094900F013F80446B6FBF5F037 -:10238000401E00F0EFF8214600F018F900F0CAF8FE -:10239000F863BDE8F081000000A24A040000C842D2 -:1023A0004FF47F0C1CEAD0121EBF1CEAD11392EA34 -:1023B0000C0F93EA0C0F00F0858090EA010F48BFE4 -:1023C00042F4807240F4000C41F400002CF07F4194 -:1023D00020F07F4000B58142A2EB03020FF2081CFF -:1023E000ACEB504EC0F100009EF800E04FEA4E0EFC -:1023F00000FB0EFC38BF49004FEA2C1C02F5FA0224 -:102400000CFB0EF34FEACE1E4FEA112C4FEAC1210E -:102410000EEB635E42EB22420EFB0CFC4FEA1C53B8 -:1024200000FB03114FEA112C4FEA01310EFB0CFCAB -:102430004FEADC4C00FB0C11C14228BF09184CEBE1 -:1024400003335DF804EB10EB410143EBC250B2F5EE -:102450007C0F38BF704729D512F0F00F1CBF00F178 -:10246000C04000F0004070470081828384858687E9 -:1024700088898B8C8D8E8F919293959697999A9C43 -:102480009D9FA0A2A3A5A7A8AAACAEB0B2B3B5B7B2 -:10249000B9BCBEC0C2C5C7C9CCCED1D4D7D9DCDF88 -:1024A000E2E6E9ECF0F3F7FAFE0000004FEA400C38 -:1024B0000CF1807CBCF17E4F28BF7047B0F1C0406A -:1024C00000F043B990EA010F0CEAD11348BF42F47F -:1024D0008072624538BF634507D213F47F0F16D070 -:1024E00080EA010000F00040704710B500F0E7F806 -:1024F000097EFC3E00F005B880EA010000F00040D3 -:10250000704780EA010000F0004000F01EB912F4AC -:102510007F0F04BF0248704780EA010000F015B940 -:102520000000C07FC10DD1F19E0206DB4FEA0023FF -:1025300043F0004323FA02F07047004207D54FEA08 -:102540004001B1F1FE4F02D24FF00000704710B5CC -:1025500000F0B5F849922480002070476FEA20000F -:102560007047000010F0004148BF4042B0FA80F3CD -:1025700010FA03F2C3F19D030BD051EAC35101EBF2 -:102580001220530638BF704700F1010008BF20F049 -:1025900001007047B0FA80F310FA03F2C3F19D0313 -:1025A0000AD0D90501EB1220530638BF704700F15D -:1025B000010008BF20F00100704700004FF47F0CBD -:1025C0001CEAD0121EBF1CEAD11392EA0C0F93EA48 -:1025D0000C0F00F0478090EA010F48BF42F4807270 -:1025E0004FF0004C4CEA00204CEA012102EB0302C0 -:1025F000A0FB0113A2F50002002918BF43F001035C -:102600005B0028BF4FEA330342EB22425FEA132C00 -:102610004CEBC2502EBFBCEB436FB2F57C0F704742 -:102620004FEA036CBCF1004F08BF20F00100B2F587 -:102630007C0F38BF70470BD582F0FF0212F5803F48 -:10264000C8BF704700F1C040D8BF00F000407047DD -:1026500000F5000C5FEA4C0C48BF7047B0F1C04079 -:1026600000F073B890EA010F0CEAD11348BF42F4AE -:102670008072624538BF634504D280EA010000F0F1 -:102680000040704710B500F01AF800BF8900013E05 -:1026900000F007B800F009B85FEA410C5FEA1C6C73 -:1026A00008D080EA010000F050B85FEA400C5FEA11 -:1026B0001C6CF6D14FF00040A0F5800070470EF181 -:1026C000020E2EF0030E5EF8044B244204D44FEAAF -:1026D0004102B2F17F4F11D84FEA4003B3F17F4F6F -:1026E0000CD80ED14FEAD07CB2F17F4F0CEB4C0CE2 -:1026F0000CF1020C08BF4CEBD17C04E04FF0080C4D -:1027000001E04FEAD17C0CEB4C0324FA03F404F013 -:102710000704B4F1040C06D20EEB840CBDE81040A3 -:102720004CF0010C6047DFE80CF0070802024FF0A4 -:102730000040A0F5800010BD0846420018BFD2F14D -:10274000807288BF00F0004010BDFF2141EAD050E8 -:10275000C0057047000000000000000001020304F3 -:102760000607080900000000010203040000000041 -:1027700000000000202020202000200050505000A9 -:10278000000000005050F850F85050002078C07001 -:1027900028F02000C0C810204098180040A0A04099 -:1027A000A890680030204000000000001020404049 -:1027B00040201000402010101020400020A8702061 -:1027C00070A82000202020F8202020000000000019 -:1027D00060408000000000F80000000000000000E1 -:1027E000006060000008102040800000708898A8F9 -:1027F000C888700020602020202070007088083079 -:102800004080F800F80810300888700010305090B0 -:10281000F8101000F880F00808887000384080F048 -:1028200088887000F8081020404040007088887048 -:1028300088887000708888780810E0000060600068 -:1028400060600000006060006060800010204080D8 -:10285000402010000000F800F800000040201008A0 -:102860001020400070881020200020007088B8A838 -:10287000B880780020508888F8888800F08888F030 -:102880008888F0007088808080887000F088888850 -:102890008888F000F88080F08080F800F88080F070 -:1028A0008080800070888080B8887800888888F868 -:1028B0008888880070202020202070003810101098 -:1028C000109060008890A0C0A090880080808080D8 -:1028D0008080F80088D8A8A8888888008888C8A838 -:1028E000988888007088888888887000F08888F0C8 -:1028F0008080800070888888A8906800F08888F0C0 -:10290000A09088007088807008887000F8202020CF -:102910002020200088888888888870008888888897 -:1029200088502000888888A8A8D8880088885020E7 -:10293000508888008888502020202000F808102027 -:102940004080F800F0C0C0C0C0C0F000008040204F -:102950001008000078181818181878002070A8209F -:1029600020202000002040F8402000002010080017 -:10297000000000000000E010709068008080B0C887 -:1029800088C8B000000070888080700008086898CF -:102990008898680000007088F0807000304840F02F -:1029A0004040400000007088887808F08080B0C8FF -:1029B000888888002000002020202000100000309F -:1029C00010101060808090A0C0A09800602020208F -:1029D00020207000000050A8A8A8A8000000B0485F -:1029E0004848480000007088888870000000F0881F -:1029F00088F0808000007888887808080000B04857 -:102A000040404000000078807008F0004040F840EE -:102A10004048300000009090909068000000888846 -:102A2000885020000000A8A8A8A8500000008850E6 -:102A30002050880000008888986808F00000F8108E -:102A40002040F8002040408040402000202020000E -:102A5000202020002010100810102000000040A8A6 -:102A60001000000000000000000000000000000056 -:102A7000001010101010000010000000006C4848FA -:102A80000000000000000000001414287C287C28AE -:102A900050500000001038404038487010100000BE -:102AA000002050200C7008140800000000000018DE -:102AB00020205448340000000010101010000000C6 -:102AC0000000000000080810101010101008080086 -:102AD00000202010101010101020200000107C107A -:102AE00028280000000000000000101010FC10104A -:102AF000100000000000000000000018103020004E -:102B000000000000007C0000000000000000000049 -:102B100000000030300000000004040808101020FD -:102B2000204000000038444444444444380000003D -:102B300000301010101010107C0000000038440409 -:102B4000081020447C0000000038440418040444A9 -:102B500038000000000C141424447C040C00000015 -:102B6000003C20203804044438000000001C2040B1 -:102B70007844444438000000007C440408080810ED -:102B80001000000000384444384444443800000039 -:102B900000384444443C0408700000000000003049 -:102BA000300000303000000000000018180000184D -:102BB0003020000000000C10608060100C0000004D -:102BC000000000007C007C00000000000000C0202D -:102BD00018041820C0000000000018240408100089 -:102BE000300000003844444C54544C4044380000F9 -:102BF0000030102828287C44EC00000000F84444F1 -:102C000078444444F8000000003C444040404044C4 -:102C10003800000000F0484444444448F0000000FC -:102C200000FC445070504044FC000000007C202810 -:102C30003828202070000000003C4440404C4444B0 -:102C40003800000000EC44447C444444EC000000A4 -:102C5000007C1010101010107C000000003C0808D0 -:102C6000084848483000000000EC44485070484490 -:102C7000E400000000702020202024247C000000BC -:102C800000EC6C6C54544444EC00000000EC6464B0 -:102C90005454544CEC000000003844444444444430 -:102CA0003800000000782424243820207000000020 -:102CB0000038444444444444381C000000F8444470 -:102CC00044784844E000000000344C403804046478 -:102CD0005800000000FC9010101010103800000088 -:102CE00000EC4444444444443800000000EC4444B4 -:102CF000282828101000000000EC44445454545478 -:102D00002800000000C4442810102844C40000001B -:102D100000EC44282810101038000000007C440803 -:102D2000101020447C0000000038202020202020AB -:102D30002020380000402020201010080808000043 -:102D4000003808080808080808083800001010288B -:102D5000440000000000000000000000000000002F -:102D6000000000FC0010080000000000000000004F -:102D700000000038443C44443C00000000C040587F -:102D800064444444F80000000000003C44404044D7 -:102D900038000000000C04344C4444443C00000063 -:102DA00000000038447C40403C000000001C207CB7 -:102DB000202020207C000000000000344C444444CB -:102DC0003C04380000C0405864444444EC00000017 -:102DD00000100070101010107C000000001000782F -:102DE000080808080808700000C0405C4870504897 -:102DF000DC00000000301010101010107C000000EB -:102E0000000000E854545454FC000000000000D8B6 -:102E100064444444EC00000000000038444444444E -:102E200038000000000000D8644444447840E000CA -:102E3000000000344C4444443C040C000000006C8E -:102E4000302020207C0000000000003C4438044476 -:102E5000780000000000207C202020201C000000C2 -:102E6000000000CC4444444C34000000000000EC5E -:102E70004444282810000000000000EC445454543E -:102E800028000000000000CC48303048CC00000092 -:102E9000000000EC44242818101078000000007C8A -:102EA000481020447C000000000810101010201072 -:102EB000101008000010101010101010101000005A -:102EC000002010101010081010102000000000004A -:102ED0000024580000000000000000000000000076 -:102EE0000000000000000000000000183C3C3C18FE -:102EF00018180018180000000066666666240000B6 -:102F00000000000000000000000000006C6CFE6C7F -:102F10006C6CFE6C6C0000001818187CC6C2C07C7B -:102F20000686C67C181800000000000000C2C60C0F -:102F3000183060C686000000000000386C6C3876DF -:102F4000DCCCCCCC760000000030303030600000AB -:102F500000000000000000000000000C18303030BD -:102F6000303030180C00000000000030180C0C0C41 -:102F70000C0C0C1830000000000000000000663C43 -:102F8000FF3C660000000000000000000000181870 -:102F90007E18180000000000000000000000000083 -:102FA00000001818183000000000000000000000A9 -:102FB000FE00000000000000000000000000000013 -:102FC0000000001818000000000000000002060CBD -:102FD000183060C0800000000000007CC6C6CED65D -:102FE000D6E6C6C67C000000000000183878181825 -:102FF000181818187E0000000000007CC6060C1887 -:103000003060C0C6FE0000000000007CC606063C22 -:10301000060606C67C0000000000000C1C3C6CCCC0 -:10302000FE0C0C0C1E000000000000FEC0C0C0FC26 -:103030000E0606C67C0000000000003860C0C0FC20 -:10304000C6C6C6C67C000000000000FEC606060C10 -:1030500018303030300000000000007CC6C6C67C4E -:10306000C6C6C6C67C0000000000007CC6C6C67E80 -:103070000606060C7800000000000000001818008A -:1030800000001818000000000000000000181800E0 -:10309000000018183000000000000000060C183076 -:1030A0006030180C0600000000000000000000FE68 -:1030B0000000FE0000000000000000006030180C5E -:1030C000060C1830600000000000007CC6C60C181A -:1030D0001818001818000000000000007CC6C6DEAA -:1030E000DEDEDCC07C00000000000010386CC6C6CC -:1030F000FEC6C6C6C6000000000000FC6666667C10 -:1031000066666666FC0000000000003C66C2C0C047 -:10311000C0C0C2663C000000000000F86C66666635 -:103120006666666CF8000000000000FE6662687863 -:1031300068606266FE000000000000FE666268785B -:1031400068606060F00000000000003C66C2C0C023 -:10315000DEC6C6663A000000000000C6C6C6C6FE4F -:10316000C6C6C6C6C60000000000003C18181818E5 -:10317000181818183C0000000000001E0C0C0C0C65 -:103180000CCCCCCC78000000000000E6666C6C78BB -:10319000786C6666E6000000000000F06060606029 -:1031A00060606266FE000000000000C6EEFEFED613 -:1031B000C6C6C6C6C6000000000000C6E6F6FEDEB3 -:1031C000CEC6C6C6C6000000000000386CC6C6C623 -:1031D000C6C6C66C38000000000000FC6666667C4F -:1031E00060606060F00000000000007CC6C6C6C6DB -:1031F000C6C6D6DE7C0C0E00000000FC6666667C4F -:103200006C666666E60000000000007CC6C660389A -:103210000C06C6C67C0000000000007E7E5A18180E -:10322000181818183C000000000000C6C6C6C6C624 -:10323000C6C6C6C67C000000000000C6C6C6C6C61C -:10324000C6C66C3810000000000000C6C6C6C6C660 -:10325000D6D6FE6C6C000000000000C6C66C6C3850 -:10326000386C6CC6C6000000000000666666663CEE -:10327000181818183C000000000000FEC6860C1844 -:103280003060C2C6FE0000000000003C303030302C -:10329000303030303C0000000000000080C0E070A2 -:1032A000381C0E06020000000000003C0C0C0C0C48 -:1032B0000C0C0C0C3C0000001038386CC6000000F0 -:1032C00000000000000000000000000000000000FE -:1032D000000000000000FF00303030180000000047 -:1032E0000000000000000000000000000000780C5A -:1032F0007CCCCCCC76000000000000E06060786CF4 -:1033000066666666DC0000000000000000007CC607 -:10331000C0C0C0C67C0000000000001C0C0C3C6C4F -:10332000CCCCCCCC760000000000000000007CC6B5 -:10333000FEC0C0C67C000000000000386C6460F075 -:1033400060606060F000000000000000000076CCCB -:10335000CCCCCCCC7C0CCC78000000E060606C76EF -:1033600066666666E600000000000018180038185F -:10337000181818183C0000000000000606000E0691 -:10338000060606060666663C000000E06060666CA5 -:1033900078786C66E60000000000003818181818ED -:1033A000181818183C000000000000000000ECFE97 -:1033B000D6D6D6D6D6000000000000000000DC669D -:1033C00066666666660000000000000000007CC6BD -:1033D000C6C6C6C67C000000000000000000DC6617 -:1033E000666666667C6060F000000000000076CCD7 -:1033F000CCCCCCCC7C0C0C1E000000000000DC7699 -:1034000062606060F00000000000000000007CC608 -:1034100060380CC67C000000000000103030FC302A -:10342000303030361C000000000000000000CCCC22 -:10343000CCCCCCCC7600000000000000000066661A -:103440006666663C18000000000000000000C6C66A -:10345000C6D6D6FE6C000000000000000000C66C5E -:103460003838386CC6000000000000000000C6C6F6 -:10347000C6C6C6C67E060CF8000000000000FECCE2 -:10348000183060C6FE0000000000000E181818700A -:10349000181818180E00000000000018181818005E -:1034A0001818181818000000000000701818180EDE -:1034B000181818187000000000000076DC000000EA -:1034C0000000000000000000E8BF94E59B9E0A0099 -:1034D0004261636B0A496E7075740A42757A7A6547 -:1034E000720A4F4C45440A4175746F0A54797065ED -:1034F0000A4C616E67756167650A41626F75740099 -:1035000020350008000000204C00000028010008C1 -:103510006C3500084C000020240F00004401000816 -:103520000100000010000000000000000024F40072 -:10353000000000000000000000000000000000008B -:10354000000000000000000000000000000000007B -:10355000D0340008C834000800000000000000005B -:0C3560000000000000000000000000005F +:1001B000054A064B70470000D11F0008ED000008FB +:1001C000B0090020B00F0020B00B0020B00B0020C1 +:1001D0000FB41CB5074B06AA7B44694600900598EE +:1001E00000F003F90020694600F012F91CBC5DF82C +:1001F00014FB0000350200002DE9F0410E460446D4 +:10020000002020622046E168884730B3252805D0C9 +:10021000D4E901219047206A401CF2E7E1682046BA +:1002200000278847050018D0A5F14100192802D8F9 +:1002300020354FF400673246294620462760FFF7F5 +:100240008FFF40B1012804D0F61D26F007060836BE +:10025000D8E7361DD6E72846DAE7206ABDE8F08100 +:100260002DE9F0410646002410687529314616A58F +:1002700010D0AFF30080002802DA404213A507E057 +:1002800031688A0701D512A502E0490704D511A5F6 +:10029000012401E0AFF3008000210A2206F12407C7 +:1002A00009E0B0FBF2FCB0FBF2F302FB1C003030C3 +:1002B00078541846491C0028F3D123462A46304674 +:1002C000BDE8F04100F032B8000000002D00000051 +:1002D0002B000000200000004FF0000200B5134684 +:1002E00094469646203922BFA0E80C50A0E80C5056 +:1002F000B1F12001BFF4F7AF090728BFA0E80C5007 +:1003000048BF0CC05DF804EB890028BF40F8042BFF +:1003100008BF704748BF20F8022B11F0804F18BF6C +:1003200000F8012B70477047704770472DE9F04780 +:100330000D4699469246044600F124080168880655 +:1003400004D5E06921F01001216000E00120A842FD +:1003500001DD471B00E00027A1697A1902EB0900C3 +:10036000081AA0612078C00602D42046AFF30080AE +:10037000002608E0D4E901211AF806009047206A17 +:10038000401C761C20624E45F4DB2078C0060AD55E +:100390002046AFF3008006E0D4E9012130209047E9 +:1003A000206A401C2062381EA7F10107F4DC07E038 +:1003B000D4E9012118F805009047206A401C20620A +:1003C000281EA5F10105F3DC2046AFF3008020785C +:1003D000000602D50220BDE8F0870120FBE70000FF +:1003E00001694A1C02610878704700B58FB0CDE9F9 +:1003F00001310021059105497944CDE903101146E9 +:100400006846FFF7F9FE0FB000BD0000E5FFFFFFF3 +:100410000A6802F8010B0A607047754600F02CF874 +:10042000AE4605006946534620F00700854618B0E1 +:1004300020B5FFF7BBFEBDE820404FF000064FF0AF +:1004400000074FF000084FF0000B21F00701AC4609 +:10045000ACE8C009ACE8C009ACE8C009ACE8C00928 +:100460008D46704710B50446AFF300802046BDE8C6 +:100470001040FFF787BE0000004870474C0900207D +:1004800001491820ABBEFEE7260002007047FEE7D8 +:100490007047012000F068B8022000F065B8102015 +:1004A00000F062B870B5002606800446018AC06874 +:1004B00000F056F9F8B9A07810B1012811D01AE06F +:1004C00000F060F96168012501F5FA71884203D2F4 +:1004D0002089401C208100E0258100F053F96060F4 +:1004E000A57000F04FF9616801F5FA71884202D9F0 +:1004F000FF2020802081218AE06800F031F9012866 +:1005000008D1A078012805D12088FF2801D02089B2 +:100510002080A67070BD0022016802600846704706 +:100520000F4A10B59169012815D0022815D010285E +:1005300010D120210B4800F013F9094901221C3188 +:1005400020B1012806D10868401C01E00868401E5F +:1005500008600A7110BD491C00E0491E916110BD80 +:1005600010000020000C0140044910B50A68024246 +:1005700002D00860FFF7D4FF10BD00001404014052 +:100580002DE9F84FDFF8B891002409F1040A0AF1C7 +:10059000040B23460F270BF1040EC9E00125A540EB +:1005A0002A40AA427DD1674ED1F804C0ACEB0608C0 +:1005B000B44532D014DCBCF1030F3AD009DCBCF1F5 +:1005C000000F2AD0BCF1010F1CD0BCF1020F31D1B9 +:1005D0001DE0BCF1110F17D0BCF1120F2AD119E0A8 +:1005E000B8F5881F19D006DCB8F5803F15D0B8F5EE +:1005F000801F1FD111E0B8F5001F0ED0B8F5041F01 +:1006000018D10AE0CB6815E0CB681B1D12E0CB685F +:1006100008330FE0CB680C330CE08B682BB1012B57 +:100620004FF0080303D0456104E0042302E00561B4 +:1006300000E00023FF2A01D8064601E000F104068D +:100640004FEA840501D9A5F12005D6F8008007FA04 +:1006500005FC28EA0C0803FA05F548EA0508C6F87F +:1006600000804D68ED0062D5374DAE6946F0010659 +:10067000AE61AD6924F0030605F001050095334D28 +:1006800006EB050CDCF80850A607360F07FA06F84B +:1006900025EA0805DFF8B880404503D14FF000088F +:1006A00017E044E0DFF8AC80404502D14FF001088C +:1006B0000FE0DFF8A480404502D14FF0020808E0C7 +:1006C000DFF89880404502D14FF0030801E04FF079 +:1006D000040808FA06F848EA0508CCF808804D68CE +:1006E000D9F80060ED034D4601D5164300E096436E +:1006F0002E604D68DAF80060AD03554601D516430B +:1007000000E096432E604D68DBF80060ED025D4628 +:1007100001D5164300E096432E604D68DEF8006078 +:10072000AD02754601D5164300E096432E60641C69 +:100730000D682A46E5407FF431AFBDE8F88F000030 +:1007400000040140000011100010024000000140B0 +:1007500000080140000C014000100140001401405D +:100760008068084000D001207047C26821EA020377 +:100770000A4043EA0241016170470AB101617047D2 +:100780000904FBE701488068704700000000002072 +:1007900070B5040025D094F83D00002520B984F8F8 +:1007A0003C50204600F050F9242084F83D00206899 +:1007B000016821F0010101602068016841F40041F5 +:1007C00001602068016821F40041016000F098FA9E +:1007D0004D4A6168914201D84C4900E04C49884239 +:1007E00001D2012070BD4B492368B0FBF1F15E6876 +:1007F00026F03F060E435E606368934206D94FF4CD +:10080000967359434FF47A73B1FBF3F12368491C93 +:100810001E6A26F03F06314319626168914210D882 +:100820004900401EB0FBF1F2521CC2F30B02042A35 +:1008300001D2042022E0B0FBF1F0401CC0F30B0019 +:100840001CE0A268F2B301EBC10303EB0116431EE7 +:10085000B3FBF6F35B1C43F480431B0549D092B312 +:1008600001EBC10202EB0111401EB0FBF1F0401C94 +:10087000C0F30B0040F4804040F400402168CA6996 +:100880004CF6FF739A431043C861D4E90710014343 +:100890002068026822F0C00211430160D4E903011C +:1008A00001432068826848F2FF339A431143816014 +:1008B000D4E9050108432168CA6822F0FF02104309 +:1008C000C86001E00EE016E02068016841F0010117 +:1008D00001602564202084F83D00256384F83E50A3 +:1008E000002070BD01EB4106431EB3FBF6F35B1C19 +:1008F000B3E70120C2E701EB4101401EB0FBF1F07C +:10090000401CC0F30B00B7E7A086010080841E00E6 +:1009100000093D0040420F002DE9FF4F83B09A4689 +:10092000DDE9119793460446DDF84080FFF72AFF82 +:10093000054694F83D0020287FD119230122404923 +:100940002046009500F040FF002876D194F83C0046 +:10095000012872D0012084F83C0020680168C90792 +:1009600003D1016841F0010101602068016821F4B0 +:1009700000610160212084F83D00402084F83E00A1 +:1009800000262664C4F82480A4F82A90608D20856F +:100990002C48E062CDE9007553465A46204604993A +:1009A00000F098FE70B930E02A463946204600F043 +:1009B0008AFF58B1206C042804D12068016841F4F2 +:1009C00000710160012007B0BDE8F08F606A216806 +:1009D00000780861606A401C6062218D491E89B2FE +:1009E0002185628D521E628522685369DB435B0755 +:1009F0000BD469B100781061606A401C6062208D80 +:100A0000401E2085608D401E6085208D0028CBD142 +:100A10002A463946204600F0B1FE0028CAD154F8D3 +:100A20003D0B016841F400710160202004F81E09AB +:100A3000E67766770020C6E7FFE70220C3E70000FD +:100A4000020010000000FFFF10B586B000210091E9 +:100A500001910291039100680F4988421AD10F4C0D +:100A6000A06940F00800A061A069694600F0080094 +:100A70000490C020009012200190032003900848A9 +:100A8000FFF77EFDE06940F40010E061E06900F4EA +:100A90000010049006B010BD005400400010024049 +:100AA000000C01400248816802781144816070475F +:100AB00000000020074810B5016841F010010160F6 +:100AC000032000F075F80F2000F006F800F024F87D +:100AD000002010BD0020024070B50D4D04464FF4BB +:100AE0007A712878B1FBF0F00A490968B1FBF0F09F +:100AF00000F0DCFA48B9102C07D200222146501E23 +:100B000000F036F800206C6070BD012070BD000060 +:100B1000000000200C0000200C4808B5816941F05D +:100B200001018161816901F001010091C16941F018 +:100B30008051C161C06900F0805000900448416854 +:100B400021F0E06141F00071416008BD00100240F9 +:100B500000000140002809DB00F01F020121914044 +:100B60004009800000F1E020C0F80011704700004B +:100B7000F0B40E4B1B680C46C3F30223C3F1070508 +:100B8000042D00D90425191D072901D2002300E0F6 +:100B9000DB1E012606FA05F1491E214099409E40C0 +:100BA000761E16403143F0BC01F03CBB0CED00E07A +:100BB000064900F0070208684FF6FF03184040EAB4 +:100BC0000220034A10430860704700000CED00E06B +:100BD0000000FA052DE9F0470F46050061D0434EAD +:100BE000306800F00700B84209D2306820F00700F2 +:100BF00038433060306800F00700B84251D12868AF +:100C00003B4C810712D5400703D5606840F4E06093 +:100C100060602878000703D5606840F46050606029 +:100C20006068A96820F0F000084360602878C00779 +:100C300028D06868012810D02168022810D08907C0 +:100C400000292EDA616821F0030101436160FFF79A +:100C500099FD804641F288390DE021688903EFE76C +:100C60008901EDE7FFF78EFDA0EB0801494502D9A8 +:100C70000320BDE8F0876068696800F00C00B0EB05 +:100C8000810FEFD1306800F00700B8420BD930680F +:100C900020F0070038433060306800F00700B842A9 +:100CA00001D00120E5E72878400705D56068E968AC +:100CB00020F4E060084360602878000706D560688B +:100CC000296920F4605040EAC100606000F028F813 +:100CD0006168084AC1F30311515CC84006490860C5 +:100CE00006480068FFF7F8FE0020C2E70020024037 +:100CF00000100240042400080C0000200400002022 +:100D00000448054900684968044AC1F30221515C5E +:100D1000C84070470C000020001002401424000856 +:100D200012A185B00FC98DE80F0014A0144A006805 +:100D300004905168134801F00C03042B10D0082BC9 +:100D40000ED1C1F38343C9031DF803000AD55168CE +:100D500004AAC1F34041515C0A4A5043B0FBF1F090 +:100D600005B0704708494843FAE70000020304054C +:100D7000060708090A0B0C0D0E0F101001020000E7 +:100D80000010024000127A0000093D002DE9F84FE2 +:100D9000040070D02078C04DC00749D06868C0F307 +:100DA0008100012807D06868C0F38100022809D1BA +:100DB0006868C00306D52868800339D560680028B4 +:100DC000E7D035E06068B0F5803F0BD010B1B0F5EA +:100DD000A02F11D0286820F480302860286820F4E3 +:100DE000802002E0286840F480302860606890B17C +:100DF000FFF7C8FC06460AE0286840F48020286017 +:100E0000F0E700BFFFF7BEFC801B642873D828689A +:100E10008003F7D50CE0FFF7B5FC064605E000BF00 +:100E2000FFF7B0FC801B6428F0D828688003F7D453 +:100E300020789A4E80074FF001094FF0000839D50D +:100E4000686810F00C0F07D06868C0F381000228B2 +:100E500009D16868C00306D42868800714D52069C2 +:100E6000012808D110E02069B0B1C6F80090FFF762 +:100E700089FC074605E00AE1FFF784FCC01B022855 +:100E8000C4D828688007F7D52868616920F0F80081 +:100E900040EAC10028600DE0C6F80080FFF772FC50 +:100EA000074604E0FFF76EFCC01B022823D8286821 +:100EB0008007F7D4207800072CD57948A169D9B1EB +:100EC000C0F80090FFF75EFC074604E0FFF75AFC0D +:100ED000C01B02280FD8686A8007F7D571484FF405 +:100EE000FA510068B0FBF1F0009000BF0098411E7D +:100EF0000091FAD20EE080E0C0F80080FFF742FCDB +:100F0000074604E0FFF73EFCC01B022875D8686A5C +:100F10008007F7D42078400760D5E8690027C00033 +:100F200008D4E86940F08050E861E869012700F0E2 +:100F3000805000905C480168C90513D4016883465D +:100F400041F480710160FFF71DFC824606E000BF9E +:100F5000FFF718FCA0EB0A0064284ED8DBF800006D +:100F6000C005F5D5E06801280AD008B1052813D0DE +:100F7000286A20F001002862286A20F0040002E0BC +:100F8000286A40F001002862E06841F2883B98B18D +:100F9000FFF7F8FB82460BE0286A40F00400286265 +:100FA000EEE700BFFFF7EEFBA0EB0A0159455AD868 +:100FB000286A8007F6D50CE0FFF7E4FB824605E0DF +:100FC000FFF7E0FBA0EB0A0159454CD8286A8007DF +:100FD000F6D41FB1E86920F08050E861E06988B379 +:100FE0006968C1F38101022944D00228C6F86080F3 +:100FF00004D0FFF7C7FB044638E034E0FFF7C2FB3C +:10100000074604E0FFF7BEFBC01B02282BD8286868 +:101010008001F7D4206AB0F5803F05D16868A168E7 +:1010200020F4003008436860D4E908010843696887 +:1010300021F4741108436860C6F86090FFF7A2FBC2 +:10104000044606E025E000BFFFF79CFB001B0228DA +:1010500009D828688001F7D51BE000BFFFF792FB95 +:10106000001B022802D90320BDE8F88F2868800100 +:10107000F4D40EE00128F7D06868226A00F48031C9 +:10108000914204D1616A00F47010884201D00120BD +:10109000EAE70020E8E700000010024000004242BA +:1010A000800442420C0000200070004010B5401E39 +:1010B000B0F1807F01D3012010BD4FF0E0246061CA +:1010C0000F21601701F0AEF80020A0610720206119 +:1010D000002010BD7047704770B590F83C20012A81 +:1010E00026D0012480F83C40022280F83D2003688D +:1010F0005A689D6822F070060A6832435A600D4BA8 +:1011000002689A4208D0B2F1804F05D00A4B9A4249 +:1011100002D00A4B9A4204D1496825F08003194352 +:10112000916080F83D40002180F83C10084670BD79 +:10113000022070BD002C0140000400400008004067 +:1011400010B5040003D094F83D0010B107E0012071 +:1011500010BD002084F83C00204600F01FF802205B +:1011600084F83D00211D206800F040FF012084F834 +:10117000460084F83E0084F83F0084F8400084F87C +:10118000410084F8420084F8430084F8440084F865 +:10119000450084F83D00002010BD000008B501683E +:1011A0001448B1F1804F14D0134A914220D1C16943 +:1011B00041F00201C161C069002200F0020000900C +:1011C00011461D20FFF7D4FC1D20BDE80840FFF7A5 +:1011D000C1BCC16941F00101C161C069002200F0D8 +:1011E0000100009011461C20FFF7C2FC1C20ECE718 +:1011F00008BD0000001002400004004090F83D10BF +:10120000012901D001207047022180F83D100168BA +:10121000CA6842F00102CA6000680B49884208D0DF +:10122000B0F1804F05D00949884202D00849884270 +:1012300004D1816801F00701062903D0016841F05B +:101240000101016000207047002C014000040040B3 +:101250000008004070B5044690F83C00012817D003 +:10126000012584F83C50022084F83D002068826803 +:1012700022F0770222F47F4282600868502830D042 +:101280000DDC20284DD005DC98B310283BD148E078 +:10129000022070BD302844D0402834D139E0602885 +:1012A00028D0702806D0B0F5805F2CD0B0F5005F54 +:1012B00029D10AE0CB68D1E90121206800F0D9FEEC +:1012C0002068816841F0770109E0CB68D1E901210C +:1012D000206800F0CEFE2068816841F48041816082 +:1012E00011E0CA684968206800F078FF5021206842 +:1012F00007E016E0CA684968206800F080FF6021B6 +:10130000206800F0C0FE84F83D50002084F83C00C6 +:1013100070BDCA684968206800F060FF40212068FD +:10132000EFE7226801461046EBE7704770B50446C8 +:10133000006801694FF00005C943890715D4C168E9 +:10134000C943890711D4E91E016101202077206873 +:1013500080698007204602D0FFF7E7FF04E000F035 +:10136000BDF8204600F04CF9257720680169C94393 +:10137000490717D4C168C943490713D46FF0040162 +:101380000161022020772068806910F4407F2046A8 +:1013900002D0FFF7CAFF04E000F0A0F8204600F0FA +:1013A0002FF9257720680169C943090716D4C16858 +:1013B000C943090712D46FF00801016104202077A6 +:1013C0002068C0698007204602D0FFF7AEFF04E026 +:1013D00000F084F8204600F013F9257720680169B1 +:1013E000C943C90617D4C168C943C90613D46FF0ED +:1013F00010010161082020772068C06910F4407F47 +:10140000204602D0FFF791FF04E000F067F8204685 +:1014100000F0F6F8257720680169C943C90708D1AB +:10142000C168C943C90704D1891E0161204600F083 +:1014300037F920680169C943090609D4C168C9435D +:10144000090605D46FF0800101612046FFF742FED6 +:1014500020680169C943490609D4C168C9434906DE +:1014600005D46FF040010161204600F01AF92068B0 +:101470000169C94389060BD4C168C943890607D4E9 +:101480006FF0200101612046BDE87040FFF723BEE8 +:1014900070BD000000B585B000210091019102915E +:1014A00003910068B0F1804F11D10A48816941F081 +:1014B000040181618069694600F004000490042001 +:1014C00000900220019003900348FFF759F805B0FF +:1014D00000BD00000010024000080140704770B5D8 +:1014E000044690F83C000D4601280AD0012084F8FB +:1014F0003C0042B1042A18D0082A2AD00C2A4DD127 +:1015000039E0022070BD206800F0C6FD20688169C6 +:1015100041F0080181612068816921F00401816145 +:10152000206881692A69114311E0206800F0DCFD20 +:101530002068816941F4006181612068816921F43A +:1015400080618161206881692A6941EA02218161A3 +:1015500024E0206800F0F4FD2068C16941F0080132 +:10156000C1612068C16921F00401C1612068C169BD +:101570002A69114311E0206800F00EFE2068C1695D +:1015800041F40061C1612068C16921F48061C161D9 +:101590002068C1692A6941EA0221C161002084F8FA +:1015A0003C0070BD10B5040003D094F83D0010B1AC +:1015B00007E0012010BD002084F83C00204600F028 +:1015C0001EF8022084F83D00211D206800F00EFD69 +:1015D000012084F8460084F83E0084F83F0084F837 +:1015E000400084F8410084F8420084F8430084F805 +:1015F000440084F8450084F83D00002010BD704789 +:101600007047000010B50446022249B104290ED0EB +:10161000082913D094F84100012816D0012010BDEC +:1016200094F83E000128F9D184F83E200FE094F8A8 +:101630003F000128F2D184F83F2008E094F84000F0 +:101640000128EBD184F8402001E084F841200122F8 +:10165000206800F001FD0F492068884203D1426CE8 +:1016600042F4004242642068884208D0B0F1804FC2 +:1016700005D00949884202D00849884204D18168CE +:1016800001F00701062903D0016841F00101016062 +:10169000002010BD002C0140000400400008004064 +:1016A00070477047FEE701684A69D24352050FD47C +:1016B0006FF480624A61002140F8301F202242739B +:1016C0008173026942F004020261017301207047D4 +:1016D000002070472DE9F843044600680D46DDE917 +:1016E000089701689846164641F4807101604B46A0 +:1016F00000224FF001112046009700F065F848B134 +:1017000020680068C00502D54FF4007020640320F3 +:10171000BDE8F883216805F0FE0008613B464A46B3 +:101720001549204600F084F888B92068416980692D +:1017300000903A464946204600F0C5F848B1206C72 +:10174000042804D12068016841F40071016001207F +:10175000DEE7F5B2B8F1010F09D02168300A08615F +:101760003A464946204600F0AEF80028E7D1206806 +:1017700005610020CCE700000200010070B51646AC +:101780000D4604460DE02046FFF78DFF08B101200D +:1017900070BD681C05D0FEF7F5FF801BA84207D876 +:1017A00035B120684069C0434007ECD4002070BDCB +:1017B000002044F8300F20216173A073216941F0AB +:1017C000200121612073E2E72DE9F0471E46904693 +:1017D0000D460446C1F30747DDF8209008E0701C71 +:1017E00006D0FEF7CFFFA0EB0900B0420FD876B1CC +:1017F0002068012F18D0806925EA00000004000C41 +:1018000014D000214145EAD00020BDE8F087002037 +:1018100044F8300F20216173A073216941F0200149 +:10182000216120730120F0E74069E5E70121E9E744 +:101830002DE9F0479A4691460E46044600254FF0A2 +:101840002008C1F3074725E020684069C0434005F0 +:1018500014D42068016841F40071016021686FF4BC +:1018600080604861256384F83D8084F83E50206C98 +:1018700040F00400206484F83C501FE0B9F1FF3FC1 +:1018800008D0FEF77FFFA0EB0A0149450CD8B9F15B +:10189000000F09D02068012F13D0806926EA0000CC +:1018A0000004000C0BD0CFE744F8305F84F80D80C3 +:1018B000A573206940F02000206125730120BDE858 +:1018C000F0874069EAE770B516460D4604460DE01C +:1018D0002046FFF7E8FE08B1012070BD681C05D066 +:1018E000FEF750FF801BA84207D835B12068406939 +:1018F000C0430006ECD4002070BD002044F8300F37 +:1019000020216173A073216941F0200121612073BE +:10191000E2E700003EB564248DE81C000A4601465B +:1019200001230248FEF7F8FF3EBD000044000020FE +:101930002DE9F04786B000254548009501950295B0 +:101940000395816941F010018161816901F0100105 +:101950000491816941F020018161816901F02001D8 +:101960000491816941F004018161816901F0040100 +:101970000491816941F0080181618069DFF8D490A8 +:1019800000F008000490012208214846FEF7F5FE09 +:10199000DFF8C4A04FF48057002239465046FEF7C6 +:1019A000ECFE4FF40048012241465046FEF7E5FEAA +:1019B00001240820CDE900040326CDE9024669464A +:1019C0004846FEF7DDFD25480096CDE9010469464D +:1019D0005046FEF7D5FD0220CDE90250CDE9007456 +:1019E00069465046FEF7CCFDCDE90084CDE90246BC +:1019F00069465046FEF7C4FD2820CDE9000569463A +:101A000002945046FEF7BCFD102000901448CDE92A +:101A1000010469465046FEF7B3FD00221146062038 +:101A2000FFF7A6F80620FFF795F8002211460720D9 +:101A3000FFF79EF80720FFF78DF8002211460A20D5 +:101A4000FFF796F80A20FFF785F806B0BDE8F087A3 +:101A50000010024000080140000C0140000031105D +:101A60000000111010B58EB000240794089409945A +:101A70000A940B941C2168460C94FEF72DFC1C481C +:101A80004FF08041C0E900148460C4600461846147 +:101A9000FFF756FB08B172B6FEE74FF4805007908F +:101AA00007A91348FFF7D6FB08B172B6FEE7104846 +:101AB000FFF778FD08B172B6FEE70B940BA90C484E +:101AC0000C94FFF709FB08B172B6FEE76020CDE980 +:101AD000000402940822694605480494FFF7FFFCBD +:101AE00008B172B6FEE70248FFF7D4FC0EB010BD95 +:101AF0009800002010B586B0002417480094019487 +:101B00000294039404941349059401604721C0E9A9 +:101B1000011440F2E731C0E903148461FFF710FBC0 +:101B200008B172B6FEE74FF48050009069460A484B +:101B3000FFF790FB08B172B6FEE7049404A90648CB +:101B40000594FFF7C9FA002801D072B6FEE706B087 +:101B500010BD000000040040E0000020FEE7FEE7AA +:101B60003CB5A3F12005059C5E2D26D8082A0DD092 +:101B70000C2A15D0102A20D1104A02EB0312A2F52C +:101B80000072CDE900241023082214E00C4A02EB75 +:101B9000C302A2F58072CDE90024082305220AE0E1 +:101BA00003EB4302074B03EB8202A2F5C072CDE9BF +:101BB00000240C23062200F096F83CBD882B000878 +:101BC0001C240008142700082DE9F05F4FF00008DE +:101BD000DFF85CA04546C146AAF5806B2946002087 +:101BE00000F0D3F800240AEBC5170BEBC516395DDE +:101BF000305D88420ED0B8F1000F05D14FF00108DA +:101C00002946204600F0C1F8305D00F007F9305D4C +:101C1000385501E04FF0000806F80490641CE4B267 +:101C2000802CE4D36D1CEDB2082DD7D3BDE8F09F16 +:101C30004C05002010B5AE2000F0E8F8D52000F0EB +:101C4000E5F8502000F0E2F8A82000F0DFF83F208F +:101C500000F0DCF8D32000F0D9F8002000F0D6F82E +:101C6000402000F0D3F88D2000F0D0F8142000F0D0 +:101C7000CDF8202000F0CAF8022000F0C7F8A1201B +:101C800000F0C4F8C02000F0C1F8D92000F0BEF880 +:101C9000F12000F0BBF8DB2000F0B8F8302000F0B5 +:101CA000B5F8A42000F0B2F8A62000F0AFF8AF20FD +:101CB00000F0ACF8BDE810400020AFF3008070B534 +:101CC000064600242146002000F05FF8002530463B +:101CD00000F0A4F86D1CEDB2802DF8D3641CE4B2C2 +:101CE000082CEFD370BD2DE9FF4F0026DDE90DBABA +:101CF000994690463746354643E000243AE01BF8C3 +:101D000007008021F140084225D0BAF1060F1DD20C +:101D1000DFE80AF0030B0B030313019800222844A9 +:101D2000C1B200982044C0B20EE0019801222844BC +:101D3000C1B200982044C0B206E0019802222844B3 +:101D4000C1B200982044C0B200F070F8761CF6B220 +:101D5000082E0BD00CE05FEA0A00DED00128DCD0B0 +:101D60000228F3D0BAF1040FF0D1DEE700267F1C81 +:101D7000641CE4B24445C2D30EB100267F1C6D1C26 +:101D8000EDB24D45B9D3BDE8FF8F10B50446C1F1A2 +:101D9000B700C0B200F03AF8102040EA141000F08A +:101DA00035F804F00F00BDE8104000F02FB82DE921 +:101DB000F8430546DDF820901F4690460E46104633 +:101DC000082A04D00C2804D0102A1AD103E00624D3 +:101DD00017E0072415E0082413E02819802806D30B +:101DE00006EB0800C6B2402E00D30026002542466E +:101DF00031462846CDF80090FFF7B2FE2819C5B24B +:101E00007F1C3B78002BE8D1BDE8F88301B56A461A +:101E1000012300217820FFF77DFD08BD01B56A464A +:101E2000012340217820FFF775FD08BD10B58028FB +:101E300016D2402914D2CC0801F007018023CB40F0 +:101E4000084901EBC414215C22B1012A04D0022A02 +:101E500005D103E0994302E0194300E059402154C1 +:101E600010BD00004C01002070472DE9FF4F0026F7 +:101E7000044689B04FF0FF393246304613B1012B8A +:101E800070D101E0256807E0656805E00A2B01D103 +:101E9000761CB6B2521C92B2AB5C002BF6D1A26893 +:101EA0009B465118A16002D55946C4F808B0B1420A +:101EB00000DDA660D4E90221CB1C9A4201DA491E5A +:101EC000E1608A4204DDCA1CB24201DA491CE160C9 +:101ED00006F10108B8F1040F01D9E26800E0002220 +:101EE0000021E26007E06D1C2B780BB10A2BFAD1C0 +:101EF000491C89B26D1C8A42F6DC00270DF1040AE8 +:101F000023E0E168A2683944914201D13E2200E019 +:101F100020220AF800205246401C03E01154401CC5 +:101F200080B26D1C297809B10A29F7D102F800B0F6 +:101F3000012000903807010E01AB10220020FFF7AE +:101F400036FF7F1C0020BFB26D1CB8F1040F01D911 +:101F5000042100E0711CB942D3D80B98012801D1AB +:101F6000D4F808900DB04846BDE8F08F7047FEF7F2 +:101F700099BD30B58FB028216846FEF7ADF9142120 +:101F80000AA8FEF7A9F901210804CDE900100024F0 +:101F9000029402250491CDE907504FF4E010099016 +:101FA0006846FEF7F3FE08B172B6FEE70F20CDE9F2 +:101FB0000A054FF48060CDE90C4002210AA80E9476 +:101FC000FEF708FE002801D072B6FEE70FB030BD64 +:101FD000704700000148FFF7A9B9000098000020F1 +:101FE0000148FFF7A3B90000E0000020F0B5026847 +:101FF000164B174C174D4FF08047984205D0B8420A +:1020000003D0A04201D0A84203D122F070064A6852 +:102010003243984205D0B84203D0A04201D0A84232 +:1020200003D122F44074CA6822434C6922F0800232 +:10203000224302608A68C2620A688262984201D1C1 +:102040000969016301214161F0BD0000002C0140DC +:10205000000400400008004010B501F01F030121FA +:10206000046A99408C430462016A9A4011430162F8 +:1020700010BD10B5846842EA032224F47F440A4369 +:102080002243826010BD826822F070020A4342F04F +:10209000070181607047000030B5026A22F001023A +:1020A0000262026A4368846924F073050C682C4359 +:1020B00022F002058A682A430A4DA8420BD122F079 +:1020C0000805CA6823F440732A434D6922F00402CC +:1020D0001D438B692B4343608461496841630262FD +:1020E00030BD0000002C014030B5026A22F0100221 +:1020F0000262026A436884690D6824F4E64444EA93 +:1021000005248D6822F0200242EA05120B4DA842F8 +:102110000ED1CD6822F0800242EA05124D6923F407 +:10212000406343EA85038D6922F0400243EA850358 +:102130004360846149688163026230BD002C0140C4 +:1021400030B5026A22F480720262036A4268C4698E +:1021500023F4007324F073050C682C438D6843EA64 +:1021600005230C4DA8420ED1CD6823F4006343EA49 +:1021700005234D6922F4405242EA05128D6923F489 +:10218000806342EA05124260C4614968C163036228 +:1021900030BD0000002C014030B5026A22F48052AC +:1021A0000262046A4268C3690D6823F4E64343EAA5 +:1021B00005238D6824F4005444EA0534064DA842F2 +:1021C00004D14D6922F4804242EA85124260C36123 +:1021D00049680164046230BD002C014010B5036AF7 +:1021E000046A24F001040462846924F0F00444EADF +:1021F000021423F00A020A438461026210BD10B582 +:10220000036A23F0100303628369046A23F47043B2 +:1022100043EA023224F0A00343EA01118261016221 +:1022200010BDFEE70907090E002804DB00F1E020DD +:1022300080F80014704700F00F0000F1E02080F8F3 +:10224000141D7047FEF736FCFFF793FEFFF770FB97 +:102250000E480D494FF4804201600D494160002154 +:102260008160C0E9031241618161C1610162FEF7D1 +:102270008FFA08B172B6FEE7FFF7F4FBFFF73AFCFE +:1022800000F008F8FEE70000005400404400002081 +:10229000A086010008B54B4E494F0820F7603082F8 +:1022A000FFF7C8FC08214848FFF7ACF94748FEF79C +:1022B000A5FF002208214648FEF75FFA454C01259C +:1022C000A068002863D0012802D0022860D14CE029 +:1022D0003C48328840A11430FDF77AFF394B002189 +:1022E0001433082208460095FFF761FD39481C3079 +:1022F000FEF711F96169421832483AA1143062615F +:10230000FDF766FF2F4B082214331146002000957D +:10231000FFF74DFD2B4836A11430A269FDF758FF99 +:10232000284B08221433102100200095FFF73FFDB1 +:10233000A08832A1401CA080224862881430FDF79A +:1023400047FF204B08221433382100200095FFF767 +:102350002EFD3088FF281BD10220A060FEF712FA64 +:1023600042F210710844206112E01A481C30FEF756 +:10237000D2F801461748327823782430FFF775FDEC +:1023800000B9A560FEF7FEF92169884200D9A56071 +:102390000C48FEF787F8FFF717FCFEF7F3F9014644 +:1023A000E06881428CD900F57A70E0604FF400411A +:1023B0003846FEF7DAF9A08860800020A0807FE729 +:1023C000000C01402801002098000020E0000020BF +:1023D0000008014010000020425554544F4E3A2549 +:1023E00064000000454E434F44453A256400000018 +:1023F00074657374636F64653A2564004650533A9C +:102400002564000000000000000000000102030439 +:102410000607080900000000010203040000000094 +:1024200000000000202020202000200050505000FC +:10243000000000005050F850F85050002078C07054 +:1024400028F02000C0C810204098180040A0A040EC +:10245000A89068003020400000000000102040409C +:1024600040201000402010101020400020A87020B4 +:1024700070A82000202020F820202000000000006C +:1024800060408000000000F8000000000000000034 +:10249000006060000008102040800000708898A84C +:1024A000C8887000206020202020700070880830CC +:1024B0004080F800F8081030088870001030509004 +:1024C000F8101000F880F00808887000384080F09C +:1024D00088887000F808102040404000708888709C +:1024E00088887000708888780810E00000606000BC +:1024F000606000000060600060608000102040802C +:10250000402010000000F800F800000040201008F3 +:102510001020400070881020200020007088B8A88B +:10252000B880780020508888F8888800F08888F083 +:102530008888F0007088808080887000F0888888A3 +:102540008888F000F88080F08080F800F88080F0C3 +:102550008080800070888080B8887800888888F8BB +:1025600088888800702020202020700038101010EB +:10257000109060008890A0C0A0908800808080802B +:102580008080F80088D8A8A8888888008888C8A88B +:10259000988888007088888888887000F08888F01B +:1025A0008080800070888888A8906800F08888F013 +:1025B000A09088007088807008887000F820202023 +:1025C00020202000888888888888700088888888EB +:1025D00088502000888888A8A8D88800888850203B +:1025E000508888008888502020202000F80810207B +:1025F0004080F800F0C0C0C0C0C0F00000804020A3 +:102600001008000078181818181878002070A820F2 +:1026100020202000002040F840200000201008006A +:10262000000000000000E010709068008080B0C8DA +:1026300088C8B00000007088808070000808689822 +:102640008898680000007088F0807000304840F082 +:102650004040400000007088887808F08080B0C852 +:1026600088888800200000202020200010000030F2 +:1026700010101060808090A0C0A0980060202020E2 +:1026800020207000000050A8A8A8A8000000B048B2 +:102690004848480000007088888870000000F08872 +:1026A00088F0808000007888887808080000B048AA +:1026B00040404000000078807008F0004040F84042 +:1026C000404830000000909090906800000088889A +:1026D000885020000000A8A8A8A85000000088503A +:1026E0002050880000008888986808F00000F810E2 +:1026F0002040F80020404080404020002020200062 +:10270000202020002010100810102000000040A8F9 +:1027100010000000000000000000000000000000A9 +:10272000001010101010000010000000006C48484D +:102730000000000000000000001414287C287C2801 +:102740005050000000103840403848701010000011 +:10275000002050200C700814080000000000001831 +:102760002020544834000000001010101000000019 +:1027700000000000000808101010101010080800D9 +:1027800000202010101010101020200000107C10CD +:1027900028280000000000000000101010FC10109D +:1027A00010000000000000000000001810302000A1 +:1027B00000000000007C000000000000000000009D +:1027C0000000003030000000000404080810102051 +:1027D0002040000000384444444444443800000091 +:1027E00000301010101010107C000000003844045D +:1027F000081020447C0000000038440418040444FD +:1028000038000000000C141424447C040C00000068 +:10281000003C20203804044438000000001C204004 +:102820007844444438000000007C44040808081040 +:10283000100000000038444438444444380000008C +:1028400000384444443C040870000000000000309C +:1028500030000030300000000000001818000018A0 +:102860003020000000000C10608060100C000000A0 +:10287000000000007C007C00000000000000C02080 +:1028800018041820C00000000000182404081000DC +:10289000300000003844444C54544C40443800004C +:1028A0000030102828287C44EC00000000F8444444 +:1028B00078444444F8000000003C44404040404418 +:1028C0003800000000F0484444444448F000000050 +:1028D00000FC445070504044FC000000007C202864 +:1028E0003828202070000000003C4440404C444404 +:1028F0003800000000EC44447C444444EC000000F8 +:10290000007C1010101010107C000000003C080823 +:10291000084848483000000000EC444850704844E3 +:10292000E400000000702020202024247C0000000F +:1029300000EC6C6C54544444EC00000000EC646403 +:102940005454544CEC000000003844444444444483 +:102950003800000000782424243820207000000073 +:102960000038444444444444381C000000F84444C3 +:1029700044784844E000000000344C4038040464CB +:102980005800000000FC90101010101038000000DB +:1029900000EC4444444444443800000000EC444407 +:1029A000282828101000000000EC444454545454CB +:1029B0002800000000C4442810102844C40000006F +:1029C00000EC44282810101038000000007C440857 +:1029D000101020447C0000000038202020202020FF +:1029E0002020380000402020201010080808000097 +:1029F00000380808080808080808380000101028DF +:102A00004400000000000000000000000000000082 +:102A1000000000FC001008000000000000000000A2 +:102A200000000038443C44443C00000000C04058D2 +:102A300064444444F80000000000003C444040442A +:102A400038000000000C04344C4444443C000000B6 +:102A500000000038447C40403C000000001C207C0A +:102A6000202020207C000000000000344C4444441E +:102A70003C04380000C0405864444444EC0000006A +:102A800000100070101010107C0000000010007882 +:102A9000080808080808700000C0405C48705048EA +:102AA000DC00000000301010101010107C0000003E +:102AB000000000E854545454FC000000000000D80A +:102AC00064444444EC0000000000003844444444A2 +:102AD00038000000000000D8644444447840E0001E +:102AE000000000344C4444443C040C000000006CE2 +:102AF000302020207C0000000000003C44380444CA +:102B0000780000000000207C202020201C00000015 +:102B1000000000CC4444444C34000000000000ECB1 +:102B20004444282810000000000000EC4454545491 +:102B300028000000000000CC48303048CC000000E5 +:102B4000000000EC44242818101078000000007CDD +:102B5000481020447C0000000008101010102010C5 +:102B600010100800001010101010101010100000AD +:102B7000002010101010081010102000000000009D +:102B800000245800000000000000000000000000C9 +:102B90000000000000000000000000183C3C3C1851 +:102BA0001818001818000000006666666624000009 +:102BB0000000000000000000000000006C6CFE6CD3 +:102BC0006C6CFE6C6C0000001818187CC6C2C07CCF +:102BD0000686C67C181800000000000000C2C60C63 +:102BE000183060C686000000000000386C6C387633 +:102BF000DCCCCCCC760000000030303030600000FF +:102C000000000000000000000000000C1830303010 +:102C1000303030180C00000000000030180C0C0C94 +:102C20000C0C0C1830000000000000000000663C96 +:102C3000FF3C6600000000000000000000001818C3 +:102C40007E181800000000000000000000000000D6 +:102C500000001818183000000000000000000000FC +:102C6000FE00000000000000000000000000000066 +:102C70000000001818000000000000000002060C10 +:102C8000183060C0800000000000007CC6C6CED6B0 +:102C9000D6E6C6C67C000000000000183878181878 +:102CA000181818187E0000000000007CC6060C18DA +:102CB0003060C0C6FE0000000000007CC606063C76 +:102CC000060606C67C0000000000000C1C3C6CCC14 +:102CD000FE0C0C0C1E000000000000FEC0C0C0FC7A +:102CE0000E0606C67C0000000000003860C0C0FC74 +:102CF000C6C6C6C67C000000000000FEC606060C64 +:102D000018303030300000000000007CC6C6C67CA1 +:102D1000C6C6C6C67C0000000000007CC6C6C67ED3 +:102D20000606060C780000000000000000181800DD +:102D30000000181800000000000000000018180033 +:102D4000000018183000000000000000060C1830C9 +:102D50006030180C0600000000000000000000FEBB +:102D60000000FE0000000000000000006030180CB1 +:102D7000060C1830600000000000007CC6C60C186D +:102D80001818001818000000000000007CC6C6DEFD +:102D9000DEDEDCC07C00000000000010386CC6C61F +:102DA000FEC6C6C6C6000000000000FC6666667C63 +:102DB00066666666FC0000000000003C66C2C0C09B +:102DC000C0C0C2663C000000000000F86C66666689 +:102DD0006666666CF8000000000000FE66626878B7 +:102DE00068606266FE000000000000FE66626878AF +:102DF00068606060F00000000000003C66C2C0C077 +:102E0000DEC6C6663A000000000000C6C6C6C6FEA2 +:102E1000C6C6C6C6C60000000000003C1818181838 +:102E2000181818183C0000000000001E0C0C0C0CB8 +:102E30000CCCCCCC78000000000000E6666C6C780E +:102E4000786C6666E6000000000000F0606060607C +:102E500060606266FE000000000000C6EEFEFED666 +:102E6000C6C6C6C6C6000000000000C6E6F6FEDE06 +:102E7000CEC6C6C6C6000000000000386CC6C6C676 +:102E8000C6C6C66C38000000000000FC6666667CA2 +:102E900060606060F00000000000007CC6C6C6C62E +:102EA000C6C6D6DE7C0C0E00000000FC6666667CA2 +:102EB0006C666666E60000000000007CC6C66038EE +:102EC0000C06C6C67C0000000000007E7E5A181862 +:102ED000181818183C000000000000C6C6C6C6C678 +:102EE000C6C6C6C67C000000000000C6C6C6C6C670 +:102EF000C6C66C3810000000000000C6C6C6C6C6B4 +:102F0000D6D6FE6C6C000000000000C6C66C6C38A3 +:102F1000386C6CC6C6000000000000666666663C41 +:102F2000181818183C000000000000FEC6860C1897 +:102F30003060C2C6FE0000000000003C303030307F +:102F4000303030303C0000000000000080C0E070F5 +:102F5000381C0E06020000000000003C0C0C0C0C9B +:102F60000C0C0C0C3C0000001038386CC600000043 +:102F70000000000000000000000000000000000051 +:102F8000000000000000FF0030303018000000009A +:102F90000000000000000000000000000000780CAD +:102FA0007CCCCCCC76000000000000E06060786C47 +:102FB00066666666DC0000000000000000007CC65B +:102FC000C0C0C0C67C0000000000001C0C0C3C6CA3 +:102FD000CCCCCCCC760000000000000000007CC609 +:102FE000FEC0C0C67C000000000000386C6460F0C9 +:102FF00060606060F000000000000000000076CC1F +:10300000CCCCCCCC7C0CCC78000000E060606C7642 +:1030100066666666E60000000000001818003818B2 +:10302000181818183C0000000000000606000E06E4 +:10303000060606060666663C000000E06060666CF8 +:1030400078786C66E6000000000000381818181840 +:10305000181818183C000000000000000000ECFEEA +:10306000D6D6D6D6D6000000000000000000DC66F0 +:1030700066666666660000000000000000007CC610 +:10308000C6C6C6C67C000000000000000000DC666A +:10309000666666667C6060F000000000000076CC2A +:1030A000CCCCCCCC7C0C0C1E000000000000DC76EC +:1030B00062606060F00000000000000000007CC65C +:1030C00060380CC67C000000000000103030FC307E +:1030D000303030361C000000000000000000CCCC76 +:1030E000CCCCCCCC7600000000000000000066666E +:1030F0006666663C18000000000000000000C6C6BE +:10310000C6D6D6FE6C000000000000000000C66CB1 +:103110003838386CC6000000000000000000C6C649 +:10312000C6C6C6C67E060CF8000000000000FECC35 +:10313000183060C6FE0000000000000E181818705D +:10314000181818180E0000000000001818181800B1 +:103150001818181818000000000000701818180E31 +:10316000181818187000000000000076DC0000003D +:103170000000000000000000E8BF94E59B9E0A00EC +:103180004261636B0A496E7075740A42757A7A659A +:10319000720A4F4C45440A4175746F0A5479706540 +:1031A0000A4C616E67756167650A41626F757400EC +:1031B000D031000800000020440000002801000871 +:1031C00014320008440000206C0F00004401000885 +:1031D0000100000010000000000000000024F400C6 +:1031E00000000000000000000000000000000000DF +:1031F00000000000000000000000000000000000CF +:103200000000000080310008783100080000000054 +:0432100000000000BA :04000005080000ED02 :00000001FF diff --git a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.htm b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.htm index 6888627..462ff49 100644 --- a/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.htm +++ b/f103c8t6_keil/MDK-ARM/f103c8t6_KEIL/f103c8t6_KEIL.htm @@ -3,7 +3,7 @@ Static Call Graph - [f103c8t6_KEIL\f103c8t6_KEIL.axf]

Static Call Graph for image f103c8t6_KEIL\f103c8t6_KEIL.axf


-

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Thu Apr 28 16:19:29 2022 +

#<CALLGRAPH># ARM Linker, 5060960: Last Updated: Sat Apr 30 18:42:56 2022

Maximum Stack Usage = 216 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)

Call chain for Maximum Stack Depth:

@@ -12,1213 +12,1148 @@ __rt_entry_main ⇒ main ⇒ mymain ⇒ OLED_Cache_to_hardware ⇒ O

Functions with no stack information

Mutually Recursive functions -

  • ADC1_2_IRQHandler   ⇒   ADC1_2_IRQHandler
    -
  • BusFault_Handler   ⇒   BusFault_Handler
    -
  • HardFault_Handler   ⇒   HardFault_Handler
    -
  • MemManage_Handler   ⇒   MemManage_Handler
    -
  • NMI_Handler   ⇒   NMI_Handler
    -
  • UsageFault_Handler   ⇒   UsageFault_Handler
    +
  • ADC1_2_IRQHandler   ⇒   ADC1_2_IRQHandler
    +
  • BusFault_Handler   ⇒   BusFault_Handler
    +
  • HardFault_Handler   ⇒   HardFault_Handler
    +
  • MemManage_Handler   ⇒   MemManage_Handler
    +
  • NMI_Handler   ⇒   NMI_Handler
    +
  • UsageFault_Handler   ⇒   UsageFault_Handler

    Function Pointers

      -
    • ADC1_2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • BusFault_Handler from stm32f1xx_it.o(i.BusFault_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • CAN1_RX1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • CAN1_SCE_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel4_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel5_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel6_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DMA1_Channel7_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • DebugMon_Handler from stm32f1xx_it.o(i.DebugMon_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI0_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI15_10_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI4_IRQHandler from stm32f1xx_it.o(i.EXTI4_IRQHandler) referenced from startup_stm32f103xb.o(RESET) -
    • EXTI9_5_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • FLASH_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • HardFault_Handler from stm32f1xx_it.o(i.HardFault_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • I2C1_ER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • I2C1_EV_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • I2C2_ER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • I2C2_EV_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • MemManage_Handler from stm32f1xx_it.o(i.MemManage_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • NMI_Handler from stm32f1xx_it.o(i.NMI_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • PVD_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • PendSV_Handler from stm32f1xx_it.o(i.PendSV_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • RCC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • RTC_Alarm_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • RTC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • Reset_Handler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • SPI1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • SPI2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • SVC_Handler from stm32f1xx_it.o(i.SVC_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • SysTick_Handler from stm32f1xx_it.o(i.SysTick_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • SystemInit from system_stm32f1xx.o(i.SystemInit) referenced from startup_stm32f103xb.o(.text) -
    • TAMPER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM1_BRK_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM1_CC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM1_TRG_COM_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM1_UP_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM2_IRQHandler from stm32f1xx_it.o(i.TIM2_IRQHandler) referenced from startup_stm32f103xb.o(RESET) -
    • TIM3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • TIM4_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USART1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USART2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USART3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USBWakeUp_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USB_HP_CAN1_TX_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • USB_LP_CAN1_RX0_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • UsageFault_Handler from stm32f1xx_it.o(i.UsageFault_Handler) referenced from startup_stm32f103xb.o(RESET) -
    • WWDG_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) -
    • __main from __main.o(!!!main) referenced from startup_stm32f103xb.o(.text) -
    • _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text) -
    • _sputc from _sputc.o(.text) referenced from noretval__2sprintf.o(.text) +
    • ADC1_2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • BusFault_Handler from stm32f1xx_it.o(i.BusFault_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • CAN1_RX1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • CAN1_SCE_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel4_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel5_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel6_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DMA1_Channel7_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • DebugMon_Handler from stm32f1xx_it.o(i.DebugMon_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI0_IRQHandler from stm32f1xx_it.o(i.EXTI0_IRQHandler) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI15_10_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI1_IRQHandler from stm32f1xx_it.o(i.EXTI1_IRQHandler) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI4_IRQHandler from stm32f1xx_it.o(i.EXTI4_IRQHandler) referenced from startup_stm32f103xb.o(RESET) +
    • EXTI9_5_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • FLASH_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • HardFault_Handler from stm32f1xx_it.o(i.HardFault_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • I2C1_ER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • I2C1_EV_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • I2C2_ER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • I2C2_EV_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • MemManage_Handler from stm32f1xx_it.o(i.MemManage_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • NMI_Handler from stm32f1xx_it.o(i.NMI_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • PVD_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • PendSV_Handler from stm32f1xx_it.o(i.PendSV_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • RCC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • RTC_Alarm_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • RTC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • Reset_Handler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • SPI1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • SPI2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • SVC_Handler from stm32f1xx_it.o(i.SVC_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • SysTick_Handler from stm32f1xx_it.o(i.SysTick_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • SystemInit from system_stm32f1xx.o(i.SystemInit) referenced from startup_stm32f103xb.o(.text) +
    • TAMPER_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • TIM1_BRK_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • TIM1_CC_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • TIM1_TRG_COM_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • TIM1_UP_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • TIM2_IRQHandler from stm32f1xx_it.o(i.TIM2_IRQHandler) referenced from startup_stm32f103xb.o(RESET) +
    • TIM3_IRQHandler from stm32f1xx_it.o(i.TIM3_IRQHandler) referenced from startup_stm32f103xb.o(RESET) +
    • TIM4_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USART1_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USART2_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USART3_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USBWakeUp_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USB_HP_CAN1_TX_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • USB_LP_CAN1_RX0_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • UsageFault_Handler from stm32f1xx_it.o(i.UsageFault_Handler) referenced from startup_stm32f103xb.o(RESET) +
    • WWDG_IRQHandler from startup_stm32f103xb.o(.text) referenced from startup_stm32f103xb.o(RESET) +
    • __main from __main.o(!!!main) referenced from startup_stm32f103xb.o(.text) +
    • _printf_input_char from _printf_char_common.o(.text) referenced from _printf_char_common.o(.text) +
    • _sputc from _sputc.o(.text) referenced from noretval__2sprintf.o(.text)

    Global Symbols

    -

    __main (Thumb, 8 bytes, Stack size 0 bytes, __main.o(!!!main)) -

    [Calls]