From b1ae9a5e492b06b49bc85b28b71b6cf198428c15 Mon Sep 17 00:00:00 2001 From: Ayzen Date: Mon, 9 Feb 2026 10:28:20 +0300 Subject: [PATCH] added AD9833 and DS1809 support --- AD7686.pdf | Bin 0 -> 512225 bytes DS1809.pdf | Bin 0 -> 139178 bytes For_stm32.ioc | 38 +- Inc/main.h | 28 +- Src/main.c | 482 +- Src/stm32f7xx_hal_msp.c | 75 +- Src/stm32f7xx_it.c | 26 + ad9833.pdf | Bin 0 -> 476260 bytes build/File_Handling.lst | 262 +- build/For_stm32.bin | Bin 46932 -> 48356 bytes build/For_stm32.elf | Bin 749540 -> 757124 bytes build/For_stm32.hex | 5331 ++--- build/For_stm32.map | 2210 +- build/diskio.lst | 52 +- build/fatfs.lst | 34 +- build/ff.lst | 1070 +- build/ff_gen_drv.lst | 48 +- build/main.lst | 42277 ++++++++++++++++++---------------- build/main.o | Bin 162152 -> 175860 bytes build/sd_diskio.lst | 66 +- build/stm32f7xx_hal_msp.lst | 2167 +- build/stm32f7xx_hal_msp.o | Bin 32180 -> 32612 bytes build/stm32f7xx_it.lst | 3455 +-- build/stm32f7xx_it.o | Bin 28476 -> 28808 bytes build/syscall.lst | 4 +- 25 files changed, 30112 insertions(+), 27513 deletions(-) create mode 100644 AD7686.pdf create mode 100644 DS1809.pdf create mode 100644 ad9833.pdf diff --git a/AD7686.pdf b/AD7686.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9f6ae5a42bf3a6b32f236e3d933ed32ed4c48829 GIT binary patch literal 512225 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

AMtIBKu<%W?nAVtP%S3@@b0cDHG%OfD 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

i+9r3^q$_N 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 z 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

VTl0IFcP371AAo61zV=plsE6P0RmND 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

-ik7?E*i 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 CCR3 = (TIM4 -> ARR +1)/2 - 1; - //Mach-Zander clock (should be 1/4 of ADC clock freq) - - TIM11 -> ARR = (TIM4 -> ARR +1)*4 - 1; - TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + //Mach-Zander clock (should be 1/4 of ADC clock freq) + + TIM11 -> ARR = (TIM4 -> ARR +1)*4 - 1; + TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + + // AD9833 MCLK output on PE9 (TIM1_CH1) + // TIM1 clock = 184 MHz, ARR=8 -> ~20.44 MHz output + HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1); /* if (HAL_GPIO_ReadPin(INP_0_GPIO_Port, INP_0_Pin) == 0){ @@ -468,7 +487,7 @@ int main(void) CPU_state_old = WORK_ENABLE;//Save main current cycle } break; - case AD9102_CMD://10 - Configure AD9102 sawtooth output + case AD9102_CMD://10 - Configure AD9102 sawtooth output if (CalculateChecksum(COMMAND, AD9102_CMD_WORDS - 1) == COMMAND[AD9102_CMD_WORDS - 1]) { uint16_t flags = COMMAND[0]; @@ -480,9 +499,25 @@ int main(void) if (sram_mode) { - uint16_t samples = param0; - uint8_t hold = (uint8_t)(param1 & 0x0Fu); - uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle); + uint8_t sram_fmt = (flags & AD9102_FLAG_SRAM_FMT) ? 1u : 0u; + uint16_t samples; + uint8_t hold; + uint16_t amplitude; + + if (sram_fmt) + { + amplitude = param0; + samples = param1; + hold = AD9102_SRAM_HOLD_DEFAULT; + } + else + { + samples = param0; + hold = (uint8_t)(param1 & 0x0Fu); + amplitude = AD9102_SRAM_AMP_DEFAULT; + } + + uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle, amplitude); State_Data[1] = (uint8_t)(pat_status & 0x00FFu); if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) { @@ -530,9 +565,70 @@ int main(void) { State_Data[0] |= UART_DECODE_ERR; } - UART_transmission_request = MESS_01; - CPU_state = CPU_state_old; - break; + UART_transmission_request = MESS_01; + CPU_state = CPU_state_old; + break; + case AD9833_CMD://11 - Configure AD9833 triangle output + State_Data[1] = 0u; + if (CalculateChecksum(COMMAND, AD9833_CMD_WORDS - 1) == COMMAND[AD9833_CMD_WORDS - 1]) + { + uint16_t flags = COMMAND[0]; + uint16_t lsw = (uint16_t)(COMMAND[1] & 0x3FFFu); + uint16_t msw = (uint16_t)(COMMAND[2] & 0x3FFFu); + uint8_t enable = (flags & AD9833_FLAG_ENABLE) ? 1u : 0u; + uint8_t triangle = (flags & AD9833_FLAG_TRIANGLE) ? 1u : 0u; + uint32_t freq_word = ((uint32_t)msw << 14) | (uint32_t)lsw; + + AD9833_Apply(enable, triangle, freq_word); + } + else + { + State_Data[0] |= UART_DECODE_ERR; + } + UART_transmission_request = MESS_01; + CPU_state = CPU_state_old; + break; + case DS1809_CMD://12 - Pulse DS1809 UC/DC controls + if (CalculateChecksum(COMMAND, DS1809_CMD_WORDS - 1) == COMMAND[DS1809_CMD_WORDS - 1]) + { + uint16_t flags = COMMAND[0]; + uint16_t count = COMMAND[1]; + uint16_t pulse_ms = COMMAND[2]; + uint8_t uc = (flags & DS1809_FLAG_UC) ? 1u : 0u; + uint8_t dc = (flags & DS1809_FLAG_DC) ? 1u : 0u; + + if (uc && dc) + { + State_Data[0] |= UART_DECODE_ERR; + } + else + { + if (count == 0u) + { + count = 1u; + } + if (count > 64u) + { + count = 64u; + } + if (pulse_ms == 0u) + { + pulse_ms = DS1809_PULSE_MS_DEFAULT; + } + if (pulse_ms > 500u) + { + pulse_ms = 500u; + } + DS1809_Pulse(uc, dc, count, pulse_ms); + } + } + else + { + State_Data[0] |= UART_DECODE_ERR; + } + UART_transmission_request = MESS_01; + CPU_state = CPU_state_old; + break; case DECODE_TASK: if (CheckChecksum(COMMAND)) { @@ -1703,7 +1799,7 @@ static void MX_TIM10_Init(void) * @param None * @retval None */ -static void MX_TIM11_Init(void) +static void MX_TIM11_Init(void) { /* USER CODE BEGIN TIM11_Init 0 */ @@ -1740,9 +1836,78 @@ static void MX_TIM11_Init(void) /* USER CODE BEGIN TIM11_Init 2 */ /* USER CODE END TIM11_Init 2 */ - HAL_TIM_MspPostInit(&htim11); - -} + HAL_TIM_MspPostInit(&htim11); + +} + +/** + * @brief TIM1 Initialization Function + * @param None + * @retval None + */ +static void MX_TIM1_Init(void) +{ + + /* USER CODE BEGIN TIM1_Init 0 */ + + /* USER CODE END TIM1_Init 0 */ + + TIM_ClockConfigTypeDef sClockSourceConfig = {0}; + TIM_OC_InitTypeDef sConfigOC = {0}; + TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; + + /* USER CODE BEGIN TIM1_Init 1 */ + + /* USER CODE END TIM1_Init 1 */ + htim1.Instance = TIM1; + htim1.Init.Prescaler = 0; + htim1.Init.CounterMode = TIM_COUNTERMODE_UP; + htim1.Init.Period = 8; + htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + htim1.Init.RepetitionCounter = 0; + htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + if (HAL_TIM_Base_Init(&htim1) != HAL_OK) + { + Error_Handler(); + } + sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; + if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK) + { + Error_Handler(); + } + if (HAL_TIM_PWM_Init(&htim1) != HAL_OK) + { + Error_Handler(); + } + sConfigOC.OCMode = TIM_OCMODE_PWM1; + sConfigOC.Pulse = 4; + sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + { + Error_Handler(); + } + sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE; + sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; + sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; + sBreakDeadTimeConfig.DeadTime = 0; + sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; + sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; + sBreakDeadTimeConfig.BreakFilter = 0; + sBreakDeadTimeConfig.Break2State = TIM_BREAK2_DISABLE; + sBreakDeadTimeConfig.Break2Polarity = TIM_BREAK2POLARITY_HIGH; + sBreakDeadTimeConfig.Break2Filter = 0; + sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; + if (HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig) != HAL_OK) + { + Error_Handler(); + } + /* USER CODE BEGIN TIM1_Init 2 */ + + /* USER CODE END TIM1_Init 2 */ + HAL_TIM_MspPostInit(&htim1); + +} /** * @brief UART8 Initialization Function @@ -1924,22 +2089,25 @@ static void MX_GPIO_Init(void) /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET); - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(GPIOE, ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(GPIOE, ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); + HAL_GPIO_WritePin(GPIOE, DS1809_UC_Pin|DS1809_DC_Pin, GPIO_PIN_SET); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(GPIOB, REF0_EN_Pin|TEC1_PD_Pin|OUT_6_Pin - |OUT_7_Pin|OUT_8_Pin|OUT_9_Pin, GPIO_PIN_RESET); + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(GPIOB, REF0_EN_Pin|TEC1_PD_Pin|OUT_6_Pin + |OUT_7_Pin|OUT_8_Pin|OUT_9_Pin, GPIO_PIN_RESET); + + /*Configure GPIO pin Output Level */ + HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); - - /*Configure GPIO pin Output Level */ - HAL_GPIO_WritePin(GPIOD, LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7, GPIO_PIN_RESET); - HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(GPIOD, LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7, GPIO_PIN_RESET); + HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_SET); /*Configure GPIO pin Output Level */ HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9|OUT_0_Pin|OUT_1_Pin|OUT_2_Pin @@ -1987,12 +2155,19 @@ static void MX_GPIO_Init(void) GPIO_InitStruct.Pull = GPIO_NOPULL; HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); - /*Configure GPIO pins : ADC_MPD1_CS_Pin ADC_ThrLD1_CS_Pin */ - GPIO_InitStruct.Pin = ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + /*Configure GPIO pins : ADC_MPD1_CS_Pin ADC_ThrLD1_CS_Pin */ + GPIO_InitStruct.Pin = ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + + /*Configure GPIO pins : DS1809_UC_Pin DS1809_DC_Pin */ + GPIO_InitStruct.Pin = DS1809_UC_Pin|DS1809_DC_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); /*Configure GPIO pin : SPI4_CNV_Pin */ GPIO_InitStruct.Pin = SPI4_CNV_Pin; @@ -2001,21 +2176,21 @@ static void MX_GPIO_Init(void) GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; HAL_GPIO_Init(SPI4_CNV_GPIO_Port, &GPIO_InitStruct); - /*Configure GPIO pins : REF0_EN_Pin TEC1_PD_Pin DAC_TEC1_CS_Pin - OUT_6_Pin OUT_7_Pin OUT_8_Pin OUT_9_Pin */ - GPIO_InitStruct.Pin = REF0_EN_Pin|TEC1_PD_Pin|DAC_TEC1_CS_Pin - |OUT_6_Pin|OUT_7_Pin|OUT_8_Pin|OUT_9_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - - /*Configure GPIO pins : LD1_EN_Pin TEST_01_Pin PD7 AD9102_TRIG_Pin */ - GPIO_InitStruct.Pin = LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7|AD9102_TRIG_Pin; - GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; - GPIO_InitStruct.Pull = GPIO_NOPULL; - GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); + /*Configure GPIO pins : REF0_EN_Pin TEC1_PD_Pin AD9102_CS_Pin + OUT_6_Pin OUT_7_Pin OUT_8_Pin OUT_9_Pin */ + GPIO_InitStruct.Pin = REF0_EN_Pin|TEC1_PD_Pin|AD9102_CS_Pin + |OUT_6_Pin|OUT_7_Pin|OUT_8_Pin|OUT_9_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + + /*Configure GPIO pins : LD1_EN_Pin TEST_01_Pin PD7 AD9102_TRIG_Pin DAC_TEC1_CS_Pin AD9833_CS_Pin */ + GPIO_InitStruct.Pin = LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7|AD9102_TRIG_Pin|DAC_TEC1_CS_Pin|AD9833_CS_Pin; + GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); /*Configure GPIO pin : USB_FLAG_Pin */ GPIO_InitStruct.Pin = USB_FLAG_Pin; @@ -2448,24 +2623,114 @@ void OUT_trigger(uint8_t out_n) } } -static void AD9102_Init(void) -{ - HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); - HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); +static void AD9102_Init(void) +{ + HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); for (volatile uint32_t d = 0; d < 1000; d++) {} HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); AD9102_WriteRegTable(ad9102_example4_regval, AD9102_REG_COUNT); AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -} - + HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +} + +static void SPI2_SetMode(uint32_t polarity, uint32_t phase) +{ + if (LL_SPI_IsEnabled(SPI2)) + { + LL_SPI_Disable(SPI2); + } + LL_SPI_SetClockPolarity(SPI2, polarity); + LL_SPI_SetClockPhase(SPI2, phase); + if (!LL_SPI_IsEnabled(SPI2)) + { + LL_SPI_Enable(SPI2); + } +} + +static void AD9833_WriteWord(uint16_t word) +{ + uint32_t tmp32 = 0; + + SPI2_SetMode(LL_SPI_POLARITY_HIGH, LL_SPI_PHASE_1EDGE); + + HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + + HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_RESET); + + while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} + LL_SPI_TransmitData16(SPI2, word); + tmp32 = 0; + while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + (void) SPI2->DR; + + HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_SET); +} + +static void AD9833_Apply(uint8_t enable, uint8_t triangle, uint32_t freq_word) +{ + uint16_t control = 0x2000u; // B28 = 1 + if (triangle) + { + control |= 0x0002u; // MODE = 1 (triangle) + } + control |= 0x0100u; // RESET = 1 while updating + + freq_word &= 0x0FFFFFFFu; + uint16_t lsw = (uint16_t)(0x4000u | (freq_word & 0x3FFFu)); // FREQ0 LSB + uint16_t msw = (uint16_t)(0x4000u | ((freq_word >> 14) & 0x3FFFu)); // FREQ0 MSB + + AD9833_WriteWord(control); + AD9833_WriteWord(lsw); + AD9833_WriteWord(msw); + AD9833_WriteWord(0xC000u); // PHASE0 = 0 + + if (enable) + { + control &= (uint16_t)(~0x0100u); + } + AD9833_WriteWord(control); +} + +static void DS1809_Pulse(uint8_t uc, uint8_t dc, uint16_t count, uint16_t pulse_ms) +{ + for (uint16_t i = 0; i < count; i++) + { + if (uc) + { + HAL_GPIO_WritePin(DS1809_UC_GPIO_Port, DS1809_UC_Pin, GPIO_PIN_RESET); + } + if (dc) + { + HAL_GPIO_WritePin(DS1809_DC_GPIO_Port, DS1809_DC_Pin, GPIO_PIN_RESET); + } + HAL_Delay(pulse_ms); + if (uc) + { + HAL_GPIO_WritePin(DS1809_UC_GPIO_Port, DS1809_UC_Pin, GPIO_PIN_SET); + } + if (dc) + { + HAL_GPIO_WritePin(DS1809_DC_GPIO_Port, DS1809_DC_Pin, GPIO_PIN_SET); + } + HAL_Delay(pulse_ms); + } +} + static void AD9102_WriteReg(uint16_t addr, uint16_t value) { uint32_t tmp32 = 0; uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address + SPI2_SetMode(LL_SPI_POLARITY_LOW, LL_SPI_PHASE_1EDGE); + + HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + if (!LL_SPI_IsEnabled(SPI2)) { LL_SPI_Enable(SPI2); @@ -2495,6 +2760,11 @@ static uint16_t AD9102_ReadReg(uint16_t addr) uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) uint16_t value; + SPI2_SetMode(LL_SPI_POLARITY_LOW, LL_SPI_PHASE_1EDGE); + + HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); + HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + if (!LL_SPI_IsEnabled(SPI2)) { LL_SPI_Enable(SPI2); @@ -2571,7 +2841,7 @@ static uint16_t AD9102_Apply(uint8_t saw_type, uint8_t enable, uint8_t saw_step, return AD9102_ReadReg(AD9102_REG_PAT_STATUS); } -static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) +static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle, uint16_t amplitude) { if (samples < 2u) { @@ -2581,6 +2851,10 @@ static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) { samples = AD9102_SRAM_MAX_SAMPLES; } + if (amplitude > AD9102_SRAM_AMP_DEFAULT) + { + amplitude = AD9102_SRAM_AMP_DEFAULT; + } // Enable SRAM access. AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0004u); @@ -2588,6 +2862,9 @@ static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) for (uint16_t i = 0; i < samples; i++) { int32_t value; + int32_t min_val = -(int32_t)amplitude; + int32_t max_val = (int32_t)amplitude; + int32_t span = max_val - min_val; if (triangle) { uint16_t half = samples / 2u; @@ -2598,22 +2875,40 @@ static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) if (i < half) { uint16_t denom = (half > 1u) ? (uint16_t)(half - 1u) : 1u; - value = AD9102_SRAM_RAMP_MIN + - ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; + if (span == 0) + { + value = 0; + } + else + { + value = min_val + (span * (int32_t)i) / (int32_t)denom; + } } else { uint16_t tail = (uint16_t)(samples - half); uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; - value = AD9102_SRAM_RAMP_MAX - - ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)(i - half)) / (int32_t)denom; + if (span == 0) + { + value = 0; + } + else + { + value = max_val - (span * (int32_t)(i - half)) / (int32_t)denom; + } } } else { uint16_t denom = (samples > 1u) ? (uint16_t)(samples - 1u) : 1u; - value = AD9102_SRAM_RAMP_MIN + - ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; + if (span == 0) + { + value = 0; + } + else + { + value = min_val + (span * (int32_t)i) / (int32_t)denom; + } } if (value < -8192) @@ -2634,7 +2929,7 @@ static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); } -static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle) +static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle, uint16_t amplitude) { if (samples == 0u) { @@ -2657,6 +2952,11 @@ static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, hold = 0x0Fu; } + if (amplitude > AD9102_SRAM_AMP_DEFAULT) + { + amplitude = AD9102_SRAM_AMP_DEFAULT; + } + uint16_t pat_timebase = (uint16_t)(((uint16_t)(hold & 0x0Fu) << 8) | ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | (AD9102_SRAM_START_DELAY_BASE_DEFAULT & 0x0Fu)); @@ -2683,7 +2983,7 @@ static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, AD9102_WriteReg(AD9102_REG_STOP_ADDR, (uint16_t)((samples - 1u) << 4)); AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - AD9102_LoadSramRamp(samples, triangle); + AD9102_LoadSramRamp(samples, triangle, amplitude); if (enable) { @@ -2880,20 +3180,18 @@ static uint8_t AD9102_CheckFlagsSram(uint16_t pat_status, uint8_t expect_run, ui return (ok ? 0u : 1u); } -void Set_LTEC(uint8_t num, uint16_t DATA) -{ - uint32_t tmp32; - -#if AD9102_ON_SPI2 - // AD9102 occupies SPI2; skip LD1/TEC1 writes to avoid CS conflicts. - if (num == 1 || num == 3) - { - return; - } -#endif - - switch (num) - { +void Set_LTEC(uint8_t num, uint16_t DATA) +{ + uint32_t tmp32; + + if (num == 1 || num == 3) + { + SPI2_SetMode(LL_SPI_POLARITY_HIGH, LL_SPI_PHASE_2EDGE); + HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + } + + switch (num) + { case 1: HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_RESET);//Start operation with LDAC1 //tmp32=0; diff --git a/Src/stm32f7xx_hal_msp.c b/Src/stm32f7xx_hal_msp.c index 57ccd69..27ce150 100644 --- a/Src/stm32f7xx_hal_msp.c +++ b/Src/stm32f7xx_hal_msp.c @@ -332,8 +332,8 @@ void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd) */ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) { - if(htim_base->Instance==TIM4) - { + if(htim_base->Instance==TIM4) + { /* USER CODE BEGIN TIM4_MspInit 0 */ /* USER CODE END TIM4_MspInit 0 */ @@ -341,10 +341,21 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) __HAL_RCC_TIM4_CLK_ENABLE(); /* USER CODE BEGIN TIM4_MspInit 1 */ - /* USER CODE END TIM4_MspInit 1 */ - } - else if(htim_base->Instance==TIM8) - { + /* USER CODE END TIM4_MspInit 1 */ + } + else if(htim_base->Instance==TIM1) + { + /* USER CODE BEGIN TIM1_MspInit 0 */ + + /* USER CODE END TIM1_MspInit 0 */ + /* Peripheral clock enable */ + __HAL_RCC_TIM1_CLK_ENABLE(); + /* USER CODE BEGIN TIM1_MspInit 1 */ + + /* USER CODE END TIM1_MspInit 1 */ + } + else if(htim_base->Instance==TIM8) + { /* USER CODE BEGIN TIM8_MspInit 0 */ /* USER CODE END TIM8_MspInit 0 */ @@ -391,8 +402,8 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base) void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) { GPIO_InitTypeDef GPIO_InitStruct = {0}; - if(htim->Instance==TIM4) - { + if(htim->Instance==TIM4) + { /* USER CODE BEGIN TIM4_MspPostInit 0 */ /* USER CODE END TIM4_MspPostInit 0 */ @@ -409,10 +420,31 @@ void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) /* USER CODE BEGIN TIM4_MspPostInit 1 */ - /* USER CODE END TIM4_MspPostInit 1 */ - } - else if(htim->Instance==TIM11) - { + /* USER CODE END TIM4_MspPostInit 1 */ + } + else if(htim->Instance==TIM1) + { + /* USER CODE BEGIN TIM1_MspPostInit 0 */ + + /* USER CODE END TIM1_MspPostInit 0 */ + + __HAL_RCC_GPIOE_CLK_ENABLE(); + /**TIM1 GPIO Configuration + PE9 ------> TIM1_CH1 + */ + GPIO_InitStruct.Pin = GPIO_PIN_9; + GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + GPIO_InitStruct.Pull = GPIO_NOPULL; + GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + GPIO_InitStruct.Alternate = GPIO_AF1_TIM1; + HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + + /* USER CODE BEGIN TIM1_MspPostInit 1 */ + + /* USER CODE END TIM1_MspPostInit 1 */ + } + else if(htim->Instance==TIM11) + { /* USER CODE BEGIN TIM11_MspPostInit 0 */ /* USER CODE END TIM11_MspPostInit 0 */ @@ -451,10 +483,21 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) __HAL_RCC_TIM4_CLK_DISABLE(); /* USER CODE BEGIN TIM4_MspDeInit 1 */ - /* USER CODE END TIM4_MspDeInit 1 */ - } - else if(htim_base->Instance==TIM8) - { + /* USER CODE END TIM4_MspDeInit 1 */ + } + else if(htim_base->Instance==TIM1) + { + /* USER CODE BEGIN TIM1_MspDeInit 0 */ + + /* USER CODE END TIM1_MspDeInit 0 */ + /* Peripheral clock disable */ + __HAL_RCC_TIM1_CLK_DISABLE(); + /* USER CODE BEGIN TIM1_MspDeInit 1 */ + + /* USER CODE END TIM1_MspDeInit 1 */ + } + else if(htim_base->Instance==TIM8) + { /* USER CODE BEGIN TIM8_MspDeInit 0 */ /* USER CODE END TIM8_MspDeInit 0 */ diff --git a/Src/stm32f7xx_it.c b/Src/stm32f7xx_it.c index 265c0bd..3a7b5fc 100644 --- a/Src/stm32f7xx_it.c +++ b/Src/stm32f7xx_it.c @@ -481,6 +481,12 @@ void UART_RxCpltCallback(void) case AD9102_CMD_HEADER: // AD9102 command UART_rec_incr = 2;//timeout flag is still setting! break; + case AD9833_CMD_HEADER: // AD9833 command + UART_rec_incr = 2;//timeout flag is still setting! + break; + case DS1809_CMD_HEADER: // DS1809 UC/DC pulse command + UART_rec_incr = 2;//timeout flag is still setting! + break; default: //error decoding header UART_rec_incr = 0; flg_tmt = 0;//Reset the timeout flag @@ -503,6 +509,26 @@ void UART_RxCpltCallback(void) UART_rec_incr = 0; flg_tmt = 0;//Reset the timeout flag } + else if (UART_header == AD9833_CMD_HEADER) + { + if ((UART_rec_incr & 0x0001) > 0) + COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + else + COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + CPU_state = AD9833_CMD; + UART_rec_incr = 0; + flg_tmt = 0;//Reset the timeout flag + } + else if (UART_header == DS1809_CMD_HEADER) + { + if ((UART_rec_incr & 0x0001) > 0) + COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + else + COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + CPU_state = DS1809_CMD; + UART_rec_incr = 0; + flg_tmt = 0;//Reset the timeout flag + } else { if ((UART_rec_incr&0x0001)>0) diff --git a/ad9833.pdf b/ad9833.pdf new file mode 100644 index 0000000000000000000000000000000000000000..075f8cdcf73306224a142173c29bbb60707171e4 GIT binary patch literal 476260 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 z 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 z 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

(gypOQhK7%LM~o-enF+`N9<{r>bWDa&V%k3 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

XGI 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 Y&Ik(t5kG_" - ARM GAS /tmp/cczIN1cV.s page 58 + ARM GAS /tmp/cc6OCjXR.s page 58 DEFINED SYMBOLS *ABS*:00000000 File_Handling.c - /tmp/cczIN1cV.s:20 .text.Send_Uart:00000000 $t - /tmp/cczIN1cV.s:26 .text.Send_Uart:00000000 Send_Uart - /tmp/cczIN1cV.s:40 .text.Mount_SD:00000000 $t - /tmp/cczIN1cV.s:46 .text.Mount_SD:00000000 Mount_SD - /tmp/cczIN1cV.s:86 .text.Mount_SD:0000001c $d - /tmp/cczIN1cV.s:2175 .bss.fs:00000000 fs - /tmp/cczIN1cV.s:92 .text.Unmount_SD:00000000 $t - /tmp/cczIN1cV.s:98 .text.Unmount_SD:00000000 Unmount_SD - /tmp/cczIN1cV.s:138 .text.Unmount_SD:0000001c $d - /tmp/cczIN1cV.s:143 .rodata.Scan_SD.str1.4:00000000 $d - /tmp/cczIN1cV.s:156 .text.Scan_SD:00000000 $t - /tmp/cczIN1cV.s:162 .text.Scan_SD:00000000 Scan_SD - /tmp/cczIN1cV.s:344 .text.Scan_SD:000000b8 $d - /tmp/cczIN1cV.s:2161 .bss.fno:00000000 fno - /tmp/cczIN1cV.s:355 .rodata.Format_SD.str1.4:00000000 $d - /tmp/cczIN1cV.s:359 .text.Format_SD:00000000 $t - /tmp/cczIN1cV.s:365 .text.Format_SD:00000000 Format_SD - /tmp/cczIN1cV.s:485 .text.Format_SD:00000078 $d - /tmp/cczIN1cV.s:494 .text.Write_File:00000000 $t - /tmp/cczIN1cV.s:500 .text.Write_File:00000000 Write_File - /tmp/cczIN1cV.s:604 .text.Write_File:00000050 $d - /tmp/cczIN1cV.s:2168 .bss.fil:00000000 fil - /tmp/cczIN1cV.s:2147 .bss.bw:00000000 bw - /tmp/cczIN1cV.s:612 .text.Write_File_byte:00000000 $t - /tmp/cczIN1cV.s:618 .text.Write_File_byte:00000000 Write_File_byte - /tmp/cczIN1cV.s:721 .text.Write_File_byte:0000004c $d - /tmp/cczIN1cV.s:729 .rodata.Read_File.str1.4:00000000 $d - /tmp/cczIN1cV.s:745 .text.Read_File:00000000 $t - /tmp/cczIN1cV.s:751 .text.Read_File:00000000 Read_File - /tmp/cczIN1cV.s:976 .text.Read_File:000000e4 $d - /tmp/cczIN1cV.s:2154 .bss.br:00000000 br - /tmp/cczIN1cV.s:991 .rodata.Seek_Read_File.str1.4:00000000 $d - /tmp/cczIN1cV.s:995 .text.Seek_Read_File:00000000 $t - /tmp/cczIN1cV.s:1001 .text.Seek_Read_File:00000000 Seek_Read_File - /tmp/cczIN1cV.s:1271 .text.Seek_Read_File:0000011c $d - /tmp/cczIN1cV.s:1287 .text.Create_File:00000000 $t - /tmp/cczIN1cV.s:1293 .text.Create_File:00000000 Create_File - /tmp/cczIN1cV.s:1372 .text.Create_File:00000038 $d - /tmp/cczIN1cV.s:1379 .text.Update_File:00000000 $t - /tmp/cczIN1cV.s:1385 .text.Update_File:00000000 Update_File - /tmp/cczIN1cV.s:1489 .text.Update_File:00000050 $d - /tmp/cczIN1cV.s:1497 .rodata.Remove_File.str1.4:00000000 $d - /tmp/cczIN1cV.s:1507 .text.Remove_File:00000000 $t - /tmp/cczIN1cV.s:1513 .text.Remove_File:00000000 Remove_File - /tmp/cczIN1cV.s:1632 .text.Remove_File:00000070 $d - /tmp/cczIN1cV.s:1642 .rodata.Create_Dir.str1.4:00000000 $d - /tmp/cczIN1cV.s:1649 .text.Create_Dir:00000000 $t - /tmp/cczIN1cV.s:1655 .text.Create_Dir:00000000 Create_Dir - /tmp/cczIN1cV.s:1734 .text.Create_Dir:00000048 $d - /tmp/cczIN1cV.s:1742 .rodata.Check_SD_Space.str1.4:00000000 $d - /tmp/cczIN1cV.s:1752 .text.Check_SD_Space:00000000 $t - /tmp/cczIN1cV.s:1758 .text.Check_SD_Space:00000000 Check_SD_Space - /tmp/cczIN1cV.s:1870 .text.Check_SD_Space:00000094 $d - /tmp/cczIN1cV.s:2140 .bss.pfs:00000000 pfs - /tmp/cczIN1cV.s:2133 .bss.fre_clust:00000000 fre_clust - ARM GAS /tmp/cczIN1cV.s page 59 + /tmp/cc6OCjXR.s:20 .text.Send_Uart:00000000 $t + /tmp/cc6OCjXR.s:26 .text.Send_Uart:00000000 Send_Uart + /tmp/cc6OCjXR.s:40 .text.Mount_SD:00000000 $t + /tmp/cc6OCjXR.s:46 .text.Mount_SD:00000000 Mount_SD + /tmp/cc6OCjXR.s:86 .text.Mount_SD:0000001c $d + /tmp/cc6OCjXR.s:2175 .bss.fs:00000000 fs + /tmp/cc6OCjXR.s:92 .text.Unmount_SD:00000000 $t + /tmp/cc6OCjXR.s:98 .text.Unmount_SD:00000000 Unmount_SD + /tmp/cc6OCjXR.s:138 .text.Unmount_SD:0000001c $d + /tmp/cc6OCjXR.s:143 .rodata.Scan_SD.str1.4:00000000 $d + /tmp/cc6OCjXR.s:156 .text.Scan_SD:00000000 $t + /tmp/cc6OCjXR.s:162 .text.Scan_SD:00000000 Scan_SD + /tmp/cc6OCjXR.s:344 .text.Scan_SD:000000b8 $d + /tmp/cc6OCjXR.s:2161 .bss.fno:00000000 fno + /tmp/cc6OCjXR.s:355 .rodata.Format_SD.str1.4:00000000 $d + /tmp/cc6OCjXR.s:359 .text.Format_SD:00000000 $t + /tmp/cc6OCjXR.s:365 .text.Format_SD:00000000 Format_SD + /tmp/cc6OCjXR.s:485 .text.Format_SD:00000078 $d + /tmp/cc6OCjXR.s:494 .text.Write_File:00000000 $t + /tmp/cc6OCjXR.s:500 .text.Write_File:00000000 Write_File + /tmp/cc6OCjXR.s:604 .text.Write_File:00000050 $d + /tmp/cc6OCjXR.s:2168 .bss.fil:00000000 fil + /tmp/cc6OCjXR.s:2147 .bss.bw:00000000 bw + /tmp/cc6OCjXR.s:612 .text.Write_File_byte:00000000 $t + /tmp/cc6OCjXR.s:618 .text.Write_File_byte:00000000 Write_File_byte + /tmp/cc6OCjXR.s:721 .text.Write_File_byte:0000004c $d + /tmp/cc6OCjXR.s:729 .rodata.Read_File.str1.4:00000000 $d + /tmp/cc6OCjXR.s:745 .text.Read_File:00000000 $t + /tmp/cc6OCjXR.s:751 .text.Read_File:00000000 Read_File + /tmp/cc6OCjXR.s:976 .text.Read_File:000000e4 $d + /tmp/cc6OCjXR.s:2154 .bss.br:00000000 br + /tmp/cc6OCjXR.s:991 .rodata.Seek_Read_File.str1.4:00000000 $d + /tmp/cc6OCjXR.s:995 .text.Seek_Read_File:00000000 $t + /tmp/cc6OCjXR.s:1001 .text.Seek_Read_File:00000000 Seek_Read_File + /tmp/cc6OCjXR.s:1271 .text.Seek_Read_File:0000011c $d + /tmp/cc6OCjXR.s:1287 .text.Create_File:00000000 $t + /tmp/cc6OCjXR.s:1293 .text.Create_File:00000000 Create_File + /tmp/cc6OCjXR.s:1372 .text.Create_File:00000038 $d + /tmp/cc6OCjXR.s:1379 .text.Update_File:00000000 $t + /tmp/cc6OCjXR.s:1385 .text.Update_File:00000000 Update_File + /tmp/cc6OCjXR.s:1489 .text.Update_File:00000050 $d + /tmp/cc6OCjXR.s:1497 .rodata.Remove_File.str1.4:00000000 $d + /tmp/cc6OCjXR.s:1507 .text.Remove_File:00000000 $t + /tmp/cc6OCjXR.s:1513 .text.Remove_File:00000000 Remove_File + /tmp/cc6OCjXR.s:1632 .text.Remove_File:00000070 $d + /tmp/cc6OCjXR.s:1642 .rodata.Create_Dir.str1.4:00000000 $d + /tmp/cc6OCjXR.s:1649 .text.Create_Dir:00000000 $t + /tmp/cc6OCjXR.s:1655 .text.Create_Dir:00000000 Create_Dir + /tmp/cc6OCjXR.s:1734 .text.Create_Dir:00000048 $d + /tmp/cc6OCjXR.s:1742 .rodata.Check_SD_Space.str1.4:00000000 $d + /tmp/cc6OCjXR.s:1752 .text.Check_SD_Space:00000000 $t + /tmp/cc6OCjXR.s:1758 .text.Check_SD_Space:00000000 Check_SD_Space + /tmp/cc6OCjXR.s:1870 .text.Check_SD_Space:00000094 $d + /tmp/cc6OCjXR.s:2140 .bss.pfs:00000000 pfs + /tmp/cc6OCjXR.s:2133 .bss.fre_clust:00000000 fre_clust + ARM GAS /tmp/cc6OCjXR.s page 59 - /tmp/cczIN1cV.s:2126 .bss.total:00000000 total - /tmp/cczIN1cV.s:2119 .bss.free_space:00000000 free_space - /tmp/cczIN1cV.s:1881 .text.Update_File_float:00000000 $t - /tmp/cczIN1cV.s:1887 .text.Update_File_float:00000000 Update_File_float - /tmp/cczIN1cV.s:1990 .text.Update_File_float:0000004c $d - /tmp/cczIN1cV.s:1998 .text.Update_File_byte:00000000 $t - /tmp/cczIN1cV.s:2004 .text.Update_File_byte:00000000 Update_File_byte - /tmp/cczIN1cV.s:2107 .text.Update_File_byte:0000004c $d - /tmp/cczIN1cV.s:2116 .bss.free_space:00000000 $d - /tmp/cczIN1cV.s:2123 .bss.total:00000000 $d - /tmp/cczIN1cV.s:2130 .bss.fre_clust:00000000 $d - /tmp/cczIN1cV.s:2137 .bss.pfs:00000000 $d - /tmp/cczIN1cV.s:2144 .bss.bw:00000000 $d - /tmp/cczIN1cV.s:2151 .bss.br:00000000 $d - /tmp/cczIN1cV.s:2158 .bss.fno:00000000 $d - /tmp/cczIN1cV.s:2165 .bss.fil:00000000 $d - /tmp/cczIN1cV.s:2172 .bss.fs:00000000 $d + /tmp/cc6OCjXR.s:2126 .bss.total:00000000 total + /tmp/cc6OCjXR.s:2119 .bss.free_space:00000000 free_space + /tmp/cc6OCjXR.s:1881 .text.Update_File_float:00000000 $t + /tmp/cc6OCjXR.s:1887 .text.Update_File_float:00000000 Update_File_float + /tmp/cc6OCjXR.s:1990 .text.Update_File_float:0000004c $d + /tmp/cc6OCjXR.s:1998 .text.Update_File_byte:00000000 $t + /tmp/cc6OCjXR.s:2004 .text.Update_File_byte:00000000 Update_File_byte + /tmp/cc6OCjXR.s:2107 .text.Update_File_byte:0000004c $d + /tmp/cc6OCjXR.s:2116 .bss.free_space:00000000 $d + /tmp/cc6OCjXR.s:2123 .bss.total:00000000 $d + /tmp/cc6OCjXR.s:2130 .bss.fre_clust:00000000 $d + /tmp/cc6OCjXR.s:2137 .bss.pfs:00000000 $d + /tmp/cc6OCjXR.s:2144 .bss.bw:00000000 $d + /tmp/cc6OCjXR.s:2151 .bss.br:00000000 $d + /tmp/cc6OCjXR.s:2158 .bss.fno:00000000 $d + /tmp/cc6OCjXR.s:2165 .bss.fil:00000000 $d + /tmp/cc6OCjXR.s:2172 .bss.fs:00000000 $d UNDEFINED SYMBOLS f_mount diff --git a/build/For_stm32.bin b/build/For_stm32.bin index 62f9194cf41328e6991a24697a7962e8f9b86d09..1a774cf0bce61afeffdadaf8d1c98574ac3a79c6 100755 GIT binary patch delta 10906 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 diff --git a/build/For_stm32.elf b/build/For_stm32.elf index e81f8d8e13ff1a5271c258818b2ed8446de5ac2f..35eb246488935fc2d72b3d8226fea8913fdc8a88 100755 GIT binary patch literal 757124 zcmeFadw5jU^*_ANIde-gB$G^l+iy5ZidC%q~#xzVjg;|({ zv@Dj%)0v6qFyPlv{|;jm^aKK&Q}gq53*d(DA(}ppG2M{#bRYv}`6to|tZ`pRr}uCF zeXD_QHSnzlzSY3D8u(TN-)i7n4ScJCZ#D3(2ENt6w;K3X1OH!Yz+j=Z{<#Wf=tk&4 zh#>SMTv|#DFk!X|m+;gg+>5;bUxZ=*g;qY&Zi%Nq_FwP@_|VS#&pd7W5BX1C0{;T< znU(*U&OllJ>G{Qf;b9;T>31OhfBXDDr8Q8uQiaB~(INUJm(-jw%R39c8VdzV*H-9U z*;&U@gpS?9Y}4g&Os%>(wzbZ-SoiUm#$|5SRJ?JP`2?HIYuZ0RXDw{R(5i7|H*03A z>HEJl*#8ouGTbPO(v5GLTA$rJ`c-k8Zre(Qm1(x=w;5(H3~P$C+gP5sM`+A$Vv4Cp z+?nIe*}MNslU>~Foy86q#8@o(&0^%GTw`9Pe2F}txRvGUwi@OdJVK+mN4uT!E8&6s z#deA32MZRWG4U&9))Ssl@*9pMk5L{WUwyQ>$9OQOYwOD7z;$wle5G6{Gv)5cZqKLL zHqX!8Mdi$5bMOCBdAM?E!cwurA>NiHb{t;4JZFJvT6v?R;lMWe897VN>GG}g$*KNS z3r5cscZ^o;au+}j|tqI>*R z3QOAJN%YjoM)_8GX7J4(W3d_1Oz?m7l|~qmC3KXD#P2HbJHC7y_}wbk%Zc)0?X@4L z$`vRlt5?{{3a;}{mUEXf&B9J=*VY<`;uBw}dph&w4xR2LaG371Ra@LI%U8&g ze=04kS3SU&fe{|x<3GH_P)P;#aa#5JT04KHZkmf&M{hUIZQcE zh6G;b)ILdO1^z(pQsUs2K}r8GC@Hft8)#WR2y2QZ*n#o{Y!#4!H_}6nyk+w!-E({E z0`EpM&}ue^jdg)@y;+S{_$L?Nf^tD*7%RhQZOql%wR?L`tyr= z0>A1=(yR&WK&h;7iJ#e^<;fp@rL`q?3W=IVedA-{g~eHo+Ms5Ku2(vn< zc7z4f72_BCZ=NGrEuhlYTiUGI$+GR%4R*6LsZ&VOG-jiO8!8?P7npQbro7zC3U2q$ zbFreE{L(9|VXn&|YxY#g)CTqPx*VN9Vdu2+ghrB<6>SN;6*d+x)~)*};ptIacO++* z-zG1T%b@>Q_x(|!_+Q9FlG~7PedzhlVlknx{=gBr`KW#;3kp+m*Ge55C9%UPscGkq zT`^wYxLe*G*a`j%$Bzq0J9mafQ|b~qJL(r?o={y0QZWXGjo%K3<1-pP4D-4$vZNe45|uY3bq7;`BX+QyoY zJ(nrJ4x?SL--k^squFlzeK@^X3>j^(pkit(8$#@W=2z%%5KIVY|13db25)PMD`oDh zj@=zvo!n#6`qgmng{tsFtSqKW#uRS7#g`(&5JppOLgkvAJXgjp|DHHHJ^QvPncA7-1 zl46uPP06RqtJ>3YvgCKaVmH0}m3WhB^6Hu4fU#2$(-mWi)FGy6fNA#syi+6D6iL#Q zn9Chu&EiH!Bw$n|&4lJZwB(edtnA%@6z^Xmn`JhkE6@{?9Y(i*NZPAolO%x4pIa>j{0juA&c4S(We%Dld#VU6X5=5(~V zT8~w}uQ^Ayc@}4fKT0YZbF|4(>$%at&}|GFZ6$7I+5csD<9N9kw)uL@nWK?2{aSZ1 zN}SlI=}cm_Q5Hqd-p$H6ke#)AKH*kpHaYU$=?89b|30iS)!tC+ak)>0P@;FtzUlIM z51SMT*gV&QqNYPiU`kS7-OLeyoX%29xi2OZC;M$4;<2dQ=3eO8*u2{z`LpE3o@b#= zX4?yED&ahIL|zY}l;U5|uXi7ppN*gIFKxXcteI{c!;0QI@Xrh_xcw+HuF~u&0wv?I zT#q|rqho@<)?FZ{V+1L+Gv)oacRNy!QW*@rPpW5r#wN!||AZs8?i+!n;=K7b!FM^* z{g$IDjeiF+Jc~Vs^7p=C(v9x+kj;}+Zicif)Z+dyWbp{)^HEx=`$XW#S4<<6!=}fP(*mf(G&2_N-0b^D#>DJ zY&t8v%@2z-3ez4fPlZ*(+9p-cBpiFYfaZNe;Dt_;J?q7`7*tkb0Vd3koi z_rs>|l_PvVY{b)urvXm`o*Fzg-%F-8FjE8UuL43z8f;$ZkWxh@MZ-EIbAewo9X6?} zYHu=*F3%bBxQu*@k?*!Q!6SImh>9di9h)SfW0OF`9P^eG0vDJ)DArfzXe^wYaz-}!*@W?8$Ci%@1&^qTbwHoa`hm*RH}(;sXX zv=6llx(9n_o!i~}@VSS2XPy6P@5ARGZ~Ho+yhC(FMK4ZnR%vd8mdwrJ09xKGp%krf zqVB*|vQ(-s9j*u|`hZY8yvw&i;Vrrm3e78z*ZA@ibF=4r?YG{D<{92Vg(b7-{-QQoZDJ%Y0r}Xg;z< z{}}WxNssssp{F~Xbz%sv@5q&5ahe6;zK~|>u_MCN0V+L*lh#UJ*IK7{%i4`zq9(co zIl~j{Zr-oDdwZOy!UDB_sR2{ z-*H&w@p8d|spyZU#?&4|7qz2>Ds?Z*>T?&;`uf#4;AN?Jzh^)C#i|B*jGVZ1i|6m* zf~`9oZym^zKfpM@ z{}G3Um%SisYkAfbmM;Wn&K!AMuvrJo)piQnuE4t?;(3@~E%9*3o{gOC!L^@#!U_p{x8ablxl-Yq5-9del;M=h08U zG%Kgr9hdq4bLJg{UWnzgjqH66{{?OEX3lxJ|ljkND979qSDGGTqE} zQnpop7-qg{vh<2t`xcA}7Qbz2C71Ic^qUF&1W}X5tvmG@A6LvA@pqPw8cEaygPvU- z3DT>MVW^JA|&z-*T4O{l2@p+b+%lR7Fx zH{LCNbPG7!?lXA=%#CY22hTM6Zmg(M5|f7qEuJEeN%5s%os=yG?7E5rn_E^E&Z#KE z2uK)JiXoZVYCJ@f6~5rU;e^d&Q!s0Av+=F~E4(joQvP+PA>}*%pMz&x^~O+$jRL97cuTQ6$@ytwN9$o6rO1*^q9fZ z0`MdS%!)lF16&olkL$}1sCb!e#0BN3QcTIOhi&|I?3aJhr7f9M6AJY(whwgwEKtJ42bi(V>=Ov`K6s*}Q15NUyGh2E$ zoN*s>G{4(vk)Eg+P<=I&;w(N^UmE?%2q`X}!XA#}`mpHaY!#ZOnK84l2 z1nhp_l5(*WBe(skDsj5mSh8su}KeZ3ny*?2jy&mkV! z;9zIY`8H+U(IJU~Wh7R0U-*GJ>$4Cmv@4Ci=R1rN_?`v6qeAY!NcVYtWJIye=xk@s zWX`#PbFS-*m5PU-1~tD=mQ}916@8rR`2zw+jaJz zhJMp&(QmO^d-Z*D+9ji|SBP4A^<86o^=Hf5lQpbY2!jvkFn#vEh!Q0|vdHL?+3gbX z(eunqu~#^g#Cb{Xj7{|^5Bi>&X+N{U_j;$8TwA`oBO&3%mbQp;mPO3Zl(#38OI(vG zPf};B*mL+L#~sJSX-mqT?a9#Mu84T*O~)F!Szd6Y%71I~ThP#wjs%USSKn>z70!-v z{>cta-NSO{gizOl1u&}VvAsg)llBtlfYzELTn{5Mjb-h+G8Rcb|F}cbD|S)IIJN`5 zO+5U#qv)7eT3x<5duI#qNyn+qcEPEOBzHdJxS-+m!_PR5dMgPAF}bUkb_czpz?(I%JoRg#Ic&5F-1S6*9=fLX>|ZW{?;= zTN!5G2Rrq~cRDpG1+aOIQ5vNyN;!6DG;II+Ri|5bRC{NYYO(g7AlO;!#=XN_S<4+=J~68{ zd%4u*lY~ZLXM*dfhgnnQgJ(rctov6nCLCeN<}+6&4TPC3vSpe z){BZDW_iW>chB0zMf~X#ckt&y@i>37w5(M;J#7(x`qFmr=fSk&{K>3Yt9iP05r6uu zJNWaU^*DdB$ysZ7`s77xHmogmWqCK$>%ZPw82)svmCax1VUr3YIIq+sG zeCz93_xZ?&9JWQkz*U` z1|dH=ow4rDuOCMFiR*qd2vs2o>x3->IaP>pUD+j&q;&?@?ua<~utD$2a+BAMybFx~ zyTyJG{UBpL=ZAm#)1M3yv!uAP(fiv|H2z^&@z~&{GP@I9Sstq*iY8}dbV< z@d6U?$eU$$bDJt<_To2_>NWM**#XEdo&V+ZvNLzz^Ww~mqgzjl>vUglof`i7)Ut73 zk6l+VC(lzbccN!WHlUT^ukYZ{pPbHL_Peij%YOLvOY8ing=IfEZC%&(_3zeoer@Va z_~a+2#|*w{KK}G{&N?CZ>FLaMzd>2h|J1jDNwhybJ!084c=mrCS{Fw6Av8$wkza33 z+N=X@dPIODd6g`(frQv43hII}zm?(R?qbYen)N5a8auZ-|M zR5z=%)d<^7)>5Au>s}HQtW{mUvI!Mhcp7;8hC;-j504+vXMk3as-76(-jIv*ZDD51 zt!%&yQB2VW7Uk>%XTo8#+!e}pJy*wUSv*a+BrV-_!ozIl%jO&AdKUSNm(8a`K9x5S zWiJeu(tKJY+L;jn_2zBm^XEK6@ak~7N$V;Jr?Xi1BQashi!DEQbRF>mzv69X2)Cxd z!zvW$j%nq+=X|$G#~{y5EGXvx;vBn8I8t^#_5)4sXte7UF_t$mC|IW;lm_=?ZEg|9 zCma*5-Q4nO^9xy0L_E_F={&PBD=8@Co(l;RuQ;}BbVJLuW=%vo+ZZ`>Hap7e#|MXn!uO8}QyW@X z(MkUWT1P{I)gRKjj)%bEn!kk@=P@f5COrgWG3u*S{fwy4D2HOqYR^qa?AI}7gAY0= z>=a6<@1j}?9}$o`45@F#9J$7dShqW-(mR8Zauj6$I!d%ywGKGX#o|4hs&9j6e~)}u z(7UPC-o?sQD=OnT$ci+|Ce@-~MH=OSSmA%MB8_r4_`AFn<#21bycG@qFIL2C!zvr= zE^kG8*C(DATL$b%qfClfWYhkkc0@khje9p@R+KJ}k{NXIXl#Ql;8`E5lc~So6!Xb$ zJbkg8W?_PORLqltro1;{OPZrsHK$C}9!trWg0QL^yF)_$6{4=odxxx~>VzgOd=Z+6 z_S~rE)^olYa}EpJh3PN0rK^m!!xdr{|^G#lqQkEDMm%B9aE>3aj< zmHUU|)C8nn-T&_p^?o#wYGtZJQ;R0@4&CZ;<1RsQ(A-+tiv+ zV1~znDOz*xr0ZO_+`j6^WplVZ)fULGw~vqJJpM|bY5!E7#`yaSJWY*1+oyy|)O+7ACE8Tdn=TI zG*d3+x)mvE?B>3ohtdGIaQF>?tFbwKyFy05?HoQ6a5ZM{YYOQA_i^~OfUB`7ef1%h z0lh=_+z$Bsrw%nT4mi|4*CU<_JA*Zs>^s-HK7tXG=16M+AFf){svjVpauH7LXsPI0 z=vz|6sViT)3nf#VA{io)3z|NM703m;w_li9*=pi8qY3c2)KQ`2TiI}z8#YFdo zJZcTzg!2Cqxyki+&uc9Oa_RmBygVN-?-0sUb@1zpN^=bQAJIWJq9J$D+)dL}ZB zm-YM5)k8{poJ*!kS$|PklZKQv;WA~7yKGscvC$~4CNhSXwk?!{(o|V)9-_qs7nL=9 zNLgu@DQnn&D9cx^L0Jh{rjF?-~eBp_`EH9xcu_>v^*fgx^X<9KV7OWVvmWy}_4Z;qB&>E5;K2dBCIYbkO zXhf+&;t;G6IgTJ|8Z;at#v!7pZP0RvDGo7-x&|GG7~&9vsBh47h#e5DSFy4&G#Ykd z?`xY?uIl=IHN1XGYwxFF|MOP)t=#!|d%c&mOR+tGzf)(GUAcC=y#Tn0$DZq5QboD# z)un(x3AizrV%rd-HbL<%$h)bTu&SzW#{0(Jo9FS=8?e`<+^=HZKq)`yC9L19BDj~s zSvAF%sd0|KgyTF=R)M@KVz0eGi=;F67?Cg4me{D4NU#Lp`6wsK zR7)UeG+cI`(~EOL5_g52=Qo%yP$X&F!^pj6pj_hQWH@2F$_1q#NBRSC>Ler0!~NkD zzHbg2CEo(sDXo2|A0vCkyqqxv^l3DXH0&*~VrKqwv^yNe8I~rgNz)1*9OQ})#a^)*0vj)fWKx~V}>ocF{R1Wq_?FuCeAVJvB+BG zJJDLK)lE{Zo1O+d(@4&`A#$QEUM$n&m&i29l?9o6j;tkFkjdv5kcnCk$t1>QBA%-h z5%L&)(m2gi+Ohg4bLWbCXhh#moIAxvN<#|C^rV_nPtsmC<-R@xBpV_rEK-%!G(^&b zxTGih|AVAdpYeIX#d2m{BIkHscfK^W?tEzja#C+Ya$2~YKHE2IE<0XxR+4hf}3g zvBLd~C$TcozQer;?_LppN)F%Q*6qcLRqX@f{zZGh$ifGru}gW&;k;pV;Jm>@hIXBC z5pUn)yrqM;$r9`W-cZLGQ=GS|F5?>FE_sfCcB)gdBD8bj!_LVIoQ3#alX>P*EQgaL3;a{r%F_v)!L-SVR4@P zy#qW^%koN2-jDo8e$v@D>QChbeIMsV?fWj~<%2$|KjP(T(h+!Zop~e9i+KnykNltU zVq&~)FxyWsr?^b;0_Gb6r+2S5_&=2_*BUmPgp!>t$wl4AcDTyUq^4#0o^dhj@w(&Q ztW{YXveqnGvuM?hRmWE!UzN3b(dr$m7kPJhv%K5p7W%f$vHF;GnY+gQiu(ok6Z4*x z-}y3yrM&+Mc5+L6kIvhUw}%iOncIZl2N5>Aj(f<$kHde;E!{1h^VNP6mR@os{Fa40 ztcUQdQdkZA>Iz$Z-2J0UvC|+e{F2R}6NiS$jxX7jZ2Z~4Jub@OP)t0B8rOUy_lioS z6idoM$zJqh|DCQw;e!@W<)QF<7M6FXE62^lJgaQTEtVxkj#_0OkCjDh_`Jopsub|4 zfSWk{s_3WTt(fPaF01WGnHargF6Ayjd>pU@9&P z;#6*8bas56Dk++{FO1;P_M)$5aK2d{S2#Kg8Z$2esi?j z6r~Zd0J6Vl84uYHT6`h!zlwN%AN!%F1BIBSuIepxWwY!JK)CX#WK71&E_%TXGQi+=S*T3<2Z9R-C!5r#wj8if0qv2j(q$ zIa%IHp0~UaLF|FThbbxF>rY4AkeiD5clu56Flcg<5ue|m5+n^QjFOkPe5UCzoAl2B zyW-0LK`Wwc(pPvp?H7<&1b%6MD8y$Lm^+zTS)R6F0$&|VhP076V~1CWN>0QAe_-02 zC0H?vSY6TY#6Dk3S7;bge}?yehm43B5Ni)5#PQzdc$vTphBQcR#QTYmMLvf0ght0K z?_fWP)|ta(sQ{-S3Uq#9x-{Vml&w*Q&Aj~~Ay>3SyLUy@8S^}F`gz~!5MMEtRpRXv ztV(CQc4BWsOwj~dupSkT3X{);%E`}eb@CM9qLk|gyyaz6k^h~(X@j=;3%+{w-Ea-y zdl9FVwWPdCo(S0Em4N;frCoWM(kAfI3NKSyK1%zY$}e^XBxMsQjJgbk3{GL>WhkV9 z!b_lF$~7VX667~sCVvvopLm)4eTX#PAXea@fEY+J?C&9(gLGwT zouH0EDD8^<4*O0;v~$Ms2=YE~mR|x9*S+${eXd0tJ05wvu4v1?y4tmL>Ug`4EdK|P z_U*`S4ru_ym%9p(mdNKE@&q8%lPm@7<%sP^lVry0~ZHyNKTx*$oWaI>LAe7-H@MK)t}QfrlYT8cpv@7 zr(xr^3d~USJ#@;GPT>wIjL1ka*2IuK*= z{S@lW&S9mSDyJc)^seE!8sPrBpKvMGjxoTJYe0Gsm?Dpz=)D_#3GXv`KkA#dm-?U>`c~>sH_5DCuxWzR!)D8TyHJwdvc(ZT;hkk_O?GA1)109Z=W1u2 z`QhqDM@k?W-uYp9x$q!<9@D!re0thH!!APl0cH^_m~UG8Q2t?*=|`YG+l2m1$V~*7 z5A_%>x=9Fltcf~`AL_dUt=OpP$Pp`~VK=Mla)jPY!k zD;sSF=bZVxWniXrB>awL<=GVMFdquP!_--fItLQ?IP9H8<0p-atA7y9!<5 zv>cKE$f6#1o0gwlh;_dbi*>(@@Djp{2rnS)iqTjGd$0?PrCcmWdPVvWIix`;OqClT zgLBbPg@Ggy&!`YW#{x*2FqT7vX;eY%tTMZ%c3>pn|oRA#BEn>o3yQX+m+iU zZ!6h0Zd<{&@!JZw6>XcaZL3v!xxag3*pB(Q^s=Z-#hl2l{Eu%wt(P&s2a>!sN*S%FnKC_3P|9e8)3mIvbamSy#YI2(+^hjAf)*TDrBa1J`u_@6+R z=E#4t_a;N~@F%tWxqNi**rf>SW2p#w(g8H5E4*ZC5raw?b*Ro6gcq^z9$r%4q_z$JcE>_fmcS{=YYR4vswYxK$|F*Vmp zlsARui}zzL*}56+MAN8k)Zv>KwY8YJl{wK;7V{FFyv*;1pKiklu~5^f*+c!v(>BP8h;WLaCzfE!`HYV;Ffs*oi*xTuNCWjTss|OAJ z9uwYQ={*R}SmOwA$H1MY(O_LFQ@>ap_O$82+qAxvxHf*#PkWTucSG2V@OuBhNGAqb zCqD^4M_QA)DZOcU+_RnBM83P!rU~esJ#t_7AEWsd`Ka4+_a?W&cF3)%F0bBH4Nn?+ zs>uQ3HLWpiPYz1{bC?wr1v25q{AH}-ZMQ86J&_T58`hB0khI4P40AXPDK2OMZE}IO zf$F{rYe+)_e5L5!NQy^#-CT;JkrD8O#JX<;-wP1tBg{jX(|;q$z(~*A_fCNqRR3~c z_q|cl1^gM@qVl*00=^i&>h~=q&xi%*X3$0*SvVaeb=jTNGYHTtIU9vF>vSXZzyq%*%ZO&Ik93${*1S{v;Od{!64E`=rtC;r&ecZ8X|_03iu! zCy?*D{%H3agf9?Wu(0L*{oRegorQc`fKvq641`+{9z!^UU`E=Z*yhTsY)5L2EE7r= z8-!^`YL6`2$)pnT+^)$NpbKkRt`GY5h35p<^O3JA@Id7PTE)YIsIKA92Y#eN;CUQ? z+&g5oFAQ1jdolY)?_{IiX*nMm#|2l=jNH52waAlI9qpbSS%z{%%s|g>lJGnBL7^xi zaK{`GYZUB-W3SETt@T!8-C6@Y0T?46gl<>eh7rUW6$)PUe;;sT(TStN3k$;dI%zsH zY)8NsBZjN4V}{!i?nT&!(1S3k4DSeYXE4KfJ2U(UVcwi!ytLaQb1@I1a_@+E+h$gp z*E(@_+3cO^62bBHobT(o6fcIHgS$`SxyL6DoRpg3no((=O%(R`%z$knxb?QH!2J~n z!O#_PssG#??e2|E1`QiOiKfy}pV2(mq6dK9#&xM9_e$!l8Ye(Wl;JgsYlL~1hr`em#agvZ`LYh64$lr0& zZmkjTr6KAEs4dajpRet4mNAC-L7cmb;@O8lz5>QX`@mYB=7+SOO}+v03wRNV(eIIO zVK3r;MreskenW3F&IUDCrg<72>(2{sybe#8fR*r7J+D=j)={jur?igN#uIw>%q!-x zaXrO#5+Jr7`nB|w`ZRdv^w4i+PqFXQ@Xt30)@$)SM1OZ?pCCUwx4=hp@fqPy!%sJe z)+@0Z=HJ6A|tHDpuelZoa@X z$oUE)X4ycn6NtHa?5~LJ;;{hXZ6Ln?gc$MpdpwE5_wclA)FO5Ou^&SEA42BOec47^ z-L(4Jx{~_cb@#YVtiv}={xvQ=>h#`I;uO^)NAyba%1V=O*XWHKArIaPd@E)ruEp1x z-Y-MT=1AObrQXl$pLQ7i*jJ8Q?Crc(Z$qutqE_dgvej4DzgUk|uMR6-ty$5ejPaWl z1J3DTKU;5-i2b5TOAvL0>X z!;rRF%>PTvZ_Y{uxy}UtnC2Oia28}7QJLO`( zKv!r|zj!F*)PD!+FZ$6=;?(~qG#RaJk#}-j!iFAI!ij?tPT&%bgM>wp@RKhr^|e^d z50hTNY1?6z zHQRB1#?H^r6gAVC13H=5y9Or{ZPD)4(dN+8X!({NZ`)IYmaxjY+KMLQ0NG4pWA&g>?>g?@;L85-!<8>YB-;tYL$KK&x)NZWW52lHb>y^uU7vb7b?P%M zWc8b)lBK_UL5zN@V)xIn!1nvQD`WIKEA}I_NC7j5<>0ZRSCD^zbZR4aM@6jFmjHSl zpp+-ty(GF4o+}?LTU2g=w?K{E7+Hdu#Opn*;NHOZT#fLM967C7cMbd~M@~yPe>-+v z%hww2Pa(cOJT2iAv(b$m>TL{Pkl=J=|EJ;m>kNE%dw>7URnyS(8l-9N?_lLgu_8Ci zyT4{dO)mNhjl%j>%)Y*kW$DwF*W6!|FVBF~nsrq2!0Fy=KE94?uhV})7t}vU(J66U ziJ#*=gnVq=b*?e)D_vu}pN7NG1?D=d?2z!w-l^ni=JC&Z-;A6;tBaVOJ6p1w$-ntt zC>r{*rN28pDqQti%ehctC~4B~}sVRMSzDsnDgNr{@$qKz2#?Np?y0N;Z1Aetf9S(>VwY@M*q3a1MKD zJK%fNH0Q-wLgyuD4$SA68KV7Xm)H*JYk5Ce%@l4yS4MZmZD&H1Y-fD*xw!2-3o9w? z5#*h5+nL`_w(~TgV*picNA6eK2g5n}tUBzu;kTi3k=tioV5D1)m^#wkftWhdRU@X3bl)R9KGJ;`F>1vN@uZepg{L~wRU$S6 z{mcw-q>gkY80n^AqI#OZaAjJe<3@G2 ztMk}sP@Wzu<~<(1bo^C89JlB{;Es*u$8k^nirLPFMu872`n#Q3ON!Q?Kluu?j)~8s zoH!$pmINdM1ds2iQ67 zsq6**z&Ox?xF6vY1ZrD(NT+?4!Fd#&rEE0gCJaHA;M2OPhryesp1$Vaq+F7|wD;n4 zLo4NawqH|G+UpRpEVa(L5L7Hhl&5naH;CatuEG0Yx%KuvoXRKNcaw_gH!M8jm zvF_EeV%+lbL`(t~y@3qbuwSr6LKowBInIwS!70Yt-b`gFf+jmKT$aY?VBbYhL`|Z} zD4T;GaBx>lx3kDSjK}Yc>30_S^gLdT_~Jy220fN=j3jtwC(Uut0`Mz5>iA^u8f-YQ~RKHK{Sb%Y{3bLeLNd@aOmH-Xl7LF;C|B76~$8vt1d$c-)ysP6=1 z4j}UYsdDK6X$V#D+>eK3{(J-&<-m}EQNib$BHD5}rFriUmCa752RE$Fk>v-UraH%! zesE){b5vjzA*8tdw-|(Lr_GrXPGz{s!I~FNwFo7}pmz=Li5G_mE7ebahbt?J=_CWN zEa>ScxDrtUv*iO9-y3=55aATe&PAFsBv;-=xkkH^c&?Gim5E$MJXiKNa*ensSE|d% zb0s2|5xGn}*RXglk|43d0?wZg(YjZFT~a?y_DOvUE@_T%I>VhsxFXFG1w{2#d0^F;?-@#L)i%CQHo51<|TWCDWgq5ti zxXk=Z%7h2OXXRz?98zZXMP+8Y3>RtgAzo(MkTO%^WfIpZT(+c3%As=w242pcr$~zu z&v6EQ6zOX#0_l;)KGGfc9bil==6f%e6utinjL&GnDWX5tog6I*7V;EBN`7D*kBKQ0 z0@!Uv@1RM!GGOH~0bh^g@|Zm(%Rib^u%`_7XS?jyteQ;jpCWI{fPcymOm{6_h7r%Q zpm*ch6D>6UsbgRAH{fSN3EzNy8Pa?MhST=26P7O6MOPI+`NH>%mWXykYocp0WMV55 z0(v#JUh-=R3nyd9SAHrca*c&Uv`0jHMH}|wt3~Wvkbe^A8S!KdYzKBSaI$gHlEo|V z9V+)u@>|GCMSF4UWAG=deq{10OPD5p1#S@q~Bvj&;4*jL!~yc{DkfLJ!1fQAVR71mV>t+MhbCb zMVduWjQ#YR+5c9^ta4Hl=cH!fRP%)sjPR81w1BQ;Gr*&r1Ud_`^23fPD16yRzvpnS zpZ1|>e~6!j9dh=S&X*{yukEF;J1*=H(f&}RdridZvAT9R1pman%KoY@i$uFcf?|Vr z`l`Sv&KZky#%f6CS<4;RZBfr;YX(np(|Kz;ooJBY>Ba6*c;UE4aa_SuZ0z_arToI} z#=N4YaeETM`T1UrZCqo)Q{$g3+)gkZVE^hp5Q=v9^t>P9-x#C*2G7T|KD<}*6r#6QjX`PreLU)H{yy;jdiZeJ6yGl9ACLb5M-v!m>7cwnJn=1^NS8$6+W zfpg+Sg0+a&f(B+C-%!|SuoX3q+e6$O?)ext^J(}*i0_RNFW{pRepD-V6&K-*XqhL` zxyUVg7Gh7&w`L)a2}|)MzDHuBhS0Bdw_SauD#|E`~>Dc*Qm z-7-p3VfKY_{2?$=Qekx{tqk$4*uQ2)GeBjb$B7aaa$am*Zj>r`Tpq_VVXCv;QQ`vp z$TC}(S2|K7c>cKT-K7K<7yhv(&f6N5?$&Uz36yQ>8>FjMV`V6>4p4mYOtK8}3rWG{ z-jJ#bD*pqrNt?QtT(FN$E=Vh!&9)V0#e`X@U}3leWO^~}B`v~NUA0T-?cX8miUgc; zrFEfg39VBqVp#nxv8|w6&-gy+lFvc{&2bO(e;tc$Ko2Z5ZbeR^=mDG|@F6C7cHrx1 zA;lcn!B0-^aKlIBxsH3$b{ZwzVuw9P`Z9MKSuNeZHIQS0Usy2(r+?AouNIdq@}%J= zN3CC6f!baG*aC5hxB{@-GX0JfRz)W|mcW+~o^DyGSTW}x%g329DZ}FQ?6+ORIq*4l zxbekGkXao|PK6}TD73pojFU7znNo0fo+pb#m?b+%oZD|x2J>}01&t%Gas1e4p_NJ+ z^om?KDPUV-3k22*aC2J{FH4}ZEG&pMk-8GJ zU>%8bGLq-$3UwWbU$RTjXwR*l-=4LnrL})YoPZinL(NFggQJVV64W}#yr^7N`ji0r z0(@<>2wV;=Um7f*Z1{ti&7;cl+p`DF=JqG0tNdy^;CSe<;?i~5$K(cfEKkEz@~b6e zq6E_Oa99A@Mk=^i*G8q%nP^@rgcIeir$FZPR>}`Me#FtqNlcE16si- z&zGJ@2XUJ07U!4loM49MT|gb}nwodr!-E=+WvNPKC=F|M4&aIPMEx<37L-M&wYt)y zD;$3`$Kzfuc5D!}D0R$WsWr6(uk@%X&0%(s_z|5owHY3JjqzK#@gMQUNj zfentI2hw;t!6}{a5Cn++?v`yZs$LKmAMArGB={9B!k_Yn8^ zAK<4JU>_qwmp$?b%|%xnq*$&69T# z9&Fl-ZzYQMF(n++%AR{Uus-9vq58~ zkUyMjz_;Gy-wpZlQRmYFDXy%Q16ns_=s^5 z(iO#g@tQamPwz>oJDQ#4{D1N z{I`Fj>|h9Wx{|LWz>kCT^;gv2nW#=)6sKl@^zG51)Se9Xx9#S42XFJu#}}<4`cFgQ zE!elq^uvFH8dT-@OH?CQ@H%GeD?sIUQ5LVIdxMTjGiEEkh2|y4Lhw2a=4p*;tuqP93>CjohiL)|nZ{)0E*q`pY*>mu0y{W3*p7TxzGv3{ioLtrZxY^nM zY;9Hhqp8guMxnMNSvtX-?KiCX14{*tvy(~Bh`7zU{ZUI<`?EJhy2theLQ=)w5I&~) zDfqLm{jtFE&~c)#+vW4N4#Vwi3!qy`Ns+cVk`7n#I!uw0oMzO33biYb`P4pZBz#U9 z+{*&4rtL)^|rw;eGXZsvHN&-W=^NVyVypHPI23ACP4^wTtFTH?QI z_9GbCCDH8Mg4XhEzfPua0;spG@$Bo^kTL>xv#o!?Vinl`%wPfKMsFGn2$t)E`J5J8 ze++Ne1TAqnUd0V?IH3YAQlz3mIbL;445%$$=O0Ntg8!3)JR0B`O65?uQ|+}H-LdYB zm=PQuIxCrzDvx~cs67ei!4W*T7p$M=S*m^XqV~fGw7w%mv?a1SxP z)80cjZjvXe8}Pk1QRTjA)J+h1C_NNUca(fHU4bu4BkMdPaJFKYztyz^BMuXH;LE+T z<%!N6Zs&3uWA3bDWAi=3yI6jz|L2v5!;co*y6onY%afe%BL4Yuj9p`x@|`-uy{V4n zLoZ#vF)9A%2XLj_6)LW61#nZCQeG#u352KkaC?j}mON;7Wf~vLOesc;jYq1vANt9|~0q+M*xFq~iE8dX^B$#}}=EBAG>l}!1Vw^sx1^%3$>vy%+|!Zj!<8^hK<1A&t}bf#$%-`vcsoPA8ur`+6NljJqQT<0J0}K`)JmsI}pK z>vD_*t9Lj|{^c~HBA&Ujtjl+0=AD@`d!loL z`|r5FsQ|ZvQYmJC?eZ;c70}(LVg!?$&WM&c+kIw1@m41}pZCDmvgTc+@|H76@_)7* zcL9yj`Kk4e#wv^2YF6Ny%TNd+FRK-lU>Vgg(Wkl_BULXGt|dsk?$)RJ3n(|E^6$X? zquCl~`$J}?c-@loLT3z%wu^wx)N(hnzv^9 zbBUgbXkMVF*2zgwr8*g)XD>MkzZKEKxfhb3OLIl9MmEKz$%Oo4ds$qX4VW>4F7#b* zx_zl_8R`4MOY~h|{41>F?^5NqrC=Ab3nTZ2y>|p3^i;JwlO?RrlDqQTHQGOUC^o^l z$zATr!_7#Qo_Ei(v>kS<)8W1~_=&+VWqvr%A}M<9YphC1Nlxz7(!G_*iA!IxJ8*xc z9jUhl6L3Nd-%s@>pDA>TQ`~cB0(x6zlV@eSQOs*MYUg=IK+}SM4obXb&QIO{^oWQN zl*OSp&iTT<_(5KT{KQ^*J#cL z=6E!?n_rkNOnBrNR*{$~NQDXh_dK^U$@+?&)toSbH19b4y#{%Vm`y)N5`Kz@n=^2nGt`Eh(FWg&lz3w-bl30!)<$WLZY=YBv~s$ z8mk=ATFXN^t0Sbh+Cv8G^&y&X@;#nX__L}AGRjZFD8tdY&?YHo%B*7>(E%ceUZyU_QF@G@if z61WU2Os4z+xCV~PX6S+Yn<2Pg!b(rY=b6+#S%Kz6g7AkHjVtp;$f2Y#dK1;Rf3jdY zeZ&8Md&lbRKhjLDHd~WzWFqSdqMs5gvz#BeQ6kZ2y;}0dYVjqDdY9_^F`V9lcV};m z-*G@V1^N^4Ac^(_!PaOOD;@AIbG_p%vQWCW)3+Y;VkKz18K(-A+znwHya!KL7;uX_TgqmW2MPMGx=EeKj>?u3BobKl89E7OQ%hWW8JMWExs!!f1Ngi7xTvbj7gQL9*mT0>8~IVe>dVB2<01?U(!2$ z_ZI6uk5%uR@JNa{-H^RDr<~5)*t2&zdXJRG%aY>rT9MB{K@IaynzO3#4Yr|hnwP3@ zN6Dq|VXy@WYp$Jb#)`!FN@s86jIszlPkovgVamlT8}BTsqJ6+dunwX1h@n*15-Z@v1aAZD7U-tH;5Qar;op1CzH*_zxL_Sd55xW&F#p_IEZOPi zf)R5t`}BSV?a|KXy^_MEmzaTNz zGuY$W*IA5Np$QzCA@Pl|H6df1-i)rh-$<%h9x}u!&gi=14U)PBH0_`l##b9+jNeTK zUE}ZBFj^zx0!~Ih7FLWiHU|q5N$2Y)(eG_H(Qnm#T=xrxa56v6$wBDK9@kY0bU%Ag z_p_mU`5U_L2M4VP2cmxsT|b20^>JNEs;=-QDb?nw=%LV6af-i&_TL%Q{x7+%-h^Bq zf!d=8Pexx06%L_T6sK6MQpEWfqPRc0V^I6s{g#SGoa0mN<8e-L3n;z{YPAS=MK^sz z`&6F?CnZyT;^YnKzbU$Ei2heV|4WDHe+k#W8&rLuSc>3?-V$#YK6a4nAN?6lFhKbP zXx-@9*86IM5-o`##yHNtXv$?mfb2fVfe@AJfo6gv=)3_+Q#5oGL(mf5sJllJJdakwi!E>3x z7Edm}f$&GM$(~NneI8r8C<(X`)9k#@JtDYzshZjnTOG$kPk+@E&y-&6nQXs+8AH1L zynl@cJ7Gn~j!lkZFORM9h(%unntES6i<{ri>Whva9iVh?>=^B!>`%hXEs5`_El$K- zelneE&XR>`Q=1*j)3CA(`+sZOSW9QoaN@%5okjilk-0UdO?!uRYK)J5naq-8vs2n( zc4`o`2s(r^kA&Sfv(t%DfNsmjx~DD{^M`%RJ1fa^FzhQPijqx2I#S_tka)^Qx6AX0 z$L#z7A#thM`L1UrUw<4@@s=KJ@y<#ww%<%toHZ`b#+ogj0o+Q$UuIRhv0gb;Lv-mr zADm;rzM}f&T2+^?R*P>MX&;A1$-0;hGXTcayCvpB6Z7F?m&}V3>2_kXEKFrZw_@F5 zR%WJjV;#a)b_M87lcM8K?7v{9va5D(P=nvf;BRfaYl-fwv6uNArYy+#HzhCOOy$&y z4Eyi*v7*uwSVdNq;%_T3>?+cV@@k5&q+g%fSfhiA_R&mOek?ZPkfc2eB^HO1W>6rcYk#pi!P zarWNYL3T*V&KS+sZy2p4;&lq;p91OT;>M-Wy@GQq>R^xlp$=p z=Cb(iA^1;Tgs;0Se#H>{2ZrF23?-M5p?C=X9YgSiZNn~0KVt~~JdQ8O>1bo=m+5VO z)m(|*W+r+Y_&-;k3%KH~tYSIN9W(55+P2hsXKCOG^DLt#fF2I z=>Kp(waWv%y{nkQwgj8lc<>vRxu0Xc!Z8KDt~FhT-wl`WOMGgWcoCl}hZpmg=t^=5 zjpI@BH`|1dm;76`Pr~1`GWo)-T8t7SWgE0+y9^hP>|3!soog+fYi)U4YxGq6rk87T z(Ko$ZI~w==;Je5Ey}VxGQwOSo9iRb3zB{%yl$_57zk;;2p4GgEg&Ndo4<+zaRQ zP0a-|txhd?KN>4-6KuPe>|P-hCHb$wH+Q&63GbBV#|=1V{8~ALyX5J;IEs6u@V7gC zH~nMaZs;9V=c8+OILt?%Y*TSYM}uu?vkAK!yH^L}&?oy2rF`KZEq@*o;yIF!;x7X^ zMZbX4G{3~%C^bt)$@@ZDxj97iU#H)DUk$-Vexu+_82t?z%%6L7s0sQ4+`##{zF(Ck z0p6$FyAm{1>OTNu1zq&Fj7mi4M`|p_c`y;D;8^^mm$--U=J#bHn*e zxC(b|_iW7Ght<~%zs2K(ofYEmo#6@ZNQe5o?O*i77?jVSVoF|M=JMe5z!u?I8<(8=wO=^NA4o z0O+hD+a_#d;9QBA;D?1z_H0tjC z2DLw2L~Zr}wHX(vT?J}t-Bx^qnzyyC87pU5fcA;EJE712hrKtCkE+Q2hU;!gcW!sm z$?b$DgwRPR5J-R~39<^E?$GRl0cH?U69U)?2$6usJpoiu#z8>`!3AL)7aSpgGiJ~M zMI9A&y1^M)bO@rff=j}dhJ@t#p6Yu8%s9{Ud*Ao-dH;Hn&%Ise)TvXas!p9+ZY?Hg z7uK-w_}90(OVJ)Tu{me?De(_)qdOc^{2TmVMLZkPKZ&rsYl3zDCnJSb9ovQeo+cUh zJ8UVBIi*S`Z(HN-cTjRY7%6n)W~0o*v*tlZS?~^#%9gE}baFg&dNpc*v6o&zDOdP& zAV*p2u4W;@en@oXmSZ0&Fw@&MHhdM4YX>)Ondift`<8N{*Z!!xdQ17IjY217Zrk^` zQ)Br!kz@H3;5zlxY4YK09HL(_VFLekCQJ?Gkgh^UZ{)nEV|8@H#s4N}d&~PBQ3*vZ zVI%nV{zW;88arAfe(UW!!9D@!*vHFXou^$Tsk<>%4{4IF%&V+MyN(yH!aEw{b-eQ` zyrogEJJH5zZ*R4h5HlY?o3_y?wO)R;;HbW)f-`E?N&ch$m`#a$k_vbl@F)swsGGV3C} zxJ!U5$JuS+-ZOrw4);(CuDVDc%%%!`5<|#KSv-4h(zeI~Ci>#aD2-2uGv-9ouzpVJ z+znV!t3VT$Vr6!1$SepB+^XJKP2(lkA0tU_YAcptP5t~}Iqce~5WR2W z@9x33BT2T5Inma9J-#EcoEx#zj9TmJNaFU>JM>vbgfeeSl5u+>c>L*t;$OGR<)0F<&0F(bEc*=}xo|B;`E+Z763K2P zs<9OBu4t@-Bc(dug2={Oqp|jjG~ODGwRhw_jQO7nTbq*v3VDJ{{B)3dm9=wn{5JHn z;F@+J?0(}>YRAzViJn+wT5|_1P23jkdtHhx@%x+sI(x-YkFSb;6=O!lpBb2f8FE^$ zO@3c=5bWbH?XL^-o?d*b8zGiQ3MX$yi?zAD5hqJ_U?2U}*niM?_I8qS6LS7Dd>xa= zK3yIS5e@xbn9AwpdYTPijaIk3Uc&0vLN{^S*fG6fW4RNxlQ6cor90bNW_J7(rWtfv zJK>wJmM)t=zI5;WM@yyK_Lcf>Q_Gg!Hok1{ZI6~o3-*=qSr8V@1DtY+mAZv)A4)wf zSdV*gOn9?}alyOlm+{tlS-HKDT(#&;CBV|$*BX`64EJ-oTk53PJa2EkE6@dYDw+-> zo&6$i;1jP%WmNiT-j)aCHJby=McHbkA)m!=?)~tHVrCC*2W6E}~ z>S*sU_Hb0~lq$u_Oj?VMc;2tDPssDc2YUKkSPi`jUzKH7;)KMBFJBQ;ObCAEpTbXZ zLBGp~Q(PqzDzK6^X%&BaOFuw-@BZ)OD-mZEBR=c6K1i4Mq>>4)Q+`8S3(VKW@ff#x zrF|md-Kq<+s0-FG<96)NNPEsd27T{!Pv-E~n1*U7c$Om>P20kk@i$7IrJkvzAw6 zH8oi#oD`E>O>tQDwG`*2MYY19vPG%RR!sm^zN={?MkRuFnQj@@SydsV5BJ?KE5(du zplc=VP)+ojLR~98*om6xl|onTPnu5g|IgCUxvrk}S;OW@fqwnglu-I~{4=IaZODiNL#v@~r29X}E_TV`!b$ z#A!`BE%t|%$()vUDoR*eOSHHrlJm83TANOb{XbQ+ZjJepro@L@`dpoxnmozS&N)?_T7;4tnrv!;lHMRem>4)Xy4>`fLr(Zit>z zxU|r~(;ZB7e^**P>GA~FHP)vfl*@Ty<$q=$aL5go>=K)6z2dp0`4ku7<#TNIM(m_J z*+44<4BUF+8(iOzeg%%`;)3HEQaf?KKlc>qSTM65YvS(R2a98oTsR$+=IABZZuAoa zOJ^l;`f5svq}Hny653B+nS?SIupdOK;Fh_}jTw5ugKu>nCgY*~a1Q)B2^Ku1d_NM^ zHf@K9*7sU>h97tPsvRw}I;cGx<6a&afoCKh51t}CUOYZL#dt>H@#7hdhw85FZQ6O% z)^e!z3$z(kqyIbq{QnR9F~iax<*&C5bhajMgQ#t=24Fd}T{shtw+@fvyHPrD)ak&{pd*e%Nvjv4`G)M0UQqM4&pN7p}9T+rT@~kOU1EskWg06#}+^NCDgHD`I z7I#psx8*9Ku72us?rXzISBS4?qdWH;zA0rkPR@-BeH<7YAm1n3CTGy^o1jVtmDY&0 zaJLK%(#@FmU{&s*(7wR9z)DX08s$D(nme%%467%2jWG7-U8Z_EN_DmtYnqw!RM?2A zx~-JQvbFR_70(`hXBij{W(G#`ctUu(k!Wx zzSpAFAB|Z`0x6&DUD^0CAwbEU$Xo)i$DYlXBzwuZ- z?!ElC2)D!&-s|4Qe|_#hhokqE{8DSKucP5-NE`heYSW|NEm9C@A z@}K>b8QA|AP1`T|8od}>-yX<)rOBM0o*s`U2~P^1R7Tn~!i{w}I6a2agq;HT^|;UR z-y%153h*@j$bWrqtY*Y_4A^Vf>FEBlQ9;-{eSevVU1rxh#lYmi+Cchs=@VZ?32a9R zIL}tGiGduSv#E+%@jDqik5a~L=RKyS-Y&t7=kE0^^=d(O4#z2Z6ZBsdzcs*P1aPiu z@=~t^y0z}5)Vpn}l~)Ebe2swJtaFuHXt;F=%0@jJ~XjdJ(U-nwimq)vc9U$@) z*zM|1DqKDnRu-GFmePk^jZ3jJjo&-W>ywdR(cTxsm{1A~+yBDZ2Cn6+Edvv2;s-@6{`z6$|q!Xce<(5v?}qHGZ8pCD;@1 zZv34V%!a!=f2Rkt;CAwNX3zz97A$xFMmm2j^-}4M+<>}EaQ14n08YAeKJ3PC{H4?3 zJ^1|qcYxy5@~TTM?_BzxT&0&<*rjjCHThD@pD)o@caI16JzY8+ezhXHrf(_M%#kHP z?SmyaQ_=A=KQp5k{h%>;Cg7Qj2WM!o8vNeNJQ80i?1T2v8eZfE*7EW5tTJg&eELP4 zAyq{uy<`0yw=FNHFy|_qpAn@&>(OMn$WLdwf`3LRR%O~Xt)U0*^l{;2$e~p;YVNLDU-Or$BQ>p6T|w0bPAQ-|SWkR6 zwqYN&zmLBw_&$Q0M_XE+Z%Y8*cf;iSxE^Z~eDC40u5SC8`z+_uT7h54@ypwe|65++ zjBe9wIKMxLXD0Hk7J29dE&_NAeyPp1Apg?Zu}-ea)Uao}?QIo#Xoif}U%(v&dijth zY~p8d?b%Le`(IfeH0nzQkBgU5LBFxViIPjf-Z!4U219Vfn>$-L-^2@sR z%|%1k3flgguHkOV@zSYUu_RCukcu65uO5wa!+Meao5pvWIi(?nP7#_KrAX?eh}IRN zL;E{HK2@vS7WiX8E_UAi@@Sm*b`}1|tMDijicg*$$f}_DHjcJ&dT$M@!Ck+w|9fke z)=>Y_$G>|JRsvS2GRGBF(eFF>vgV_=Z&{T&{vF`f`t$4KYJ>q|mEeA>S+GPxL?^g~ zp{;N&_dgS1%mTa$nmwu5FC4`8-ymi({IDejIA5-Qh4&&TZ9CDvSjzn(W@ZHo?mEv+ zKA0*vCTyC{`kcec^G)8fAGH0}ZEcUkVF85F1qdc06OLCqL+i)h8&G}RK%bu`mWY^q6j(kuOq;UtPv)q=D z$j{)b8cqIHJMmo`(h9j6WO7aT{d5r$oDVs#kmu)6_bcT24)U0S7wR1x_r%I^bn^S6 z?v41)pR0gJ64Dh{FBG(dX+LQE#56%c%3=cju3sLQTI#7-U5e9|>i!ir>EY=n3uUZu zN=kgBZh9J@;nUA(Ao+yBLQe8QE6SGXX_tb&dSTdx?F=!-f(J`lQ&-R+3D^rVE;w25 zd7xz3Zk~RZ)ELbvN@F7AGmm{_`ciKT=15bqqjA+_!v6@oq~p(ojj-a7WfkJEN4@eP z-^x9eLMyGKqj?`Ou(wh!SiQ2owW+xT@6*jfqdC=7;0QSC>%15CPY;-iXSK zjP3z1sKKe>!77|ts5IMw+0kBnl6lUDiOPc8%OBq^bILz=QuemUobvVdNOC8PJRC0d`ee3!m{DPyO za||d>hBJ$qYs#YB$|HBX7Ufi?VJ-O`?atDi$`rV6Z*Qz+mW{Q8-^QIplj{7B_(Kt_ z9&OH2RowS79rGv4Fc+QcH}&e>C|u)+#JKzCUJTC6jRgJ0A4gaz>suUrI+Er7Hg{mq znK$U5>{=P=kKXLSMmuJOdWAA@8wkFlwAbwVeRG*~WP8_K;h=N)H`~>S;t>WG_-{^g zL?n+h?~6k-^BlYT=Y1ONhu^KQier)z_^!yy9{6 zgw0Ntl~+3W?ddfgEe~Fz6;l9dUl; zJl0%j5?n+5MSc%Bti~#ajX3x6cvX32YwFh(YrNm@|3i%lJD+AgngwXHo z!6VoMb_g0I&3n`)x+*~M7DBMm~FZ4ue24HHa*}mqj#nT<>rTgnRqD%kPI5JQO;(K5nY+fLlR z>KWx}ase|Am{41+A7_d-Plr1QcereAq}aKsYDzlIPP5aAb+N7D8MbC^q-gc;BXO(g z3ps1D)tQ?+3c8+@Af*MIMj`ZTZA<;mx=AOeciYz5dPZ&4B-l5M*V}95=F#wfrcGE) zF-?Vg1Ke`67p})~QatU){;`&A*z5R9YisL`#lrga-aSnxYWJsZZ@thoZq%NpuWKir zKeuSLxA35c|5hHtS?6m1M(k7HBAt3j@^q?IYG=~>8}TD%E3F=1fPd}^#{MjIxbDv^A}!mu5! zku$rz?DVQy($DfTS6QvgbvuR63@(qbZ8&>y1)aOA)gI^fAXqN>sclu?3(L(nBWGl+ zAGhPJMxq^xMsqM|Zu_EF%!!gB=A zAv|B;`3If@ctUt^R#^6@WKBj3y*;NNw2wG!^B7>jdKOM`T(#)GxO zsq0NemCIJXiBViv?CCjy9rG-wn$i_#Y8K3!$>+4xnzSMrH7zrk8Zo(P2fy!RtafC3 z93TM}sjPDI$_CDXa_c?LCah9yE|mVr zHX+pMX0bJKTK8gFacRZAp{k-GK60mU4mhJ8b`jS0VX^1Mu-G#a#>&rt(7W=G#lHpl z6*!cO+!~178jIX24v5#yp^L&l#2VYb5?Rns#=EOutmROF=HoW?NPQ zOQDOM$b%OyIymiyD`-uZK5QV`-~Su!>Wi4u@t`M%eFrp#6>y3ZNlk0uI^0;3j(0O} ze}ZV)@y)x(*!{FmBC)AQ!st*@+44ZzF5Hmh7ST2yjO2K}X?PRmzT?!ddJHAl-CFim zS!>1d9k_?W`KQ*?r?ukNG84)`hp7z8)Z$^Ym@~cc%}Cs2;N4QIa_)6+!hz`i3SWop z--gwV_Mnhs2TzB4nK$Xs9o>EmXW&K*oMF})DZ~6BTJfejI;Bh0PsB#UR0deZxO-?>DVxOA79&@Qq45i284eZ|rDEz>WYRXTl+h>$>3filyH12jBG5 zstCbU?6)*#V5KR}=Wdt$HT6V8w_Xkn7LOVf6bg4#Z1(UT)Y!t6m)M?T#$ zfpr<}qJP`P+9r>gp)Z17L&K(q!m>pbJJ3VKsf`DPp^M52?xLBNg4s zxm3Bg|0^u^LT$jBw#eJ87xK3k<`{dm@ScDYc&CEGA8K_rxGKNJS*wEUR2A z@VZ&-D$a#o&~1t6ag@m@SMGPZdZjQd>7-;jfn869?R6+MKQFaWDA8qTuYOzq3YSXm zsDr&44!s%9(>p9kC2~V+4(3h{pzn7IJpT@!ECcbvQun$%HKyj6%C_Y{I2Y|uHZpQZwb|ECD?Wtcp1r`Z6qMAI3LHI;TT;9Qr_`GMrD4TGPMJh2YFSEhyzp zrQK?J=+wL(L0Af*yyDfB*jd^n zw%Q81ax1z0!bY4QP>cEG{_aG+miG)+syqA=og$7i%!x-!NO7G*|N0EuDpP=7W4aX`5LyEs#6#X9P58c$^*!^wp4NzJM=MEsJqAPZzd9{JBU&6=}w_-UfJ6gs?qWMGap%E&ZmoH3iAZ*G4(_RON6kU@Qh zcC2ZSA4|A{9oDhbPiRLf%POdk(BAS{M+RIbxIXI0tQ7Jy@kMq3=Z-tc(ChdxY_$JX zZ!F&?tY(j=_@&3Cmr>g<$mz}_iRd9`P0r@&TpPiv;3{E*TF? zmTTJWZ4$(!dgjFbu(yR*0!WqbVkE56Ni*ncz>4}F--b2a=sVi#?EV#RIbv@bkzn5~WUvhR<@T0U zC{KG+TEfgA>pM9pV?;Q*$rQ`_9tw4VwwDDjw!DKq;DX<>F5XS|fMvjy0++YLvcZ{o zc+pqrU4IpEqaIRgPzqYyEX>`vMOcPqT^eZfI;0Ik=HV)qHzX)+I1q8yGR#$xWH({t z#Bw%=iu}?#tnkBHJKSTuA+0RCF(!Kl&L_PGXWb`dzY!+dw~>l%;b$W$ZmlU1Ct%v4 z@2>_;*~`PM@6u2dZ%eozcoDnM=!>}+jLlvWj?HF$A2_>cE2T$3>O8U1hHmq!XIVDv zm?iXIyPIVQJSV1gxXVlpV)o3i^bAr|TZB5+j?;U#m71ER~h8Cd{OictHC}dzU6>!jRzE0IgErStf0`W#xvIQfq8WJ?w&*{Y|&G zyoe84d{e`eda^WYTXB~HPCcRa;OCHl-eq$cN!x9!^!%SAmeo63FPt&s#+G~P2ZR3; z$PF>u5(f6PSe!pga25G$py$QyISs7u$g|?s_7ie;8_rF+c*2Z_Mr{wmE+t^5VjV_q zxR=%~VIA7y2=o*qtA^V0`>@Lcz0IAquKOs*Skq^*-(@zaRB@ku~JC-m4=eh)XUyz~Bz&$%;7tEREsgCV%jO+lO1-Gk9;?}tJg147PYyhNS|HkLuZw;ijP4xR_l z*0G%5245-OgKD6nS5;w&^4tGeA>8dWF{k~7a%~!4^%h7weoSWgRpvG`4RuXbYS>sB zErH=jE~kDfPyLu+Jx@J){TH`*Z#fuqRqA7|O1*Mv&yFk8Vx&B(MdvQ=LE0{B(a%?< z^gDbn&8)m!_D9<;=g`ipD6#AE3ND|74egQ-NE@Dm#>Je^Z6rN|j@=G^D3zbvjJ*C4 z)Z<4(=pJk^Qmt@xB8K8v3!)PqZs!mB0Swv=2|icI#vK3 z`x>{+4c@K!kC&3R6>x3)W4D`jkgh!iUE{YdLDz!Nwe#mm*U~)?oSnFp^?u;&;H?`2 zbm#Q7Td8hUUL1&&N3}kx8^6Mscsuq`UDk;iVb^^=tZ{KIna1^@1g$ge_z_-dZ+W=A z3Yw&0?N%HtU~PgqbfM)KY%I?GS%+O5?KSnZkITqgf!C`6ZJu35j)cR1s62DG5AE%l zMVkVcH^3U=m6whMVz>ny)7IM`)0~1l^tDm1EeWonZ8$R#wq1bz9*Ufy)i4A>i^&_K4@J_$XU_e@&oM`3pq=hxJFYC3Nx=rMHY5~)ilh#Z$Sg; zDr>&41Cbr9NafbIpFjABBpyjgcV!o7dC9b$kKf15&uz)IOi_; zEG*!?kMzrYymD`Ztv)o0oo=m-+R@$N`_gIuD(nL0bI4A}wH`ow+8B+t+^8YvFrsn_ zLz6v9u`#-2{Wk|QD_`|))NPycxkOmElzO8y zUM#>#+-HlnQYuD5YonIprhiLE>qV9`E0jGek9Gn=uiGQ|mcea|9Nbv?5l>$_m%m#$ zx(he~XP#0i_YDet`yHaP*y8PT=-aZI%SI8T;W4ai(0gAgV8Vt5QgO(55*$Q z!{95d+lJoApD_z%YSpSAt?!NUh@dY&rXIMKYm1-YF@Al5O7|##e|e(2|6x6!sg2ok z@p3Ld$*K3@1hTnHK0J}w^Mey^+_EdIrkQ*ZeXjPF#i&`dH!=Y|aN%hYeUw)8U|7z% z(6bi?q1B5y!t#C&X81+WUT8fTj>-Nm-1Nq?;2~yGuMKxwU6MA~*2v)E^moUuMB!;0 zxE#EIUKF^988*=D!f8@0=O^%72%f`_JR9*(#*7bEXG+gIo~G9BMVzUYjFE#DVtI!{ z#GwiOFn!$HkH)>h2A20}i27IoaQiSU|1M^AwEq{v_@3qL#*PWEugS;9**k6r}gi;6r#%;_sV-55j#Le?Jgh4mVE2tX;-`H`Us3i&$|Ycbt1e_=VXyA`2IwkVy#xI8P5tlDr2tC!?J5X=!2mDEL^VByCr9Cbx=9Tau)?{ zxr;)wYfspnTNN_7-U`pqY4%99xfPry5cK2*K=XQdPwrgMyc*U|?ZFx%tkZko=3ops z-GnuJwGYe$-TLqjoHug=D4)cMG5oZfvz~HLF1(&oPA1BQlR)_(Q7)VS%G&U7gK`Qe zZz<-KKBBzE3(6{@yk#UP=i$s4ou?0!lLkS?T{}RBQzB&7Oro1q0J>je_1QE$Q}A4m zS&B)>fr)s=10D-_G~A=`_y89H9trogc!mKU0!uOo?typ;01tqFf4KYN$pzdSa4)#C z@wmdK+#7k`rxp&KF=)n&8R?Ae{-3O2q4SY0w(LjW@>-n8H^n5K@GEiYnSL6u#bi5tz5cyqFX7V)VV*$y}S~ z9-nKY^-4HT$X7}8B{4yf??__4qIq;n1Yw2C*aEr>B8n9|v9$&7bYgL`h|ZzbC3JGI zaqJq}=`^Jd*fpH5vlGjvywi!LzED(#T1~)tpHoUDIyte28YEe2JNYwL9rvYrPkX5L zNJShzh2BZT7d?02Y3xIG*5(Gjthfee)n;KBiQV(5&WryR--IwZLh1TkF*9ZjqfMX_-Xz%IPa|%QeJ4e{?Z}7 zBjL~OIE4Uh&Cy6<@KVdgHp>{aFXM2Bd*kQR-K9IT-*eV&>OWnp`%RsWZ>eJ^j2ggQjEyQODVbD~k&)r-lU?1%IeX!pYUhH5i=A_7DykP($HgHi z(L_nETiDN;J=sxm%%8(U66G(@Et*p{`+q`LK7V2Lf6)02=1$*) zNmE7@JFAzJm(QuLp1WlJ{JXA<&sVmf*J5Y&oH_HHivx4GP(z*0|CH;$B$1;7W!27E zbLK2?E}C=O!aL^7{qOoK z=1*XA=H5EWkCJl_$S)`yc+H@}LyEk<;!%Fe+snAJS>?0m%q1ND;-f$O?df#)h`O%y zbh{G;+&;ntLFy#yba>zrJE8xhV`Bot<;h^hgny^?bRvF1hNS$A|E&x$F;918>pMAc z2gUW@|2k5lGGKoclbFmD7Q(I_h)W4faS9SR>%gjYuF$*f{jF{tcZD;j}@~~Y&4c-Ue8L{6gHJjW4~g*X4BaX zYzDiL&15&Ro7pWaoponFj%KFhG0cRM(@jNq=HMZ@1yPa>`NJ;WM-p)=+74Q#c$c1vRM___5r6dXjI>cEXEo;(JaQ9l4QG(EOe0^ zLaLA^WD28wzM;;X0Rx8)DCn2pZ_%9j1N!Foc5+~VGvA$GFu?5|!cIPKG!wFL!j5&R z)jb*eeJ?Zy6zLUzqAB)%c!`4PIh@id%CRd55@RPh7?TtM_w{0-0{@XSvl&|?pXtKb zVtGAeULw!TVC)XLJeIM0~27?tbsj#KQQSCs^CvnWH6HCAO@CK^)Zb8t>j zUPZh%Wgy;(%1X3}NlFP)swu}1%C7XoJ6So4uqn!YaCcEAL2`%k5mM1rc?oi+DnBA@ zH)RCGOjAZ9MctLnd5oniYtbV1P}YOSsWiZyq3nY@Q=uYrDZ|muWhoy3pRFX~-BVeC zAyzM?PbyBp5!ZGCu0RlDq<;ARHSsEasw!@QC@-kgOqj1lfgD0J}8%=N*|r)#S7d0`4ayRvYliYSl>UuMcf>nWISR>dQhv%{>}Ev( zhg+1m-i(zhN06&!$~p83%au&LXDiia#^xyT$bq>^5>j-l@*pG$D0v85p*)4Kl}b3l_6DIbM8GFfTAs%ar%8F>Myx!1=UXM zUX2n+u8mmZMj^IzQi$p}LcG>VA*v>-dw=YtkkqL}@p>nPq+%rq6SsC!$m-2Ru}w&N z3DF}K*)n!A6YGT}DmI7_qXvjzyO8t=M>NH%Pf|j52uYM&P^2*{xhPrjgD8hsETz{< zSwc)XvP%^HvjGoc*6Hx4NVxycESCIups(OaAWq9fW?P5aBJLFAXFwhInkfEFFz2J# z)h8$&9|=h-fv4O&hngyW92E+;ajNSyAf>H|)|Ap_1)tucW28*rXF3|cH6FkrXZ3wkGhZoq}= zA7ClOe;Dv!bp`5*_)h~Kt{x!zFNCC-JbsV56!l*`Xry73K1`Ml5?| z^$tRuFc9y_>b-;r8;B3(s5*WZO^D?BL{?9ehJ0_t5|q_Nq_8IqiqBGu{Vzr`PPpLg;Al54CL<S35>F=8M#D(XWN%LOC(zgN`jNEI&{6fY~$sz-{=tDeeYsYY3;CjHt#3d}Sb?pQ)_ zpW6)|iJ7Rik0k{6dDQTcndu(#Aq20;qzF6;9j0RE@XV+`q!K!2-0XoX1AHQ z2xc=d>Os^f^B)a5rmmt4ecga%^?jH;^Hu{ksYTFy^ELyvFx$T<+v)}Bui(quB#MYD zn80FF;I`+Ot3>k$6j>T-iFuLOnaDg!M706S>J(H>^I`)wsY9{=FEL4%$JP#hO0f%dYRh|e~-Eu8gK3};9}l(nVF==H%8q^Ixk4NdQ4Vdp}H;_@Kn`J zuw=l~c`wQ=OM3cds&7*I6~n(&T}IU~#(-z@R?Hl0#1~LANWDykf0e~YM$Bx$i+P)7 zjx*?M)EFusHR{is=cmwem@NhZ&9j9ltOf$j^GV9mcmsjv`3xZv48&@I*`|rWB;wm3 zG|#@=TqBt`qg>V1#QW|jA@#L9l$d)AShf_EjArJ04H(KYv6z|fGhmDQEA;No_e+V< zzM4(_5QS=fz<}-QX9U+8utQD9Sj}8#z-j6U@?UDePBn*=VVS`{OT9o=Y`FpFsLxUz zc+i0J)HS3m4;kUzmMK$`gobw9=bs1bfl zR9RO^iIiEQYl7Nk8vK6~4Nrv=ZQXXjmm4Eg$}cJFACshCqbl07%xfj{4KRMu%KnrQ zF~O+ZzcXOjLQ1jD08JJ$IZqp)MV$+?XI^i>HnjuH%^M8ZuAU>Eea3(t>eE!L&l+%= zdWdxXIRl1CI!}n_C20>Nw+GCBk<1COicu-wGU#+E-!@=bjYZeo{8s}usp~1;-3E-V zH^km!fHuph(SYAEV7q#NO7C3*cBqF4-fO^VYIjQJdj{;Z_^zAE%lWOWom}@8Srq`Oz`@PpwtQ;9 z#g<~?|Cs@gQ6Hsj{<{I=9u9a14REr0l#&-R;HhdnvEOgN(^V`mL{GthXQJUigYdZl zmjcd5U%`N9Gut^bg8YMW?p(5|$A4L!9Z`M6Fb#%@UQrpz=#B<`#_q zEP2v(ATomF3(ruHt;lz#EP~B}9E}KX87S4kBQed|*W3;5oc3GPCu@I8v@K*>HQFX? zz7ERTEg-QD)IpOro4~<3XwfPN9HxUdZ2^HJbkMF<6Ii5!4i?iB*2>0I9U5DOqX?o4i48MGQj6_(4&neRxjvau{M^CM%zo^J{`PQ8%8pJ#zAVwwChRe z13J81(6%}OAJpL$f_4B6xAlk)uY&q3g!q@ZkIJ?%KHr>*%A=J)g!n>Eh2DhLjx3KK zq=T~d0D(hw(4?)90A8zu7A=Cx74OkOn>G)s9PiUXd(z|y6Ii@Ig(?~5Y*@@F=zaVc z@g-zIqCI}1`5uZs9fcS_Ne{!ck5P#6B|0c;f1~)O>7YrQ3I&Ltu7egW2__)^Mjf=V zm=UlT@i&V-!8g&K(9irO97&Ta7O(`jPQ*v(LmzF1U6Hjyh;B0?Hfcu)G$OWWw?LN?l5La@INa5ZMp#P@pK0#9;j&)c1;fnaf+_N+A(Cm?a7QT z92~Cwl~VOP9rS2JfVMrYgT>lN%DxRcI7X`@R?q6-1WhGY&+Fi1?TH%!zK|ZBznH2G zMSEr2oE~i~rfUZjfG_IcOqL?kh`o#K5E2n(S9$^09WtlL3V@j1NWbkRkuZtw#KGn; zklGUPOf>2k(;U=17x8eP{!qp)pSF}ekb*LP~h>q7w= zt%pNfO5m?GYM(Lc(_TekCmMzA)YfB=lz6iqHcLB2Qq9uA9PKWOca9zwnsGBMbz-I1 z8wp6XC03h~lPEY9U>yaa|I$tX&T){N3gx@;~dL;9pnbID>t$bclj_)o;DS2itQco2~)`!cDr zEr)=D@(sihl`0@4B?AUfR-Q)yMfnm9YmD+0$~1w+)Zj-OCi)RLmN+CjwHwV27!~aY zn0xJ}&LVo1aJO_8(Zw49mUR}<4%k1f+$bXLA4t1qbS!LI$y9*1>b`buKlvK{42R}L zYP5N}ZyJl4hkB*mCO$>dEZ3Hp6Hr*Zc(s}gavQ~~-R-1|HcWtauQOVJY1-@56}dkn zh~#39Mth1PsC7oGVwQFX`7YIcbF>6lCT+Ryo2OY|LA8gRQB84kUC>rIALkJja$V3K z(R~MNKS9^ERT)t|8m_$nOQb!fgC6ZC%9Pbk%1zN#oaCEQ%(N$*-y`*+Yj%=vEWouo zxESg~1I?JeFi6_-Viv+AI_&+-4^rZXjK`4Ra?3Ogg!aoVQw0>!ez|2j3zK0tjD$to zv z88%%9AESrEw2^29?H}v0$lMazKk1ZV9ZZlt+Tjshun=#dI@yC#G8mbNTcXAOy?HaS zy&t)6KgEY6q(@l4#Oy!npse+vSbo+)6FwlK;@Qtj^N9}yx98at1oJ{CMjuls%0xjI zfvJC_OwtTkR{ugllMUFUdZ8QkE(UB-KZKUsyBe@fy^}Jkn*rO^`}zXzZom$;gtEDZ z0jH_6Nt_G=cB)6A>~@y{XQ}T}eAxz!aakkUTYE1-+DVC_B&0^iVfMa)uoa+^f~;Z6 z?a*{VnN0ewbb+!+iW9mhW1&AW#9IK4q}~W;pJ2a9Fw-}CmD&n>snCl6Xn{%{ z3VWH*lPVj`iAp^%`z)a+MMtxqr$|e1xlAIbcdFFmu+I^C>J5fUT@L$Pq32r=S#({i z4lD(HtI%@*ryrsId>i0^(9_T1V)fNq0apk;vpD}TsQWZQVCHrfP>=0Qg!*%*r2H2PSYyhtau zYtLflB-!XpIJD={;YhC0ebcm6_}I<>E%&B+hwU>1vcHXCrAbON%*{7i}7l0*$f z>=TeVW!?Y-LXX(-~`@CC4ZGhD-=Z6WbHSUJx9|PaIl28S;@z`M_aV1yv<5J zt`kq!en8Dj{#GZRp{-m7Fs%E|)HYIKecxj%j~Am*^gNPJW$oeMY;8I0Sn`i?J-8SF z?IPNibda6JRR` z`6!e+$jR-zA4MOcq4hL7lp@ntL5I*40(7MpFzn zh$dSOEd7wEAQtd{>CmRFO==e>(tnRB2RxZ-Z-Nf4yoCz826Iir+klpfl z9keA~H)RTw4gI$BiXH^qN)6D`;lg)Zwld&Fc8b~@ZsJ1f~zvrz(V1%veeYA113TleKnSKyAPVB zOx3ZX9Ak>J*zDc@4#ii>bS$lwRp60mSN56rAu8UfP(HOp6^?1tsZgSG1f;BW$S&nj zXLeDiLixHgyQov4d}m}Ai|K+=QqDv&6A*6JnLc&JA%Fv*v4L`2aMXF zSi^9bG_palm%9>Fps_~A+IXipcCH>aYJ+0u>ma%k%aM7pizFN&$V?P9&+IBVbW3R} zg}a-G98c+&LU>t}O}0cwmyza^fcWsgi=iM<_32XFDJhNjyBO&(X~PIK(qZ9~16`)* z#5O(~(8ZX2u%kx{73eZkdI-@ZCOMAAHRT{@K1P;0j;SnspF! zA}JKp8R@ zIU4OAIbwu_4}nt710^W2=%$Ivew3Z09LF0Sqy3co7D0IiRNY%(>@-7CsLybYVz~M09G}TPm+0}rZ>Q1t}sRo>-PKL~mZU&sA-b!kg zX25ys4dmb5fZfa%L24c8g7Ocf&u(#K2x=}mUeRP{3N|Cz^Qcr^f;B3qsQy4@lOp#~0QVFu(R9Y4Eue4zw)rG}A3+I1j1-w>Ft8@}CFFigKXf>{j)*6e zX*^!~sJQDtDD7+k~* z1yR>i(o6`E{sA;ySfsrNH4_wUUBJ0ppAf3rK)s~^^*$mJmLw%ZF+eq#P*YI~!kyZ9 zWD-!wJ7@X~Le&_kjfA?6PE}%0$M5qjm_Jz9Jb<{yZ4d4>pqockc6#5{bdQeCGlTazderX)lL9qXvP~So? zg{56})P6$EME6)&+EYgb33UV7Y+>mD9rYPdydv*2M2~0bb6rF-WLH%5Z4_!1mDSSm zI%+kc3Y1a!`M`rlEQ1A!7GnYPoj11K{+>>gA>0AK_$njJS_(rikkgl*41uQE5^ocA z`kmxYFZh%B$`C$6jwRj=e_nk)@AS_QD8~{P7$MIXK3%yq8A1TYCUL&uZ5?1Rb_tiz z^rh{O5rj-aa`G&pDIUZB-e!TT%sBEGfsE}+!=SE%AP--}jq9Gi0o&AMMc{f=PIUBw zxHJ!tCHw|fI@PPQS@oZ6K(ZaBlj_n*w*DeX4D>6tuTJuzL4vS_5IuE(?s4o2k5$m3 z)FfT3i{!z@$`JY@UEO*Kdj59JhYx@CfD2NSsZWvbbz&=n@EEe%;YGd-HK>sP1;_yV zMUx)>X2Yi|cj*OhLj}wb{swB$*f28 zZYL4BKy)i78j0*pKCkFRUlS3%;7^T8hVU<9QfbH_7U-#k&j!?%*gf%9{)u16ARhri zx{?dQZ-j^$LJNw<`m#l5UqnRofcH`>yo866(Fh4Das~ z_~%RE{i{eI&vxXG{TYMpHwN2itl2^pawfeORcm2Cls>INFUFq2IxrV*h>sDP3YqCF z9`QaV3>b)QI{$ngo1h56->2acZi<&!&Xb5rm;i10eI_%#hX)*(P>LYEUjx()arY4> zD-!i|u;)j(nM}P8F>C`1&JZySy9OJ6s_!O`?vzUOScsbC^>~i4Hz_Xu{(xNmc=3I3 z?>h`$6G1Z`Pv3q3%Hb%(gH!FEVT@=+{{EaojgFU0h@|f7i~=K#GA{vYA#I~~9=IF90>q>0oE7>uMX2RS8=GVgoD z+8;v%cyJRbOy&t49M7BcO9*%YkGo>QY$gni=OZJR03(1WZzzgm6&Hfu>+uNJ##{eH z>6i$wnV^}0hxP06JI0=Ycl5oH2uH*#eTM;k2M8A9>Dv#$qj0RG5Nv=jGY- zNY7vl>4x0My}J;Q4{Sd?QNb@*x!^N^KnH^r$OuP*pZNvBZSW((;+jsQ?r+6 zpf@5tNGnp%M<@}lW4+y=_&1SLWK!P&!f(AVKm3T0lEU{Zw>T+2!0Y2|0eiAAuS!! zZMVh=l!BR{Sd51>c=iw@tG8QwQdZ}I03!?5fBu{W6yzETAzbgqKFpm~Gwls4!7~mI z4vuBQ8&;JF9>qh8R*^eHVSj{Yt!9C`!W0eV&~tDLyF250)|x?aeE{rV@#Jrzp4#(P zUP0n9Ca~b?{S?AchDM78TmDAEatL?oiCCM$Of_B59RsN_e<)J%JB@n}AmAooZ@@Ds zyDLXdT?C|XeeQxKw-Jj9l5G|Im*dGlh#r)1SF~&n1F@fwiPSB>+iIeTgA_EHc0Bns zr6JrCMY@6LL&&9M8Sae+pAE!JJZM&^zndacPj!G`qCv|S^!GIAgr36;$wyeP zA<6#%YzR+O@)6b>u9SR)bpc6^p)6|yO;qyhqfwUtISx-$@{*{Kj{&iYkX-U9QRK@& zY$7C=d}=iKmq2`uhh5_(Gm&9UK}A!|4+InTljYX%825!eBE+>@qF zWr8cJ3-n>3AD)7>2uJBGE;AQyy1wK1FeOSSE z;MN1T?`kG*>Ab%-&@`531t06Y+d4Ur_7Lx&&fA7GKo~Mry$|cWxp15TyXJXP#n&y- z)Gv3k|Havxz*kXZZR1_tx9{5b=H3uP2muljLIO7-aOa(eolQCpgO|a!>#=zPBv?QEx1=AlngY)Hb-6uuY=r$PbOa-Q=uSM|kU++nO#Q=g_7V6UM5O?g z5ZL9fP|K6Rc_76u$NGt&m%*+Bps&nr9aL&0h;d)0UUq!h-2i+TBA$jGFM+ggrUWv+ zf~mJ0s}F&+?<#;6Ng(Z8B!P^VGxfIP%p{QZtpjK+fzrNPBybh&+wWL+5JdZ)1mJO* z8|~XBL5!bf>Rre8oNM16fL@nC+V_D3GCso8$By-dYu^!oK9fM&_oW0fKE~9)9VfL? z+h^h~0pHiq_WdS-TWH^5$2yZB+Lr}DCP8u9*AiYJWQkLqt1kygd zj13^;p-g@6Sl1KC_8SOLe+i_0!zGaM7^Z%7oX1`JCId8yK-qqiCGa`gcg(TgaqU|Q zz!I4o?OP#1jOnl9XUB)nfGGR!0cbsei8XL%E<8U!P76eY}P*J&hRJyR~?7Louv(bKj@s zD^8Ki+M${0PRxGm>Ey`2RLfs!DA(3OT&cxhG!(nVml%cg17@!Vx<(Z@x{7gd263t5 z6&%>dm*A2k<9Llbyj|)v~7;6#Ye}gB+ zJMaQv+?lDX9A^av&Z0dKEeIRNJOm?t0jMeoWL(44)sE*40_Q`t2B2FIil&0#8%3KD z%9nxo2NKUCs4=pa%!2Virmk_E6U>5R5Z^g`PXcMwItgUFiK&&2)2gR7>L-Bs!iO^I z5ea1cI8!$|p0Nbds2J|1QV^t3`AFm;NTaHds6GA?84e#f(% zK(_h^(qUDY%)J!jXEpjSTIH-lw3LmH|b80 z6w`o=<%|ah<*Q{F2!nd}b)2va7W%|b$iE^|mGn?V^ z+8T+znzz*D6&Q)(nzz>F6=E*Zygw_R7+@r3Xx6hX>;faPK=a;qd86?Kbdw|_iPppOH`d^!3S^@ShB__mh^!xXlnYvESCo# zsMWmXE)PC1RP)xmJovyE&3jbw-~)w|HB0s_o^5oV(G0bk6;k&m_?(D;R}1_CE2<&x z?}sKY!o?49JK2qCXk7$#)y@i?#eSFy#zZpZRXZzGN90{#+(zb8yg+A#Mw0ms7;ljI zF)z?rp=nglJp-GB2&&0fsn)FlqbHfN!*31AJDv-{I2WN}3f_=(q4@_D-}JYYD;rEf z34Fm$svLJkXG#$^h!R09iuRR7;VO|Ld~7O_szvQwQ2|8eY`8_1mejbCLQ3XCf^)*M zq)|#D20%dL;+j9()flA(czr}F+~f)_(1M;?u+#SQSh-zJAJyY{LX}((|zOW>- z9PvM7iMrnd2>pJFo28L>NauEq%Tkpt+^%ywy>UjtG>-jQp|F^hflmrGGyJ#0jl|4z zTu;slwWBNk1>7ePl+$K~&Z5)42gX0ilunx!>Q7`0^F|nC81C$B=f+Xj!^m=N5YPZxf6`PkU0dAC{@hkNb@9P>DSG{Oekgv zuAG(#rBAm2b4o})+16&_MMG2(u z*FoA2L#gN%l7~=cLNbGTRS%(luOpP!nx@k&H*d1hVp9Qp=#h?;i+)WBE%Q)U#_plvnQy<&~d#qD6r(V!Z! zI9grN635OtjPdGMbIj3TK6`HiLtNHqBFJvRtuO%I` z3Rbv-2OKbg9Ugh94|nr35|edS(_NOn)aU#!S#`uyvE}X24M&1uQ3sFW<^CR;T!b)= zl-*h&MWrMJuBrb(QkKJO^GL9oS1q>~xg}dQ7suM42_k0cx%=PhB=nCqUO;{<#g)EVW)m}wVH@+_g3TmfbK<*2K@zzrw~pth)TA> zcp}w54hDaA4SEacHxbkWyqOdmjOQ`+Nidj$E|w4Qz5?hA0uy`K-si!+AmY_hqFgy~ z5PV)0qZGg4{U$CD`MipKO330QBzf_;x1?SaOvuJ0#N%FH5`tT~r5b|58y2E-FbaOp zg-33}HN&kBUN_t(7rlnL&blcmcOKhfm8nO9zL7)FaCFv-fVmJsIV;7c!T3o6w*{?h2&A(v1Zchl z(pg`SK*l(Z=NC@}gAWl%-?$B+TP2Xb@h-(O#vZ+2JRLOg<$UF=JS_1rg7l4DNW6e> zif?=XCDUMx*M0qBdoY+b6dH8a4}d;|pq%xj1TyxZNyUy}up5Ci=x2a<2u?j6ic)Ma z#tSrlu`_61K_IW5)NDMmN00`!MWPMDDF&rO$ut;eQ~lXs@B!DL9zb_TFcQmY%z1{f z6QYJbxCVTB&qs>i&^=rqWG4|~!5@?d{lN#H(~$fmfAT>)4wt(DJ{ZO0 zL+%fq2fM}m;dp#FdmJULIY}=Db3Q`*@sd|e-d{jJhM

8-ntt2sI957Ax1%PL!dMSXsHyERNBkOsEGj&FPECtF&f$5-XGudRV4F70^wXk2zIv2H; zH*GUjoBbW!?FedBJ2P0yM*9Yg&&k{g0-2o6Ev2@taVv&Ux(E_6OI@~CfH4!HWa{N} zu_LLN{{Z88GN+MwrDDDd#sP#xXV^kB@)2OWyobOC4<)Z$^X34Dm6qi7*SuNa_0_y_ ziicmbe$FTys+r7eF00-q00S>T)w%Lx^}j;7f(~9L*T5G9+p@!Bxp<_5pa!Q4)!;M$ zjA{fq#XSdo(_s86g196Y`~(Hdi}Y?_?m|!(=>duj#s`_295i!A=!^6(06m2uFVfeM zcopH4i}VnbOoQ=fRG%6Q_N6*Ujn9BSjDU-jAk<+jM5wBIFo`>%+rg(xE>V2=i&{Uq zQ@}p$Vq|fronh5f*2I^UW(R` zlfrOdh9VeoZcb8c%6L41LxR>?0=dC91EA>=mjYAC@KW; z6cSHJts3SbwHPm;*6^U|842JRh~5I|4QdSmaT1B2r54v;#F{c*LalRyz9MRIN=s{l zp&Y>|J^+ehQ^qR^JTGX;>8u!lI6+3iZbYId8kF~{&mr^zUyME<%c+T=79gxZ-hBSi zE7(ju|Coi{De&1(4@0K<%41eFb``1<@@5j^myr5L!%H>d`_m&Ze60k6H(C+c!(yym z&(uF=Spy-Lx%o=y-n1pwYksBXySD~gbaAKnmfX^UZxy^+h?)n3UNHtvxD?xWi`W!m zH2uhwqD+owyTQE&A+bdJ>LaS0e?>U{EPaU-U+f(G)pu|=!kBpL)Pv$S> z(0@kDi%*fe*BU-%Ejyt9>EzHqpyks~k?V^s@rjn-bUHcof6($rPLab8R7?B*Q3~BEExn|n)bzVm@2kbj zPa}r*2rb^+SnO7OtQPM+jTqW9wD{A;VqNXR1zHR@b+>Dzs01#`3052qgvF6GY#HK` z#!sQ)H3hinnd2~DPUbxJ4sYCK1W02)~jhy?c{}Je-8+ zQc#oxY}bIjNkDRlbVrC+HRSsw#As~kM;eei#;v9XbYvm$rLQ%hQxcFY#2qHgQq>&8 zlMtN;HX~&ojt0z20#r@(<$zL3fnaOjoyqUurS_gj&b_R`z%R=R=eYP)i9s2NcDojE@j_!f*8dY(o74Wes+ zxf-GTWf1&I>s<&&@x`D{&@37MsD1~DQ9eL<2t}nJ zDv&6bT5NV=O&MoX>!jbhgIa9%;Q$SlKsGzYc$*6`a`TJ-_^sy%WV7=_iqj?VnY-cR z5UaR^z+e5=2?7s7v;v^z2t{vz*nq@6)ar5_@{m~LU69lmFcF|v!QKJDc53Vd@c|P2 z;gOl%qU)JXA@T0BjQ-O@QeO2FSW;6@FQt)u2dDc_^z4>y#f`tIb8 zu8`)vuH|a0QytL5@cNk+e|?I270Tx-<_9fzCaKCxb!6|#f79}~mb>=5ava%~#rM;4 z*?9FQ@Y1w+iWa+_=iWTD)bi^aswWrM`H*r!u(6>wtgenjz}xXetw!u_s88oG5`!V) zdf|N~a;NO6VDps*A4Yr54%V9O@?H;eTv%)s?4u9ClAv%7kf*#MP;iY8mqrR^4!-3x zqK)BS0v8u6r{U!A-8o3b{Aqko%3NJji3dmiFA*l7pqf9~5T^Sr-q~8KH!U_QDf$&* zX;R$O6>ouE&fVY@3|rR8@wmRD(q#YbGE`c5sD4r%)Px$0ZA{JnyM7Bj<3(i z>@%k*^Cdu3=)&p?7!52g&H8Qc4XjQ4=1$zuErT8 z<#^;I4cO6Ge@SvMjA+22#(?B`;Y=<6^%Qxwt|30~D+|b;sxA-5$S~3LgYek$H@A(t z0P~*&<}ZcOYvt87MxstjhWKIl8suTx|%w-Ysrp3l(SV! z4rqz&KU|JD!lWff{~+0~B|%)qblG~HBU+NDC9*$dZog_trIx5+o8?3>DzJ4%Xi2@* z_=yN9nR%*CVTqP-Kyq80#TW&XIdJ^y3k!TK$&Vtnb+s>^3N(s0gBP zF&;T16lH^GjYKwr5kCtQv8IdwUop2&<6!KosC}`0N zwb+1a6?8WI+s`!o{ecy4&%}5%A`_|2zKj8FX?C3&SO4T|%J);P)lV+2c_9eER$mrh zvc*`sD1ILrVl46zGM>ZK(?07Hnz9X|+mSWiu`$lx3Bp>vVUcP&;!K0_a%yb%S!tI- zgH87k&|9g&rn6SBhlaTx%|o1w4>GmaXPrxp_7J@Q^m7PBEkWRY8RK0NF%U<3keIAop40n8j>}J_P7}YE1%h9El%EoDYIu5C|X` z@iRbC5ldynnatv#&w7wqR6^7Spj?Eajv%@raTbX@5JQj{gkZ!!K((ldbu;38W^u@8 zeK7+-AAr*Unu1Vt61Z!SxSGT_Anrus4g@2<859*w8J9AP4}4bqG645N^aMbUQR^Qd zUP0m|5>JEp5Q+B@jQG1)>Qd2^aV4|($Y+gZ7RMm^1)!g(^*M+XEIYVMrmjR{O@nby zYW*7p^GfUwLd7FA`%z}bE3pu|Z4u;^Scyahg1QokH4Vn2sCC$9y?Yseyb^~2G(-Z= z$NlM56w7!OQ{Ve6fs3waGDLWwWlWa9d7vmZWxSTaAAD9j0*Q-fnw^-A6(gZ(^HFX`=f~M!eQi5DbjDC z$`vxJgvSiVD_TjdfLGTU)f*xC4QmmjU{@228CPPwISf`-7rbc+`$fv-r~_Vk^}k$- zvw$Et{>m@S7}cp@E8SRoK)XP9eOJ7MRF3x*sM~KA#;S2x&WY~6On%DKTs^7gi9sk)knaV_J8drj_QO_ z@B*#<${QBj;U)BxTIh>Tv(Xy+LD9PQAY@a?cloOifvvpcZr&N}fG)j@wVg!W_W@U4 z@(*v)Oa9Gbc6pog!>u^xo2Uhvd0*$|y+L;R2(a1dn;Np+PM-`RKbrCUAB3Zf>Nya~ zIxcV%i*&*$DCcd;9kBCAA@-`<8UBZ8=cKu?bFUYvd%WrVP@cJZeEc=cmp=m~Wb6Pd z?(P{SIr7@QHusr7)@dX!om)(QdQ(1OPZq`U;|v0F6K>`T)cXB&JKP$3YQ`;T7>1YHjmcXHx5Vh*ki! zoWKMt#}R4}MC>MYRm1xVX&t}p0mqSCT(@|FRnU!(A!nj1*bRIXxe*xg<2<)3<~Qz& zr7YTDyq2jeyw)xn!LB$2#e)cqyMi#&V7#6Ri*;9Q0bv-7@ogE&j-g1|6+a-4qX@Dq zd}SCE5mZ+YYZ{EVQ|l_PRZcB-MN5FPB#>Q!kD$R!#_uw9z1JE?AiIK}3rR>IyMkg< z#)k=9;kE80kX^yAhn#~TyJ7+o=|=UsLM_uk`}8*cFQbx{|;IE61)l1X1Iz zpk1fwilSV!d_Q!>K=?baj60BzcyfW;6@wdh#Ta>2FrLNKFt0UWK8#>jyamNK5gK;| zVWz=&9u-FDu2>2Jb1CARGZ;gAvB7vdQ{%kWw*;~)+5uD`fxn>TD8^j@;^zn)@3rz!^`bKXtO2MeLXjWD zNF+u`Ep{NWIBJ3z-_!Gp30`X?wb+5P0GdfHUP~*GST42LfyA0J-b<~CUh5iau>&^& zw2{CBn}i*BH$;s)khM8Y2QG@DzoO_sPBNURcOW0JXCW#eC+ViA48Ix4;a5#W&AfWj zu1b{XIXE54a;X1W4#!n`4o);=yTfsv_wH)Km4yxcJpLQY}VpDN^{ zV6fYOKtxjk#>DvDS z=pAa&wZB8+8>vOtCf1a3XKH!8)@W+cwS8w|FhwvDY#6%sJct^*HtVEa+p6lDC;f!; z#QEvyu&wC9!)?FFfJ#o4Q$k!qzv-TNcZEW0Os3FivOc zY1{gZX7Sz_cMQgG1buIe2b1!#0&zHjiMW6o+wrZ%MbO~A@eH7+Q$yVwZ-B=1by%jQD@i1H_s#-bk(YZR=)gIRHKl(31ovj-l3E zGd}_mXVBGEXc_q^!Sv%Tv07;Ic4Chf%O^4Z)y7<-wI6SbCB|y`x2KmE((*q;zro~O zg+|9)O^F*Vn=E=PySMh|p>KOmga z=){=@;}O)DZ(9#ggN>d8bSr8!ZuA$3GZ??h)ZMoA9yQqLU4ZV4ARE0u5_Jfw(TOz; z#`~ys55D<{TFFMA1kgkR6L}D^(Q_d>O{33&n2lbk#p*fcYCO44tkRhXNTe-%s+?_KRSb>ft!?sQ61&w-jS7_VTei*0>?vSm~M4LSW4;gqH( z&NLXWr$)JLMNyh;>bHS@iyDoa+7Gh?7Oz;=GBw(^dQpQ-{RPmUBgm%y9f|)UsHP?s zzczq4gIX8b)}_>dxjudyNE>rgO(O??wYr)laP5VNWOq{R)I`hXVg`h%#DmY$}m zH*%Uh>Tgtr5ISq&MFX6mTN>azqD;_NULIZZ~8 zvxD5@kV6S^rongyHGc3|3#mb`#yn;$p+@7T{((4y@kypy+16v!U{kLHdM$!%>TO6o zf}on3SksU(swJ{*>maq*)UN{cGJ%N-fY{W(Ky;d>UIj6mIt}eXu{xG2y&B()m!b}T z6ybN-q^R#7M1`!xAA6x!ho)%sm(dGX;Mpi2?DBYN!Jo6hT>~zbE`B~2{RB3PFW5Ky z$b-1clgamaaL=DO0mM`o`d3w?ZK==tI8f>h_JM|MP9qrZt1}>!tA;F{Fbal;kZlD@ zJXR(bO#b|GFn(O>mRMb1Vu>!XJ%nf)^_^f0zF@P&+JWz^vRm~>8%X!+CaPjPY~}*ijC_1;PKgJ;sg@Ckl3Y!w1&!^jcOBB zknP}g6G5FYdW#inQG;L97v)&jXm5P0kM-q~^xDhup}zm7@%`|_;2lD!oYNg1S%t5N zEyvT&_%a~B5%OG2_E~rh9-;Iyz{R(UISGtWWX>b=JH>nzjAzJ{C;5+x6drP|sKAO6 zq4X&akl!ojFfay?IV%;+9~AR0Fm6StTme&FMHqe^5KA2(PKYS;Iu7agRFfZI_({Zg zUOvAY_A3xd<*VF3E94L`29WtNuftyyaxNH`ktx6Q;5ViEgJ5hzNZ|83etsCBD@tW2 zsqG$hhtKVzAs8!+!e@Zu_hEPe5WyXO%I0G1siM(r!_uP}C^cqEqyL7?|H@Kx*;J{D zxgU%@Wa4!KLo`v$U?tA!AgC9})0BPv!017yG&-)BYrwb#A>l!3d?om}Hd^h?E5nr0 z*qg%G04t5c41oEii+bA$r|l9Vkscz^2P1%;gYb0H9lD#+9sZ1BHzTN5E2TB2&IjGgL97Rd^PPP{J2`j*1ED&O^7vMnQMn7LQD+Qu`5D{QTS= z%}U?|h-Q6U&pN7E$21GW3_b`X6@4pIUSN588vbW71r;im`j|D{L%KZ=k3@l>0To&a zrDbZR(XP@Md8)!aX$ceaw9;kuC6$21GXtv>OBR450ax)h7{!!p@uQ~^<7i_Q#Qdo2 zZnsGJXg09`Y(7W&P;1G92t3TXObdS20=YrU+wCn7ya1|rlUQ3cH zpFzMDs8j-4n_8_ZGrA!bTm167V34=e^2Mi-bEHUg0f28t+^PW>S*q*6<0ohn6Omwn zkJcBs5-eGN#nPXdO{CW-+$92{MSFK#tDAzd#HlI~yG-eyPzFFd#ihZh^2DNzjX~ZZi3NgO~Jk8Bi zR--x-Y}vDANU*uCS8`mp?wWi{bMw+)(G5RA&65ROLp zPy;?!fNvoDoPa)`+<{||nDuudhylX0;wG%?zX!ADZw(~nzk|TljBk8nh0SxA)bYr8 zJ5oM@PaZ;3p2O?_Oc8=ShuH^--U#X(<_?x(Fn&&J$#a;a0T_iK&tc9(Vh(~lhj}9s z{1O;VjbNcdGY>G6fx^@2W|-On%%1HUNXpxT*a(#k2+~yQ*isYA4!`fCkaf&8^)J9Y zg&<9R3yC)ol&O1IiotlF){>^;8aECjNK=h!yz>P@ntBF^CI~e3X*3tj{Fa#v5}uD} z>WggEeGMe#Z-ZzDl>!85Ds^nB`4J1Pa;$ryDONK@}d;w}XI$;Wdv(=r&JK)^WbNnZs$KAw9Vux$wP@!ZQu?53VP z@IfpN4j?{Bts%nGomzZ6_aQ*rtR9U7_u#6>BEjv^ z>WN73JWTauB)A1xJsk<|I#}>vz~QWvxaFFjQCo!CTSL$_LycZ)GV~)Z<=+JW_2*+ig~?dbg{Dpce#x zR{~pkNMg9gztaeh;=14lff*e=Rj@=00=LPU>k^<*hD9+QJ6j3V5n+6T3~T}49^8=q zzqwF?AeI$;Y(V{sCDyk_wxr$64d8r2$4UJ~APVey${-G|wdl)u|_4xhhR zoxCxgv^M%xn4mg%faGaOh3w#Ifb8he$m%%t1dy#TMJr?{(Exd-(8xUkkMA#v0NIDg ziZn@9h&CYRO_7BBVw}tr&|Lo))pGO z7Uz z&v7oGa1Dj+!;j5>B?d zDPbqHv*$1`5`I-c2@i|2D6HcTVMC^y^0El1mx$!H{Q3zia(KcB9AhMK6Wy7U;s9jeZ|`A^g-2;dM#jr+zJLiO%+}rl;_bsnT3+m)G00 z+U~<9th@RQ2^=YjM4==ul>`SEWU*AW^gB7AnlMA2W>y(CX_#RXm7&q^FBp8hc;qcC z{)~)5`aPBPMf*MH$O4XbmB7)efX?tf?`!m(8A-L*ELoj8*@~}OveWB6#l;Mu9QcfW z+c9c**HeuLa#d;TtseEIt+xis(&E(;I98R`A9eS3ry7p}E4A(oOY5#nyBv#e0MAou z)0={dQjLd@m0Gl+TC|~B)K%lxue_gdaN_Z2rS^$=R=ts*n9}v@Ucdzep#0@Oqu(7E zV7yOJjR&ul+EWeHo@%J}l&gjh@fqG_RO8EhN^O~0T3^~SvxjUF{v0-dgJs?NpTqv1 zX6h@12hNr1G_!ZT>NIn>YKbB2uHh_%FN`YWaI?A|Ib7viC*5ecDSx@p=r_FpYBtsS zB-L!QK`+~;zO;YK1oC@cay;;$3iw`}Szo~SqL(zK^S!uA%%*;2IA&D;0)$bxRTDf* zQuYYuScv6pd=-{mzLRK}&HQp|ZE-g4ZxBj5 zHUl$LF^7OLh|C}y(`>GolfamWVDx(!)1`UDhkEd>hq`y#NHWm`4p_$@8G%gxLZs2J zCoUXw5|Mn_LLn#lIudCNIu~}BqkOt|`hS&Y82$@At<>sZBk}wW8CV@<*G|A=D-iuC zIp;z+g#RK>SThpU_Z?Qp64<8B80ajH706Zf1|uT$)aNS(n|@I?R0=E52x#BVVA z7(y$Y$-_Wx8bfUij^Z;kvooXv_L>p4VCm%k9q9#--?u0q|2)3s{3pB{czbBttFdr0 zJ$5yWG5vNW{#oy{6^k>*L)|k35q=Hz9trjh!0cyzp9NM~Gt?EMH6nWvF&^JF$k*$! zFPT2e@R9!@g1-cjFajCYeIgLW{1~hrY*_b;nAE{9*M0~kYm-ZRf&+U%{(wvSL${-5 z)`KqXghCj;t<5eS4fbMwTU4Fg7hPJMC>3HZ?IG?r5)h`JS8QR0Ju5;~-_au?qv^du^6UGLHrq0Vr6YlRiVG8*<*h4!)h8(jU`P!;7Xtr!~%KN}xvIt=uU zN}s>7uDWzSq_Ru#wDu4+ZnCTvTu-yVZ+C?jJjt^X9v}7z=|pYCF32Lw;HyStXD&P< za=91fM4q7)hIL^!Tq$nd4Unr+D!!u1qi{tdG82^-hV>B_C7rCj5TumYC4r}K6-7CP z*`*E*z%L<3Io8>oH0g=rv&4qoRg?bcdn79~=|nH&(z3fIqtP|!W2`h)R%ua=&Gy-v z%!qRKvioW>D|(*?XjfQf->J!(Xm>W>U7D|;Z+skYLwsu}$sdyb!KQaRhE0P1>_eAbx zCq@o&5|6wO|41>cdHCl$%e)cF9_C;*Ee4}HmCcfp?K?j(1)9;XF_ic&&;}UMt?+5z zg_`t4PoiOc7irQTeIg8UoF<*Xog?Y7M(q0T~N2)?H0ZypewD@8ML2Rm)0*-Q?4VjDnb$mnULkQ=p9 zJuJJK*n)x0w;a&-VJKeY(@;q8#MkhR#qWx8x?}R93_r3$}+Xz@3 z!6-J|GyF2Wc{l;Srt_S#^$5Al>VWSQ+w#O<8Y+^8@-<(vxpDc=LS69Z zz*>LG@;7&6`cp7JL}>lI)ab$TTh!uOMri#ni5o`VFwg@Kludt04T+ofig!*D8Lr?}T7(`w*=x*fkyMAK9#pEpn%^!|XMqeR~ejM~82)R8`B1fkG zN2Bv_DYK=mq$}`uH8MlzzA~Ku~Qwu7alZ2Hk@^=?dcp zkhd80eDY)!#!VpaFQ6YoP*s>9tMD!8FA;KEqePCG|39nHR&-z$1~hgP4p{}FH?NQq zCE@V*GD5fxJY`6!G^7(4MF?5zAms>}^$-#qX>)fV!2uekVK)#7qZj#+IH;(^> z3v6nO{Xwi$+`naLzf*4<<-MS#?(;maLCI{Aj@a-lWIDa+nMm7%5b2vs&(Gv%X3Ul> zc?+rUH$8l{+HBSIW=hokqvt!YtR@lab2G#6`2;hx(j)uv&%YI7?5B1_&Ha40+w|W{ z1%H2VJcg$T|Ew%)GeGVguDYl7@SfIFoFR?-7Ge+YVm)QeSa#qfBK}%&kh%K|JA|~p zg$a3_Z2SDcpTP-p;bmXo{0ZZ{m5S?;_0=CR_mmX~KoDQ<`8I_5h?KW*cN*oKC*S^!THu$Fmr{iU$gtG4Q2$ z*v(E_AV2T{5aGX}`2z*vZ;@vE?j>2MNl*9?$#!8ri!pQk;il;7Ks;P2Nhi#20tGsR zM@uqlL-K__Akk{i2*@@v3~VPYoeSQ6AF36iOXpbI3l82~CjmZ|b% zQL(mYZ)8;iuID^jRcc<3Z0+%2q=vx=<>t&lT8JidP$ki&*+wYX)c8E7P`K z|C`}ILvT6|_6-QJ9sC$0)MSR30_(-zfNaI_wO9loOyMZ>1#)aQbvAxVd2drT!V_RViqK5{ zV#MAY^1cRr5FxW17mC;$XFJ_^4rT>}<})YYSC;pM*gdiS5F<2^E0(vLu)5~zfmth1 z*!`&IE|k>*XLzr~_;$PIy<5*~xl!{p#>fz#v6&xNW>-N<)9164$8aqvvmcjc-wo!S z2+G9A3)uCqg5E{mO){6VYha=|0G}cyPaa8qya&Cf9K13FRh1`YRc3;oijXxBCH@_m zZAO8xt9}jBLan^idZC3{-KZ(81&+D~em7bThblV^^_WfzZdLWj0-JTY8`+EbUbh~% zrn9M^2XiNas>iK4^z&~)A0bcHrq-?kK0OM^OAtPMAN`#U7knwc&Xm4$C3=z<5Ms{MrfG{L=01vE)xsY zGr3UB5LYp)DJrY4F~>1G2daW-)wNTym{lpFI6|wFK;@!6Tl(ws#O^g3qI*Z^jZ`BC z=U3)89x6iRGcpfpV>zOw2(9+BH1>-z99Emg0gSPFCgpcZIg?I8OSymZ;N_V1_;A$H zlV$~E9`!iZ(sL(f1;ef;Up;d5sOPhmodJ0{x^5P>{k9yGS5%LMI zr@=E_t2jdzunA!AHbgHX_-F>^yr=NbqaNG&Jps-#p5k-@lCz9d`Po&$EOP|u0B0Gy zD4qQJSth_)#x8fcdX@=rma%&`<{AOcGWJl-b!V9XXBqn<&2?uPX~IGb2-0fIGENuH-k%XyFFNKJaemy9=j=ljOWoV?D96pqrQ-}x)a3p5#Y@G)FG zv(cpE^dmXNPuuWp+1X6+R86Ki3rWt=WQMc%T99)!ndMwU-FceKc77#zz9#dWj+8FY zWP!uaruY_WGVWYP=@ptR3D3P`y5YOh$A-b9K|JJwJzs!`&_#a7^Qrd4FR~s(v!l-qj4*O4Nu5VN2`ZiUrZ&TI!*5dlspJjCeG=LqH*clNM+cHYAQ03O`tj;qy=f11k%O=khT_kKBg5XkGzgED5CF~V>?2I8ofb-7D>0z*C)2|e90%h&geIRsdJXi_Hpf_-r@|bvJDT*wHY<+d2h#NTuC(Sd2d;>WyH@WzfsTY9bMh?zTp5o zj^Muw5ta=b@h>pYw>$6^Dijb`4_+HhdKXf@RKi_Mb zbVBnq|&mV{m<`AMQXgtY( zX|g7C3CV++tPR44eeY?i&akR8AU$OL1#RVI_^>;E5j-%AU0fe_$8`%vxI6B{?zo~o zVeXFmusg13e}uc^KJ1Pw+KF&?+=tz9MMuNj9rs~(T+wMp3U|kS*d6~#pxCJI&mus_ zkGzW^$@j2}Ga~#kVc#Pz?TNhD8uX(s?T_?m3VNGMJ4VU}Y_`X6S`4}QSlR(3q>o^9 z*p0MP;KS%J2Ywvk=-|WXpp3%Dwpj^`4vO|fI6C++Iw;y7;ppJQ=%8pP%+bMz(LvGC zFh>U;Mh8WwML0V6FghqYBf`4VSJ7*D(J*E?pbBArta9UAitj z0OGwaIWY1etM`^m4~;~a{XUl-5otpDZI>Q}UP9~dcj+;pOL1Yk^mrrXIJ@~B3x_B$ z#L%Mcry6cX*v)B@1$k%zRPA6 zqCUX^+`m!eV`UM$GXf%ZCCtF|bQvxP{{vPC0zH{&bf8oWCHhfZ&PJ@ksfj=*t1AQ= z7OW8q36pbPtihZY>}`#KAW#x237m~NFvPwP4AQ!3p-0L=4%K8vXbH)4oA4?ybF)HQ(b?%blQg;TfX~K~FaCL#+a}&I^GLSQGZB^I~hJ-5zyb%3&qh zqaUKNoL6#GQ^%bl% zo%hTs$S9BzE)I+g!j!K4Fm{z_^Wow!Kb+8{Cv*usBHUS%{?IYZT4A>boY2OZAl)8_ zhQ?s12-j*bPN}rPkPz-`oj`d_)zA_y5@HQXjiqBEFk+XXB}Hr?Vl&nh%2q5J*Ruz^ zW$@{6LRb@l^-#gp?<(+Hz|hJa4WR15Jdb+*Xy z3_mXloxIjkrz?6k+*?=&sY8&fbB++Tki~ky1w?El9U=AuT-Fo20%?EjHpJ1`BZ#wO z=c0V9&}YGz@G!g{0X?TKe1QlYMJmFs4v!ISNuaMIyn4eIiF`IbIy=JQE<9G`vp6_g zIC%MXaayJ6$jD3KZMd{?j0JJCfhcfu&&MbGia8>RP zW$?+J*}E~<$l#MZbExLJPwq0_#Kde~q`B^sJ88mKt_gT@_a05)leszsZBZhzOgCNDhr_dpCoRl09T8~s@VjS$&B1&cU z^%PVkC0B&Uvevm~1YZR-Qu0I-g4y@a!V6Q{xN?7F$VH&@g>$yV2hqG-yrxV=-=wq? zb`Pj!4js_h5b;zFtU`b~6I4@0HJ^k@TEw$7bt$efe6&eZKf-TBJg%v9lq`x;X_yer zKW$GcM^W-YS`NHU_Iku{a)I)orbm{!gda9ay8n5t>KbN=RM? zX1Bz31$B~QM%dl*i><=mKwK>(p8)d_ae01-ZeV-05?_|Wm>XeT2JB}Q**vN6mfYj; z12RoUtr5hn!ut&~^CPogkxKC39~|FTZ@yltrqN6U{SOL`G_{DhEeb!C_3#YCWHg?*&Uj=(Tn;4Lfq7cuK7$s; zCZl=8brpe2(||h;$v$BABD6E1_HM?~&mp>iw&Y9^5qw~As$YnaFvk!M}pO~9;7;x;SLe zb81S+E&c*bt8b*4e2Q(|1K;R?SGmZlA%Qv4i)pv`Ho`iFGsSH1EDjtB)-l{$!iwjj zDptM=;FX~O`QbhiP%?;s8~L6tFE1s$(K)LdX6KHjd@Y*3&)nh1et+3-m z5^EGUq40dXuPjaBSf>Ez2Wyon`v@550yuanz`$T%1^AtnDR%)JjTE3fsBA613GHWf zZ~+|F6rh7!L>Cs3=K?rRDL|eJ;0OAxW-fq}qXIN@0h>{Txel+H%UY!48tuS0puwso zfp+hTRaeQwFx9-7@2zvTR*;(`XYm%mD7hA^TU)-SI-Ekj01L7U3Fz}dPYGXEwdKpI zToot?URITm;yJLvz83GcNgKGlP=ITF-4&o80Yxr=1CIg}xqz>*-u3WxIGMu<0{A){ zSRKjfz*pNq^rIxf*Wo;P9gY&%cQxWNz7FT%>u@pyg~zLK^?1ArC-KHvC<;HziHl5c zlXUK^wn?h69(Ml*jRZ&?h0uE!mMwlmLzo@qKTqp67~VWTqCaMN))nDos%KOVzGLJW zhvys%VFq4P^gLUDFC2JQpuENQMQCEfUd-jW9mXobw4cKqZrKlER`b|@N71(ZZ>(Lt z_Bg~odnVl3Z$FQk2JAtIgLWG5Av*=RId(Z7KZWhSSfoen{m41R-imUgb|=I!n+L{H z?ZLSEn%EyhE6pxOe1?4ty6N_nNH?_y!14_H71W}cy%~09+TTF8xs7{TBg^iM8nv+R zk7H45ufa`2D;pncHnQ!%BAsKuhIDJ&z?v-AuHevS?*_k(9YdUNFULcUwst$*1{B!4 z;Ch92Ph7<9YzuAD-k#nLQ@i~%Jgmq*4$F(}?UYG01@F#9Bs z!|gGM&$WHvjIcfVhH;)f8}%A#zl7dD-)@0&N7*03@(b*5bFgr*1#-C14#Km?*zciL zFS3tgfi})=jd;9$Ic_;7*b%hAL^~BVy4b!JmQ1qa(7nXI9lDe4e6;Wsdk2tHZSGW0 zbNBwdSEEnNE!LR^{+({$*UKZXIP!BQtn%d}(p!LDZvI*wn+?D}zdSyvc7VM+5o?t- z;~@(Fa6~?S$3Sle2Gsss;E0;~Pjj1I^umx6vZp0Wn{eU*g0a zxO^yYzM@G!gD*AAS2gL6a68a^O_NT9+kximnv6!c9caFx$+QT!1I;~}%!qJ1(0o&q zSrM+|%)Oe-4s$!ud`pvgVQvSS`!rb);dY?;wkG2dZU>tCHCYnjcA)uBO_oKt9cUiV zWS0oH1I>3dSrOrOp!u#Qt0LSEH2J4HKDZrhpIwo`O8%56In+jfdhi*eh|#I~KHGh*DfGqG)_ z=&UHW?M!Uj(L`?BrE=TO#J1fO+PTL3#tfADb(?+Xsu{7XaDkdfUD^{%rPlW@?T=RX zLAF1*v=gf=g8WC9j>b~i<;Pq)E!LZ69e3%B7+P&WlwM|BD%0An^sU-WYbwldilZmc#P@v7yA{X_+doHnxF2BrI*;z}TO7?U*h-G*&{|a_JGV(bV@?x_+Z# z+gX3xm5+&CL$~(2^!V5$;(cy;lVUk^1HUVu5v}H+5OC>Pv6;jNUHrV5m;Dn`atkjW z$8N_wWI8Tmsfam5gk8pR5&M!^L|n#75&Myh6qm6IKQu86Q;Qk1tS0E4l%*!#3cmsE z6kEl-@m9Fj3KaFt(Kl>3k--U?UvE-}6pZsM(QMOP^2#arRZIjUm& zSU%ngSNgTeS@Bjl8w+oR$M{ybiMPV3&(1OAgur*<F5BHmxR-8XFJ008828dm?4>K(iPCAFbIE9wd+B)nS&P$R z+)FpHm#*L$G47?C*h^P*R*ZY;Cic=5ogL*~x{1AXMdwAimu~KM=>qgS^2c7flEvy_MX{G|VlQ2h17qAvH?fzl=%F$0rJLAGSM-P&_tH)5r7LCnpxfA0yx`}OcMMq=YMmMpIuIRKVx6w^(qboWi%58KL+vtkUQtpdwbVX-J zxs7gO8(qbQ9a?qeGa_I3jmOiPAOkl>xj-1deB;7zCy*chqgQ zqweL7y5|9lXuYGZ(RN#L1JTQ{;5Tgf=>l7Ry1-VSF7RH6Rhk{Q{ttU!0v%PAwR_JU zs_w0-R4SE$B!rNV06_*LgMb7KgNRH9L_`HaMMXuW5fv2?6%}U@P+CQBz!8;p7RN@M z5fO31p;2*0#nx8ac6i@+_PJF_i2mK{z4hLDYjxJzmAi+t&pzYb=iD<)g-{rzySj%# z^hbD4KEg+~BD~kjxeAO#Dl$B9QNNRi!`jHmguFSdcG8!KsdUQtP<3vx$XuON)tgOZqGA(k7or0po<&il- zcf9$Mow|ZJH=_|}99ogHN@zYmnjArNehK5Ys|u3Kso{JhT%CLdwJCCuL2Ht)5WUQx zU6Rw`ykghUx{32(E8-wRCT>Uha|@_ zVK*6cSP~aJSdm){Ix<;`@k``(gEk~fs({{U&~eHAP!l4n4LTv&r3UD|2A!BZ80|dr zfI+7u4@37HdDx&+lN<0Vjy!76Y010M=|r9|==7w5zaCj@&>6{l(LqL@Ht4M68))&7 z=L|YK`4rI?4LT>;k2Y`6D7)R{7#jVm!RM>w-4(#!H24CQd=>AR$lC_LSYb>`!h7~% z$i_rLv|F$UWt-D*G}e39YAJpp9B$to)!wp)NE$DyUOwXKik+ zltgXNCpZOdD9Pm`!5${ltt6L^1pN)_Cb@hh2+Q72a`{LQmVF}0G%QcKQ6G&*dXQSlAUwE*}XFF=4BdTs{&UX3&}>myZNTn6RiB zTs{&UV?T^kC58oSgYTIVt|myZO`S4vj)Omg{1@M624HMfs0 z@8G3MDepR6-oeX8xLy}S@QOi)AUipxM%FS@xqKve+dc=13S18E6UDLGU^cQb$)iqU z*+%yeax0c?bUf-LmThz=p7!0Oebk9J1NFf1^ie0CKI+8NN1b?b)JcR#oy7au^AXsmhD1gD;9xvb zmE?y`*^Yq(`rgu869@M|-znIAtX7zL+D7jJxaC7;9Mjh|M*j1C)Yd`^WFU|EvK zo5bfvj3c$4^i!^Od&DAxFS6;e}bbzO)rsCZdN z)Kk}m_=SesC&}YY;ulv+J*rFcc$4_02CYx>c$4_$70gW>Z<52~P2yKnbkI#;Y7UP# zi7z(jEL0!5?-3qv5?^i~hA@fZM7Q86CZ6k&64@67*CQpeF9@zjN@QOUT#tkmVUpTJ z@`jl}!4g06o$ciq$3#SRwzXW zkN3IqWIa-v>yZ*zk2IKJC=`aldZfQFj9!oA>GepSUXSGI^+=vxkL2m~NS>@mN^?C@ z0_%}ZLAczJ39Lst5bZFJeMe%7>PQ5&E061u5?GJK%t!Ug<9eh7)*~@G&Mj~~QUdFd zCTsbMJiadySdU~nkUXwON?<)wOw0Gr>oo;9)+3#%C&jMeG{h-k+-V#Nl4O%)pVET240q#om4`~3c!=EsNx)+0TR5Qz#bYpX$y zCI_DaXCqsUTBCvIgfDtGS%pp}C)?T2$ICh=+u748$=S!$n^clZ6>~zDxggmV)itNV zaEp`47|^iqM~i+4vF9A<+zitaH93a_n`zCT(Oc$BF=4Fa6y#w}*k!;ep>fj;*H2>V z#L5Z#h(xj;%`qqRpi{|{DLm5%7bKUV*m6$FShF0ji=5d8ElXZZ?&$`tNPd8RE$2*w zR$Gx}=%;hea(cqV$k$Bt9ceZte=7-_Fyox_ln}llVJYp}AOsr?FaJwKwjk%#)V^qx zvd-wNtVL2Zf;R(s@Xw*3$8R3JH7n}q16T_XD#7${d&S!0Z(ec80 zMycd{QJv&$PSw=pe7t*ezKk8G&6t+_34Kk@*9M)gJG`84+DL~tLw9&N-x_q5tjqgH z8)*i!lWWnea(<}Xt|OY0yd7?5&c8IOooBi?Ilt=ns#7&zq1JP-Ti|joyGR`c16uJ1 zlziA$;2sPl{WS}-Ksh9paE)EETM;L|Gi&VhRQO7W>IUIk(It2;*#tegU5iLZFN;AY z*VvVCja}{@Ar+N~YwSw6#x8g7rc|qhYwU8z8EUx3u7sUm?xBVnuCdc5)If`AlhI;4 zm)NLSscuE2H(p~`pugsps`b6l5%I&iIusJE^yaqKYAI|=?*(F+`T@Baxiyim2g2$+ z3h{>-hGeu+qj!hrzcs4V&1CJxA68r(+_aUdBUJq;sakcZIt2209;xqyR2@JY~vi&ZS#T0`* zY9Hq8pIb4uOVI$;6^L!e7+hfuySFj6CGdgUE}AG z+06W^#`-(WJUzqAW@g28hS@w6l6y7NGz!U0A-PQQqeztc0_|5aca-YJH`c@-Fm5N{hL`!otrvDpNmc2uQubs}@MQ==-o72Fz~-s zg(gnuL=zW*cs@Xi@gP%-6RVCvpt*q4A=63s--nuBXNXlr#^r#e8Rp@JIn1ge;|9R} z8Rk^O9Esuv<37Nq4D$%XY_O`n1H*@*UuT#X80I*uii}b~0tpa>W=+3}f+YRsS7qb_7d8 zwpG0gETkd#WYn30VO&_yq}9C~$~SKFdw@x0FkcN~@$JIm8;GUFh=oP?GB5pWfSv)-VofU78+mke4E za218K!Jx$fS5Y`G8?-FoDhg+#K`VT&qHta@XtmE(6wW4t)&yKd;k;_lE&*3jIGYVx z8*mkc^O`|>23$qqyl&7w0asBtZy2;L;3^8|O@r14Tt(r$WzZo3S5Y`y3_8q*6X3jU zFte%JdB@>rkZ8hrFW~*0KEF6STa6GhPuKtFVE8np6u26i#Vi@xc%ShuJR?302 z{)UySzhUL-Z&#NvzDgH>EK@$O|_#=B7G!<})KQhRm1p!C?k-ZFB9B_(1 zGTfkL!S#qdGRmM80jKyQV+~pzaEd>&zd>sPPVq+$HmKPl8ku4bMoLVABS)%wXw219 z{JDCHKUYuj=jti`Ts_5~+h~UMNWU=;EPv@x(bt(T_i9iow2Y*M1N(LO=z2=akb{Lwv3rel*M zx|3*sgSr8y_@iOj`vIr;qhZ-60#5Nq!@^DloZ^p;F<}b=PVq;_8MHXy6o2%9eA&)l z7I2C`8Wwg%z$yOdAx5}5;1qxKFoV_voZ^ojVZxdnqS0gQNl0Qe6+JOHjwxXskDg@0 zSV2x5&{GWR1``v^nv^aV}@GdnjMJE%zD5Ein7f|$) zjK-DZUY60QqhA_6{EGE`Tex!&#UwN*s3_SyWq=>%Q?l3LfN7vZsOO;Y%>vWBczHEf+bw!H4V$dO| z5PW5!azLft;~IV2{tVF+sWO-ynTuUl?2FW;P+rIwz!`?*M$QO14~CpV*2e6Q)k>WN z!Qe+s9IU4de-IOo)5gh!&>nj=rWi(*OoO1R_Ok~(S5E|?*2km-r%=J_%D9JtIt0*K z`>h@PBC7lo2qyr_pvmeM!%xYJP_FVDshbbJIy0j#-|tCvw}N^TK-3kAx>rGX8Bj)b z{61opjG(#=(X4fU2VZ@aQMVylOLY~KkUW5>dnKx^TMEME0IiN6nA=eAHiRvgV+G9_ z&YG{SZ@Uke>I_83xs6%l;PGRze=%mGDs-~Xh<0MKRRi3w_RP1#qmqqO%s+~cf_SMG zKRnuv;;+DlmjDR#IRhQgLZGuVfew&BKO?}84Af5D%RKO+QX3cx|Ekc5t7kKzyyyT% zbt0%o0V*DmFo#eAXZNICHl=pzhGL-SMMTw*2{?!7APk(Sss{NZR-YHCqpA*guNDDH zuYjwAFb7fM1`w74s(wVxRSP2Wl3vJz-`V=BRV|voni9!Ti34y_Du6k1AVNw8PKoSp zGO$|hLK8QTp2ow^{06c!g}u4}x$TKv%k1kb=(L$)DUzXX;Q8KhNl#?De6}DWHx6lpifNgTq`p6pFv%Rb>S%bEm`qB_(wMK!%Wcow^q@}}p5R~sc zSbD4?ze0&xn+Oy4u-k=(v^yLc0Igfo_(xpbsg4Grp2P|v7E$F3AUsauP-fj@BDvdC zEQ1HMUQ5Zxg*Xg^A%Kpv5H*YU0>p~8$|EN`ehwP@yJd}Nn~Ya`vIV_F`IB` zbO*EcEOwg~8O!;HOrjRMx?UcS$d3e|OkSW}CCvie2cGJW_8{e4;_7lv9D%)Q;7Crl zc1=#tftCohyx}yBI&mb3>oQv2aQZPrYeDS-D4p6$hZ)Yi8w_QT}pJ=L2eV zyT3u{b}!|@bXc9#UOvJNGRpXxVPZd|GEp>0>8xpe47_ZBbRa`S(JT;-2b3*F7$&Rz zYCQ0b7}j{J7wVR6{Z;^%TL$f`(eiHF6}1MQM)>#P3<&){7_N-TLpK z9lrd32krkIwEw>vv~$RNbtF6F<@3KikIX|AOE<3QsU-VbF%$DMq+B z*h20!gW~?KBZwbo--A>}6aLKLJQ~MoHh-28!psC!oNQ1xIEJRrHYjFCk0ARrdtZcX zKBQj-S|M`~BXy2gqI2woQfo=&4~A1WgV{=P;1fNAy!SG^R(gjVpVsCekn-&i%$n}Ds}2%``ymo48A9* zy#b{^(uTX8!zpn#2y*}^A=Zd;wT24wn<=~x66*ep!hB~a6}rb^NKb{nggKHDhk|$j z018?Ev7?)gri~PHXub=8BbARKDL$#~45ltU1+kcheQWPL1<^VdrsZ3^FU21~4EHdW za`iY1Xq|DgLD7Hjf~QW%gj#10VyMF7QRe~Te?DVtM|LI%(*QbGuYeSEj-nwWn(4d` zLh84S&JngY+&uxA0FDe`N7(yO;&>3J0Av6=!an>|sND|2dw_O&u3=Q@;!m%l#jN<% zIQ=={SE>3Yw@NW58N6IAXEql%%btmFd)1V9m_NmKAExwbP!|JA+20_{-qf%Wg!O>- zvyPhq&pb3>4u&@)sCrAY(EtmI6RJ{+wy1h)w*G|kbf84?@E!5tr-3*H03(a3X;Cvx z%fVA+iBQ!dHJqxR0`&=i49ym)18L+(AiNKdq1h6pyPp6b(j0&;BlZND2iTrw5+^l_ zk+vV1iExtY&j<%YMGt`3K3QzP1B4p^m@2SYmA-2_B>Dg>^$Ij~)NSdzfmGD(L|6@| z(M9=vI9ThX=MH|*Ccg{zD}YXV>fi@GbFdG_{e1z}E@}&-TGTYE=fP4E&7uK}rtl;X z020lTrqNufqge;`LjZ~9N*zt@$!J^vbhSAgIK7DhxEVNg=r04O9gPM~t>*m411Ib( z=d6OhXS4AqPwXr|1@y+BJh7?#GLRbI6YLB_i8;MXI)NVE89W!y4+FwGgZVks?W=F> z#ph5?RlN~%b1nB-JO>X$i`%ai=|<$IP$X)(pHpNiMe16Su2ihd+szKnQ|KQD;**}& z!_K=947`;S7eLPI8RBl@JmS4V+>hfUqPKg9Cip?n>m8!0#7s)}3Gsr&65@SBycp|1 zN!WvZAc}->-iQa2Qg0ESV>KRjS`WsDmIQZNd)R3mn#P^h9(Gy_?k2d?+QUw3!Tkhx zT6@@OEqEf%oz@<9S___vbEmb3oz{XEB)HSs!%l0#aic^TaO|`eye!V0)*g0R(?ssH z&f!jL4?C@IrJX5ns~ubeJCO&wS>6X>I4jYsGsHd&aTomVmbWd${lp&Re-z>g9JRO$ z2p`){1GL2!d)UFvgA{b$Vh6XFVBZc5n+`kl+q(4?DO8FHUd=w}&0vtbbT#o!|~`4?DPpUy?vIj^Q^XxP#ln4sMYjm*5U=4?DO8pOD}VZVx-S zCBBIX?%>8H28KT+!5!Qlc5sXQ)C6~Md)UD(>6@0QWc9)hZsE^}^Lx679o&M?N^l3a zhaKD^KRdx4+#YstlkZ@+T7o;cJ?!8X!hDtB4sH)SxP`DlCAfpz!wzmCT&xn@!R=uO zw-B&{JBK^CJ?!A-z2^96%f2Uat@;}ErO6j^r#~86WVy2$jO=G{N=G}YPTv3Y89ds> zu_2UK=64Nl#Y6fsR33lVgyfx-J`rVw9c_ZT>B*=X*wH4apPovzk3kdZqlxx2Xexa? z(E$c6NS{b_ph1f*r$aUHz3g6$zGu)q;20u37B9M>rxCK!zm@~-ZBRFTCeb|%>Zcbt zK>Hgsk^V6SwBDep^s%jh4mM~(e#6L-Rxq@PiL|Q_{a*QC53}!M^aa7FU;(2qM=l2Y znlM)Sg-W1f4eF+!WqkV^)K8B?y$dE7G?7k20k&F6-lQyNKpWtP*gZhbD~NRq_*pQY zTM%QlM#xHYFcRxwP&dsjh_T%b>ZiE{5qpv-{!i$81L z9R+$#ag1w<+whgDf2#0g6}jwii(J~$O8pa6C;nKzt|n>_B^i|&UBvNqkti*_{zXQ{9BC|u>R7CoVP3xY9{_d{9w6C{3E#y?UJg2?+nfR- z1zKMjO14vvQ)gQvIUjUNGXpBsOtL<6B)S=g;H<~VmfxRBx}raM^EJ*Vj#U9qa4o zpl$+Gzrz%6vL`Sx=bwgsLx3v%QD?KQ3-4(V9s#so1%+&6t=EPR^-zB^Ys^7-=mZvQ zIGNRXJUn~a&;>(BR*mTCAl9J3s&#E2ul8VVKL^yq0TSH=rK4Lo$Fe2^s#?>q1BJNy z49i*ts2b0#KS(9{8hHnV4S){aCc-elz8LpNX6D%1WwRGfw^~038?@PPh7aF`5AMN+ zRUbYygbypiht=W3mhj>8@WE!h%#d{WFgJX-G<>)xd{`SkSd&bsRQND7d>9`-oEAP@ z7(P4`KD=%oFdn(EKQd#Tqx#SYwRUU`aemIJpsR7inJV0B z!Dq$jRy%O3MSgaSZZ$6M(tHPQb&PJc1Gkz1xREVJx7vYQErbOsMz`95TP=i(Rg7-6 z1GicTaI52Vs~x!2-$4nk#NsF$->~|jzU1hIr%73OYFud}ffc1kQ$nvO&Cx4LbM%VR zoHZ;o%b8pOXT6Iv2tv6$?&J|Xq|9+Al3!NJ9Csq9n=;3p2Fi{nm0jSmn#+MsUgaiS*})KA?-be2J((HwU|CpMSIoqXm&qdD#* z)M$=7q4`)SmomqlFm4=ok}}7gh;Vhv9CspUP0Ad1B50S?bokCV?nKbqlsWE1(4HxC z+=-xlQs%f5LF-cHxD!F^Q+rd@^+wf@)Ho*WCW8)3nd44Gcx1{PcOqy*${cqh=(v*2bKHrbvr^`` z6G3OE%yB1z&Pkc$PKdImr_6CDg3ni}yDJdYn>s3|YJp0b<4%N+<4zoN+zBr#%+qTF zqwwCzR%!JrI(_vV){C(UhkyS>H?45%o|UiPb1y`+@-}C}B?O?S!in9eADIU$t@fv$ z3!CZb2Wj;P^b`&k_8=mYK|L5C$}bk>=YntsAfxjS9^jO-(xp}2p3r|nvq&F?78SsA z5dD7={qKVMR*U+fXF9Fx-b~NGsAo3x6n-J>K}6cl!_ye0WEEvxQ z)JlC%tw(uM5|;U+e;tMQR@iAz&F#iwS_ajp0`hM|rmLepT^dWyLWTkI>qmijtPuA+ z8%`P^{|YKUPKf^k;cq0KL*fZSeDE9$5&#&_^RnSp?6t+gCIj7n|=;YvW6u2;uuO%3P5 zO97Pirg_sft?PNn0zg>b(!0F^{Aoa&*AK^S z0DxZ*aky z1$Q(4t>9VzR`9HUD|ptw6+G+T3ZC_EbpvbU-wHqL-wK}fZ5j zv;M8bm-TOjpY?AA&-%9#U)H}Be%8MgJnP>Ip7n1fzN~*M{H%W~c-Fs___F@3@U#A{ z;937xP>*jMSR75;&~42<^OwLESvgWkz;4sGrBV%*@WHL>}idGdrWq zTxMi|^Eo0gR!4>?o_xFWMYWN=oe^N9)$?dP>L1Nkel7zm|5V|0)gDj-?w$RJgpXDB z1=wZ*2ya5RP|JR-YACxGsQm#*3C>Cf7ccR%8FU>cWSB$Y-$e}G6(n3}|CnO^?fDtA8x9jRB`!O?w7v&O-2tn55B>`P6bX;fP*shJC!keQU!~fMp`x!!^Okm5;;$rj6yje%SPm%Fg;68Ky)Qy}18}MbPvKBEL=>GGCUXJEYKjlP zLYKu2Rbou}fm*JP95tq`w&f-r>qZ1v4`{1RS*d9b#?1X3wiM9Z$T;{eN)Q z3i+2+`YS|+?>K%G zZnv{B;imqi1+kw-Uaw;A>PMd&<^

ACz(aK1JC8#wK=RSe{;h`(zG5Z(_7 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

{Lh?+aX49*%WM=0ZEUY~0`R z*}*R*2ielQ7eI4mwr0b+#4^&X^JML17J>dUQ5RE*^;M;_H}_)ZcoB)!sJ9v{!)Kfd zkX%=T32H1>?HiaAc#@YNI1rn0wm`Ib19O6jTM4JJ89YGi&L@&m!CSWnDK^=&3?@ z7$3|FKUxx2O=Yis86yKammV~xabwPRGp3OyvaQ=hG+Sy5=Pn9|%=WSvnc~n!wv!j3 z5+}y5ah1cpI})cLTKE=Q_`{{}A1mTH4Hm0A9MOLs&Kq!lzmy+lA1C0aT*IFlHuhCF zau=A3TfKDwzBxSaK~XH=dwylUfa#7mGR!k3QDK@_0ewjhm!OdKUhhzyO7n>td0 zaw=J_nU(-?+kS~HOHf6*W8^WbE;iig?LRE8oxJ|7$Q6!CBoqSz7u zvC{Ip!r`5;1fiRoMGZSJ?%S%;%I1tpi+8hv&$3u)lRB$Ig!b!E=}zZ#HmQMaRs&ZS zveK{ zRvg?NvLa_1+VunQ|qbHc?3aN2PQ|OPCT@Y@3iQR%% z77pVe*eS}1(2)i)*&?!{apE91n=(p?N=QCknh(bQ5eZHevV9-2r6lm2qOBfoO?b5* zi?mx_iXX2-FqKK8F%bMgRoWPEVLuZM@<<>sVO zU&NXl%UaZxaG%Qjkum>i`QSAVji|E%sOwz zWb6jR?_55B{``YL&pBiBj`$EgC1IK{kSK*T(%!)A%{;GR>2Ot~Si4^QVT zeRMIdB0q#4K8b2`z-tyN=xF1J99G)-+5FQnN=6+RFZM8|@(WqE|_Rh%?gZ{D4x zExWOBd=!2}?JlLl39Ciccy&E5G)Cvfp&77BU|G^Ja)uoBRF}~1ys?Hhs-^03PYRW( z3&-QV*qD)L7r9&_1x|&l3$vs=wM@lI;l>7@>jUL+vN<>#yG(lc9N!EXdGW4=>BP*F zcX}ry>hKgadkEeiJ{NU4CCW9M9oMawmy}H%?8UI&;^$3E3m~;}g011O-Q>N;o8O!dUx&$xqVF7onu*n>8m|jxf+MI*L#5tq)bSA(J)C}U z*@|{aP(!THb;MBkLm-d2Io#*v4HKD~B!ulbZq-QvF#O2Nl1utVcTv{i9W&;cGDnAY z%5(e3xVk0kz~8QD`Vn9?vpa6OF4PEDsUW4gBfJ+Pi(dXqwN_=(2q-67>!3@m#k>&T zAz*n;F-4(=bGF0cr@qw9W}3+YppI)w4510*7fnb>zEqQ~&;8*0w(9d~2d2<}Pz-Sk z>36KqUy2p_xj^)}m|FA8gNKzAdTzN!pG%D%Rg6znMfg9eGaAj_NhKR^Mw8`luk>{$ zn#kU)(;MDXZoTiP_qe&Ii6Yy%VMg>pc9miWdXw0nDvm?g_+S|N%gak)o7Zd~$sC8w zFocz1g<+_-!Z1XIzL;-<;Uo6mK=kRj-ChlfrBZ%`-C>Ei<-KW*BSzp*2kG&+3#D8* zR%GpuN4yRtli*C8#fi5Dht%O}jwWGq@ig3dTR&iK)J;YSc#bt0r`X{#K7fQd!%Zn* zox?S<#WMlQ9#pcP~j$_a<_74E%?j=)gf zDX%-mFj?CYb>VMUbUX&j!bj$IOIqB;JV z@)x5o{P^406&*w7tx4w9^P*^Gf_J;+hPE2s;qpWyVKWEi?JxG6fNBiupBq*8FmbNn zNmCl(4l8T(1XQ!kD|}@DXD0L-ej}qi8Q#T=Xp-rJXXAw&&4pPCBA8_hcEEC@BI8~z z)DlYOY8RzF(!s-dQZ-C8Cw{OIctq;zgHzyjg$ zE0CYAY9%*aV_?mLtlq~v#vhc-4T5#U3dW8mOh3TtS_GDWhvR*7Xnq!7GIJ|##EnT1 zW2H0Z3J{0*x|CepprAhzdvWL23yg3}I~*f?L`7mpIW!TubBF7SLhj7&M6YaF6ubwS zn;FTS6=^zYHkcD7;*>aIvW;LS>=MJwvcjX$X%LA$8j6=QUUd=EH;%TWqnAgAP&Kvt z)nX0F8^0sChGba^;nyzb`ZHIIUkxZ~`YAr`IJ&VBhd?ssoo~my@KCPU@TD`cyUWi4yl8jMGOlOkDdAZsRX{H*e#)QT{#cH~@Sio){oa^ArXmLF#h$D$nL zT#}^UXG_)=!SJQgpkEW%=(dmA(-#mHv@STyMh$(T6X)Gi~l0 zaR&W1iNWmxeqVCL=NuDPojZ8v%V=l+)N#k1_o|{!9yu5Nyt;6%3IRtOYzEv_$M?cysgCV1 zRzv5PQt{Q}2SKF9iGMKp%0n-lJFz5I715ouK9u%0oCFQJcRP0OVtJqg&n@#wP-uvU{{zSTN+szik{{o9H-(FYO?Y@sf2SRFGa)b@;z2^Z=4^V*kL`y`v-&Vu+RZE z@USl|x{VS>sMR$3$*n9LqfnXIZj(>5E1cCl`5TwsK>ru>YvPp&tQWjX&J!17d3yzr z>0?UKna?xgFg=w#jL(jTxMhG<)N*X!*vawnQ(Yd7kWK}C@>YozSFkv7fxzV?IQzu* z1RFgTN4VdD0Ner#O&|z;K(_LkG`8uoFLf(q3ArO{T(1EFg2lNPCrl~0Pa9&3Q89v> zyimIiHxE!-xfhmgW%K44by z2s++2NIku61j6XVxF@y$l8%3q@%rIPJXq@1`ff=-jiaVr$J0+G(HQ`Xc^TZp>o3RU z22Nl3C|}lArEderi1=&X_A;`V z$K;dUWtW8A&5*1Ztd+~q=K63NucSe2*?0&Wx3F1v;?RQAq7UdS_5qIQJYmM^5w#D` zvZ@je<0Cr%7057f!{s=u;zklFCr6Vs<)n%!yFoYA(jQPxZ;HO8T@nSf6E`AOt<^#$LFN5xiSH6=tYdkJCEObukak=mknX2kxpy2fhoeRv%0%k|U za5sa`NyEGPG+bEv!oi6TlT_)TG6@U%k}_2l z+`ZSPL=olohkjf zFnccvU&owW;5tRmk=K>p5QBbN9Na}JS>^BpQ8=!{Th~+1$3C19vF>yXy+39|Ge$r5 zW4xXr6gfBO4S88z>x*V}6pT&+)dx!v2EQ%n-qnSr(u`9}6g^f!G_~t9|GX{4dvH)M zyg|iJR&&Jwt{$wz5FB2F3tC4)+<1D#)noKhlZ#k-C%;yAoqP(%1 zzLw}{U3|}&9UaYD>ZBqsxW+)it`GI;CWEDpK|>cQkFxw2L_M$%;YmSREsphyh7U(> zN(QeIG0$Q~rD%x)e$O4DHU;u-C+0A@Te>xrw?6#D+#;?NX?a4?8rr5W#Pp|G3rrH7cJMMB3H@c_^fg>VnvOOAR~ zje?>Noz0Jd$iu7oa68tQ{Pas6I|M!<6`m*$Q1N@Qw$>5M0<1k|1DIFn0~vf=XeG#I zrpPn_s+O{Pe}OOUZNe^>5}hosmY)CyHB#GW=@(&JzQ zyDeA)qQo)8gS9#DYLf1`m}v_-0on#BW}!NV^D=6e45|MthJ>kaXjAk~xDROdA8(H# z!EJ7;+-^y)z57Ohz3gv4HrKg3ITw!@Ap-?ZGe+Q}of@jf1~ptKOKO}!aoUym8^nvq z2%ko08`Xz@C`1_H9MR{~M8o+CiV21w!f_>ElZneO&}Zo0aWHm`j8o?ZI7q|-V&D#@)&pYwb~2_8oMN0N_F$fQP1So; zm{Y3@8)d-ar-w1r%A?sBDkew6!>?aj!a}|{0ax0Y90v_{3E>X(pCS_HhgiWQSLaKewbPw@npN1ifkN>L8c zg>`}VX{s>o)`kODFp=(hP&*a{wd3xI-uEeMd3_cxCF(LbHx-rq#yQ=n9Xqf`x!s@P_eLH21Um#k`{@}`>O%c==6Nj1NscWR2!I+fE>l@nB| zp~Fg`3(Lc#2q2`{g;i1X>4PdSmPdW1rZQHPW?eXOc50#hC0PTGH1E(2@i-^vU!0X= z^5x7cA(@Kz9~ytalu4fB<$(_@1m36lm5_UOXuOnh0^jAE@bWoIT*Oadj{>%w*2BIZ z1V<^eZ0|%69H|7J*Q52Yp4TIgl2zs~MPB?SWti-HDS}B%HbvAFW*$B%a{{m@(~lM#&t4YpL+b6~ARjfD>L5olHyyFauZ-lE5QV>I;Q?T%Q=)IyWE zy(bxz{^Kyq!XJKE)>>l88ZiTd5Y}kKA6Y3s+#KIuezebbmE|`i+*lOl#K7Eyhe?OX z+xn>22GNKY|6no>hv6>@hpQ~8JH7g#4B=ZX1TLZ>g>o4P3e8+W;BU78pjiB(9Jh+` zCmW$f;l1@a2#nTpJ&M4TqWu-GQmREvyRNF~m3Pr%Jk=p?7?z^ASxClfi%-rqhp?T| z0i>&)l3M)!Col9hkFY1doe^G_!W@s;Pv&*_L{77JLs7cKHTHT~x;7J(Ay(zwBUGqO zi_~UK@!#Uw96-9V+U(}zuYPR~fQeU|I}5aSjD6QG?8Q#-_AKlDcg*DQj+wp7v4X#y z_6AwK^920=uy-DCc2(8>&z&>pPRb;dNh6fZOhV{0nIs^}q<~nM03!M{0TdKS!2p_s zraY<$iXtl5P(;86qBPNm4GV&R*bvc&qQXPP28dnZ|NX7C_i6Xu$)w=Z&;Lc4d+#~B zuD$wRdu_>oS%=E@hYMw`I9M``s4+Qc#H|z+jMYnwiFlUIXpsjAi%jptXXIOsW&P80 zTF&iGpGP&(agQ-T+U@F_WVz$*si&!5j7X(DMGrdTq@KO@Z1U39x^SMRN+pbwOnY)W zQbHd-21zm1c~&X66ee7R!f`mByu8=d1epqz8^fl7NmUARYd*sDtw zl}Ce}XSUZJ0jo ziivL@mc{SGKsE;0yDBxaP?e@QucApS-f%Xb2r}FrN=GW+Aq&#S1F3>BTc%fcubiK; zw0slR#bUGC!4bqrK$9(L#T0D?(Q9IMjM1NQ`ZHdCHq)Oi^k<^n&+Z)8W^7%5 zM$0cfR)0G6XM+B4Q)gQ{nIdb+4#a<#+4B`)Ye%MO1+`Bcw38oQiY%4;3T#qbIM_5+ zADS)Zje%uPC1p^?UU}oy%%00q&I--LFj27stdQj#^&O4Ljh7 zwlhnsLVrZfj$zXBPcp&y)V?n45*>5jo?OXYOS*GU+&wGcE06ohu!&X|ZbFu3E?mQz zS-P3+XDWJ;9p=g%+6H5#7nSBjfN3#g@3*ROwJK;$u@!04L+7}=5W9~3rG_xluf{MX zYnUyN zId3c1^lURWc4RL&88!c(Dyi5=UvZ?y$-890LTmnZQe&n&wz=f2b zObwYD+6!(bcQIwBO$#Si*SU56hOl)m-5rh=(;RXmgSLfzX&1_wE(Hb#)k2qHlO5#@ zpqruYi+>^x$6V)M=wLm`Ki_>O=2zJsbsWau-j zh42a zuPpPr_2+==@9rOI3{%Lj;$ciVe`h+?{P9BUhH|5YUraKit&{uhaz3i1$rYpf?9sR4BkX}|NB0?H3hkaM z`u|0x-2o{DgbvE_qP?SmKKsdTamtoWaYRq5rtv%!8F?ZbWgh43%byG%X4 zD?5wj&$4Xl?Q@oexgRY_UU~V?Tq`yG_ zR^n{C(}xoO5EIpWh+Ew*C+VLE78e+EoGWbn+?HQ@@2A13A%WeD_91)lk>)m-Z&ottH@%`dnR zW~%KG{cL9^N9Pdwt96bP9fh-R0Cw-W@uh6a>aX3N5dU^uN|w;!Z0e+u#1Vo86*G7p^oL-885El)E!}wDo-O z^t5;ONdJx}YXB=ermq5s$E;IZu3vciGEj@D){=LvE!;ilEGx*X{Vf-qc5#<>M{KnM zmzeVH*#9;^*4h-?{QAsauc@x)HCg>>$*+AhS^Yg&MtmEG4yDV@`W?5(apEm&tF3%K zYh`lsWTllNm-SIR)i8>?v-;B->bDxj-x^wZz*-4cIum^*-bf;x8UZMlUeJG6R^zWp z!@l`rYNscozJ1L~dFdvQyqh*bTsa~+%J>mV-gp47C{-)5!v%Y#Xr8Ro9$C{Eb8Iaa zV~R^MI;ZJdYYmG*;__--!$*w?E}q@fYyX>}n1-&Li?0w*{CVJ_vrUk8EQ3FZVT*KVcT<9Tsc^&2Ro75xz?}fw^tFO#1x=U{_7eRM<*w6A@ zIz6O!*A(6r4r>_g-sJB}K|l85i}3_j7yB||;1K?#oy4&TAfUML`PJ;n%8jS}W!Sxx zhUh3`gSr^eWljF1Nnej@fRARG$Z%eoB=;y_nTF!yc-FM#K10Mdv|6<-?`Ni$6 zUVOXN3r>9b*s39Z54L*o>sBw!andYW@X1y+&Xq)LR^#pdLS{Wq(FOxnf}VP4nc!yu$;;pQd#iS&+ z9Mw?jg6R#V9zDW`wNQr=l)AgCl3(lB9n`_0Y4f_;=Y?-yO0u8l`7T2yJJWZvLI9^Fzf+r8a#%0+R__*)Cr zvj*Pi{V~*K-LK>#Bjit+CE;s&$S~oeNZ_ z%QKumDoe_f8I0`xj)&QExHmazFkinbHL|+}0mIm7$xj^a^ojJy7VuKe<+7u|0XMnv zwY5^KPfNF80m2HC-9}C+Z82vdt;X50IH)0K5qfx<*|jr9`V$G$lWEQ0(rDis1?(hu zI1=4Sl!;tX`8Qyn~#-y^&MvD zu!lFpR`@G!2nLL`(;3NUS91_mj={NB#IEViu+@uv4Wzds`=~jsoy<-)YAjr0memU> zr>n#GezReGxXCc?D-Yw6jHhTyK8y!PFpM`fhsF~&j1QKf@x~^@_(ORZPc|uXMl8|{ z8XY?tG=8;3P8GH&7HyEc<2d>B-eCud#>GW>#OC#kiQLrHFB0Z58AGyE-|?xGR{PFiu;Q z8OD94G`WCIOm13^ao3b4=S9BF*uz`7my=VSKPWj7ypf_*^^@&xt{1+JT82Ln~^%v zdE8B>3*&z2JnjR5$NkoYjJC|j7I>WG4B-o#EmM?dVH6;V__>Z%XNY)pHs_3=e0MF` z`^+jIZ?Y!2uX#5gUXN}rZtUil)o#AryqnLhM>kKI)D{@C**xXl*lxM;ppR9%ag6vL z-4J31(8|1=r4!H;Ns=MT!^LhK3EoZSLu3I+z@CwWWR^dj`3#nFhi;`| zV~NMOyn1-EoHY*S^6K5MHtt~~|E~;)IrG02{4^P~w-vcC8(CiDx7@Q{kYwjHY2`28 zN{+%~V47t(h{M$CQ*uMz=5=FC));idw@xU`LjEXM4}bR>=@k1`@KIWZ-|;BbgJ?ft zCJ!r)!fOg@)wg}|TzSzH8S*Dtxw2aIjRMhANFQLB19dr8~U zNt5Kw(y9o?L96P{4`SKuA1RFNq9!Bzb;HOmY%;Rn#*tmFG`dk|v|+a;_b(6n-p$#| zY-C@J@6J_%UaJ`1wI_eVr_!Jc+MwU4^$%L=9|}kpwbb*$xH32&%cfS)Qr{9mc6K%} z(Zq+ICk=wymnZ%N4ueOow`*%OG=ZB|8CP|wW=|a# z3^)V}M-~~R>;<3IU#7BZnQrXm&si?8EwI@HbFSjry|BVM{_KiIX;g1O(TJnEsmZ8r zhrrCNY%;2An~du2b&l#|1?u=-6Y99SfjUYoDKMLBB5^#ZJ--S`U$P>Q^jjK<KbM1G3>%)hbCxPwF0m@Vo@iBoh4Y|`U**p~ZvKa$l>{DiBKy7QSjH-7me@9H z;_H4HPf>yS)X{}r;cQc#E8Nl8=#Abevb4+Kn7pStQCD^Tr!>*eHBR))#ff^I(nN2r zO!T%e(Z9NMfKW{$KcQ;P-VV@|npL_DOH86!sHn=fq&R|9D z`c8$%JlKTCT;eXb8i~b|_qx01;sT_jApKQNESRcag(4@EOPL>rl z=_fNNYoJbIXB;oub{e~@#2uZquNQYr2nWUl0M(7cr_5q%+Z&hEw!}&c@mcWnILPDv zV0qW@>35qKqxs_wAb#@@iI3yF80eG7MY_-Zl_#tr8nWnJZ}6iRVjTns;#PsbK~mY2E?vo6TT}I`~Ve zgCF8uY%+tl|7Ymnhiy$~!24z$yh$CrEqYsR247B_g6OK(h7P`*Htm4-B@pGCB|je} z7D6nvB2c*aO=7U{xlj1*`PfI-*YC5FOguQ$!=~$}knip6rTj{}sS~xAB30lbV56t+ z(YBpmCbwB~KP%D>#eayDe_ret_GEJMaH;ZpLS+vDw@XQzRsKz={L@n9OGD+i4&U?d zL*@T2RlYJ*e&g_!{~9XaQ>uJ*sC?G&mCp>txbLa}u3gZKiqRg5T#B{@5#duh@cZXe#h*yq>J#2 z(ZPu4oB>_xpt#xY>=>hI;3Wl&n|tI^Vvw>PX{d5P&GjcTt{8_r#EK{T9@ zK)5W@@>I3;&48xd2ou8ZbasuLWjjny$#YTpi>6c`qDgR|u>E?i8hX8Bfet1S7LtXU z+@yCG`a4C@*p=7h3RDAGp<7hQ;^!xZ!!gwohG?G;GOSmHG{4F*p4-*T-Ri5$ngPo) z!}nWyXS~?=0p< za!{xGG(b^k@hH&WRq6v`*ftIhJL@4)8yG~EH>COM?A%+d8l|Er&z@0yUj z!*+pw58v-hZaTet(VRJpivRY_9V72s4M_hHwBPw4Q+a*jdR0F?**gI7BY;VLMQNe# zQmYpSjdYW>`ggT@&8BX3*EO_y>!xn?Ftz%lP2H+d+#jBnR^P$`isCleYS~yn^t814 z`KP7T?=`eq#rpU=a<3}4Digt*g#y3X=thmR7Q*IlQL}HzIO}>*tT968tmUyjsz&e0 z8jb8aPBc!u`kAqTd4XS-TkT#;tLKGXgvDqe0rntu&m*e(CB)DtK8}lYW0U31TMK_ zIM>CkuChAOb*1D0q!YU%VAzo79BRQV__%s|w7^UTslpLG*=}VuaGk5})5w)@!=^hk zY}#OQDud@I8t_@;TmUXcujJ~gpjQ?xqvrVJ09qftvWZ&hSGP*9N6^&s$nI!?%*vH$*YM=!Q%JbjfZDgjXDTuv%hd*= zKbp|?M$Zg0A&;nz$}ceYfDRvP+l|Cf6S&uTcj$b=VD5l1cKEvhre68|ppmMD{^hA* z+Z!v~6OF_x!g|fwuIpWSA^OsZQze0vU?f#bm)}|EDRY|sP{kf&Rr-|6LWhZ15n?~K z_PM1o!H=$1)Bb-AwQ4hN&B+}fHjQ6~Vd@n0u)`$kkX9^DwnnIkJNrTI)>c1CBh*Oc z9*83yTHlfWJpg<$9meBUpeBP3+x^1HeS${3*jCdIb#ZuEKoE45@O3{vH}6(qLuc?% zu?Uqya_-0}>Yx4V`~(NoVpN-SUpk3esx2#i!E1uw>xBK)r7UlWC zYRkWUFO)tZISjG9&zw0q>a?E>qxk8RD7p&^62Qz|WN?NI$ncE2oo9Roo-xEw3M-&q z1AsRU;NXHLiwiCd>CF|x=zgXhnoJn5lA=r!e~f^#z?O@=J!2VUOD zJ_%J87*7|Wi(`_A5u{8xlnqJo>373U(<4s>M;c$x1tTR;a!Z*;cj0rIR=FoU@^oxk zbuW^C!ZlRTu4@f_6V?~TpzE0>7(i20U>!eF6TuwWSG*=L&nUmN9C|%jQfht>Zb`T2 zKn?Ax$?fOo#rh41DlTCrsulggyAUw~?>OE_h>bJps0^qi&S>>Rx$->UnLfqAcMj4q zOO@A=a8^@{p_ogWB)v{M^t%#{r~W*{jIjt$#fF6f+n74!v*rFQWi=C2^r=vPMPmCp z&5itIuA0^1x&=0gF%IaPeE^$z9yVdANf=v$bJ2>M@uM03(z2Z`$9A16`L5!$zn zCQ&shJ8+$A;Z!QMpFKjSNo^I|4=IN&e%Lr8feJ&k0~rZ*C?-4H#DpsD@^la?sU6n| zCrAdj!T%P;Kn)YRCyj_4vYk;Am$znKu}n_A92kOagD?>QDsI;6f(k~{Qc#I~OBnU= zscTN_z2rRG->{&m{Bj|cQ$ST{#otf{jU6BY@bU1iBD?A{)+uTL&&Xxj_7z#ysX$k* zL+K;~c*RQmVCFQ-py$`cZ!Gj?K$?DUYYBQ86vXpqltuW+z_9;_MLOAJZTUk-vP|Rv z@P&yNNwr$Q{CQw)CXi+V#=)E)8v;HVK#1KJ6{UlQLqM>gqJA*06B=fv!RnZXu&1a| z`3=*g?vX+y2|cs&b%s6d(bJxD>;@h#>Kcvom6TtGmNa-s5c7;gQoRGMOg4$s8~^mI zx>9pm{q}kXXr8pN{JA5;{-$1a z&NUJ#XJX;RBLl+GFA@p7`H(>Tb|nh9I?wLWtMF$rWnBUSD|UZUMK5zzGdWgzX+@*A z(Cea-4?z)^L+_~i4itLT7LODXV^Wgv(m?eoQ$=g)tXlWkw?=6ZDT}qDyCo*`mMeaN zvy@;i7O)OvuSmg^HKeYZOMyTLuc7fK)a3j@6Z3DTN0R*B(+cKp)$?_9q05lJ!4vq- z!n>Y|&3Tz0d1y37KiTTV7h1izxGNxmaUY%2b2yk2gM*WDVj!nr7sTZ_GRecGdFcq4 ze4nh>(FQY-vN>RRn5{f_$5dGJH(HJ5G95PXP%E93LOPfG}ck&FofI<&;XOlDqPY9>~J2ceA_+OdT+}tQNITH#jtc# zieG)<-MW9-9J*!Bsa~9ekxVzMF@uKo=uY<=O6SA6Ww!Tvy36i#JOA}uO5olJzvk*! z_OARZACy|r9$`QJV-sw)UaZZ&eS(LOVP{^m3T!CijaT`D^#EtS`xv(47w*VOgH|wK z>795EQwd-Yd<7z(+-!cKMDRdUEtgbxc`L#m5H~FI9DX6V>~0(PfGA{5JUQNRGrI(E zf+Bf`hZmz?2qC0lm2BCnzlx)nZOSTH7IDR^UU6yie&y~VD*)Gvh*G3Agf-$uGVV=b z@&)K}L8rm9#}HfkupH^)Py!$qSs5pm+F=f9BTt7v%qc&jdDrP6@qbNpB$kmS))m6- zC~hK&-}9W+8V6wRjzm1?`r+_{(Mko83goPEv9Zc$ODh0*y&>^zX$kgIuAAY0%B?A* z|GBD5f>V=>^f^Nfr*(g-p$UKBM+wR5-L*GQ{E9sHN&V0O%H#|97<^pL!gt^Baitt^ z_okNGNIH{cN(vgDripz?q5=AzOTRU2Dq%exo|RU$L%|>d8wElo}J$Qu{)r z%pppIN%I#W;Wiq!YlhskZh;b>1pxRS#7JgawtqnhA!>S z+3kgA0jD1ZIOXhib{Joz;A}zz+Ft1DCeJasFKaP{_7|%P8my(RiHj%p1v3xxO9L0X z4PQlX0Bj1}%BU|{$!-y_awds*kzFZ0L7&n=SegzLI;~*zsE?`dDM16(SzqZ?eRStR zRc2`asye<&`-^s+^Eh5ab+O;{gH*5P#>Ly7@o8BZEB1n2?lIbXGr3{(M~XQnQPF|l z9^_b0rnvrd`n@ZJ)bvO3=^`raOXq9cLeRZ&Xxfe{9^?gw8U7LSZxWnS)7TVB2xZ2} zW`p~ic!>}XW(X~$$xlu@lXqd$f|?k%HSYwH>SRKa?H@Mt)ifitjK7%JKd+r^xOr4nU*R1`G)9*JX^%2 z08McqaulJ8#-m$tG(~nEu@wahT^XY{T&APTj`Ve$jhJzy$=*W%2?oSviW28JyytMA z9G;O@HOFYHT#AX{?of*xHry=!=>ElH)zBy;q!=P0jW{T^pNAr5QF;=E-v=io!`0c14BqrPVg3h)Giy!p0 z&caT;&EvW)oyF(#ICS`F#0@E~wgfIVu7jN6&ysZygDMZj{0ImKX~3;ZFw)M!`XJKP zqzmgH{w|%w6|;V`zsyB3#|V$F6LbO2&RRIg#y}z0VWpXkode7DSunumiGGp>%x#nL(9BpLZ<47E24_gI43 zl1?ap(8fr=K|{iR_6FOPH}yVC$QIA~er!$6o?c*X13Ruu*~iK70MSZ5>|n1wLussZ z!AV}}GnQx~R=S%2GA@zfr%&OMbnHu{W}zuikFgUNsUU48lQ_y_Yz;U zubfz`FTsO(VT6iQC^>fsr|MMDB9OsqfzipuI1pcrf#dH$DY)XEed!CZ7P@tLlwAJO z93&Iz~jqBe-+HWJjJt)CNr+EHn0io1hc7ZyFXu%x{Lp9BX!rV zJT~&$r$1Cz5xnZKF(y}!b;+5%aYnr8Y>55qdjzMXuF@3tM5hTJC>co-u6iWAaC$kNE*{YMFD}6LhPhu|?9BXji4e zS2-iR!VEL()uo8UM(B85>nY@f`Kadg(`RhDd1)LrFIOY+D5Uih^Lc6S(dOklZ!P8( z0$DZ1@Kr}l*JoZ+U(dWgzUKzb%Xx>bSG>8)K^^Ah3$fBKXOTN`{l=K3e_o|AJ~E;) zdfb1GTiMbVQK|s?FvK7k3sAHxAPo`a^jQ~n+@cX)_RNt$v2lbMRE7g$;|NEz&KV3R zp2G;w-z$zVlBE>lfb_m=l!Goh?c%7+#w$Ri$C!Wdgu8LuPj6Ts&I zR^$y&QI<76Uy-c;%=Pvx&GE+@*1xlxILCo%ADNrc=J=+;4T58Fj@xhG9IgMGH@^So zFy3LEFn*#@)d zJuJg|N^~o3I+Wn~=!WG<|3I?T`s`nqeNGCM25Noo#fl24!4RcOb8teiBmVPZCoX7E zlw_r;v$i4is6XxcW0&^UZ99Fe{DlXaM`*1d2QjAIZzgp|{SYktv6!IJbY6vKHI`hP zO2&{WIjaTEn{ED+s&k9u*QHj)TovzA9lI;3`S1^Ydd9!P#*h8Z_|pi=UEjc1{_NvF zbfgn7_!FaSYbIk&#K#gS*k5+Ex!&S6HV1{B!)VCQWf;=9CFIz&6PM7}dH(gKeC=S1 z!ggomOy76?p@ASy*7n)9R@22~Ef3?gQ345%-K}!#B$u5q0!V;_7WhMKP{V?y>{xxm z)8I5x!r5xIS*Z8dK@RJ1(~`)`wXSdT49<|F4&9Xrh6)2?Or8+ zA7##B-OkBYyY%;3{bhRbAkJsB0yXU72^;zy{ z^EvoUKg#VMRA(<;<<_ruM}7ByVyy&FXpD%JIKxFgEj=ZgqR9*w@zBR;!0-jI27CdY z*}PVA(dm6{6C<}bI{eWLUvZA<46aJV_RZ}>G5CAOUE<1*la zWU0ML{Xo^^;o@%iI^dsrVX-J)>*OW=g1w+Z8{M#Z9ZV@aVgt2<9i`$UGR}4=seYjp zuBr|tqRJm_RoTS()2xwUG%ltQVDu2P#2gxn+E8nX(aI{=8lzt*n2ZRcpI7Q=eKESB zcEpxp>0p!98WBdnpghA7V)WulttJ@#xv=73^j;C84{OBeYj*rM#ppA4lC0u_ZjjJa z*|x!4x0L-ycv5ax&93p*HbwkS1y17D2pgWzzhcURR%DqJ_oHcRolkSK6_zkAhx%xd|A&R`4mWPqWu)s;m793idcBfDv~yr`NP zx9#rh=X=s}D2ZL}%;tc5hV)Cv@`zK;o3z2+)T+t*W0O;8gS4>ONM5Ot+}fntQF?Jt zlNZ*}Pv=#KC@yK@RFO{F?uVJM1=`{Va2emnSb|ioDS9TsJkh3lJY#2$^x5q6@4fMl z^Y9xR{)4UNbym1x^`hq6VUZ1CV42OaG%)S;_esgOSY6f4WoeT5a zNKmg3s4r|XtYh@zuiHAP`{NON*>J)C8$7mtYT3^0iE)rd+jdj8F;B_3`rhn{v+LkI zWp1es8$*kYi|90VPBIv);4strws8SVr=s zrj2+`sNH`W2M@<2+YQZ6w)Ov*bb!e0zA9caIM9?ytkVd;Q$j{arB3yLbD$vNy;8eU-i8+NUn* znf2TCSLbZovp*gBW`D-&oBbKDZ}w+`zJ-wRl0>!EKdaWcgIJq=MF2f?E`na^8% z!&f8ALrBf8)&0v*DiKTWfL>@})QL_3Ia6xxe)RA`LQg>1m&MZ;a59S_JzC1u?5c7_ zE=8#@BO1dFn$)Hp!%>36Rer<5wGGv?La`fZ2@%*Lwg~q^rXOw4aSC+~EFIA@#)@wt-vN zxr}>KrHxKwc>mlD+-zgd2<2hjwXAf`I3IDDoWuq9;=4K)s87RJo@`ruvQ$rYC_Z_Co(vS9JV#IVDn9wF(!wXVj$-+e=U|_GWmI>KzRknK zIBLmfSg0B-zJSg1-o(0mq9-Wg@*=vOx;75{Pa39!oy`*h-W7@>G>X6G$6xGT*=w8S z(HhFuVRY+NT?smp7pwZN8&chRf3~X6-;nCo`}GFMyGLzE1J?fst$_zNr~wM{9i()>SJwj#QBo>o#HW68hDT_^ah(|{WZzH^|yMSx~+iV=5YWm4~A0g>> zfG6do1t%ADqDY~w{Gv}DOiH*C9bvw0-^Aex!yK(J=YS}@+wg^B%g?u#=MP^vwyX?P zM(4N#>LR-aVgshN>H>YK*CfXzoG&KSl9R2^aZ74-V;24wSV$gd@;cW=2&IDg6_tV@ z(^qZDqYCM(!n%-jm9ITKg?r<(=V;PUXl;QHaVii^t~;G+0&JWV30pWFoYG0wEQyb% zrQ>EzJjP@e;-E)CbW zVP|L04;bbGShCEKbRgAv8qy${Fdb+fL2;Gbb#kp4FF$!n;N=I4URV~F;tTxD7KC{w zXVb#7xc>NzpE^yMxE8~Rw__FI|H-n4q%G)}keSB466&&%`)h+;COwJg1D`RIlWFOg zS!R1dVdLsEPD#hSc9Z>t7Cv$MTANcXd5QK>-&91=^8~-I?d&Kj06Zs5U#W-k=`WmQ z2xVaGVb6$J>8zM55q{P-vHgTcM%@fXfh_R!vy7)b2~V4#K>4?_;WHt5OxfJ*J5YN@ zA7lYeB5>qTV5H*X-%$;;^t{}-vm|Q+^-Gn(!cZ)^)z4SE4tL$V46?|rml3xJC+ z5SjyHxY3|;m%vqg{9$|iLtEYn-5Q}nQ28=JYi|G2&6DSK7ml_Wz|N5KdLolF3Vm(V zw&s;k)Q;77AcBO_jvQ2|U;w1>YR*S9d`=FC3QaiLQn5o-W6>)PoR9tU`#tZ?(BtLv zMURpgIvGf!uf)^Tc(kM&6gvSm23<`a`d&`@7;S1BP*X$3@2XFa(U>SZVIObv~1k=0m{)?kT`Zd9S;pww2i-Rl;M2M@D1X`IU2ZBB3Nw-0a zB&f&QN|I#~igktkjM1M?{h@c(j$U;V5|@KqP&z}C2mBBt@=6igbR3b>^V>2Ed%hDu zvH%7GuL$E}l+uW5ifanNO=&XO9%;1UksU&=-;OAZN_Da`ZyUx}>GBV86%;XK5EynD z?ln+v{4ziSQdgpkrIWYPm(`by3djhO67QNM( zJePZ~f=#nGETNK1<~uQ|6wbGf>k5-qCc}KT4NIFgE-e!{3-C%WH!gjtl9q1|O!_MsdHsD-L+^oSRjUlWHw z3~(60&p3yxse zegs@*Uy#w5?XX+gOF&RW-B{W{ui`Fwt-|f2guoWj)dG9XTGbqFVcPXA)gPh+4SV$l zE#P!rmc>AH+FN{oy@s-fhJssJGXm$a%0goU8_?M9Y7DwmW6(<8*w>irdJj#lO|!Nj zGTNe1GtTyi&rTKraGb?`=hHXPmwy*-WhS?ZE8`~RfA zzRLZ(Ux^u=0u|=b9SM;l<)s@TDZUg^EHp!?RRgY=l%g1eHFkN~Ir_ zsQq+2%9|6Z)93%6^6~;e^1A?%f1k^LpEIc+ZY9tvS8I>CLx$W~x90eUF{fM^ZHxJn%H$iZKX%*$JJig|Wc*Ow@@ZJx z$zJxO&3@QEdqz?@+3DY^5nLmSM`Vb?V@vDr|Kc zVLTPU97#O0!a>l6m8ZueMqql5!I28M;2r!;_Ol-)0uU@;x-L+vkWAGVp#*ybXLt0T z+sJPVIX;%+Z)!%<8i6c{8DaB#H1X5&0j6YIb1%%xBc&fRVoG;%H=5U<5H4fpOAQ8E zoOct#XEdBoGRH9v9ZisM#hXV0h#~I7_RW!DZNcXi%u*eAc=pm+>$cLWm3IFpRuV+6 z(Z1pRAn5w=!-Nfwrf#*)X8y13|mK;olt37a*0duZ0~Y+vsQbt?AnfI}Ka6edNg zyjnt_Nhje~npAIfQs;)-U}jG`^zep8HfCDy*{ZNkg=JaXe3=x0>kRCLOh`v%W^g1a z*?iCjwbaAFiRN}@CohRg@515|pWIR3N0s`uo4VXn(sk4i*P~>bH$Zz^)I8T(t%vfs z7_DJ;A(I0jqVfEPLeHajWi^UD`?tc&?!yGVO%|Xbi=fbg!@dveakS_r2+E$wS@dZtsuX3SUNyI zsRa5}4!xy<{m?M5f7jN5-X@z8JG$=IAF}%}h5$kq_fR}{Wu8cb^7k67Eq;KBD0z-#o2PVs}e>ss|?m*a__A@{cYB=FO9}`mAh{ zToZ!-;UHoRqj7xeNCM1uuWCz9p+6c0C!+1hy zev8QA&ma@Zk;9})t|j-4s)l@A(+aSUg~WE7?nwRTLe>*pT4im1UE2LY=tFZoddWb7 z!f3mn!)&diNO%epkbPZAFOHNRy`A*vSDGHZZB>tcJf>@zLTb!LCqt(Emu#5}LUy|i znyv0&d4ci&r(?oLXu>_3@ZmOL!$>1 z=njnu`%C=Kl*t-wH_v&Zh%_ifmMYEz<=xTO0e$sAL$>I(sbABs^St#-gffg7esHwH ziMLi-n~KqWqx?e}jes)8H_h?FHpuh&ZV8r<;qg$npDmX@%NU^H_nAXBL=4$M0#nVf z=(+9%y>|U(hURvlHQ1IMDOV3!l0_xld!%2ZJz}7J$bRJ^Fy<5r;kE}+E_i(TW_f`; z8_>AnBZ7_=J`t&gU$$&je+UysAZy{5Z2%p;%6FIt0k!SiY)BQEb!+H_Yp{ohu4PpQ zx-oo*qb4M52%ruzEhBSy3Tm7}c#b&GM!~thpso;$WV=G}&*p*)j<#16gMUbf$&pXX z4dOwW(;w6>7Wo0bNyRG>Nk*UDHn+CJcn!8`&gRyo5zQGly&lCz^oU0E zD26rZQ3z{lJ3_CmRdHq@!f&*ulP~mN$+WnMxIPdnM%{q9*JoRj{TtHS4jy%*+o7Z= zG>Kh%Z`>UG*(h0R7t`P7$u_}R+Sk@uV!n?RL)oAKgo)-RKNK!d7PSGr8y)~77*i47 zUsei_u{i&xAu~{b#p5-jfd6QqfICAh+y7^B;vZq!Pp_PKe+Z^pZ#iKsb7SPhb4%pE zA@aDHoUnLMsEr-AEJ&1nwPB>h0g@668l*&iZ{WX!l=xz}N)MU#e^Nry6mP=+Nr{b? z61RtFJlj|P*On4j#3;V>0Nb%f_X%5N*%ux}t2%n5L%hgN2O#`ZPF6K`CV?IOs5Np* z9{@77C0K`@9;wRVxK3h2t7_Uk&AOkVjmZ8Hh|*{~hTc~8wPks3%}@5XYU?^lVf%m^ zFuD2x#s~)wqbW zvJ>{%f3*QU@y{BNCrf7=B03xf_0=5?&(zm}1`r-05P~zA%jDw<=KT=CF61r9j;f#N z!Bwb#mXf5HnM{5;j)&!^Cui910lU>PqqrZmvq*kjZr0_W1_uF6OcOSDHHnpQ z4GoI~m@-5~UOL3cAUP)yYX-S&c^PkC!K3Nv)akO}2<_KRM7DcI zHV7RP+ZBrgX9}bAjl6*_yT$>h)#ft$X4<*pa7gk74&q^4J(3?`rp=@M_Tmj~^ZjtSplHlQrQh&{uT4R#@V5RD7By{N=P(Vc)T)uUS2j6XH1cDOjmJ|gp%gI zXcO(YVW4kV_F5wOR=W7vzODY4lIMR+X7*0dp52rU+Oykt^~w{EUcILOfALYRXivv4X%`(GG!nez5@%jM& z%?@mNg=+BIowELtdVH_V^+hQEw2o8}ELu38Nad}}J59H&>WTsKd`-0g&qH#3BgEgrx z!=sX`Vft@7A)9`=+Xu34U6d8DA!P9gNKl#fq%=9Du;gC~ec77d5<9Cb`TK&;p~vv9 zgn4;ijZ)+0kp}#~v@Cv6v*Pa! zR(E6TO^bha{fghG%d+I7_ArXQjXXzlfLh@cF*s<$KVKNyDSvhz40M#H*e*o7lnc@9 z5-u_+gF?%=T#2p2KXVnBo_^7v>VmM%l26;iT5?CHUA0BAFNb0u^GnXcjaBz@$(brY z>QBA$nf9=joG~U=etRf(Md^mL`@_>mhOhjdPz+is4Ew?G^uggPUlxj8T&ny?czXZv zl|K@ST~Mn0Sa|xq;VXY46g#(6`Oo3$-NRS@R4DcXOV=Nl>ceXt+HV_vsU8nY^_^1X zYeMBW4PW^$q4J%j$~T6}XAfWbj8N>WrOKZTPyg;uTVdF_q1Zzm#dW^qWS{fZ!vpNT z0I(mGDqkKdUpai`2SVk0OO-zsD!;!)<+klgKKMI5%%J&wXXWeWiubELBu(qbVf(!Y zc5S*UWE;$%hGdK;68x$xvx}rIHO;?h`$2PN=%#s>;Exb67e&XrP9*#^zPPLK;znMG zvDQ5Yq}rg)yENyJYIgDPe4EhR4JxJY8dB%X6h9$pizZW^p2B7hq$gm2sU9s|L0^ z8BF^tpYy|SzhPQ1_j1iY8^(V*YidgsqrCqoaIt*sbd^mfW;`0mAQmB)!Kf$QJHjRhmzT<# zu`A>aDj6td@GpI41jm1~?H!5zL#v%Ot9$2nd$Q6U0xEc>Pt5lk3j@!YVRdDG>{6GNNYv7(w%Xq&jOR&>?~0SG4Qm9x zX!Vh!hApt)aYv4N`fuMoVa+R6uZ?k?1&h$1uNbvSEX9(ox%$W>{SMzz2!xtF%Iiiom+7JM*+Kr3iz2W5QG}c-{~*(1zi3Y;Cx0weK0j3c?C_Ou3zdIcs{D>n`G(;u ze=}5mxK#O)Q2FZND}O&!{&WdocLad_rl`?10_@^Y?A}t(SBIW28NTPAhn|D78=!qd zsQiu=l{1gR%(sD+_s83ZGeI;Nq@9-B@9LJ=;(qb|+^hf7?#~^!Hr+F_!D|)M;8H;- z{Jm2MxQp+;<0_3LhTdI==Htf$78!bvC7X`We59Y7C7(JS-#QYTI6k~zB9x@3Z>lxA zZI6yCY?gdP2j3{d8GIEXfDLzQi*J3|+m_$h3GYJBo3I;Ae~5rsTK?H6W<14gzRi+% z(_LFvNl*Qz1J1R9s3k=0p{gB}pEoe|U#cw@#+T&Y{66UYx(6MoSD#k1kZQ{uwY~Jv z<;M7lJC7%s$?zsIJqE+|Nri5rRZ4BysiZEeJ%5P8KG45q#v)XZg|;~A7;^3 zl%XqJN!yhLlVJDH-qL5S*Xn!$!H|r)4++sAE+i2)l;I;RR-JIv(V0Yf_5m;2??wIl z9)04+Tioemm6jE-i_NrsC1By|CgTx!s)-ri$2(DZ3UcmE2D_s^}pUeC;L7>q{rg6Xo|} z)D~-v4kvCr6r2^mnGlfrr%Z~zcd*cQWOjuxhR|b$p?lbV!<;@{R&7Q72;>x8ecDqP zvvs+Ks_YOu=x-YbGOr%16>NG3v{vwdl}8=5>gbbRvHIvW{V!gza`jP%AB2QGrT@9F zSo_>H{cAR8jfeLluk^L=Kkn$0R;_&Hs8P>dx$5Y{pZ|*Ej#{@u}v8pCRJy<$}Ar$vs> zzA`}nKKRNLR<2sR+sfk>$f_#1lDDf(%!zBB&}e(JLI^#g!WHd_`%onE`s^q!)F}hGnq&)Ls_={~i z48q4!m=BrO)b~{Hf+o4oa^t6?BN~&vNzHCYePzHq#)4t(;x~UNM8w2m#oaU9N4UZ$ms;xOKBB25qFX-1I}V(bW|D%H(Yv>oGdR;6H@X z%{Ja@@EbG=62&0SV0_Xo6v=Bb{=Nm$4z#3Ex1(WqEbW>P3IYg^Eh;&@AeZkga|K#8PJm*+xNPl~sdX3)Pzi)v`S8 z6p|ZA_cm(nK-r~T2ga|9yV@p4e7Q%9@fmYqwbfU&Sd13)WoC?4-P(xRXRnNygUI`* z?RK)z;DD1Uz+wLa818_!n8PAJ5M;nRB!?XvyBVm-UYzxyD8e{J!4F0t(5S4;8TG^9 zntyFaYa1R~hro=W3a;W%gN*JFcla=)Ly~P`Qtie2w{0B(xy?lY($CZcR_k}R)B-XpIY+-}&Z{=KVhhrW zqk!wft2Ixq&JyAdL;ZDf3R6S~&skkQBK6k+b_al>(aCuuf}Wm>{=*Ok!7hpwPS}>6Sw&DM|EN?k8v#Zc(exAFPb|HXCyrhaooo`Z@{(*17&m z`;eCQTm~)a^RG3&F4U@IRMO1N^iS0|M;*0t&8t=(UsWp^S9r0a#S!6?Pd*$~(bdX4 zxWJ#fT3LPSY9&vXEjxVq(Z?Nr)anz_9qGxn#YGphShKWNxCDYG=pCMb9pHxLbc z`74O_iq*0-=%JZOal7FAKk&1*u(j0&ZfLpn36AvTw#Ii<^mk2)rroAHsaD}@V*|fX z0~g?5XzMbbJ{fg~uVRLHUyAOFM^*CT<|Q$93-!vs@>X`oZ`%G&TDj3$QA{4)m}Ct- z`Z=ar-7{gC@vg7vu_MafW?s$!zX_|#b-J17``tEskbTLuw! zEov?MtGzc^*biM#GOdVX^c3xwWu_JqmK(0j6hmQgF^S-nf{A-M<O)9o7nrL-^flpesyccoxE0N9#O3;+cICTzRvXX4rzAn5MP8~KGAxjF|zXh$(^ zZM375<+Kwfzb(R_sBBEhAp?1BdfGWVojjDz(4^;tNh|$;5Gnx9EQnw=VNoR~V)m+4 zTG~OwVtD$^@OI;a!TVoh#Pa70FI}-&Zp@d97{sGRQQ@l;95q$j+pV7=wa}+OTJ;4+ zL_k_|s$rDs!)@ud9dagp-n#(A9kkS@03F7!Zrn{E^TbCo-##OjnYHJ7p|6`yS$C7W zF%&C$!LTY`0pHNV?(G=fOk>B{R^RO!#!qb+*`n5F*x1|Z&#bHm$VgfRrJ1kMjuu-I z&DULj|9c7u^OCGr2BE~o)~w7>|Po5Ytv;LRlfr56IeOs z;n1MbC$8nJqM5AzUxSJ3uqOv}X zG6EhtZUk=i<$83kKfb}d|n^}hA zpEak?bFe|HkoQ|Xg@(VaZ>p@Xby z&73|qBLSY%p5{Ejb*|Bh8MNV6HMse@vBs*Y8b+l45-VmI>ql|Ev5D92I}jEuBEvo$ zg&s^NTDQnI?_Phq?Y-=#F~FZO9LdVK_l8MSS3rlO)sHN0E_`8@5af_7W?jkB4#tWc zz>&~}k{cQS;Hk*JZE?E2dQB{O9aZMouQfqj%*&5@-~Jvz{zFSOXJ{ldN_a)HXJMFT;O_C1YbLjWIf73C>hb0W(-6k8qj~ zX$-{gE5RurJNd`hT})iGk+sRF)0W&+C@u6U$ZIV@ox+fBJ1E>X+2u=Mu1Jklz}VCS zwP8Q=-_)aLJ%{3Xwo3j({^HKu4TU_-8*cZ1y%$UenNZy1h0V zXA8DfP83TnVRWAgqg$#7ovtnt{n3O5s}A((d}Cqw3U0V{2>po@YcArk>Z{I0OyRG+Nd1FSpKRP@@|1*&Rq-aHMLcX9N_Wvm zcX}WniMZSx*NfX=F&g>kXYowf=F{@&0MU8!7lZdw-E!$gUJhHdpgl!7>5MPqMP5bV z7vq!KA&CP=PzMTVJA~n%@R?6 z@<_qBXi29Zq{f-ZifWC@dUsK2I>4x6XBdW$OI5|vL`T>*IcuJegP3RD9NqZOJv2zR zh}W7=5!Nw959%-RJr8)B3*=rBU_p_-;#yrUq%n?dQpxl)MzEb?*tXQTcT9JzFSZE; zVVj^{wflY2?e(QXLiK}KNWMEt1D|ULpK!Hmz^;%wjGm=BA=NC}>)bG9pNq{} zprY9HWSpRq9GC+0y?x0rgZ^xfQP~Cdp-vX1Jya)zMU6`uMGgQKv2_#?*w#g4OPZbq zhQqcmmFz37zptjj6zIY@t9!=9VFi3s?p?0ZN)UD1%cF_tRTb`$!P{!zU=reO;(sE~ zAd*Le+Fo!p`0NE2y87pjQ}h*Su(kTJkqC*z2nwgeav&dJI6)oY%`^5K*%2x&8b3j zQd|1DIoG`MQuxy6?Fa(Q!A`3&Sz`hOWU7wVI#8Pcd}7M6E3Lc$qy1)tE&fh0T|oBr zH-4Q?>`S-mOJNx1*Bkni*~1i6NWXAN5|^;;bwc3i#-yVLoI z2t!)75q`amV^|Z)q}+ug4ERzUVyFkR@4F!A8;SK%=_b=E9pIbDYM-kfLo7#*0WUwsr5eG#R$;Vt zOIt#QWF=73jXoX8bKzJ*%9HcpaA+blX>oL*<;$ob9>0@OR~EDb7E1vv#E z4J}GHAuBvzU_?idtWQMquq_1z8JCV?HC7QcHGCv2Y}l$Kr>K0gJuu-#dwq8UR$v4H zEpqTslI*d_G%xJhsq3t+nvB_t*7i^vzRe`qPQ>ORu^0#5v(**j*Wjce;Sd1N7?Np# z2&!i=3)w0fwa@_(h_!Lb64S$^MI^}hU4k&R*{cFHr;p_MgD&oqS;pY!vOZgM4@M8& zs>^}!-|Q@uv11!STYX3C$RHa0NP{JM?*$kg#mAEX6$_6*K#BL;^v}wL1AenHgW`7EY zY9G-oe{5%G3&e>ibhHqeL^{(aoL_^L!Y7}b{CN>x^($!U@hX|K^D2d`K!=8fBKe?W zqLaE-Cj^Mc*@2RHmiQSs13hogrFo$p(KUn#GL*>{FB>N35?8Ogzz%Aw89&L+o-~9$ z19X-WY}azjQ|MN`3@LFIy%5{OvaJW7K^+QVy7COTu2-jw)+7JDz!bOO`0X>1N5}9; z?wOYEq~nN)XSE4FF1OpG%_JCdBb&(@H>YSYx)nvHCDx~=JyuIMm_DD6He5wgQsfBP zU!Q&Hf9ON4FS1FHoFhfNNK4ebG=d3~fXr6%kt9ov_JtII!vrcAAMiv@-+(7B=A1DV zo=S&|CBzzPJLHUMyDLG1EA1+d0z&mnv7yQO6B^Z$y~Im)Hb8EMd~Zu$f$%lipcm0& z<&cJX=aeGU6vu}aOdWRh6cEbX2SzrwCGO=)R=AYRWzoqR-5J3lvKYh9M&Nuxi>gNC zdX_g>5HkC}opXLjx8)R4i-W7{K}>Z+${Dxjv|(IKsrM z!WuCL_g{jwOb7E@eVa36Nn|H-;0kg^*~xKz9z7`DINLSrK7hA;@zSM-n1+NYYl5_A zshCin&g9e&Gm2Y+J5G+1Km#-5YDce$ldm|u%Z^?Y@43c^Bq;^RK+@t-+Ng4QvcK^> z#R3jF@K7;l@_yGaU%aINkwbGUoKxj1eZNNbXc!q}J+W&_KpM}KDp&zC1apL%Lp-?( zBr=ngfndG?z^l3ySL3Knq0Xk+1*G2e8A(QHF3u~ zHQgnGFxZC666*7py0e7GV)fHZJ+0T53Za)8(CPqE%t_KfIvJ{}zG{>mD5IkA(bVRZ z{A2Si%?MV-nB=pkTfhuX7qKXrVxCe$;6q@Tv1*`H@XL<2n&g+Lql~LN!xm?t!s>aB z)taA{tx!dsT71yLLPaRqKAIRzW~i^VHv*Wk3twuj z49q3v7G(1yZI2Fz+OCc@cK3xCfMwXsaI6NqHBxmHwlDNmVAH2SQvB`DL)E^z-xV{< zr)D!0srmw_LzxnI#9sMV^mAMs8Dtf~s%=~iS}-e#N7+3TtcC&BwY*)l7DCWdZNw(g!qwK^juy+T;j_{gSVt80 zK*6ZLqH6Xczg)2uA($#IDYLzc?mo^=Cj02F4Ou3vg(Z^xR9H-|3oCO}1`Li5(F^%>?XO`vP=s9*WCycbg%M1fhMsF(XGLTo zl{7wRd!bd^uUMJtlAi1@SDqT?C(k!DEd;_md=BuP zx2^$P^!PN{i(R`jc{7{o@joz4H_d4O8=HT(VFW~~QKCEiCPI=6w7t5{c)^tqc z9CKuK`L=ts6oX4ePM>yQBxIBCRKSJVZD(EqVW-1i3B&Y!f8VwYJX*vTuoONt)6pp| z5kqCwOxao*)h+W5=yAlt1)5p%qM=+4UT_V={&_a+vP$kt8*G)=_*mjTx^!-qMAM0! zwX%Eq88v<7bYE_%*&L#PL1b z2p+ZMp;2bAoO$|?%LN3l94DFA&PO=)Su~H{J~1Vro3jsgyxHIeT#0f(g3+2Jc4xiY z51{yV#@*BlcIR$LW^;v`zUR(# zq`P@WJi?9jsRJa<6n(#rwqaj2?5HJBVxr`#O(n#F6^5-O8=_zHHLOivLNT#ez$a`6 zu@_lImypiQHM*jN%%92>^lXAOVcKUXf|xgQ_&A9 zpnQ&*nlXQ}wcdfUEKqjJb0+OBaI&b7jc2J``S-E7OUN)&*h7B;d?zFnj3l$UIof5)n!xtACf;O1WVv<+}1i;}Y zxQHvlQ$2zU^Eqb_=GkJQ-265}#SWs=#4}3`h#hL(j77;XCf15`m$1DMTAggh33$-d^!&C(F{yPjuxk{!rckm^3}EIajG{ML}ECu zs}Tk~+??USPgT{!Wy1re(W}SIaJ2~=!K8yWHDVTJG%BRNhUUdAbY+T#Ksdw1bk)P; zP!qblDE?Hy^JN3yBU4A)ZL2Rb)U+s@sQ3BhLbWz;$cF2k;;FP>Zy(YaY7FvD)~!9{R; zj$;b(QbHR9Xdp4w0>^j~9S^QrPR0yC9Hq#66^z>_uBX)mQsNj0v^8Ahn_`lLZacV; zmL{l0Ex0qiec`*%%AmBDkQJp20$2tt4}t~@VH-yK7tD;TM#OLIrYX?AS^}DE;R4VM zEnpMoL}1b;hy@Zqf`PYY7W%Rt5b-LptT*~JH?>*X;*B0C82!U4Bgq+m2MFSt0r6ak z>X$VF(^zVHfw+eB1GokTic})Z$E60hZDATc_R7^bQ#`Q|7MQPLD12s!Zn& z8)oz%22$WfxS6z0Z7{4US{SRY-GU%o_1h49(9zj&n(!Sxmvh$KmPFmC4L!ue459>$ z1tgl*oh)A#n1icT*!u^^Lyq)IhhU=myREsxi*#&GBU^u@F&tsMv& zGB~qIJ@(Dv`6h!92gZQ4 z?PnRLY>}225ve-ogvKB-A!zArzOjsgt*`1WEU5_}32|cZdBZvstX-q2&+gz;5}8c(FY1%PR97JV7?4+V;=mU%Nr;}+VzoR-RiAKTNI@vo=a|%;KFe|GIefHt zr>g|#!Stp2=uX%0(E$~_);_iHg?Qp+{Pg|&bcyf3aaf3gAf^P7_`ex|?y2BJlzL*- zB;#m19~Oz+MVZls9eopuT1vzlMe||DOkeW#HR@!QxZUQ1%TPHUsDUfvW=O_xlerdQTfXjK3n~;7s<4eWV@S>} z9AI^r)Wa&~H#)-zQYEpH^=s~ij!4?f`Yi6g&jAUwnM*nhB?wEQn)Qj*I3Px1S zpNF%g!YkJ-G{q3WVA_o1E)@WQ5I+D}&Sb&fxbqT^y@SS*!`VnM6il8v)p!JsZVlIb zHhwCG(5zbWeu!KwrItK=>YyLe>9>%kjstlL7MixWdn!g>)BPI8B?wH{@1KWYHdGwb zJLZLG>>I&&F&RQDq5Qes1bzy^_s}EbqvU_E*SmJ7i()w+1vN~5Z zaiRF*R^(gTUR77fW5M-5f07g&$En)+4OtV8q}DuHKh zu5MNvdT(gxY!mS6adxkiVw37V8BHRWS^ZK{CZz2%dDdGf=aUsj6upll)@!jXm=ok<%*Cxl-ScAH z&&tSeGI~4uH!Nl?h4z{ia!HscK4XE#kptm#?@T|D6-LmT2CagD%H*ho`DhB5XjGCw z7dZ4|XTI5{v-sv>GYH5{9c}UWDbNXRX<#j~%o{+YDTcymTCFF^QLL0sU@lRQ#2E3x z5v}L(!MOp8d_F>tG_F*Y-5reooh6=tF3xHrp20oE{BA2IZg$KPBsvEU`7cUDpMQvX zGr~a0P#R!OYy!>8_h5X2-{z|G)I=y@h-$spbVZ6=q$Elc7~7`X5(r^cu?+>!D$=X} z&bEQ=r@HH5gxMmT?fqhZTK8cX?kLorxj$CW@_-+juFbc!Y%gh3f{TuSg#;H_5|YM5 z7nPJ0B*E~M6j^e`O`Q8=#dSC|b^xbzzQz1Ega~ZIdL3j6>Wn3P_2>{H4YIGMV;Rqw z0u4wZlOG4F2^x&6err@| zq?q!7Z>c}+=XVV849c_wrgjuT&g35BE11NXY7`pBeiXxoE+GMpp*_a+StpMSKZYl4 z494hc{Z{n}swJb&te(jz8} z!_v#$E`WwyH5eS29CM*UIE>}WGG3qHRoBWvHi^`IK~pS9>ja0v0VxGr$lz4vJ~SxX zF792pQ1d>k8AT17kGhz!+S7~1RH7T2v~;-iq{9w{js?Y-P-ev|Rvmsqmd5(XW7n)) zbNKR@WjX^k5Dr!HWTjaftU!DAo}@%-($~vUSQdNo+%*l4Z2&7g<7Kh9XECZ4r#~L~ zit{-txsrRKO@}rIs_|g|)83X&PtG|GBAv*7TtDf9LqSFR8ZYg$BA+2kU;D&Tfv;GB zwtC+rXke#b}UdbpJ}IpLGhc$IQ@dh&Fw(C^lh}}Nt;ixXSO;f8j{@=|SzpT{w1&xjW#v30bFXne8RfIn9n@Z-lc zK;w;Gpn!T!q4Bw9jeoJ!`0pAUf3p`5G^FlIJnh0KAejSH1r}D?Q2i|6}Rz#nFJ~zgG)-8bVmKwkyrhe zS&q$7>vK&4TIoz)ChVP2wV-}wInyJ0N3U$kF;ulBCBi?wZ3%b(O@1MJ?-sEvmEZvC zsPALLbK59X;4Fn58QBXTX6QN#{~{b=cdtYC z8egHR%GV`49fv1du5iqzF;tcxatuBm3H>p&E1t%9RA7<*RDpK$e+Hms%+=T)oT%WK}04RBcw;Nj4p}$CDRy7cOHp_R>2&V)DZ8a;mRuEBPsG-X z%>Ud{(;xAsiv{lSb_=|wshInHY`n4(=at(3aMPiGuc3>k?CjANU7TO);)JGv zN+QonCTF)7dEM1Ma7T47@GYO&x){=*V&fSed-d0s+P|s-7%%hfeBny`!SrtP7)Goy z*Kn0Wf7Q^nOPmW!U0+)1+ROO5mDgk@>0hLX&6YyOK9^uAzf*R4Z`jd%yTxd(Dvjp# zO-J*m91s}>mqz1*G2+5m;To22fMAj=IyBS4%DPx@(A9z^uldxIn>>)c3e3mj@QXs} zjis@FsE8yE#(Nz}?4|;)N*)Gr!E83kTNkMK`rkfYj&nnk=1Bdn@^~Gg9x9FZj@K3R zI4^LW6|iLozueJnU}=hAZ;O3oxb3rkq}0tau(+m+qAG5_7hr}V zIbxXIwl0|cjB`~DRzDZm7zAARy|@u(*b7Dp{J~+auT3?RpT@>BU^&R&TWbHJ3b4G) z&vRgH2qXAjL)X4eA1-x$UZra<^ZUH(^;oBc3nR@%$AD*fwl?d@e>Bxy?vKMPlGq1I zV|;57{64^6JNVa4VigKHs|)&>2p(0hWdFuABQ2C{ss9R7l_e+T3_)lHmf=HFL*Sn1 z*vJ;y2lYmrX&Idpc^DMR-qS3 zNlFEvu(+|Q3g`wkI*}7miCozqH?W^1GpOv@h;V>+X4->?I*ka97fekrbQQ`(B?hm5wss4;M9g zC(d6fX!8FuugQCcAFvF@RLm?UluDy25sPL2E%$%+M&t7T#Bq^}YS$n#Uj7b~kKd@+ zkKO3Q&)n$47ww#=v@9n8k6WH;UHc`vvu*O6dL{{v09K`*7wDvpl$WlW=K@b})+wep z1ZDlrZFcqVw1a?I>(O8km$Obd`=>YR%6IfREf0ufJCf7Kij&Sq?AHpD?w@f@SE}!O zhQI0=UP<`*o>+N09lZD#3iW@+>rWR5&-2$Tk5NrK&$}m8m)MXtR|T1a-eTg3g7d`u zoxa9n?Fiq_j5@AtUnT~atpq9HK1aX98GKOae=r4{{SvH3o`-PTwiI9mPC4covtgwc z26uvgBL=?GM1%vtG)T69_>Y-N|3XAze!Blg0e`=cA0LO|$326*U3Hy>%WVqNp{FCI zx0$5$sYJFA(?ebc6`#8SDt@qlitk8Kk%#lk9Z-=wEhJ-0iV8XQnOhq7f4CXTmkyb) zO#NU!`d{{Vftqv#JMF*A@D=~ca-&0^M|w&x$t||0^s9JMhW%w6m9T!CYP){wSK20= zpZ&obL)Pq+lpeH3%`f5&?E+>HBZtyO&jX%jM!&~8@VOuSJ!|&a8;G}^TK)WuIK}tg zp7H*UTGDq!I`9GZN&4ji5&R6{N!l32-?a>{R-k-;Y@==3{pUh6pY&!@e&Hnlzh^C_ z(=O@=c9Cu>P|CumEDAQE8F0qzeYc=qii%`Bl)03v>uk+02Wot4pguo0(`{b~pyw1- zDy&7{W(O=Y7Vfko$4Ivcqoek;uV24)qk;L4uQV`!Yp;XU`m^ldOPz74_5a%2H!y$B zGrST9|H)W+IwC&sKUb*#OJ09EBA(~FEKf%c?tyDxo(KPxeNFp7|MNoApKoj0^L$^{ z^i2_i^TE=3M^^la2vDBI{o?{Ozn(|5gYr?&V66CF0;L#fy;ZyKA~jfsn3LSY4q?M$ ziZD0ZAeR*j+2-dH9S-j@Ip^=-l&J2BFQ4QuUT60r`bdEGvn@-SQlqD(=?} zby^3%wJ3VJHSxa`M9;sO7d<`0r#(ZC$~y`{|8=c>x%cA#tx*3by#AERJ|rl()(*cNQ;PcE5Vsk41eY5{;X<+ok!gRs3p$5(@W6ROBy+0$%;=v8)wt)?4R!gBQ}X*eDcb+4 zplJW{Mviiv-3LuSM>!p>K_8Emr%JDou;(2mSn9pOo=J2r_H1TVN zCjME+CjP4BG2(=mY1(-#|F9)wt{?Z@ct~s(^pxry%{(88a5>5PjQPz1P(Po?t7rHL z&!FX^MAW_K+SLC)b^Hd_oX=VyJ&EF4lGx^uSmp~@{QDqxTAPZ{-SZAp+YjkLi=Rd_ zUiu(Ril9^qbf6#vr4O-jZ1SFaN;IqZA4|>c|`!w@Pp8($Yy#$Vjas|CkI|!>!Z?Wt4ytx@) zf2BnGK@hrm2n0yo0%NxV8do#wl(Zxi_dvl7ebk{p)HC{4H^N3Y;f~YkKV55IW6fEv z^npY9Meawg+l)#n-t+uYuku84luPby==P@o=Qbb~SmyIgU~68r_}@Fd2Dd5{ z&mn%^5@e^h(up_d?A8>`Jd_y_M!Sbqld$7*%A4@CmX7*Xlg+fI>d31wqMmnN$Uh#t z>D2A;|LZ~@e~GK-Q#Hvm{D^1BP3ewYCGhi5Vbam7!|9osNkFNi-(AKB-qw8;G4Vgvp5OGT+J|DvF zHpJg?Moq)`4sh_=ZVrlf6W!Ye*4=VA>n{?&@hJZ8ZXnkDvij2DJf;3<9xPv0f6?L2 zjbcY>^DD9PbQHb#2MhK8uWcyyJinav93zPYJwMee;*=uced=hu{jJz+zE2-6wE4aJ z`}C`^!MlWEHTVXu;ezwQ#)vXaG^WG-V0lod+fr2vcE&qi0z z+uFMDckDwBZV$y_>Tpj-Dg56dy6oF>`qQ`N3GL&p9J_GM`d=Th46j6J|97X#|7@Z1 zzqG&de`A$1i_Py%3+97DHrg7`nlh!9P~F##>d)SE=l?|~`2KPMzHi$P-+y>@o&Tjy zmH$Yg@(=8<{6Br2o&SjdfFM6Brk?%DqC(f;lQ z3}Yr1F_~xi@13TYE7p?Cu>R>=nCY5`_IpUqT}SnEw|-u)pGWlbgeL3h9{qa$r+>=t ziFJ1IChW0%>Mm9Ph5ir=i$AycufK4Zi6pLi)}LPcJ<_XZTsZWH>+tmJFNf^~&q1Ye zgp%K5JwK&qfqJKY?lO4qwbZ+maKCyzFz(RPeZq*fe~(@t)T=f8fLySJ?QI>4ZE?4v+R_SJXv=CuF?lE^A1-k?9Y5ovrHiN9b{qeJUEIS_J3lfS_PO2B`SvLxIqtSZFI$thMT*WJ zWRUUgn$*kq*jTu|hAW+8Ebn8A!#P%Ps6B-7TprzhoY5!DmlNhKuQfE_-~Is39nTr- zd_aVjb6DHq)uU8P-qVResxWF6Ydcn2=_f=l;t9X$Ip!S_9t*OAM=N6p0naV{?m2u! z@ol;uOrzM?p7?j$RT_q%=v%MOcg9fAl|7JwP{$I`5ml*(V22NH(M0dkM7Il04(hyO zuU?In+R^meo^b^bP!dxLrjq>S0J zRY62JBsp<~D~vb2Kl9ecyIY4)YA3zug8>q7sB;MuM(qeA`#z zv9<1ve{X2KqtE^4IyL@-g~q>Qf8$@a#`9-UI_ix7N31;6HXQaJD%Ah&UVo}HdY<3O z`WI}J2r<^b%$epN{%wZy`*C8=pP6{FyZg?&<*_W2h7TkJ<^wnQM@$d5)JK`hWYDHvQNQh{dT0%#pjTl-qJ1${dNulj$G^1#?7|%JNvW0ev=wmyzzkEd@QrgyC7F*4l|s5t@k3+(0}DUJ5`Khh4}U(6k7 z5peUjQ`R7V!YE8J_c%wqpkYW4&nEFJrI6-CkTJ10O8-=58=;zeGvW> zfou`^rRqyL@V}Au#lM;6{OXsNbWQ0q1_sV{8b%L4(VI!h=Q`Y*p|d^U?XmPGJ3L0j!tygY~;d zbC;ButnsnpF(^q6e!@pbi+$hM?&nq%a%0e)N9e!D(@2g4XXRgWsKfC5c>V~NXZQur z;8x)QI+V20-#%G>%PuZafC33oqDKE~2fifK#}(R*&^Fi)bw8qYQlgP| ze;?PQo17or_xLm!4sk9kEZ*4NZ}a$js>#NwBaM7dr@{C_VK6?k-#_xNd4||~BiD}h z(eIAcw~_xB3oZPkHV;oH|G!aaL|y3E#CP4Gi7yqJ__>Zv{3Kzm597~%f`wI=9ZKqx zXNwqx6cALj1Bas4Vnp|$aBju7A8a@O>mj=D>O^$mL{T8RpWA;N=qIsSfQE?n8xh?W zkRC`L*KgN<={pSk5Nncjalo8o=)2ps{6TX90q9@%frmedWb#bcsZ+1#Uw`~RPyFxX z6QwJ!8+zi2((P}0!eklp?9;r-)16N3pE@ddLZQ^SM9r-%4|NcCo7`~w9(_{OT>82)yX z2pY@#11HpWUfgc9JX%7t(Xc2R9P3}-TDN(Vvo3VrD6H{nERU|L!8%Hje%$2ttD>^SbV?`?`;C$yyj`daQO#IBgxvv z_HMKBb&PQ`*Q;)R^$*2VczL|r+|=adK@*lIBhJP*JcTyvn_DMa*Ov1$$rYYf_|J3F8AQufC1!w^68qd zW8Hlxc_cWl0OrBK=0tUA2mhv?K}oKCB~EkQtD6n`N+)n{Bbpo?D#5xAd->2iPy^mR zExa9eo@AJV-MM|>7J~itoDecg*MSj`Sh63-h#T(YRzwRs9;P2j(GLD489=G?Sc`rvz?0h8HSfOstB|1VTfx?6L~WKe7GKG=Q76QN6`r%WU4`I8t(PK2~Oy6+`ciAQ_{^`1&c ziQ8d#&>%h%fG6~z?ceA`_#o0cEts)ZS9zOqV3yTePrRP*P!_8HJv~Re@4y=VboU*) zH>bpIV6agxuF0T45{zR6BOEQh<_OMeXU=cEPqqt|zVR$V?r zZHE~Zi)IJK5^>Xp?GBONqufGlXb7c1Xz6?2yDaR5J32ztLQO6A?Nu+GFwPqkA#&k? zK18Q`ktRyXwVM~6Hr85;Hz7GCYny93`-L8tLwj#ws=wa&vRH6m_X7`m7}tUB2ed5V zEFuJG=%kDL#m<`ZC9aY=VY9zPh|Q3xH0=_cE%#2dYxwOeBFo-+F8m3($zn+8-XW$>lyKxR5hD1W?Az&{MjCuL^?cgQZ8h#4<{6$D}~b2KH_AR84R-3DFs}m_4RO?xYcfmC{?4 zm204MN0J`heW9!LU51O&_w(V9U+HyZy8E`*k>erbayX_w6N5(Lqx)K5Jfw(M7L?PW zREMY=3HfoJ-T+z@yS?-^!oQzDS2}(l&^)a0_;)-;bU*Gfy0hmDERT@mJe{z;UHMq_ z=;Ha?v>nU#Dq}+baT&P-u|tvRj}z7Qwlj`+KI;w)Ab(7M{2l}Tn2f6q4ja!r3MwU5 znFL8BU|!{UdDp|;_rH<1VZSDiMo(~*=~VY4dO(I5Hf`lN10u$Iyod11dZ0&t7a?7b zfQn3fPYERwhs{&w`|KNVgB1 z;MJXgsd?3W+LdF7NmB1Ozoy4dbiWR3Be@Qh?(-eayEzEVQ+@)=`vv{^{PDw~}M#Cu|&u-dSsqu^l z*w<20eGaZxdh)N@QMcPMQ0T~8?k~JZmX?0_*Un6OWu=eIU~b-bpwy_|T&sarP&v^JZZ9bArKsfZ-E@;fqPv z!?b$h4Fe}%_J7FKC$e1r_Q=2hX%7O@;DaYvdQOy%Dig2{JUC#<4-E{IK9ls5IG_ae zzyV*e+4A`R91K6O>6@3q3;f+IvtK;InEikmt!zSJ#5sHdO~+)ZukaCP9679`lag#} z>sJiblmBy|y4iSn+4`oI*OVXT#pv8pd+;^}`wM=5zF`(%Fd?A$7c3@P`}I!0Xqpg2Wb&c(h$DV)hvi*}fj zc_1MUH^SHUzgf28*PgO%8gf!d7n^7b$xI8U(=HBH&HLDhdYvK^9O156?F{&pv$sgs z8Zw*YEwbJ}C{PaC54x(JHDxHr@5@4uPa;R;1)c-WfzK4|x6;NNv@P}|wV*dEnv8M+ zM6Nlk{P5+60`68$-LKY>SC3FO;*;6TvizNW45*BiI>#YiF3|?tlYIZMq8*x}=7BqV z@X5mv{7cD!H%JsJeS!^-qovO#{oQX67$>4v)6?E&TCS=Kla z#i7y*ci~0 zF6z@?xi@$Bh%{an!)O$Di8^$6P}jdv^DvEfy;Z$jH{W1ChHy6`*|E}}2V6e<7VygM zjqF+aC`q?-7t+y3sDis_(%%Dm>^Aeg_0AT~{?d?0a#kWd=87Y_P3;x}w@AOgU1q?e zQptIO`IhX2hwdg4%e51zvJz-#2KEeL0Lj@a0gxB0`qxsqZ>k98w-6gl;;-EdBfH{H zVKAW3F9N>OwZ|bRZLYVXQf`3^TD*0k8#wF=A7k%kb?5e%p3>(+;XBx3xQ}wPQkwL6 z(CQ3#H);P#TXq(9K|(D1d%n$r?*sc`VD7kg$!A2@DK%p#v%65)Bou_UJ#;7dy}kSJ zw7scc_)yq=sT=5#R<({3mzG6|7$R;F2F;}Uy3$*O;tRGpdltp-xG7+^N%9UZ3D%~F zU;E|zM;t?b*qSx_4mV#rB5ZR@duevL+7%ui>lW3Cl6_Qu9K7DD>#PQknZ$m$1RG>5 zj+ZJ%FQ^-_H$E<97U9yQCIF|%Zq<$q9E2@Rj*$YSxMMGS&jyutJc(%DZ)VR~6RIBj zx)xW=l;5Bg@(I`Eyc$eEDHg$KibXIQvB+b~jPIplh4=zvX1c3`BrH|_T2o8np zv1^tbVwo#I_GMEHr`Tj{_`Aj6WGfG_#@CR!o|FL7PT?UE8cp{bD87aKE#S&45 ziqGsI&slB%RYq3b$#8r3y?7y&{x=q?+c}L!NV?KLWg*w}>nfFL5}-<#`0KZ!-2PB^ z=~2XxBhQsKS)g=HiM*}v?!NVLP3h>1a)KEzlPO7BM@#IXl+JYbO_87@Z}-?=R=RcU zT!g56y!$Aw4a3x{>jv1pccbsm)8($x1uY=N>&9k};v<{4?u_Smu6q(UHg#l_5fYH0 zbfKA*ehrG%vo^?nP2M%A5nQ0E0k3@zbFs=;%mapfS>l-yxAcsd^x7pA8wWgjdg&9S*4uO1DN{~E z?B{p0M|hhtFJ8|Sj%#N1UDS_Tv(52N~c%&UHy;~Yk zX(@%WtMs5$Nx4RO-e>Hr^mAbG!+s%JXXjy z2AWc`N{LtD7lEvV-$K%E1(P!a(w}`C_BB$j4Qs7BD;yIge#v>(%aZe`Y+9m1{gu%c zZ2YSP-#GY{XhiF@p@a=@4@l5!{;y)&INNIM>DXj%4Yxazj>oxA#=L58e&7h433=Ti|dN zEx+F&qOD(6QNXKuYZvSWXL~lzb6x_GlGF15q3i{PvsTG;xz0 z{AqD;`+I}YdkJGc6wunQwowfV{E+T7*oT6Je@JK<$$u(r6hyk1{Ps&kXIN!(4V zJI&q2on)@Lw#5;Q7tc4hcDLs@Ec0+}vhu=aGCP01Hc|EGi!F|@4VR_NR~ze%#htaS z&17zJs8$(E)LwP0R-GT2AFqvGtiCN78GCwYaJW`pZ7g1$pwU*fS>H&;o6W6e?LvKX zX}!@*=BB2qBa<`X?_Bu%Lik&WbqLgCc4DGBK3|(38LgGe)0I7I^8DQ7Z0)j+kIb!Y zCgbxLYL}nCIOpKf<8!sq%Jag*Q0UGWMK6t%ld;Ca?#lEQ^#YA`bhp;rt1YjuBomeK z>cy$~Q>vX3$^pJHo&`^J788BCO5A&nmfsr#J< zpV)}bP0rL9hVgmFx+8sbY`&6g@2s*?^q=$K>(laZxs6OH-~2i%ORZCKAbhSr##jpf=< zf`8S!YS*`#OUcNE(el*uV{6yemKapP5ZGhLPmD=Kyw5p^e0=ueyt-pkJ0cZ2oSeBd zGDZ7yBbAZq@%iyeVvs8b_J+nb%{tLcUs3&#r{>$#*2<_&b@g>>tX95Qsnq7jr{`=) z%d7Rx&BnTV8C$AO&sByJ{SGJFTh|*+W==A?wlmul?2~2Mo!=8N8ulh8CuXO&mKw=y zIh_U2Wqosno(YFGE8z}dP^x3o(%&c=4Lu>wb#h9!$0r(myBjcbkd zq%vQwjldu_0xpbsOl~eU_L7-}=InCWr$4=7p0{AemHOsY@%BJZobWTYo?MuyLU?nd z!#P?iFzmU??0INodUEExc-v(4vJsas*EXGoZuDW;J{ae}!Av}JqoPmV=)+k7Jyc;d zw0z}PtS}+V>y3I-i%V_3{8Und8aT|mwpnvueJhoS9VHYfH@p!pJfMKiqj6 zV78X@h4*tl&vK1E>6NLkHbaZ_I=0+e+87$y#cb%DCtZV8Ig6r~j@Tcq!ze}LwaNKp z&RL6yH@OUBnQCmVK#%2-nbWmudE84@_EQ8k>Me4b>*5<^#(rO!UZgHXu)5uQegZXDUYgMktj= zeMw@>b93VXwJsmQcA`kcqZdeJt@+BxOm#x+E6NDIVkeWiA)noB!0D>UB`~;^q%2;X zfg2dv{CIh|Ha?>d73R{CuQIi@=DU)SQKgXqd0-|ngiOy~8c)iV@|-cwQD>ac8zM{W zs>mmWQz(2}4u?K3CpQ;u5ttlaJl!_(VdAb|)np5T>ipUU%g2kGi>pm!w|Cb~0%e7p znk_#s87m!uK_^WKNXhgNOjj$4V>8bOY_N^3W^xTcYXb6Vbhp`}E zthvb&>f$UOs#C{;|k?rmE7nwj4Hgu6W6lI2n$#`m&YD|hy zJ`>Zdr$`}lWuq`P<4G)U61f^FaXGuCRTaFyYq!zbvBfC2 zf~vz|>QrXJgf%50m1m5-&R+>^(z$suHp%20Sw|e%1Sx8G*c%3&;$(D0QcOD|d~S9E z=}N!D_Io-}`+?4@ODdVnUtvO4kfR}oFeH*qnG`mU=T=#Mtmy3XLF_AQ8qoc!5y$G%M!o4uoCb09 zBFlVGAK~gq{t}=znBj}FyF1&vJ64yGo&+R&(?g{8YNK(rCI)I$mQ)-QWz?-ec!p>b zC33x=9er-RJfBoAOis9FIa}V_lLQqx_}FkwJS5Co>p`Pw9ILum-_(q?7j3+5EiXgg zTBJxu2-)4*ZB?9dTBgv7C1jNATzYc8Ha8Bv+j0WTwVJdm`VPydX0wS2!fV8&DeU&s+TD;eh%mUS zmDzsJ*zY-nWm_wP$}%jGW@2PsmIARx7jU8?;S4qH@Wr_?j0DQ#h*kmPH#32aMN)6;tY*G`e%Jftdv@(@Dj&3Ma1%)k*NSw$L=ZU8=9|HWH0TV-M2H}|88*IM=K8ZIG;k(qa$IS`|>e6>EZ4kz0{leIB6Wzc5k)3qSYX^q^1 z1=p9%9+EQgaWsLhNpOua@C{GBH?4Ox3SRUK8ngDX>$ZUB64aaCP#hza3KJxiT{j0$J?_{SR8OSO~rF5fRObbDv?_?By8>eT_z;Km@Y4VF)rd z4MAwK20bBTung%YPP$9UQez#lz@toB6u_1ncdDLRGUe|wU|qS5Qc~GJOE*|DviYk z^8VJQ(L!WUW`N90K(-8EKPpNBM$t8!`R8XY_LqmA>h}|}{T6;|aPaB=lN*cMyKi2^ zAkf%5x$zY5JFB}J3;bOseR=!ZlP8yk&gvBfedi>HY~PF^vP43?xw!gfRPJj}HBN54 z3CE75?f#Q1{D0|sy}5jHxc}rVZ_CIt^^+)$>OqV5<=sttPScWVb5SBmqt&vNY_z_+ zRAB)yf?zy?iiFO-XCr3fGISVtzc=8sm9o5ZRj zp~5oGv`y04@=PWe1ab;+%v7s$vaC(7>?Er)telIM-;4=u)c0!F(59SmLr9TvOGRW* zu)b_p_C|M?m*;k{_h8E~V6YGm%R*dz5fjXYffU3HtVF^5xjmnjllj3+w5SHnh8U}% zO#F#OsIefiVzz8)7dJPeWG#v}!Oe&x;=m;lnWC!oYc7olb9wGJ2F{Sj)F&C3&@Zvm zS;rxoL8`zFA)}ym{>=?J$cW z4`U1aWG$&>^DMQ}u&;qwaciiNep#dMrED~f>T7rbZdKV ztF=?09G7DPyLahZ-($-vDoBv>eKik+Yx;Mvgkz5rGvCp&GB$;VDkWQ_TCJAPS8QP( znJiE67$6L*rnoUPl#}X6XgD)$Y^MU4iAoV+PB3Q4*Bm=r8ykuC$?~WZc^E{~wrr!r zH2T;H2H|pLlARF@ZD@?z4GV`|DEQ*I~dwCfptO%E9*}|YtnQo)eF6cIv zz7jyUy?Oy1V$7uiTN`YK z#J!_n(z-NJ8BC`69kSoyWUq$BUxGVRjxm_M%rtYg*G7V2^tw{H&=py1XNzu3FRx!c z(=KO}8;jP-a2mA1@^L>bzUR3a2t zUCQ&$%p_CM#2=~LtxS=kQzFWn1eBOFjg-eHFUj^w^XF>wmGiaoESwyk69jb;>YN0O zNKn2Rg+i^pp4N6f9d4$8c4sn;W>OkWW*7-uJoB?>k$u<}RL%5@ZNE?wd4CciZ+aXd zWXx726AfbD9BXFgb$N9Np*b!D!d@P&EitJ^D^X8JFc($lCo9SLo~gd;k_$oeHSu01 zIDn}dN#w2$hw33qrB9WguOwyyXstGucC~rf${Y1fCpbNfQZUIbj|MafRzau_7Eoz( z64s0TanegoQYQF8etABmX%a@GTn$_!^8J*A=ga$(#_@jMTgdE82CCSiKHKJ0w5d@HF*F+;U#1!Js8}{q zEsueN|FyDNyliE%}>p=b76x!67yIjE<-~g*@$pRc*sVp zEPJtRu3;91#e(JcbS5CEH(`JWw;ZSz&LWBOEuv&>Bf;$rX6_O#<( zrnWi|p5Z*>5p0CCo?XJHVyUFqemRF^9yJ#)Jj9G15X;Z-bl_ zY^S-k9(Df4p3UnsvfxTANvBIdOJqh`d92y7hIU5G6zA_VoxCvPiB9UENK!xUs3M3dji&BRcj=~E_y8?7;p=33%bpop;4c$KidJ%YDE zuo9>2J*?xoRa@4JC)|&?BhA6qTv9ZqxGX-aNO;ivGmky<`C&e_w zY@Sz&=Q(3>C`VdsY}jzBpjSZ_EvjL>M=F(QZC7dsb6}i}fym7>MoLAlQ-Pg~j-f<^ zT@m#=mYl;phoA;Nfl5ToQd^tXzM;*9vu&so)0MuMOau+MzV3`)zBon+=za5Ri&y<6 z?Q+3@GS6PzeAPG<84QgLZTa9U6D-K zonxndZ1R#2*IJx6zlrJDF+_x!txW`ot4f(EUm%!_6MCAsKST}Lf;1~NASIe>i4!zkybD_a;8R4}dI z^V%CJ?0hmTSoyJd5Y23D6F*;*cL#1T17mGRx00K6!a03lOv;;!DYz|HM5}QCC2t`#Og)1MXS}s=}w#_+HbV9p@7XU zFB_zl-OY5C3Z+56mtZA6V}w?hfLbw2ymq3-(c58s2-KD($n68GTN{mm#%^onUiqu{MW(+1gs(!T8i^@4zgN?EBbhZrB1)58fX zAKPd_3JO#yVkjs)QCe?oE>(jNXw~LbK}=Tk`ZlYB4?7 z1)<_B$TPfJZEDQe$5?A8j(A4DZs`cFUa2iwE#>QA0>llqu?pU2%tbe1xsGTCQV7>< zr2GZ3Y;Hx9U|9Aj!cGfI5kwr8qSe;YP$JPM2senhPt{<}TJ5G;?J!&$W!79UESgEf zWS(q!{Ywc7q%4CA@Tq=Jwj4Zxiq$F^oxn7(xQ;lol-OF8+aq3awjjff%w?(O5NG`O%AlhFd``*N+MadA(|9W7@Vh zrkQ)Tj;vxggxOp`jTDzKugoBRj#Y=w4L)5n%PyiY_RV1j4^7P76{e>(0!Yb4+9`+C zK<3Z=VxIQ?TtG|r5sr862?&giSG4 z!YG*7mW7;Z)Oy&!G{Gz|d04~P_{=24F;?| zSs}T;(YaX$+&8VmSDV-Y;$nBLL!s$hE`#6R#gAjlSx=Jj%_aL1YMb9H7%4((5z^3# zDk)@cE!noGa}M>mSXac0n1qeV=2G9;?H~WNWOk!Ns)o9UB?PIP|d1)*EeEmdmYAvqs(vZ7pOyTGpaAFB6Y=!DO)PUa;pj5};VU1)R&jN>W1&=o>*FKy+ z)^{eV$+az3cc}dO+NJ@KcDA-1<^{cmAw_fSQ+|d424CKiu`}-zQ&0-=i-G&5do8{| zHPe$DVZ~}HlNpg>2HuOZNc_N}@9K7;8BDe~@}{+Q&NMNeDeDk`>5MoGQ8XyG9oh(D z7al$)r58}Z;EY$4 z_V#KP9Y0+?_tlvbmT*t%IMxysX~>LWvApCaUyox7IZRB7@6;vbrhs<2n+wOL2owf$ ze^z{+JA;GQ2p`n*LfxVBas+S#v>GzMnMis#BJ>;OC8 zRv=ar(l6I{7FU;xf-|QT+KHnCZFERK!&b9CvjDmi zM$8Y}XSbfAv@9A@PhtN)W(km}INuA!(LN?Ozr`d0DGr5IG(v7-?$p-x`Bm&vt2*Nq z{3F=DFjZU-))t$7-a@UU5a@%3rsZo>1c*+MMINPOhPQ6uxtii(ZDloUNhQ=LlaSI5 znS~95!R+#7)G>~BMZGO_F?J;_5YHB+L zp^G_UbeN&xyv4{W5Qv87Jlq9@$97^@=OqIadKzgh=7d=-?pL6}$H?L$UQtFTF|QwI z0*GL<$zV?bY9FcgeiebC8K072doVWC0V^FWMq%=zmbMxxg%uj~Q#IU;C#GQYn~N`k*19eTsqL;WtzBc%=V8EawXHHqVmWy-*R*gm zWR1Y^*rUXab$xwpxV772lrdqlg_4R2fB{+ic=@N;YCahwC(aCOHg+v{mjOp>o8}K> z%fPE%96-9Wx&ScE1Of=nyN$ICK#h1j`DZ=rR9a9*`;W`X-n)F^fJ8^kkPt(^3^Cea z23c7R27-x6lCjmGy-aCSfP}TJ?X4CnF}_*Tte<;E6$H2Aq__juxbT6^`fPM=g%_$Fz8W!qF~fwCuM-S){00{0aN zW0E-w2)M#0xJqkvPTrVfTh|>wc{hU_ehxK{UcI=jt;~J(PP6C42OX8zY9dly+QKUu zxAH8bQ!AfdO}72*c=1;Yny3D8EnkZ6#s_n%Bj?VUO_olN7z8oCWP8k-)C7E;sY zq&s37jmn8KJ1%1`O|Pkba zcx42d58Vk!5?tH4<1vYrEtc1bwFdHd&eWTA!{p9H{J$j(WlaIJyZt5GEMIv~(u5Wq zr=eLxny1)qL|iNdwonwaMckX;w0FWqCs-DD%h~2u24rZxGCESJjj+brU-qo+@97Ls zX>3`4Vw=w894PQACvMD)=CJ1Gj`6()cC=va5X9uFuCm`?nVOtTwCz1>M`so%%g>82 z6ci!$V_(BIpg9dP9c^L3+KAu||ee^?7Xc z{B$`^YhDl=HT`vy+vh7#IXIpDy;}ata zDI;765rQi}>-TpzheaES-PSgvtFl(fKB!algfIEp0lzYS33IY)>d;i^uzmH(F3W6V zvt_$D<;J>)c%hmIdxG3^Eq%GU1uo1RpSv9!g4OMAG}6A(?pO-G7we2~|5h9bBW#Rp z5}v6DfiDxx%_({>bF2$_Y=1G!b+I~%|MaUDSy3)rO;B}+rfOE>J;q^HP9>ZFVMO5q7}SGcj}TFLs((&By;;N6SG zRQpjc=Ag{Rtq2Y$LZj3nfcFy91ZzT60kJ?L-oonLLUO~Zm~~X%j{DM8FN+rv`Pu@$ z>>HdpS;>{*NO&il8PR1iJZ!j@6xd^bH}RoPyIFo7!r9AJZzg|hAoMnn8>-rkDUM+X z-`hu~4V_uW{CI`3>3C(iSZr9WayX?!8~Kr=Xr$}4;r0*7Vk4iFQEzAv_q`5n%Be4h zkZ3osp)*>D4Tia9N^UkJxCNodl4J z{u>UJCR(oYtXLRhCQP0N=t5R$)*4vrlpJ|qadt36gG*V25FbFuYRek3u@9pfm|7kYjs)X7gojBhy|VWG^DK6r4t-=n&H7NMaNWm1|Y#t8f*x50hb9D`r)0xXo1Mw$+FZi&S;nEp^Qp6WQ~{%W zoWoajN{6VEvAODWE-f7-uf+VCET6wSmP9MDJ6Xzbs3uD}y)T7Wfi@mlo~J?z$Unc8 zoyad|VDTkISQ3eD3_qZ4gU$vuCL4WOGT03@+e}THwUgr(e8-ch-6PfEJd~zb4Yu3n zL!N#R+V-W}z_rgcOH2nteYn2HK7H2zbi$>esV5<-P6mqV(GmBN<_d}+j#Mcu24tQv z{Y#!cCML4%)v^846R_MTPEBhU6Ly!Cm}N>~vos?;IX&27+I*-FIye8!teDlfKiN4_ zo*nrVk;zK&CaX}!= z<-7;SC~H5v;@++Ba$K~%vIrBwRGZF4(tTeWk+6X~UEixLDH;K^bZKmi*QDBDA!;lc zN-gX8CN!RGinmi?47YQ2P65a(Q@d6h z>F^PjnZ-AyzoA5qf2+7h0DwhyBg zZD572gt@KAJ*tDj3Qk)_lJpU_glvT%w1{Ee31^W_l?K6^W~$KR<)&3MjhRYemz>PS z_6(m}8%t&Om|A%93#ys=Mq?;_B1DzO)yj*80_Fu%Ms?cKBcd$l=N-B|caec_HJaBN zOQ*fTabNC34c7GJSj7IeXd^}J`KDW?I1A*|5j`_#AalO~5fV#$&V*|1tB7k`3uH*t z8p5C|CBlRmJ3x0PF?ul+gbvJy4j{AgZ86$`1I62TXCtjL#(Kvh>S;>TR|1kFz|iSF z&Lho6-6|jl(zJ&3CWM?-`7gqzf%t;d@z^{yXlMCK>fz`DSuJKI&p?-b`_ zEtwrBKCYhjjZkPLPa@TnL=a`A1mz`_ZNhSM535II4d26Da(!V@#ytfoapM&3yZA~< zC{|70U0d{H#Q_6k2q*d~dlCaOConX6oCabIR+h}NfYmJScTrqcha*xPgfpEebRyF@GAIkxk%~tGNl%#lTC9l3>P`&myze4%66jkoweg_`*D~iL6hvxWJ@a9+Tza za9V^wtsaL-d?Hk#Kp8}9H+QVKbcZU;DN2jAY79jSbXBY(UHO$v0Nw(y;w|o-rDx>oG}u@eeW-3GiOig&3RQ?<_L2-MPmVv4cyGU z9^(fc4^4C14%?(m*6CT*e7-<2F^L|R>)Q&wo-We4PlijzGFddgbP1mI=8H8sI}zx- zHk3OjVjY(fl-7fL$l~Hg)Az(24Pn0IJ-+lo@Y@h0N31E9NgUU-t_V|l5H^Y!1&qa^ zXGpT~5g5T`)L;yQ6a81mH5PV5Zz0WFMSvuF0q8K$E&}LxdL14#GlXf%aH`Wm6ststQVrK|#2uQnOYN8~n zLObF#ZB(xgk`stjud^U$1oY99fRd?Tw z@EP%?*ovtg+ucXFh5}6$`i9S*+jjFjFlBDg=6ofG(b!I$J)j5?HKy7WbTI9d=TM-$ zCv!E}hvC@AEPz>@1BKbo7dbb8y9O zijkRI6G=3F@YGqtO)uNBmf``#>?bVN0-p~NIs7e9TY;AIqpA4-nJt?s!lYM(nY1y$ z%h+NV?;@*)<$KVobokZTSt3PcgOIJu8G|I(zO^)+iV+DZ_bie|oZJ~`u|SSx1pb(I zCF^uthGL<>a|{zPEz4b;*yPP~G+$&=YU?cLwQL#+EkXE=)aYc9UvOjdTJgdHx8$ce z;uio&dHhh3t_2L13)Ucy*K5_gq@NB>ti}OHJSgJ4UM2ah|)-3LrM%ud5W`=IsAe4)M+2|DlJ#@9%P`z!aj8YwVT>$;VR z7C}rBV@K>QGL%^&f@DPOT4mcbrB#S_9UDiB^V0zn0mpoEVJMPy3R+HlEDCiLiMW{Y z2_3=Km$K3d#jOXetdipF z(~t#*nc?$g05lNd+!H9B(bB#KWmrYdU6cMC_1q*=1hKF&iYzJ zOnVdRW(HRU8@jfb;$?Bp3yVXZ%bp{B_-s~9p^@189HR=+-)F1UigN@s#n38zGCYY( zvxW%QnYA#N7zNAIvX|x3Plm~v12=JaRV?E);)jl zPTfptm4xK+8F?TVzR=_Cdb8ncZoYJ$eu^Mvz@N#XA*_x$RH(n)qp}Y-i~)XmGu7Dw zAfUq4Fc*_UlXNl@p+Z_g%qC=#U4`Mu%{4Y#elkE8ishPBwgf9%$bj&cKAkNViWpOg z*zXK9ofgD=stf8+K+`(H5|Se(Kh-K2H8MFULtPB8Exa}s_}L7-Hb%sK3h{mXPGd$`a_~otc^=Z$Vpk*RPBtp z8`62czP91tKbV1lZ9j9eobNL{AlyK?ZRg=QzbQmrwChC8V@VC=YRrAf_mm(YqwE!H z8^Ua4StShqh0A^!XmdSTXmaTS(IPEpFz)B7EF!@_P=OdO)whD7V?Th2Ihbk3;^qd? zieU{*Ys})IrAhg2M$78b_)4R#Z+vUR5S$0`P(%Rw6O0w(`cXC&2B~`8@BC-RkDp&3* z#6y*Br3N`$P%!rgOij+<{jv;QE0G-~T%U9pA04sbF*>LiV3unu4f%lUcF-n!QpwKN z4!b7Hn{22mX_4Vwu5DZ;WK5!)FjU)h3&W$!y;=$#!)J3iS*~%ZMB^&&yPNoyU*#}R zyrWSSZNHc-S;QLajOx=pinaCn0=_@mh{fh=LcibYv|QWLF$l7Si=E^W1EBO}m&i8D zie0m|Kx4|L4-K|z90k@}mGs>up^4GEnvdf%y|%=)S&E_78kk>QYc46|`p%036U4b` z4YWYiQVb}x*2)Da;vN>#lWjr*SqPqG90crv4Rg6@wBBvEl=_?GEOs@KxNM)9$U1h< z>*DIwn(gpO6r&$1BxqajUeMch3$1hAix4HYw%keI<{Qbge6LETF@clv#r_%!z`oVk1^%bqAdRo4Nx>&*BJAFVNTmYS>&nJ zRyKDRIrCLp$CHI38!?N)v!*pled3}%bwzzxCNksJbpprX&a$?wQHRQE%h2AM;+okD z+182MWGFG%HXGNKVhNja1zN6!iLqn-6X`1AlJ!PC+?21tqJ0zIVRlMouX>4&8)+JV z3(LHdY$UyHr8!K!oe)@lGnr@+EopqOe2wN9%NmXh_#tTmaqM+k{UIfp5LqOfHcy24 z7KaQMTRQ~0bVmtm*e5g5mK~oqvs(B-yvyJ1z9Awf5pE+{GAOPu(n-2|l@S7WT!F&a z)eOv9if(2!L;wW{4jXl5B&1?=M!+x}MnXZSwk7=Qjk=nuozZj*H;tY^Z4$XB?{GlH8=GDNz<_p9}yf#ZV^yq*MnE%e$vMMRz+mg?dr zJKG^J)%f14f(2%^sc8&M?V+uxL6e+){qX5L=JK5#9U5H<%ZP51+TV0iYrr$vaNp*j zQ;j30+co$Oym`-F5~vp!aVA$%n?~0~LJ-3h= z5oN{vPG&bVV~%~8m*Xo?OP$imEIJa@K{L$Y6``0OSXIX5V>-PXE;>qEw_0N*XjMZs%wN*(8J%J8eM+tto~g zc<<~-P3)F*OUsN$Qbex$${w)pwO0Kih_PMbti_lOF`wKIQvli`C|aF%k6`Vb;&$xo zI|m7nd9w20)Cnd9JQ-ae(Z%htHS~} z*M`oj?`eaUGh(kWLl>K;g>GGPT0e)0qUE&|Nl;^Txqh{AaeKP4vr4Rv2yN(D5mV$g z8-!(Ibh+~(x}IB-iFldoaI7nvwQckkCR1^aDHm6;0=|10i6!C9^mT;AL|8C0R9c73tQWw#4qCzIEfy|-e*`T{{eO}apg zJi z#+zFM+}C(=b8EA4QqhnGY&Zt|0>`E8fmOU%Llra!G|XS?SG~oRjT_uZZ5RR^#W3ZT z!GMrqN85|?v#b$s14Idpgw;!GTPFLRIyKPte}{Vj*a<)jI=2Rb9uKq7v95+`OBN=& zRvG7JfGWY_iGyx6zqrJOosu679%&nfdvQhqRcjTJKqxfp`VK>s8xXXOMB+YlLMdr; zn}nNSuVe4}5}F(OxPqJ5JvsbE0OyKar7|*W8{2FsTM*gWGFvp(t~xEk*wE!bj55T4 z42wO;(Zaw=F(U@OZbM<%8$0lZhU8vyyS7&2(Ha*9uUkJ`*Os$y>u1l@eH<8|nl95! zYMYJ+3aqtoLk?ZaMy#p%y0MU-1KUqZGZnnnMCgrisc#Jq|Y;!?1| zNaY(1otK^-zNW)gGn-Sb-fY&X))cTBy5xdxb3!w-bfBT1*?Y+M@1V&|YNw#glgJ@&+Yw(tc&S$_+B` zZJOyhA&@TI21&^<8)pA2KoaOBWHy3{RA3eetB~2PZH?MmvIoConc02UF6`@-uqYA0 zxP7|X>Er;iO3f{2wN1DS%u$WE-kt2$?3xT$C3(|5G%1T*#4ka@MFc2=Sm>|`h;0X{M=R2+Ye$7t_|oOE$@2iMIG*TTv-1}SKv+Y% zFpFf38KaM4F#5Z^ovf^HEwIAcN@z#E2Kwi=-9ge7(NTythw59P;WzrR|8Mq+~ZdU0|!Y|FbKgd7QRiUwqf@8h&@yi@+(S zN4U60H`FDUISY2-m5~Ht$hgc6o&`Ml`xyn})kf zBb7Pjf@gX*5-uaiZ7sCG&L`@1nLBu>mIfILE{l+(vQPr`Nr)is8Xv8tY!g6jf9K~MUyVER& zxb$tYxyYtdEbgO~)r~kPC)4bEzFQi2(^^!T6-iW`WnJH{XZ370SbJh4tY$8&#{}=y za7v7>F^TG&1pSbETAt!dz&v&t0UI};G~GJpec9ZiaQb0sYlq=Pl_`)OGoj7_neE*) zy|s`&I_efTPP0wbln~2#LIp`)TFWNfV)MoAovmb*@c3kSmnP1;vgsR;-)Pl_o;ou; z`1HB7ZZ?${c2HRYG<$X^GksO>xUFUE@-7UufV6AbIDx`z87I)&ndIWwq_n-XqD9or zZPc>RjJ;;y*=tszy=FDqYp$oNDmOFrn$3C3{8ZYI(HkLoiqI%ELxJ9&PD?O9Fe7cT z`xk+=+_fQeaqV~4YE2=RvuW}B+PRI4=4Gmi9~K%}BW!ENWYw2-M{iHvct+-y2PWr` zG~5z%}>)qko=j_`(@9TM~`~3$$Q2Jn@>}!+W9s5onfqf$f``_oAw+T$t`2_j&?<4mn zy|1B9qkRv*bm;xPAGqa%Js;}+wu9eZ`VMl9^bH>PD#RC#}53d!+rNtcfaLKl25%Z>HQ?nBYj64DP*{JzD{#F@{d1qI_VW1 zMS9uc{Q~a+k7@c(lm1LDJ<{G+NuRRx48B;`*qNmF*<6{}=1ZhML3(`uM93H4zs&nV zzQ?is3h$q`dW-+!*q_G2rd?fCseeD`rR*dP0rw(no% z`wv;Y_Wjud&w7S_()90RPba;f;%`dV?>z9r;l5rtN`{|zepAx>6PCy7xN_k6Vjai7 zIqCfx1xEY!@vuSRJip%PeY=Mr{%H&}&U!z3KJpQ3wFOxJ8ig_%HioFd^=+>WOJn*|LWtHZ%L9* zllS2qyfOW^Nf%uQda(W}|M3e+Z@zyq|NW$Qs^{6Z^#0K966sg0{&Wo+T=FHXqipgq z8vSX?h~D$KRr=>h7Y%jl<1h35^L)?KMteTJe~o-!A)m%FzW?X8_pi3S|9@@oUu%2+ zZ*A|%WU>AO;axaX`v-aFPujnjeuVTq{4xDu($93rf2A!w_UAiEkF=`xKFs@^m$!93 z=KDfhzAxUOzI&d_WJ1;V4DX+2ZGu0()b;MeCd+BOtZy^E4o7+Mz^L<%*yb3_HBClR`UTRD+Ip7K*R!y5iAdIl^61|x|3!Kd z{VM&+T$HblXVT+H->19g4)-0Wg4njoKa(r3zN-Au7n0sDSi14B{!QL2QDYQTDl@WdU=n0BbJTxEWR^*DV@b~hug{>3GcB_eY~GFI5T``oMWAL zvgC1_W3!d z3CX{9IAeMqCxSnwFYp}aq;L__zvk%&u7>f=e>>=XJFuM_`&e#?a{0VJZuMk1RbOJ> z^|rjvTHfADs5a^6J?0&>Hgh!eCo&p}dDM2Gp_NEO@tfL>Z9n#Qry-43{4S!J5dEPW ze>mvI2NtO1XN�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 U7}0oj)yFq?;6h8DUuyXNCnu{}-v9sr literal 749540 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%0AchWjkxJSu>Mf{PgFMhE%CYuR7<6+*H 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 QI^Hk8>Lg2^lWF+=A0j2zC;$Ke diff --git a/build/For_stm32.hex b/build/For_stm32.hex index 9f6ce8a..b49196b 100644 --- a/build/For_stm32.hex +++ b/build/For_stm32.hex @@ -1,45 +1,45 @@ :020000040800F2 -:100000000000082095B20008F5440008F7440008F5 -:10001000F9440008FB440008FD440008000000000B -:10002000000000000000000000000000FF44000885 -:1000300001450008000000000345000805450008D0 -:10004000E5B20008E5B20008E5B20008E5B2000834 -:10005000E5B20008E5B20008E5B20008E5B2000824 -:10006000E5B20008E5B20008E5B20008E5B2000814 -:10007000E5B20008E5B20008E5B20008E5B2000804 -:10008000E5B20008E5B200080D450008E5B2000839 -:10009000E5B20008E5B20008E5B20008E5B20008E4 -:1000A000E5B200082545000859450008E5B20008FA -:1000B0008D450008E5B20008E5B20008E5B2000889 -:1000C000E5B20008E5B20008E5B20008E5B20008B4 -:1000D000E5B2000861490008E5B20008E5B2000891 -:1000E000E5B20008E5B20008E5B20008E5B2000894 -:1000F00091450008E5B20008E5B20008E5B2000845 -:10010000E5B20008E5B20008E1450008E5B20008E4 -:10011000E5B20008E5B20008E54500081946000808 -:10012000E5B20008E5B20008E5B20008E5B2000853 -:10013000E5B20008E5B20008E5B20008E5B2000843 -:10014000E5B20008E5B20008E5B20008E5B2000833 -:10015000E5B20008E5B20008414A0008E5B200082F -:10016000E5B20008E5B20008E5B20008E5B2000813 -:10017000E5B20008E5B20008E5B2000800000000A2 -:10018000E5B20008E5B20008E5B20008E5B20008F3 -:10019000E5B20008E5B20008E5B20008E5B20008E3 -:1001A000E5B20008E5B20008E5B20008E5B20008D3 -:1001B000E5B20008E5B20008E5B20008E5B20008C3 -:1001C000E5B20008E5B2000800000000E5B2000852 -:1001D000E5B20008E5B20008E5B20008E5B20008A3 -:1001E000E5B20008E5B20008E5B20008E5B2000893 -:0801F000E5B20008E5B20008C9 +:100000000000082025B80008F5480008F748000857 +:10001000F9480008FB480008FD48000800000000FF +:10002000000000000000000000000000FF48000881 +:1000300001490008000000000349000805490008C4 +:1000400075B8000875B8000875B8000875B80008DC +:1000500075B8000875B8000875B8000875B80008CC +:1000600075B8000875B8000875B8000875B80008BC +:1000700075B8000875B8000875B8000875B80008AC +:1000800075B8000875B800080D49000875B8000873 +:1000900075B8000875B8000875B8000875B800088C +:1000A00075B80008254900085949000875B80008C6 +:1000B0008D49000875B8000875B8000875B80008C3 +:1000C00075B8000875B8000875B8000875B800085C +:1000D00075B80008054E000875B8000875B8000826 +:1000E00075B8000875B8000875B8000875B800083C +:1000F0009149000875B8000875B8000875B800087F +:1001000075B8000875B80008E149000875B800081E +:1001100075B8000875B80008E5490008194A0008D4 +:1001200075B8000875B8000875B8000875B80008FB +:1001300075B8000875B8000875B8000875B80008EB +:1001400075B8000875B8000875B8000875B80008DB +:1001500075B8000875B80008E54E000875B80008C5 +:1001600075B8000875B8000875B8000875B80008BB +:1001700075B8000875B8000875B8000800000000E0 +:1001800075B8000875B8000875B8000875B800089B +:1001900075B8000875B8000875B8000875B800088B +:1001A00075B8000875B8000875B8000875B800087B +:1001B00075B8000875B8000875B8000875B800086B +:1001C00075B8000875B800080000000075B8000890 +:1001D00075B8000875B8000875B8000875B800084B +:1001E00075B8000875B8000875B8000875B800083B +:0801F00075B8000875B800089D :100200000348044B834202D0034B03B118477047A5 :100210005C0000205C000020000000000548064B48 :100220001B1AD90F01EBA301491002D0034B03B1F4 :10023000184770475C0000205C00002000000000B0 :1002400010B5064C237843B9FFF7DAFF044B13B11E :100250000448AFF300800123237010BD5C00002030 -:1002600000000000E8B2000808B5044B1BB10449C7 +:100260000000000078B8000808B5044B1BB1044931 :100270000448AFF30080BDE80840CFE7000000006D -:1002800060000020E8B200080CB410B59CB01EABB2 +:100280006000002078B800080CB410B59CB01EAB1C :10029000029106916FF0004104910791084953F8CB :1002A000042B0591002402A901931B9400F010F97E :1002B000029B1C701CB0BDE8104002B0704700BF2C @@ -110,13 +110,13 @@ :1006C0004303A1F13002092AF5D9059362E74021DD :1006D00000F0BEF8C8F80000C8F8100018B14023B8 :1006E000C8F8143002E70C23C9F800304FF0FF308F -:1006F00082E700BF74B400087CB4000880B400082E +:1006F00082E700BF04BA00080CBA000810BA00086C :10070000000000000903000870B50F4B0F4DAB420D :10071000A3EB050607D0B610002455F8043B0134BE -:100720009847A642F9D80AF0DFFD094D094B5E1B38 +:100720009847A642F9D80BF0A7F8094D094B5E1B74 :10073000AB424FEAA60606D0002455F8043B01342C -:100740009847A642F9D870BDF0B60008F0B6000888 -:10075000F0B60008F4B60008830730B547D0541E41 +:100740009847A642F9D870BD80BC000880BC00085C +:1007500080BC000884BC0008830730B547D0541E15 :10076000002A3ED0CAB2034601E0013C39D303F867 :10077000012B9D07F9D1032C2CD9CDB205EB052512 :100780000F2C05EB054535D9A4F1100222F00F0C12 @@ -271,9 +271,9 @@ :1010D00019801EE7B2F90010084668E72D20002AA3 :1010E000A26084F8430002DB23F0040323600A2596 :1010F00005484942AE46CEE7037884F8423004F111 -:1011000042097EE7606842E788B400089CB40008A2 +:1011000042097EE7606842E718BA00082CBA000876 :10111000704700BF704700BF38B5074D0022044636 -:1011200008462A6009F088FD431C00D038BD2B68B2 +:1011200008462A600AF050F8431C00D038BD2B68EE :10113000002BFBD0236038BDBC01002051F8043CDB :10114000181F002BBCBF0B58C018704753B94AB9C1 :10115000002908BF00281CBF4FF0FF314FF0FF30BF @@ -328,7 +328,7 @@ :1014600021EA000199400EFA03FE22EA0E0241EA47 :1014700002005DF804FB0023EEE70000064B074A7C :101480001A6000225A609A60DA604FF400611961B4 -:101490005A6114229A617047EC040020002C01402C +:101490005A6114229A61704738050020002C0140DF :1014A00000B583B00D4B1A6B42F480021A631B6BBC :1014B00003F480030193019B094BD8680022114675 :1014C000C0F30220FFF7BAFF0001C0B2054B83F85A @@ -356,2584 +356,2673 @@ :10162000C3ED0B7A084BA3FB0232D208074B1A60BA :1016300002B07047AFF30080000000000000594086 :10164000C001002000008043CDCCCCCC080300209A -:1016500030B40B8804881B1BD1ED017A03F6B73C2C -:1016600041F26E74A44518D890ED027A06EE903AD5 -:10167000F8EEE66A27EE267A284C2468284D2D6875 -:10168000641B06EE904AF8EE666A27EE267A9FED16 -:10169000256AC7EE066A77EEA67AD0ED016A9FED5D -:1016A000227AF4EEC77AF1EE10FA09DC9FED1F7A88 -:1016B000F4EEC77AF1EE10FA04D5DFED1C7A01E002 -:1016C000DFED197AC1ED017A07EE103AB8EEC77A6C -:1016D00027EE267ADFED166A37EE267AFDEEE77AF8 -:1016E000F8EEE77A77EE877AFDEEE77A17EE900A62 -:1016F000B0F57A7F06DB4DF6E053984204DD4DF6F7 -:10170000E05001E042F26020022A02D080B230BCF8 -:101710007047024B1A68024B1A60F7E71803002063 -:10172000100300200000C8420000FA460000FAC67C -:101730000000004738B50C46C0F30E05274B1B6868 -:1017400013F0400F04D1254A136843F0400313609F -:1017500000224FF48051224804F043FE00231F4A28 -:10176000926812F0020F05D15A1CB3F57A7F01D2AC -:101770001346F4E7194B9D810023184A926812F032 -:10178000010F05D15A1CB3F57A7F01D21346F4E755 -:10179000124BDB680023114A926812F0020F05D148 -:1017A0005A1CB3F57A7F01D21346F4E70B4B9C81A8 -:1017B00000230A4A926812F0010F05D15A1CB3F5B2 -:1017C0007A7F01D21346F4E7044BDB6801224FF421 -:1017D0008051034804F005FE38BD00BF00380040CA -:1017E0000004024070B506460D46002408E036F8B5 -:1017F0001410054B33F81400FFF79CFF0134A4B21A -:10180000AC42F4D370BD00BFB8B5000870B50E4649 -:10181000012806D90546B0F5805F03D94FF48055FD -:1018200000E0022504211E20FFF784FF00242FE0A2 -:10183000012334E0012238E0EA1A92B2012A0ED9DB -:10184000013A92B2E31AC3EB833393FBF2F241F60F -:10185000FF71891A11F5005F0DDA1C490EE00122B3 -:10186000F0E7012D28D96A1E92B2C4EB843393FBB2 -:10187000F2F3A3F50051B1F5005F1FDA89B28900D8 -:1018800089B204F5C04080B2FFF754FF0134A4B21E -:10189000A54216D9002EE4D06B08012DC8D99C4270 -:1018A000CAD2012BC6D9013B9AB2C4EB843393FB55 -:1018B000F2F3A3F50051DEE70122D6E741F6FF710E -:1018C000DCE700211E20FFF735FF70BD00E0FFFFC1 -:1018D00000B583B001224FF48051164804F081FD19 -:1018E00000224021144804F07CFD0023019302E013 -:1018F000019B01330193019BB3F57A7FF8D3012259 -:1019000040210D4804F06DFD42210C48FFF76AFFAD -:1019100000211E20FFF70EFF01211D20FFF70AFF07 -:1019200001224FF40061064804F05BFD03B05DF84E -:1019300004FB00BF000402400008024034B5000868 -:10194000000C024010B540F40044284B1B6813F013 -:10195000400F04D1254A136843F04003136000226E -:101960004FF48051224804F03CFD00231F4A926846 -:1019700012F0020F05D15A1CB3F57A7F01D213463B -:10198000F4E71A4B9C810023184A926812F0010F69 -:1019900005D15A1CB3F57A7F01D21346F4E7134BF5 -:1019A000DB680023114A926812F0020F05D15A1C1D -:1019B000B3F57A7F01D21346F4E700230B4A9381F3 -:1019C0000A4A926812F0010F05D15A1CB3F57A7FCA -:1019D00001D21346F4E7054BDC68A4B201224FF4B0 -:1019E0008051034804F0FDFC204610BD0038004043 -:1019F000000402402DE9F04F83B083460F461446A1 -:101A00001D460020FFF79EFF82460120FFF79AFF48 -:101A100081460220FFF796FF80466020FFF792FF85 -:101A20001CB1012C02D8022403E01024B4F5805F1D -:101A300004D835B10F2D05D90F2503E04FF480549C -:101A4000F7E701252E0206F4706646F011060194B0 -:101A500005F00F0504FB05F51DB1B5F5803F4CD22F -:101A60000195013CA4B22401A4B2BAF1000F48D1FF -:101A7000012519F4F47F00D0002518F40E6F00D072 -:101A8000002510F03F0F00D000251FB11BF0010F03 -:101A900000D100252720FFF755FF43F2300398427D -:101AA00000D000252820FFF74DFFB04200D00025D0 -:101AB0002920FFF747FFBDF80430984200D00025E9 -:101AC0001F20FFF73FFF00B100255D20FFF73AFF21 -:101AD00000B100255E20FFF735FFA04200D00025B1 -:101AE0002B20FFF72FFF40F20113984200D0002572 -:101AF00085F0010003B0BDE8F08F4FF6FF7301934E -:101B0000AFE70025B5E72DE9F04F83B001900F4610 -:101B100015461C46BDF834B00020FFF713FF82467F -:101B20000120FFF70FFF81460220FFF70BFF8046E1 -:101B30006020FFF707FF9DF830301B0103F0F00332 -:101B400040F201161E431CB13F2C02D93F2400E095 -:101B50000124BBF1000F01D14FF6FF7B05F0030517 -:101B6000A400E4B22543BAF1000F36D1012419F4E0 -:101B7000F47F00D0002418F40E6F00D0002410F081 -:101B80003F0F00D0002427B1019B13F0010F00D1BB -:101B900000242720FFF7D6FE43F21223984200D0FC -:101BA00000242820FFF7CEFEB04200D000242920D8 -:101BB000FFF7C8FE584500D000241F20FFF7C2FEE3 -:101BC00000B100243720FFF7BDFEA84200D000245A -:101BD00084F0010003B0BDE8F08F0024C7E70000E7 -:101BE0002DE9F04182B005461E4621B10C4601297F -:101BF00002D8022403E01024B4F5805F04D832B187 -:101C00000F2A05D90F2203E04FF48054F7E7012291 -:101C1000170207F4706747F01107A04602F00F02A1 -:101C200004FB02F21AB1B2F5803F4DD29046422138 -:101C30003648FFF7D7FD00211E20FFF77BFD43F25A -:101C400030012720FFF776FD4FF400713720FFF7B2 -:101C500071FD40F201112B20FFF76CFD3946282061 -:101C6000FFF768FD1FFA88F12920FFF763FD0021C7 -:101C70001F20FFF75FFD00215C20FFF75BFD0021C7 -:101C80005D20FFF757FD611E89B2090189B25E2010 -:101C9000FFF750FD01211D20FFF74CFD3146204686 -:101CA000FFF7B4FD35B301224FF40061184804F08A -:101CB00098FB01211E20FFF73DFD01211D20FFF7AC -:101CC00039FD0023019305E04FF6FF78AFE7019B54 -:101CD00001330193019BB3F57A7FF8D300224FF4CF -:101CE00000610B4804F07DFB1E20FFF72BFE02B0C5 -:101CF000BDE8F08100211E20FFF71CFD01224FF4FA -:101D00000061034804F06DFBEEE700BFB0B40008CB -:101D1000000C024030B583B000294AD01AB13F2AE6 -:101D200002D93F2200E0012200F003009200D2B26B -:101D300040EA02041B0103F0F00340F201151D43C9 -:101D400043F212212720FFF7F5FC21463720FFF749 -:101D5000F1FC29462820FFF7EDFCBDF818102920DA -:101D6000FFF7E8FC00211F20FFF7E4FC01224FF4FD -:101D70000061154804F035FB01211E20FFF7DAFC55 -:101D800001211D20FFF7D6FC0023019302E0019BF7 -:101D900001330193019BB3F57A7FF8D300224FF40E -:101DA0000061094804F01DFB1E20FFF7CBFD03B0C6 -:101DB00030BD00211E20FFF7BDFC01224FF4006161 -:101DC000014804F00EFBEFE7000C024010B50928B3 -:101DD00013D8DFE800F00513212F3D4B5965717DC5 -:101DE000414C01224FF48061204604F0FAFA0022AF -:101DF0004FF48061204604F0F4FA10BD3A4C012201 -:101E00004FF40061204604F0ECFA00224FF4006128 -:101E1000204604F0E6FAF0E7334C01224FF48051FB -:101E2000204604F0DEFA00224FF48051204604F0F0 -:101E3000D8FAE2E72C4C01224FF40051204604F07E -:101E4000D0FA00224FF40051204604F0CAFAD4E739 -:101E5000254C01224FF48041204604F0C2FA0022B2 -:101E60004FF48041204604F0BCFAC6E71E4C012224 -:101E70004FF40041204604F0B4FA00224FF4004130 -:101E8000204604F0AEFAB8E7184C01221021204693 -:101E900004F0A7FA00221021204604F0A2FAACE7D1 -:101EA000124C01222021204604F09BFA002220211E -:101EB000204604F096FAA0E70C4C0122402120466F -:101EC00004F08FFA00224021204604F08AFA94E7B9 -:101ED000064C01228021204604F083FA0022802152 -:101EE000204604F07EFA88E7001802400004024011 -:101EF00038B5044600224FF48041814804F071FA5D -:101F000000224FF400717F4804F06BFA002300E0D8 -:101F10000133B3F5FA7FFBD301224FF480417848B7 -:101F200004F05FFA01224FF40071764804F059FA88 -:101F3000002300E00133B3F5FA7FFBD3631E032BCC -:101F400039D8DFE803F0023A6FA66D4C01224FF456 -:101F50000061204604F045FA00224FF480612046DB -:101F600004F03FFA002300E00133B3F5FA7FFBD31E -:101F7000654A136843F0400313600023624A926885 -:101F800012F0010F04D1B3F57A7F01D80133F5E7E0 -:101F90005D490A6822F040020A6000E00133B3F5AF -:101FA000FA7FFBD301224FF48061554804F019FAFF -:101FB000554BDD68ADB2284638BD524C01224FF476 -:101FC0008061204604F00DFA00224021204604F0F2 -:101FD00008FA002300E00133B3F5FA7FFBD34B4A44 -:101FE000136843F0400313600023484A926812F0DC -:101FF000010F04D1B3F57A7F01D80133F5E74349E6 -:102000000A6822F040020A6000E00133B3F5FA7F6B -:10201000FBD3012240213B4804F0E3F93B4BDD6850 -:10202000ADB2C8E7364C01224FF48061204604F07F -:10203000D8F900224FF40061204604F0D2F90023C1 -:1020400000E00133B3F5FA7FFBD32F4A136843F066 -:102050004003136000232C4A926812F0010F04D150 -:10206000B3F57A7F01D80133F5E727490A6822F0F2 -:1020700040020A6000E00133B3F5FA7FFBD301228E -:102080004FF400611E4804F0ACF91F4BDD68ADB29F -:1020900091E71C4C01224021204604F0A2F90022C5 -:1020A0004FF48061204604F09CF9002300E00133E6 -:1020B000B3F5FA7FFBD3154A136843F0400313606E -:1020C0000023124A926812F0010F04D1B3F57A7F0F -:1020D00001D80133F5E70D490A6822F040020A6091 -:1020E00000E00133B3F5FA7FFBD301224FF48061A6 -:1020F000044804F076F9054BDD68ADB25BE700BF3C -:102100000010024000140240003401400050014021 -:1021100008B5044806F00AF80023034A1370034A7E -:10212000136008BD08040020D60200200C03002024 -:102130002DE9F04F8FB0002409940A940B940C946D -:102140000D948A4B1A6B42F020021A631A6B02F04C -:1021500020020192019A1A6B42F080021A631A6BF4 -:1021600002F080020292029A1A6B42F004021A6391 -:102170001A6B02F004020392039A1A6B42F00102F6 -:102180001A631A6B02F001020492049A1A6B42F06D -:1021900002021A631A6B02F002020592059A1A6B88 -:1021A00042F010021A631A6B02F010020692069AAD -:1021B0001A6B42F008021A631A6B02F008020792C7 -:1021C000079A1A6B42F040021A631B6B03F040033C -:1021D0000893089BDFF8A49122464FF4C861484653 -:1021E00004F0FFF8DFF898A122463C21504604F0A5 -:1021F000F8F801224021504604F0F3F85C4F2246E3 -:102200004B21384604F0EDF801221021384604F045 -:10221000E8F8DFF8708122464FF44061404604F050 -:10222000E0F801224FF48041404604F0DAF8DFF88C -:1022300058B122464FF44F61584604F0D2F80122BB -:102240004FF48051584604F0CCF84A4E22464FF4E1 -:10225000C171304604F0C5F801224FF400613046E8 -:1022600004F0BFF822464FF47E41434804F0B9F829 -:10227000182309930A9401250B9509A9484603F0F0 -:10228000A7FF4FF4C86309930A950B940C9409A90E -:10229000484603F09DFF742309930A950B940C9410 -:1022A00009A9504603F094FF082309930A950B945B -:1022B00003230C9309A9504603F08AFF5B2309937B -:1022C0000A950B940C9409A9384603F081FF4FF44A -:1022D000F04309930A940B9409A9484603F078FF48 -:1022E0004FF4406309930A950B940C9409A9404656 -:1022F00003F06EFF4FF4804309930A950B94032378 -:102300000C9309A9404603F063FF41F6F04309939B -:102310000A950B940C9409A9584603F059FF40F60E -:10232000821309930A950B940C9409A9304603F083 -:102330004FFF4FF4807309930A940B9409A9384610 -:1023400003F046FF09950A940B9409A9304603F05F -:102350003FFF4FF47E4309930A950B940C9409A90F -:10236000054803F035FF0FB0BDE8F08F003802409C -:1023700000000240000C024000180240001402401D -:102380000008024000100240000402402DE9F04124 -:1023900092B02822002108A8FEF7DEF9002402945A -:1023A000039404940594069407942A4B5A6C42F4BF -:1023B00000525A645A6C02F400520192019A1A6B4C -:1023C00042F010021A631B6B03F010030093009B92 -:1023D0004FF480530293022503954FF00308CDF884 -:1023E0001080052707971C4E02A9304604F065FBB4 -:1023F0004FF4005302930395CDF810800594069492 -:10240000079702A9304604F058FB4FF48063089305 -:102410004FF4827309934FF470630A930B950C94F5 -:102420004FF400730D9318230E930F941094072309 -:1024300011930A4C08A9204605F0BCFC636823F000 -:1024400010036360636823F00803636012B0BDE8A3 -:10245000F08100BF0038024000100240003401400B -:102460002DE9F04192B02822002108A8FEF774F966 -:1024700000240294039404940594069407942F4B2B -:102480001A6C42F480421A641A6C02F4804201927F -:10249000019A1A6B42F002021A631B6B03F00203EB -:1024A0000093009B4FF4005302934FF00208CDF8C5 -:1024B0000C800327049705260796214D02A928467C -:1024C00004F0FBFA4FF480430293CDF80C8004979C -:1024D00005940694079602A9284604F0EEFA4FF4F4 -:1024E00000430293CDF80C80049705940694079658 -:1024F00002A9284604F0E1FA08944FF48273099384 -:102500004FF470630A930B940C944FF400730D9383 -:1025100010230E930F94109407231193094C08A9CC -:10252000204605F047FC636823F01003636063688E -:1025300023F00803636012B0BDE8F0810038024068 -:1025400000040240003800402DE9F04192B02822FA -:10255000002108A8FEF700F90024029403940494D3 -:10256000059406940794294B5A6C42F480125A64DD -:102570005A6C02F480120192019A1A6B42F0200206 -:102580001A631B6B03F020030093009B80230293CC -:10259000022503954FF00308CDF810800527079713 -:1025A0001B4E02A9304604F088FA4FF48073029360 -:1025B0000395CDF8108005940694079702A930463C -:1025C00004F07BFA4FF4806308934FF4827309930D -:1025D0004FF470630A930B950C944FF400730D93B2 -:1025E00018230E930F94109407231193094C08A9F4 -:1025F000204605F0DFFB636823F010036360636827 -:1026000023F00803636012B0BDE8F0810038024097 -:1026100000140240005001402DE9F04192B0282200 -:10262000002108A8FEF798F800240294039404946B -:10263000059406940794294B5A6C42F400125A648C -:102640005A6C02F400120192019A1A6B42F00102D4 -:102650001A631B6B03F001030093009B202302937A -:10266000022503954FF00308CDF81080082707973F -:102670001B4E0DEB0701304604F01FFA8023029336 -:102680000395CDF810800594069407970DEB07018C -:10269000304604F012FA08944FF4827309934FF411 -:1026A00070630A930B9501230C934FF400730D9301 -:1026B00018230E930F94109407231193094C08A923 -:1026C000204605F077FB636823F0100363606368BE -:1026D00023F00803636012B0BDE8F08100380240C7 -:1026E000000002400054014010B586B0002401945F -:1026F00002940394049405941D4B1A6C42F0010259 -:102700001A641B6C03F001030093009B194BD868FB -:1027100022462146C0F30220FEF790FE0001C0B21F -:10272000154B83F81C034FF080521A604FF47A73F4 -:10273000ADF804300294114B0393049401A94FF0B7 -:10274000804006F087F94FF080431A6822F080023B -:102750001A6099680A4A0A409A605A6822F0700220 -:102760005A609A6822F080029A6006B010BD00BFDD -:102770000038024000ED00E000E100E040D10C0034 -:10278000F8BFFEFF10B586B00024019402940394B4 -:10279000049405941C4B1A6C42F008021A641B6CDA -:1027A00003F008030093009B184BD868224621468B -:1027B000C0F30220FEF742FE0001C0B2144B83F8C2 -:1027C00032034FF480225A6042F21073ADF80430A5 -:1027D00002944FF40C73039304940E4C01A9204609 -:1027E00006F038F9236823F080032360A2680A4BBF -:1027F0001340A360636823F070036360A36823F051 -:102800008003A36006B010BD0038024000ED00E078 -:1028100000E100E0000C0040F8BFFEFF10B586B0FC -:102820000024019402940394049405941A4B1A6CA6 -:1028300042F020021A641B6C03F020030093009BFB -:10284000164BD86822462146C0F30220FEF7F6FD5B -:102850000001C0B2124B83F837034FF400025A60F4 -:1028600040F29733ADF804300294632303930D4C88 -:1028700001A9204606F0EEF8236823F080032360C8 -:10288000636823F0700343F010036360A36823F0D0 -:102890008003A36006B010BD0038024000ED00E0E8 -:1028A00000E100E00014004010B586B0002401945F -:1028B00002940394049405941A4B1A6C42F010028B -:1028C0001A641B6C03F010030093009B164BD8682E -:1028D00022462146C0F30220FEF7B0FD0001C0B23F -:1028E000124B83F836034FF480025A604BF2AF3339 -:1028F000ADF804300294132303930D4C01A9204634 -:1029000006F0A8F8236823F080032360636823F0AF -:10291000700343F010036360A36823F08003A36097 -:1029200006B010BD0038024000ED00E000E100E01C -:10293000001000402DE9F04100239F4A13609F4A98 -:1029400013609F4A13609F4A13609F4A13609F4A17 -:1029500013709F4A13809F4A13609F4A13609F4AD7 -:1029600013709F4A137005E09E4A002122F813104D -:1029700001339BB20E2BF7D99A4B41F211121A80F8 -:10298000994B0022DA81DA701A711A821A735A731B -:102990005A719A71DA72DA711A725A729A725A709C -:1029A0009A701A70914D2A80914C228000226A60A0 -:1029B0006260AA60A2608F4E9C46BCE80F000FC602 -:1029C000DCF8003033808C4E95E80F0086E80F006D -:1029D0008A4D94E80F0085E80F00894BDA6842F0D1 -:1029E0000102DA601A6842F001021A6003F580639E -:1029F000DA6842F00102DA601A6842F001021A60F5 -:102A000003F51433D3F8B82022F00102C3F8B8203C -:102A10004FF00062DA604FF00072DA60794A02F13A -:102A2000080353E8003F43F08003083242E80031D6 -:102A30000029F3D1744BD3F8B82042F01002C3F848 -:102A4000B820D3F8B82042F00402C3F8B8204FF001 -:102A50000062DA604FF00072DA606C4AD3F8B83086 -:102A600003F0C003402B7DD0674BC3F8C020684AF9 -:102A7000C3F8C4200024674B1C60674B1C60674F81 -:102A800022460821384603F0ACFC22460421384691 -:102A900003F0A7FCDFF8A88122464FF4807140467E -:102AA00003F09FFC22461021384603F09AFC5C4E4E -:102AB00022464FF48061304603F093FC594D224684 -:102AC0000821284603F08DFC22460121284603F008 -:102AD00088FC22460221284603F083FC22464FF45C -:102AE0000061304603F07DFC22462021384603F089 -:102AF00078FC07F5006701224FF48061384603F047 -:102B000070FC494C01224021204603F06AFC01225E -:102B10004FF48041384603F064FC01224FF48041B9 -:102B2000204603F05EFC01224FF48041304603F062 -:102B300058FC01224021284603F053FC01224FF4A7 -:102B40008051304603F04DFC01221021284603F04D -:102B500048FC0121404603F03DFC50B1FEF7B8FEB1 -:102B6000BDE8F081284BC3F8C420294AC3F8C0202F -:102B700080E74FF48071284603F02CFC0028EDD14B -:102B80002A4806F08FF82A4B186018B1294B012209 -:102B90001A70E3E71E231A462749284806F0D2F8A0 -:102BA000234C2060214806F08FF820600023084A5B -:102BB0001380064A1370E9E7300300201803002051 -:102BC000140300202C03002024030020D90200203D -:102BD000D40200208402002080020020D8020020BD -:102BE000D7020020B002002018020020500200206E -:102BF000400200202C020020700200206002002011 -:102C0000001000400010014000640240DC0200207F -:102C100028100140200300201C030020000802406F -:102C200000040240000002400014024000B300080B -:102C300088020020000300209002002004B3000856 -:102C4000000C024010B5002405282CD8DFE800F065 -:102C5000030812171C26154802F0B8F9204610BDCB -:102C6000124C6421204602F06BFA204602F0C9FAA9 -:102C700080B2F4E70D4802F043FA2046EFE70C4833 -:102C800002F0A4F92046EAE7094C6421204602F04C -:102C900057FA204602F0B5FA80B2E0E7044802F0A5 -:102CA0002FFA2046DBE72046D9E700BFB805002011 -:102CB00070050020032818BF012800F0A38038B554 -:102CC0000C460138032823D8DFE800F0023B5B7C88 -:102CD00000224FF480414C4803F083FB00224B4B11 -:102CE0009B6813F0020F04D1B2F5FA7F01D80132CC -:102CF000F5E7464B9C810022444B9B6813F0010F83 -:102D000004D1B2F5FA7F01D80132F5E73F4BDB6819 -:102D10003D4D01224FF48041284603F062FB3C4CBC -:102D200001224021204603F05CFB01224FF4805138 -:102D3000284603F056FB01221021204603F051FBE8 -:102D400038BD00224021324803F04BFB0022314BBA -:102D50009B6813F0020F04D1B2F5FA7F01D801325B -:102D6000F5E72C4B9C8100222A4B9B6813F0010F46 -:102D700004D1B2F5FA7F01D80132F5E7254BDB68C3 -:102D8000C6E700224FF480511F4803F02AFB0022BF -:102D90001E4B9B6813F0020F04D1B2F5FA7F01D8E5 -:102DA0000132F5E7194B9C810022184B9B6813F008 -:102DB000010F04D1B2F5FA7F01D80132F5E7134BC8 -:102DC000DB68A5E700221021114803F00AFB00226E -:102DD000104B9B6813F0020F04D1B2F5FA7F01D8B3 -:102DE0000132F5E70B4B9C8100220A4B9B6813F0E4 -:102DF000010F04D1B2F5FA7F01D80132F5E7054B96 -:102E0000DB6885E7704700BF0004024000380040DF -:102E100000000240005401402DE9F84305460F46EA -:102E200016461C46AF4B00221A600121AE4803F043 -:102E3000D1FA002800F0D2802B8803F00103237020 -:102E40002B88C3F3400363702B88C3F38003A37004 -:102E50002B88C3F3C003E3702B88C3F300132371E3 -:102E60002B88C3F3401363712B88C3F38013A371C2 -:102E70002B88C3F3C013E3712B88C3F300232372A1 -:102E80002B88C3F3402363722B88C3F38023A37280 -:102E90002B88C3F3C023E3722B88C3F3003323735F -:102EA0002B88C3F3403363736B883B80AB883380DC -:102EB0006B89E381AB8907EE903AF8EE677A9FED74 -:102EC0008B7A67EE877AC7ED017AEB8907EE903A45 -:102ED000F8EE677A67EE877AC7ED027A2B8A07EEFB -:102EE000903AF8EE677A67EE877AC6ED017A6B8AD8 -:102EF00007EE903AF8EE677A67EE877AC6ED027AC7 -:102F0000AA8A7B4B5A83EB8ABB812B8BB381637874 -:102F1000002B00F0958001220821764803F061FA29 -:102F2000A378002B00F0928001220421714803F065 -:102F300058FAE378002B00F08F8001224FF4807163 -:102F4000694803F04EFA2379002B00F08C800122AF -:102F50001021684803F045FA6379002B00F089805E -:102F600001224FF48061644803F03BFAA379002BFF -:102F700000F0868001220821604803F032FA637A6B -:102F80001BB1E379002B40F08180002201215B48D6 -:102F900003F027FA00224FF40061574803F021FAAA -:102FA000A37A1BB1237A002B40F0868000220221F5 -:102FB000524803F016FA002220214E4803F011FA7D -:102FC000237B1BB94E4B7B604E4BBB60637B1BB9B5 -:102FD0004B4B73604B4BB360BDE8F8834FF480718B -:102FE000464803F0F7F901287FF426AF464805F07C -:102FF00059FE3C4B186000287FF41EAFDFF80C919F -:10300000484605F065FFDFF8DC80C8F80000484658 -:1030100005F03CFFC8F800001E222946484605F08E -:1030200063FEC8F800001E222946484605F092FFBC -:10303000C8F80000344805F047FEC8F80000FBE679 -:10304000002208212B4803F0CCF969E70022042173 -:10305000284803F0C6F96CE700224FF4807122483B -:1030600003F0BFF96FE700221021224803F0B9F9FD -:1030700072E700224FF480611F4803F0B2F975E750 -:10308000002208211D4803F0ACF978E747F6FF71EC -:103090000320FFF70FFE47F6FF710320FFF70AFE3C -:1030A00001224FF40061144803F09BF901221146FC -:1030B000124803F096F973E747F6FF710420FFF713 -:1030C000F9FD47F6FF710420FFF7F4FD01222021EE -:1030D000084803F086F901220221084803F081F92B -:1030E0006EE700BF88020020000C02400000803B19 -:1030F000B00200200008024000040240000002402C -:10310000000020410AD7233C00B3000804B30008A4 -:1031100084460088012304E03CF81320504001332A -:103120001BB28B42F8DB704710B50E4B1B8841F287 -:103130001112934205D047F2777293420FD10E24B9 -:1031400000E00D242146FFF7E3FF074B1880074BF3 -:1031500033F81430984214BF0020012010BD002025 -:10316000FCE700BFD2020020D00200209002002025 -:1031700010B5044601210A4803F02CF908B10120DA -:1031800010BD084805F08EFD08B10120F8E71E22A9 -:103190002146054805F0DEFE024805F095FDEFE703 -:1031A000000C024000B3000810B3000838B5044614 -:1031B00001210D4803F00EF908B1012038BD0B487C -:1031C00005F070FD08B10120F8E7094D2B681E22BB -:1031D0002146084805F0B6FD2B681E332B600348D6 -:1031E00005F072FDEAE700BF000C024000B30008E2 -:1031F0008402002010B3000810B501210B4803F031 -:10320000E9F808B1012010BD094805F04BFD08B1EF -:103210000120F8E7074C204605F05AFE204605F04D -:1032200035FE034805F050FDEDE700BF000C0240FD -:1032300000B3000810B300088C4600220CE033B93C -:10324000074BDB6913F08003F9D00123F7E7815CBA -:10325000034B9962013292B26245F1D3704700BFCD -:10326000001001400D4B1B78002BFBD10C4BD3F809 -:10327000B82022F00102C3F8B820D3F8BC206FF3C5 -:103280000F021043C3F8BC00D3F8B82042F001028B -:10329000C3F8B820014B01221A707047D8020020F1 -:1032A0000064024072B6FEE700B585B000230093CB -:1032B0000193029303932B482B4A02604FF4403250 -:1032C0004260836001220261836180F82030C36222 -:1032D00026498162C3600521C16180F830304261B6 -:1032E00001F048FE002831D1092300930123019306 -:1032F0000723029369461B4802F024F840BB0823C9 -:103300000093022301936946164802F01BF808BB9C -:1033100002230093032301936946124802F012F836 -:10332000D0B90A2300930423019369460D4802F0A3 -:1033300009F898B90B2300930523019369460948BE -:1033400002F000F860B905B05DF804FBFFF7AAFFD2 -:10335000FFF7A8FFFFF7A6FFFFF7A4FFFFF7A2FF05 -:10336000FFF7A0FFB8050020002001400100000F7A -:1033700000B585B000230093019302930393144892 -:10338000144A02604FF440324260836003618361FB -:1033900080F82030C362104A8262C3600122C26199 -:1033A00080F83030426101F0E5FD68B90F230093E9 -:1033B00001230193072302936946054801F0C2FFE8 -:1033C00020B905B05DF804FBFFF76CFFFFF76AFF5B -:1033D00070050020002201400100000F2DE9F0419E -:1033E000B4B000212D912E912F91309131913291D5 -:1033F00033912791289129912A912B912C919022F8 -:1034000003A8FDF7A9F94023039303A802F0E0FB0A -:10341000002840F09E80504B5A6C42F010025A64D3 -:103420005A6C02F010020292029A1A6B42F00102E8 -:103430001A631B6B03F001030193019B4FF40073AC -:1034400027934FF00208CDF8A08003272997002486 -:103450002A942B9407262C96404D27A9284603F042 -:103460002CFB4FF480632793CDF8A08029972A94F2 -:103470002B942C9627A9284603F01FFB384BD3F832 -:10348000B82022F0F05242F00062C3F8B820D3F81E -:10349000B82022F0C00242F04002C3F8B820D3F8AE -:1034A000B82042F44032C3F8B820D3F8B82022F450 -:1034B0009072C3F8B820D3F8B82022F40072C3F891 -:1034C000B820D3F8B82042F48062C3F8B820D3F80B -:1034D000B82022F4C052C3F8B820D3F8B82022F4A0 -:1034E000C042C3F8B820D3F8CC2022F00402C3F8BD -:1034F000CC201C4BD86822462146C0F30220FDF7A1 -:103500009DFF0001C0B2184B83F8250320225A60AA -:103510004FF4E1332D932E942F9430940C23319358 -:103520003294339404F1804404F588342DA9204664 -:1035300005F030FB636823F490436360A36823F0D5 -:103540002A03A360236843F00103236034B0BDE87D -:10355000F081FFF7A7FE00BF0038024000000240E4 -:103560000064024000ED00E000E100E008B508481A -:10357000084B0360B7234360002383600922C260C5 -:103580000361836104F03EFF00B908BDFFF78AFEC6 -:10359000080400200044014008B50B480B4B0360B1 -:1035A0004FF4E133436000238360C36003610C2266 -:1035B00042618361C3610362436207F03AFE00B96E -:1035C00008BDFFF76FFE00BF34030020007C004001 -:1035D00000B589B0002304930593069307930193E4 -:1035E000029303931348144A0260436083605B2292 -:1035F000C26003614361836104F004FF98B94FF432 -:103600008053049304A90B4805F03EF868B90023E1 -:1036100001930293039301A9064805F0C7F930B955 -:1036200009B05DF804FBFFF73DFEFFF73BFEFFF737 -:1036300039FE00BF540400200004014000B589B0E9 -:103640000023019302930393049305930693079336 -:103650001448154A02600122426083605B22C26006 -:1036600003618023836104F0CDFEA8B90D4804F006 -:10367000F9FE98B9602301935B2302930022039221 -:10368000059201A9074804F055FF48B9054801F023 -:103690004DFB09B05DF804FBFFF704FEFFF702FEE7 -:1036A000FFF700FEBC0300200048014000B58FB0CA -:1036B00000230A930B930C930D930793089309939C -:1036C00000930193029303930493059306931E487A -:1036D0001E4A0260436083602D22C26003618361E1 -:1036E00004F090FE30BB4FF480530A930AA91648A9 -:1036F00004F0CAFF00BB144804F0B4FEF0B9002384 -:103700000793099307A9104805F050F9C0B9602341 -:103710000093162301930023029304930822694621 -:10372000094804F007FF68B9074801F0FFFA0FB035 -:103730005DF804FBFFF7B6FDFFF7B4FDFFF7B2FD40 -:10374000FFF7B0FDFFF7AEFDA00400200008004029 -:1037500000B595B03422002107A8FCF7FDFF002337 -:1037600002930393049305930693244B1A6C42F03F -:1037700080521A641B6C03F080530093009B204B13 -:103780001A6842F440421A601B6803F440430193F4 -:10379000019B012307934FF48033089302230D9379 -:1037A0004FF480020E9219220F924FF4B8721092C9 -:1037B000119308221292139307A801F0B7FEB0B933 -:1037C00002F01EFEA8B90F230293022303930023E5 -:1037D00004934FF4A05305934FF4805306930621AE -:1037E00002A802F019F930B915B05DF804FBFFF733 -:1037F00059FDFFF757FDFFF755FD00BF00380240A8 -:10380000007000402DE9F04385B002F0D3FEFFF7D1 -:103810009FFFFEF78DFCFDF743FEFEF7B7FD00F0BE -:103820004DFEFEF761FFFEF7ADFFFFF73DFDFFF731 -:103830009FFDFEF715FEFEF787FEFEF7EDFEFFF794 -:10384000CDFDFDF71BFEFEF7E9FFFFF72DF8FFF7B3 -:103850008DFEFFF7A1FEFFF7BBFEFFF7EFFEFFF7C0 -:1038600025FFFFF767F8854A3523D362D36A013312 -:103870005B08013BD363D36A9B00033302F5A0329C -:10388000D362D36A01335B08013B53634CE07C4B4A -:103890001B78002B4FD17B4A52E8003F43F48073E2 -:1038A00042E800310029F6D1764A52E8003F43F061 -:1038B000200342E800310029F6D1724A02F10803E0 -:1038C00053E8003F43F00103083242E80031002989 -:1038D000F3D16D4B002283F8252320225A60684BD8 -:1038E00001221A7027E0694B00221A70684B5A684F -:1038F0001A61FEF70DFC674B1B78022B00F08184E8 -:10390000032B00F0B484012B09D1634C0221204623 -:10391000FFF792FC0023237063705E4A13705F4BC5 -:103920001B78012B00F0A5844FF480715C4802F0F5 -:1039300051FD0128ABD05B4B1B780A2BDBD801A2D1 -:1039400052F823F0E738000871390008DB39000825 -:10395000113A0008413A0008513A00086D3A00084F -:10396000D13A0008FD3C0008913D0008253C0008C4 -:103970004D4C0D212046FFF7CBFB4C4B18802046C9 -:10398000FFF7D2FB70B9444A137843F00403137075 -:10399000444B02221A703D4B00221A703D4B01220B -:1039A0001A70A8E7424A136843F04003136002F517 -:1039B0008E32136843F0400313603E4B3E4A3F494A -:1039C0002046FFF729FA3E4B1A683E4B1A60072340 -:1039D000344A13702D4A1370E0E72D4B5A681A6170 -:1039E000FEF796FBFEF7A6FF314A136823F040036B -:1039F000136002F58E32136823F040031360002336 -:103A0000284A1370214A1370224B01221A7072E760 -:103A10002D48FFF7CBFB82B22C4B1A801E490B7846 -:103A200003430B7042B91B4B03221A700023174A41 -:103A300013701C4A13705EE7164B01221A70F5E7EB -:103A4000144B02221A70114B1A78164B1A7052E757 -:103A5000FFF7D2FB104A1378034313700D4B01227A -:103A60001A700A4B1A780F4B1A7044E7094B01225F -:103A70001A70064B1A780B4B1A703CE7000800408E -:103A8000D70200200010014000E100E0FF0200200A -:103A9000C0010020FE020020FC020020D90200200C -:103AA000000002400003002090020020D00200200D -:103AB000003800402C02002060020020700200202C -:103AC000300300202C030020B0020020CE02002092 -:103AD0009C4B5A681A61FEF71BFB9B4B1B689B4A69 -:103AE000126893427FF607AF984A13600120FEF7F1 -:103AF000FFF9974F38810120FEF7FAF9388102204B -:103B0000FEF7F6F9934E30810220FEF7F1F930818D -:103B10000320FEF7EDF90320FEF7EAF938800420D0 -:103B2000FEF7E6F90420FEF7E3F93080DFF858826B -:103B3000012239464046FDF78BFD0146864D28801F -:103B40000320FFF7B7F8DFF83C92022231464846DF -:103B5000FDF77EFD014628800420FFF7ABF83B8986 -:103B60007E4C63803389A380B8F80C100120FFF7E6 -:103B7000A1F8B9F80C100220FFF79CF80020FFF71D -:103B800061F828800120FFF75DF82880E08101209E -:103B9000FFF758F8288020820120FFF753F828808B -:103BA00060820120FFF74EF82880A0820120FFF7F5 -:103BB00049F82880E0820220FFF744F8288003209B -:103BC000FFF740F828800420FFF73CF82880208386 -:103BD0000520FFF737F82880614B1B68614A1360A6 -:103BE000E3801B0C23813B8863813388A3815E4B78 -:103BF000DB7A012B03D05D4B07221A707BE602347F -:103C00000D212046FFF784FA0346594A1080A01E72 -:103C10008383FFF7ADFA0346288056490A78134399 -:103C20000B70E8E7544C03212046FFF771FAE38854 -:103C300098420CD04F4A137843F0040313704F4B53 -:103C400001221A70494B1A784D4B1A7053E623889B -:103C50006588A48803F00107C3F3400613F0040F3E -:103C600010D106B102265FFA85F8C5F30329254372 -:103C700025D0B8F1000F1CD0B8F13F0F1BD94FF081 -:103C80003F0818E004F00F04334622462946384620 -:103C9000FDF7A6FF374B587023462A463946FDF7F5 -:103CA000A9FE0028CBD0334A137863F07F0313704A -:103CB000C5E74FF0010844B94FF6FF7405E04FF631 -:103CC000FF744FF002094FF0010800944B46424642 -:103CD00039463046FEF71EF8264B58700194CDF851 -:103CE0000090434632463946FDF70DFF0028A6D026 -:103CF000204A137863F07F031370A0E71E48FFF794 -:103D000013FA70B91B4A137843F0040313701C4B69 -:103D100002221A70154B00221A70184B01221A70D9 -:103D2000E9E5114B174A18491348FDF7DDFB0C4B29 -:103D30001A68164B1A600923114A13700B4A137044 -:103D4000EBE700BFC001002018030020140300208F -:103D50000C02002000020020CE020020B002002051 -:103D600030030020280300202C020020FF02002046 -:103D7000D0020020FC02002090020020FE02002061 -:103D80000003002060020020700200202C030020AD -:103D9000864B1B78012B23D0022B00F03181844B02 -:103DA0001B68844A1268934200F2D881824B1B78C8 -:103DB000002BFBD0FEF7ACF97C4BDB8A032B0BD935 -:103DC0007E4B1A687E4BDA60784B1B7D7D4AA2FBE6 -:103DD0000323DB087C4A13607C4B09221A708AE5B6 -:103DE000724BD3ED077AFCEEE77A17EE903A99B270 -:103DF0000220FEF75FFF0320FEF77AF80320FEF7AC -:103E000077F8734C20800420FEF772F80420FEF748 -:103E10006FF8704D2880012221466F48FDF718FC8D -:103E200001466E4C20800320FEF744FF0222294603 -:103E30006B48FDF70DFC014620800420FEF73AFF99 -:103E4000684C01228021204602F0CBFA002280211A -:103E5000204602F0C6FA5A4804F020F9002875D12D -:103E6000524B93ED027AD3ED047A37EE677AD3EDB5 -:103E7000036AC7EE267AB2EE047A67EE877AFCEE22 -:103E8000E77ACDED037A9DF80C60DFF868910021A8 -:103E9000484604F035FDDFF860810821404604F013 -:103EA0002FFD514F3B6823F008033B604F4D2B68BB -:103EB00023F008032B6000247C626C622146484694 -:103EC00004F072FC0821404604F06EFCEB6A143BDF -:103ED0006B627C622546354BD3ED047A93ED027A12 -:103EE000F4EEC77AF1EE10FA37D5334B1B78002B7E -:103EF000F1D0FCEEE77A17EE903A99B20120FEF786 -:103F0000D9FE2A4BD3ED047A93ED037A77EE877AC4 -:103F1000C3ED047A0027364B1F60274B1F70DFF874 -:103F2000DC8001224FF40071404602F05AFA3A4612 -:103F30004FF40071404602F054FAB4FBF6F306FB6E -:103F400013439BB21BB10134A4B2C4E7FEE7E8B24D -:103F5000FDF73CFF0135ADB2F5E7234AD36843F0E6 -:103F60000103D360FEF7D4F8104CD4ED017AC4ED10 -:103F7000047AFCEEE77A17EE903A99B20120FEF748 -:103F800099FEE38A032B0CD90D4AD0680B490860CF -:103F900042F20F71D160013B642202FB03F30A4A33 -:103FA0001360074804F07AF8F9E600BFC00100206A -:103FB0001803002014030020D60200200403002070 -:103FC00008040020CDCCCCCC08030020FF02002048 -:103FD0000C0200200002002070020020CE0200200F -:103FE00060020020000C0240004801400008004030 -:103FF0000C030020BC030020A00400200018024095 -:10400000A74BD3ED077AFCEEE77A17EE903A99B218 -:104010000120FEF74FFE0320FDF76AFF0320FDF7A6 -:1040200067FFA04C20800420FDF762FF0420FDF70D -:104030005FFF9D4D2880012221469C48FDF708FB2B -:1040400001469B4C20800320FEF734FE02222946C5 -:104050009848FDF7FDFA014620800420FEF72AFE6D -:10406000954B02221A7000229A721A814FF47A72CA -:104070001A81924A5A6080225A80914B42F2107201 -:10408000DA62904804F00AF878BB012280218E4859 -:1040900002F0A7F942F21073013BFDD1002280210A -:1040A000894802F09EF9844B02229A72874803F0F5 -:1040B000F5FFD8B97A4BD3ED047A93ED027AF4EE9A -:1040C000C77AF1EE10FA12D5814B1B78002BF1D094 -:1040D000734B93ED037A77EE277AC3ED047A0023CE -:1040E0007C4A13607A4A1370E4E7FEE7FEE77748FC -:1040F00003F0BFFF744C01228021204602F071F9C9 -:1041000000228021204602F06CF96E4804F00EF87F -:104110006B4B00225A62FDF7FBFF614CD4ED017A34 -:10412000C4ED047AFCEEE77A17EE903A99B20220D9 -:10413000FEF7C0FDE38A032B0CD9644AD0686649B8 -:10414000086042F20F71D160013B642202FB03F36D -:10415000624A13605D4803F0A1FF20E6604A1360E5 -:104160000120FDF7C5FE4F4E30810120FDF7C0FE56 -:1041700030810220FDF7BCFE4B4F38810220FDF755 -:10418000B7FE38813389574C6380A0800020FEF74A -:1041900059FD474D28800120FEF754FD2880E0811D -:1041A0000120FEF74FFD288020820120FEF74AFD06 -:1041B000288060820120FEF745FD2880A082012032 -:1041C000FEF740FD2880E0820220FEF73BFD2880BC -:1041D0000320FEF737FD28800420FEF733FD2880FA -:1041E00020830520FEF72EFD28803F4B1B683F4AA9 -:1041F0001360E3801B0C2381338863813B88A38198 -:10420000D4E53B4C0D212046FEF782FF394B188048 -:10421000608300230BE0334A32F8132059003648FC -:1042200000F813200131120A425401339BB20E2BC5 -:10423000F1D91E20FFF716F8304B00221A70FFF755 -:104240006EBB284A32F8132059002B4800F813207F -:104250000131120A425401339BB20E2BF1D91E20B8 -:10426000FFF700F8254B00221A70FFF758BB002318 -:10427000F3E71D4B1B68224A12689B1A642B7FF6DA -:1042800053AB00221F4B1A801F490B7843F00203E7 -:104290000B701A4B012119701C4B1A70FFF744BBAD -:1042A000C00100200C02002000020020700200204B -:1042B000CE02002060020020F40100200004024031 -:1042C0000004014054040020000C024008040020B7 -:1042D000D60200200C030020040300200803002065 -:1042E00014030020B0020020300300202803002027 -:1042F000B2020020D0020020DC020020FE020020DA -:1043000024030020D4020020FC020020D902002057 -:1043100000B583B0009313460A460146034803F0F4 -:10432000D5F800B1012003B05DF804FBEC040020D7 -:1043300000B583B0009313460A460146034803F0D4 -:10434000E9F900B1012003B05DF804FBEC040020A2 -:1043500008B5034803F01CFD043818BF012008BD50 -:10436000EC04002008B50146014803F09EFC08BD9E -:10437000EC04002000B583B001238DF8073000F075 -:10438000ADF810B900238DF807309DF8070003B091 -:104390005DF804FB38B5FFF7EDFF012802D00225D8 -:1043A000284638BD0446074803F064FC054600284B -:1043B000F6D14FF40061034803F08AFC0028EFD0E7 -:1043C0002546EDE7EC04002008B5074B01221A70E2 -:1043D000FFF7BEFF20B9044A137803F0FE03137001 -:1043E000014B187808BD00BF5000002010B50446EE -:1043F000074B01221A70FFF7CDFF10B1044B18785C -:1044000010BD2046FFF7E0FF014B1870F6E700BF34 -:104410005000002008B5FFF7D7FF08BD08B50846D3 -:1044200011461A464FF0FF33FFF772FF30B9FFF71E -:104430008FFF03460028FAD1184608BD0123FBE789 -:1044400008B5084611461A464FF0FF33FFF770FFD4 -:1044500030B9FFF77DFF03460028FAD1184608BDA2 -:104460000123FBE730B589B0134B187810F0010435 -:104470001BD1154603291CD8DFE801F002040A10FD -:104480000C4613E06846FFF76DFF069B2B600DE0BE -:104490006846FFF767FF079B2B8007E06846FFF73A -:1044A00061FF079B5B0A2B6000E00324204609B0F4 -:1044B00030BD0424FAE700BF5000002008B50349CE -:1044C000034806F0B3FB034B187008BD000600203C -:1044D0003CB60008040600200020704708B5012102 -:1044E000034801F077FF08B9012008BD0020FCE770 -:1044F000000C0240FEE7FEE7FEE7FEE7FEE770473E -:104500007047704708B502F061F808BD08B5034868 -:1045100000F07DFE024800F07AFE08BDB8050020DC -:104520007005002008B5084A136801331360074A74 -:104530001268934203D0064803F017FE08BD054BEE -:1045400001221A70F7E700BF0C03002008030020C7 -:1045500008040020D602002008B5094B1A6842F072 -:1045600008021A6007490A6842F008020A60DA681D -:1045700022F00102DA60044803F0F7FD08BD00BF35 -:104580000048014000080040BC03002070470000C4 -:1045900010B5114B9B7A022B0ED0032B18D10021A2 -:1045A0000220FEF787FB0C4C00226188606801F056 -:1045B00018FF0223A3720BE0074C21890220FEF7AB -:1045C00079FB01226188606801F00BFF0323A3726D -:1045D000024803F0CAFD10BDF4010020540400207D -:1045E0007047000008B5094B1B6913F0010F0BD091 -:1045F000064B6FF001021A61054A1368013313601C -:104600000221044801F0F3FE08BD00BF0010004085 -:1046100030030020000C0240064B1B6913F0010F11 -:1046200007D0044B6FF001021A61034A136801338B -:1046300013607047001400401803002010B49B4B17 -:104640005A6AD2B29A4B1A709A4B1B881F2B00F2EF -:104650006481DFE813F020002F0062016201620133 -:1046600062016201620162019E00620162016201F7 -:104670006201620162016201620162016201620122 -:104680006201620162016201620162016201620112 -:10469000D800620112018849086888490860884981 -:1046A0000120087087490A800344824A13805DF81C -:1046B000044B704783490B8803EB02239BB20B80AA -:1046C00045F25552934245D022D843F233329342B9 -:1046D00037D010D841F2111293422ED042F222224A -:1046E000934248D10023734A1380754A1370764B66 -:1046F00002221A70DBE744F2444293423BD100238A -:104700006C4A13806E4A13706F4B04221A70CEE706 -:1047100047F27772934226D048F68802934226D019 -:1047200046F26662934226D10023624A1380644AAD -:104730001370654B06221A70B9E75E4B02221A808D -:10474000B5E700235B4A13805D4A13705E4B03227A -:104750001A70ACE70023574A1380594A13705A4B1A -:1047600005221A70A3E7534B02221A809FE7514B90 -:1047700002221A809BE700234E4A1380504A13708E -:10478000524A137843F0020313704F4B02221A70FF -:104790008DE74C49088848F68801884212D013F00A -:1047A000010F2AD059080139494C34F8110000EBA7 -:1047B000022224F8112001333E4A1380454B002287 -:1047C0001A7074E713F0010F11D05B08013B4048E9 -:1047D00030F8131001EB022220F813203A4B0A2282 -:1047E0001A700023334A1380354A13705FE75B0861 -:1047F000013B374921F81320F0E7590801393448C3 -:1048000020F81120D7E72F49088841F2111188427A -:1048100012D013F0010F2AD0590801392C4C34F86A -:10482000110000EB022224F811200133214A1380E9 -:10483000284B00221A703AE713F0010F11D05B08E1 -:10484000013B234830F8131001EB022220F813201B -:104850001D4B01221A700023164A1380184A137048 -:1048600025E75B08013B1A4921F81320F0E75908B6 -:104870000139174820F81120D7E71249088847F274 -:104880007771884228D013F0010F40D059080139C0 -:104890000F4C34F8110000EB022224F811200133F0 -:1048A000044A13800B4B00221A7000E700100140ED -:1048B00001030020D4020020300300202403002044 -:1048C000D9020020D202002000030020FC020020B8 -:1048D00090020020FE02002013F0010F11D05B08AF -:1048E000013B1A4830F8131001EB022220F8132084 -:1048F000174B08221A700023164A1380164A1370A9 -:10490000D5E65B08013B114921F81320F0E759086F -:1049100001390E4820F81120C1E713F0010F0FD024 -:1049200059080139094C34F8110000EB022224F82F -:1049300011200133074A1380084B00221A70B6E693 -:1049400059080139014820F81120F2E790020020AF -:1049500000030020D4020020D9020020FE02002023 -:1049600000B583B0304BDB6913F0200F07D02E4B1E -:104970001B6813F0200F02D0FFF760FE33E02A4BD4 -:10498000DB6913F0080F25D1274BDB6913F0020F09 -:104990002CD1254BDB6913F0040F31D1224BDB699D -:1049A00013F0010F36D1214BDB6913F0400F1AD001 -:1049B0001E4B1B6813F0400F15D01B4B40221A6290 -:1049C000194A52E8003F23F0400342E80031002931 -:1049D000F6D108E0144B5B6A9DF8072052FA83F386 -:1049E000DBB28DF8073003B05DF804FB0E4B5B6A59 -:1049F0009DF8072052FA83F3DBB28DF80730F2E717 -:104A0000094B5B6A9DF8072052FA83F3DBB28DF8FD -:104A10000730E8E7044B5B6A9DF8072052FA83F3FE -:104A2000DBB28DF80730DEE70010014000140140D2 -:104A3000024B4FF00062DA60704700BF0064024032 -:104A400008B50A4B5B6813F0006F09D1074B5B6830 -:104A500013F0007F03D0054B4FF00072DA6008BD01 -:104A6000FFF7E6FF024B00221A70F8E700640240ED -:104A7000D802002082B00A4B1A6C42F080521A64AD -:104A80001A6C02F080520092009A5A6C42F48042F2 -:104A90005A645B6C03F480430193019B02B070473E -:104AA0000038024030B58DB0002307930893099376 -:104AB0000A930B930368384A934204D0374A9342CF -:104AC00046D00DB030BD364B5A6C42F480725A64F9 -:104AD0005A6C02F480720192019A1A6B42F004023D -:104AE0001A631A6B02F004020292029A1A6B42F0E5 -:104AF00001021A631A6B02F001020392039A1A6B05 -:104B000042F002021A631B6B03F002030493049B3E -:104B100003240794089407A9224801F059FB0423B1 -:104B2000079308940025099507A91F4801F050FB39 -:104B300007940894099507A91C4801F049FB2A46E7 -:104B40002946122001F0DEFC122001F0EBFCB8E750 -:104B5000134B5A6C42F480625A645A6C02F48062BD -:104B60000592059A1A6B42F020021A631B6B03F040 -:104B700020030693069B202307930323089307A98A -:104B80000B4801F025FB00221146122001F0BAFC6F -:104B9000122001F0C7FC94E70020014000220140F0 -:104BA00000380240000802400000024000040240B9 -:104BB00000140240F0B5ADB00446002127912891C1 -:104BC00029912A912B91902203A8FBF7C5FD226819 -:104BD000224B9A4201D02DB0F0BD4FF42003039335 -:104BE00003A800F0F5FF002835D11D4B5A6C42F4A4 -:104BF00000625A645A6C02F400620092009A1A6BC6 -:104C000042F004021A631A6B02F004020192019A44 -:104C10001A6B42F008021A631B6B03F0080302933D -:104C2000029B4FF4F85327930227289700262996D2 -:104C300003252A950C242B9427A90A4801F0C8FAC9 -:104C400004232793289729962A952B9427A9064869 -:104C500001F0BEFABFE7FEF725FBC6E7002C0140D6 -:104C60000038024000080240000C024000B585B048 -:104C70000368294A93420BD0284A934213D0284A0A -:104C8000934223D0274A934233D005B05DF804FB0A -:104C9000254B1A6C42F004021A641B6C03F00403E7 -:104CA0000093009BF1E7204B5A6C42F002025A64D9 -:104CB0005B6C03F002030193019B002211462C2040 -:104CC00001F020FC2C2001F02DFCDEE7164B5A6C85 -:104CD00042F400325A645B6C03F400330293029B8B -:104CE00000221146192001F00DFC192001F01AFCD8 -:104CF000CBE70D4B5A6C42F480225A645B6C03F490 -:104D000080230393039B002211461A2001F0FAFB33 -:104D10001A2001F007FCB8E7000800400004014039 -:104D200000440140004801400038024000B589B00D -:104D300000230393049305930693079303681A4A89 -:104D4000934205D0194A934217D009B05DF804FB8D -:104D5000174B1A6B42F002021A631B6B03F002033B -:104D60000193019B4FF480730393022304930793F1 -:104D700003A9104801F02CFAE7E70D4B1A6B42F03B -:104D800002021A631B6B03F002030293029B4FF4AF -:104D900000730393022304930323079303A9054895 -:104DA00001F016FAD1E700BF0008004000480140BA -:104DB000003802400004024010B5ACB004460021A7 -:104DC0002791289129912A912B91902203A8FBF7F2 -:104DD000C3FC2268174B9A4201D02CB010BD4FF48F -:104DE0000053039303A800F0F3FE00BB124B1A6CB0 -:104DF00042F000421A641A6C02F000420192019AD9 -:104E00001A6B42F010021A631B6B03F0100302933B -:104E1000029B0323279302222892002229922A939D -:104E200008232B9327A9054801F0D2F9D5E7FEF70F -:104E300039FADBE7007C00400038024000100240F5 -:104E40004A4B5A6822F440325A605A6841680A4311 -:104E50005A600268536823F4807353600268536891 -:104E6000016943EA012353600268536823F04073E9 -:104E700053600268536881680B435360026893680B -:104E800023F40063936002689368C1680B439360E6 -:104E9000826A374B9A4257D00268936823F0706356 -:104EA000936002689368816A0B4393600268936819 -:104EB00023F04053936002689368C16A0B43936088 -:104EC0000268936823F00203936002689368816923 -:104ED00043EA4103936090F82030002B3FD00268F2 -:104EE000536843F4006353600268536823F46043DB -:104EF000536001684B68426A013A43EA42334B60AF -:104F00000268D36A23F47003D3620168CB6AC26972 -:104F1000013A43EA0253CB620268936823F40073B8 -:104F200093600268936890F8301043EA41239360DD -:104F30000268936823F48063936002689368416910 -:104F400043EA8123936070470268936823F070639B -:104F500093600268936823F040539360B0E702685F -:104F6000536823F400635360CAE700BF0023014085 -:104F70000100000F28B310B50446036C43B1236C45 -:104F800013F0100F0BD00120002384F83C3010BD2B -:104F9000FFF788FD0023636484F83C30EFE7226C60 -:104FA000094B134043F0020323642046FFF748FFF8 -:104FB00000206064236C23F0030343F001032364A7 -:104FC000E2E70120704700BFFDEEFFFF82B0002343 -:104FD000019390F83C30012B7ED0012380F83C30C7 -:104FE00003689A6812F0010F13D19A6842F0010227 -:104FF0009A603D4B1B683D4AA2FB03239B0C03EBCD -:105000004303019302E0019B013B0193019B002BB1 -:10501000F9D103689A6812F0010F52D0016C344A3A -:105020000A4042F4807202645A6812F4806F05D01C -:10503000026C22F4405242F480520264026C12F478 -:10504000805F19D0426C22F006024264002280F890 -:105050003C206FF022021A60264B5B6813F01F0F92 -:105060000DD103689A6812F0405F37D19A6842F018 -:1050700080429A6000202DE000224264E6E7036847 -:105080001D4A93420AD01B4B5B6813F0100F27D1C7 -:1050900003681A4A93420AD000201BE09A6812F073 -:1050A000405FF0D19A6842F080429A60EBE79A68DC -:1050B00012F0405F16D19A6842F080429A60002058 -:1050C00008E0036C43F010030364436C43F00103F6 -:1050D0004364002002B070470220FBE70020F9E79C -:1050E0000020F7E70020F5E75800002083DE1B438F -:1050F000FEF8FFFF00230140002001400022014094 -:1051000090F83C30012B17D0012380F83C30026826 -:10511000936823F00103936003689B6813F0010F09 -:1051200005D1026C054B134043F0010303640023D7 -:1051300080F83C301846704702207047FEEEFFFFB3 -:1051400070B504460D4603689A6812F4806F03D068 -:105150009B6813F4807F19D101F044FA0646236856 -:105160001A6812F0020F20D1B5F1FF3FF7D0B5B9A0 -:1051700023681B6813F0020FF1D1236C43F0040382 -:105180002364002384F83C30032033E0036C43F0B5 -:1051900020030364002380F83C3001202AE001F062 -:1051A00021FA801BA842DAD9E2E76FF012021A60F6 -:1051B000236C43F40073236423689A6812F0405F01 -:1051C00017D1A269BAB9DA6A12F4700F03D09B68DA -:1051D00013F4806F11D1236C23F480732364236C48 -:1051E00013F4805F0BD1236C43F001032364002090 -:1051F00000E0002070BD0020FCE70020FAE700205E -:10520000F8E70368D86C704770477047704770B50F -:10521000044603681E685D68C5F3401212EA560230 -:105220002CD0026C12F0100F03D1026C42F4007209 -:1052300002649A6812F0405F19D1A269BAB9DA6AB9 -:1052400012F4700F03D09A6812F4806F0FD15A686D -:1052500022F020025A60236C23F480732364236CB1 -:1052600013F4805F03D1236C43F0010323642046D1 -:10527000FFF7CAFF23686FF012021A60C5F3C0136C -:1052800013EA960335D0236C13F0100F03D1236C6F -:1052900043F40053236423689A6812F4401F21D119 -:1052A0009A6B12F4401F03D09A6812F4806F19D1E0 -:1052B0005A6812F4806F15D19A6812F0405F11D1CC -:1052C000A2697AB95A6822F080025A60236C23F4EA -:1052D00080532364236C13F4807F03D1236C43F049 -:1052E00001032364204600F01FF923686FF00C02CD -:1052F0001A60C5F380131E4204D023681B6813F0A4 -:10530000010F05D1C5F3806515EA56150CD170BDA6 -:10531000236C43F4803323642046FFF776FF236831 -:105320006FF001021A60EDE7636C43F002036364FF -:1053300023686FF020051D602046FFF767FF236894 -:105340001D60E4E730B482B00022019290F83C2066 -:10535000012A00F0DC800346012280F83C200A6824 -:10536000B2F1004F18BF092A22D90468E06892B24E -:1053700002EB42021E3A4FF0070C0CFA02F220EA4E -:105380000202E2600A68634882420AD01D68E86847 -:105390008C6892B202EB42021E3A94402043E860CD -:1053A0001CE01868C2688C6842EA0462C26015E0BA -:1053B0000468206992B202EB42024FF0070C0CFA2B -:1053C00002F220EA020222611C6820690A8802EBCC -:1053D00042028D6805FA02F2024322614A68062AF7 -:1053E00029D81C68606B02EB8202053A4FF01F0C53 -:1053F0000CFA02F220EA020262631C68606B4A68DF -:1054000002EB8202053AB1F800C00CFA02F2024344 -:1054100062631868404A90423DD018683E4A904204 -:1054200043D018683C4A90424CD0002083F83C009E -:1054300002B030BC70470C2A16D81D68286B02EBEE -:105440008202233A1F2404FA02F220EA02022A63AB -:105450001D68286B4A6802EB8202233A0C8804FA22 -:1054600002F202432A63D4E71D68E86A02EB820273 -:10547000413A1F2404FA02F220EA0202EA621D689D -:10548000E86A4A6802EB8202413A0C8804FA02F2A6 -:105490000243EA62BDE70A68B2F1004FBDD11F487E -:1054A000426822F440024260B7E70A68122AB8D183 -:1054B0001A4A506820F400005060506840F48000A0 -:1054C0005060AEE70A681348112A18BF8242ACD177 -:1054D000124A506820F480005060506840F4000088 -:1054E000506009680B4A91429FD10D4A12680D49DC -:1054F000A1FB0212920C02EB82025200019202E026 -:10550000019A013A0192019A002AF9D18DE702200D -:105510008EE700BF12000010002001400023014070 -:105520005800002083DE1B4370470000002800F075 -:10553000068270B582B00446036813F0010F29D0CB -:10554000954B9B6803F00C03042B1AD0924B9B687D -:1055500003F00C03082B0FD06368B3F5803F40D0F5 -:10556000002B54D18C4B1A6822F480321A601A68CE -:1055700022F480221A6039E0874B5B6813F4800FB5 -:10558000EAD0854B1B6813F4003F03D06368002BFF -:1055900000F0D781236813F0020F74D07E4B9B6814 -:1055A00013F00C0F5ED07C4B9B6803F00C03082BB0 -:1055B00053D0E368002B00F08980774A136843F0EA -:1055C0000103136001F00EF80546734B1B6813F0DE -:1055D000020F72D101F006F8401B0228F5D9032012 -:1055E000B4E16D4A136843F48033136063682BB3EE -:1055F00000F0F8FF0546684B1B6813F4003FC9D163 -:1056000000F0F0FF401B6428F5D903209EE1B3F5BC -:10561000A02F09D0604B1A6822F480321A601A68F1 -:1056200022F480221A60E1E75B4B1A6842F4802280 -:105630001A601A6842F480321A60D7E700F0D2FF8D -:105640000546554B1B6813F4003FA3D000F0CAFF7A -:10565000401B6428F5D9032078E14F4B5B6813F4B5 -:10566000800FA6D14C4B1B6813F0020F03D0E368E8 -:10567000012B40F06881484A136823F0F803216940 -:1056800043EAC1031360236813F0080F46D063692F -:1056900083B3414A536F43F00103536700F0A2FF05 -:1056A00005463D4B5B6F13F0020F37D100F09AFFB8 -:1056B000401B0228F5D9032048E1374A136823F03C -:1056C000F803216943EAC1031360DCE7324A136837 -:1056D00023F00103136000F085FF05462E4B1B6885 -:1056E00013F0020FCFD000F07DFF401B0228F5D948 -:1056F00003202BE1284A536F23F00103536700F086 -:1057000071FF0546244B5B6F13F0020F06D000F0CB -:1057100069FF401B0228F5D9032017E1236813F025 -:10572000040F7DD01C4B1B6C13F0805F1ED11A4BF5 -:105730001A6C42F080521A641B6C03F08053019380 -:10574000019B0125154B1B6813F4807F10D0A368C3 -:10575000012B25D0002B3BD10F4B1A6F22F00102F9 -:105760001A671A6F22F004021A671EE00025E9E7A3 -:105770000A4A136843F48073136000F033FF06464F -:10578000064B1B6813F4807FE1D100F02BFF801BD8 -:105790006428F5D90320D9E00038024000700040A9 -:1057A000724A136F43F001031367A36833B300F029 -:1057B00019FF06466D4B1B6F13F0020F2FD100F03F -:1057C00011FF801B41F288339842F3D90320BDE0DA -:1057D000052B09D0654B1A6F22F001021A671A6F68 -:1057E00022F004021A67E0E7604B1A6F42F00402ED -:1057F0001A671A6F42F001021A67D6E700F0F2FE4C -:1058000006465A4B1B6F13F0020F08D000F0EAFE59 -:10581000801B41F288339842F3D9032096E0FDB90A -:10582000A369002B00F09180504A926802F00C02AC -:10583000082A59D0022B19D04C4A136823F08073E0 -:10584000136000F0CFFE0446484B1B6813F0007F46 -:1058500048D000F0C7FE001B0228F5D9032075E0F0 -:10586000424A136C23F080531364D9E73F4A13680C -:1058700023F08073136000F0B5FE05463B4B1B68B8 -:1058800013F0007F06D000F0ADFE401B0228F5D9D2 -:1058900003205BE0E369226A1343626A43EA8213EE -:1058A000A26A5208013A43EA0243E26A43EA026307 -:1058B000226B43EA02732D4A5360136843F08073EE -:1058C000136000F08FFE0446284B1B6813F0007F26 -:1058D00006D100F087FE001B0228F5D9032035E031 -:1058E000002033E0002031E0204A5268012B2FD005 -:1058F00002F48003E1698B422CD102F03F03216A5C -:105900008B4229D1616A47F6C0731340B3EB811F04 -:1059100024D102F44031A36A5B08013BB1EB034F91 -:105920001ED102F07063E16AB3EB016F1AD102F08D -:10593000E042236BB2EB037F16D1002006E001208A -:105940007047012002E0012000E0002002B070BD9D -:105950000120FBE70120F9E70120F7E70120F5E747 -:105960000120F3E70120F1E70120EFE700380240D2 -:1059700008B5264B9B6803F00C03042B41D0082B81 -:1059800041D1224B5A6802F03F025B6813F4800F4A -:1059900012D01E4B5968C1F388111D480023A1FB8A -:1059A0000001FBF7D3FB194B5B68C3F301430133E1 -:1059B0005B00B0FBF3F008BD144B5868C0F38810CF -:1059C0004FEA401CBCEB000C6EEB0E0E4FEA8E1340 -:1059D00043EA9C634FEA8C11B1EB0C0163EB0E03BD -:1059E000DB0043EA5173C90011EB000C43F10003E3 -:1059F000990200234FEA8C2041EA9C51FBF7A6FB59 -:105A0000D1E70348D7E70348D5E700BF0038024095 -:105A100040787D010024F400002800F0A08070B5DB -:105A20000D460446524B1B6803F00F038B420BD20A -:105A30004F4A136823F00F030B431360136803F0FE -:105A40000F038B4240F08D80236813F0020F17D0B4 -:105A500013F0040F04D0474A936843F4E053936073 -:105A6000236813F0080F04D0424A936843F460435C -:105A70009360404A936823F0F003A1680B4393605E -:105A8000236813F0010F31D06368012B20D0022B63 -:105A900025D0384A126812F0020F64D035498A685E -:105AA00022F0030213438B6000F09CFD0646314B4D -:105AB0009B6803F00C036268B3EB820F16D000F012 -:105AC00091FD801B41F288339842F0D9032045E0D4 -:105AD000284A126812F4003FE0D101203EE0254A36 -:105AE000126812F0007FD9D1012037E0204B1B68EB -:105AF00003F00F03AB420AD91D4A136823F00F03CA -:105B00002B431360136803F00F03AB422DD12368BE -:105B100013F0040F06D0174A936823F4E053E168AA -:105B20000B439360236813F0080F07D0114A936862 -:105B300023F46043216943EAC1039360FFF718FF30 -:105B40000C4B9B68C3F303130B4AD35CD8400B4B3D -:105B500018600B4B186800F007FD002070BD012095 -:105B600070470120FAE70120F8E70120F6E700BFBF -:105B7000003C02400038024058B60008580000209F -:105B800054000020014B1868704700BF58000020E7 -:105B900008B5FFF7F7FF044B9B68C3F38223034A62 -:105BA000D35CD84008BD00BF0038024050B60008A2 -:105BB00008B5FFF7E7FF044B9B68C3F34233034A82 -:105BC000D35CD84008BD00BF0038024050B6000882 -:105BD000F0B583B00446066816F001060DD0B54B4B -:105BE0009A6822F400029A609A68416B0A439A60AC -:105BF000436B002B00F067810026256815F4002513 -:105C000011D0AC4AD2F88C3023F44013E16B0B4333 -:105C1000C2F88C30E36BB3F5801F00F05681002B87 -:105C200000F055810025236813F4801F0FD0A14A8E -:105C3000D2F88C3023F44003216C0B43C2F88C3033 -:105C4000236CB3F5800F00F0448103B9012523686C -:105C500013F0807F00D0012613F0200F40F03B812D -:105C6000236813F0100F0CD0924BD3F88C2022F045 -:105C70008072C3F88C20D3F88C20A16B0A43C3F840 -:105C80008C20236813F4804F08D08A4AD2F89030D1 -:105C900023F44033616E0B43C2F89030236813F451 -:105CA000004F08D0834AD2F8903023F44023A16EED -:105CB0000B43C2F89030236813F4803F08D07D4A2C -:105CC000D2F8903023F44013E16E0B43C2F89030C9 -:105CD000236813F4003F08D0764AD2F8903023F4BA -:105CE0004003216F0B43C2F89030236813F0400F3C -:105CF00008D0704AD2F8903023F00303616C0B4354 -:105D0000C2F89030236813F0800F08D0694AD2F8A7 -:105D1000903023F00C03A16C0B43C2F89030236841 -:105D200013F4807F08D0634AD2F8903023F0300318 -:105D3000E16C0B43C2F89030236813F4007F08D065 -:105D40005C4AD2F8903023F0C003216D0B43C2F8B7 -:105D50009030236813F4806F08D0564AD2F8903000 -:105D600023F44073616D0B43C2F89030236813F441 -:105D7000006F08D04F4AD2F8903023F44063A16DF1 -:105D80000B43C2F89030236813F4805F08D0494A6F -:105D9000D2F8903023F44053E16D0B43C2F89030B9 -:105DA000236813F4005F08D0424AD2F8903023F4FD -:105DB0004043216E0B43C2F89030236813F4800FE8 -:105DC00008D03C4AD2F8903023F08063A16F0B4397 -:105DD000C2F89030236813F4001F0DD0354AD2F872 -:105DE000903023F00063E16F0B43C2F89030E36F13 -:105DF000B3F1006F00F0D580236813F0080F00D0D6 -:105E0000012513F4802F08D02A4AD2F8903023F0CD -:105E10004073616F0B43C2F89030236813F4000F96 -:105E200009D0244AD2F8903023F08053D4F880105F -:105E30000B43C2F89030236813F0806F09D01D4ADD -:105E4000D2F8903023F00053D4F884100B43C2F8FA -:105E50009030236813F0006F09D0164AD2F88C30C6 -:105E600023F00073D4F888100B43C2F88C302368F9 -:105E700013F0805F09D00F4AD2F88C3023F0806392 -:105E8000D4F88C100B43C2F88C3026B9236813F079 -:105E9000007F00F00681074A136823F080631360D7 -:105EA00000F0A0FB0646034B1B6813F0006F7AD08E -:105EB00002E000BF0038024000F094FB801B642821 -:105EC000F1D90320F0E0012697E60126A7E6012597 -:105ED000A9E60126B9E67F4B1A6C42F080521A649B -:105EE0001B6C03F080530193019B7B4A136843F4BE -:105EF0008073136000F076FB0746774B1B6813F442 -:105F0000807F06D100F06EFBC01B6428F5D903200A -:105F1000CAE0704B1B6F13F4407315D0226B02F470 -:105F200040729A4210D06B4B1A6F22F44072196F74 -:105F300041F480311967196F21F4803119671A67AC -:105F40001B6F13F0010F12D1236B03F44072B2F5F3 -:105F5000407F1DD05F4A936823F4F81393605D4936 -:105F60000B6F226BC2F30B0213430B6778E600F052 -:105F700039FB0746574B1B6F13F0020FE4D100F0BB -:105F800031FBC01B41F288339842F3D903208BE0E8 -:105F90005048826822F4F812504919400A4382603E -:105FA000DDE7012528E7236813F0010F13D0636BA9 -:105FB0008BB9484AD2F88430D2F88410606803F470 -:105FC000403343EA801301F070610B43A16843EA58 -:105FD0000173C2F88430236813F4002F03D0E26BFE -:105FE000B2F5801F06D013F4801F1ED0236CB3F5CA -:105FF000800F1AD1374AD2F88430D2F88410606802 -:1060000003F4403343EA8013E06843EA006301F09D -:10601000E0410B43C2F88430D2F88C3023F01F03E8 -:10602000616A01390B43C2F88C30236813F0807F1A -:1060300011D0284AD2F88400D2F884106668236907 -:106040001B0443EA861300F07060034301F0E04153 -:106050000B43C2F88430236813F0007F0DD06268D0 -:1060600023691B0443EA8213E26843EA0263A268DD -:1060700043EA0273174AC2F88430164A136843F0A1 -:106080008063136000F0AEFA0646124B1B6813F0F3 -:10609000006F06D100F0A6FA801B6428F5D9032012 -:1060A00002E0012D02D0002003B0F0BD094A1368C0 -:1060B00023F08053136000F095FA0546054B1B68EA -:1060C00013F0005F0CD000F08DFA401B6428F5D966 -:1060D0000320E9E70038024000700040FFFCFF0F9A -:1060E000236813F4002F01D0E26B22B113F4801F58 -:1060F0001DD0236CDBB9354AD2F88830D2F888102D -:10610000606903F4403343EA8013A06943EA006303 -:1061100001F0E0410B43C2F88830D2F88C3023F410 -:10612000F853A16A013943EA0123C2F88C3023688D -:1061300013F4001F03D0E36FB3F1006F31D0236875 -:1061400013F0080F19D0214AD2F88810D2F88830FD -:10615000606903F4403343EA801301F070610B433C -:10616000E16943EA0173C2F88830D2F88C3023F435 -:106170004033E16A0B43C2F88C30144A136843F091 -:106180008053136000F02EFA0446104B1B6813F086 -:10619000005F19D100F026FA001B6428F5D903200E -:1061A00082E70A4AD2F88800D2F888106569236A23 -:1061B0001B0443EA851300F07060034301F0E041E3 -:1061C0000B43C2F88830BAE700206DE70038024080 -:1061D00000230F2B00F2F48070B582B066E0856872 -:1061E0004FEA430E032404FA0EF425EA0405CC68B2 -:1061F00004FA0EF42C438460446824EA02044A68DA -:10620000C2F300129A40224342605DE0DC08083489 -:1062100050F8242003F00705AD004FF00F0E0EFAE2 -:1062200005FE22EA0E0E0A69AA4042EA0E0240F872 -:1062300024205DE0092200E0002202FA0EF22A4347 -:106240000234604D45F824205F4A94686FEA0C02DE -:1062500024EA0C054E6816F4801F01D04CEA0405B0 -:10626000594CA560E46802EA04054E6816F4001F64 -:1062700001D04CEA0405544CE560646802EA040568 -:106280004E6816F4003F01D04CEA04054E4C6560A0 -:10629000246822404D6815F4803F01D04CEA040286 -:1062A000494C226001330F2B00F2888001229A4072 -:1062B0000C6804EA020C32EA0404F3D14C6804F0DE -:1062C0000304013C012C8AD94A6802F00302032A24 -:1062D00009D0C4685D000322AA4024EA02048A6847 -:1062E000AA402243C2604A6802F00302022A8DD00B -:1062F00004684FEA430E032202FA0EF224EA020473 -:106300004A6802F0030202FA0EF2224302604A686F -:1063100012F4403FC6D02D4A546C44F48044546477 -:10632000526C02F480420192019A9C08A51C254AF5 -:1063300052F8255003F0030E4FEA8E0E0F2202FA98 -:106340000EF225EA0205224A90423FF475AF02F5AB -:106350008062904222D002F58062904220D002F505 -:10636000806290421ED002F5806290421CD002F5FD -:10637000806290421AD002F58062904218D002F5F5 -:106380008062904216D002F58062904214D002F5ED -:10639000806290423FF44EAF0A224EE701224CE762 -:1063A00002224AE7032248E7042246E7052244E79F -:1063B000062242E7072240E708223EE702B070BD0E -:1063C000704700BF00380140003C014000380240E7 -:1063D000000002400369194201D0012070470020EB -:1063E00070470AB181617047090481617047436950 -:1063F00001EA030221EA030141EA02418161704797 -:1064000010B582B01B4B1A6C42F080521A641B6CA0 -:1064100003F080530193019B174A136843F48033C0 -:10642000136000F0DFF80446134B5B6813F4803F01 -:1064300008D100F0D7F8001BB0F57A7FF4D903201B -:1064400002B010BD0C4A136843F40033136000F02F -:10645000C9F80446084B5B6813F4003F07D100F00D -:10646000C1F8001BB0F57A7FF4D90320E8E70020DB -:10647000E6E700BF0038024000700040002804DB5F -:106480000901C9B2044B1954704700F00F0009010B -:10649000C9B2024B1954704700E400E014ED00E06B -:1064A00000B500F00700C0F1070CBCF1040F28BFD5 -:1064B0004FF0040C031D062B0FD9C31E4FF0FF3EF7 -:1064C0000EFA0CF021EA000199400EFA03FE22EACE -:1064D0000E0241EA02005DF804FB0023EEE7000033 -:1064E0000649CB6823F4E0631B041B0C000200F494 -:1064F000E0600343024A1A43CA60704700ED00E0BF -:106500000000FA0510B50446054BD868C0F3022018 -:10651000FFF7C6FF01462046FFF7B0FF10BD00BFE2 -:1065200000ED00E0002807DB00F01F024009012316 -:106530009340024A42F82030704700BF00E100E07B -:106540000138B0F1807F0BD24FF0E0235861054A4B -:10655000F02182F823100020986107221A61704709 -:106560000120704700ED00E010B504460E4B1A788C -:106570004FF47A73B3FBF2F30C4A1068B0FBF3F0FC -:10658000FFF7DEFF68B90F2C01D901200AE00022D5 -:1065900021464FF0FF30FFF7B5FF054B1C60002090 -:1065A00000E0012010BD00BF510000205800002075 -:1065B0005400002008B50320FFF792FF0020FFF7EA -:1065C000D3FFFEF757FA002008BD0000034A116808 -:1065D000034B1B780B441360704700BF0806002074 -:1065E00051000020014B1868704700BF08060020CA -:1065F00038B50446FFF7F6FF0546B4F1FF3F02D079 -:10660000044B1B781C44FFF7EDFF401BA042FAD35C -:1066100038BD00BF51000020034B9B68C3F3031338 -:10662000024AD35CD84070470038024058B6000890 -:10663000034B9B68C3F38223024AD35CD840704764 -:106640000038024050B60008034B9B68C3F3423346 -:10665000024AD35CD84070470038024050B6000868 -:106660000D4B5B6803F480039BB90C480A4B5A68D6 -:1066700002F03F02B0FBF2F05A68C2F3881202FB4C -:1066800000F05B68C3F3014301335B00B0FBF3F040 -:1066900070470348EAE700BF003802400024F400D6 -:1066A00040787D0108B5074B9B6803F00C03042B71 -:1066B00004D0082B04D1FFF7D3FF08BD0248FCE744 -:1066C0000248FAE70038024040787D010024F400D7 -:1066D00008B5032808D00C282ED0B0F5406F53D051 -:1066E00030287AD0002008BD514BD3F890300340B9 -:1066F00043EA00434F4A934208D0B3F1031F0CD042 -:10670000013A934211D1FFF7CDFFECE7484B1868EF -:1067100010F00200E7D04848E5E7454B186F10F04D -:106720000200E0D04FF40040DDE7FFF7BBFFFFF7CA -:1067300073FFFFF789FFD6E73D4BD3F89030034056 -:1067400043EA00433D4A934208D0B3F10C1F0CD0FA -:10675000043A934211D1FFF7A5FFC4E7344B186800 -:1067600010F00200BFD03448BDE7314B186F10F075 -:106770000200B8D04FF40040B5E7FFF793FFFFF7F2 -:106780004BFFFFF755FFAEE7294BD3F8903003409E -:1067900043EA00432A4A934209D0B3F10C2F0DD0AB -:1067A000A2F58062934211D1FFF77CFF9BE7204B5B -:1067B000186810F0020096D01F4894E71C4B186F21 -:1067C00010F002008FD04FF400408CE7FFF76AFF13 -:1067D000FFF722FFFFF738FF85E7154BD3F890301E -:1067E000034043EA0043174A934208D0B3F1301FF5 -:1067F0000DD0103A934213D1FFF754FF73E70C4BBF -:10680000186810F002003FF46EAF0B486BE7084BBE -:10681000186F10F002003FF466AF4FF4004062E7DB -:10682000FFF740FFFFF7F8FEFFF702FF5BE700BF4F -:1068300000380240020003000024F40008000C00AD -:106840000008000C2000300008B5C0280AD0B0F5C0 -:10685000407F2FD0B0F5405F55D0B0F5404F7BD092 -:10686000002008BD524BD3F89030034043EA004368 -:10687000504A934208D0B3F1C01F0CD0403A934223 -:1068800011D1FFF70FFFECE7494B186810F0020039 -:10689000E7D04948E5E7464B186F10F00200E0D01A -:1068A0004FF40040DDE7FFF7FDFEFFF7B5FEFFF711 -:1068B000BFFED6E73E4BD3F89030034043EA004397 -:1068C0003E4A934209D0B3F1032F0DD0A2F5807256 -:1068D000934211D1FFF7E6FEC3E7354B186810F07D -:1068E0000200BED03448BCE7314B186F10F00200F4 -:1068F000B7D04FF40040B4E7FFF7D4FEFFF78CFEAB -:10690000FFF796FEADE72A4BD3F89030034043EAF9 -:1069100000432B4A934209D0B3F1302F0DD0A2F59A -:106920008052934211D1FFF7BDFE9AE7204B1868C1 -:1069300010F0020095D0204893E71D4B186F10F01F -:1069400002008ED04FF400408BE7FFF7ABFEFFF75D -:1069500063FEFFF76DFE84E7154BD3F890300340DC -:1069600043EA0043174A934209D0B3F1C02F0ED037 -:10697000A2F58042934213D1FFF794FE71E70C4BCE -:10698000186810F002003FF46CAF0B4869E7084B41 -:10699000186F10F002003FF464AF4FF4004060E75E -:1069A000FFF780FEFFF738FEFFF742FE59E700BF12 -:1069B000003802408000C0000024F4000002000300 -:1069C00000200030008000C000B5836891FAA1FC6F -:1069D000BCFA8CFC4FEA4C0C4FF0030E0EFA0CFC88 -:1069E00023EA0C0391FAA1F1B1FA81F149008A403E -:1069F000134383605DF804FB00B5C36891FAA1FC02 -:106A0000BCFA8CFC4FEA4C0C4FF0030E0EFA0CFC57 -:106A100023EA0C0391FAA1F1B1FA81F149008A400D -:106A20001343C3605DF804FB00B5036A91FAA1FC4F -:106A3000BCFA8CFC4FEA8C0C4FF00F0E0EFA0CFCDB -:106A400023EA0C0391FAA1F1B1FA81F189008A409D -:106A5000134303625DF804FB00B5436A090A91FA27 -:106A6000A1FCBCFA8CFC4FEA8C0C4FF00F0E0EFA16 -:106A70000CFC23EA0C0391FAA1F1B1FA81F189002F -:106A80008A40134343625DF804FB00B5036891FA42 -:106A9000A1FCBCFA8CFC4FEA4C0C4FF0030E0EFA32 -:106AA0000CFC23EA0C0391FAA1F1B1FA81F149003F -:106AB0008A40134303605DF804FBF8B507460E46B1 -:106AC0000D6895FAA5F5B5FA85F519E0B268214685 -:106AD0003846FFF779FF3268F1687B6823EA0203E2 -:106AE00001FB02F213437B6016E0726921463846CF -:106AF000FFF7B2FF726821463846FFF7C6FF01353F -:106B0000346834FA05F21BD00122AA401440F6D0B2 -:106B10007368013B012BD9D9326921463846FFF70A -:106B20006BFF7368022BE5D194FAA4F3B3FA83F3F5 -:106B3000072BDAD8726921463846FFF775FFD9E787 -:106B40000020F8BD0B4B1B680B4AA2FB03235B0A1A -:106B500041F2883202FB03F31A46013B3AB1426B21 -:106B600012F0800FF8D0C5238363002070474FF0E8 -:106B70000040704758000020D34D621084B00DF1E2 -:106B8000040C8CE80E000B461343039A1343049A3B -:106B90001343059A1343069A13434168034A0A4074 -:106BA00013434360002004B0704700BF0081FFFF23 -:106BB000D0F8800070470B68C0F880300020704724 -:106BC0000323036000207047006800F00300704753 -:106BD0000B6883604B688A681343CA6813430A6969 -:106BE0001343C2686FF30B021343C3600020704766 -:106BF0000069C0B270471430405870470B68436258 -:106C00004B6883628B68CA6813430A6913434A69F5 -:106C10001343C26A22F0F7021343C3620020704795 -:106C200010B586B0044600230193029303930493A6 -:106C30004FF48063059301A9FFF7CAFF2046FFF7D1 -:106C400081FF06B010BD000038B504460D46504B1C -:106C50001B685049A1FB03135B0A03FB02F21346B6 -:106C6000013A002B5DD0636B13F0450FF7D013F49E -:106C7000006FF4D1636B13F0040F06D1636B13F054 -:106C8000010F05D00120A0634DE00420A0634AE07D -:106C9000C523A3632046FFF7ABFFA84201D0012024 -:106CA00041E000212046FFF7A6FF03463A4818407E -:106CB000C8B3002B38DB13F0804F38D113F0005FDE -:106CC00037D113F0805F36D113F0006F36D113F057 -:106CD000806F36D113F0807F36D113F4000F36D198 -:106CE00013F4800F36D113F4001F36D113F4801F34 -:106CF00036D113F4802F36D113F4003F36D113F47C -:106D0000803F36D113F4004F36D113F4804F36D183 -:106D100013F4005F36D113F0080F36D04FF40000A3 -:106D200001E04FF0004038BD4FF00070FBE740201D -:106D3000F9E78020F7E74FF48070F4E74FF4007034 -:106D4000F1E74FF48060EEE74FF40060EBE74FF4BB -:106D50008050E8E74FF40050E5E74FF48040E2E769 -:106D60004FF40040DFE74FF40030DCE74FF48020C1 -:106D7000D9E74FF40020D6E74FF48010D3E74FF463 -:106D80000010D0E74FF48000CDE74FF48030CAE721 -:106D900058000020D34D621008E0FFFD30B587B0E9 -:106DA0000446019110250295402303930023049388 -:106DB0004FF48063059301A9FFF70AFF41F288327F -:106DC00029462046FFF740FF07B030BD30B587B0F9 -:106DD0000446019111250295402303930023049357 -:106DE0004FF48063059301A9FFF7F2FE41F2883268 -:106DF00029462046FFF728FF07B030BD30B587B0E1 -:106E00000446019112250295402303930023049325 -:106E10004FF48063059301A9FFF7DAFE41F288324F -:106E200029462046FFF710FF07B030BD30B587B0C8 -:106E300004460191182502954023039300230493EF -:106E40004FF48063059301A9FFF7C2FE41F2883237 -:106E500029462046FFF7F8FE07B030BD30B587B0B1 -:106E600004460191192502954023039300230493BE -:106E70004FF48063059301A9FFF7AAFE41F288321F -:106E800029462046FFF7E0FE07B030BD30B587B099 -:106E90000446002301930C2502954022039204939B -:106EA0004FF48063059301A9FFF792FE034A294638 -:106EB0002046FFF7C9FE07B030BD00BF00E1F50571 -:106EC00030B587B00446019207250295402303930D -:106ED000002304934FF48063059301A9FFF778FE24 -:106EE00041F2883229462046FFF7AEFE07B030BD9A -:106EF00030B587B0044601913725029540230393AE -:106F0000002304934FF48063059301A9FFF760FE0B -:106F100041F2883229462046FFF796FE07B030BD81 -:106F200030B587B0044601910625029540230393AE -:106F3000002304934FF48063059301A9FFF748FEF3 -:106F400041F2883229462046FFF77EFE07B030BD69 -:106F500030B587B0044600230193332502954022C3 -:106F6000039204934FF48063059301A9FFF730FE69 -:106F700041F2883229462046FFF766FE07B030BD51 -:106F800030B587B0044601910D2502954023039347 -:106F9000002304934FF48063059301A9FFF718FEC3 -:106FA00041F2883229462046FFF74EFE07B030BD39 -:106FB0000146144B1B68144AA2FB03235B0A41F2EF -:106FC000883202FB03F31A46013BBAB14A6B12F056 -:106FD000450FF8D012F4006FF5D14B6B13F0040F8E -:106FE00006D1486B10F0010005D1C5238B637047B3 -:106FF0000420886370470120886370474FF0004089 -:10700000704700BF58000020D34D621010B586B005 -:1070100004460023019302220292C02203920493A9 -:107020004FF48063059301A9FFF7D2FD2046FFF7D7 -:10703000BFFF06B010BD10B586B00446019109230C -:107040000293C0230393002304934FF480630593BA -:1070500001A9FFF7BDFD2046FFF7AAFF06B010BD4E -:107060000146104B1B68104AA2FB03235B0A41F246 -:10707000883202FB03F31A46013B82B14A6B12F0DD -:10708000450FF8D012F4006FF5D1486B10F00400F2 -:1070900002D1C5238B6370470420886370474FF08B -:1070A0000040704758000020D34D621010B586B0E4 -:1070B00004460A4B0B430193292302934023039375 -:1070C000002304934FF48063059301A9FFF780FD2B -:1070D0002046FFF7C5FF06B010BD00BF00001080BE -:1070E000F8B505460E461746234B1B68234AA2FBFC -:1070F00003235B0A41F2883202FB03F31A46013B89 -:107100008AB36C6B14F0450FF8D014F4006FF5D10E -:107110006B6B13F0040F06D16B6B13F0010F05D0EE -:107120000120A86321E00420A8631EE02846FFF7A1 -:107130005FFDB04201D0012017E0C523AB63002101 -:107140002846FFF758FD034610F4604008D013F4BA -:10715000804F0BD113F4004F0BD04FF4805004E05C -:107160001B0C3B8001E04FF00040F8BD4FF4005095 -:10717000FBE74FF48030F8E758000020D34D621051 -:1071800070B586B004460D4600230193032602968F -:107190004022039204934FF48063059301A9FFF703 -:1071A00017FD2A4631462046FFF79AFF06B070BD0C -:1071B0000146164B1B68164AA2FB03235B0A41F2E9 -:1071C000883202FB03F31A46013BE2B14A6B12F02C -:1071D000450FF8D012F4006FF5D14B6B13F0040F8C -:1071E0000BD14B6B13F001030AD1486B10F0400038 -:1071F0000BD040228A63184670470420886370478A -:107200000120886370474FF000407047580000200D -:10721000D34D621010B586B004464FF4D573019378 -:107220000823029340230393002304934FF48063C5 -:10723000059301A9FFF7CCFC2046FFF7B9FF06B084 -:1072400010BD000070B582B00446002301930068B1 -:10725000FFF7E6FC054610B1284602B070BD206875 -:10726000FFF7D8FF38B90123A364A36C012B0BD01F -:107270002E46284614E00023A3642068FFF7D0FCC4 -:107280000028F2D00546E7E700212068FFF730FE2E -:107290000028EDD04FF08055DEE7019B01330193CC -:1072A000019A4FF6FE739A4213D896B900212068CE -:1072B000FFF71EFEE0B912492068FFF7F7FE064609 -:1072C000C0B900212068FFF796FCC30FE5D01E4629 -:1072D000E3E7019A4FF6FE739A420ED810F080430E -:1072E00002D001236364B7E7002262641D46B3E75E -:1072F0000546B1E74FF08055AEE74FF08075ABE73C -:10730000000010C1F0B589B004460F46FFF76AF9D6 -:10731000064600230093019308212068FFF73EFDF5 -:10732000054610B1284609B0F0BD216D090420685A -:10733000FFF7DEFD05460028F4D14FF0FF3302933E -:107340000823039330230493022305930023069319 -:107350000123079302A92068FFF750FC2068FFF77C -:10736000F7FD054658B1DDE7FFF722FC4DF8250093 -:107370000135FFF737F9831BB3F1FF3F3FD020689A -:10738000436B13F02A0F07D1436B13F4001FEBD1AB -:10739000436B13F4005FECD1436B13F0080F25D15E -:1073A000436B13F0020F24D1456B15F0200523D158 -:1073B00040F23A538363019A130203F47F0343EAD2 -:1073C0000263110A01F47F410B4343EA12633B60FD -:1073D000009A130203F47F0343EA0263110A01F4E3 -:1073E0007F410B4343EA12637B609BE7082585637B -:1073F00098E70225856395E72025856392E74FF09E -:1074000000458FE710B582B004460021009101913C -:107410000068FFF7F0FB10F0007F13D169462046AB -:10742000FFF770FF80B9019B13F4802F0ED0216D00 -:1074300009042068FFF75CFD30B902212068FFF7DE -:107440006FFD01E04FF4006002B010BD4FF08060AE -:10745000FAE710B582B0044600210091019100685E -:10746000FFF7C9FB10F0007F13D169462046FFF7F4 -:1074700049FF80B9019B13F4803F0ED0216D0904B0 -:107480002068FFF735FD30B900212068FFF748FD7F -:1074900001E04FF4006002B010BD4FF08060FAE7E9 -:1074A00070B581B104460E46016D09040068FFF70E -:1074B00067FD054608B1284670BD00212068FFF72A -:1074C0009AFB3060F7E74FF00065F4E72DE9F04FE5 -:1074D00087B005460C4616469B46DDF840A0FFF7F0 -:1074E00081F8002C36D0814695F83470FFB2012F18 -:1074F00040F004810023AB6306EB0B03EA6D93427B -:107500002ED8032385F834302B680022DA626B6CA6 -:10751000012B00D076024FF0FF3300934FEA4B234C -:1075200001939023029302230393002304930123E6 -:10753000059369462868FFF761FBBBF1010F14D979 -:1075400002232B6331462868FFF758FCA0B9DDF809 -:10755000048038E0AB6B43F00063AB630127D2E0FB -:10756000AB6B43F00073AB63CDE001232B6331467B -:107570002868FFF72BFCE9E72B68654A9A63AB6B39 -:107580000343AB63012385F8343000232B63BAE057 -:107590002868FFF70DFB2070C0F307236370C0F36A -:1075A0000743A370000EE0700434A8F1040801360C -:1075B000072EEDD9FFF716F8A0EB090050450FD2C2 -:1075C000BAF1000F0CD02868466B16F4957615D1E9 -:1075D000436B13F4004FEDD0B8F1000FEAD0E7E7AA -:1075E0002B684B4A9A63AB6B43F00043AB630123B8 -:1075F00085F8343000232B63032784E0436B13F4B6 -:10760000807F05D0BBF1010F02D96B6C032B38D101 -:107610002B685A6B12F0080F44D15A6B12F0020F0C -:107620004CD15A6B12F0200F54D12868436B13F4DD -:10763000001F5BD0B8F1000F58D0FFF7B9FA2070E7 -:10764000C0F307236370C0F30743A370000EE0701C -:107650000434A8F10408FEF7C5FFA0EB090050456B -:1076600002D2BAF1000FE0D12B68294A9A63AB6BC2 -:1076700043F00043AB63012385F8343000232B63D0 -:1076800041E0FFF703FC03460028C1D02A682049E7 -:107690009163AA6B1343AB63012385F83430002355 -:1076A0002B6330E01A4A9A63AB6B43F00803AB6379 -:1076B000012385F8343000232B6324E0144A9A63B5 -:1076C000AB6B43F00203AB63012385F83430002336 -:1076D0002B6318E00E4A9A63AB6B43F02003AB6355 -:1076E000012385F8343000232B630CE040F23A5339 -:1076F0008363012385F83430002704E0AB6B43F04B -:107700000053AB630127384607B0BDE8F08F00BFD8 -:10771000FF0540002DE9F04F8BB005460C4616469C -:107720009B46DDF850A0FEF75DFF002C37D0804669 -:1077300095F83470FFB2012F40F0E1800023AB6375 -:1077400006EB0B03EA6D93422FD8032385F8343000 -:107750002B680022DA626B6C012B00D076024FF0AE -:10776000FF3304934FEA4B230593902306930023A2 -:10777000079308930123099304A92868FFF73EFAA9 -:10778000BBF1010F16D920232B6331462868FFF780 -:1077900065FB0190019BABB9DDF8149040E0AB6B49 -:1077A00043F00063AB630127AEE0AB6B43F00073C3 -:1077B000AB63A9E010232B6331462868FFF736FB43 -:1077C0000190E7E72B68524A9A63AB6B019A134327 -:1077D000AB63012385F8343000232B6394E02378D6 -:1077E0000393627843EA02230393A27843EA0243B5 -:1077F0000393E27843EA026303930434A9F1040992 -:1078000003A92868FFF7D7F90136072EE7D9FEF755 -:10781000E9FEA0EB080050450FD2BAF1000F0CD0E2 -:107820002868466B16F48D7615D1436B13F4804FA0 -:10783000EDD0B9F1000FEAD0E7E72B68344A9A633C -:10784000AB6B019A1343AB63012385F834300023FB -:107850002B63032758E0436B13F4807F05D0BBF103 -:10786000010F02D96B6C032B18D12B685A6B12F0E5 -:10787000080F24D15A6B12F0020F2CD15A6B12F060 -:10788000100F34D0224A9A63AB6B43F01003AB6302 -:10789000012385F8343000232B6335E0FFF7F6FA37 -:1078A00003460028E1D02A6819499163AA6B134363 -:1078B000AB63012385F8343000232B6324E0144AA2 -:1078C0009A63AB6B43F00803AB63012385F8343054 -:1078D00000232B6318E00E4A9A63AB6B43F002035C -:1078E000AB63012385F8343000232B630CE040F2B6 -:1078F0003A529A63012385F83430002704E0AB6BD9 -:1079000043F00053AB63012738460BB0BDE8F08F5E -:10791000FF0540000346426E920F0A70426EC2F3AA -:1079200083624A7090F8672002F003028A7090F830 -:107930006620CA7090F865200A7190F864204A7138 -:10794000826E120DCA80B0F86A2002F00F020A722D -:10795000826EC2F3C0324A72826EC2F380328A7281 -:10796000826EC2F34032CA72826EC2F300320A7370 -:1079700000224A73426C002A40F08680806E40F6F6 -:10798000FC7202EA8002D86E42EA90720A61DA6EF4 -:10799000C2F3C2620A7593F86F2002F007024A75BB -:1079A000DA6EC2F342528A75DA6EC2F38242CA7547 -:1079B000DA6EC2F3C2320A760A6901325A65087E6B -:1079C00000F00700023082405A6591F808C00CF0C0 -:1079D0000F0C012000FA0CF09865400A00FB02F23F -:1079E000DA654FF400721A66DA6EC2F380324A76B4 -:1079F000DA6EC2F3C6128A76DA6E02F07F02CA76B7 -:107A00001A6FD20F0A771A6FC2F341724A771A6F50 -:107A1000C2F382628A771A6FC2F38352CA771A6FEF -:107A2000C2F3405281F82020002081F82100B3F8F1 -:107A3000722002F0010281F822201A6FC2F3C032D4 -:107A400081F823201A6FC2F3803281F824201A6F44 -:107A5000C2F3403281F825201A6FC2F3003281F858 -:107A600026201A6FC2F3812281F827201A6FC2F3F1 -:107A7000012281F828201B6FC3F3460381F82930C7 -:107A8000012381F82A307047012A11D1826E120435 -:107A900002F47C12B0F86E0002430A610A690132F6 -:107AA00092025A65DA654FF400729A651A669BE78E -:107AB000026805499163826B42F080528263012023 -:107AC00083F83400704700BFFF05400070B590B0E8 -:107AD00004460123ADF812300068FFF775F800285E -:107AE0006CD0636C032B45D1636C032B5DD1636C4D -:107AF000032B1DD0BDF81210216509042068FFF783 -:107B00009AFA054600285BD100212068FFF773F838 -:107B1000606604212068FFF76EF8A06608212068DF -:107B2000FFF769F8E0660C212068FFF764F820672A -:107B300004212068FFF75FF8000DE06405A92046E6 -:107B4000FFF7E8FE00283ED1226D120400232068D2 -:107B5000FFF7B6F9054698BB234653F8106B93E838 -:107B600007008DE80700043494E80E003046FFF764 -:107B700005F825E02068FFF749FA054600BB00211B -:107B80002068FFF738F8606704212068FFF733F8B2 -:107B9000A06708212068FFF72EF8E0670C21206815 -:107BA000FFF729F8C4F880009EE70DF11201206864 -:107BB000FFF7E6FA0546002899D001E04FF080650E -:107BC000284610B070BD4FF08055F9E730B58BB046 -:107BD00004460023049305930693079308937623A2 -:107BE00009930AAB13E907008DE8070004AB0ECB3D -:107BF0002068FEF7C3FF18B1012528460BB030BD41 -:107C000005462268536823F4807353602068FEF7AA -:107C1000D7FF2268536843F4807353600220FEF755 -:107C2000E7FC2046FFF70EFB30B1012584F8345005 -:107C3000A36B0343A363E0E72046FFF747FF30B1A0 -:107C4000012584F83450A36B0343A363D5E74FF4B5 -:107C500000712068FFF7A2F80028CED023680449FD -:107C60009963A36B0343A363012584F83450C4E7ED -:107C7000FF054000A8B110B5044690F8343063B158 -:107C8000032384F834302046FFF7A0FF58B9A063DF -:107C90002063012384F8343010BD0377FCF78AFF9A -:107CA000EEE7012070470120F6E7436C0B60836C20 -:107CB0004B60C36C8B60036DCB60436D0B61836D58 -:107CC0004B61C36D8B61036ECB6100207047000078 -:107CD00030B58BB004460D46032380F83430436C36 -:107CE000032B1CD0B1F5805F08D0B1F5006F0AD02E -:107CF00079B1836B43F00063836314E0836B43F0DB -:107D0000805383630FE0FFF77DFBA36B0343A36303 -:107D100009E0FFF79EFBA36B0343A36303E0836BC0 -:107D200043F080538363A36BC3B12368174A9A63FC -:107D3000012584F834504FF400712068FFF72EF8C5 -:107D400030B1236811499963A36B0343A3630125F1 -:107D5000012384F8343028460BB030BD63680493A7 -:107D6000A3680593E3680693079563690893A3697D -:107D700009930AAB13E907008DE8070004AB0ECBAB -:107D80002068FEF7FBFE0025D5E700BFFF05400099 -:107D900010B582B004460023019301A9FFF780FBD0 -:107DA00010B1A36B0343A3630198C0F3432002B057 -:107DB00010BD00000346026812F0400F36D110B427 -:107DC00002681D4810400A684C682243CC68224370 -:107DD0000C6922434C6922438C692243CC692243BB -:107DE0000C6A2243104318605868144A024088689D -:107DF000B1F816C040EA0C0002435A608A68B2F536 -:107E0000006F03D25A6842F480525A600A6AB2F58F -:107E1000005F07D00020DA6922F40062DA615DF8C1 -:107E2000044B70478A8C1A610020F4E70120DA695C -:107E300022F40062DA6170474000FFFFFBF0FFFFB1 -:107E400070B4046A036A23F001030362426885691F -:107E5000124B2B400D681D4324F002048B68234312 -:107E60000F4C104EB04218BFA0420CBF012400249A -:107E700005D123F00803CE681E4326F004032CB17D -:107E800022F440724C6914438A692243426085613E -:107E90004A684263036270BC704700BF8CFFFEFFFC -:107EA000000001400004014070B4036A026A22F439 -:107EB000807202624268C569144C2C400E682643E9 -:107EC00023F400738C6843EA0423114C114DA8423B -:107ED00018BFA0420CBF0124002406D123F4006384 -:107EE000CD6843EA052323F480633CB122F4405279 -:107EF0004C6942EA04128C6942EA04124260C6618B -:107F00004A68C263036270BC704700BF8CFFFEFF0B -:107F1000000001400004014070B4036A026A22F4C8 -:107F2000805202624468C5690D4A2A400D6842EADF -:107F3000052223F400538D6843EA0533094E0A4DA8 -:107F4000A84218BFB04204D124F480444D6944EAE9 -:107F500085144460C2614A680264036270BC704761 -:107F6000FF8CFFFE000001400004014070B4036A72 -:107F7000026A22F4803202624468426D0D4D15405F -:107F80000A682A4323F400338D6843EA05430A4E06 -:107F90000A4DA84218BFB04204D124F480344D6980 -:107FA00044EA0524446042654A688265036270BC05 -:107FB000704700BF8FFFFEFF00000140000401403A -:107FC00070B4036A026A22F4801202624468456D4A -:107FD0000D4A2A400D6842EA052223F400138D68F9 -:107FE00043EA0553094E0A4DA84218BFB04204D1D6 -:107FF00024F480244D6944EA8524446042654A683B -:10800000C265036270BC7047FF8FFFFE0000014035 -:108010000004014010B4036A046A24F001040462FD -:10802000846924F0F00C4CEA021223F00A030B439B -:10803000826103625DF8044B704710B4036A046AFE -:1080400024F010040462846924F4704C4CEA023277 -:1080500023F0A00343EA0113826103625DF8044B3D -:108060007047836823F070030B4343F0070383607A -:1080700070470368196A41F21112114208D1196A56 -:1080800040F24442114203D11A6822F001021A6000 -:10809000012380F83D3000207047000090F83D300B -:1080A000DBB2012B3AD1022380F83D300268D3685D -:1080B00043F00103D36003681A4AB3F1804F18BF3D -:1080C00093421DD0A2F57C42934219D002F5806202 -:1080D000934215D002F58062934211D002F57842A6 -:1080E00093420DD002F57052934209D0A2F594321A -:1080F000934205D01A6842F001021A6000207047CE -:108100009968094A0A40062A18BFB2F5803F07D08D -:108110001A6842F001021A6000207047012070477F -:108120000020704700000140070001000268D3688A -:1081300023F00103D3600368196A41F2111211425E -:1081400008D1196A40F24442114203D11A6822F060 -:1081500001021A60012380F83D300020704770470B -:108160007047704770477047704770B504460368A2 -:10817000DE681D6915F0020F10D016F0020F0DD049 -:108180006FF002021A610123037703689B6913F001 -:10819000030F64D0FFF7E6FF0023237715F0040FE9 -:1081A00012D016F0040F0FD023686FF004021A618A -:1081B0000223237723689B6913F4407F55D0204620 -:1081C000FFF7D0FF0023237715F0080F12D016F029 -:1081D000080F0FD023686FF008021A610423237779 -:1081E0002368DB6913F0030F46D02046FFF7BAFF80 -:1081F0000023237715F0100F12D016F0100F0FD0B8 -:1082000023686FF010021A61082323772368DB6963 -:1082100013F4407F37D02046FFF7A4FF00232377D5 -:1082200015F0010F02D016F0010F33D115F4025FE3 -:1082300002D016F0800F35D115F4807F02D016F0F1 -:10824000800F37D115F0400F02D016F0400F39D112 -:1082500015F0200F02D016F0200F3BD170BDFFF7B4 -:1082600080FF2046FFF77FFF96E72046FFF779FF64 -:108270002046FFF778FFA5E72046FFF772FF20466C -:10828000FFF771FFB4E72046FFF76BFF2046FFF7CB -:108290006AFFC3E723686FF001021A612046FFF707 -:1082A0005FFFC3E723686FF402521A61204600F0B3 -:1082B000CEFBC1E723686FF480721A61204600F09C -:1082C000C7FBBFE723686FF040021A612046FFF743 -:1082D0004BFFBDE723686FF020021A61204600F0D3 -:1082E000B5FBBBE730B503683F4A904214BF4FF07F -:1082F000000E4FF0010EB0F1804F14BF72464EF0E9 -:108300000102AAB9394CA04214BF00240124384DFF -:10831000A8420DD064B904F1804404F58234A0422F -:1083200014BF0024012405F50065A84200D01CB14B -:1083300023F070034C682343002A33D12B4A904228 -:1083400014BF002201222A4CA0422BD052BB02F1C2 -:10835000804202F58232904214BF0022012204F5CD -:108360000064A0421ED0EAB9224A904214BF002203 -:10837000012204F59A34A04214D09AB91E4A9042C0 -:1083800014BF0022012204F50064A0420AD04AB9B9 -:108390001A4A904214BF00220122A4F59634A0424A -:1083A00000D022B123F4407CCB6843EA0C0323F0D5 -:1083B00080034A69134303608A68C2620A68826262 -:1083C0000F4A904214BF73464EF001030BB10B6984 -:1083D000036301234361036913F0010F03D00369B1 -:1083E00023F00103036130BD00000140000800409C -:1083F00000040040004401400018004000200040FC -:108400000004014060B310B5044690F83D3013B34A -:10841000022384F83D30214651F8040BFFF762FF38 -:10842000012384F8483084F83E3084F83F3084F8E3 -:10843000403084F8413084F8423084F8433084F886 -:10844000443084F8453084F8463084F8473084F866 -:108450003D30002010BD80F83C30FCF707FCD7E72A -:108460000120704760B310B5044690F83D3013B357 -:10847000022384F83D30214651F8040BFFF732FF08 -:10848000012384F8483084F83E3084F83F3084F883 -:10849000403084F8413084F8423084F8433084F826 -:1084A000443084F8453084F8463084F8473084F806 -:1084B0003D30002010BD80F83C30FFF750FED7E77C -:1084C0000120704770B4036A026A22F0100202624F -:1084D00042688569144C2C400D6844EA052523F058 -:1084E00020038C6843EA0413104C114EB04218BFAD -:1084F000A0420CBF0124002406D123F08003CE68E3 -:1085000043EA061323F040033CB122F440624C6975 -:1085100042EA84028C6942EA8402426085614A68C8 -:108520008263036270BC7047FF8CFFFE0000014055 -:108530000004014038B590F83C30012B00F09580E4 -:1085400004460D46012380F83C30142A00F288804E -:10855000DFE802F00B8686861F868686348686864E -:10856000488686865D86868671000068FFF768FC0F -:108570002268936943F0080393612268936923F0AA -:10858000040393612268936929690B439361002076 -:1085900067E00068FFF796FF2268936943F4006381 -:1085A00093612268936923F48063936122689369DD -:1085B000296943EA01239361002052E00068FFF734 -:1085C00073FC2268D36943F00803D3612268D3693E -:1085D00023F00403D3612268D36929690B43D36173 -:1085E00000203EE00068FFF797FC2268D36943F45F -:1085F0000063D3612268D36923F48063D361226866 -:10860000D369296943EA0123D361002029E0006886 -:10861000FFF7ACFC2268536D43F0080353652268F2 -:10862000536D23F0040353652268536D29690B438E -:108630005365002015E00068FFF7C2FC2268536D07 -:1086400043F4006353652268536D23F480635365DC -:108650002268536D296943EA01235365002000E035 -:108660000120002384F83C3038BD0220FCE710B420 -:10867000846824F47F4C42EA03220A4342EA0C0253 -:1086800082605DF8044B704790F83C30012B76D047 -:1086900010B50446012380F83C30022380F83D30B9 -:1086A00002689068374B034093600B68602B4CD096 -:1086B00023D8402B54D011D8202B03D00AD80BB18B -:1086C000102B05D119462068FFF7CBFC002028E0CD -:1086D000012026E0302BF5D0012022E0502B0AD1DA -:1086E000CA6849682068FFF795FC50212068FFF7A9 -:1086F000B8FC002015E0012013E0B3F5805F3AD00C -:10870000B3F5005F14D0702B37D1CB684A68896805 -:108710002068FFF7ACFF2268936843F0770393600B -:108720000020012384F83D30002384F83C3010BD44 -:10873000CB684A6889682068FFF799FF22689368C8 -:1087400043F4804393600020EBE7CA6849682068DF -:10875000FFF773FC60212068FFF783FC0020E0E74F -:10876000CA6849682068FFF755FC40212068FFF778 -:1087700078FC0020D5E70020D3E70120D1E70220D4 -:10878000704700BF8800FEFF01F01F014FF0010C91 -:108790000CFA01FC036A23EA0C030362036A8A40B1 -:1087A000134303627047000010B5044610293CD8FB -:1087B000DFE801F0093B3B3B1F3B3B3B263B3B3BA0 -:1087C0002D3B3B3B340090F83E30DBB2013B18BF01 -:1087D0000123002B40F08980102974D8DFE801F0D4 -:1087E0002C73737363737373677373736B737373C4 -:1087F0006F0090F83F30DBB2013B18BF0123E8E780 -:1088000090F84030DBB2013B18BF0123E1E790F85C -:108810004130DBB2013B18BF0123DAE790F8423068 -:10882000DBB2013B18BF0123D3E790F84330DBB242 -:10883000013B18BF0123CCE7022384F83E3001221C -:108840002068FFF7A1FF23682A492B4A934218BFEB -:108850008B4203D15A6C42F400425A642368254A81 -:10886000B3F1804F18BF934231D0A2F57C429342BE -:108870002DD002F58062934229D002F580629342A6 -:1088800025D002F57842934221D002F570529342EE -:108890001DD0A2F59432934219D01A6842F0010219 -:1088A0001A60002022E0022384F83F30C7E7022349 -:1088B00084F84030C3E7022384F84130BFE7022345 -:1088C00084F84230BBE7022384F84330B7E7996865 -:1088D0000A4A0A40062A18BFB2F5803F07D01A6834 -:1088E00042F001021A60002000E0012010BD0020CB -:1088F000FCE700BF00000140000401400700010048 -:1089000038B504460D4600220068FFF73DFF236896 -:108910002449254A934218BF8B420DD1196A41F26E -:108920001112114208D1196A40F24442114203D196 -:108930005A6C22F400425A642368196A41F21112F7 -:10894000114208D1196A40F24442114203D11A6817 -:1089500022F001021A60102D1FD8DFE805F0091E71 -:108960001E1E0E1E1E1E121E1E1E161E1E1E1A006D -:10897000012384F83E30002038BD012384F83F30C5 -:10898000F9E7012384F84030F5E7012384F841300A -:10899000F1E7012384F84230EDE7012384F8433006 -:1089A000E9E700BF000001400004014090F83C20CE -:1089B000012A45D070B40346012280F83C200222EF -:1089C00080F83D200268506894681E4E1E4DAA42F1 -:1089D00018BFB24203D120F470004D68284320F044 -:1089E00070000D68284350601A681648B2F1804F35 -:1089F00018BF824217D0A0F57C40824213D000F508 -:108A0000806082420FD000F5806082420BD000F57A -:108A10007840824207D000F57050824203D0A0F522 -:108A20009430824204D124F080048968214391600B -:108A3000012283F83D20002083F83C0070BC704781 -:108A40000220704700000140000401407047704759 -:108A50007047000030B503683B4A904214BF4FF0A6 -:108A6000000E4FF0010EB0F1804F14BF72464EF071 -:108A70000102AAB9354CA04214BF00240124344D90 -:108A8000A8420DD064B904F1804404F58234A042B8 -:108A900014BF0024012405F50065A84200D01CB1D4 -:108AA00023F070034C682343002A33D1274A9042B5 -:108AB00014BF00220122264CA0422BD052BB02F14F -:108AC000804202F58232904214BF0022012204F556 -:108AD0000064A0421ED0EAB91E4A904214BF002290 -:108AE000012204F59A34A04214D09AB91A4A90424D -:108AF00014BF0022012204F50064A0420AD04AB942 -:108B0000164A904214BF00220122A4F59634A042D6 -:108B100000D022B123F4407CCB684CEA030303600D -:108B20008A68C2620A8882620D4A904214BF734604 -:108B30004EF001030BB10B690363436943F001037A -:108B40004361002030BD00BF00000140000800402C -:108B50000004004000440140001800400020004094 -:108B600000040140B2F5004F06D001EB5301B1FB08 -:108B7000F3F189B2C16070475A0802EB4102B2FBBF -:108B8000F3F34FF6F0721A40C3F342031343C3608A -:108B90007047000038B5036813F0010F62D1044636 -:108BA0000D460368314A1A404B68C9680B4329696E -:108BB0000B43A9690B431A430260AB68426822F475 -:108BC0004052134343606B69826822F4407213433E -:108BD0008360274B984216D0264B98421BD0264BD9 -:108BE00098421CD0254B98421DD0254B98421ED050 -:108BF000244B984220D0244B984222D0234B9842B9 -:108C000024D001202FE00320FDF762FD60B32B6824 -:108C10000BBB012027E00C20FDF75AFDF6E73020C2 -:108C2000FDF756FDF2E7C020FDF70EFEEEE74FF42C -:108C30004070FDF709FEE9E74FF44060FDF748FD9D -:108C4000E4E74FF44050FDF7FFFDDFE74FF440400D -:108C5000FDF7FAFDDAE7AA6901462046FFF782FF31 -:108C6000002000E0012038BD0120FCE7F369FFEFA0 -:108C7000001001400044004000480040004C00400B -:108C8000005000400014014000780040007C00408B -:108C9000034AD2F8883043F47003C2F88830704732 -:108CA00000ED00E008B501460122054801F01EFA7A -:108CB000044B187008B1012008BD0020FCE700BF7C -:108CC0005C1600208C02002008B50146012200201D -:108CD00001F00CFA034B187008B1012008BD002008 -:108CE000FCE700BF8C020020F8B504460D4616468E -:108CF000104901F0ECFE104B187008B1C0B2F8BD7D -:108D0000022221460D4801F021FA0B4B187008B1E0 -:108D1000C0B2F4E7094F0A4B32462946384601F003 -:108D20001AFC054C2070384601F069FD2070C0B275 -:108D3000E5E700BF140600208C0200202C0600206E -:108D40000C0600202DE9F04104460F4690461D46D2 -:108D5000434901F0BCFE434B1870E8B9012221469B -:108D6000414801F0F3F906463E4B187018BB2946FE -:108D70003D4801F059FD3B4B187058B36420F7F79C -:108D8000B1FF054622463949F7F79CFA2846F7F71E -:108D9000B1FF344B18780CE06420F7F7A3FF0546C9 -:108DA00022463349F7F78EFA2846F7F7A3FF2D4BF3 -:108DB0001878BDE8F0816420F7F794FF0546234654 -:108DC00032462C49F7F77EFA2846F7F793FF254BF2 -:108DD0001878EEE7284B42463946234801F0CFFA8F -:108DE0000646204B187008BB55B91F4BDA68234B59 -:108DF0001A603A705A787A709A78BA70DB78FB7099 -:108E0000194801F0FCFC0546164B1870D8B16420D7 -:108E1000F7F768FF064623462A461949F7F752FA3C -:108E20003046F7F767FF0F4B1878C2E76420F7F773 -:108E300059FF0546234632461249F7F743FA2846BA -:108E4000F7F758FFEFE76420F7F74CFF0546224697 -:108E50000D49F7F737FA2846F7F74CFFE3E700BF6D -:108E6000140600208C0200202C060020D8B3000835 -:108E70001CB3000840B30008100600208002002048 -:108E800090B3000868B30008B8B3000810B50446F2 -:108E90000C4901F01CFE0C4B187008B9C0B210BD93 -:108EA0000B222146094801F051F9074B187008B10F -:108EB000C0B2F4E7054801F0A2FC034B1870C0B241 -:108EC000EDE700BF140600208C0200202C060020D5 -:108ED00070B504461A4901F0FAFD1A4B1870A0B992 -:108EE000204601F016FE0546164B1870D8B96420CE -:108EF000F7F7F8FE054622461349F7F7E3F9284647 -:108F0000F7F7F8FE0F4B187870BD6420F7F7EAFE0C -:108F1000054622460D49F7F7D5F92846F7F7EAFE48 -:108F2000084B1878F0E76420F7F7DCFE0646234686 -:108F30002A460749F7F7C6F93046F7F7DBFEE1E7BF -:108F4000140600208C02002020B4000800B40008A1 -:108F500044B40008F8B504460D461646104901F021 -:108F6000B6FD104B187008B1C0B2F8BD32222146D0 -:108F70000D4801F0EBF80B4B187008B1C0B2F4E7E4 -:108F8000094F0A4B32462946384601F0E4FA054CAF -:108F90002070384601F033FC2070C0B2E5E700BF16 -:108FA000140600208C0200202C0600200C06002055 -:108FB00008B5044B03EB8002526852680344187AE8 -:108FC000904708BDB826002008B5084B1B5C53B974 -:108FD000064B01221A5403EB8002526812680344C4 -:108FE000187A904708BD0020FCE700BFB826002093 -:108FF00038B5044C04EB80056D68AD680444207AF4 -:10900000A84738BDB826002038B5044C04EB8005CD -:109010006D68ED680444207AA84738BDB826002062 -:1090200010B5044B03EB8004646824690344187A88 -:10903000A04710BDB82600204278007840EA022000 -:109040007047C378827842EA0322437843EA0223D6 -:10905000007840EA032070470170090A41707047A8 -:109060000170C1F307234370C1F307438370090EF6 -:10907000C1707047944632B10A78013102700130F4 -:10908000BCF1010CF8D1704701700130013AFBD1FD -:10909000704784469CF800000CF1010C0B780131FC -:1090A000C01A013A01D00028F4D07047034600E00E -:1090B0000133187808B18842FAD1704710B44FF0E4 -:1090C000000C634602E04FF0010C0133012B15D870 -:1090D0001A01184CA258002AF5D00468A242F4D113 -:1090E000144A02EB0312546882689442EDD1114A8B -:1090F00002EB0312946842699442E6D1022B0BD032 -:10910000B1B90C4A02EB03139B89B3F5807F0DD0F4 -:1091100000205DF8044B7047022914BF63464CF0F1 -:1091200001030BB10020F4E71220F2E71020F0E772 -:109130001020EEE790260020002000E001300128FA -:1091400004D80301034AD358002BF7D1023818BFC3 -:10915000012070479026002070B4002300E0013306 -:10916000012B13D81A01234CA45802689442F6D15B -:10917000204A02EB0312546882689442EFD11D4AE0 -:1091800002EB0312946842699442E8D1022B08D0A2 -:10919000F9B1184A02EB031292894ABB4FF480726C -:1091A0001DE00023012B05D81A01124CA2580AB168 -:1091B0000133F7E7022B19D00E4D1C0105EB03120A -:1091C00006682E5184685460406990600020908148 -:1091D000DEE7084A02EB03129289013292B2054996 -:1091E00001EB03118A81581C70BC70470020FBE71B -:1091F0000020F9E7902600200138012815D80D4BF2 -:1092000003EB00139B89B3F5807F03D043B1013B8F -:109210009BB200E00023074A02EB0012938133B9AE -:1092200003010020034AD0507047022070470020FD -:10923000704700BF90260020002303E05DF8044B38 -:1092400070470133012B11D81A0109498A5882420B -:10925000F7D110B41A0100248C500133012BEDD842 -:109260001A0103498A588242F7D1F3E7704700BFD9 -:109270009026002002398369023B8B4204D943893E -:10928000C06A01FB03007047002070470268C36A90 -:1092900004339089B1FBF0F15289B1FBF2F101E0A6 -:1092A000091A0833186818B18142F9D2586808447D -:1092B000704770B506460D4601F11A00FFF7BCFE77 -:1092C0003378032B00D070BD044605F11400FFF77E -:1092D000B3FE44EA0040F6E770B506460C46154674 -:1092E00091B204F11A00FFF7B7FE3378032B00D0D8 -:1092F00070BD290C04F11400FFF7AEFEF8E738B595 -:1093000000234B72C36973B305460C460022134613 -:1093100006E0BCF1090F0FD0A1184B720132634671 -:109320000A2B0ED803F1010C296ACB5C202BF6D056 -:10933000052BEED1E523ECE7A1182E20487201326F -:10934000EAE72244002353722B6ADB7A2372286AED -:109350001C30FFF776FE2060286A1630FFF771FE9A -:10936000E080000CA08038BD2DE9F84F81468A4688 -:10937000D1F8008000F1240B0B2220215846FFF782 -:1093800083FE00252B46082729E0013618F8063011 -:109390002F2BFAD05C2BF8D04644CAF80060002D81 -:1093A00044D099F82430E52B35D0202C37D804232D -:1093B00089F82F30002035E014F0800F27D12146A6 -:1093C0001B48FFF773FE78BBA4F16103DBB2192BD6 -:1093D00001D8203CE4B20BF80540013533465E1C51 -:1093E00018F80340202CD7D95C2C18BF2F2CCDD0D7 -:1093F0002E2C18BFAF42DFD82E3C18BF01240B2FF4 -:1094000008BF44F0010464B908250B27E6E7803C57 -:10941000084B1C5DD3E7052389F82430C5E70023FA -:10942000C6E70620BDE8F88F0620FBE70620F9E72F -:1094300064B4000868B600080146006808B1024636 -:1094400003E04FF0FF30704701321378202B01D931 -:109450003A2BF9D13A2B01D000207047034613F87C -:10946000010B3038092898BF9A4203D128B901323C -:109470000A6070474FF0FF3070474FF0FF30704781 -:1094800038B50D46044698B103689BB11A78A2B16D -:109490008188DA88914203D0092000242C6038BDED -:1094A0005878FFF785FD10F0010009D12468F5E731 -:1094B0000920F3E71C460920F0E709200024EDE726 -:1094C00009200024EAE72DE9F041C57815B92846BE -:1094D000BDE8F0810446076B00F1340801233A46E9 -:1094E00041464078FFF790FD0546A0B90023E370A0 -:1094F000636AFB1AE2699342E9D2A67808E0E3695D -:109500001F4401233A4641466078FFF77DFD013E46 -:10951000012EF4D8DBE70125D9E770B5036B8B4248 -:1095200002D10026304670BD04460D46FFF7CBFF42 -:1095300006460028F6D101232A4604F1340160785A -:10954000FFF756FD10B101264FF0FF352563E9E71F -:1095500038B504460023C3704FF0FF330363FFF7B1 -:10956000DCFF30BB054604F23220FFF765FD4AF60A -:10957000552398421FD194F83430E92B07D0636B00 -:1095800003F0FF130D4A934201D0022514E004F1C9 -:109590006A00FFF756FD20F07F40094B98420BD040 -:1095A00004F18600FFF74DFD064B984204D00225DA -:1095B00002E0042500E00325284638BDEB009000BA -:1095C00046415400464154332DE9F04F87B00D46D3 -:1095D000164600230B60FFF72FFF071EC0F26781BE -:1095E000BE4B53F82740002C00F066812C6006F03B -:1095F000FE06237873B16078FFF7DAFC10F00105FE -:1096000008D1002E00F0548110F0040F00F05081BA -:109610000A254DE100232370F8B26070FFF7D4FCF7 -:1096200010F0010F40F04A811EB110F0040F40F01D -:10963000478104F10C0202216078FFF7F1FC054636 -:10964000002840F03F81A289A2F500739BB2B3F5D8 -:10965000606F00F23981531E1A4201D0012527E1C3 -:1096600000212046FFF774FF022800F088800026C2 -:10967000042800F02B81012800F22A8104F13F0028 -:10968000FFF7DAFCB4F80C80404540F0238104F188 -:109690004A00FFF7D1FC074620B904F15800FFF754 -:1096A000D0FC0746E76194F84420A270531EDBB259 -:1096B000012B00F2118107FB02F3009394F8419013 -:1096C000A4F80A90B9F1000F00F0108109F1FF33FE -:1096D00019EA030F40F00C8104F14500FFF7ACFCE0 -:1096E000824620814FEA581BB0FBFBF30BFB1303B0 -:1096F0009BB2002B40F0FE8004F14700FFF79CFC7A -:10970000019020B904F15400FFF79BFC019004F193 -:109710004200FFF791FC0146002800F0ED80009B1D -:10972000C318BAFBFBFB5B44019A9A42C0F0E68087 -:10973000D21AB2FBF9F04A45C0F0E2804FF6F5725A -:10974000904234D840F6F57290426AD94FF0020B3D -:109750002FE0002006AB03EB860343F8100C013624 -:10976000032E0ED804F13400330103F5DF731844DF -:109770000379002BEDD00830FFF763FCEAE7002601 -:10978000EEE700270AE031462046FFF7E1FE012818 -:109790007FF66EAF0137032F3FF66AAF06AB03EBE0 -:1097A000870353F8106C002EEDD10320F2E74FF041 -:1097B000030B00F10209C4F8189026628A1962624C -:1097C0003344E362BBF1030F2ED0BAF1000F00F077 -:1097D0009D80009B1A44A262BBF1020F35D009EBB9 -:1097E000490209F0010303EB52034344013BB3FB7D -:1097F000F8F3BB4200F28C804FF0FF3363612361CA -:1098000080232371BBF1030F22D084F800B0344AC7 -:10981000138801339BB21380E3802046FFF70CFDD1 -:1098200046E04FF0010BC4E704F15E00FFF704FCD3 -:10983000002867D1BAF1000F66D104F16000FFF78C -:1098400000FCA0624FEA8903CFE74FEA4903CCE767 -:1098500004F16400FFF7F0FB0128D6D1711C20460B -:10986000FFF75BFE0028D0D10023237104F23220E1 -:10987000FFF7E2FB4AF655239842C6D104F13400C3 -:10988000FFF7DFFB174B9842BFD104F50670FFF7D7 -:10989000D8FB154B9842B8D104F50770FFF7D1FB00 -:1098A000606104F50870FFF7CCFB2061ADE70B2584 -:1098B000284607B0BDE8F08F0C25F9E70325F7E748 -:1098C0000A25F5E70125F3E70125F1E70125EFE793 -:1098D0000D25EDE70D25EBE70D25E9E7B426002082 -:1098E000B026002052526141727241610D25DFE7BE -:1098F0000D25DDE70D25DBE70D25D9E70D25D7E79C -:109900000D25D5E70D25D3E70D25D1E70D25CFE7AB -:109910000D25CDE72DE9F047012940F28E80044660 -:109920000D46174683698B4240F28B800378022BE9 -:1099300049D0032B60D0012B40F0858001EB51080A -:10994000416A8389B8FBF3F31944FFF7E6FD064645 -:10995000002873D104F1340A08F10109A389B8FB86 -:10996000F3F203FB128815F0010522D01AF8083033 -:1099700003F00F0343EA0713DBB20AF808300123B0 -:10998000E370616AA389B9FBF3F319442046FFF73A -:10999000C4FD0646002851D1A389B9FBF3F203FBAD -:1099A000129945B1C7F307130AF809300123E37090 -:1099B00044E0FBB2E1E71AF80930C7F3032223F0D1 -:1099C0000F031343F0E7416A83895B08B5FBF3F3A8 -:1099D0001944FFF7A2FD064680BB04F134006D0078 -:1099E000A389B5FBF3F203FB1255B9B22844FFF784 -:1099F00033FB0123E37021E0416A83899B08B5FBB7 -:109A0000F3F31944FFF789FD0646B8B927F070470C -:109A100004F13403AD00A289B5FBF2F102FB11554C -:109A20001D442846FFF70DFB00F0704139432846DE -:109A3000FFF716FB0123E37000E002263046BDE885 -:109A4000F0870226FAE70226F8E7F8B5056801294B -:109A50006AD90C46AB698B4268D92B78022B35D07A -:109A6000032B49D0012B63D101EB5106696AAB8905 -:109A7000B6FBF3F319442846FFF74FFD10B14FF042 -:109A8000FF3052E0771CAB89B6FBF3F203FB1266A2 -:109A90002E4496F83460696AB7FBF3F319442846FC -:109AA000FFF73BFD002845D1AB89B7FBF3F203FB81 -:109AB00012772F4497F8343046EA032014F0010F50 -:109AC00001D0000931E0C0F30B002EE0696AAB89D8 -:109AD0005B08B4FBF3F319442846FFF71EFD60BB97 -:109AE00005F134006400AB89B4FBF3F203FB1244CC -:109AF0002044FFF7A1FA18E0696AAB899B08B4FB20 -:109B0000F3F319442846FFF708FDC8B905F13400FE -:109B1000A400AB89B4FBF3F203FB12442044FFF72B -:109B200090FA20F0704000E00120F8BD0120FCE731 -:109B30000120FAE74FF0FF30F7E74FF0FF30F4E78E -:109B40004FF0FF30F1E72DE9F041D0F80080B1F59A -:109B5000001F49D207460E4611F01F0F47D1416141 -:109B600084681CBB98F80030022B01D9D8F8284033 -:109B7000E4B9B8F80830B3EB561F3AD9D8F8283012 -:109B8000FB61BC61FB69E3B3B8F80C20B6FBF2F2F1 -:109B90001344FB6108F13403B8F80C20B6FBF2F172 -:109BA00002FB11610B443B6200201EE0B8F80A5032 -:109BB000B8F80C3003FB05F5AE420FD3214638460A -:109BC000FFF743FF0446B0F1FF3F14D0012814D93A -:109BD000D8F81830834212D9761BEDE7214640466B -:109BE000FFF748FBF861CCE70220BDE8F0810220D6 -:109BF000FBE70220F9E70120F7E70220F5E7022062 -:109C0000F3E70220F1E72DE9F041054606680F462B -:109C100051B9D6F81080B8F1000F12D0B36943459E -:109C200011D84FF001080EE0FFF70FFF034601289F -:109C30004CD9B0F1FF3F4ED0B26982424BD8B84602 -:109C400001E04FF0010844460CE021462846FFF7AA -:109C5000FCFE034678B1B0F1FF3F18BF01283AD0AF -:109C6000444537D00134B369A342EED8B8F1010FAF -:109C70002ED90224E9E74FF0FF3221463046FFF7A4 -:109C800049FE0246B0FA80F04009002F08BF0020CC -:109C900070B9A2B934617269B369023B9A4201D8C2 -:109CA000013A7261337943F001033371234612E0C4 -:109CB000224639463046FFF72DFE0246E9E7012AE3 -:109CC00001D0012307E04FF0FF3304E0012302E05D -:109CD000002300E000231846BDE8F081F8B50C46EB -:109CE000056801292ED906461146AB69A3422BD936 -:109CF0004AB14FF0FF322846FFF70CFE074610B17D -:109D000023E0A24221D9274621463046FFF79DFE97 -:109D10000446E0B101281CD0B0F1FF3F1BD0002267 -:109D200039462846FFF7F6FD074670B96B69AA6900 -:109D3000911E8B42E5D201336B612B7943F0010315 -:109D40002B71DEE7022700E002273846F8BD002726 -:109D5000FBE70227F9E70127F7E738B5044605686E -:109D6000C1692846FFF7D9FB20B9236AE5221A709A -:109D70000123EB7038BD2DE9F84306684469C369D7 -:109D8000002B74D005460F462034B4F5001F70D266 -:109D9000B189B4FBF1F201FB12423AB90133C3615C -:109DA0008169A1B93389B3EB541F0CD96C6106F1F9 -:109DB0003403B289B4FBF2F102FB114423442B6259 -:109DC0000020BDE8F8830023C3610420F9E7B289CD -:109DD000B4FBF2F27389013B12EA0308E6D1FFF704 -:109DE00034FE8146012846D9B0F1FF3F45D0B36922 -:109DF000834234D88FB1A9692846FFF704FF814612 -:109E000000283CD001283CD0B0F1FF3F3BD0304689 -:109E1000FFF759FB28B10120D3E70023EB610420B1 -:109E2000CFE7B289002106F13400FFF72DF949464A -:109E30003046FFF71FFA3063738998450BD2012330 -:109E4000F3703046FFF73FFBF8B908F10108336BB8 -:109E500001333363F0E7336BA3EB08033363C5F8D7 -:109E6000189049463046FFF705FAE8619EE704205E -:109E7000A7E70420A5E70220A3E70120A1E7072028 -:109E80009FE702209DE701209BE7012099E770B53D -:109E9000044606680021FFF756FE054640B12846F5 -:109EA00070BD00212046FFF766FF05460028F6D169 -:109EB000E1693046FFF731FB05460028EFD1206A03 -:109EC00003787BB1C37A03F03F03A371C37A13F025 -:109ED000080FE6D10B2204F12401FFF7DAF800287D -:109EE000DFD1DCE70425DAE730B583B00446019121 -:109EF000056801E001330193019B1A782F2AF9D0FC -:109F00005C2AF7D00022A2601B781F2B21D901A95F -:109F10002046FFF729FA034618BB2046FFF7B7FF94 -:109F200094F82F200346F8B912F0040F19D1A37941 -:109F300013F0100F1FD005F134016369AA89B3FB38 -:109F4000F2F002FB103319442846FFF7B2F9A06083 -:109F5000DDE7802384F82F3011462046FFF7F3FD1C -:109F60000346184603B030BD0428FAD112F0040F9E -:109F7000F7D10523F5E70523F3E7F8B504460E46C8 -:109F800007680021FFF7DFFD0246B8B9002506E0AB -:109F9000002501212046FFF7EEFE024670B9E16977 -:109FA0003846FFF7BAFA024640B9236A1B78002BFD -:109FB00018BFE52BECD10135B542EAD1042A01D016 -:109FC0001046F8BD0722FBE770B50446066801217C -:109FD000FFF7D3FF054608B1284670BDE16930465A -:109FE000FFF79BFA05460028F6D120220021206ABF -:109FF000FFF74AF80B2204F12401206AFFF73AF830 -:10A000000123F370E8E7F8B504460E460568042717 -:10A0100005E000212046FFF7AEFE0746E8B9E169FA -:10A02000D9B12846FFF779FA0746B0B9236A1A78FA -:10A0300092B1DB7A03F03F03A371E52A18BF2E2A01 -:10A04000E7D00F2BE5D023F02003082B14BF00230B -:10A050000123B342DDD100E004270FB10023E36107 -:10A060003846F8BD70B50446FFF72DFA054648B9E5 -:10A070002378032B08D0002211466078FEF7D0FF2A -:10A0800000B10125284670BD2379012BF3D104F1DD -:10A090003406A28900213046FEF7F6FF4AF6552124 -:10A0A00004F23220FEF7D8FF0E493046FEF7D8FF03 -:10A0B0000D4904F50670FEF7D3FF616904F50770DA -:10A0C000FEF7CEFF216904F50870FEF7C9FF226A8A -:10A0D00001322263012331466078FEF795FF0023A9 -:10A0E0002371C8E7525261417272416170B584B008 -:10A0F000019000911646039103A8FFF79DF9041EF5 -:10A1000020DB114B53F8245025B12846FFF794F873 -:10A1100000232B70019B0BB100221A70019B0A4A8D -:10A1200042F82430721E18BF0122002B08BF42F0F3 -:10A13000010212B1002004B070BD01A96846FFF70A -:10A1400043FAF8E70B20F6E7B42600202DE9F043A8 -:10A1500091B00191002800F010811446064602F0EB -:10A160003F073A4603A901A8FFF72EFA054628B192 -:10A1700000233360284611B0BDE8F083039B0493AD -:10A18000019904A8FFF7B0FE054660B99DF93F307C -:10A19000002B52DB14F03E0F14BF0121002104A854 -:10A1A000FEF78CFF054614F01C0F5CD0002D50D03C -:10A1B000042D44D047F00807002DD9D117F0080F1F -:10A1C00061D0FAF789F9044601460C980E30FEF783 -:10A1D00047FF21460C981630FEF742FF0C9B2022C9 -:10A1E000DA72DDF80C80DDF8309049464046FFF722 -:10A1F00060F80446002249464046FFF76DF800210A -:10A200000C981C30FEF72CFF039B0122DA70002C07 -:10A2100039D0039BD3F830800022214604A8FFF7F1 -:10A220005DFD05460028A3D141460398FFF775F967 -:10A230000546013C039B1C6125E00625B3E7FEF7BC -:10A240007BFF08B91225B5E704A8FFF7BDFE054658 -:10A25000B0E79DF8163013F0110F13D114F0040F6E -:10A26000AAD0082584E7002D82D19DF8163013F07E -:10A27000100F7ED114F0020F05D013F0010F02D0A1 -:10A28000072575E70725002D7FF472AF17F0080F3B -:10A2900001D047F04007039B1B6B73620C9BB362BA -:10A2A000012F94BF0021012104A8FEF755FF306162 -:10A2B00008B902255CE7039CDDF830804146204662 -:10A2C000FEF7F7FFB06008F11C00FEF7BAFEF06081 -:10A2D0000021F1623460E388B380377571753162B3 -:10A2E000B16106F130084FF480524046FEF7CCFED3 -:10A2F00017F0200F39D0F468002C36D0B461039BDE -:10A300005F899B8903FB07F7B16801E00225E41B25 -:10A31000BC4294BF002301235DB953B13046FFF71F -:10A3200094FB01460128F1D9B0F1FF3FEFD101259F -:10A33000EDE7F161002D7FF41BAF039FB7F80C90A0 -:10A34000B4FBF9F309FB13437BB13846FEF792FFE8 -:10A3500008B902250CE7B4FBF9F20244326201238A -:10A3600041467878FEF744FE28B9002D3FF402AF4D -:10A37000FEE60425FCE60125FAE60925FAE62DE9C4 -:10A38000F04F85B004460F46154698460023C8F89E -:10A39000003003A9FFF774F80190002840F0B9805D -:10A3A000637D0193002B40F0B480237D13F0010FF7 -:10A3B00000F0CE80E668A369F61AAE4267D32E4657 -:10A3C00065E0E36A1BB12046FEF760FF73E0E169D8 -:10A3D0002046FFF73AFB6EE04FF0020A84F815A022 -:10A3E000CDF804A095E04FF0010A84F815A0CDF84F -:10A3F00004A08EE04FF0020A84F815A0CDF804A066 -:10A4000087E094F91430002B04DB039B9D890AFB41 -:10A4100005F532E0236AA3EB09035345F5D2039A0D -:10A42000928904F1300102FB0370FEF723FEECE792 -:10A43000226A4A450DD094F91430002B6DDB0123BC -:10A440004A4604F1300103984078FEF7D1FD002818 -:10A4500077D1C4F82090039B9D89A369B3FBF5F2E3 -:10A4600005FB1233ED1AAE4200D2354604F130013D -:10A470002A4619443846FEF7FDFD2F44A3692B44B4 -:10A48000A361D8F800302B44C8F80030761B002EAA -:10A490003FD0A169039A9589B1FBF5F305FB13132E -:10A4A000002BD8D1B1FBF5F55389013B1D4008D1F4 -:10A4B000002986D1A06801288ED9B0F1FF3F92D043 -:10A4C000E061DDF80CB0E1695846FEF7D3FE814645 -:10A4D00000288FD0A944BBF80C30B6FBF3FAB34286 -:10A4E000A6D805EB0A03BBF80A20934201D9A2EBD8 -:10A4F000050A53464A4639469BF80100FEF778FDA7 -:10A5000000283FF47EAF4FF0010A84F815A0CDF883 -:10A5100004A0019805B0BDE8F08F012304F13001DB -:10A520009BF80100FEF770FD20B9237D03F07F0347 -:10A53000237584E74FF0010A84F815A0CDF804A034 -:10A54000E7E74FF0010A84F815A0CDF804A0E0E792 -:10A5500007230193DDE72DE9F04F85B004460F4650 -:10A56000154698460023C8F8003003A9FEF788FF77 -:10A57000019000284AD1637D0193002B46D1237DB1 -:10A5800013F0020F00F0EC80A369EB42C0F0B6803C -:10A59000DD43B3E0E36A002B3CD02046FEF776FEB5 -:10A5A000002800F0D880012839D0B0F1FF3F3DD01D -:10A5B000E061A36803B9A06094F91430002B3CDB80 -:10A5C000DDF80CB0E1695846FEF754FE81460028DC -:10A5D00048D0B144BBF80C30B5FBF3FAAB425FD8BE -:10A5E00006EB0A03BBF80A20934201D9A2EB060A44 -:10A5F00053464A4639469BF80100FEF705FDC0B3B5 -:10A600004FF0010A84F815A0CDF804A0019805B018 -:10A61000BDE8F08FE1692046FFF7F5FAC0E74FF09B -:10A62000020A84F815A0CDF804A0EFE74FF0010A64 -:10A6300084F815A0CDF804A0E8E70123226A04F10C -:10A64000300103984078FEF7DFFC20B9237D03F04A -:10A650007F032375B4E74FF0010A84F815A0CDF805 -:10A6600004A0D3E74FF0020A84F815A0CDF804A0A7 -:10A67000CCE7236AA3EB0903534504D3039B9E89CC -:10A680000AFB06F62BE0039A928902FB037104F1A0 -:10A690003000FEF7EFFC237D03F07F032375EDE729 -:10A6A000236A4B4503D0A269E3689A4242D3C4F8B7 -:10A6B0002090039B9E89A369B3FBF6F206FB12333D -:10A6C000F61AB54200D22E4604F130003246394621 -:10A6D0001844FEF7CFFC237D63F07F0323753744D6 -:10A6E000A3693344A361E268934238BF1346E36031 -:10A6F000D8F800303344C8F80030AD1B5DB3A16911 -:10A70000039A9689B1FBF6F306FB1313002BD0D105 -:10A71000B1FBF6F65389013B1E407FF44DAF002993 -:10A720007FF438AFA06800287FF43DAF2046FFF7E4 -:10A730006AFA35E701234A4604F130019BF801002B -:10A74000FEF756FC0028B2D04FF0010A84F815A09D -:10A75000CDF804A05AE7237D43F04003237555E765 -:10A760000723019352E770B582B0044601A9FEF7B2 -:10A7700087FE70B9237D13F0400F0AD013F0800FCD -:10A7800009D1F9F7A9FE0546616A0198FEF7C5FEF1 -:10A7900078B102B070BD0123226A04F13001019842 -:10A7A0004078FEF731FC40BB237D03F07F03237527 -:10A7B000E7E7A66AF37A43F02003F372A268314612 -:10A7C0002068FEF789FDE16806F11C00FEF748FCF1 -:10A7D000294606F11600FEF743FC002106F112009F -:10A7E000FEF73AFC019B0122DA700198FFF73AFC70 -:10A7F000237D23F040032375CBE70120C9E710B583 -:10A8000082B00446FFF7AFFF08B102B010BD01A946 -:10A810002046FEF735FE0028F7D12069FEF7ECFC54 -:10A820000028F2D12060F0E72DE9F04F83B0044614 -:10A830000D4601A9FEF724FE064678B9667D6EB97D -:10A84000E36A002B00F08E80B5F1FF3F0AD0E76885 -:10A85000AF4200D32F46A761002F3FD1304603B04F -:10A86000BDE8F08F984658F804BBD4F808A0BAF1B8 -:10A87000000F27D04FF0020909F1020951460027C5 -:10A8800001370D462046FFF7E0F80146012813D9AD -:10A89000B0F1FF3F13D001358542F1D0CB4505D350 -:10A8A000434643F8087BC8F804A09846019B9B697F -:10A8B0008B4209D98A46DFE702266675CEE7012674 -:10A8C0006675CBE74FF00209E36AC3F80090D945FB -:10A8D00000F2FB800023C8F80030BFE77D1E294648 -:10A8E0002046FEF7D3FC0146E061DDF804804046D7 -:10A8F000FEF7C0FC00B3B8F80C30B5FBF3F5B8F8C0 -:10A900000A20013A15400544B7FBF3F203FB127726 -:10A91000002FA3D0226AAA42A0D094F91430002BB1 -:10A920000DDB01232A4604F1300101984078FEF73F -:10A930005FFBA0B9256291E7022666758EE70123C9 -:10A9400004F1300198F80100FEF75EFB20B9237D89 -:10A9500003F07F032375E4E7012666757EE7012691 -:10A9600066757BE7E368AB4204D2227D12F0020FEA -:10A9700000D11D46A3690022A261E5B1019AB2F897 -:10A980000A80928902FB08F873B16A1EB2FBF8F2E2 -:10A99000013BB3FBF8F18A4206D3C8F10002134031 -:10A9A000A361EF1AE56904E0A06850B3E0612F46A7 -:10A9B0000546002D45D1A369E268934204D9E360BE -:10A9C000227D42F04002227501988289B3FBF2F1A8 -:10A9D00002FB1133002B3FF441AF226AAA423FF43D -:10A9E0003DAF94F91430002B5DDB01232A4604F1BE -:10A9F000300101984078FEF7FBFA002862D1256209 -:10AA00002CE700212046FFF7FEF8012804D0B0F122 -:10AA1000FF3F04D0A060C9E7022666751EE7012645 -:10AA200066751BE729462046FFF70FF80546B5F186 -:10AA3000FF3F2DD0012D2ED9019B9B69AB422AD916 -:10AA4000E561474510D9A7EB0807A3694344A36113 -:10AA5000237D13F0020FE5D029462046FFF7D3F8F7 -:10AA600005460028E3D10746A3693B44A36101984A -:10AA7000B0F80C80B7FBF8F308FB13738BB12946D1 -:10AA8000FEF7F8FB054648B1B7FBF8F73D4492E7FF -:10AA900001266675E2E602266675DFE60226667521 -:10AAA000DCE61D4687E7012304F130014078FEF71C -:10AAB000ABFA20B9237D03F07F03237595E70126C8 -:10AAC0006675CBE601266675C8E61126C6E630B582 -:10AAD0008FB001900C46002202A901A8FEF774FD78 -:10AAE000054610B128460FB030BD019902A8FFF706 -:10AAF000FBF905460028F5D19DF93730002B06DB20 -:10AB0000002CEFD0214602A8FEF7F9FBEAE7062564 -:10AB1000E8E7F0B59DB00190022203A901A8FEF775 -:10AB200053FD039B1093044610B120461DB0F0BDA9 -:10AB3000019910A8FFF7D8F904460028F5D10221A1 -:10AB400010A8FEF7BBFA04460028EED19DF96F303D -:10AB5000002B3CDB9DF8465015F0010F39D1039FC7 -:10AB600018993846FEF7A5FB064615F0100F13D1CD -:10AB7000002CDAD110A8FFF7F0F80446B0FA80F004 -:10AB80004009002E08BF0020D0B9002CCDD1039879 -:10AB9000FFF768FA0446C8E704970690002104A866 -:10ABA000FEF7D1FF04460028BFD1002104A8FFF71B -:10ABB0002AFA044610B10428DAD1DBE70724D7E7E4 -:10ABC0000022314610A8FFF789F80446DDE7062485 -:10ABD000ABE70724A9E70000134B5B7A13BB10B562 -:10ABE000044603F0FF00104B93F809C05FFA8CFC99 -:10ABF0004FF0000E03F80CE093F809C003EB8C0C47 -:10AC0000CCF804405C7A1C4422725A7A541CE4B298 -:10AC10005C7230320A703A234B702F238B7081F8AC -:10AC200003E010BD01207047B826002008B50022BF -:10AC3000FFF7D2FF08BD000010B503460C4A0D49CE -:10AC40000D48006840B10C4800680344521A934212 -:10AC500006D8094A136010BD0748084C0460F2E7A3 -:10AC6000F5F7CCFD0C2303604FF0FF30F3E700BF96 -:10AC70000000082000400000C4260020C826002054 -:10AC8000026852E8003F23F4907342E80031002943 -:10AC9000F6D1026802F1080353E8003F23F00103F4 -:10ACA000083242E800310029F3D1036E012B06D0AF -:10ACB0002023C0F880300023036683667047026853 -:10ACC00052E8003F23F0100342E800310029F6D19A -:10ACD000EEE7000010B50446836802691343426939 -:10ACE0001343C269134301680868914A02401A433A -:10ACF0000A602268536823F44053E1680B435360B1 -:10AD0000A269236A1A4321688B6823F430631343D2 -:10AD10008B602368874A934218D0874A93423AD07F -:10AD2000864A93424FD0864A93425ED0854A9342E8 -:10AD30006DD0854A93427FD0844A934200F091803F -:10AD4000834A934200F0A28010230BE0814BD3F89A -:10AD5000903003F00303032B1BD8DFE803F0021647 -:10AD6000AB180123E069B0F5004F00F0D780082B45 -:10AD700000F23881DFE813F01401270112013601D7 -:10AD80002A013601360136012D010423EAE70823A2 -:10AD9000E8E71023E6E76F4BD3F8903003F00C039D -:10ADA0000C2B0ED8DFE803F0070D0D0D090D0D0D6E -:10ADB000880D0D0D0B000023D4E70423D2E70823F0 -:10ADC000D0E71023CEE7634BD3F8903003F0300385 -:10ADD000202B73D005D8002B72D0102B72D10423F6 -:10ADE000C0E7302B70D10823BCE75A4BD3F8903022 -:10ADF00003F0C003802B69D005D8002B68D0402B0E -:10AE000068D10423AEE7C02B66D10823AAE7514BD3 -:10AE1000D3F8903003F44073B3F5007F5ED006D8CA -:10AE2000002B5DD0B3F5807F5CD104239AE7B3F5A6 -:10AE3000407F59D1082395E7464BD3F8903003F46F -:10AE40004063B3F5006F51D006D8002B50D0B3F556 -:10AE5000806F4FD1042385E7B3F5406F4CD10823B1 -:10AE600080E73C4BD3F8903003F44053B3F5005FD8 -:10AE700044D006D8002B43D0B3F5805F42D10423E1 -:10AE800070E7B3F5405F3FD108236BE7314BD3F850 -:10AE9000903003F44043B3F5004F37D005D8BBB32F -:10AEA000B3F5804F36D104235CE7B3F5404F33D17F -:10AEB000082357E7022355E7022353E7022351E70C -:10AEC00000234FE710234DE710234BE7022349E708 -:10AED000002347E7102345E7102343E7022341E718 -:10AEE00000233FE710233DE710233BE7022339E728 -:10AEF000012337E7102335E7102333E7022331E737 -:10AF000000232FE710232DE710232BE7022329E747 -:10AF1000002327E7102325E7102323E7082B5BD81E -:10AF2000DFE803F01A343A5A375A5A5A1E0000BF63 -:10AF3000F369FFEF0010014000440040004800406A -:10AF4000004C0040005000400014014000780040D8 -:10AF5000007C004000380240FAF71AFE00283DD07D -:10AF60006268530803EB4003B3FBF2F3A3F1100153 -:10AF70004FF6EF72914233D89AB222F00F02C3F328 -:10AF8000420313432268D360002030E0FAF710FE3A -:10AF9000E4E7FAF7EDFCE1E71748E1E7164802E0DD -:10AFA000FAF7F6FD00B3636800EB5300B0FBF3F073 -:10AFB000A0F110024FF6EF739A4217D8236880B2BF -:10AFC000D860002013E0FAF7F3FDEBE7FAF7D0FCC6 -:10AFD000E8E74FF40040E6E7012008E0002006E043 -:10AFE000012004E0012002E0002000E00120002315 -:10AFF000A366E36610BD00BF0024F400436A13F0AB -:10B00000080F06D00268536823F40043416B0B43DA -:10B010005360436A13F0010F06D00268536823F4AB -:10B020000033816A0B435360436A13F0020F06D06A -:10B030000268536823F48033C16A0B435360436A48 -:10B0400013F0040F06D00268536823F48023016BC9 -:10B050000B435360436A13F0100F06D002689368E5 -:10B0600023F48053816B0B439360436A13F0200FEA -:10B0700006D00268936823F40053C16B0B439360BE -:10B08000436A13F0400F0AD00268536823F4801318 -:10B09000016C0B435360036CB3F5801F0BD0436A04 -:10B0A00013F0800F06D00268536823F40023816CEC -:10B0B0000B43536070470268536823F4C003416C2C -:10B0C0000B435360EBE72DE9F84305460E46174660 -:10B0D0009946DDF820802B68DC6936EA04040CBF51 -:10B0E00001240024BC423AD1B8F1FF3FF3D0FBF772 -:10B0F00079FAA0EB0900404534D8B8F1000F33D0FD -:10B100002B681A6812F0040FE5D0B6F1400218BFA0 -:10B110000122802EDFD0002ADDD0DA6912F0080F7C -:10B1200011D1DA6912F4006FD5D04FF400621A62BF -:10B130002846FFF7A5FD2023C5F88430002385F8B5 -:10B14000783003200CE008241C622846FFF798FDA5 -:10B15000C5F88440002385F87830012000E0002005 -:10B16000BDE8F8830320FBE70320F9E730B583B09F -:10B1700004460023C0F88430FBF734FA0546226801 -:10B18000126812F0080F0FD123681B6813F0040F28 -:10B1900026D12023E367C4F8803000202066606653 -:10B1A00084F8780003B030BD6FF07E43009303460F -:10B1B00000224FF400112046FFF785FF0028E3D05E -:10B1C000226852E8003F23F0800342E80031002962 -:10B1D000F6D12023E367002384F878300320E1E7E9 -:10B1E0006FF07E4300932B4600224FF480012046EF -:10B1F000FFF769FF0028CCD0226852E8003F23F413 -:10B20000907342E800310029F6D1226802F1080368 -:10B2100053E8003F23F00103083242E800310029DF -:10B22000F3D12023C4F88030002384F87830032041 -:10B23000B8E768B310B50446C36F03B32423E367CC -:10B240002268136823F001031360636AE3B92046A0 -:10B25000FFF740FD012811D02268536823F4904382 -:10B2600053602268936823F02A039360226813686E -:10B2700043F0010313602046FFF778FF10BD80F80C -:10B280007830F9F799FDD9E72046FFF7B7FEDEE7FA -:10B2900001207047DFF834D0FDF7FAFC0C480D4967 -:10B2A0000D4A002302E0D458C4500433C4188C4221 -:10B2B000F9D30A4A0A4C002301E013600432A24287 -:10B2C000FBD3F5F721FAF8F79DFA70470000082044 -:10B2D000000000205C000020F8B600085C000020A0 -:10B2E000C8260020FEE70000F8B500BFF8BC08BC87 -:10B2F0009E467047F8B500BFF8BC08BC9E46704734 -:10B300002F000000434F4D4D414E442E54585400E1 -:10B3100046494C45312E5458540000004552525273 -:10B320004F52212121202A25732A20646F65732022 -:10B330006E6F74206578697374730A0A00000000E8 -:10B340004552524F52212121204E6F2E202564203C -:10B35000696E206F70656E696E672066696C652026 -:10B360002A25732A0A0A00004552524F52212121F0 -:10B37000204E6F2E20256420696E207265616469FD -:10B380006E672066696C65202A25732A0A0A000008 -:10B390004552524F52212121204E6F2E20256420EC -:10B3A000696E20636C6F73696E672066696C6520D7 -:10B3B0002A25732A0A0A000046696C65202A25732B -:10B3C0002A20434C4F534544207375636365737360 -:10B3D00066756C6C790A00004552524F522121214A -:10B3E0002043616E2774207365656B207468652047 -:10B3F00066696C653A2020202A25732A0A0A000013 -:10B400004552524F52212121202A25732A20646F50 -:10B410006573206E6F74206578697374730A0A000F -:10B420002A25732A20686173206265656E20726523 -:10B430006D6F766564207375636365737366756C91 -:10B440006C790A004552524F52204E6F2E202564CF -:10B4500020696E2072656D6F76696E67202A25738C -:10B460002A0A0A00222A2B2C3A3B3C3D3E3F5B5DD8 -:10B470007C7F0000232D302B20000000686C4C00E6 -:10B48000656667454647000030313233343536371C -:10B4900038394142434445460000000030313233E0 -:10B4A0003435363738396162636465660000000000 -:10B4B0000000000E0000000000000000000000403E -:10B4C0000000000000000000001F0000000000005D -:10B4D0000E000000000000000000000030301101EC -:10B4E000FFFF000001010300000000000000000059 -:10B4F000000000000000000000400000000200000A -:10B50000000000000000000000000000000000003B -:10B51000000000000000000000000000000000002B -:10B520000000000000000000A00F0000F03F00013C -:10B530000100010000000000000000000000000009 -:10B54000000000400000000000000000001F00009C -:10B55000000000000E0000000000000000000000DD -:10B5600012322101FFFF0000010103000000000072 -:10B57000000000000000000000000000004000008B -:10B5800006069919009A0000000000000000000063 -:10B5900000000000A00F00000000000000000000FC -:10B5A000000000000000000000000000000000009B -:10B5B0000000FF160100010000000100020003006E -:10B5C0000400050006000700080009000A000B003F -:10B5D0000C000D000E001F0020002200230024009C -:10B5E000250026002700280029002A002B002C0017 -:10B5F0002D002E002F0030003100320033003400C7 -:10B600003500360037003E003F0040004100420058 -:10B6100043004400450047005000510052005300D1 -:10B620005400550056005700580059005A005B005E -:10B630005C005D005E005F001E001D00ED43000821 -:10B64000154400081D4400084144000865440008F2 -:10B6500000000000010203040000000000000000E0 -:10B66000010203040607080943554541414141438E -:10B6700045454549494941414592924F4F4F55559E -:10B68000594F554F9C4F9E9F41494F55A5A5A6A781 -:10B69000A8A9AAABACADAEAFB0B1B2B3B441414111 -:10B6A000B8B9BABBBCBDBEBFC0C1C2C3C4C54141AD -:10B6B000C8C9CACBCCCDCECFD1D1454545494949E2 -:10B6C00049D9DADBDCDD49DF4FE14F4F4F4FE6E888 -:10B6D000E85555555959EEEFF0F1F2F3F4F5F6F758 -:08B6E000F8F9FAFBFCFDFEFF86 -:08B6E8002854FF7F010000005F -:04B6F00069020008E3 -:04B6F4004102000807 -:10B6F800040000200000000080000020E800002076 -:10B7080050010020000000000000000000000000C0 -:10B718000000000000000000000000000000000021 -:10B728000000000000000000000000000000000011 -:10B738000000000000000000000000000000000001 -:0CB7480001010000100000000024F400CB -:040000050800B295A8 +:101650000F4B1B6813F0400F04D00D4A136823F0A2 +:10166000400313600A4B1A6822F00202104318600C +:101670001A6822F00102114319601B6813F0400F31 +:1016800004D1034A136843F040031360704700BF5E +:101690000038004030B40B8804881B1BD1ED017A60 +:1016A00003F6B73C41F26E74A44518D890ED027A67 +:1016B00006EE903AF8EEE66A27EE267A284C246881 +:1016C000284D2D68641B06EE904AF8EE666A27EEF8 +:1016D000267A9FED256AC7EE066A77EEA67AD0EDE8 +:1016E000016A9FED227AF4EEC77AF1EE10FA09DC76 +:1016F0009FED1F7AF4EEC77AF1EE10FA04D5DFED14 +:101700001C7A01E0DFED197AC1ED017A07EE103A9B +:10171000B8EEC77A27EE267ADFED166A37EE267A1C +:10172000FDEEE77AF8EEE77A77EE877AFDEEE77A74 +:1017300017EE900AB0F57A7F06DB4DF6E05398423B +:1017400004DD4DF6E05001E042F26020022A02D0B2 +:1017500080B230BC7047024B1A68024B1A60F7E740 +:1017600018030020100300200000C8420000FA46C1 +:101770000000FAC60000004738B50C46C0F30E055D +:1017800000210846FFF764FF01224FF480412C48F6 +:1017900005F0A7F801224FF480512A4805F0A1F87E +:1017A000294B1B6813F0400F04D1274A136843F0FC +:1017B0004003136000224FF48051214805F091F856 +:1017C0000023214A926812F0020F05D15A1CB3F58A +:1017D0007A7F01D21346F4E71B4B9D8100231A4AFE +:1017E000926812F0010F05D15A1CB3F57A7F01D22D +:1017F0001346F4E7144BDB680023134A926812F097 +:10180000020F05D15A1CB3F57A7F01D21346F4E7D3 +:101810000D4B9C8100230C4A926812F0010F05D1F8 +:101820005A1CB3F57A7F01D21346F4E7064BDB6806 +:1018300001224FF48051024805F053F838BD00BF33 +:1018400000040240000C02400038004070B506461B +:101850000D46002408E036F81410054B33F8140048 +:10186000FFF78AFF0134A4B2AC42F4D370BD00BFCD +:1018700048BB0008F8B50F461646012806D90546AC +:10188000B0F5805F03D94FF4805500E00225B6F52E +:10189000005F01D341F6FF7604211E20FFF76CFFA5 +:1018A00000242DE0012234E0012238E0A91A89B297 +:1018B000012909D9013989B2ABB1A21A03FB02F29D +:1018C00092FBF1F2831A0BE00121F5E7012D2ED9ED +:1018D0006A1E92B23BB104FB03F393FBF2F31B1AB3 +:1018E00013F5005F25DBB3F5005F24DA99B28900B8 +:1018F00089B204F5C04080B2FFF73EFF0134A4B2C4 +:10190000A5421BD930467300002FDFD06A08012D95 +:10191000C8D99442CAD2012AC6D9013A92B2002B40 +:10192000E1D004FB03F393FBF2F31B1AD8E7012287 +:10193000D0E7054BDAE741F6FF73D7E700211E2019 +:10194000FFF71AFFF8BD00BF00E0FFFF00B583B04E +:1019500001224FF48051164804F0C3FF00224021B9 +:10196000144804F0BEFF0023019302E0019B013301 +:101970000193019BB3F57A7FF8D3012240210D48F2 +:1019800004F0AFFF42210C48FFF760FF00211E204A +:10199000FFF7F2FE01211D20FFF7EEFE01224FF4BA +:1019A0000061064804F09DFF03B05DF804FB00BF32 +:1019B0000004024000080240C4BA0008000C0240C3 +:1019C00010B540F4004400210846FFF741FE012213 +:1019D0004FF480412C4804F084FF01224FF48051E1 +:1019E0002A4804F07EFF2A4B1B6813F0400F04D1F5 +:1019F000274A136843F04003136000224FF48051DC +:101A0000214804F06EFF0023214A926812F0020F71 +:101A100005D15A1CB3F57A7F01D21346F4E71C4B6B +:101A20009C8100231A4A926812F0010F05D15A1CBA +:101A3000B3F57A7F01D21346F4E7154BDB68002338 +:101A4000134A926812F0020F05D15A1CB3F57A7F3F +:101A500001D21346F4E700230D4A93810C4A9268A1 +:101A600012F0010F05D15A1CB3F57A7F01D213464B +:101A7000F4E7074BDC68A4B201224FF4805102481E +:101A800004F02FFF204610BD00040240000C02406D +:101A9000003800402DE9F04F83B083460F461446CE +:101AA0001D460020FFF78CFF82460120FFF788FFCC +:101AB00081460220FFF784FF80466020FFF780FF09 +:101AC0001CB1012C02D8022403E01024B4F5805F7D +:101AD00004D835B10F2D05D90F2503E04FF48054FC +:101AE000F7E701252E0206F4706646F01106019410 +:101AF00005F00F0504FB05F51DB1B5F5803F4CD28F +:101B00000195013CA4B22401A4B2BAF1000F48D15E +:101B1000012519F4F47F00D0002518F40E6F00D0D1 +:101B2000002510F03F0F00D000251FB11BF0010F62 +:101B300000D100252720FFF743FF43F230039842EE +:101B400000D000252820FFF73BFFB04200D0002541 +:101B50002920FFF735FFBDF80430984200D000255A +:101B60001F20FFF72DFF00B100255D20FFF728FFA4 +:101B700000B100255E20FFF723FFA04200D0002522 +:101B80002B20FFF71DFF40F20113984200D00025E3 +:101B900085F0010003B0BDE8F08F4FF6FF730193AD +:101BA000AFE70025B5E72DE9F04F83B001900F4670 +:101BB00015461C46BDF834B00020FFF701FF8246F1 +:101BC0000120FFF7FDFE81460220FFF7F9FE804667 +:101BD0006020FFF7F5FE9DF830301B0103F0F003A5 +:101BE00040F201161E431CB13F2C02D93F2400E0F5 +:101BF0000124BBF1000F01D14FF6FF7B05F0030577 +:101C0000A400E4B22543BAF1000F36D1012419F43F +:101C1000F47F00D0002418F40E6F00D0002410F0E0 +:101C20003F0F00D0002427B1019B13F0010F00D11A +:101C300000242720FFF7C4FE43F21223984200D06D +:101C400000242820FFF7BCFEB04200D00024292049 +:101C5000FFF7B6FE584500D000241F20FFF7B0FE66 +:101C600000B100243720FFF7ABFEA84200D00024CB +:101C700084F0010003B0BDE8F08F0024C7E7000046 +:101C80002DE9F04383B006461F46BDF8288021B1F8 +:101C90000C46012902D8022403E01024B4F5805F29 +:101CA00004D832B10F2A05D90F2203E04FF4805433 +:101CB000F7E70122B8F5005F01D341F6FF7815027E +:101CC00005F4706545F01105A14602F00F0204FB12 +:101CD00002F21AB1B2F5803F4ED291464221374806 +:101CE000FFF7B4FD00211E20FFF746FD43F230014F +:101CF0002720FFF741FD4FF400713720FFF73CFD2F +:101D000040F201112B20FFF737FD29462820FFF76D +:101D100033FD1FFA89F12920FFF72EFD00211F2036 +:101D2000FFF72AFD00215C20FFF726FD00215D2042 +:101D3000FFF722FD611E89B2090189B25E20FFF71B +:101D40001BFD01211D20FFF717FD424639462046A5 +:101D5000FFF790FD36B301224FF40061184804F0FC +:101D6000C0FD01211E20FFF707FD01211D20FFF707 +:101D700003FD0023019305E04FF6FF79AEE7019BD9 +:101D800001330193019BB3F57A7FF8D300224FF41E +:101D900000610B4804F0A5FD1E20FFF711FE03B003 +:101DA000BDE8F08300211E20FFF7E6FC01224FF47E +:101DB0000061034804F095FDEEE700BF40BA00085B +:101DC000000C024030B583B000294AD01AB13F2A36 +:101DD00002D93F2200E0012200F003009200D2B2BB +:101DE00040EA02041B0103F0F00340F201151D4319 +:101DF00043F212212720FFF7BFFC21463720FFF7CF +:101E0000BBFC29462820FFF7B7FCBDF81810292095 +:101E1000FFF7B2FC00211F20FFF7AEFC01224FF4B8 +:101E20000061154804F05DFD01211E20FFF7A4FCB0 +:101E300001211D20FFF7A0FC0023019302E0019B7C +:101E400001330193019BB3F57A7FF8D300224FF45D +:101E50000061094804F045FD1E20FFF7B1FD03B005 +:101E600030BD00211E20FFF787FC01224FF40061E6 +:101E7000014804F036FDEFE7000C024038B5044697 +:101E800000210220FFF7E4FB1E4D01224FF4805198 +:101E9000284604F026FD01224FF48041284604F034 +:101EA00020FD05F5006501224FF48051284604F01D +:101EB00018FD00224FF40051284604F012FD0023C3 +:101EC000114A926812F0020F05D15A1CB3F57A7FBD +:101ED00001D21346F4E70C4B9C8100230A4A926816 +:101EE00012F0010F05D15A1CB3F57A7F01D21346C7 +:101EF000F4E7054BDB6801224FF40051034804F07E +:101F0000F0FC38BD0004024000380040000C0240E4 +:101F10002DE9F0410546F9B94FF4005747F48078B0 +:101F2000C2F30D0646F48046C2F38D3242F480447B +:101F30004046FFF7A3FF3046FFF7A0FF2046FFF71C +:101F40009DFF4FF44040FFF799FF05B947463846DB +:101F5000FFF794FFBDE8F08142F20207DEE70000E0 +:101F600010B5092813D8DFE800F00513212F3D4BE9 +:101F70005965717D414C01224FF48061204604F087 +:101F8000B0FC00224FF48061204604F0AAFC10BD92 +:101F90003A4C01224FF40061204604F0A2FC0022DA +:101FA0004FF40061204604F09CFCF0E7334C012222 +:101FB0004FF48051204604F094FC00224FF48051ED +:101FC000204604F08EFCE2E72C4C01224FF4005135 +:101FD000204604F086FC00224FF40051204604F015 +:101FE00080FCD4E7254C01224FF48041204604F0C8 +:101FF00078FC00224FF48041204604F072FCC6E7D2 +:102000001E4C01224FF40041204604F06AFC0022DD +:102010004FF40041204604F064FCB8E7184C01225C +:102020001021204604F05DFC00221021204604F01F +:1020300058FCACE7124C01222021204604F051FC50 +:1020400000222021204604F04CFCA0E70C4C012289 +:102050004021204604F045FC00224021204604F0A7 +:1020600040FC94E7064C01228021204604F039FC14 +:1020700000228021204604F034FC88E7001802404A +:102080000004024038B5044600224FF480418148E4 +:1020900004F027FC00224FF400717F4804F021FC7B +:1020A000002300E00133B3F5FA7FFBD301224FF4A4 +:1020B0008041784804F015FC01224FF40071764805 +:1020C00004F00FFC002300E00133B3F5FA7FFBD3EB +:1020D000631E032B39D8DFE803F0023A6FA66D4C7C +:1020E00001224FF40061204604F0FBFB00224FF474 +:1020F0008061204604F0F5FB002300E00133B3F5D6 +:10210000FA7FFBD3654A136843F040031360002352 +:10211000624A926812F0010F04D1B3F57A7F01D8B8 +:102120000133F5E75D490A6822F040020A6000E0E9 +:102130000133B3F5FA7FFBD301224FF48061554898 +:1021400004F0CFFB554BDD68ADB2284638BD524C8C +:1021500001224FF48061204604F0C3FB002240219D +:10216000204604F0BEFB002300E00133B3F5FA7F04 +:10217000FBD34B4A136843F0400313600023484AE3 +:10218000926812F0010F04D1B3F57A7F01D80133C0 +:10219000F5E743490A6822F040020A6000E0013393 +:1021A000B3F5FA7FFBD3012240213B4804F099FBB1 +:1021B0003B4BDD68ADB2C8E7364C01224FF480617D +:1021C000204604F08EFB00224FF40061204604F00C +:1021D00088FB002300E00133B3F5FA7FFBD32F4ADD +:1021E000136843F04003136000232C4A926812F0F6 +:1021F000010F04D1B3F57A7F01D80133F5E7274900 +:102200000A6822F040020A6000E00133B3F5FA7F69 +:10221000FBD301224FF400611E4804F062FB1F4B08 +:10222000DD68ADB291E71C4C01224021204604F04C +:1022300058FB00224FF48061204604F052FB00233B +:1022400000E00133B3F5FA7FFBD3154A136843F07E +:10225000400313600023124A926812F0010F04D168 +:10226000B3F57A7F01D80133F5E70D490A6822F00A +:1022700040020A6000E00133B3F5FA7FFBD301228C +:102280004FF48061044804F02CFB054BDD68ADB2CF +:102290005BE700BF00100240001402400034014020 +:1022A0000050014008B5044806F0C0F90023034A75 +:1022B0001370034A136008BD08040020D6020020F2 +:1022C0000C0300202DE9F04F8FB0002409940A94EC +:1022D0000B940C940D94984B1A6B42F020021A63E5 +:1022E0001A6B02F020020192019A1A6B42F08002EE +:1022F0001A631A6B02F080020292029A1A6B42F081 +:1023000004021A631A6B02F004020392039A1A6B16 +:1023100042F001021A631A6B02F001020492049A5D +:102320001A6B42F002021A631A6B02F00202059263 +:10233000059A1A6B42F010021A631A6B02F010022F +:102340000692069A1A6B42F008021A631A6B02F0A0 +:1023500008020792079A1A6B42F040021A631B6B3D +:1023600003F040030893089BDFF8DC9122464FF40A +:10237000C861484604F0B5FADFF8D0A12246B8217A +:10238000504604F0AEFA01224021504604F0A9FA6A +:10239000DFF8BC8122464B21404604F0A2FA01221C +:1023A0001021404604F09DFA644F22464FF44061EC +:1023B000384604F096FA01220C21384604F091FACE +:1023C00001224FF48041384604F08BFADFF884B1E3 +:1023D00022464FF44F61584604F083FA584E0122CA +:1023E0004FF48051304604F07CFA01224FF48051C2 +:1023F000584604F076FA22464FF4C171304604F094 +:1024000070FA01224FF40061304604F06AFA0122AA +:102410004FF40051304604F064FA22464FF47E41F6 +:10242000484804F05EFA182309930A9401250B9595 +:1024300009A9484604F04CF94FF4C86309930A957A +:102440000B940C9409A9484604F042F9F02309932F +:102450000A950B940C9409A9504604F039F9082305 +:1024600009930A950B9403230C9309A9504604F091 +:102470002FF95B2309930A950B940C9409A9404604 +:1024800004F026F94FF4F04309930A940B9409A938 +:10249000484604F01DF94FF4406309930A950B94E4 +:1024A0000C9409A9384604F013F90C23099311235D +:1024B0000A930B940C9409A9384604F009F94FF4D7 +:1024C000804309930A950B9403230C9309A938467A +:1024D00004F0FEF841F6F04309930A950B940C942E +:1024E00009A9584604F0F4F843F6821309930A95B3 +:1024F0000B940C9409A9304604F0EAF84FF4807369 +:1025000009930A940B9409A9404604F0E1F809954F +:102510000A940B9409A9304604F0DAF84FF47E438C +:1025200009930A950B940C9409A9064804F0D0F875 +:102530000FB0BDE8F08F00BF00380240001002402D +:10254000000C024000180240001402400008024043 +:1025500000000240000402402DE9F04192B0282220 +:10256000002108A8FEF7F8F80024029403940494CC +:102570000594069407942A4B5A6C42F400525A640C +:102580005A6C02F400520192019A1A6B42F0100246 +:102590001A631B6B03F010030093009B4FF48053EE +:1025A0000293022503954FF00308CDF8108005270C +:1025B00007971C4E02A9304604F0FFFC4FF400536D +:1025C00002930395CDF8108005940694079702A90D +:1025D000304604F0F2FC4FF4806308934FF48273AA +:1025E00009934FF470630A930B950C944FF40073A6 +:1025F0000D9318230E930F941094072311930A4CF4 +:1026000008A9204605F056FE636823F010036360B6 +:10261000636823F00803636012B0BDE8F08100BF77 +:102620000038024000100240003401402DE9F04122 +:1026300092B02822002108A8FEF78EF80024029408 +:10264000039404940594069407942F4B1A6C42F457 +:1026500080421A641A6C02F480420192019A1A6B49 +:1026600042F002021A631B6B03F002030093009B0B +:102670004FF4005302934FF00208CDF80C8003276B +:10268000049705260796214D02A9284604F095FCDB +:102690004FF480430293CDF80C8004970594069480 +:1026A000079602A9284604F088FC4FF400430293E1 +:1026B000CDF80C80049705940694079602A9284645 +:1026C00004F07BFC08944FF4827309934FF4706319 +:1026D0000A930B940C944FF400730D9310230E93F4 +:1026E0000F94109407231193094C08A9204605F074 +:1026F000E1FD636823F010036360636823F008035F +:10270000636012B0BDE8F08100380240000402406E +:10271000003800402DE9F04192B02822002108A89D +:10272000FEF71AF800240294039404940594069486 +:102730000794294B5A6C42F480125A645A6C02F482 +:1027400080120192019A1A6B42F020021A631B6BED +:1027500003F020030093009B80230293022503953E +:102760004FF00308CDF81080052707971B4E02A9EC +:10277000304604F022FC4FF4807302930395CDF8A9 +:10278000108005940694079702A9304604F015FCC2 +:102790004FF4806308934FF4827309934FF470638E +:1027A0000A930B950C944FF400730D9318230E931A +:1027B0000F94109407231193094C08A9204605F0A3 +:1027C00079FD636823F010036360636823F00803F6 +:1027D000636012B0BDE8F08100380240001402408E +:1027E000005001402DE9F04192B02822002108A8B4 +:1027F000FDF7B2FF00240294039404940594069418 +:102800000794294B5A6C42F400125A645A6C02F431 +:1028100000120192019A1A6B42F001021A631B6BBB +:1028200003F001030093009B2023029302250395EC +:102830004FF00308CDF81080082707971B4E0DEBCB +:102840000701304604F0B9FB802302930395CDF8CD +:1028500010800594069407970DEB0701304604F0AD +:10286000ACFB08944FF4827309934FF470630A939E +:102870000B9501230C934FF400730D9318230E93C3 +:102880000F94109407231193094C08A9204605F0D2 +:1028900011FD636823F010036360636823F008038D +:1028A000636012B0BDE8F0810038024000000240D1 +:1028B0000054014010B586B00024019402940394A2 +:1028C000049405941D4B1A6C42F001021A641B6CAF +:1028D00003F001030093009B194BD8682246214660 +:1028E000C0F30220FEF7AAFD0001C0B2154B83F829 +:1028F0001C034FF080521A604FF47A73ADF8043025 +:102900000294114B0393049401A94FF0804006F008 +:1029100069FB4FF080431A6822F080021A609968C0 +:102920000A4A0A409A605A6822F070025A609A680D +:1029300022F080029A6006B010BD00BF003802404D +:1029400000ED00E000E100E040D10C00F8BFFEFF28 +:1029500010B586B000240194029403940494059465 +:102960001C4B1A6C42F008021A641B6C03F008033B +:102970000093009B184BD86822462146C0F30220E2 +:10298000FEF75CFD0001C0B2144B83F832034FF434 +:1029900080225A6042F21073ADF8043002944FF472 +:1029A0000C73039304940E4C01A9204606F01AFB05 +:1029B000236823F080032360A2680A4B1340A360BE +:1029C000636823F070036360A36823F08003A3604F +:1029D00006B010BD0038024000ED00E000E100E06C +:1029E000000C0040F8BFFEFF10B586B00024019433 +:1029F00002940394049405941A4B1A6C42F020023A +:102A00001A641B6C03F020030093009B164BD868DC +:102A100022462146C0F30220FEF710FD0001C0B29D +:102A2000124B83F837034FF400025A6040F2973399 +:102A3000ADF804300294632303930D4C01A92046A2 +:102A400006F0D0FA236823F080032360636823F044 +:102A5000700343F010036360A36823F08003A36056 +:102A600006B010BD0038024000ED00E000E100E0DB +:102A70000014004010B586B0002401940294039421 +:102A8000049405941A4B1A6C42F010021A641B6CE1 +:102A900003F010030093009B164BD8682246214692 +:102AA000C0F30220FEF7CAFC0001C0B2124B83F84B +:102AB00036034FF480025A604BF2AF33ADF8043066 +:102AC0000294132303930D4C01A9204606F08AFAC1 +:102AD000236823F080032360636823F0700343F0CE +:102AE00010036360A36823F08003A36006B010BDE9 +:102AF0000038024000ED00E000E100E0001000407E +:102B00002DE9F04100239F4A13609F4A13609F4ABA +:102B100013609F4A13609F4A13609F4A13709F4A35 +:102B200013809F4A13609F4A13609F4A13709F4A05 +:102B3000137005E09E4A002122F8131001339BB266 +:102B40000E2BF7D99A4B41F211121A80994B0022A1 +:102B5000DA81DA701A711A821A735A735A719A7179 +:102B6000DA72DA711A725A729A725A709A701A700C +:102B7000914D2A80914C228000226A606260AA6096 +:102B8000A2608F4E9C46BCE80F000FC6DCF80030F8 +:102B900033808C4E95E80F0086E80F008A4D94E84C +:102BA0000F0085E80F00894BDA6842F00102DA6015 +:102BB0001A6842F001021A6003F58063DA6842F095 +:102BC0000102DA601A6842F001021A6003F5143358 +:102BD000D3F8B82022F00102C3F8B8204FF0006209 +:102BE000DA604FF00072DA60794A02F1080353E8C4 +:102BF000003F43F08003083242E800310029F3D15E +:102C0000744BD3F8B82042F01002C3F8B820D3F8C0 +:102C1000B82042F00402C3F8B8204FF00062DA6036 +:102C20004FF00072DA606C4AD3F8B83003F0C0039A +:102C3000402B7DD0674BC3F8C020684AC3F8C4203E +:102C40000024674B1C60674B1C60674E22460821BE +:102C5000304603F046FE22468021304603F041FE16 +:102C6000624F22464FF48071384603F03AFE224606 +:102C70001021304603F035FEDFF8908122464FF4F4 +:102C80008061404603F02DFE594D2246082128461A +:102C900003F027FE22460121284603F022FE2246A9 +:102CA0000221284603F01DFE22464FF400614046F3 +:102CB00003F017FE22462021304603F012FE06F5EF +:102CC000006601224FF48061304603F00AFE494C51 +:102CD00001224021204603F004FE01224FF48041EE +:102CE000304603F0FEFD01224FF48041204603F000 +:102CF000F8FD01224FF48041404603F0F2FD01222D +:102D00004021284603F0EDFD01224FF48051384662 +:102D100003F0E7FD01221021284603F0E2FD012126 +:102D2000384603F0D7FD50B1FEF710FEBDE8F08144 +:102D3000284BC3F8C420294AC3F8C02080E74FF4C9 +:102D40008071284603F0C6FD0028EDD12A4806F020 +:102D500071FA2A4B186018B1294B01221A70E3E767 +:102D60001E231A462749284806F0B4FA234C20604F +:102D7000214806F071FA20600023084A1380064AB1 +:102D80001370E9E73003002018030020140300202B +:102D90002C03002024030020D9020020D4020020AC +:102DA0008402002080020020D8020020D7020020E8 +:102DB000B002002018020020500200204002002033 +:102DC0002C02002070020020600200200010004051 +:102DD0000010014000640240DC0200202810014085 +:102DE000200300201C03002000080240000C0240C9 +:102DF000000002400014024090B800088802002041 +:102E0000000300209002002094B800080004024053 +:102E10002DE9F04107460E4690461D46002416E077 +:102E200000220421144803F05CFD14E00022082174 +:102E3000114803F056FD10E0012204210E4803F072 +:102E400050FD0FE0284603F053FE0134A4B2444580 +:102E500010D2002FE4D1002EE8D1284603F048FE1E +:102E6000002FE9D1002EEDD001220821024803F005 +:102E700038FDE7E7BDE8F0810010024010B50024FE +:102E800005282CD8DFE800F0030812171C26154887 +:102E900002F01CFB204610BD124C6421204602F0BB +:102EA000CFFB204602F02DFC80B2F4E70D4802F083 +:102EB000A7FB2046EFE70C4802F008FB2046EAE7B4 +:102EC000094C6421204602F0BBFB204602F019FCAD +:102ED00080B2E0E7044802F093FB2046DBE720469F +:102EE000D9E700BF04060020BC05002038B5044621 +:102EF0000D46032818BF012806D0013C032C2ED80C +:102F0000DFE804F00D45658601210220FEF7A0FBF5 +:102F100001224FF480514E4803F0E3FCEDE700221C +:102F20004FF480414A4803F0DCFC0022494B9B6887 +:102F300013F0020F04D1B2F5FA7F01D80132F5E7A0 +:102F4000444B9D810022434B9B6813F0010F04D139 +:102F5000B2F5FA7F01D80132F5E73E4BDB6801227A +:102F60004FF480413A4803F0BCFC3B4C0122402125 +:102F7000204603F0B6FC01224FF48051374803F09D +:102F8000B0FC01221021204603F0ABFC38BD00222A +:102F90004021314803F0A5FC0022314B9B6813F01F +:102FA000020F04D1B2F5FA7F01D80132F5E72C4BBC +:102FB0009D8100222A4B9B6813F0010F04D1B2F5CA +:102FC000FA7F01D80132F5E7254BDB68C7E700221D +:102FD0004FF48051214803F084FC00221D4B9B6874 +:102FE00013F0020F04D1B2F5FA7F01D80132F5E7F0 +:102FF000184B9D810022174B9B6813F0010F04D1E1 +:10300000B2F5FA7F01D80132F5E7124BDB68A6E78B +:1030100000221021104803F064FC0022104B9B6832 +:1030200013F0020F04D1B2F5FA7F01D80132F5E7AF +:103030000B4B9D8100220A4B9B6813F0010F04D1BA +:10304000B2F5FA7F01D80132F5E7054BDB6886E778 +:10305000000402400038004000000240000C024022 +:10306000005401402DE9F84305460F4616461C461C +:10307000AF4B00221A600121AE4803F02BFC002860 +:1030800000F0D2802B8803F0010323702B88C3F358 +:10309000400363702B88C3F38003A3702B88C3F3B2 +:1030A000C003E3702B88C3F3001323712B88C3F391 +:1030B000401363712B88C3F38013A3712B88C3F370 +:1030C000C013E3712B88C3F3002323722B88C3F34F +:1030D000402363722B88C3F38023A3722B88C3F32E +:1030E000C023E3722B88C3F3003323732B88C3F30D +:1030F000403363736B883B80AB8833806B89E3819B +:10310000AB8907EE903AF8EE677A9FED8B7A67EE1F +:10311000877AC7ED017AEB8907EE903AF8EE677A85 +:1031200067EE877AC7ED027A2B8A07EE903AF8EEBF +:10313000677A67EE877AC6ED017A6B8A07EE903A76 +:10314000F8EE677A67EE877AC6ED027AAA8A7B4B39 +:103150005A83EB8ABB812B8BB3816378002B00F001 +:10316000958001220821764803F0BBFBA378002B51 +:1031700000F0928001228021714803F0B2FBE378D5 +:10318000002B00F08F8001224FF48071694803F01A +:10319000A8FB2379002B00F08C80012210216848C5 +:1031A00003F09FFB6379002B00F0898001224FF42C +:1031B0008061644803F095FBA379002B00F08680C2 +:1031C00001220821604803F08CFB637A1BB1E3798C +:1031D000002B40F08180002201215B4803F081FB3D +:1031E00000224FF40061574803F07BFBA37A1BB128 +:1031F000237A002B40F0868000220221524803F0FF +:1032000070FB002220214E4803F06BFB237B1BB98F +:103210004E4B7B604E4BBB60637B1BB94B4B73606B +:103220004B4BB360BDE8F8834FF48071464803F020 +:1032300051FB01287FF426AF464805F0FBFF3C4BCD +:10324000186000287FF41EAFDFF80C91484606F0A6 +:1032500007F9DFF8DC80C8F80000484606F0DEF821 +:10326000C8F800001E222946484606F005F8C8F8AE +:1032700000001E222946484606F034F9C8F800002E +:10328000344805F0E9FFC8F80000FBE600220821F9 +:103290002B4803F026FB69E700228021284803F031 +:1032A00020FB6CE700224FF48071224803F019FBE9 +:1032B0006FE700221021224803F013FB72E700227F +:1032C0004FF480611F4803F00CFB75E700220821D2 +:1032D0001D4803F006FB78E747F6FF710320FFF770 +:1032E00005FE47F6FF710320FFF700FE01224FF4B1 +:1032F0000061144803F0F5FA01221146124803F068 +:10330000F0FA73E747F6FF710420FFF7EFFD47F689 +:10331000FF710420FFF7EAFD01222021084803F095 +:10332000E0FA01220221084803F0DBFA6EE700BF51 +:1033300088020020000C02400000803BB002002008 +:10334000000802400004024000000240000020414A +:103350000AD7233C90B8000894B800088446008837 +:10336000012304E03CF81320504001331BB28B4290 +:10337000F8DB704710B50E4B1B8841F211129342D7 +:1033800005D047F2777293420FD10E2400E00D244E +:103390002146FFF7E3FF074B1880074B33F8143043 +:1033A000984214BF0020012010BD0020FCE700BFA0 +:1033B000D2020020D00200209002002010B5044666 +:1033C00001210A4803F086FA08B1012010BD08481F +:1033D00005F030FF08B10120F8E71E22214605481C +:1033E00006F080F8024805F037FFEFE7000C0240D6 +:1033F00090B80008A0B8000838B5044601210D486F +:1034000003F068FA08B1012038BD0B4805F012FF3F +:1034100008B10120F8E7094D2B681E222146084813 +:1034200005F058FF2B681E332B60034805F014FF8E +:10343000EAE700BF000C024090B8000884020020B8 +:10344000A0B8000810B501210B4803F043FA08B1F9 +:10345000012010BD094805F0EDFE08B10120F8E794 +:10346000074C204605F0FCFF204605F0D7FF034837 +:1034700005F0F2FEEDE700BF000C024090B8000836 +:10348000A0B800088C4600220CE033B9074BDB697A +:1034900013F08003F9D00123F7E7815C034B9962B5 +:1034A000013292B26245F1D3704700BF0010014073 +:1034B0000D4B1B78002BFBD10C4BD3F8B82022F01E +:1034C0000102C3F8B820D3F8BC206FF30F021043F9 +:1034D000C3F8BC00D3F8B82042F00102C3F8B8200A +:1034E000014B01221A707047D8020020006402408C +:1034F00072B6FEE700B585B00023009301930293F6 +:1035000003932B482B4A02604FF4403242608360A1 +:1035100001220261836180F82030C3622649816202 +:10352000C3600521C16180F83030426101F0A2FF23 +:10353000002831D10923009301230193072302932B +:1035400069461B4802F07EF940BB08230093022322 +:1035500001936946164802F075F908BB02230093EF +:10356000032301936946124802F06CF9D0B90A238B +:1035700000930423019369460D4802F063F998B95A +:103580000B230093052301936946094802F05AF979 +:1035900060B905B05DF804FBFFF7AAFFFFF7A8FFCD +:1035A000FFF7A6FFFFF7A4FFFFF7A2FFFFF7A0FFBB +:1035B00004060020002001400100000F00B585B086 +:1035C000002300930193029303931448144A02606A +:1035D0004FF44032426083600361836180F82030A1 +:1035E000C362104A8262C3600122C26180F8303037 +:1035F000426101F03FFF68B90F230093012301935B +:10360000072302936946054802F01CF920B905B06A +:103610005DF804FBFFF76CFFFFF76AFFBC050020B5 +:10362000002201400100000F2DE9F041B4B000215B +:103630002D912E912F91309131913291339127918B +:10364000289129912A912B912C91902203A8FDF782 +:1036500083F84023039303A802F03AFD002840F0CA +:103660009E80504B5A6C42F010025A645A6C02F021 +:1036700010020292029A1A6B42F001021A631B6B4B +:1036800003F001030193019B4FF4007327934FF064 +:103690000208CDF8A0800327299700242A942B94B0 +:1036A00007262C96404D27A9284603F086FC4FF4A8 +:1036B00080632793CDF8A08029972A942B942C9689 +:1036C00027A9284603F079FC384BD3F8B82022F01C +:1036D000F05242F00062C3F8B820D3F8B82022F0CC +:1036E000C00242F04002C3F8B820D3F8B82042F438 +:1036F0004032C3F8B820D3F8B82022F49072C3F84F +:10370000B820D3F8B82022F40072C3F8B820D3F858 +:10371000B82042F48062C3F8B820D3F8B82022F46D +:10372000C052C3F8B820D3F8B82022F4C042C3F87E +:10373000B820D3F8CC2022F00402C3F8CC201C4BD4 +:10374000D86822462146C0F30220FDF777FE00012B +:10375000C0B2184B83F8250320225A604FF4E1339E +:103760002D932E942F9430940C23319332943394D0 +:1037700004F1804404F588342DA9204605F0D2FCDC +:10378000636823F490436360A36823F02A03A36073 +:10379000236843F00103236034B0BDE8F081FFF7F4 +:1037A000A7FE00BF00380240000002400064024053 +:1037B00000ED00E000E100E008B50848084B0360B8 +:1037C000B7234360002383600922C26003618361E1 +:1037D00005F098F800B908BDFFF78AFE080400203C +:1037E0000044014008B50B480B4B03604FF4E13334 +:1037F000436000238360C36003610C2242618361E4 +:10380000C3610362436207F0DCFF00B908BDFFF744 +:103810006FFE00BF34030020007C004000B589B07B +:103820000023049305930693079301930293039354 +:103830001348144A0260436083605B22C2600361E4 +:103840004361836105F05EF898B94FF480530493A7 +:1038500004A90B4805F098F968B900230193029375 +:10386000039301A9064805F021FB30B909B05DF8C2 +:1038700004FBFFF73DFEFFF73BFEFFF739FE00BFFD +:10388000A00400200004014000B589B0002301938A +:103890000293039304930593069307931448154AE0 +:1038A00002600122426083605B22C2600361802368 +:1038B000836105F027F8A8B90D4805F053F898B9C9 +:1038C000602301935B23029300220392059201A9D6 +:1038D000074805F0AFF848B9054801F089FC09B080 +:1038E0005DF804FBFFF704FEFFF702FEFFF700FEA2 +:1038F000BC0300200048014000B58FB000230A93AC +:103900000B930C930D9307930893099300930193E2 +:10391000029303930493059306931E481E4A026084 +:10392000436083602D22C2600361836104F0EAFF7B +:1039300030BB4FF480530A930AA9164805F024F9C6 +:1039400000BB144805F00EF8F0B900230793099363 +:1039500007A9104805F0AAFAC0B9602300931623FE +:10396000019300230293049308226946094805F055 +:1039700061F868B9074801F03BFC0FB05DF804FB43 +:10398000FFF7B6FDFFF7B4FDFFF7B2FDFFF7B0FD9F +:10399000FFF7AEFDEC0400200008004010B596B023 +:1039A000002412941394149415940B940C940D9475 +:1039B0000E940F94109411942C2221466846FCF723 +:1039C000CBFE2548254B0360446084600823C36018 +:1039D00004614461846104F095FF002832D14FF402 +:1039E0008053129312A91C4805F0CEF800282BD161 +:1039F000194804F0B7FF48BB60230B9304230C93D2 +:103A000000220D920F920BA9134805F013F8F8B994 +:103A10000023009301930293039304934FF4005205 +:103A20000592069307934FF00072089209930A9348 +:103A30006946094805F08AFA60B9074801F0D8FBE1 +:103A400016B010BDFFF754FDFFF752FDFFF750FD14 +:103A5000FFF74EFDFFF74CFD54040020000001402D +:103A600000B595B03422002107A8FCF775FE0023AD +:103A700002930393049305930693244B1A6C42F02C +:103A800080521A641B6C03F080530093009B204B00 +:103A90001A6842F440421A601B6803F440430193E1 +:103AA000019B012307934FF48033089302230D9366 +:103AB0004FF480020E9219220F924FF4B8721092B6 +:103AC000119308221292139307A801F0AFFFB0B927 +:103AD00002F016FFA8B90F230293022303930023D9 +:103AE00004934FF4A05305934FF48053069306219B +:103AF00002A802F011FA30B915B05DF804FBFFF727 +:103B0000F7FCFFF7F5FCFFF7F3FC00BF00380240BD +:103B1000007000402DE9F04385B002F0CBFFFFF7C5 +:103B20009FFFFEF7CFFBFDF7BBFCFEF715FD00F096 +:103B3000C5FEFEF7BFFEFEF70BFFFFF7DBFCFFF74E +:103B40003DFDFEF773FDFEF7E5FDFEF74BFEFFF7CB +:103B50006BFDFDF793FCFEF747FFFEF78BFFFFF7CA +:103B60002BFEFFF73FFEFFF759FEFFF78DFEFFF735 +:103B7000C3FEFFF713FFFEF7C3FF894A3523D36265 +:103B8000D36A01335B08013BD363D36A9B000333E1 +:103B900002F5A032D362D36A01335B08013B536361 +:103BA0000021804805F080F84CE07F4B1B78002B0B +:103BB0004FD17E4A52E8003F43F4807342E800311F +:103BC0000029F6D1794A52E8003F43F0200342E849 +:103BD00000310029F6D1754A02F1080353E8003F8D +:103BE00043F00103083242E800310029F3D1704B61 +:103BF000002283F8252320225A606B4B01221A7081 +:103C000027E06C4B00221A706B4B5A681A61FEF762 +:103C100049FB6A4B1B78022B00F0F384032B00F066 +:103C20002685012B09D1664C02212046FFF72AFC8C +:103C3000002323706370614A1370624B1B78012B61 +:103C400000F017854FF480715F4802F043FE0128B1 +:103C5000ABD05E4B1B780C2BDBD801A252F823F0C3 +:103C6000033C0008953C0008FF3C0008353D000877 +:103C7000653D0008753D0008913D0008F93D0008CC +:103C80002F410008754100084D3F000829400008F9 +:103C9000794000084E4C0D212046FFF75FFB4D4B4D +:103CA00018802046FFF766FB70B9454A137843F049 +:103CB00004031370454B02221A703E4B00221A7007 +:103CC0003E4B01221A70A4E7434A136843F04003B5 +:103CD000136002F58E32136843F0400313603F4BCC +:103CE0003F4A40492046FFF7BDF93F4B1A683F4B1A +:103CF0001A600723354A13702E4A1370E0E72E4BE3 +:103D00005A681A61FEF7CEFAFEF7FAFE324A1368D5 +:103D100023F04003136002F58E32136823F0400352 +:103D200013600023294A1370224A1370234B012287 +:103D30001A706EE72E48FFF75FFB82B22D4B1A8098 +:103D40001F490B7803430B7042B91C4B03221A70B6 +:103D50000023184A13701D4A13705AE7174B0122AB +:103D60001A70F5E7154B02221A70124B1A78174B8E +:103D70001A704EE7FFF766FB114A1378034313707E +:103D80000E4B01221A700B4B1A78104B1A7040E739 +:103D90000A4B01221A70074B1A780C4B1A7038E73D +:103DA0000008004054040020D70200200010014009 +:103DB00000E100E0FF020020C0010020FE02002020 +:103DC000FC020020D9020020000002400003002075 +:103DD00090020020D0020020003800402C02002079 +:103DE0006002002070020020300300202C0300201D +:103DF000B0020020CE020020B24B5A681A61FEF7D2 +:103E000051FAB14B1B68B14A126893427FF601AF79 +:103E1000AE4A13600120FEF735F9AD4F388101201D +:103E2000FEF730F938810220FEF72CF9A94E3081D7 +:103E30000220FEF727F930810320FEF723F9032043 +:103E4000FEF720F938800420FEF71CF90420FEF765 +:103E500019F93080DFF8AC82012239464046FDF77F +:103E600019FC01469C4D28800320FFF73FF8DFF83E +:103E70009892022231464846FDF70CFC0146288004 +:103E80000420FFF733F83B89944C63803389A38087 +:103E9000B8F80C100120FFF729F8B9F80C1002202F +:103EA000FFF724F80020FEF7E9FF28800120FEF745 +:103EB000E5FF2880E0810120FEF7E0FF28802082D6 +:103EC0000120FEF7DBFF288060820120FEF7D6FF8D +:103ED0002880A0820120FEF7D1FF2880E082022006 +:103EE000FEF7CCFF28800320FEF7C8FF28800420BF +:103EF000FEF7C4FF288020830520FEF7BFFF28803F +:103F0000774B1B68774A1360E3801B0C23813B8847 +:103F100063813388A381744BDB7A012B03D0734B0D +:103F200007221A7075E602340D212046FFF716FAB3 +:103F300003466F4A1080A01E8383FFF73FFA0346B3 +:103F400028806C490A7813430B70E8E76A4C032118 +:103F50002046FFF703FAE38898420CD0654A1378AD +:103F600043F004031370654B01221A705F4B1A78FB +:103F7000634B1A704DE623886188A48803F001061C +:103F8000C3F3400513F0040F1FD013F0080F05D141 +:103F900004F00F070C4641F6FF7100E00127009185 +:103FA0002B463A4621463046FDF76AFE514B587083 +:103FB0003B4622463146FDF76DFD0028D3D04D4AE1 +:103FC000137863F07F031370CDE705B10225CFB2FC +:103FD000C1F30328214309D01FB13F2F02D93F2746 +:103FE00000E001273CB94FF6FF7404E04FF6FF7480 +:103FF0004FF002080127009443463A4631462846CE +:10400000FDF7E0FE3B4B58700194CDF800803B4635 +:104010002A463146FDF7C7FD0028A4D0354A13785B +:1040200063F07F0313709EE7324B00225A70324CCC +:1040300003212046FFF792F9E38898420CD02D4ADD +:10404000137843F0040313702C4B01221A70274B92 +:104050001A782B4B1A70DCE520886388C3F30D03B4 +:10406000A288C2F30D0243EA8232C0F3400100F09D +:104070000100FDF74DFFE7E71F4C03212046FFF746 +:104080006DF9E38898420CD01A4A137843F0040380 +:1040900013701A4B01221A70144B1A78184B1A70AD +:1040A000B7E5234624885A889B88C4F3400104F06E +:1040B00001000C422AD00F4A137843F00403137016 +:1040C000E7E700BFC0010020180300201403002010 +:1040D0000C02002000020020CE020020B0020020CE +:1040E00030030020280300202C020020FF020020C3 +:1040F000D0020020FC02002090020020FE020020DE +:104100000003002070020020600200201AB1402A43 +:1041100002D9402200E001222BB1B3F5FA7F03D986 +:104120004FF4FA7300E00223FEF772FEB1E79848FD +:10413000FFF720F970B9974A137843F0040313701E +:10414000954B02221A70954B00221A70944B012253 +:104150001A705EE5934B944A94498D48FDF7C4F973 +:10416000934B1A68934B1A6009238B4A13708B4A3E +:104170001370EBE7904B1B78012B23D0022B00F040 +:104180003F818E4B1B688E4A1268934200F2E68193 +:104190008C4B1B78002BFBD0FEF784F8864BDB8A18 +:1041A000032B0BD9884B1A68884BDA60824B1B7D36 +:1041B000874AA2FB0323DB08864A1360774B092258 +:1041C0001A7026E57C4BD3ED077AFCEEE77A17EE02 +:1041D000903A99B20220FEF789FE0320FDF752FFC4 +:1041E0000320FDF74FFF7C4C20800420FDF74AFFA1 +:1041F0000420FDF747FF794D2880012221466B48B6 +:10420000FDF748FA0146764C20800320FEF76EFE4B +:10421000022229466448FDF73DFA01462080042029 +:10422000FEF764FE6F4C01228021204602F059FB0C +:1042300000228021204602F054FB644804F0AEF9CD +:10424000002875D15C4B93ED027AD3ED047A37EEFA +:10425000677AD3ED036AC7EE267AB2EE047A67EE88 +:10426000877AFCEEE77ACDED037A9DF80C60DFF8F3 +:1042700084910021484604F0C3FDDFF87C810821C9 +:10428000404604F0BDFD584F3B6823F008033B60F7 +:10429000564D2B6823F008032B6000247C626C626F +:1042A0002146484604F000FD0821404604F0FCFC8D +:1042B000EB6A143B6B627C6225463F4BD3ED047A7C +:1042C00093ED027AF4EEC77AF1EE10FA37D53D4B52 +:1042D0001B78002BF1D0FCEEE77A17EE903A99B2FA +:1042E0000120FEF703FE344BD3ED047A93ED037AFD +:1042F00077EE877AC3ED047A00273D4B1F60314B80 +:104300001F70DFF8F88001224FF40071404602F080 +:10431000E8FA3A464FF40071404602F0E2FAB4FB84 +:10432000F6F306FB13439BB21BB10134A4B2C4E7FE +:10433000FEE7E8B2FDF714FE0135ADB2F5E72A4A13 +:10434000D36843F00103D360FDF7ACFF1A4CD4ED02 +:10435000017AC4ED047AFCEEE77A17EE903A99B24E +:104360000120FEF7C3FDE38A032B0CD9174AD0685E +:104370001549086042F20F71D160013B642202FBD3 +:1043800003F3144A1360114804F008F9F9E600BF7A +:1043900090020020FC02002000030020FF02002009 +:1043A000FE0200202C02002060020020700200208B +:1043B000300300202C030020C0010020180300203F +:1043C00014030020D602002004030020080400206B +:1043D000CDCCCCCC080300200C0200200002002031 +:1043E000CE020020000C02400048014000080040BE +:1043F0000C030020BC030020EC0400200018024045 +:10440000A74BD3ED077AFCEEE77A17EE903A99B214 +:104410000120FEF76BFD0320FDF734FE0320FDF7BE +:1044200031FEA04C20800420FDF72CFE0420FDF777 +:1044300029FE9D4D2880012221469C48FDF72AF93E +:1044400001469B4C20800320FEF750FD02222946A6 +:104450009848FDF71FF9014620800420FEF746FD2D +:10446000954B02221A7000229A721A814FF47A72C6 +:104470001A81924A5A6080225A80914B42F21072FD +:10448000DA62904804F08AF878BB012280218E48D5 +:1044900002F027FA42F21073013BFDD10022802185 +:1044A000894802F01EFA844B02229A72874804F06F +:1044B00075F8D8B97A4BD3ED047A93ED027AF4EE1D +:1044C000C77AF1EE10FA12D5814B1B78002BF1D090 +:1044D000734B93ED037A77EE277AC3ED047A0023CA +:1044E0007C4A13607A4A1370E4E7FEE7FEE77748F8 +:1044F00004F03FF8744C01228021204602F0F1F9CB +:1045000000228021204602F0ECF96E4804F08EF87B +:104510006B4B00225A62FDF7C5FE614CD4ED017A67 +:10452000C4ED047AFCEEE77A17EE903A99B20220D5 +:10453000FEF7DCFCE38A032B0CD9644AD068664999 +:10454000086042F20F71D160013B642202FB03F369 +:10455000624A13605D4804F021F812E6604A136075 +:104560000120FDF78FFD4F4E30810120FDF78AFDC0 +:1045700030810220FDF786FD4B4F38810220FDF788 +:1045800081FD38813389574C6380A0800020FEF77D +:1045900075FC474D28800120FEF770FC2880E081E3 +:1045A0000120FEF76BFC288020820120FEF766FCCC +:1045B000288060820120FEF761FC2880A082012013 +:1045C000FEF75CFC2880E0820220FEF757FC288082 +:1045D0000320FEF753FC28800420FEF74FFC2880C0 +:1045E00020830520FEF74AFC28803F4B1B683F4A8A +:1045F0001360E3801B0C2381338863813B88A38194 +:10460000C6E53B4C0D212046FEF7A8FE394B18802D +:10461000608300230BE0334A32F8132059003648F8 +:1046200000F813200131120A425401339BB20E2BC1 +:10463000F1D91E20FEF73CFF304B00221A70FFF725 +:10464000FCBA284A32F8132059002B4800F81320EE +:104650000131120A425401339BB20E2BF1D91E20B4 +:10466000FEF726FF254B00221A70FFF7E6BA00235B +:10467000F3E71D4B1B68224A12689B1A642B7FF6D6 +:10468000E1AA00221F4B1A801F490B7843F0020356 +:104690000B701A4B012119701C4B1A70FFF7D2BA1C +:1046A000C00100200C020020000200207002002047 +:1046B000CE02002060020020F4010020000402402D +:1046C00000040140A0040020000C02400804002067 +:1046D000D60200200C030020040300200803002061 +:1046E00014030020B0020020300300202803002023 +:1046F000B2020020D0020020DC020020FE020020D6 +:1047000024030020D4020020FC020020D902002053 +:1047100000B583B0009313460A460146034803F0F0 +:1047200055F900B1012003B05DF804FB3805002005 +:1047300000B583B0009313460A460146034803F0D0 +:1047400069FA00B1012003B05DF804FB38050020D0 +:1047500008B5034803F09CFD043818BF012008BDCC +:104760003805002008B50146014803F01EFD08BDCC +:104770003805002000B583B001238DF8073000F024 +:10478000ADF810B900238DF807309DF8070003B08D +:104790005DF804FB38B5FFF7EDFF012802D00225D4 +:1047A000284638BD0446074803F0E4FC05460028C7 +:1047B000F6D14FF40061034803F00AFD0028EFD062 +:1047C0002546EDE73805002008B5074B01221A7091 +:1047D000FFF7BEFF20B9044A137803F0FE031370FD +:1047E000014B187808BD00BF5000002010B50446EA +:1047F000074B01221A70FFF7CDFF10B1044B187858 +:1048000010BD2046FFF7E0FF014B1870F6E700BF30 +:104810005000002008B5FFF7D7FF08BD08B50846CF +:1048200011461A464FF0FF33FFF772FF30B9FFF71A +:104830008FFF03460028FAD1184608BD0123FBE785 +:1048400008B5084611461A464FF0FF33FFF770FFD0 +:1048500030B9FFF77DFF03460028FAD1184608BD9E +:104860000123FBE730B589B0134B187810F0010431 +:104870001BD1154603291CD8DFE801F002040A10F9 +:104880000C4613E06846FFF76DFF069B2B600DE0BA +:104890006846FFF767FF079B2B8007E06846FFF736 +:1048A00061FF079B5B0A2B6000E00324204609B0F0 +:1048B00030BD0424FAE700BF5000002008B50349CA +:1048C000034806F07BFC034B187008BD4C06002023 +:1048D000CCBB0008500600200020704708B501211D +:1048E000034801F0F7FF08B9012008BD0020FCE7EC +:1048F000000C0240FEE7FEE7FEE7FEE7FEE770473A +:104900007047704708B502F0E1F808BD08B50348E4 +:1049100000F0FDFE024800F0FAFE08BD040600208B +:10492000BC05002008B5084A136801331360074A24 +:104930001268934203D0064803F097FE08BD054B6A +:1049400001221A70F7E700BF0C03002008030020C3 +:1049500008040020D602002008B5094B1A6842F06E +:1049600008021A6007490A6842F008020A60DA6819 +:1049700022F00102DA60044803F077FE08BD00BFB0 +:104980000048014000080040BC03002070470000C0 +:1049900010B5114B9B7A022B0ED0032B18D100219E +:1049A0000220FEF7A3FA0C4C00226188606801F037 +:1049B00098FF0223A3720BE0074C21890220FEF727 +:1049C00095FA01226188606801F08BFF0323A372CE +:1049D000024803F04AFE10BDF4010020A0040020AC +:1049E0007047000008B5094B1B6913F0010F0BD08D +:1049F000064B6FF001021A61054A13680133136018 +:104A00000221044801F073FF08BD00BF0010004000 +:104A100030030020000C0240064B1B6913F0010F0D +:104A200007D0044B6FF001021A61034A1368013387 +:104A300013607047001400401803002010B4994B15 +:104A40005A6AD2B2984B1A70984B1B881F2B00F2EF +:104A5000B381DFE813F020002F00B101B101B101F3 +:104A6000B101B101B101B101AF00B101B101B101B9 +:104A7000B101B101B101B101B101B101B101B101A6 +:104A8000B101B101B101B101B101B101B101B10196 +:104A90003D01B10177018649086886490860864969 +:104AA0000120087085490A800344804A13805DF81C +:104AB000044B704781490B8803EB02239BB20B80A8 +:104AC00046F26662934256D026D843F2333293427E +:104AD0003FD010D841F21112934236D042F2222236 +:104AE000934259D10023714A1380734A1370744B57 +:104AF00002221A70DBE744F24442934232D045F27C +:104B00005552934248D10023684A13806A4A137071 +:104B10006B4B05221A70CAE749F69912934237D0B7 +:104B20000BD847F2777293422ED048F68802934210 +:104B300032D15E4B02221A80B9E74AF6AA2293428A +:104B40002AD15A4B02221A80B1E7584B02221A800E +:104B5000ADE70023554A1380574A1370584B032280 +:104B60001A70A4E70023514A1380534A1370544B20 +:104B700004221A709BE700234C4A13804E4A13709C +:104B80004F4B06221A7092E7484B02221A808EE79A +:104B9000464B02221A808AE70023444A1380464A81 +:104BA0001370484A137843F002031370444B0222F7 +:104BB0001A707CE74149098848F6880081421AD07A +:104BC00049F69910814231D04AF6AA20814248D054 +:104BD00013F0010F60D0590801393B4C34F8110033 +:104BE00000EB022224F811200133304A1380374BA6 +:104BF00000221A705BE713F0010F11D05B08013B34 +:104C0000314830F8131001EB022220F813202C4B0E +:104C10000A221A700023254A1380274A137046E798 +:104C20005B08013B284921F81320F0E713F0010F3E +:104C300011D05B08013B244830F8131001EB02222D +:104C400020F813201E4B0B221A700023174A1380E2 +:104C5000194A13702BE75B08013B1B4921F813200D +:104C6000F0E713F0010F11D05B08013B164830F854 +:104C7000131001EB022220F81320114B0C221A70A2 +:104C800000230A4A13800C4A137010E75B08013BAB +:104C90000D4921F81320F0E7590801390A4820F896 +:104CA0001120A1E70010014001030020D4020020E0 +:104CB0003003002024030020D9020020D20200206B +:104CC00000030020FC02002090020020FE020020D1 +:104CD0004649088841F21111884212D013F0010FA1 +:104CE0002AD059080139424C34F8110000EB022255 +:104CF00024F8112001333F4A13803F4B00221A70E1 +:104D0000D5E613F0010F11D05B08013B384830F8AD +:104D1000131001EB022220F81320384B01221A70E5 +:104D20000023344A1380364A1370C0E65B08013B07 +:104D30002F4921F81320F0E7590801392C4820F8B1 +:104D40001120D7E72949088847F27771884212D0A5 +:104D500013F0010F2AD059080139254C34F81100FD +:104D600000EB022224F811200133224A1380224B47 +:104D700000221A709BE613F0010F11D05B08013B73 +:104D80001B4830F8131001EB022220F813201B4BB4 +:104D900008221A700023174A1380194A137086E6F6 +:104DA0005B08013B124921F81320F0E7590801394B +:104DB0000F4820F81120D7E713F0010F0FD0590842 +:104DC00001390B4C34F8110000EB022224F81120B9 +:104DD0000133084A1380084B00221A7067E659080D +:104DE0000139034820F81120F2E700BFD202002069 +:104DF00090020020D4020020FE02002000030020C8 +:104E0000D902002000B583B0304BDB6913F0200FCE +:104E100007D02E4B1B6813F0200F02D0FFF70EFEB9 +:104E200033E02A4BDB6913F0080F25D1274BDB69F0 +:104E300013F0020F2CD1254BDB6913F0040F31D195 +:104E4000224BDB6913F0010F36D1214BDB6913F0E4 +:104E5000400F1AD01E4B1B6813F0400F15D01B4B90 +:104E600040221A62194A52E8003F23F0400342E808 +:104E700000310029F6D108E0144B5B6A9DF8072049 +:104E800052FA83F3DBB28DF8073003B05DF804FB10 +:104E90000E4B5B6A9DF8072052FA83F3DBB28DF864 +:104EA0000730F2E7094B5B6A9DF8072052FA83F35B +:104EB000DBB28DF80730E8E7044B5B6A9DF807200A +:104EC00052FA83F3DBB28DF80730DEE700100140C1 +:104ED00000140140024B4FF00062DA60704700BFDF +:104EE0000064024008B50A4B5B6813F0006F09D1FB +:104EF000074B5B6813F0007F03D0054B4FF0007247 +:104F0000DA6008BDFFF7E6FF024B00221A70F8E7EF +:104F100000640240D802002082B00A4B1A6C42F0B2 +:104F200080521A641A6C02F080520092009A5A6CF5 +:104F300042F480425A645B6C03F480430193019B0A +:104F400002B070470038024030B58DB0002307939F +:104F5000089309930A930B930368384A934204D049 +:104F6000374A934246D00DB030BD364B5A6C42F4AE +:104F700080725A645A6C02F480720192019A1A6B20 +:104F800042F004021A631A6B02F004020292029ABF +:104F90001A6B42F001021A631A6B02F001020392CB +:104FA000039A1A6B42F002021A631B6B03F00203AE +:104FB0000493049B03240794089407A9224801F052 +:104FC00087FB0423079308940025099507A91F4828 +:104FD00001F07EFB07940894099507A91C4801F08D +:104FE00077FB2A462946122001F00CFD122001F021 +:104FF00019FDB8E7134B5A6C42F480625A645A6C3C +:1050000002F480620592059A1A6B42F020021A633C +:105010001B6B03F020030693069B202307930323B7 +:10502000089307A90B4801F053FB002211461220F8 +:1050300001F0E8FC122001F0F5FC94E700200140AB +:1050400000220140003802400008024000000240F7 +:105050000004024000140240F0B5ADB00446002147 +:105060002791289129912A912B91902203A8FBF74F +:1050700073FB2268224B9A4201D02DB0F0BD4FF451 +:105080002003039303A801F023F8002835D11D4B1A +:105090005A6C42F400625A645A6C02F40062009244 +:1050A000009A1A6B42F004021A631A6B02F00402AF +:1050B0000192019A1A6B42F008021A631B6B03F00B +:1050C00008030293029B4FF4F85327930227289773 +:1050D0000026299603252A950C242B9427A90A48F3 +:1050E00001F0F6FA04232793289729962A952B9402 +:1050F00027A9064801F0ECFABFE7FEF7F9F9C6E781 +:10510000002C01400038024000080240000C024020 +:1051100000B587B00368304A93421ED02F4A9342AD +:1051200028D02F4A934230D02E4A934240D02E4A64 +:1051300093421CD12D4B5A6C42F480225A645B6C12 +:1051400003F480230593059B002211461A2001F0E9 +:1051500059FC1A2001F066FC09E0244B1A6C42F05D +:1051600004021A641B6C03F004030193019B07B053 +:105170005DF804FB1D4B5A6C42F001025A645B6CF3 +:1051800003F001030293029BF1E7184B5A6C42F0C3 +:1051900002025A645B6C03F002030393039B002238 +:1051A00011462C2001F02EFC2C2001F03BFCDEE708 +:1051B0000E4B5A6C42F400325A645B6C03F40033B9 +:1051C0000493049B00221146192001F01BFC1920B6 +:1051D00001F028FCCBE700BF0008004000000140C0 +:1051E00000040140004401400048014000380240F2 +:1051F00000B589B0002303930493059306930793A6 +:105200000368274A934208D0264A93421AD0264A76 +:1052100093422FD009B05DF804FB244B1A6B42F087 +:1052200002021A631B6B03F002030093009B4FF40E +:105230008073039302230493079303A91C4801F08E +:1052400047FAE7E7194B1A6B42F010021A631B6B1F +:1052500003F010030193019B4FF4007303930223A7 +:105260000493032306930123079303A9114801F034 +:105270002FFACFE70D4B1A6B42F002021A631B6B39 +:1052800003F002030293029B4FF400730393022383 +:1052900004930323079303A9054801F019FAB9E71A +:1052A0000008004000000140004801400038024072 +:1052B000000402400010024010B5ACB004460021CA +:1052C0002791289129912A912B91902203A8FBF7ED +:1052D00043FA2268174B9A4201D02CB010BD4FF40C +:1052E0000053039303A800F0F3FE00BB124B1A6CAB +:1052F00042F000421A641A6C02F000420192019AD4 +:105300001A6B42F010021A631B6B03F01003029336 +:10531000029B0323279302222892002229922A9398 +:1053200008232B9327A9054801F0D2F9D5E7FEF70A +:10533000DFF8DBE7007C004000380240001002404C +:105340004A4B5A6822F440325A605A6841680A430C +:105350005A600268536823F480735360026853688C +:10536000016943EA012353600268536823F04073E4 +:1053700053600268536881680B4353600268936806 +:1053800023F40063936002689368C1680B439360E1 +:10539000826A374B9A4257D00268936823F0706351 +:1053A000936002689368816A0B4393600268936814 +:1053B00023F04053936002689368C16A0B43936083 +:1053C0000268936823F0020393600268936881691E +:1053D00043EA4103936090F82030002B3FD00268ED +:1053E000536843F4006353600268536823F46043D6 +:1053F000536001684B68426A013A43EA42334B60AA +:105400000268D36A23F47003D3620168CB6AC2696D +:10541000013A43EA0253CB620268936823F40073B3 +:1054200093600268936890F8301043EA41239360D8 +:105430000268936823F4806393600268936841690B +:1054400043EA8123936070470268936823F0706396 +:1054500093600268936823F040539360B0E702685A +:10546000536823F400635360CAE700BF0023014080 +:105470000100000F28B310B50446036C43B1236C40 +:1054800013F0100F0BD00120002384F83C3010BD26 +:10549000FFF75AFD0023636484F83C30EFE7226C89 +:1054A000094B134043F0020323642046FFF748FFF3 +:1054B00000206064236C23F0030343F001032364A2 +:1054C000E2E70120704700BFFDEEFFFF82B000233E +:1054D000019390F83C30012B7ED0012380F83C30C2 +:1054E00003689A6812F0010F13D19A6842F0010222 +:1054F0009A603D4B1B683D4AA2FB03239B0C03EBC8 +:105500004303019302E0019B013B0193019B002BAC +:10551000F9D103689A6812F0010F52D0016C344A35 +:105520000A4042F4807202645A6812F4806F05D017 +:10553000026C22F4405242F480520264026C12F473 +:10554000805F19D0426C22F006024264002280F88B +:105550003C206FF022021A60264B5B6813F01F0F8D +:105560000DD103689A6812F0405F37D19A6842F013 +:1055700080429A6000202DE000224264E6E7036842 +:105580001D4A93420AD01B4B5B6813F0100F27D1C2 +:1055900003681A4A93420AD000201BE09A6812F06E +:1055A000405FF0D19A6842F080429A60EBE79A68D7 +:1055B00012F0405F16D19A6842F080429A60002053 +:1055C00008E0036C43F010030364436C43F00103F1 +:1055D0004364002002B070470220FBE70020F9E797 +:1055E0000020F7E70020F5E75800002083DE1B438A +:1055F000FEF8FFFF0023014000200140002201408F +:1056000090F83C30012B17D0012380F83C30026821 +:10561000936823F00103936003689B6813F0010F04 +:1056200005D1026C054B134043F0010303640023D2 +:1056300080F83C301846704702207047FEEEFFFFAE +:1056400070B504460D4603689A6812F4806F03D063 +:105650009B6813F4807F19D101F044FA0646236851 +:105660001A6812F0020F20D1B5F1FF3FF7D0B5B99B +:1056700023681B6813F0020FF1D1236C43F004037D +:105680002364002384F83C30032033E0036C43F0B0 +:1056900020030364002380F83C3001202AE001F05D +:1056A00021FA801BA842DAD9E2E76FF012021A60F1 +:1056B000236C43F40073236423689A6812F0405FFC +:1056C00017D1A269BAB9DA6A12F4700F03D09B68D5 +:1056D00013F4806F11D1236C23F480732364236C43 +:1056E00013F4805F0BD1236C43F00103236400208B +:1056F00000E0002070BD0020FCE70020FAE7002059 +:10570000F8E70368D86C704770477047704770B50A +:10571000044603681E685D68C5F3401212EA56022B +:105720002CD0026C12F0100F03D1026C42F4007204 +:1057300002649A6812F0405F19D1A269BAB9DA6AB4 +:1057400012F4700F03D09A6812F4806F0FD15A6868 +:1057500022F020025A60236C23F480732364236CAC +:1057600013F4805F03D1236C43F0010323642046CC +:10577000FFF7CAFF23686FF012021A60C5F3C01367 +:1057800013EA960335D0236C13F0100F03D1236C6A +:1057900043F40053236423689A6812F4401F21D114 +:1057A0009A6B12F4401F03D09A6812F4806F19D1DB +:1057B0005A6812F4806F15D19A6812F0405F11D1C7 +:1057C000A2697AB95A6822F080025A60236C23F4E5 +:1057D00080532364236C13F4807F03D1236C43F044 +:1057E00001032364204600F01FF923686FF00C02C8 +:1057F0001A60C5F380131E4204D023681B6813F09F +:10580000010F05D1C5F3806515EA56150CD170BDA1 +:10581000236C43F4803323642046FFF776FF23682C +:105820006FF001021A60EDE7636C43F002036364FA +:1058300023686FF020051D602046FFF767FF23688F +:105840001D60E4E730B482B00022019290F83C2061 +:10585000012A00F0DC800346012280F83C200A681F +:10586000B2F1004F18BF092A22D90468E06892B249 +:1058700002EB42021E3A4FF0070C0CFA02F220EA49 +:105880000202E2600A68634882420AD01D68E86842 +:105890008C6892B202EB42021E3A94402043E860C8 +:1058A0001CE01868C2688C6842EA0462C26015E0B5 +:1058B0000468206992B202EB42024FF0070C0CFA26 +:1058C00002F220EA020222611C6820690A8802EBC7 +:1058D00042028D6805FA02F2024322614A68062AF2 +:1058E00029D81C68606B02EB8202053A4FF01F0C4E +:1058F0000CFA02F220EA020262631C68606B4A68DA +:1059000002EB8202053AB1F800C00CFA02F202433F +:1059100062631868404A90423DD018683E4A9042FF +:1059200043D018683C4A90424CD0002083F83C0099 +:1059300002B030BC70470C2A16D81D68286B02EBE9 +:105940008202233A1F2404FA02F220EA02022A63A6 +:105950001D68286B4A6802EB8202233A0C8804FA1D +:1059600002F202432A63D4E71D68E86A02EB82026E +:10597000413A1F2404FA02F220EA0202EA621D6898 +:10598000E86A4A6802EB8202413A0C8804FA02F2A1 +:105990000243EA62BDE70A68B2F1004FBDD11F4879 +:1059A000426822F440024260B7E70A68122AB8D17E +:1059B0001A4A506820F400005060506840F480009B +:1059C0005060AEE70A681348112A18BF8242ACD172 +:1059D000124A506820F480005060506840F4000083 +:1059E000506009680B4A91429FD10D4A12680D49D7 +:1059F000A1FB0212920C02EB82025200019202E021 +:105A0000019A013A0192019A002AF9D18DE7022008 +:105A10008EE700BF1200001000200140002301406B +:105A20005800002083DE1B4370470000002800F070 +:105A3000068270B582B00446036813F0010F29D0C6 +:105A4000954B9B6803F00C03042B1AD0924B9B6878 +:105A500003F00C03082B0FD06368B3F5803F40D0F0 +:105A6000002B54D18C4B1A6822F480321A601A68C9 +:105A700022F480221A6039E0874B5B6813F4800FB0 +:105A8000EAD0854B1B6813F4003F03D06368002BFA +:105A900000F0D781236813F0020F74D07E4B9B680F +:105AA00013F00C0F5ED07C4B9B6803F00C03082BAB +:105AB00053D0E368002B00F08980774A136843F0E5 +:105AC0000103136001F00EF80546734B1B6813F0D9 +:105AD000020F72D101F006F8401B0228F5D903200D +:105AE000B4E16D4A136843F48033136063682BB3E9 +:105AF00000F0F8FF0546684B1B6813F4003FC9D15E +:105B000000F0F0FF401B6428F5D903209EE1B3F5B7 +:105B1000A02F09D0604B1A6822F480321A601A68EC +:105B200022F480221A60E1E75B4B1A6842F480227B +:105B30001A601A6842F480321A60D7E700F0D2FF88 +:105B40000546554B1B6813F4003FA3D000F0CAFF75 +:105B5000401B6428F5D9032078E14F4B5B6813F4B0 +:105B6000800FA6D14C4B1B6813F0020F03D0E368E3 +:105B7000012B40F06881484A136823F0F80321693B +:105B800043EAC1031360236813F0080F46D063692A +:105B900083B3414A536F43F00103536700F0A2FF00 +:105BA00005463D4B5B6F13F0020F37D100F09AFFB3 +:105BB000401B0228F5D9032048E1374A136823F037 +:105BC000F803216943EAC1031360DCE7324A136832 +:105BD00023F00103136000F085FF05462E4B1B6880 +:105BE00013F0020FCFD000F07DFF401B0228F5D943 +:105BF00003202BE1284A536F23F00103536700F081 +:105C000071FF0546244B5B6F13F0020F06D000F0C6 +:105C100069FF401B0228F5D9032017E1236813F020 +:105C2000040F7DD01C4B1B6C13F0805F1ED11A4BF0 +:105C30001A6C42F080521A641B6C03F0805301937B +:105C4000019B0125154B1B6813F4807F10D0A368BE +:105C5000012B25D0002B3BD10F4B1A6F22F00102F4 +:105C60001A671A6F22F004021A671EE00025E9E79E +:105C70000A4A136843F48073136000F033FF06464A +:105C8000064B1B6813F4807FE1D100F02BFF801BD3 +:105C90006428F5D90320D9E00038024000700040A4 +:105CA000724A136F43F001031367A36833B300F024 +:105CB00019FF06466D4B1B6F13F0020F2FD100F03A +:105CC00011FF801B41F288339842F3D90320BDE0D5 +:105CD000052B09D0654B1A6F22F001021A671A6F63 +:105CE00022F004021A67E0E7604B1A6F42F00402E8 +:105CF0001A671A6F42F001021A67D6E700F0F2FE47 +:105D000006465A4B1B6F13F0020F08D000F0EAFE54 +:105D1000801B41F288339842F3D9032096E0FDB905 +:105D2000A369002B00F09180504A926802F00C02A7 +:105D3000082A59D0022B19D04C4A136823F08073DB +:105D4000136000F0CFFE0446484B1B6813F0007F41 +:105D500048D000F0C7FE001B0228F5D9032075E0EB +:105D6000424A136C23F080531364D9E73F4A136807 +:105D700023F08073136000F0B5FE05463B4B1B68B3 +:105D800013F0007F06D000F0ADFE401B0228F5D9CD +:105D900003205BE0E369226A1343626A43EA8213E9 +:105DA000A26A5208013A43EA0243E26A43EA026302 +:105DB000226B43EA02732D4A5360136843F08073E9 +:105DC000136000F08FFE0446284B1B6813F0007F21 +:105DD00006D100F087FE001B0228F5D9032035E02C +:105DE000002033E0002031E0204A5268012B2FD000 +:105DF00002F48003E1698B422CD102F03F03216A57 +:105E00008B4229D1616A47F6C0731340B3EB811FFF +:105E100024D102F44031A36A5B08013BB1EB034F8C +:105E20001ED102F07063E16AB3EB016F1AD102F088 +:105E3000E042236BB2EB037F16D1002006E0012085 +:105E40007047012002E0012000E0002002B070BD98 +:105E50000120FBE70120F9E70120F7E70120F5E742 +:105E60000120F3E70120F1E70120EFE700380240CD +:105E700008B5264B9B6803F00C03042B41D0082B7C +:105E800041D1224B5A6802F03F025B6813F4800F45 +:105E900012D01E4B5968C1F388111D480023A1FB85 +:105EA0000001FBF753F9194B5B68C3F3014301335E +:105EB0005B00B0FBF3F008BD144B5868C0F38810CA +:105EC0004FEA401CBCEB000C6EEB0E0E4FEA8E133B +:105ED00043EA9C634FEA8C11B1EB0C0163EB0E03B8 +:105EE000DB0043EA5173C90011EB000C43F10003DE +:105EF000990200234FEA8C2041EA9C51FBF726F9D6 +:105F0000D1E70348D7E70348D5E700BF0038024090 +:105F100040787D010024F400002800F0A08070B5D6 +:105F20000D460446524B1B6803F00F038B420BD205 +:105F30004F4A136823F00F030B431360136803F0F9 +:105F40000F038B4240F08D80236813F0020F17D0AF +:105F500013F0040F04D0474A936843F4E05393606E +:105F6000236813F0080F04D0424A936843F4604357 +:105F70009360404A936823F0F003A1680B43936059 +:105F8000236813F0010F31D06368012B20D0022B5E +:105F900025D0384A126812F0020F64D035498A6859 +:105FA00022F0030213438B6000F09CFD0646314B48 +:105FB0009B6803F00C036268B3EB820F16D000F00D +:105FC00091FD801B41F288339842F0D9032045E0CF +:105FD000284A126812F4003FE0D101203EE0254A31 +:105FE000126812F0007FD9D1012037E0204B1B68E6 +:105FF00003F00F03AB420AD91D4A136823F00F03C5 +:106000002B431360136803F00F03AB422DD12368B9 +:1060100013F0040F06D0174A936823F4E053E168A5 +:106020000B439360236813F0080F07D0114A93685D +:1060300023F46043216943EAC1039360FFF718FF2B +:106040000C4B9B68C3F303130B4AD35CD8400B4B38 +:1060500018600B4B186800F007FD002070BD012090 +:1060600070470120FAE70120F8E70120F6E700BFBA +:10607000003C024000380240E8BB00085800002005 +:1060800054000020014B1868704700BF58000020E2 +:1060900008B5FFF7F7FF044B9B68C3F38223034A5D +:1060A000D35CD84008BD00BF00380240E0BB000808 +:1060B00008B5FFF7E7FF044B9B68C3F34233034A7D +:1060C000D35CD84008BD00BF00380240E0BB0008E8 +:1060D000F0B583B00446066816F001060DD0B54B46 +:1060E0009A6822F400029A609A68416B0A439A60A7 +:1060F000436B002B00F067810026256815F400250E +:1061000011D0AC4AD2F88C3023F44013E16B0B432E +:10611000C2F88C30E36BB3F5801F00F05681002B82 +:1061200000F055810025236813F4801F0FD0A14A89 +:10613000D2F88C3023F44003216C0B43C2F88C302E +:10614000236CB3F5800F00F0448103B90125236867 +:1061500013F0807F00D0012613F0200F40F03B8128 +:10616000236813F0100F0CD0924BD3F88C2022F040 +:106170008072C3F88C20D3F88C20A16B0A43C3F83B +:106180008C20236813F4804F08D08A4AD2F89030CC +:1061900023F44033616E0B43C2F89030236813F44C +:1061A000004F08D0834AD2F8903023F44023A16EE8 +:1061B0000B43C2F89030236813F4803F08D07D4A27 +:1061C000D2F8903023F44013E16E0B43C2F89030C4 +:1061D000236813F4003F08D0764AD2F8903023F4B5 +:1061E0004003216F0B43C2F89030236813F0400F37 +:1061F00008D0704AD2F8903023F00303616C0B434F +:10620000C2F89030236813F0800F08D0694AD2F8A2 +:10621000903023F00C03A16C0B43C2F8903023683C +:1062200013F4807F08D0634AD2F8903023F0300313 +:10623000E16C0B43C2F89030236813F4007F08D060 +:106240005C4AD2F8903023F0C003216D0B43C2F8B2 +:106250009030236813F4806F08D0564AD2F89030FB +:1062600023F44073616D0B43C2F89030236813F43C +:10627000006F08D04F4AD2F8903023F44063A16DEC +:106280000B43C2F89030236813F4805F08D0494A6A +:10629000D2F8903023F44053E16D0B43C2F89030B4 +:1062A000236813F4005F08D0424AD2F8903023F4F8 +:1062B0004043216E0B43C2F89030236813F4800FE3 +:1062C00008D03C4AD2F8903023F08063A16F0B4392 +:1062D000C2F89030236813F4001F0DD0354AD2F86D +:1062E000903023F00063E16F0B43C2F89030E36F0E +:1062F000B3F1006F00F0D580236813F0080F00D0D1 +:10630000012513F4802F08D02A4AD2F8903023F0C8 +:106310004073616F0B43C2F89030236813F4000F91 +:1063200009D0244AD2F8903023F08053D4F880105A +:106330000B43C2F89030236813F0806F09D01D4AD8 +:10634000D2F8903023F00053D4F884100B43C2F8F5 +:106350009030236813F0006F09D0164AD2F88C30C1 +:1063600023F00073D4F888100B43C2F88C302368F4 +:1063700013F0805F09D00F4AD2F88C3023F080638D +:10638000D4F88C100B43C2F88C3026B9236813F074 +:10639000007F00F00681074A136823F080631360D2 +:1063A00000F0A0FB0646034B1B6813F0006F7AD089 +:1063B00002E000BF0038024000F094FB801B64281C +:1063C000F1D90320F0E0012697E60126A7E6012592 +:1063D000A9E60126B9E67F4B1A6C42F080521A6496 +:1063E0001B6C03F080530193019B7B4A136843F4B9 +:1063F0008073136000F076FB0746774B1B6813F43D +:10640000807F06D100F06EFBC01B6428F5D9032005 +:10641000CAE0704B1B6F13F4407315D0226B02F46B +:1064200040729A4210D06B4B1A6F22F44072196F6F +:1064300041F480311967196F21F4803119671A67A7 +:106440001B6F13F0010F12D1236B03F44072B2F5EE +:10645000407F1DD05F4A936823F4F81393605D4931 +:106460000B6F226BC2F30B0213430B6778E600F04D +:1064700039FB0746574B1B6F13F0020FE4D100F0B6 +:1064800031FBC01B41F288339842F3D903208BE0E3 +:106490005048826822F4F812504919400A43826039 +:1064A000DDE7012528E7236813F0010F13D0636BA4 +:1064B0008BB9484AD2F88430D2F88410606803F46B +:1064C000403343EA801301F070610B43A16843EA53 +:1064D0000173C2F88430236813F4002F03D0E26BF9 +:1064E000B2F5801F06D013F4801F1ED0236CB3F5C5 +:1064F000800F1AD1374AD2F88430D2F884106068FD +:1065000003F4403343EA8013E06843EA006301F098 +:10651000E0410B43C2F88430D2F88C3023F01F03E3 +:10652000616A01390B43C2F88C30236813F0807F15 +:1065300011D0284AD2F88400D2F884106668236902 +:106540001B0443EA861300F07060034301F0E0414E +:106550000B43C2F88430236813F0007F0DD06268CB +:1065600023691B0443EA8213E26843EA0263A268D8 +:1065700043EA0273174AC2F88430164A136843F09C +:106580008063136000F0AEFA0646124B1B6813F0EE +:10659000006F06D100F0A6FA801B6428F5D903200D +:1065A00002E0012D02D0002003B0F0BD094A1368BB +:1065B00023F08053136000F095FA0546054B1B68E5 +:1065C00013F0005F0CD000F08DFA401B6428F5D961 +:1065D0000320E9E70038024000700040FFFCFF0F95 +:1065E000236813F4002F01D0E26B22B113F4801F53 +:1065F0001DD0236CDBB9354AD2F88830D2F8881028 +:10660000606903F4403343EA8013A06943EA0063FE +:1066100001F0E0410B43C2F88830D2F88C3023F40B +:10662000F853A16A013943EA0123C2F88C30236888 +:1066300013F4001F03D0E36FB3F1006F31D0236870 +:1066400013F0080F19D0214AD2F88810D2F88830F8 +:10665000606903F4403343EA801301F070610B4337 +:10666000E16943EA0173C2F88830D2F88C3023F430 +:106670004033E16A0B43C2F88C30144A136843F08C +:106680008053136000F02EFA0446104B1B6813F081 +:10669000005F19D100F026FA001B6428F5D9032009 +:1066A00082E70A4AD2F88800D2F888106569236A1E +:1066B0001B0443EA851300F07060034301F0E041DE +:1066C0000B43C2F88830BAE700206DE7003802407B +:1066D00000230F2B00F2F48070B582B066E085686D +:1066E0004FEA430E032404FA0EF425EA0405CC68AD +:1066F00004FA0EF42C438460446824EA02044A68D5 +:10670000C2F300129A40224342605DE0DC08083484 +:1067100050F8242003F00705AD004FF00F0E0EFADD +:1067200005FE22EA0E0E0A69AA4042EA0E0240F86D +:1067300024205DE0092200E0002202FA0EF22A4342 +:106740000234604D45F824205F4A94686FEA0C02D9 +:1067500024EA0C054E6816F4801F01D04CEA0405AB +:10676000594CA560E46802EA04054E6816F4001F5F +:1067700001D04CEA0405544CE560646802EA040563 +:106780004E6816F4003F01D04CEA04054E4C65609B +:10679000246822404D6815F4803F01D04CEA040281 +:1067A000494C226001330F2B00F2888001229A406D +:1067B0000C6804EA020C32EA0404F3D14C6804F0D9 +:1067C0000304013C012C8AD94A6802F00302032A1F +:1067D00009D0C4685D000322AA4024EA02048A6842 +:1067E000AA402243C2604A6802F00302022A8DD006 +:1067F00004684FEA430E032202FA0EF224EA02046E +:106800004A6802F0030202FA0EF2224302604A686A +:1068100012F4403FC6D02D4A546C44F48044546472 +:10682000526C02F480420192019A9C08A51C254AF0 +:1068300052F8255003F0030E4FEA8E0E0F2202FA93 +:106840000EF225EA0205224A90423FF475AF02F5A6 +:106850008062904222D002F58062904220D002F500 +:10686000806290421ED002F5806290421CD002F5F8 +:10687000806290421AD002F58062904218D002F5F0 +:106880008062904216D002F58062904214D002F5E8 +:10689000806290423FF44EAF0A224EE701224CE75D +:1068A00002224AE7032248E7042246E7052244E79A +:1068B000062242E7072240E708223EE702B070BD09 +:1068C000704700BF00380140003C014000380240E2 +:1068D000000002400369194201D0012070470020E6 +:1068E00070470AB18161704709048161704743694B +:1068F00001EA030221EA030141EA02418161704792 +:1069000010B582B01B4B1A6C42F080521A641B6C9B +:1069100003F080530193019B174A136843F48033BB +:10692000136000F0DFF80446134B5B6813F4803FFC +:1069300008D100F0D7F8001BB0F57A7FF4D9032016 +:1069400002B010BD0C4A136843F40033136000F02A +:10695000C9F80446084B5B6813F4003F07D100F008 +:10696000C1F8001BB0F57A7FF4D90320E8E70020D6 +:10697000E6E700BF0038024000700040002804DB5A +:106980000901C9B2044B1954704700F00F00090106 +:10699000C9B2024B1954704700E400E014ED00E066 +:1069A00000B500F00700C0F1070CBCF1040F28BFD0 +:1069B0004FF0040C031D062B0FD9C31E4FF0FF3EF2 +:1069C0000EFA0CF021EA000199400EFA03FE22EAC9 +:1069D0000E0241EA02005DF804FB0023EEE700002E +:1069E0000649CB6823F4E0631B041B0C000200F48F +:1069F000E0600343024A1A43CA60704700ED00E0BA +:106A00000000FA0510B50446054BD868C0F3022013 +:106A1000FFF7C6FF01462046FFF7B0FF10BD00BFDD +:106A200000ED00E0002807DB00F01F024009012311 +:106A30009340024A42F82030704700BF00E100E076 +:106A40000138B0F1807F0BD24FF0E0235861054A46 +:106A5000F02182F823100020986107221A61704704 +:106A60000120704700ED00E010B504460E4B1A7887 +:106A70004FF47A73B3FBF2F30C4A1068B0FBF3F0F7 +:106A8000FFF7DEFF68B90F2C01D901200AE00022D0 +:106A900021464FF0FF30FFF7B5FF054B1C6000208B +:106AA00000E0012010BD00BF510000205800002070 +:106AB0005400002008B50320FFF792FF0020FFF7E5 +:106AC000D3FFFEF729FA002008BD0000034A116831 +:106AD000034B1B780B441360704700BF5406002023 +:106AE00051000020014B1868704700BF5406002079 +:106AF00038B50446FFF7F6FF0546B4F1FF3F02D074 +:106B0000044B1B781C44FFF7EDFF401BA042FAD357 +:106B100038BD00BF51000020034B9B68C3F3031333 +:106B2000024AD35CD840704700380240E8BB0008F6 +:106B3000034B9B68C3F38223024AD35CD84070475F +:106B400000380240E0BB0008034B9B68C3F34233AC +:106B5000024AD35CD840704700380240E0BB0008CE +:106B60000D4B5B6803F480039BB90C480A4B5A68D1 +:106B700002F03F02B0FBF2F05A68C2F3881202FB47 +:106B800000F05B68C3F3014301335B00B0FBF3F03B +:106B900070470348EAE700BF003802400024F400D1 +:106BA00040787D0108B5074B9B6803F00C03042B6C +:106BB00004D0082B04D1FFF7D3FF08BD0248FCE73F +:106BC0000248FAE70038024040787D010024F400D2 +:106BD00008B5032808D00C282ED0B0F5406F53D04C +:106BE00030287AD0002008BD514BD3F890300340B4 +:106BF00043EA00434F4A934208D0B3F1031F0CD03D +:106C0000013A934211D1FFF7CDFFECE7484B1868EA +:106C100010F00200E7D04848E5E7454B186F10F048 +:106C20000200E0D04FF40040DDE7FFF7BBFFFFF7C5 +:106C300073FFFFF789FFD6E73D4BD3F89030034051 +:106C400043EA00433D4A934208D0B3F10C1F0CD0F5 +:106C5000043A934211D1FFF7A5FFC4E7344B1868FB +:106C600010F00200BFD03448BDE7314B186F10F070 +:106C70000200B8D04FF40040B5E7FFF793FFFFF7ED +:106C80004BFFFFF755FFAEE7294BD3F89030034099 +:106C900043EA00432A4A934209D0B3F10C2F0DD0A6 +:106CA000A2F58062934211D1FFF77CFF9BE7204B56 +:106CB000186810F0020096D01F4894E71C4B186F1C +:106CC00010F002008FD04FF400408CE7FFF76AFF0E +:106CD000FFF722FFFFF738FF85E7154BD3F8903019 +:106CE000034043EA0043174A934208D0B3F1301FF0 +:106CF0000DD0103A934213D1FFF754FF73E70C4BBA +:106D0000186810F002003FF46EAF0B486BE7084BB9 +:106D1000186F10F002003FF466AF4FF4004062E7D6 +:106D2000FFF740FFFFF7F8FEFFF702FF5BE700BF4A +:106D300000380240020003000024F40008000C00A8 +:106D40000008000C2000300008B5C0280AD0B0F5BB +:106D5000407F2FD0B0F5405F55D0B0F5404F7BD08D +:106D6000002008BD524BD3F89030034043EA004363 +:106D7000504A934208D0B3F1C01F0CD0403A93421E +:106D800011D1FFF70FFFECE7494B186810F0020034 +:106D9000E7D04948E5E7464B186F10F00200E0D015 +:106DA0004FF40040DDE7FFF7FDFEFFF7B5FEFFF70C +:106DB000BFFED6E73E4BD3F89030034043EA004392 +:106DC0003E4A934209D0B3F1032F0DD0A2F5807251 +:106DD000934211D1FFF7E6FEC3E7354B186810F078 +:106DE0000200BED03448BCE7314B186F10F00200EF +:106DF000B7D04FF40040B4E7FFF7D4FEFFF78CFEA6 +:106E0000FFF796FEADE72A4BD3F89030034043EAF4 +:106E100000432B4A934209D0B3F1302F0DD0A2F595 +:106E20008052934211D1FFF7BDFE9AE7204B1868BC +:106E300010F0020095D0204893E71D4B186F10F01A +:106E400002008ED04FF400408BE7FFF7ABFEFFF758 +:106E500063FEFFF76DFE84E7154BD3F890300340D7 +:106E600043EA0043174A934209D0B3F1C02F0ED032 +:106E7000A2F58042934213D1FFF794FE71E70C4BC9 +:106E8000186810F002003FF46CAF0B4869E7084B3C +:106E9000186F10F002003FF464AF4FF4004060E759 +:106EA000FFF780FEFFF738FEFFF742FE59E700BF0D +:106EB000003802408000C0000024F40000020003FB +:106EC00000200030008000C000B5836891FAA1FC6A +:106ED000BCFA8CFC4FEA4C0C4FF0030E0EFA0CFC83 +:106EE00023EA0C0391FAA1F1B1FA81F149008A4039 +:106EF000134383605DF804FB00B5C36891FAA1FCFD +:106F0000BCFA8CFC4FEA4C0C4FF0030E0EFA0CFC52 +:106F100023EA0C0391FAA1F1B1FA81F149008A4008 +:106F20001343C3605DF804FB00B5036A91FAA1FC4A +:106F3000BCFA8CFC4FEA8C0C4FF00F0E0EFA0CFCD6 +:106F400023EA0C0391FAA1F1B1FA81F189008A4098 +:106F5000134303625DF804FB00B5436A090A91FA22 +:106F6000A1FCBCFA8CFC4FEA8C0C4FF00F0E0EFA11 +:106F70000CFC23EA0C0391FAA1F1B1FA81F189002A +:106F80008A40134343625DF804FB00B5036891FA3D +:106F9000A1FCBCFA8CFC4FEA4C0C4FF0030E0EFA2D +:106FA0000CFC23EA0C0391FAA1F1B1FA81F149003A +:106FB0008A40134303605DF804FBF8B507460E46AC +:106FC0000D6895FAA5F5B5FA85F519E0B268214680 +:106FD0003846FFF779FF3268F1687B6823EA0203DD +:106FE00001FB02F213437B6016E0726921463846CA +:106FF000FFF7B2FF726821463846FFF7C6FF01353A +:10700000346834FA05F21BD00122AA401440F6D0AD +:107010007368013B012BD9D9326921463846FFF705 +:107020006BFF7368022BE5D194FAA4F3B3FA83F3F0 +:10703000072BDAD8726921463846FFF775FFD9E782 +:107040000020F8BD0B4B1B680B4AA2FB03235B0A15 +:1070500041F2883202FB03F31A46013B3AB1426B1C +:1070600012F0800FF8D0C5238363002070474FF0E3 +:107070000040704758000020D34D621084B00DF1DD +:10708000040C8CE80E000B461343039A1343049A36 +:107090001343059A1343069A13434168034A0A406F +:1070A00013434360002004B0704700BF0081FFFF1E +:1070B000D0F8800070470B68C0F88030002070471F +:1070C0000323036000207047006800F0030070474E +:1070D0000B6883604B688A681343CA6813430A6964 +:1070E0001343C2686FF30B021343C3600020704761 +:1070F0000069C0B270471430405870470B68436253 +:107100004B6883628B68CA6813430A6913434A69F0 +:107110001343C26A22F0F7021343C3620020704790 +:1071200010B586B0044600230193029303930493A1 +:107130004FF48063059301A9FFF7CAFF2046FFF7CC +:1071400081FF06B010BD000038B504460D46504B17 +:107150001B685049A1FB03135B0A03FB02F21346B1 +:10716000013A002B5DD0636B13F0450FF7D013F499 +:10717000006FF4D1636B13F0040F06D1636B13F04F +:10718000010F05D00120A0634DE00420A0634AE078 +:10719000C523A3632046FFF7ABFFA84201D001201F +:1071A00041E000212046FFF7A6FF03463A48184079 +:1071B000C8B3002B38DB13F0804F38D113F0005FD9 +:1071C00037D113F0805F36D113F0006F36D113F052 +:1071D000806F36D113F0807F36D113F4000F36D193 +:1071E00013F4800F36D113F4001F36D113F4801F2F +:1071F00036D113F4802F36D113F4003F36D113F477 +:10720000803F36D113F4004F36D113F4804F36D17E +:1072100013F4005F36D113F0080F36D04FF400009E +:1072200001E04FF0004038BD4FF00070FBE7402018 +:10723000F9E78020F7E74FF48070F4E74FF400702F +:10724000F1E74FF48060EEE74FF40060EBE74FF4B6 +:107250008050E8E74FF40050E5E74FF48040E2E764 +:107260004FF40040DFE74FF40030DCE74FF48020BC +:10727000D9E74FF40020D6E74FF48010D3E74FF45E +:107280000010D0E74FF48000CDE74FF48030CAE71C +:1072900058000020D34D621008E0FFFD30B587B0E4 +:1072A0000446019110250295402303930023049383 +:1072B0004FF48063059301A9FFF70AFF41F288327A +:1072C00029462046FFF740FF07B030BD30B587B0F4 +:1072D0000446019111250295402303930023049352 +:1072E0004FF48063059301A9FFF7F2FE41F2883263 +:1072F00029462046FFF728FF07B030BD30B587B0DC +:107300000446019112250295402303930023049320 +:107310004FF48063059301A9FFF7DAFE41F288324A +:1073200029462046FFF710FF07B030BD30B587B0C3 +:1073300004460191182502954023039300230493EA +:107340004FF48063059301A9FFF7C2FE41F2883232 +:1073500029462046FFF7F8FE07B030BD30B587B0AC +:1073600004460191192502954023039300230493B9 +:107370004FF48063059301A9FFF7AAFE41F288321A +:1073800029462046FFF7E0FE07B030BD30B587B094 +:107390000446002301930C25029540220392049396 +:1073A0004FF48063059301A9FFF792FE034A294633 +:1073B0002046FFF7C9FE07B030BD00BF00E1F5056C +:1073C00030B587B004460192072502954023039308 +:1073D000002304934FF48063059301A9FFF778FE1F +:1073E00041F2883229462046FFF7AEFE07B030BD95 +:1073F00030B587B0044601913725029540230393A9 +:10740000002304934FF48063059301A9FFF760FE06 +:1074100041F2883229462046FFF796FE07B030BD7C +:1074200030B587B0044601910625029540230393A9 +:10743000002304934FF48063059301A9FFF748FEEE +:1074400041F2883229462046FFF77EFE07B030BD64 +:1074500030B587B0044600230193332502954022BE +:10746000039204934FF48063059301A9FFF730FE64 +:1074700041F2883229462046FFF766FE07B030BD4C +:1074800030B587B0044601910D2502954023039342 +:10749000002304934FF48063059301A9FFF718FEBE +:1074A00041F2883229462046FFF74EFE07B030BD34 +:1074B0000146144B1B68144AA2FB03235B0A41F2EA +:1074C000883202FB03F31A46013BBAB14A6B12F051 +:1074D000450FF8D012F4006FF5D14B6B13F0040F89 +:1074E00006D1486B10F0010005D1C5238B637047AE +:1074F0000420886370470120886370474FF0004084 +:10750000704700BF58000020D34D621010B586B000 +:1075100004460023019302220292C02203920493A4 +:107520004FF48063059301A9FFF7D2FD2046FFF7D2 +:10753000BFFF06B010BD10B586B004460191092307 +:107540000293C0230393002304934FF480630593B5 +:1075500001A9FFF7BDFD2046FFF7AAFF06B010BD49 +:107560000146104B1B68104AA2FB03235B0A41F241 +:10757000883202FB03F31A46013B82B14A6B12F0D8 +:10758000450FF8D012F4006FF5D1486B10F00400ED +:1075900002D1C5238B6370470420886370474FF086 +:1075A0000040704758000020D34D621010B586B0DF +:1075B00004460A4B0B430193292302934023039370 +:1075C000002304934FF48063059301A9FFF780FD26 +:1075D0002046FFF7C5FF06B010BD00BF00001080B9 +:1075E000F8B505460E461746234B1B68234AA2FBF7 +:1075F00003235B0A41F2883202FB03F31A46013B84 +:107600008AB36C6B14F0450FF8D014F4006FF5D109 +:107610006B6B13F0040F06D16B6B13F0010F05D0E9 +:107620000120A86321E00420A8631EE02846FFF79C +:107630005FFDB04201D0012017E0C523AB630021FC +:107640002846FFF758FD034610F4604008D013F4B5 +:10765000804F0BD113F4004F0BD04FF4805004E057 +:107660001B0C3B8001E04FF00040F8BD4FF4005090 +:10767000FBE74FF48030F8E758000020D34D62104C +:1076800070B586B004460D4600230193032602968A +:107690004022039204934FF48063059301A9FFF7FE +:1076A00017FD2A4631462046FFF79AFF06B070BD07 +:1076B0000146164B1B68164AA2FB03235B0A41F2E4 +:1076C000883202FB03F31A46013BE2B14A6B12F027 +:1076D000450FF8D012F4006FF5D14B6B13F0040F87 +:1076E0000BD14B6B13F001030AD1486B10F0400033 +:1076F0000BD040228A631846704704208863704785 +:107700000120886370474FF0004070475800002008 +:10771000D34D621010B586B004464FF4D573019373 +:107720000823029340230393002304934FF48063C0 +:10773000059301A9FFF7CCFC2046FFF7B9FF06B07F +:1077400010BD000070B582B00446002301930068AC +:10775000FFF7E6FC054610B1284602B070BD206870 +:10776000FFF7D8FF38B90123A364A36C012B0BD01A +:107770002E46284614E00023A3642068FFF7D0FCBF +:107780000028F2D00546E7E700212068FFF730FE29 +:107790000028EDD04FF08055DEE7019B01330193C7 +:1077A000019A4FF6FE739A4213D896B900212068C9 +:1077B000FFF71EFEE0B912492068FFF7F7FE064604 +:1077C000C0B900212068FFF796FCC30FE5D01E4624 +:1077D000E3E7019A4FF6FE739A420ED810F0804309 +:1077E00002D001236364B7E7002262641D46B3E759 +:1077F0000546B1E74FF08055AEE74FF08075ABE737 +:10780000000010C1F0B589B004460F46FFF76AF9D1 +:10781000064600230093019308212068FFF73EFDF0 +:10782000054610B1284609B0F0BD216D0904206855 +:10783000FFF7DEFD05460028F4D14FF0FF33029339 +:107840000823039330230493022305930023069314 +:107850000123079302A92068FFF750FC2068FFF777 +:10786000F7FD054658B1DDE7FFF722FC4DF825008E +:107870000135FFF737F9831BB3F1FF3F3FD0206895 +:10788000436B13F02A0F07D1436B13F4001FEBD1A6 +:10789000436B13F4005FECD1436B13F0080F25D159 +:1078A000436B13F0020F24D1456B15F0200523D153 +:1078B00040F23A538363019A130203F47F0343EACD +:1078C0000263110A01F47F410B4343EA12633B60F8 +:1078D000009A130203F47F0343EA0263110A01F4DE +:1078E0007F410B4343EA12637B609BE70825856376 +:1078F00098E70225856395E72025856392E74FF099 +:1079000000458FE710B582B0044600210091019137 +:107910000068FFF7F0FB10F0007F13D169462046A6 +:10792000FFF770FF80B9019B13F4802F0ED0216DFB +:1079300009042068FFF75CFD30B902212068FFF7D9 +:107940006FFD01E04FF4006002B010BD4FF08060A9 +:10795000FAE710B582B00446002100910191006859 +:10796000FFF7C9FB10F0007F13D169462046FFF7EF +:1079700049FF80B9019B13F4803F0ED0216D0904AB +:107980002068FFF735FD30B900212068FFF748FD7A +:1079900001E04FF4006002B010BD4FF08060FAE7E4 +:1079A00070B581B104460E46016D09040068FFF709 +:1079B00067FD054608B1284670BD00212068FFF725 +:1079C0009AFB3060F7E74FF00065F4E72DE9F04FE0 +:1079D00087B005460C4616469B46DDF840A0FFF7EB +:1079E00081F8002C36D0814695F83470FFB2012F13 +:1079F00040F004810023AB6306EB0B03EA6D934276 +:107A00002ED8032385F834302B680022DA626B6CA1 +:107A1000012B00D076024FF0FF3300934FEA4B2347 +:107A200001939023029302230393002304930123E1 +:107A3000059369462868FFF761FBBBF1010F14D974 +:107A400002232B6331462868FFF758FCA0B9DDF804 +:107A5000048038E0AB6B43F00063AB630127D2E0F6 +:107A6000AB6B43F00073AB63CDE001232B63314676 +:107A70002868FFF72BFCE9E72B68654A9A63AB6B34 +:107A80000343AB63012385F8343000232B63BAE052 +:107A90002868FFF70DFB2070C0F307236370C0F365 +:107AA0000743A370000EE0700434A8F10408013607 +:107AB000072EEDD9FFF716F8A0EB090050450FD2BD +:107AC000BAF1000F0CD02868466B16F4957615D1E4 +:107AD000436B13F4004FEDD0B8F1000FEAD0E7E7A5 +:107AE0002B684B4A9A63AB6B43F00043AB630123B3 +:107AF00085F8343000232B63032784E0436B13F4B1 +:107B0000807F05D0BBF1010F02D96B6C032B38D1FC +:107B10002B685A6B12F0080F44D15A6B12F0020F07 +:107B20004CD15A6B12F0200F54D12868436B13F4D8 +:107B3000001F5BD0B8F1000F58D0FFF7B9FA2070E2 +:107B4000C0F307236370C0F30743A370000EE07017 +:107B50000434A8F10408FEF7C5FFA0EB0900504566 +:107B600002D2BAF1000FE0D12B68294A9A63AB6BBD +:107B700043F00043AB63012385F8343000232B63CB +:107B800041E0FFF703FC03460028C1D02A682049E2 +:107B90009163AA6B1343AB63012385F83430002350 +:107BA0002B6330E01A4A9A63AB6B43F00803AB6374 +:107BB000012385F8343000232B6324E0144A9A63B0 +:107BC000AB6B43F00203AB63012385F83430002331 +:107BD0002B6318E00E4A9A63AB6B43F02003AB6350 +:107BE000012385F8343000232B630CE040F23A5334 +:107BF0008363012385F83430002704E0AB6B43F046 +:107C00000053AB630127384607B0BDE8F08F00BFD3 +:107C1000FF0540002DE9F04F8BB005460C46164697 +:107C20009B46DDF850A0FEF75DFF002C37D0804664 +:107C300095F83470FFB2012F40F0E1800023AB6370 +:107C400006EB0B03EA6D93422FD8032385F83430FB +:107C50002B680022DA626B6C012B00D076024FF0A9 +:107C6000FF3304934FEA4B2305939023069300239D +:107C7000079308930123099304A92868FFF73EFAA4 +:107C8000BBF1010F16D920232B6331462868FFF77B +:107C900065FB0190019BABB9DDF8149040E0AB6B44 +:107CA00043F00063AB630127AEE0AB6B43F00073BE +:107CB000AB63A9E010232B6331462868FFF736FB3E +:107CC0000190E7E72B68524A9A63AB6B019A134322 +:107CD000AB63012385F8343000232B6394E02378D1 +:107CE0000393627843EA02230393A27843EA0243B0 +:107CF0000393E27843EA026303930434A9F104098D +:107D000003A92868FFF7D7F90136072EE7D9FEF750 +:107D1000E9FEA0EB080050450FD2BAF1000F0CD0DD +:107D20002868466B16F48D7615D1436B13F4804F9B +:107D3000EDD0B9F1000FEAD0E7E72B68344A9A6337 +:107D4000AB6B019A1343AB63012385F834300023F6 +:107D50002B63032758E0436B13F4807F05D0BBF1FE +:107D6000010F02D96B6C032B18D12B685A6B12F0E0 +:107D7000080F24D15A6B12F0020F2CD15A6B12F05B +:107D8000100F34D0224A9A63AB6B43F01003AB63FD +:107D9000012385F8343000232B6335E0FFF7F6FA32 +:107DA00003460028E1D02A6819499163AA6B13435E +:107DB000AB63012385F8343000232B6324E0144A9D +:107DC0009A63AB6B43F00803AB63012385F834304F +:107DD00000232B6318E00E4A9A63AB6B43F0020357 +:107DE000AB63012385F8343000232B630CE040F2B1 +:107DF0003A529A63012385F83430002704E0AB6BD4 +:107E000043F00053AB63012738460BB0BDE8F08F59 +:107E1000FF0540000346426E920F0A70426EC2F3A5 +:107E200083624A7090F8672002F003028A7090F82B +:107E30006620CA7090F865200A7190F864204A7133 +:107E4000826E120DCA80B0F86A2002F00F020A7228 +:107E5000826EC2F3C0324A72826EC2F380328A727C +:107E6000826EC2F34032CA72826EC2F300320A736B +:107E700000224A73426C002A40F08680806E40F6F1 +:107E8000FC7202EA8002D86E42EA90720A61DA6EEF +:107E9000C2F3C2620A7593F86F2002F007024A75B6 +:107EA000DA6EC2F342528A75DA6EC2F38242CA7542 +:107EB000DA6EC2F3C2320A760A6901325A65087E66 +:107EC00000F00700023082405A6591F808C00CF0BB +:107ED0000F0C012000FA0CF09865400A00FB02F23A +:107EE000DA654FF400721A66DA6EC2F380324A76AF +:107EF000DA6EC2F3C6128A76DA6E02F07F02CA76B2 +:107F00001A6FD20F0A771A6FC2F341724A771A6F4B +:107F1000C2F382628A771A6FC2F38352CA771A6FEA +:107F2000C2F3405281F82020002081F82100B3F8EC +:107F3000722002F0010281F822201A6FC2F3C032CF +:107F400081F823201A6FC2F3803281F824201A6F3F +:107F5000C2F3403281F825201A6FC2F3003281F853 +:107F600026201A6FC2F3812281F827201A6FC2F3EC +:107F7000012281F828201B6FC3F3460381F82930C2 +:107F8000012381F82A307047012A11D1826E120430 +:107F900002F47C12B0F86E0002430A610A690132F1 +:107FA00092025A65DA654FF400729A651A669BE789 +:107FB000026805499163826B42F08052826301201E +:107FC00083F83400704700BFFF05400070B590B0E3 +:107FD00004460123ADF812300068FFF775F8002859 +:107FE0006CD0636C032B45D1636C032B5DD1636C48 +:107FF000032B1DD0BDF81210216509042068FFF77E +:108000009AFA054600285BD100212068FFF773F833 +:10801000606604212068FFF76EF8A06608212068DA +:10802000FFF769F8E0660C212068FFF764F8206725 +:1080300004212068FFF75FF8000DE06405A92046E1 +:10804000FFF7E8FE00283ED1226D120400232068CD +:10805000FFF7B6F9054698BB234653F8106B93E833 +:1080600007008DE80700043494E80E003046FFF75F +:1080700005F825E02068FFF749FA054600BB002116 +:108080002068FFF738F8606704212068FFF733F8AD +:10809000A06708212068FFF72EF8E0670C21206810 +:1080A000FFF729F8C4F880009EE70DF1120120685F +:1080B000FFF7E6FA0546002899D001E04FF0806509 +:1080C000284610B070BD4FF08055F9E730B58BB041 +:1080D000044600230493059306930793089376239D +:1080E00009930AAB13E907008DE8070004AB0ECB38 +:1080F0002068FEF7C3FF18B1012528460BB030BD3C +:1081000005462268536823F4807353602068FEF7A5 +:10811000D7FF2268536843F4807353600220FEF750 +:10812000E7FC2046FFF70EFB30B1012584F8345000 +:10813000A36B0343A363E0E72046FFF747FF30B19B +:10814000012584F83450A36B0343A363D5E74FF4B0 +:1081500000712068FFF7A2F80028CED023680449F8 +:108160009963A36B0343A363012584F83450C4E7E8 +:10817000FF054000A8B110B5044690F8343063B153 +:10818000032384F834302046FFF7A0FF58B9A063DA +:108190002063012384F8343010BD0377FCF75CFFC3 +:1081A000EEE7012070470120F6E7436C0B60836C1B +:1081B0004B60C36C8B60036DCB60436D0B61836D53 +:1081C0004B61C36D8B61036ECB6100207047000073 +:1081D00030B58BB004460D46032380F83430436C31 +:1081E000032B1CD0B1F5805F08D0B1F5006F0AD029 +:1081F00079B1836B43F00063836314E0836B43F0D6 +:10820000805383630FE0FFF77DFBA36B0343A363FE +:1082100009E0FFF79EFBA36B0343A36303E0836BBB +:1082200043F080538363A36BC3B12368174A9A63F7 +:10823000012584F834504FF400712068FFF72EF8C0 +:1082400030B1236811499963A36B0343A3630125EC +:10825000012384F8343028460BB030BD63680493A2 +:10826000A3680593E3680693079563690893A36978 +:1082700009930AAB13E907008DE8070004AB0ECBA6 +:108280002068FEF7FBFE0025D5E700BFFF05400094 +:1082900010B582B004460023019301A9FFF780FBCB +:1082A00010B1A36B0343A3630198C0F3432002B052 +:1082B00010BD00000346026812F0400F36D110B422 +:1082C00002681D4810400A684C682243CC6822436B +:1082D0000C6922434C6922438C692243CC692243B6 +:1082E0000C6A2243104318605868144A0240886898 +:1082F000B1F816C040EA0C0002435A608A68B2F531 +:10830000006F03D25A6842F480525A600A6AB2F58A +:10831000005F07D00020DA6922F40062DA615DF8BC +:10832000044B70478A8C1A610020F4E70120DA6957 +:1083300022F40062DA6170474000FFFFFBF0FFFFAC +:1083400070B4046A036A23F001030362426885691A +:10835000124B2B400D681D4324F002048B6823430D +:108360000F4C104EB04218BFA0420CBF0124002495 +:1083700005D123F00803CE681E4326F004032CB178 +:1083800022F440724C6914438A6922434260856139 +:108390004A684263036270BC704700BF8CFFFEFFF7 +:1083A000000001400004014070B4036A026A22F434 +:1083B000807202624268C569144C2C400E682643E4 +:1083C00023F400738C6843EA0423114C114DA84236 +:1083D00018BFA0420CBF0124002406D123F400637F +:1083E000CD6843EA052323F480633CB122F4405274 +:1083F0004C6942EA04128C6942EA04124260C66186 +:108400004A68C263036270BC704700BF8CFFFEFF06 +:10841000000001400004014070B4036A026A22F4C3 +:10842000805202624468C5690D4A2A400D6842EADA +:10843000052223F400538D6843EA0533094E0A4DA3 +:10844000A84218BFB04204D124F480444D6944EAE4 +:1084500085144460C2614A680264036270BC70475C +:10846000FF8CFFFE000001400004014070B4036A6D +:10847000026A22F4803202624468426D0D4D15405A +:108480000A682A4323F400338D6843EA05430A4E01 +:108490000A4DA84218BFB04204D124F480344D697B +:1084A00044EA0524446042654A688265036270BC00 +:1084B000704700BF8FFFFEFF000001400004014035 +:1084C00070B4036A026A22F4801202624468456D45 +:1084D0000D4A2A400D6842EA052223F400138D68F4 +:1084E00043EA0553094E0A4DA84218BFB04204D1D1 +:1084F00024F480244D6944EA8524446042654A6836 +:10850000C265036270BC7047FF8FFFFE0000014030 +:108510000004014010B4036A046A24F001040462F8 +:10852000846924F0F00C4CEA021223F00A030B4396 +:10853000826103625DF8044B704710B4036A046AF9 +:1085400024F010040462846924F4704C4CEA023272 +:1085500023F0A00343EA0113826103625DF8044B38 +:108560007047836823F070030B4343F00703836075 +:1085700070470368196A41F21112114208D1196A51 +:1085800040F24442114203D11A6822F001021A60FB +:10859000012380F83D3000207047000090F83D3006 +:1085A000DBB2012B3AD1022380F83D300268D36858 +:1085B00043F00103D36003681A4AB3F1804F18BF38 +:1085C00093421DD0A2F57C42934219D002F58062FD +:1085D000934215D002F58062934211D002F57842A1 +:1085E00093420DD002F57052934209D0A2F5943215 +:1085F000934205D01A6842F001021A6000207047C9 +:108600009968094A0A40062A18BFB2F5803F07D088 +:108610001A6842F001021A6000207047012070477A +:108620000020704700000140070001000268D36885 +:1086300023F00103D3600368196A41F21112114259 +:1086400008D1196A40F24442114203D11A6822F05B +:1086500001021A60012380F83D3000207047704706 +:108660007047704770477047704770B5044603689D +:10867000DE681D6915F0020F10D016F0020F0DD044 +:108680006FF002021A610123037703689B6913F0FC +:10869000030F64D0FFF7E6FF0023237715F0040FE4 +:1086A00012D016F0040F0FD023686FF004021A6185 +:1086B0000223237723689B6913F4407F55D020461B +:1086C000FFF7D0FF0023237715F0080F12D016F024 +:1086D000080F0FD023686FF008021A610423237774 +:1086E0002368DB6913F0030F46D02046FFF7BAFF7B +:1086F0000023237715F0100F12D016F0100F0FD0B3 +:1087000023686FF010021A61082323772368DB695E +:1087100013F4407F37D02046FFF7A4FF00232377D0 +:1087200015F0010F02D016F0010F33D115F4025FDE +:1087300002D016F0800F35D115F4807F02D016F0EC +:10874000800F37D115F0400F02D016F0400F39D10D +:1087500015F0200F02D016F0200F3BD170BDFFF7AF +:1087600080FF2046FFF77FFF96E72046FFF779FF5F +:108770002046FFF778FFA5E72046FFF772FF204667 +:10878000FFF771FFB4E72046FFF76BFF2046FFF7C6 +:108790006AFFC3E723686FF001021A612046FFF702 +:1087A0005FFFC3E723686FF402521A61204600F0AE +:1087B00016FCC1E723686FF480721A61204600F04E +:1087C0000FFCBFE723686FF040021A612046FFF7F5 +:1087D0004BFFBDE723686FF020021A61204600F0CE +:1087E000FDFBBBE730B503683F4A904214BF4FF032 +:1087F000000E4FF0010EB0F1804F14BF72464EF0E4 +:108800000102AAB9394CA04214BF00240124384DFA +:10881000A8420DD064B904F1804404F58234A0422A +:1088200014BF0024012405F50065A84200D01CB146 +:1088300023F070034C682343002A33D12B4A904223 +:1088400014BF002201222A4CA0422BD052BB02F1BD +:10885000804202F58232904214BF0022012204F5C8 +:108860000064A0421ED0EAB9224A904214BF0022FE +:10887000012204F59A34A04214D09AB91E4A9042BB +:1088800014BF0022012204F50064A0420AD04AB9B4 +:108890001A4A904214BF00220122A4F59634A04245 +:1088A00000D022B123F4407CCB6843EA0C0323F0D0 +:1088B00080034A69134303608A68C2620A6882625D +:1088C0000F4A904214BF73464EF001030BB10B697F +:1088D000036301234361036913F0010F03D00369AC +:1088E00023F00103036130BD000001400008004097 +:1088F00000040040004401400018004000200040F7 +:108900000004014060B310B5044690F83D3013B345 +:10891000022384F83D30214651F8040BFFF762FF33 +:10892000012384F8483084F83E3084F83F3084F8DE +:10893000403084F8413084F8423084F8433084F881 +:10894000443084F8453084F8463084F8473084F861 +:108950003D30002010BD80F83C30FCF7D9FBD7E754 +:108960000120704760B310B5044690F83D3013B352 +:10897000022384F83D30214651F8040BFFF732FF03 +:10898000012384F8483084F83E3084F83F3084F87E +:10899000403084F8413084F8423084F8433084F821 +:1089A000443084F8453084F8463084F8473084F801 +:1089B0003D30002010BD80F83C30FFF750FED7E777 +:1089C0000120704770B4036A026A22F0100202624A +:1089D00042688569144C2C400D6844EA052523F053 +:1089E00020038C6843EA0413104C114EB04218BFA8 +:1089F000A0420CBF0124002406D123F08003CE68DE +:108A000043EA061323F040033CB122F440624C6970 +:108A100042EA84028C6942EA8402426085614A68C3 +:108A20008263036270BC7047FF8CFFFE0000014050 +:108A30000004014038B590F83C30012B00F09580DF +:108A400004460D46012380F83C30142A00F2888049 +:108A5000DFE802F00B8686861F8686863486868649 +:108A6000488686865D86868671000068FFF768FC0A +:108A70002268936943F0080393612268936923F0A5 +:108A8000040393612268936929690B439361002071 +:108A900067E00068FFF796FF2268936943F400637C +:108AA00093612268936923F48063936122689369D8 +:108AB000296943EA01239361002052E00068FFF72F +:108AC00073FC2268D36943F00803D3612268D36939 +:108AD00023F00403D3612268D36929690B43D3616E +:108AE00000203EE00068FFF797FC2268D36943F45A +:108AF0000063D3612268D36923F48063D361226861 +:108B0000D369296943EA0123D361002029E0006881 +:108B1000FFF7ACFC2268536D43F0080353652268ED +:108B2000536D23F0040353652268536D29690B4389 +:108B30005365002015E00068FFF7C2FC2268536D02 +:108B400043F4006353652268536D23F480635365D7 +:108B50002268536D296943EA01235365002000E030 +:108B60000120002384F83C3038BD0220FCE710B41B +:108B7000846824F47F4C42EA03220A4342EA0C024E +:108B800082605DF8044B704790F83C30012B76D042 +:108B900010B50446012380F83C30022380F83D30B4 +:108BA00002689068374B034093600B68602B4CD091 +:108BB00023D8402B54D011D8202B03D00AD80BB186 +:108BC000102B05D119462068FFF7CBFC002028E0C8 +:108BD000012026E0302BF5D0012022E0502B0AD1D5 +:108BE000CA6849682068FFF795FC50212068FFF7A4 +:108BF000B8FC002015E0012013E0B3F5805F3AD007 +:108C0000B3F5005F14D0702B37D1CB684A68896800 +:108C10002068FFF7ACFF2268936843F07703936006 +:108C20000020012384F83D30002384F83C3010BD3F +:108C3000CB684A6889682068FFF799FF22689368C3 +:108C400043F4804393600020EBE7CA6849682068DA +:108C5000FFF773FC60212068FFF783FC0020E0E74A +:108C6000CA6849682068FFF755FC40212068FFF773 +:108C700078FC0020D5E70020D3E70120D1E70220CF +:108C8000704700BF8800FEFF01F01F014FF0010C8C +:108C90000CFA01FC036A23EA0C030362036A8A40AC +:108CA000134303627047000010B5044610293CD8F6 +:108CB000DFE801F0093B3B3B1F3B3B3B263B3B3B9B +:108CC0002D3B3B3B340090F83E30DBB2013B18BFFC +:108CD0000123002B40F08980102974D8DFE801F0CF +:108CE0002C73737363737373677373736B737373BF +:108CF0006F0090F83F30DBB2013B18BF0123E8E77B +:108D000090F84030DBB2013B18BF0123E1E790F857 +:108D10004130DBB2013B18BF0123DAE790F8423063 +:108D2000DBB2013B18BF0123D3E790F84330DBB23D +:108D3000013B18BF0123CCE7022384F83E30012217 +:108D40002068FFF7A1FF23682A492B4A934218BFE6 +:108D50008B4203D15A6C42F400425A642368254A7C +:108D6000B3F1804F18BF934231D0A2F57C429342B9 +:108D70002DD002F58062934229D002F580629342A1 +:108D800025D002F57842934221D002F570529342E9 +:108D90001DD0A2F59432934219D01A6842F0010214 +:108DA0001A60002022E0022384F83F30C7E7022344 +:108DB00084F84030C3E7022384F84130BFE7022340 +:108DC00084F84230BBE7022384F84330B7E7996860 +:108DD0000A4A0A40062A18BFB2F5803F07D01A682F +:108DE00042F001021A60002000E0012010BD0020C6 +:108DF000FCE700BF00000140000401400700010043 +:108E000038B504460D4600220068FFF73DFF236891 +:108E10002449254A934218BF8B420DD1196A41F269 +:108E20001112114208D1196A40F24442114203D191 +:108E30005A6C22F400425A642368196A41F21112F2 +:108E4000114208D1196A40F24442114203D11A6812 +:108E500022F001021A60102D1FD8DFE805F0091E6C +:108E60001E1E0E1E1E1E121E1E1E161E1E1E1A0068 +:108E7000012384F83E30002038BD012384F83F30C0 +:108E8000F9E7012384F84030F5E7012384F8413005 +:108E9000F1E7012384F84230EDE7012384F8433001 +:108EA000E9E700BF000001400004014090F83C20C9 +:108EB000012A45D070B40346012280F83C200222EA +:108EC00080F83D200268506894681E4E1E4DAA42EC +:108ED00018BFB24203D120F470004D68284320F03F +:108EE00070000D68284350601A681648B2F1804F30 +:108EF00018BF824217D0A0F57C40824213D000F503 +:108F0000806082420FD000F5806082420BD000F575 +:108F10007840824207D000F57050824203D0A0F51D +:108F20009430824204D124F0800489682143916006 +:108F3000012283F83D20002083F83C0070BC70477C +:108F400002207047000001400004014090F83C30CE +:108F5000012B3CD030B40246012380F83C30CB6872 +:108F600023F440738868034323F480634868034311 +:108F700023F400630868034323F480530869034320 +:108F800023F400534869034323F48043886A03436E +:108F900023F47023886943EA004310680D4D0E4C9A +:108FA000A04218BFA8420CD123F470034C6A43EAD4 +:108FB000045323F08073CC69234323F00073096AC0 +:108FC0000B434364002082F83C0030BC7047022011 +:108FD000704700BF00000140000401407047704727 +:108FE0007047000030B503683B4A904214BF4FF011 +:108FF000000E4FF0010EB0F1804F14BF72464EF0DC +:109000000102AAB9354CA04214BF00240124344DFA +:10901000A8420DD064B904F1804404F58234A04222 +:1090200014BF0024012405F50065A84200D01CB13E +:1090300023F070034C682343002A33D1274A90421F +:1090400014BF00220122264CA0422BD052BB02F1B9 +:10905000804202F58232904214BF0022012204F5C0 +:109060000064A0421ED0EAB91E4A904214BF0022FA +:10907000012204F59A34A04214D09AB91A4A9042B7 +:1090800014BF0022012204F50064A0420AD04AB9AC +:10909000164A904214BF00220122A4F59634A04241 +:1090A00000D022B123F4407CCB684CEA0303036078 +:1090B0008A68C2620A8882620D4A904214BF73466F +:1090C0004EF001030BB10B690363436943F00103E5 +:1090D0004361002030BD00BF000001400008004097 +:1090E00000040040004401400018004000200040FF +:1090F00000040140B2F5004F06D001EB5301B1FB73 +:10910000F3F189B2C16070475A0802EB4102B2FB29 +:10911000F3F34FF6F0721A40C3F342031343C360F4 +:109120007047000038B5036813F0010F62D10446A0 +:109130000D460368314A1A404B68C9680B432969D8 +:109140000B43A9690B431A430260AB68426822F4DF +:109150004052134343606B69826822F440721343A8 +:109160008360274B984216D0264B98421BD0264B43 +:1091700098421CD0254B98421DD0254B98421ED0BA +:10918000244B984220D0244B984222D0234B984223 +:1091900024D001202FE00320FDF71AFD60B32B68D7 +:1091A0000BBB012027E00C20FDF712FDF6E7302075 +:1091B000FDF70EFDF2E7C020FDF7C6FDEEE74FF428 +:1091C0004070FDF7C1FDE9E74FF44060FDF700FD99 +:1091D000E4E74FF44050FDF7B7FDDFE74FF44040C0 +:1091E000FDF7B2FDDAE7AA6901462046FFF782FFE4 +:1091F000002000E0012038BD0120FCE7F369FFEF0B +:10920000001001400044004000480040004C004075 +:10921000005000400014014000780040007C0040F5 +:10922000034AD2F8883043F47003C2F8883070479C +:1092300000ED00E008B501460122054801F01EFAE4 +:10924000044B187008B1012008BD0020FCE700BFE6 +:10925000A81600208C02002008B50146012200203B +:1092600001F00CFA034B187008B1012008BD002072 +:10927000FCE700BF8C020020F8B504460D461646F8 +:10928000104901F0ECFE104B187008B1C0B2F8BDE7 +:10929000022221460D4801F021FA0B4B187008B14B +:1092A000C0B2F4E7094F0A4B32462946384601F06E +:1092B0001AFC054C2070384601F069FD2070C0B2E0 +:1092C000E5E700BF600600208C0200207806002041 +:1092D000580600202DE9F04104460F4690461D46F1 +:1092E000434901F0BCFE434B1870E8B90122214606 +:1092F000414801F0F3F906463E4B187018BB294669 +:109300003D4801F059FD3B4B187058B36420F7F706 +:10931000E9FC054622463949F6F7D4FF2846F7F717 +:10932000E9FC344B18780CE06420F7F7DBFC0546C9 +:1093300022463349F6F7C6FF2846F7F7DBFC2D4BEC +:109340001878BDE8F0816420F7F7CCFC0546234689 +:1093500032462C49F6F7B6FF2846F7F7CBFC254BEB +:109360001878EEE7284B42463946234801F0CFFAF9 +:109370000646204B187008BB55B91F4BDA68234BC3 +:109380001A603A705A787A709A78BA70DB78FB7003 +:10939000194801F0FCFC0546164B1870D8B1642042 +:1093A000F7F7A0FC064623462A461949F6F78AFF36 +:1093B0003046F7F79FFC0F4B1878C2E76420F7F7A9 +:1093C00091FC0546234632461249F6F77BFF2846B4 +:1093D000F7F790FCEFE76420F7F784FC0546224698 +:1093E0000D49F6F76FFF2846F7F784FCE3E700BF67 +:1093F000600600208C0200207806002068B9000872 +:10940000ACB80008D0B800085C060020800200203C +:1094100020B90008F8B8000848B9000810B504469B +:109420000C4901F01CFE0C4B187008B9C0B210BDFD +:109430000B222146094801F051F9074B187008B179 +:10944000C0B2F4E7054801F0A2FC034B1870C0B2AB +:10945000EDE700BF600600208C02002078060020A7 +:1094600070B504461A4901F0FAFD1A4B1870A0B9FC +:10947000204601F016FE0546164B1870D8B9642038 +:10948000F7F730FC054622461349F6F71BFF28463E +:10949000F7F730FC0F4B187870BD6420F7F722FC0B +:1094A000054622460D49F6F70DFF2846F7F722FC40 +:1094B000084B1878F0E76420F7F714FC06462346BB +:1094C0002A460749F6F7FEFE3046F7F713FCE1E7B8 +:1094D000600600208C020020B0B9000890B9000896 +:1094E000D4B90008F8B504460D461646104901F0F7 +:1094F000B6FD104B187008B1C0B2F8BD322221463B +:109500000D4801F0EBF80B4B187008B1C0B2F4E74E +:10951000094F0A4B32462946384601F0E4FA054C19 +:109520002070384601F033FC2070C0B2E5E700BF80 +:10953000600600208C0200207806002058060020DB +:1095400008B5044B03EB8002526852680344187A52 +:10955000904708BD0427002008B5084B1B5C53B991 +:10956000064B01221A5403EB80025268126803442E +:10957000187A904708BD0020FCE700BF04270020B0 +:1095800038B5044C04EB80056D68AD680444207A5E +:10959000A84738BD0427002038B5044C04EB8005EB +:1095A0006D68ED680444207AA84738BD0427002080 +:1095B00010B5044B03EB8004646824690344187AF3 +:1095C000A04710BD042700204278007840EA02201E +:1095D0007047C378827842EA0322437843EA022341 +:1095E000007840EA032070470170090A4170704713 +:1095F0000170C1F307234370C1F307438370090E61 +:10960000C1707047944632B10A780131027001305E +:10961000BCF1010CF8D1704701700130013AFBD167 +:10962000704784469CF800000CF1010C0B78013166 +:10963000C01A013A01D00028F4D07047034600E078 +:109640000133187808B18842FAD1704710B44FF04E +:10965000000C634602E04FF0010C0133012B15D8DA +:109660001A01184CA258002AF5D00468A242F4D17D +:10967000144A02EB0312546882689442EDD1114AF5 +:1096800002EB0312946842699442E6D1022B0BD09C +:10969000B1B90C4A02EB03139B89B3F5807F0DD05F +:1096A00000205DF8044B7047022914BF63464CF05C +:1096B00001030BB10020F4E71220F2E71020F0E7DD +:1096C0001020EEE7DC260020002000E00130012819 +:1096D00004D80301034AD358002BF7D1023818BF2E +:1096E00001207047DC26002070B4002300E0013325 +:1096F000012B13D81A01234CA45802689442F6D1C6 +:10970000204A02EB0312546882689442EFD11D4A4A +:1097100002EB0312946842699442E8D1022B08D00C +:10972000F9B1184A02EB031292894ABB4FF48072D6 +:109730001DE00023012B05D81A01124CA2580AB1D2 +:109740000133F7E7022B19D00E4D1C0105EB031274 +:1097500006682E51846854604069906000209081B2 +:10976000DEE7084A02EB03129289013292B2054900 +:1097700001EB03118A81581C70BC70470020FBE785 +:109780000020F9E7DC2600200138012815D80D4B10 +:1097900003EB00139B89B3F5807F03D043B1013BFA +:1097A0009BB200E00023074A02EB0012938133B919 +:1097B00003010020034AD050704702207047002068 +:1097C000704700BFDC260020002303E05DF8044B57 +:1097D00070470133012B11D81A0109498A58824276 +:1097E000F7D110B41A0100248C500133012BEDD8AD +:1097F0001A0103498A588242F7D1F3E7704700BF44 +:10980000DC26002002398369023B8B4204D943895C +:10981000C06A01FB03007047002070470268C36AFA +:1098200004339089B1FBF0F15289B1FBF2F101E010 +:10983000091A0833186818B18142F9D258680844E7 +:10984000704770B506460D4601F11A00FFF7BCFEE1 +:109850003378032B00D070BD044605F11400FFF7E8 +:10986000B3FE44EA0040F6E770B506460C461546DE +:1098700091B204F11A00FFF7B7FE3378032B00D042 +:1098800070BD290C04F11400FFF7AEFEF8E738B5FF +:1098900000234B72C36973B305460C46002213467E +:1098A00006E0BCF1090F0FD0A1184B7201326346DC +:1098B0000A2B0ED803F1010C296ACB5C202BF6D0C1 +:1098C000052BEED1E523ECE7A1182E2048720132DA +:1098D000EAE72244002353722B6ADB7A2372286A58 +:1098E0001C30FFF776FE2060286A1630FFF771FE05 +:1098F000E080000CA08038BD2DE9F84F81468A46F3 +:10990000D1F8008000F1240B0B2220215846FFF7EC +:1099100083FE00252B46082729E0013618F806307B +:109920002F2BFAD05C2BF8D04644CAF80060002DEB +:1099300044D099F82430E52B35D0202C37D8042397 +:1099400089F82F30002035E014F0800F27D1214610 +:109950001B48FFF773FE78BBA4F16103DBB2192B40 +:1099600001D8203CE4B20BF80540013533465E1CBB +:1099700018F80340202CD7D95C2C18BF2F2CCDD041 +:109980002E2C18BFAF42DFD82E3C18BF01240B2F5E +:1099900008BF44F0010464B908250B27E6E7803CC2 +:1099A000084B1C5DD3E7052389F82430C5E7002365 +:1099B000C6E70620BDE8F88F0620FBE70620F9E79A +:1099C000F4B90008F8BB00080146006808B1024677 +:1099D00003E04FF0FF30704701321378202B01D99C +:1099E0003A2BF9D13A2B01D000207047034613F8E7 +:1099F000010B3038092898BF9A4203D128B90132A7 +:109A00000A6070474FF0FF3070474FF0FF307047EB +:109A100038B50D46044698B103689BB11A78A2B1D7 +:109A20008188DA88914203D0092000242C6038BD57 +:109A30005878FFF785FD10F0010009D12468F5E79B +:109A40000920F3E71C460920F0E709200024EDE790 +:109A500009200024EAE72DE9F041C57815B9284628 +:109A6000BDE8F0810446076B00F1340801233A4653 +:109A700041464078FFF790FD0546A0B90023E3700A +:109A8000636AFB1AE2699342E9D2A67808E0E369C7 +:109A90001F4401233A4641466078FFF77DFD013EB1 +:109AA000012EF4D8DBE70125D9E770B5036B8B42B3 +:109AB00002D10026304670BD04460D46FFF7CBFFAD +:109AC00006460028F6D101232A4604F134016078C5 +:109AD000FFF756FD10B101264FF0FF352563E9E78A +:109AE00038B504460023C3704FF0FF330363FFF71C +:109AF000DCFF30BB054604F23220FFF765FD4AF675 +:109B0000552398421FD194F83430E92B07D0636B6A +:109B100003F0FF130D4A934201D0022514E004F133 +:109B20006A00FFF756FD20F07F40094B98420BD0AA +:109B300004F18600FFF74DFD064B984204D0022544 +:109B400002E0042500E00325284638BDEB00900024 +:109B500046415400464154332DE9F04F87B00D463D +:109B6000164600230B60FFF72FFF071EC0F2678128 +:109B7000BE4B53F82740002C00F066812C6006F0A5 +:109B8000FE06237873B16078FFF7DAFC10F0010568 +:109B900008D1002E00F0548110F0040F00F0508125 +:109BA0000A254DE100232370F8B26070FFF7D4FC62 +:109BB00010F0010F40F04A811EB110F0040F40F088 +:109BC000478104F10C0202216078FFF7F1FC0546A1 +:109BD000002840F03F81A289A2F500739BB2B3F543 +:109BE000606F00F23981531E1A4201D0012527E12E +:109BF00000212046FFF774FF022800F0888000262D +:109C0000042800F02B81012800F22A8104F13F0092 +:109C1000FFF7DAFCB4F80C80404540F0238104F1F2 +:109C20004A00FFF7D1FC074620B904F15800FFF7BE +:109C3000D0FC0746E76194F84420A270531EDBB2C3 +:109C4000012B00F2118107FB02F3009394F841907D +:109C5000A4F80A90B9F1000F00F0108109F1FF3368 +:109C600019EA030F40F00C8104F14500FFF7ACFC4A +:109C7000824620814FEA581BB0FBFBF30BFB13031A +:109C80009BB2002B40F0FE8004F14700FFF79CFCE4 +:109C9000019020B904F15400FFF79BFC019004F1FE +:109CA0004200FFF791FC0146002800F0ED80009B88 +:109CB000C318BAFBFBFB5B44019A9A42C0F0E680F2 +:109CC000D21AB2FBF9F04A45C0F0E2804FF6F572C5 +:109CD000904234D840F6F57290426AD94FF0020BA8 +:109CE0002FE0002006AB03EB860343F8100C01368F +:109CF000032E0ED804F13400330103F5DF7318444A +:109D00000379002BEDD00830FFF763FCEAE700266B +:109D1000EEE700270AE031462046FFF7E1FE012882 +:109D20007FF66EAF0137032F3FF66AAF06AB03EB4A +:109D3000870353F8106C002EEDD10320F2E74FF0AB +:109D4000030B00F10209C4F8189026628A196262B6 +:109D50003344E362BBF1030F2ED0BAF1000F00F0E1 +:109D60009D80009B1A44A262BBF1020F35D009EB23 +:109D7000490209F0010303EB52034344013BB3FBE7 +:109D8000F8F3BB4200F28C804FF0FF336361236134 +:109D900080232371BBF1030F22D084F800B0344A32 +:109DA000138801339BB21380E3802046FFF70CFD3C +:109DB00046E04FF0010BC4E704F15E00FFF704FC3E +:109DC000002867D1BAF1000F66D104F16000FFF7F7 +:109DD00000FCA0624FEA8903CFE74FEA4903CCE7D2 +:109DE00004F16400FFF7F0FB0128D6D1711C204676 +:109DF000FFF75BFE0028D0D10023237104F232204C +:109E0000FFF7E2FB4AF655239842C6D104F134002D +:109E1000FFF7DFFB174B9842BFD104F50670FFF741 +:109E2000D8FB154B9842B8D104F50770FFF7D1FB6A +:109E3000606104F50870FFF7CCFB2061ADE70B25EE +:109E4000284607B0BDE8F08F0C25F9E70325F7E7B2 +:109E50000A25F5E70125F3E70125F1E70125EFE7FD +:109E60000D25EDE70D25EBE70D25E9E7002700209F +:109E7000FC26002052526141727241610D25DFE7DC +:109E80000D25DDE70D25DBE70D25D9E70D25D7E706 +:109E90000D25D5E70D25D3E70D25D1E70D25CFE716 +:109EA0000D25CDE72DE9F047012940F28E800446CB +:109EB0000D46174683698B4240F28B800378022B54 +:109EC00049D0032B60D0012B40F0858001EB510875 +:109ED000416A8389B8FBF3F31944FFF7E6FD0646B0 +:109EE000002873D104F1340A08F10109A389B8FBF1 +:109EF000F3F203FB128815F0010522D01AF808309E +:109F000003F00F0343EA0713DBB20AF8083001231A +:109F1000E370616AA389B9FBF3F319442046FFF7A4 +:109F2000C4FD0646002851D1A389B9FBF3F203FB17 +:109F3000129945B1C7F307130AF809300123E370FA +:109F400044E0FBB2E1E71AF80930C7F3032223F03B +:109F50000F031343F0E7416A83895B08B5FBF3F312 +:109F60001944FFF7A2FD064680BB04F134006D00E2 +:109F7000A389B5FBF3F203FB1255B9B22844FFF7EE +:109F800033FB0123E37021E0416A83899B08B5FB21 +:109F9000F3F31944FFF789FD0646B8B927F0704777 +:109FA00004F13403AD00A289B5FBF2F102FB1155B7 +:109FB0001D442846FFF70DFB00F070413943284649 +:109FC000FFF716FB0123E37000E002263046BDE8F0 +:109FD000F0870226FAE70226F8E7F8B505680129B6 +:109FE0006AD90C46AB698B4268D92B78022B35D0E5 +:109FF000032B49D0012B63D101EB5106696AAB8970 +:10A00000B6FBF3F319442846FFF74FFD10B14FF0AC +:10A01000FF3052E0771CAB89B6FBF3F203FB12660C +:10A020002E4496F83460696AB7FBF3F31944284666 +:10A03000FFF73BFD002845D1AB89B7FBF3F203FBEB +:10A0400012772F4497F8343046EA032014F0010FBA +:10A0500001D0000931E0C0F30B002EE0696AAB8942 +:10A060005B08B4FBF3F319442846FFF71EFD60BB01 +:10A0700005F134006400AB89B4FBF3F203FB124436 +:10A080002044FFF7A1FA18E0696AAB899B08B4FB8A +:10A09000F3F319442846FFF708FDC8B905F1340069 +:10A0A000A400AB89B4FBF3F203FB12442044FFF796 +:10A0B00090FA20F0704000E00120F8BD0120FCE79C +:10A0C0000120FAE74FF0FF30F7E74FF0FF30F4E7F9 +:10A0D0004FF0FF30F1E72DE9F041D0F80080B1F505 +:10A0E000001F49D207460E4611F01F0F47D14161AC +:10A0F00084681CBB98F80030022B01D9D8F828409E +:10A10000E4B9B8F80830B3EB561F3AD9D8F828307C +:10A11000FB61BC61FB69E3B3B8F80C20B6FBF2F25B +:10A120001344FB6108F13403B8F80C20B6FBF2F1DC +:10A1300002FB11610B443B6200201EE0B8F80A509C +:10A14000B8F80C3003FB05F5AE420FD32146384674 +:10A15000FFF743FF0446B0F1FF3F14D0012814D9A4 +:10A16000D8F81830834212D9761BEDE721464046D5 +:10A17000FFF748FBF861CCE70220BDE8F081022040 +:10A18000FBE70220F9E70120F7E70220F5E70220CC +:10A19000F3E70220F1E72DE9F041054606680F4696 +:10A1A00051B9D6F81080B8F1000F12D0B369434509 +:10A1B00011D84FF001080EE0FFF70FFF034601280A +:10A1C0004CD9B0F1FF3F4ED0B26982424BD8B8466D +:10A1D00001E04FF0010844460CE021462846FFF715 +:10A1E000FCFE034678B1B0F1FF3F18BF01283AD01A +:10A1F000444537D00134B369A342EED8B8F1010F1A +:10A200002ED90224E9E74FF0FF3221463046FFF70E +:10A2100049FE0246B0FA80F04009002F08BF002036 +:10A2200070B9A2B934617269B369023B9A4201D82C +:10A23000013A7261337943F001033371234612E02E +:10A24000224639463046FFF72DFE0246E9E7012A4D +:10A2500001D0012307E04FF0FF3304E0012302E0C7 +:10A26000002300E000231846BDE8F081F8B50C4655 +:10A27000056801292ED906461146AB69A3422BD9A0 +:10A280004AB14FF0FF322846FFF70CFE074610B1E7 +:10A2900023E0A24221D9274621463046FFF79DFE02 +:10A2A0000446E0B101281CD0B0F1FF3F1BD00022D2 +:10A2B00039462846FFF7F6FD074670B96B69AA696B +:10A2C000911E8B42E5D201336B612B7943F0010380 +:10A2D0002B71DEE7022700E002273846F8BD002791 +:10A2E000FBE70227F9E70127F7E738B504460568D9 +:10A2F000C1692846FFF7D9FB20B9236AE5221A7005 +:10A300000123EB7038BD2DE9F84306684469C36941 +:10A31000002B74D005460F462034B4F5001F70D2D0 +:10A32000B189B4FBF1F201FB12423AB90133C361C6 +:10A330008169A1B93389B3EB541F0CD96C6106F163 +:10A340003403B289B4FBF2F102FB114423442B62C3 +:10A350000020BDE8F8830023C3610420F9E7B28937 +:10A36000B4FBF2F27389013B12EA0308E6D1FFF76E +:10A3700034FE8146012846D9B0F1FF3F45D0B3698C +:10A38000834234D88FB1A9692846FFF704FF81467C +:10A3900000283CD001283CD0B0F1FF3F3BD03046F4 +:10A3A000FFF759FB28B10120D3E70023EB6104201C +:10A3B000CFE7B289002106F13400FFF72DF94946B5 +:10A3C0003046FFF71FFA3063738998450BD201239B +:10A3D000F3703046FFF73FFBF8B908F10108336B23 +:10A3E00001333363F0E7336BA3EB08033363C5F842 +:10A3F000189049463046FFF705FAE8619EE70420C9 +:10A40000A7E70420A5E70220A3E70120A1E7072092 +:10A410009FE702209DE701209BE7012099E770B5A7 +:10A42000044606680021FFF756FE054640B128465F +:10A4300070BD00212046FFF766FF05460028F6D1D3 +:10A44000E1693046FFF731FB05460028EFD1206A6D +:10A4500003787BB1C37A03F03F03A371C37A13F08F +:10A46000080FE6D10B2204F12401FFF7DAF80028E7 +:10A47000DFD1DCE70425DAE730B583B0044601918B +:10A48000056801E001330193019B1A782F2AF9D066 +:10A490005C2AF7D00022A2601B781F2B21D901A9CA +:10A4A0002046FFF729FA034618BB2046FFF7B7FFFF +:10A4B00094F82F200346F8B912F0040F19D1A379AC +:10A4C00013F0100F1FD005F134016369AA89B3FBA3 +:10A4D000F2F002FB103319442846FFF7B2F9A060EE +:10A4E000DDE7802384F82F3011462046FFF7F3FD87 +:10A4F0000346184603B030BD0428FAD112F0040F09 +:10A50000F7D10523F5E70523F3E7F8B504460E4632 +:10A5100007680021FFF7DFFD0246B8B9002506E015 +:10A52000002501212046FFF7EEFE024670B9E169E1 +:10A530003846FFF7BAFA024640B9236A1B78002B67 +:10A5400018BFE52BECD10135B542EAD1042A01D080 +:10A550001046F8BD0722FBE770B5044606680121E6 +:10A56000FFF7D3FF054608B1284670BDE1693046C4 +:10A57000FFF79BFA05460028F6D120220021206A29 +:10A58000FFF74AF80B2204F12401206AFFF73AF89A +:10A590000123F370E8E7F8B504460E460568042782 +:10A5A00005E000212046FFF7AEFE0746E8B9E16965 +:10A5B000D9B12846FFF779FA0746B0B9236A1A7865 +:10A5C00092B1DB7A03F03F03A371E52A18BF2E2A6C +:10A5D000E7D00F2BE5D023F02003082B14BF002376 +:10A5E0000123B342DDD100E004270FB10023E36172 +:10A5F0003846F8BD70B50446FFF72DFA054648B950 +:10A600002378032B08D0002211466078FEF7D0FF94 +:10A6100000B10125284670BD2379012BF3D104F147 +:10A620003406A28900213046FEF7F6FF4AF655218E +:10A6300004F23220FEF7D8FF0E493046FEF7D8FF6D +:10A640000D4904F50670FEF7D3FF616904F5077044 +:10A65000FEF7CEFF216904F50870FEF7C9FF226AF4 +:10A6600001322263012331466078FEF795FF002313 +:10A670002371C8E7525261417272416170B584B072 +:10A68000019000911646039103A8FFF79DF9041E5F +:10A6900020DB114B53F8245025B12846FFF794F8DE +:10A6A00000232B70019B0BB100221A70019B0A4AF8 +:10A6B00042F82430721E18BF0122002B08BF42F05E +:10A6C000010212B1002004B070BD01A96846FFF775 +:10A6D00043FAF8E70B20F6E7002700202DE9F043C6 +:10A6E00091B00191002800F010811446064602F056 +:10A6F0003F073A4603A901A8FFF72EFA054628B1FD +:10A7000000233360284611B0BDE8F083039B049317 +:10A71000019904A8FFF7B0FE054660B99DF93F30E6 +:10A72000002B52DB14F03E0F14BF0121002104A8BE +:10A73000FEF78CFF054614F01C0F5CD0002D50D0A6 +:10A74000042D44D047F00807002DD9D117F0080F89 +:10A7500061D0FAF7C1F8044601460C980E30FEF7B6 +:10A7600047FF21460C981630FEF742FF0C9B202233 +:10A77000DA72DDF80C80DDF8309049464046FFF78C +:10A7800060F80446002249464046FFF76DF8002174 +:10A790000C981C30FEF72CFF039B0122DA70002C72 +:10A7A00039D0039BD3F830800022214604A8FFF75C +:10A7B0005DFD05460028A3D141460398FFF775F9D2 +:10A7C0000546013C039B1C6125E00625B3E7FEF727 +:10A7D0007BFF08B91225B5E704A8FFF7BDFE0546C3 +:10A7E000B0E79DF8163013F0110F13D114F0040FD9 +:10A7F000AAD0082584E7002D82D19DF8163013F0E9 +:10A80000100F7ED114F0020F05D013F0010F02D00B +:10A81000072575E70725002D7FF472AF17F0080FA5 +:10A8200001D047F04007039B1B6B73620C9BB36224 +:10A83000012F94BF0021012104A8FEF755FF3061CC +:10A8400008B902255CE7039CDDF8308041462046CC +:10A85000FEF7F7FFB06008F11C00FEF7BAFEF060EB +:10A860000021F1623460E388B3803775717531621D +:10A87000B16106F130084FF480524046FEF7CCFE3D +:10A8800017F0200F39D0F468002C36D0B461039B48 +:10A890005F899B8903FB07F7B16801E00225E41B90 +:10A8A000BC4294BF002301235DB953B13046FFF78A +:10A8B00094FB01460128F1D9B0F1FF3FEFD101250A +:10A8C000EDE7F161002D7FF41BAF039FB7F80C900B +:10A8D000B4FBF9F309FB13437BB13846FEF792FF53 +:10A8E00008B902250CE7B4FBF9F2024432620123F5 +:10A8F00041467878FEF744FE28B9002D3FF402AFB8 +:10A90000FEE60425FCE60125FAE60925FAE62DE92E +:10A91000F04F85B004460F46154698460023C8F808 +:10A92000003003A9FFF774F80190002840F0B980C7 +:10A93000637D0193002B40F0B480237D13F0010F61 +:10A9400000F0CE80E668A369F61AAE4267D32E46C1 +:10A9500065E0E36A1BB12046FEF760FF73E0E16942 +:10A960002046FFF73AFB6EE04FF0020A84F815A08C +:10A97000CDF804A095E04FF0010A84F815A0CDF8B9 +:10A9800004A08EE04FF0020A84F815A0CDF804A0D0 +:10A9900087E094F91430002B04DB039B9D890AFBAC +:10A9A00005F532E0236AA3EB09035345F5D2039A78 +:10A9B000928904F1300102FB0370FEF723FEECE7FD +:10A9C000226A4A450DD094F91430002B6DDB012327 +:10A9D0004A4604F1300103984078FEF7D1FD002883 +:10A9E00077D1C4F82090039B9D89A369B3FBF5F24E +:10A9F00005FB1233ED1AAE4200D2354604F13001A8 +:10AA00002A4619443846FEF7FDFD2F44A3692B441E +:10AA1000A361D8F800302B44C8F80030761B002E14 +:10AA20003FD0A169039A9589B1FBF5F305FB131398 +:10AA3000002BD8D1B1FBF5F55389013B1D4008D15E +:10AA4000002986D1A06801288ED9B0F1FF3F92D0AD +:10AA5000E061DDF80CB0E1695846FEF7D3FE8146AF +:10AA600000288FD0A944BBF80C30B6FBF3FAB342F0 +:10AA7000A6D805EB0A03BBF80A20934201D9A2EB42 +:10AA8000050A53464A4639469BF80100FEF778FD11 +:10AA900000283FF47EAF4FF0010A84F815A0CDF8EE +:10AAA00004A0019805B0BDE8F08F012304F1300146 +:10AAB0009BF80100FEF770FD20B9237D03F07F03B2 +:10AAC000237584E74FF0010A84F815A0CDF804A09F +:10AAD000E7E74FF0010A84F815A0CDF804A0E0E7FD +:10AAE00007230193DDE72DE9F04F85B004460F46BB +:10AAF000154698460023C8F8003003A9FEF788FFE2 +:10AB0000019000284AD1637D0193002B46D1237D1B +:10AB100013F0020F00F0EC80A369EB42C0F0B680A6 +:10AB2000DD43B3E0E36A002B3CD02046FEF776FE1F +:10AB3000002800F0D880012839D0B0F1FF3F3DD087 +:10AB4000E061A36803B9A06094F91430002B3CDBEA +:10AB5000DDF80CB0E1695846FEF754FE8146002846 +:10AB600048D0B144BBF80C30B5FBF3FAAB425FD828 +:10AB700006EB0A03BBF80A20934201D9A2EB060AAE +:10AB800053464A4639469BF80100FEF705FDC0B31F +:10AB90004FF0010A84F815A0CDF804A0019805B083 +:10ABA000BDE8F08FE1692046FFF7F5FAC0E74FF006 +:10ABB000020A84F815A0CDF804A0EFE74FF0010ACF +:10ABC00084F815A0CDF804A0E8E70123226A04F177 +:10ABD000300103984078FEF7DFFC20B9237D03F0B5 +:10ABE0007F032375B4E74FF0010A84F815A0CDF870 +:10ABF00004A0D3E74FF0020A84F815A0CDF804A012 +:10AC0000CCE7236AA3EB0903534504D3039B9E8936 +:10AC10000AFB06F62BE0039A928902FB037104F10A +:10AC20003000FEF7EFFC237D03F07F032375EDE793 +:10AC3000236A4B4503D0A269E3689A4242D3C4F821 +:10AC40002090039B9E89A369B3FBF6F206FB1233A7 +:10AC5000F61AB54200D22E4604F13000324639468B +:10AC60001844FEF7CFFC237D63F07F032375374440 +:10AC7000A3693344A361E268934238BF1346E3609B +:10AC8000D8F800303344C8F80030AD1B5DB3A1697B +:10AC9000039A9689B1FBF6F306FB1313002BD0D170 +:10ACA000B1FBF6F65389013B1E407FF44DAF0029FE +:10ACB0007FF438AFA06800287FF43DAF2046FFF74F +:10ACC0006AFA35E701234A4604F130019BF8010096 +:10ACD000FEF756FC0028B2D04FF0010A84F815A008 +:10ACE000CDF804A05AE7237D43F04003237555E7D0 +:10ACF0000723019352E770B582B0044601A9FEF71D +:10AD000087FE70B9237D13F0400F0AD013F0800F37 +:10AD100009D1F9F7E1FD0546616A0198FEF7C5FE24 +:10AD200078B102B070BD0123226A04F130010198AC +:10AD30004078FEF731FC40BB237D03F07F03237591 +:10AD4000E7E7A66AF37A43F02003F372A26831467C +:10AD50002068FEF789FDE16806F11C00FEF748FC5B +:10AD6000294606F11600FEF743FC002106F1120009 +:10AD7000FEF73AFC019B0122DA700198FFF73AFCDA +:10AD8000237D23F040032375CBE70120C9E710B5ED +:10AD900082B00446FFF7AFFF08B102B010BD01A9B1 +:10ADA0002046FEF735FE0028F7D12069FEF7ECFCBF +:10ADB0000028F2D12060F0E72DE9F04F83B004467F +:10ADC0000D4601A9FEF724FE064678B9667D6EB9E8 +:10ADD000E36A002B00F08E80B5F1FF3F0AD0E768F0 +:10ADE000AF4200D32F46A761002F3FD1304603B0BA +:10ADF000BDE8F08F984658F804BBD4F808A0BAF123 +:10AE0000000F27D04FF0020909F10209514600272F +:10AE100001370D462046FFF7E0F80146012813D917 +:10AE2000B0F1FF3F13D001358542F1D0CB4505D3BA +:10AE3000434643F8087BC8F804A09846019B9B69E9 +:10AE40008B4209D98A46DFE702266675CEE70126DE +:10AE50006675CBE74FF00209E36AC3F80090D94565 +:10AE600000F2FB800023C8F80030BFE77D1E2946B2 +:10AE70002046FEF7D3FC0146E061DDF80480404641 +:10AE8000FEF7C0FC00B3B8F80C30B5FBF3F5B8F82A +:10AE90000A20013A15400544B7FBF3F203FB127791 +:10AEA000002FA3D0226AAA42A0D094F91430002B1C +:10AEB0000DDB01232A4604F1300101984078FEF7AA +:10AEC0005FFBA0B9256291E7022666758EE7012334 +:10AED00004F1300198F80100FEF75EFB20B9237DF4 +:10AEE00003F07F032375E4E7012666757EE70126FC +:10AEF00066757BE7E368AB4204D2227D12F0020F55 +:10AF000000D11D46A3690022A261E5B1019AB2F801 +:10AF10000A80928902FB08F873B16A1EB2FBF8F24C +:10AF2000013BB3FBF8F18A4206D3C8F1000213409B +:10AF3000A361EF1AE56904E0A06850B3E0612F4611 +:10AF40000546002D45D1A369E268934204D9E36028 +:10AF5000227D42F04002227501988289B3FBF2F112 +:10AF600002FB1133002B3FF441AF226AAA423FF4A7 +:10AF70003DAF94F91430002B5DDB01232A4604F128 +:10AF8000300101984078FEF7FBFA002862D1256273 +:10AF90002CE700212046FFF7FEF8012804D0B0F18D +:10AFA000FF3F04D0A060C9E7022666751EE70126B0 +:10AFB00066751BE729462046FFF70FF80546B5F1F1 +:10AFC000FF3F2DD0012D2ED9019B9B69AB422AD981 +:10AFD000E561474510D9A7EB0807A3694344A3617E +:10AFE000237D13F0020FE5D029462046FFF7D3F862 +:10AFF00005460028E3D10746A3693B44A3610198B5 +:10B00000B0F80C80B7FBF8F308FB13738BB129463B +:10B01000FEF7F8FB054648B1B7FBF8F73D4492E769 +:10B0200001266675E2E602266675DFE6022666758B +:10B03000DCE61D4687E7012304F130014078FEF786 +:10B04000ABFA20B9237D03F07F03237595E7012632 +:10B050006675CBE601266675C8E61126C6E630B5EC +:10B060008FB001900C46002202A901A8FEF774FDE2 +:10B07000054610B128460FB030BD019902A8FFF770 +:10B08000FBF905460028F5D19DF93730002B06DB8A +:10B09000002CEFD0214602A8FEF7F9FBEAE70625CF +:10B0A000E8E7F0B59DB00190022203A901A8FEF7E0 +:10B0B00053FD039B1093044610B120461DB0F0BD14 +:10B0C000019910A8FFF7D8F904460028F5D102210C +:10B0D00010A8FEF7BBFA04460028EED19DF96F30A8 +:10B0E000002B3CDB9DF8465015F0010F39D1039F32 +:10B0F00018993846FEF7A5FB064615F0100F13D138 +:10B10000002CDAD110A8FFF7F0F80446B0FA80F06E +:10B110004009002E08BF0020D0B9002CCDD10398E3 +:10B12000FFF768FA0446C8E704970690002104A8D0 +:10B13000FEF7D1FF04460028BFD1002104A8FFF785 +:10B140002AFA044610B10428DAD1DBE70724D7E74E +:10B150000022314610A8FFF789F80446DDE70624EF +:10B16000ABE70724A9E70000134B5B7A13BB10B5CC +:10B17000044603F0FF00104B93F809C05FFA8CFC03 +:10B180004FF0000E03F80CE093F809C003EB8C0CB1 +:10B19000CCF804405C7A1C4422725A7A541CE4B203 +:10B1A0005C7230320A703A234B702F238B7081F817 +:10B1B00003E010BD012070470427002008B50022DD +:10B1C000FFF7D2FF08BD000010B503460C4A0D4939 +:10B1D0000D48006840B10C4800680344521A93427D +:10B1E00006D8094A136010BD0748084C0460F2E70E +:10B1F000F5F704FB0C2303604FF0FF30F3E700BFCB +:10B200000000082000400000102700201827002020 +:10B21000026852E8003F23F4907342E800310029AD +:10B22000F6D1026802F1080353E8003F23F001035E +:10B23000083242E800310029F3D1036E012B06D019 +:10B240002023C0F8803000230366836670470268BD +:10B2500052E8003F23F0100342E800310029F6D104 +:10B26000EEE7000010B504468368026913434269A3 +:10B270001343C269134301680868914A02401A43A4 +:10B280000A602268536823F44053E1680B4353601B +:10B29000A269236A1A4321688B6823F4306313433D +:10B2A0008B602368874A934218D0874A93423AD0EA +:10B2B000864A93424FD0864A93425ED0854A934253 +:10B2C0006DD0854A93427FD0844A934200F09180AA +:10B2D000834A934200F0A28010230BE0814BD3F805 +:10B2E000903003F00303032B1BD8DFE803F00216B2 +:10B2F000AB180123E069B0F5004F00F0D780082BB0 +:10B3000000F23881DFE813F0140127011201360141 +:10B310002A013601360136012D010423EAE708230C +:10B32000E8E71023E6E76F4BD3F8903003F00C0307 +:10B330000C2B0ED8DFE803F0070D0D0D090D0D0DD8 +:10B34000880D0D0D0B000023D4E70423D2E708235A +:10B35000D0E71023CEE7634BD3F8903003F03003EF +:10B36000202B73D005D8002B72D0102B72D1042360 +:10B37000C0E7302B70D10823BCE75A4BD3F890308C +:10B3800003F0C003802B69D005D8002B68D0402B78 +:10B3900068D10423AEE7C02B66D10823AAE7514B3E +:10B3A000D3F8903003F44073B3F5007F5ED006D835 +:10B3B000002B5DD0B3F5807F5CD104239AE7B3F511 +:10B3C000407F59D1082395E7464BD3F8903003F4DA +:10B3D0004063B3F5006F51D006D8002B50D0B3F5C1 +:10B3E000806F4FD1042385E7B3F5406F4CD108231C +:10B3F00080E73C4BD3F8903003F44053B3F5005F43 +:10B4000044D006D8002B43D0B3F5805F42D104234B +:10B4100070E7B3F5405F3FD108236BE7314BD3F8BA +:10B42000903003F44043B3F5004F37D005D8BBB399 +:10B43000B3F5804F36D104235CE7B3F5404F33D1E9 +:10B44000082357E7022355E7022353E7022351E776 +:10B4500000234FE710234DE710234BE7022349E772 +:10B46000002347E7102345E7102343E7022341E782 +:10B4700000233FE710233DE710233BE7022339E792 +:10B48000012337E7102335E7102333E7022331E7A1 +:10B4900000232FE710232DE710232BE7022329E7B2 +:10B4A000002327E7102325E7102323E7082B5BD889 +:10B4B000DFE803F01A343A5A375A5A5A1E0000BFCE +:10B4C000F369FFEF001001400044004000480040D5 +:10B4D000004C004000500040001401400078004043 +:10B4E000007C004000380240FAF7D2FD00283DD031 +:10B4F0006268530803EB4003B3FBF2F3A3F11001BE +:10B500004FF6EF72914233D89AB222F00F02C3F392 +:10B51000420313432268D360002030E0FAF7C8FDED +:10B52000E4E7FAF7A5FCE1E71748E1E7164802E08F +:10B53000FAF7AEFD00B3636800EB5300B0FBF3F025 +:10B54000A0F110024FF6EF739A4217D8236880B229 +:10B55000D860002013E0FAF7ABFDEBE7FAF788FCC0 +:10B56000E8E74FF40040E6E7012008E0002006E0AD +:10B57000012004E0012002E0002000E0012000237F +:10B58000A366E36610BD00BF0024F400436A13F015 +:10B59000080F06D00268536823F40043416B0B4345 +:10B5A0005360436A13F0010F06D00268536823F416 +:10B5B0000033816A0B435360436A13F0020F06D0D5 +:10B5C0000268536823F48033C16A0B435360436AB3 +:10B5D00013F0040F06D00268536823F48023016B34 +:10B5E0000B435360436A13F0100F06D00268936850 +:10B5F00023F48053816B0B439360436A13F0200F55 +:10B6000006D00268936823F40053C16B0B43936028 +:10B61000436A13F0400F0AD00268536823F4801382 +:10B62000016C0B435360036CB3F5801F0BD0436A6E +:10B6300013F0800F06D00268536823F40023816C56 +:10B640000B43536070470268536823F4C003416C96 +:10B650000B435360EBE72DE9F84305460E461746CA +:10B660009946DDF820802B68DC6936EA04040CBFBB +:10B6700001240024BC423AD1B8F1FF3FF3D0FBF7DC +:10B6800031FAA0EB0900404534D8B8F1000F33D0AF +:10B690002B681A6812F0040FE5D0B6F1400218BF0B +:10B6A0000122802EDFD0002ADDD0DA6912F0080FE7 +:10B6B00011D1DA6912F4006FD5D04FF400621A622A +:10B6C0002846FFF7A5FD2023C5F88430002385F820 +:10B6D000783003200CE008241C622846FFF798FD10 +:10B6E000C5F88440002385F87830012000E0002070 +:10B6F000BDE8F8830320FBE70320F9E730B583B00A +:10B7000004460023C0F88430FBF7ECF905462268B4 +:10B71000126812F0080F0FD123681B6813F0040F92 +:10B7200026D12023E367C4F88030002020666066BD +:10B7300084F8780003B030BD6FF07E430093034679 +:10B7400000224FF400112046FFF785FF0028E3D0C8 +:10B75000226852E8003F23F0800342E800310029CC +:10B76000F6D12023E367002384F878300320E1E753 +:10B770006FF07E4300932B4600224FF48001204659 +:10B78000FFF769FF0028CCD0226852E8003F23F47D +:10B79000907342E800310029F6D1226802F10803D3 +:10B7A00053E8003F23F00103083242E8003100294A +:10B7B000F3D12023C4F88030002384F878300320AC +:10B7C000B8E768B310B50446C36F03B32423E36737 +:10B7D0002268136823F001031360636AE3B920460B +:10B7E000FFF740FD012811D02268536823F49043ED +:10B7F00053602268936823F02A03936022681368D9 +:10B8000043F0010313602046FFF778FF10BD80F876 +:10B810007830F9F751FDD9E72046FFF7B7FEDEE7AC +:10B8200001207047DFF834D0FDF7FAFC0C480D49D1 +:10B830000D4A002302E0D458C4500433C4188C428B +:10B84000F9D30A4A0A4C002301E013600432A242F1 +:10B85000FBD3F4F759FFF8F75DF9704700000820B3 +:10B86000000000205C00002088BC00085C00002074 +:10B8700014270020FEE70000F8B500BFF8BC08BCA4 +:10B880009E467047F8B500BFF8BC08BC9E4670479E +:10B890002F000000434F4D4D414E442E545854004C +:10B8A00046494C45312E54585400000045525252DE +:10B8B0004F52212121202A25732A20646F6573208D +:10B8C0006E6F74206578697374730A0A0000000053 +:10B8D0004552524F52212121204E6F2E20256420A7 +:10B8E000696E206F70656E696E672066696C652091 +:10B8F0002A25732A0A0A00004552524F522121215B +:10B90000204E6F2E20256420696E20726561646967 +:10B910006E672066696C65202A25732A0A0A000072 +:10B920004552524F52212121204E6F2E2025642056 +:10B93000696E20636C6F73696E672066696C652041 +:10B940002A25732A0A0A000046696C65202A257395 +:10B950002A20434C4F5345442073756363657373CA +:10B9600066756C6C790A00004552524F52212121B4 +:10B970002043616E2774207365656B2074686520B1 +:10B9800066696C653A2020202A25732A0A0A00007D +:10B990004552524F52212121202A25732A20646FBB +:10B9A0006573206E6F74206578697374730A0A007A +:10B9B0002A25732A20686173206265656E2072658E +:10B9C0006D6F766564207375636365737366756CFC +:10B9D0006C790A004552524F52204E6F2E2025643A +:10B9E00020696E2072656D6F76696E67202A2573F7 +:10B9F0002A0A0A00222A2B2C3A3B3C3D3E3F5B5D43 +:10BA00007C7F0000232D302B20000000686C4C0050 +:10BA10006566674546470000303132333435363786 +:10BA2000383941424344454600000000303132334A +:10BA3000343536373839616263646566000000006A +:10BA40000000000E000000000000000000000040A8 +:10BA50000000000000000000001F000000000000C7 +:10BA60000E00000000000000000000003030110156 +:10BA7000FFFF0000010103000000000000000000C3 +:10BA80000000000000000000004000000002000074 +:10BA900000000000000000000000000000000000A6 +:10BAA0000000000000000000000000000000000096 +:10BAB0000000000000000000A00F0000F03F0001A7 +:10BAC0000100010000000000000000000000000074 +:10BAD000000000400000000000000000001F000007 +:10BAE000000000000E000000000000000000000048 +:10BAF00012322101FFFF00000101030000000000DD +:10BB000000000000000000000000000000400000F5 +:10BB100006069919009A00000000000000000000CD +:10BB200000000000A00F0000000000000000000066 +:10BB30000000000000000000000000000000000005 +:10BB40000000FF16010001000000010002000300D8 +:10BB50000400050006000700080009000A000B00A9 +:10BB60000C000D000E001F00200022002300240006 +:10BB7000250026002700280029002A002B002C0081 +:10BB80002D002E002F003000310032003300340031 +:10BB90003500360037003E003F00400041004200C3 +:10BBA000430044004500470050005100520053003C +:10BBB0005400550056005700580059005A005B00C9 +:10BBC0005C005D005E005F001E001D00ED47000888 +:10BBD000154800081D48000841480008654800084D +:10BBE000000000000102030400000000000000004B +:10BBF00001020304060708094355454141414143F9 +:10BC000045454549494941414592924F4F4F555508 +:10BC1000594F554F9C4F9E9F41494F55A5A5A6A7EB +:10BC2000A8A9AAABACADAEAFB0B1B2B3B44141417B +:10BC3000B8B9BABBBCBDBEBFC0C1C2C3C4C5414117 +:10BC4000C8C9CACBCCCDCECFD1D14545454949494C +:10BC500049D9DADBDCDD49DF4FE14F4F4F4FE6E8F2 +:10BC6000E85555555959EEEFF0F1F2F3F4F5F6F7C2 +:08BC7000F8F9FAFBFCFDFEFFF0 +:08BC7800984EFF7F010000005F +:04BC8000690200084D +:04BC84004102000871 +:10BC8800040000200000000080000020E8000020E0 +:10BC9800500100200000000000000000000000002B +:10BCA800000000000000000000000000000000008C +:10BCB800000000000000000000000000000000007C +:10BCC800000000000000000000000000000000006C +:0CBCD80001010000100000000024F40036 +:040000050800B82512 :00000001FF diff --git a/build/For_stm32.map b/build/For_stm32.map index b5237bb..20702d4 100644 --- a/build/For_stm32.map +++ b/build/For_stm32.map @@ -148,7 +148,7 @@ Discarded input sections .text.HAL_SD_MspDeInit 0x00000000 0x3c build/stm32f7xx_hal_msp.o .text.HAL_TIM_Base_MspDeInit - 0x00000000 0x78 build/stm32f7xx_hal_msp.o + 0x00000000 0x90 build/stm32f7xx_hal_msp.o .text.HAL_UART_MspDeInit 0x00000000 0x2c build/stm32f7xx_hal_msp.o .text 0x00000000 0x0 build/stm32f7xx_hal_adc.o @@ -1328,8 +1328,6 @@ Discarded input sections 0x00000000 0x76 build/stm32f7xx_hal_tim_ex.o .text.HAL_TIMEx_ConfigCommutEvent_DMA 0x00000000 0x94 build/stm32f7xx_hal_tim_ex.o - .text.HAL_TIMEx_ConfigBreakDeadTime - 0x00000000 0x90 build/stm32f7xx_hal_tim_ex.o .text.HAL_TIMEx_ConfigBreakInput 0x00000000 0xa4 build/stm32f7xx_hal_tim_ex.o .text.HAL_TIMEx_RemapConfig @@ -2080,7 +2078,7 @@ LOAD /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o 0x08000000 g_pfnVectors 0x080001f8 . = ALIGN (0x4) -.text 0x08000200 0xb100 +.text 0x08000200 0xb690 0x08000200 . = ALIGN (0x4) *(.text) .text 0x08000200 0x88 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o @@ -2143,964 +2141,978 @@ LOAD /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o 0x080014a0 0x48 build/main.o .text.Decode_task 0x080014e8 0x168 build/main.o + .text.SPI2_SetMode + 0x08001650 0x44 build/main.o .text.PID_Controller_Temp - 0x08001650 0xe4 build/main.o + 0x08001694 0xe4 build/main.o .text.AD9102_WriteReg - 0x08001734 0xb0 build/main.o + 0x08001778 0xd4 build/main.o .text.AD9102_WriteRegTable - 0x080017e4 0x28 build/main.o + 0x0800184c 0x28 build/main.o .text.AD9102_LoadSramRamp - 0x0800180c 0xc4 build/main.o + 0x08001874 0xd8 build/main.o .text.AD9102_Init - 0x080018d0 0x74 build/main.o + 0x0800194c 0x74 build/main.o .text.AD9102_ReadReg - 0x08001944 0xb0 build/main.o + 0x080019c0 0xd4 build/main.o .text.AD9102_CheckFlagsSram - 0x080019f4 0x112 build/main.o + 0x08001a94 0x112 build/main.o .text.AD9102_CheckFlags - 0x08001b06 0xd8 build/main.o - *fill* 0x08001bde 0x2 + 0x08001ba6 0xd8 build/main.o + *fill* 0x08001c7e 0x2 .text.AD9102_ApplySram - 0x08001be0 0x134 build/main.o + 0x08001c80 0x144 build/main.o .text.AD9102_Apply - 0x08001d14 0xb8 build/main.o + 0x08001dc4 0xb8 build/main.o + .text.AD9833_WriteWord + 0x08001e7c 0x94 build/main.o + .text.AD9833_Apply + 0x08001f10 0x4e build/main.o + *fill* 0x08001f5e 0x2 .text.OUT_trigger - 0x08001dcc 0x124 build/main.o - .text.MPhD_T 0x08001ef0 0x220 build/main.o + 0x08001f60 0x124 build/main.o + .text.MPhD_T 0x08002084 0x220 build/main.o .text.Stop_TIM10 - 0x08002110 0x20 build/main.o + 0x080022a4 0x20 build/main.o .text.MX_GPIO_Init - 0x08002130 0x25c build/main.o + 0x080022c4 0x294 build/main.o .text.MX_SPI4_Init - 0x0800238c 0xd4 build/main.o + 0x08002558 0xd4 build/main.o .text.MX_SPI2_Init - 0x08002460 0xe8 build/main.o + 0x0800262c 0xe8 build/main.o .text.MX_SPI5_Init - 0x08002548 0xd0 build/main.o + 0x08002714 0xd0 build/main.o .text.MX_SPI6_Init - 0x08002618 0xd0 build/main.o + 0x080027e4 0xd0 build/main.o .text.MX_TIM2_Init - 0x080026e8 0x9c build/main.o + 0x080028b4 0x9c build/main.o .text.MX_TIM5_Init - 0x08002784 0x98 build/main.o + 0x08002950 0x98 build/main.o .text.MX_TIM7_Init - 0x0800281c 0x8c build/main.o + 0x080029e8 0x8c build/main.o .text.MX_TIM6_Init - 0x080028a8 0x8c build/main.o + 0x08002a74 0x8c build/main.o .text.Init_params - 0x08002934 0x310 build/main.o - .text.Get_ADC 0x08002c44 0x70 build/main.o + 0x08002b00 0x310 build/main.o + .text.DS1809_Pulse + 0x08002e10 0x6c build/main.o + .text.Get_ADC 0x08002e7c 0x70 build/main.o .text.Set_LTEC - 0x08002cb4 0x164 build/main.o - 0x08002cb4 Set_LTEC + 0x08002eec 0x178 build/main.o + 0x08002eec Set_LTEC .text.Decode_uart - 0x08002e18 0x2f8 build/main.o + 0x08003064 0x2f8 build/main.o .text.CalculateChecksum - 0x08003110 0x18 build/main.o - 0x08003110 CalculateChecksum + 0x0800335c 0x18 build/main.o + 0x0800335c CalculateChecksum .text.CheckChecksum - 0x08003128 0x48 build/main.o - 0x08003128 CheckChecksum - .text.SD_SAVE 0x08003170 0x3c build/main.o - 0x08003170 SD_SAVE - .text.SD_READ 0x080031ac 0x4c build/main.o - 0x080031ac SD_READ + 0x08003374 0x48 build/main.o + 0x08003374 CheckChecksum + .text.SD_SAVE 0x080033bc 0x3c build/main.o + 0x080033bc SD_SAVE + .text.SD_READ 0x080033f8 0x4c build/main.o + 0x080033f8 SD_READ .text.SD_REMOVE - 0x080031f8 0x40 build/main.o - 0x080031f8 SD_REMOVE + 0x08003444 0x40 build/main.o + 0x08003444 SD_REMOVE .text.USART_TX - 0x08003238 0x2c build/main.o - 0x08003238 USART_TX + 0x08003484 0x2c build/main.o + 0x08003484 USART_TX .text.USART_TX_DMA - 0x08003264 0x40 build/main.o - 0x08003264 USART_TX_DMA + 0x080034b0 0x40 build/main.o + 0x080034b0 USART_TX_DMA .text.Error_Handler - 0x080032a4 0x4 build/main.o - 0x080032a4 Error_Handler + 0x080034f0 0x4 build/main.o + 0x080034f0 Error_Handler .text.MX_ADC1_Init - 0x080032a8 0xc8 build/main.o + 0x080034f4 0xc8 build/main.o .text.MX_ADC3_Init - 0x08003370 0x6c build/main.o + 0x080035bc 0x6c build/main.o .text.MX_USART1_UART_Init - 0x080033dc 0x190 build/main.o + 0x08003628 0x190 build/main.o .text.MX_TIM10_Init - 0x0800356c 0x2c build/main.o + 0x080037b8 0x2c build/main.o .text.MX_UART8_Init - 0x08003598 0x38 build/main.o + 0x080037e4 0x38 build/main.o .text.MX_TIM8_Init - 0x080035d0 0x6c build/main.o + 0x0800381c 0x6c build/main.o .text.MX_TIM11_Init - 0x0800363c 0x70 build/main.o + 0x08003888 0x70 build/main.o .text.MX_TIM4_Init - 0x080036ac 0xa4 build/main.o + 0x080038f8 0xa4 build/main.o + .text.MX_TIM1_Init + 0x0800399c 0xc4 build/main.o .text.SystemClock_Config - 0x08003750 0xb4 build/main.o - 0x08003750 SystemClock_Config - .text.main 0x08003804 0xb0c build/main.o - 0x08003804 main + 0x08003a60 0xb4 build/main.o + 0x08003a60 SystemClock_Config + .text.main 0x08003b14 0xbfc build/main.o + 0x08003b14 main .text.BSP_SD_ReadBlocks - 0x08004310 0x20 build/bsp_driver_sd.o - 0x08004310 BSP_SD_ReadBlocks + 0x08004710 0x20 build/bsp_driver_sd.o + 0x08004710 BSP_SD_ReadBlocks .text.BSP_SD_WriteBlocks - 0x08004330 0x20 build/bsp_driver_sd.o - 0x08004330 BSP_SD_WriteBlocks + 0x08004730 0x20 build/bsp_driver_sd.o + 0x08004730 BSP_SD_WriteBlocks .text.BSP_SD_GetCardState - 0x08004350 0x14 build/bsp_driver_sd.o - 0x08004350 BSP_SD_GetCardState + 0x08004750 0x14 build/bsp_driver_sd.o + 0x08004750 BSP_SD_GetCardState .text.BSP_SD_GetCardInfo - 0x08004364 0x10 build/bsp_driver_sd.o - 0x08004364 BSP_SD_GetCardInfo + 0x08004764 0x10 build/bsp_driver_sd.o + 0x08004764 BSP_SD_GetCardInfo .text.BSP_SD_IsDetected - 0x08004374 0x20 build/bsp_driver_sd.o - 0x08004374 BSP_SD_IsDetected + 0x08004774 0x20 build/bsp_driver_sd.o + 0x08004774 BSP_SD_IsDetected .text.BSP_SD_Init - 0x08004394 0x34 build/bsp_driver_sd.o - 0x08004394 BSP_SD_Init + 0x08004794 0x34 build/bsp_driver_sd.o + 0x08004794 BSP_SD_Init .text.SD_CheckStatus - 0x080043c8 0x24 build/sd_diskio.o + 0x080047c8 0x24 build/sd_diskio.o .text.SD_initialize - 0x080043ec 0x28 build/sd_diskio.o - 0x080043ec SD_initialize + 0x080047ec 0x28 build/sd_diskio.o + 0x080047ec SD_initialize .text.SD_status - 0x08004414 0x8 build/sd_diskio.o - 0x08004414 SD_status - .text.SD_read 0x0800441c 0x24 build/sd_diskio.o - 0x0800441c SD_read + 0x08004814 0x8 build/sd_diskio.o + 0x08004814 SD_status + .text.SD_read 0x0800481c 0x24 build/sd_diskio.o + 0x0800481c SD_read .text.SD_write - 0x08004440 0x24 build/sd_diskio.o - 0x08004440 SD_write + 0x08004840 0x24 build/sd_diskio.o + 0x08004840 SD_write .text.SD_ioctl - 0x08004464 0x58 build/sd_diskio.o - 0x08004464 SD_ioctl + 0x08004864 0x58 build/sd_diskio.o + 0x08004864 SD_ioctl .text.MX_FATFS_Init - 0x080044bc 0x1c build/fatfs.o - 0x080044bc MX_FATFS_Init + 0x080048bc 0x1c build/fatfs.o + 0x080048bc MX_FATFS_Init .text.get_fattime - 0x080044d8 0x4 build/fatfs.o - 0x080044d8 get_fattime + 0x080048d8 0x4 build/fatfs.o + 0x080048d8 get_fattime .text.BSP_PlatformIsDetected - 0x080044dc 0x18 build/fatfs_platform.o - 0x080044dc BSP_PlatformIsDetected + 0x080048dc 0x18 build/fatfs_platform.o + 0x080048dc BSP_PlatformIsDetected .text.NMI_Handler - 0x080044f4 0x2 build/stm32f7xx_it.o - 0x080044f4 NMI_Handler + 0x080048f4 0x2 build/stm32f7xx_it.o + 0x080048f4 NMI_Handler .text.HardFault_Handler - 0x080044f6 0x2 build/stm32f7xx_it.o - 0x080044f6 HardFault_Handler + 0x080048f6 0x2 build/stm32f7xx_it.o + 0x080048f6 HardFault_Handler .text.MemManage_Handler - 0x080044f8 0x2 build/stm32f7xx_it.o - 0x080044f8 MemManage_Handler + 0x080048f8 0x2 build/stm32f7xx_it.o + 0x080048f8 MemManage_Handler .text.BusFault_Handler - 0x080044fa 0x2 build/stm32f7xx_it.o - 0x080044fa BusFault_Handler + 0x080048fa 0x2 build/stm32f7xx_it.o + 0x080048fa BusFault_Handler .text.UsageFault_Handler - 0x080044fc 0x2 build/stm32f7xx_it.o - 0x080044fc UsageFault_Handler + 0x080048fc 0x2 build/stm32f7xx_it.o + 0x080048fc UsageFault_Handler .text.SVC_Handler - 0x080044fe 0x2 build/stm32f7xx_it.o - 0x080044fe SVC_Handler + 0x080048fe 0x2 build/stm32f7xx_it.o + 0x080048fe SVC_Handler .text.DebugMon_Handler - 0x08004500 0x2 build/stm32f7xx_it.o - 0x08004500 DebugMon_Handler + 0x08004900 0x2 build/stm32f7xx_it.o + 0x08004900 DebugMon_Handler .text.PendSV_Handler - 0x08004502 0x2 build/stm32f7xx_it.o - 0x08004502 PendSV_Handler + 0x08004902 0x2 build/stm32f7xx_it.o + 0x08004902 PendSV_Handler .text.SysTick_Handler - 0x08004504 0x8 build/stm32f7xx_it.o - 0x08004504 SysTick_Handler + 0x08004904 0x8 build/stm32f7xx_it.o + 0x08004904 SysTick_Handler .text.ADC_IRQHandler - 0x0800450c 0x18 build/stm32f7xx_it.o - 0x0800450c ADC_IRQHandler + 0x0800490c 0x18 build/stm32f7xx_it.o + 0x0800490c ADC_IRQHandler .text.TIM1_UP_TIM10_IRQHandler - 0x08004524 0x34 build/stm32f7xx_it.o - 0x08004524 TIM1_UP_TIM10_IRQHandler + 0x08004924 0x34 build/stm32f7xx_it.o + 0x08004924 TIM1_UP_TIM10_IRQHandler .text.TIM1_TRG_COM_TIM11_IRQHandler - 0x08004558 0x34 build/stm32f7xx_it.o - 0x08004558 TIM1_TRG_COM_TIM11_IRQHandler + 0x08004958 0x34 build/stm32f7xx_it.o + 0x08004958 TIM1_TRG_COM_TIM11_IRQHandler .text.TIM2_IRQHandler - 0x0800458c 0x2 build/stm32f7xx_it.o - 0x0800458c TIM2_IRQHandler - *fill* 0x0800458e 0x2 + 0x0800498c 0x2 build/stm32f7xx_it.o + 0x0800498c TIM2_IRQHandler + *fill* 0x0800498e 0x2 .text.TIM8_UP_TIM13_IRQHandler - 0x08004590 0x50 build/stm32f7xx_it.o - 0x08004590 TIM8_UP_TIM13_IRQHandler + 0x08004990 0x50 build/stm32f7xx_it.o + 0x08004990 TIM8_UP_TIM13_IRQHandler .text.TIM5_IRQHandler - 0x080045e0 0x2 build/stm32f7xx_it.o - 0x080045e0 TIM5_IRQHandler - *fill* 0x080045e2 0x2 + 0x080049e0 0x2 build/stm32f7xx_it.o + 0x080049e0 TIM5_IRQHandler + *fill* 0x080049e2 0x2 .text.TIM6_DAC_IRQHandler - 0x080045e4 0x34 build/stm32f7xx_it.o - 0x080045e4 TIM6_DAC_IRQHandler + 0x080049e4 0x34 build/stm32f7xx_it.o + 0x080049e4 TIM6_DAC_IRQHandler .text.TIM7_IRQHandler - 0x08004618 0x24 build/stm32f7xx_it.o - 0x08004618 TIM7_IRQHandler + 0x08004a18 0x24 build/stm32f7xx_it.o + 0x08004a18 TIM7_IRQHandler .text.UART_RxCpltCallback - 0x0800463c 0x324 build/stm32f7xx_it.o - 0x0800463c UART_RxCpltCallback + 0x08004a3c 0x3c8 build/stm32f7xx_it.o + 0x08004a3c UART_RxCpltCallback .text.USART1_IRQHandler - 0x08004960 0xd0 build/stm32f7xx_it.o - 0x08004960 USART1_IRQHandler + 0x08004e04 0xd0 build/stm32f7xx_it.o + 0x08004e04 USART1_IRQHandler .text.DMA2_Stream7_TransferComplete - 0x08004a30 0x10 build/stm32f7xx_it.o - 0x08004a30 DMA2_Stream7_TransferComplete + 0x08004ed4 0x10 build/stm32f7xx_it.o + 0x08004ed4 DMA2_Stream7_TransferComplete .text.DMA2_Stream7_IRQHandler - 0x08004a40 0x34 build/stm32f7xx_it.o - 0x08004a40 DMA2_Stream7_IRQHandler + 0x08004ee4 0x34 build/stm32f7xx_it.o + 0x08004ee4 DMA2_Stream7_IRQHandler .text.HAL_MspInit - 0x08004a74 0x30 build/stm32f7xx_hal_msp.o - 0x08004a74 HAL_MspInit + 0x08004f18 0x30 build/stm32f7xx_hal_msp.o + 0x08004f18 HAL_MspInit .text.HAL_ADC_MspInit - 0x08004aa4 0x110 build/stm32f7xx_hal_msp.o - 0x08004aa4 HAL_ADC_MspInit + 0x08004f48 0x110 build/stm32f7xx_hal_msp.o + 0x08004f48 HAL_ADC_MspInit .text.HAL_SD_MspInit - 0x08004bb4 0xb8 build/stm32f7xx_hal_msp.o - 0x08004bb4 HAL_SD_MspInit + 0x08005058 0xb8 build/stm32f7xx_hal_msp.o + 0x08005058 HAL_SD_MspInit .text.HAL_TIM_Base_MspInit - 0x08004c6c 0xc0 build/stm32f7xx_hal_msp.o - 0x08004c6c HAL_TIM_Base_MspInit + 0x08005110 0xe0 build/stm32f7xx_hal_msp.o + 0x08005110 HAL_TIM_Base_MspInit .text.HAL_TIM_MspPostInit - 0x08004d2c 0x8c build/stm32f7xx_hal_msp.o - 0x08004d2c HAL_TIM_MspPostInit + 0x080051f0 0xc8 build/stm32f7xx_hal_msp.o + 0x080051f0 HAL_TIM_MspPostInit .text.HAL_UART_MspInit - 0x08004db8 0x88 build/stm32f7xx_hal_msp.o - 0x08004db8 HAL_UART_MspInit + 0x080052b8 0x88 build/stm32f7xx_hal_msp.o + 0x080052b8 HAL_UART_MspInit .text.ADC_Init - 0x08004e40 0x134 build/stm32f7xx_hal_adc.o + 0x08005340 0x134 build/stm32f7xx_hal_adc.o .text.HAL_ADC_Init - 0x08004f74 0x58 build/stm32f7xx_hal_adc.o - 0x08004f74 HAL_ADC_Init + 0x08005474 0x58 build/stm32f7xx_hal_adc.o + 0x08005474 HAL_ADC_Init .text.HAL_ADC_Start - 0x08004fcc 0x134 build/stm32f7xx_hal_adc.o - 0x08004fcc HAL_ADC_Start + 0x080054cc 0x134 build/stm32f7xx_hal_adc.o + 0x080054cc HAL_ADC_Start .text.HAL_ADC_Stop - 0x08005100 0x40 build/stm32f7xx_hal_adc.o - 0x08005100 HAL_ADC_Stop + 0x08005600 0x40 build/stm32f7xx_hal_adc.o + 0x08005600 HAL_ADC_Stop .text.HAL_ADC_PollForConversion - 0x08005140 0xc2 build/stm32f7xx_hal_adc.o - 0x08005140 HAL_ADC_PollForConversion + 0x08005640 0xc2 build/stm32f7xx_hal_adc.o + 0x08005640 HAL_ADC_PollForConversion .text.HAL_ADC_GetValue - 0x08005202 0x6 build/stm32f7xx_hal_adc.o - 0x08005202 HAL_ADC_GetValue + 0x08005702 0x6 build/stm32f7xx_hal_adc.o + 0x08005702 HAL_ADC_GetValue .text.HAL_ADC_ConvCpltCallback - 0x08005208 0x2 build/stm32f7xx_hal_adc.o - 0x08005208 HAL_ADC_ConvCpltCallback + 0x08005708 0x2 build/stm32f7xx_hal_adc.o + 0x08005708 HAL_ADC_ConvCpltCallback .text.HAL_ADC_LevelOutOfWindowCallback - 0x0800520a 0x2 build/stm32f7xx_hal_adc.o - 0x0800520a HAL_ADC_LevelOutOfWindowCallback + 0x0800570a 0x2 build/stm32f7xx_hal_adc.o + 0x0800570a HAL_ADC_LevelOutOfWindowCallback .text.HAL_ADC_ErrorCallback - 0x0800520c 0x2 build/stm32f7xx_hal_adc.o - 0x0800520c HAL_ADC_ErrorCallback + 0x0800570c 0x2 build/stm32f7xx_hal_adc.o + 0x0800570c HAL_ADC_ErrorCallback .text.HAL_ADC_IRQHandler - 0x0800520e 0x136 build/stm32f7xx_hal_adc.o - 0x0800520e HAL_ADC_IRQHandler + 0x0800570e 0x136 build/stm32f7xx_hal_adc.o + 0x0800570e HAL_ADC_IRQHandler .text.HAL_ADC_ConfigChannel - 0x08005344 0x1e4 build/stm32f7xx_hal_adc.o - 0x08005344 HAL_ADC_ConfigChannel + 0x08005844 0x1e4 build/stm32f7xx_hal_adc.o + 0x08005844 HAL_ADC_ConfigChannel .text.HAL_ADCEx_InjectedConvCpltCallback - 0x08005528 0x2 build/stm32f7xx_hal_adc_ex.o - 0x08005528 HAL_ADCEx_InjectedConvCpltCallback - *fill* 0x0800552a 0x2 + 0x08005a28 0x2 build/stm32f7xx_hal_adc_ex.o + 0x08005a28 HAL_ADCEx_InjectedConvCpltCallback + *fill* 0x08005a2a 0x2 .text.HAL_RCC_OscConfig - 0x0800552c 0x444 build/stm32f7xx_hal_rcc.o - 0x0800552c HAL_RCC_OscConfig + 0x08005a2c 0x444 build/stm32f7xx_hal_rcc.o + 0x08005a2c HAL_RCC_OscConfig .text.HAL_RCC_GetSysClockFreq - 0x08005970 0xa8 build/stm32f7xx_hal_rcc.o - 0x08005970 HAL_RCC_GetSysClockFreq + 0x08005e70 0xa8 build/stm32f7xx_hal_rcc.o + 0x08005e70 HAL_RCC_GetSysClockFreq .text.HAL_RCC_ClockConfig - 0x08005a18 0x16c build/stm32f7xx_hal_rcc.o - 0x08005a18 HAL_RCC_ClockConfig + 0x08005f18 0x16c build/stm32f7xx_hal_rcc.o + 0x08005f18 HAL_RCC_ClockConfig .text.HAL_RCC_GetHCLKFreq - 0x08005b84 0xc build/stm32f7xx_hal_rcc.o - 0x08005b84 HAL_RCC_GetHCLKFreq + 0x08006084 0xc build/stm32f7xx_hal_rcc.o + 0x08006084 HAL_RCC_GetHCLKFreq .text.HAL_RCC_GetPCLK1Freq - 0x08005b90 0x20 build/stm32f7xx_hal_rcc.o - 0x08005b90 HAL_RCC_GetPCLK1Freq + 0x08006090 0x20 build/stm32f7xx_hal_rcc.o + 0x08006090 HAL_RCC_GetPCLK1Freq .text.HAL_RCC_GetPCLK2Freq - 0x08005bb0 0x20 build/stm32f7xx_hal_rcc.o - 0x08005bb0 HAL_RCC_GetPCLK2Freq + 0x080060b0 0x20 build/stm32f7xx_hal_rcc.o + 0x080060b0 HAL_RCC_GetPCLK2Freq .text.HAL_RCCEx_PeriphCLKConfig - 0x08005bd0 0x600 build/stm32f7xx_hal_rcc_ex.o - 0x08005bd0 HAL_RCCEx_PeriphCLKConfig + 0x080060d0 0x600 build/stm32f7xx_hal_rcc_ex.o + 0x080060d0 HAL_RCCEx_PeriphCLKConfig .text.HAL_GPIO_Init - 0x080061d0 0x204 build/stm32f7xx_hal_gpio.o - 0x080061d0 HAL_GPIO_Init + 0x080066d0 0x204 build/stm32f7xx_hal_gpio.o + 0x080066d0 HAL_GPIO_Init .text.HAL_GPIO_ReadPin - 0x080063d4 0xe build/stm32f7xx_hal_gpio.o - 0x080063d4 HAL_GPIO_ReadPin + 0x080068d4 0xe build/stm32f7xx_hal_gpio.o + 0x080068d4 HAL_GPIO_ReadPin .text.HAL_GPIO_WritePin - 0x080063e2 0xc build/stm32f7xx_hal_gpio.o - 0x080063e2 HAL_GPIO_WritePin + 0x080068e2 0xc build/stm32f7xx_hal_gpio.o + 0x080068e2 HAL_GPIO_WritePin .text.HAL_GPIO_TogglePin - 0x080063ee 0x12 build/stm32f7xx_hal_gpio.o - 0x080063ee HAL_GPIO_TogglePin + 0x080068ee 0x12 build/stm32f7xx_hal_gpio.o + 0x080068ee HAL_GPIO_TogglePin .text.HAL_PWREx_EnableOverDrive - 0x08006400 0x7c build/stm32f7xx_hal_pwr_ex.o - 0x08006400 HAL_PWREx_EnableOverDrive + 0x08006900 0x7c build/stm32f7xx_hal_pwr_ex.o + 0x08006900 HAL_PWREx_EnableOverDrive .text.__NVIC_SetPriority - 0x0800647c 0x24 build/stm32f7xx_hal_cortex.o + 0x0800697c 0x24 build/stm32f7xx_hal_cortex.o .text.NVIC_EncodePriority - 0x080064a0 0x3e build/stm32f7xx_hal_cortex.o - *fill* 0x080064de 0x2 + 0x080069a0 0x3e build/stm32f7xx_hal_cortex.o + *fill* 0x080069de 0x2 .text.HAL_NVIC_SetPriorityGrouping - 0x080064e0 0x24 build/stm32f7xx_hal_cortex.o - 0x080064e0 HAL_NVIC_SetPriorityGrouping + 0x080069e0 0x24 build/stm32f7xx_hal_cortex.o + 0x080069e0 HAL_NVIC_SetPriorityGrouping .text.HAL_NVIC_SetPriority - 0x08006504 0x20 build/stm32f7xx_hal_cortex.o - 0x08006504 HAL_NVIC_SetPriority + 0x08006a04 0x20 build/stm32f7xx_hal_cortex.o + 0x08006a04 HAL_NVIC_SetPriority .text.HAL_NVIC_EnableIRQ - 0x08006524 0x1c build/stm32f7xx_hal_cortex.o - 0x08006524 HAL_NVIC_EnableIRQ + 0x08006a24 0x1c build/stm32f7xx_hal_cortex.o + 0x08006a24 HAL_NVIC_EnableIRQ .text.HAL_SYSTICK_Config - 0x08006540 0x28 build/stm32f7xx_hal_cortex.o - 0x08006540 HAL_SYSTICK_Config + 0x08006a40 0x28 build/stm32f7xx_hal_cortex.o + 0x08006a40 HAL_SYSTICK_Config .text.HAL_InitTick - 0x08006568 0x4c build/stm32f7xx_hal.o - 0x08006568 HAL_InitTick + 0x08006a68 0x4c build/stm32f7xx_hal.o + 0x08006a68 HAL_InitTick .text.HAL_Init - 0x080065b4 0x16 build/stm32f7xx_hal.o - 0x080065b4 HAL_Init - *fill* 0x080065ca 0x2 + 0x08006ab4 0x16 build/stm32f7xx_hal.o + 0x08006ab4 HAL_Init + *fill* 0x08006aca 0x2 .text.HAL_IncTick - 0x080065cc 0x18 build/stm32f7xx_hal.o - 0x080065cc HAL_IncTick + 0x08006acc 0x18 build/stm32f7xx_hal.o + 0x08006acc HAL_IncTick .text.HAL_GetTick - 0x080065e4 0xc build/stm32f7xx_hal.o - 0x080065e4 HAL_GetTick + 0x08006ae4 0xc build/stm32f7xx_hal.o + 0x08006ae4 HAL_GetTick .text.HAL_Delay - 0x080065f0 0x28 build/stm32f7xx_hal.o - 0x080065f0 HAL_Delay + 0x08006af0 0x28 build/stm32f7xx_hal.o + 0x08006af0 HAL_Delay .text.RCC_GetHCLKClockFreq - 0x08006618 0x18 build/stm32f7xx_ll_rcc.o - 0x08006618 RCC_GetHCLKClockFreq + 0x08006b18 0x18 build/stm32f7xx_ll_rcc.o + 0x08006b18 RCC_GetHCLKClockFreq .text.RCC_GetPCLK1ClockFreq - 0x08006630 0x18 build/stm32f7xx_ll_rcc.o - 0x08006630 RCC_GetPCLK1ClockFreq + 0x08006b30 0x18 build/stm32f7xx_ll_rcc.o + 0x08006b30 RCC_GetPCLK1ClockFreq .text.RCC_GetPCLK2ClockFreq - 0x08006648 0x18 build/stm32f7xx_ll_rcc.o - 0x08006648 RCC_GetPCLK2ClockFreq + 0x08006b48 0x18 build/stm32f7xx_ll_rcc.o + 0x08006b48 RCC_GetPCLK2ClockFreq .text.RCC_PLL_GetFreqDomain_SYS - 0x08006660 0x44 build/stm32f7xx_ll_rcc.o - 0x08006660 RCC_PLL_GetFreqDomain_SYS + 0x08006b60 0x44 build/stm32f7xx_ll_rcc.o + 0x08006b60 RCC_PLL_GetFreqDomain_SYS .text.RCC_GetSystemClockFreq - 0x080066a4 0x2c build/stm32f7xx_ll_rcc.o - 0x080066a4 RCC_GetSystemClockFreq + 0x08006ba4 0x2c build/stm32f7xx_ll_rcc.o + 0x08006ba4 RCC_GetSystemClockFreq .text.LL_RCC_GetUSARTClockFreq - 0x080066d0 0x178 build/stm32f7xx_ll_rcc.o - 0x080066d0 LL_RCC_GetUSARTClockFreq + 0x08006bd0 0x178 build/stm32f7xx_ll_rcc.o + 0x08006bd0 LL_RCC_GetUSARTClockFreq .text.LL_RCC_GetUARTClockFreq - 0x08006848 0x180 build/stm32f7xx_ll_rcc.o - 0x08006848 LL_RCC_GetUARTClockFreq + 0x08006d48 0x180 build/stm32f7xx_ll_rcc.o + 0x08006d48 LL_RCC_GetUARTClockFreq .text.LL_GPIO_SetPinSpeed - 0x080069c8 0x30 build/stm32f7xx_ll_gpio.o + 0x08006ec8 0x30 build/stm32f7xx_ll_gpio.o .text.LL_GPIO_SetPinPull - 0x080069f8 0x30 build/stm32f7xx_ll_gpio.o + 0x08006ef8 0x30 build/stm32f7xx_ll_gpio.o .text.LL_GPIO_SetAFPin_0_7 - 0x08006a28 0x30 build/stm32f7xx_ll_gpio.o + 0x08006f28 0x30 build/stm32f7xx_ll_gpio.o .text.LL_GPIO_SetAFPin_8_15 - 0x08006a58 0x32 build/stm32f7xx_ll_gpio.o + 0x08006f58 0x32 build/stm32f7xx_ll_gpio.o .text.LL_GPIO_SetPinMode - 0x08006a8a 0x30 build/stm32f7xx_ll_gpio.o + 0x08006f8a 0x30 build/stm32f7xx_ll_gpio.o .text.LL_GPIO_Init - 0x08006aba 0x8a build/stm32f7xx_ll_gpio.o - 0x08006aba LL_GPIO_Init + 0x08006fba 0x8a build/stm32f7xx_ll_gpio.o + 0x08006fba LL_GPIO_Init .text.SDMMC_GetCmdError - 0x08006b44 0x38 build/stm32f7xx_ll_sdmmc.o + 0x08007044 0x38 build/stm32f7xx_ll_sdmmc.o .text.SDMMC_Init - 0x08006b7c 0x34 build/stm32f7xx_ll_sdmmc.o - 0x08006b7c SDMMC_Init + 0x0800707c 0x34 build/stm32f7xx_ll_sdmmc.o + 0x0800707c SDMMC_Init .text.SDMMC_ReadFIFO - 0x08006bb0 0x6 build/stm32f7xx_ll_sdmmc.o - 0x08006bb0 SDMMC_ReadFIFO + 0x080070b0 0x6 build/stm32f7xx_ll_sdmmc.o + 0x080070b0 SDMMC_ReadFIFO .text.SDMMC_WriteFIFO - 0x08006bb6 0xa build/stm32f7xx_ll_sdmmc.o - 0x08006bb6 SDMMC_WriteFIFO + 0x080070b6 0xa build/stm32f7xx_ll_sdmmc.o + 0x080070b6 SDMMC_WriteFIFO .text.SDMMC_PowerState_ON - 0x08006bc0 0x8 build/stm32f7xx_ll_sdmmc.o - 0x08006bc0 SDMMC_PowerState_ON + 0x080070c0 0x8 build/stm32f7xx_ll_sdmmc.o + 0x080070c0 SDMMC_PowerState_ON .text.SDMMC_GetPowerState - 0x08006bc8 0x8 build/stm32f7xx_ll_sdmmc.o - 0x08006bc8 SDMMC_GetPowerState + 0x080070c8 0x8 build/stm32f7xx_ll_sdmmc.o + 0x080070c8 SDMMC_GetPowerState .text.SDMMC_SendCommand - 0x08006bd0 0x20 build/stm32f7xx_ll_sdmmc.o - 0x08006bd0 SDMMC_SendCommand + 0x080070d0 0x20 build/stm32f7xx_ll_sdmmc.o + 0x080070d0 SDMMC_SendCommand .text.SDMMC_GetCommandResponse - 0x08006bf0 0x6 build/stm32f7xx_ll_sdmmc.o - 0x08006bf0 SDMMC_GetCommandResponse + 0x080070f0 0x6 build/stm32f7xx_ll_sdmmc.o + 0x080070f0 SDMMC_GetCommandResponse .text.SDMMC_GetResponse - 0x08006bf6 0x6 build/stm32f7xx_ll_sdmmc.o - 0x08006bf6 SDMMC_GetResponse + 0x080070f6 0x6 build/stm32f7xx_ll_sdmmc.o + 0x080070f6 SDMMC_GetResponse .text.SDMMC_ConfigData - 0x08006bfc 0x24 build/stm32f7xx_ll_sdmmc.o - 0x08006bfc SDMMC_ConfigData + 0x080070fc 0x24 build/stm32f7xx_ll_sdmmc.o + 0x080070fc SDMMC_ConfigData .text.SDMMC_CmdGoIdleState - 0x08006c20 0x26 build/stm32f7xx_ll_sdmmc.o - 0x08006c20 SDMMC_CmdGoIdleState - *fill* 0x08006c46 0x2 + 0x08007120 0x26 build/stm32f7xx_ll_sdmmc.o + 0x08007120 SDMMC_CmdGoIdleState + *fill* 0x08007146 0x2 .text.SDMMC_GetCmdResp1 - 0x08006c48 0x154 build/stm32f7xx_ll_sdmmc.o - 0x08006c48 SDMMC_GetCmdResp1 + 0x08007148 0x154 build/stm32f7xx_ll_sdmmc.o + 0x08007148 SDMMC_GetCmdResp1 .text.SDMMC_CmdBlockLength - 0x08006d9c 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006d9c SDMMC_CmdBlockLength + 0x0800729c 0x30 build/stm32f7xx_ll_sdmmc.o + 0x0800729c SDMMC_CmdBlockLength .text.SDMMC_CmdReadSingleBlock - 0x08006dcc 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006dcc SDMMC_CmdReadSingleBlock + 0x080072cc 0x30 build/stm32f7xx_ll_sdmmc.o + 0x080072cc SDMMC_CmdReadSingleBlock .text.SDMMC_CmdReadMultiBlock - 0x08006dfc 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006dfc SDMMC_CmdReadMultiBlock + 0x080072fc 0x30 build/stm32f7xx_ll_sdmmc.o + 0x080072fc SDMMC_CmdReadMultiBlock .text.SDMMC_CmdWriteSingleBlock - 0x08006e2c 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006e2c SDMMC_CmdWriteSingleBlock + 0x0800732c 0x30 build/stm32f7xx_ll_sdmmc.o + 0x0800732c SDMMC_CmdWriteSingleBlock .text.SDMMC_CmdWriteMultiBlock - 0x08006e5c 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006e5c SDMMC_CmdWriteMultiBlock + 0x0800735c 0x30 build/stm32f7xx_ll_sdmmc.o + 0x0800735c SDMMC_CmdWriteMultiBlock .text.SDMMC_CmdStopTransfer - 0x08006e8c 0x34 build/stm32f7xx_ll_sdmmc.o - 0x08006e8c SDMMC_CmdStopTransfer + 0x0800738c 0x34 build/stm32f7xx_ll_sdmmc.o + 0x0800738c SDMMC_CmdStopTransfer .text.SDMMC_CmdSelDesel - 0x08006ec0 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006ec0 SDMMC_CmdSelDesel + 0x080073c0 0x30 build/stm32f7xx_ll_sdmmc.o + 0x080073c0 SDMMC_CmdSelDesel .text.SDMMC_CmdAppCommand - 0x08006ef0 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006ef0 SDMMC_CmdAppCommand + 0x080073f0 0x30 build/stm32f7xx_ll_sdmmc.o + 0x080073f0 SDMMC_CmdAppCommand .text.SDMMC_CmdBusWidth - 0x08006f20 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006f20 SDMMC_CmdBusWidth + 0x08007420 0x30 build/stm32f7xx_ll_sdmmc.o + 0x08007420 SDMMC_CmdBusWidth .text.SDMMC_CmdSendSCR - 0x08006f50 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006f50 SDMMC_CmdSendSCR + 0x08007450 0x30 build/stm32f7xx_ll_sdmmc.o + 0x08007450 SDMMC_CmdSendSCR .text.SDMMC_CmdSendStatus - 0x08006f80 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08006f80 SDMMC_CmdSendStatus + 0x08007480 0x30 build/stm32f7xx_ll_sdmmc.o + 0x08007480 SDMMC_CmdSendStatus .text.SDMMC_GetCmdResp2 - 0x08006fb0 0x5c build/stm32f7xx_ll_sdmmc.o - 0x08006fb0 SDMMC_GetCmdResp2 + 0x080074b0 0x5c build/stm32f7xx_ll_sdmmc.o + 0x080074b0 SDMMC_GetCmdResp2 .text.SDMMC_CmdSendCID - 0x0800700c 0x2a build/stm32f7xx_ll_sdmmc.o - 0x0800700c SDMMC_CmdSendCID + 0x0800750c 0x2a build/stm32f7xx_ll_sdmmc.o + 0x0800750c SDMMC_CmdSendCID .text.SDMMC_CmdSendCSD - 0x08007036 0x2a build/stm32f7xx_ll_sdmmc.o - 0x08007036 SDMMC_CmdSendCSD + 0x08007536 0x2a build/stm32f7xx_ll_sdmmc.o + 0x08007536 SDMMC_CmdSendCSD .text.SDMMC_GetCmdResp3 - 0x08007060 0x4c build/stm32f7xx_ll_sdmmc.o - 0x08007060 SDMMC_GetCmdResp3 + 0x08007560 0x4c build/stm32f7xx_ll_sdmmc.o + 0x08007560 SDMMC_GetCmdResp3 .text.SDMMC_CmdAppOperCommand - 0x080070ac 0x34 build/stm32f7xx_ll_sdmmc.o - 0x080070ac SDMMC_CmdAppOperCommand + 0x080075ac 0x34 build/stm32f7xx_ll_sdmmc.o + 0x080075ac SDMMC_CmdAppOperCommand .text.SDMMC_GetCmdResp6 - 0x080070e0 0xa0 build/stm32f7xx_ll_sdmmc.o - 0x080070e0 SDMMC_GetCmdResp6 + 0x080075e0 0xa0 build/stm32f7xx_ll_sdmmc.o + 0x080075e0 SDMMC_GetCmdResp6 .text.SDMMC_CmdSetRelAdd - 0x08007180 0x30 build/stm32f7xx_ll_sdmmc.o - 0x08007180 SDMMC_CmdSetRelAdd + 0x08007680 0x30 build/stm32f7xx_ll_sdmmc.o + 0x08007680 SDMMC_CmdSetRelAdd .text.SDMMC_GetCmdResp7 - 0x080071b0 0x64 build/stm32f7xx_ll_sdmmc.o - 0x080071b0 SDMMC_GetCmdResp7 + 0x080076b0 0x64 build/stm32f7xx_ll_sdmmc.o + 0x080076b0 SDMMC_GetCmdResp7 .text.SDMMC_CmdOperCond - 0x08007214 0x2e build/stm32f7xx_ll_sdmmc.o - 0x08007214 SDMMC_CmdOperCond - *fill* 0x08007242 0x2 + 0x08007714 0x2e build/stm32f7xx_ll_sdmmc.o + 0x08007714 SDMMC_CmdOperCond + *fill* 0x08007742 0x2 .text.SD_PowerON - 0x08007244 0xc0 build/stm32f7xx_hal_sd.o + 0x08007744 0xc0 build/stm32f7xx_hal_sd.o .text.SD_FindSCR - 0x08007304 0x100 build/stm32f7xx_hal_sd.o + 0x08007804 0x100 build/stm32f7xx_hal_sd.o .text.SD_WideBus_Enable - 0x08007404 0x4e build/stm32f7xx_hal_sd.o + 0x08007904 0x4e build/stm32f7xx_hal_sd.o .text.SD_WideBus_Disable - 0x08007452 0x4e build/stm32f7xx_hal_sd.o + 0x08007952 0x4e build/stm32f7xx_hal_sd.o .text.SD_SendStatus - 0x080074a0 0x2c build/stm32f7xx_hal_sd.o + 0x080079a0 0x2c build/stm32f7xx_hal_sd.o .text.HAL_SD_ReadBlocks - 0x080074cc 0x248 build/stm32f7xx_hal_sd.o - 0x080074cc HAL_SD_ReadBlocks + 0x080079cc 0x248 build/stm32f7xx_hal_sd.o + 0x080079cc HAL_SD_ReadBlocks .text.HAL_SD_WriteBlocks - 0x08007714 0x200 build/stm32f7xx_hal_sd.o - 0x08007714 HAL_SD_WriteBlocks + 0x08007c14 0x200 build/stm32f7xx_hal_sd.o + 0x08007c14 HAL_SD_WriteBlocks .text.HAL_SD_GetCardCSD - 0x08007914 0x1b8 build/stm32f7xx_hal_sd.o - 0x08007914 HAL_SD_GetCardCSD + 0x08007e14 0x1b8 build/stm32f7xx_hal_sd.o + 0x08007e14 HAL_SD_GetCardCSD .text.SD_InitCard - 0x08007acc 0x100 build/stm32f7xx_hal_sd.o + 0x08007fcc 0x100 build/stm32f7xx_hal_sd.o .text.HAL_SD_InitCard - 0x08007bcc 0xa8 build/stm32f7xx_hal_sd.o - 0x08007bcc HAL_SD_InitCard + 0x080080cc 0xa8 build/stm32f7xx_hal_sd.o + 0x080080cc HAL_SD_InitCard .text.HAL_SD_Init - 0x08007c74 0x36 build/stm32f7xx_hal_sd.o - 0x08007c74 HAL_SD_Init + 0x08008174 0x36 build/stm32f7xx_hal_sd.o + 0x08008174 HAL_SD_Init .text.HAL_SD_GetCardInfo - 0x08007caa 0x24 build/stm32f7xx_hal_sd.o - 0x08007caa HAL_SD_GetCardInfo - *fill* 0x08007cce 0x2 + 0x080081aa 0x24 build/stm32f7xx_hal_sd.o + 0x080081aa HAL_SD_GetCardInfo + *fill* 0x080081ce 0x2 .text.HAL_SD_ConfigWideBusOperation - 0x08007cd0 0xc0 build/stm32f7xx_hal_sd.o - 0x08007cd0 HAL_SD_ConfigWideBusOperation + 0x080081d0 0xc0 build/stm32f7xx_hal_sd.o + 0x080081d0 HAL_SD_ConfigWideBusOperation .text.HAL_SD_GetCardState - 0x08007d90 0x22 build/stm32f7xx_hal_sd.o - 0x08007d90 HAL_SD_GetCardState - *fill* 0x08007db2 0x2 + 0x08008290 0x22 build/stm32f7xx_hal_sd.o + 0x08008290 HAL_SD_GetCardState + *fill* 0x080082b2 0x2 .text.LL_SPI_Init - 0x08007db4 0x8c build/stm32f7xx_ll_spi.o - 0x08007db4 LL_SPI_Init + 0x080082b4 0x8c build/stm32f7xx_ll_spi.o + 0x080082b4 LL_SPI_Init .text.TIM_OC1_SetConfig - 0x08007e40 0x68 build/stm32f7xx_hal_tim.o + 0x08008340 0x68 build/stm32f7xx_hal_tim.o .text.TIM_OC3_SetConfig - 0x08007ea8 0x70 build/stm32f7xx_hal_tim.o + 0x080083a8 0x70 build/stm32f7xx_hal_tim.o .text.TIM_OC4_SetConfig - 0x08007f18 0x54 build/stm32f7xx_hal_tim.o + 0x08008418 0x54 build/stm32f7xx_hal_tim.o .text.TIM_OC5_SetConfig - 0x08007f6c 0x54 build/stm32f7xx_hal_tim.o + 0x0800846c 0x54 build/stm32f7xx_hal_tim.o .text.TIM_OC6_SetConfig - 0x08007fc0 0x54 build/stm32f7xx_hal_tim.o + 0x080084c0 0x54 build/stm32f7xx_hal_tim.o .text.TIM_TI1_ConfigInputStage - 0x08008014 0x26 build/stm32f7xx_hal_tim.o + 0x08008514 0x26 build/stm32f7xx_hal_tim.o .text.TIM_TI2_ConfigInputStage - 0x0800803a 0x28 build/stm32f7xx_hal_tim.o + 0x0800853a 0x28 build/stm32f7xx_hal_tim.o .text.TIM_ITRx_SetConfig - 0x08008062 0x10 build/stm32f7xx_hal_tim.o + 0x08008562 0x10 build/stm32f7xx_hal_tim.o .text.HAL_TIM_Base_Stop - 0x08008072 0x28 build/stm32f7xx_hal_tim.o - 0x08008072 HAL_TIM_Base_Stop - *fill* 0x0800809a 0x2 + 0x08008572 0x28 build/stm32f7xx_hal_tim.o + 0x08008572 HAL_TIM_Base_Stop + *fill* 0x0800859a 0x2 .text.HAL_TIM_Base_Start_IT - 0x0800809c 0x90 build/stm32f7xx_hal_tim.o - 0x0800809c HAL_TIM_Base_Start_IT + 0x0800859c 0x90 build/stm32f7xx_hal_tim.o + 0x0800859c HAL_TIM_Base_Start_IT .text.HAL_TIM_Base_Stop_IT - 0x0800812c 0x32 build/stm32f7xx_hal_tim.o - 0x0800812c HAL_TIM_Base_Stop_IT + 0x0800862c 0x32 build/stm32f7xx_hal_tim.o + 0x0800862c HAL_TIM_Base_Stop_IT .text.HAL_TIM_PWM_MspInit - 0x0800815e 0x2 build/stm32f7xx_hal_tim.o - 0x0800815e HAL_TIM_PWM_MspInit + 0x0800865e 0x2 build/stm32f7xx_hal_tim.o + 0x0800865e HAL_TIM_PWM_MspInit .text.HAL_TIM_PeriodElapsedCallback - 0x08008160 0x2 build/stm32f7xx_hal_tim.o - 0x08008160 HAL_TIM_PeriodElapsedCallback + 0x08008660 0x2 build/stm32f7xx_hal_tim.o + 0x08008660 HAL_TIM_PeriodElapsedCallback .text.HAL_TIM_OC_DelayElapsedCallback - 0x08008162 0x2 build/stm32f7xx_hal_tim.o - 0x08008162 HAL_TIM_OC_DelayElapsedCallback + 0x08008662 0x2 build/stm32f7xx_hal_tim.o + 0x08008662 HAL_TIM_OC_DelayElapsedCallback .text.HAL_TIM_IC_CaptureCallback - 0x08008164 0x2 build/stm32f7xx_hal_tim.o - 0x08008164 HAL_TIM_IC_CaptureCallback + 0x08008664 0x2 build/stm32f7xx_hal_tim.o + 0x08008664 HAL_TIM_IC_CaptureCallback .text.HAL_TIM_PWM_PulseFinishedCallback - 0x08008166 0x2 build/stm32f7xx_hal_tim.o - 0x08008166 HAL_TIM_PWM_PulseFinishedCallback + 0x08008666 0x2 build/stm32f7xx_hal_tim.o + 0x08008666 HAL_TIM_PWM_PulseFinishedCallback .text.HAL_TIM_TriggerCallback - 0x08008168 0x2 build/stm32f7xx_hal_tim.o - 0x08008168 HAL_TIM_TriggerCallback + 0x08008668 0x2 build/stm32f7xx_hal_tim.o + 0x08008668 HAL_TIM_TriggerCallback .text.HAL_TIM_IRQHandler - 0x0800816a 0x17a build/stm32f7xx_hal_tim.o - 0x0800816a HAL_TIM_IRQHandler + 0x0800866a 0x17a build/stm32f7xx_hal_tim.o + 0x0800866a HAL_TIM_IRQHandler .text.TIM_Base_SetConfig - 0x080082e4 0x120 build/stm32f7xx_hal_tim.o - 0x080082e4 TIM_Base_SetConfig + 0x080087e4 0x120 build/stm32f7xx_hal_tim.o + 0x080087e4 TIM_Base_SetConfig .text.HAL_TIM_Base_Init - 0x08008404 0x60 build/stm32f7xx_hal_tim.o - 0x08008404 HAL_TIM_Base_Init + 0x08008904 0x60 build/stm32f7xx_hal_tim.o + 0x08008904 HAL_TIM_Base_Init .text.HAL_TIM_PWM_Init - 0x08008464 0x60 build/stm32f7xx_hal_tim.o - 0x08008464 HAL_TIM_PWM_Init + 0x08008964 0x60 build/stm32f7xx_hal_tim.o + 0x08008964 HAL_TIM_PWM_Init .text.TIM_OC2_SetConfig - 0x080084c4 0x70 build/stm32f7xx_hal_tim.o - 0x080084c4 TIM_OC2_SetConfig + 0x080089c4 0x70 build/stm32f7xx_hal_tim.o + 0x080089c4 TIM_OC2_SetConfig .text.HAL_TIM_PWM_ConfigChannel - 0x08008534 0x13a build/stm32f7xx_hal_tim.o - 0x08008534 HAL_TIM_PWM_ConfigChannel + 0x08008a34 0x13a build/stm32f7xx_hal_tim.o + 0x08008a34 HAL_TIM_PWM_ConfigChannel .text.TIM_ETR_SetConfig - 0x0800866e 0x1a build/stm32f7xx_hal_tim.o - 0x0800866e TIM_ETR_SetConfig + 0x08008b6e 0x1a build/stm32f7xx_hal_tim.o + 0x08008b6e TIM_ETR_SetConfig .text.HAL_TIM_ConfigClockSource - 0x08008688 0x100 build/stm32f7xx_hal_tim.o - 0x08008688 HAL_TIM_ConfigClockSource + 0x08008b88 0x100 build/stm32f7xx_hal_tim.o + 0x08008b88 HAL_TIM_ConfigClockSource .text.TIM_CCxChannelCmd - 0x08008788 0x1e build/stm32f7xx_hal_tim.o - 0x08008788 TIM_CCxChannelCmd - *fill* 0x080087a6 0x2 + 0x08008c88 0x1e build/stm32f7xx_hal_tim.o + 0x08008c88 TIM_CCxChannelCmd + *fill* 0x08008ca6 0x2 .text.HAL_TIM_PWM_Start - 0x080087a8 0x158 build/stm32f7xx_hal_tim.o - 0x080087a8 HAL_TIM_PWM_Start + 0x08008ca8 0x158 build/stm32f7xx_hal_tim.o + 0x08008ca8 HAL_TIM_PWM_Start .text.HAL_TIM_PWM_Stop - 0x08008900 0xac build/stm32f7xx_hal_tim.o - 0x08008900 HAL_TIM_PWM_Stop + 0x08008e00 0xac build/stm32f7xx_hal_tim.o + 0x08008e00 HAL_TIM_PWM_Stop .text.HAL_TIMEx_MasterConfigSynchronization - 0x080089ac 0xa0 build/stm32f7xx_hal_tim_ex.o - 0x080089ac HAL_TIMEx_MasterConfigSynchronization + 0x08008eac 0xa0 build/stm32f7xx_hal_tim_ex.o + 0x08008eac HAL_TIMEx_MasterConfigSynchronization + .text.HAL_TIMEx_ConfigBreakDeadTime + 0x08008f4c 0x90 build/stm32f7xx_hal_tim_ex.o + 0x08008f4c HAL_TIMEx_ConfigBreakDeadTime .text.HAL_TIMEx_CommutCallback - 0x08008a4c 0x2 build/stm32f7xx_hal_tim_ex.o - 0x08008a4c HAL_TIMEx_CommutCallback + 0x08008fdc 0x2 build/stm32f7xx_hal_tim_ex.o + 0x08008fdc HAL_TIMEx_CommutCallback .text.HAL_TIMEx_BreakCallback - 0x08008a4e 0x2 build/stm32f7xx_hal_tim_ex.o - 0x08008a4e HAL_TIMEx_BreakCallback + 0x08008fde 0x2 build/stm32f7xx_hal_tim_ex.o + 0x08008fde HAL_TIMEx_BreakCallback .text.HAL_TIMEx_Break2Callback - 0x08008a50 0x2 build/stm32f7xx_hal_tim_ex.o - 0x08008a50 HAL_TIMEx_Break2Callback - *fill* 0x08008a52 0x2 + 0x08008fe0 0x2 build/stm32f7xx_hal_tim_ex.o + 0x08008fe0 HAL_TIMEx_Break2Callback + *fill* 0x08008fe2 0x2 .text.LL_TIM_Init - 0x08008a54 0x110 build/stm32f7xx_ll_tim.o - 0x08008a54 LL_TIM_Init + 0x08008fe4 0x110 build/stm32f7xx_ll_tim.o + 0x08008fe4 LL_TIM_Init .text.LL_USART_SetBaudRate - 0x08008b64 0x2e build/stm32f7xx_ll_usart.o - *fill* 0x08008b92 0x2 + 0x080090f4 0x2e build/stm32f7xx_ll_usart.o + *fill* 0x08009122 0x2 .text.LL_USART_Init - 0x08008b94 0xfc build/stm32f7xx_ll_usart.o - 0x08008b94 LL_USART_Init + 0x08009124 0xfc build/stm32f7xx_ll_usart.o + 0x08009124 LL_USART_Init .text.SystemInit - 0x08008c90 0x14 build/system_stm32f7xx.o - 0x08008c90 SystemInit + 0x08009220 0x14 build/system_stm32f7xx.o + 0x08009220 SystemInit .text.Mount_SD - 0x08008ca4 0x24 build/File_Handling.o - 0x08008ca4 Mount_SD + 0x08009234 0x24 build/File_Handling.o + 0x08009234 Mount_SD .text.Unmount_SD - 0x08008cc8 0x20 build/File_Handling.o - 0x08008cc8 Unmount_SD + 0x08009258 0x20 build/File_Handling.o + 0x08009258 Unmount_SD .text.Write_File_byte - 0x08008ce8 0x5c build/File_Handling.o - 0x08008ce8 Write_File_byte + 0x08009278 0x5c build/File_Handling.o + 0x08009278 Write_File_byte .text.Seek_Read_File - 0x08008d44 0x148 build/File_Handling.o - 0x08008d44 Seek_Read_File + 0x080092d4 0x148 build/File_Handling.o + 0x080092d4 Seek_Read_File .text.Create_File - 0x08008e8c 0x44 build/File_Handling.o - 0x08008e8c Create_File + 0x0800941c 0x44 build/File_Handling.o + 0x0800941c Create_File .text.Remove_File - 0x08008ed0 0x84 build/File_Handling.o - 0x08008ed0 Remove_File + 0x08009460 0x84 build/File_Handling.o + 0x08009460 Remove_File .text.Update_File_byte - 0x08008f54 0x5c build/File_Handling.o - 0x08008f54 Update_File_byte + 0x080094e4 0x5c build/File_Handling.o + 0x080094e4 Update_File_byte .text.disk_status - 0x08008fb0 0x18 build/diskio.o - 0x08008fb0 disk_status + 0x08009540 0x18 build/diskio.o + 0x08009540 disk_status .text.disk_initialize - 0x08008fc8 0x28 build/diskio.o - 0x08008fc8 disk_initialize + 0x08009558 0x28 build/diskio.o + 0x08009558 disk_initialize .text.disk_read - 0x08008ff0 0x18 build/diskio.o - 0x08008ff0 disk_read + 0x08009580 0x18 build/diskio.o + 0x08009580 disk_read .text.disk_write - 0x08009008 0x18 build/diskio.o - 0x08009008 disk_write + 0x08009598 0x18 build/diskio.o + 0x08009598 disk_write .text.disk_ioctl - 0x08009020 0x18 build/diskio.o - 0x08009020 disk_ioctl - .text.ld_word 0x08009038 0xa build/ff.o + 0x080095b0 0x18 build/diskio.o + 0x080095b0 disk_ioctl + .text.ld_word 0x080095c8 0xa build/ff.o .text.ld_dword - 0x08009042 0x16 build/ff.o - .text.st_word 0x08009058 0x8 build/ff.o + 0x080095d2 0x16 build/ff.o + .text.st_word 0x080095e8 0x8 build/ff.o .text.st_dword - 0x08009060 0x14 build/ff.o - .text.mem_cpy 0x08009074 0x14 build/ff.o - .text.mem_set 0x08009088 0xa build/ff.o - .text.mem_cmp 0x08009092 0x1a build/ff.o - .text.chk_chr 0x080090ac 0x10 build/ff.o + 0x080095f0 0x14 build/ff.o + .text.mem_cpy 0x08009604 0x14 build/ff.o + .text.mem_set 0x08009618 0xa build/ff.o + .text.mem_cmp 0x08009622 0x1a build/ff.o + .text.chk_chr 0x0800963c 0x10 build/ff.o .text.chk_lock - 0x080090bc 0x7c build/ff.o + 0x0800964c 0x7c build/ff.o .text.enq_lock - 0x08009138 0x20 build/ff.o + 0x080096c8 0x20 build/ff.o .text.inc_lock - 0x08009158 0xa0 build/ff.o + 0x080096e8 0xa0 build/ff.o .text.dec_lock - 0x080091f8 0x40 build/ff.o + 0x08009788 0x40 build/ff.o .text.clear_lock - 0x08009238 0x3c build/ff.o + 0x080097c8 0x3c build/ff.o .text.clust2sect - 0x08009274 0x18 build/ff.o + 0x08009804 0x18 build/ff.o .text.clmt_clust - 0x0800928c 0x26 build/ff.o + 0x0800981c 0x26 build/ff.o .text.ld_clust - 0x080092b2 0x26 build/ff.o + 0x08009842 0x26 build/ff.o .text.st_clust - 0x080092d8 0x26 build/ff.o + 0x08009868 0x26 build/ff.o .text.get_fileinfo - 0x080092fe 0x6a build/ff.o + 0x0800988e 0x6a build/ff.o .text.create_name - 0x08009368 0xd0 build/ff.o + 0x080098f8 0xd0 build/ff.o .text.get_ldnumber - 0x08009438 0x48 build/ff.o + 0x080099c8 0x48 build/ff.o .text.validate - 0x08009480 0x46 build/ff.o + 0x08009a10 0x46 build/ff.o .text.sync_window - 0x080094c6 0x54 build/ff.o + 0x08009a56 0x54 build/ff.o .text.move_window - 0x0800951a 0x36 build/ff.o + 0x08009aaa 0x36 build/ff.o .text.check_fs - 0x08009550 0x78 build/ff.o + 0x08009ae0 0x78 build/ff.o .text.find_volume - 0x080095c8 0x34c build/ff.o - .text.put_fat 0x08009914 0x136 build/ff.o - .text.get_fat 0x08009a4a 0xfc build/ff.o - .text.dir_sdi 0x08009b46 0xc0 build/ff.o + 0x08009b58 0x34c build/ff.o + .text.put_fat 0x08009ea4 0x136 build/ff.o + .text.get_fat 0x08009fda 0xfc build/ff.o + .text.dir_sdi 0x0800a0d6 0xc0 build/ff.o .text.create_chain - 0x08009c06 0xd6 build/ff.o + 0x0800a196 0xd6 build/ff.o .text.remove_chain - 0x08009cdc 0x7e build/ff.o + 0x0800a26c 0x7e build/ff.o .text.dir_remove - 0x08009d5a 0x1c build/ff.o + 0x0800a2ea 0x1c build/ff.o .text.dir_next - 0x08009d76 0x118 build/ff.o + 0x0800a306 0x118 build/ff.o .text.dir_find - 0x08009e8e 0x5a build/ff.o + 0x0800a41e 0x5a build/ff.o .text.follow_path - 0x08009ee8 0x92 build/ff.o + 0x0800a478 0x92 build/ff.o .text.dir_alloc - 0x08009f7a 0x4e build/ff.o + 0x0800a50a 0x4e build/ff.o .text.dir_register - 0x08009fc8 0x3e build/ff.o + 0x0800a558 0x3e build/ff.o .text.dir_read - 0x0800a006 0x5e build/ff.o - .text.sync_fs 0x0800a064 0x88 build/ff.o - .text.f_mount 0x0800a0ec 0x60 build/ff.o - 0x0800a0ec f_mount - .text.f_open 0x0800a14c 0x232 build/ff.o - 0x0800a14c f_open - .text.f_read 0x0800a37e 0x1d8 build/ff.o - 0x0800a37e f_read - .text.f_write 0x0800a556 0x210 build/ff.o - 0x0800a556 f_write - .text.f_sync 0x0800a766 0x98 build/ff.o - 0x0800a766 f_sync - .text.f_close 0x0800a7fe 0x2a build/ff.o - 0x0800a7fe f_close - .text.f_lseek 0x0800a828 0x2a6 build/ff.o - 0x0800a828 f_lseek - .text.f_stat 0x0800aace 0x44 build/ff.o - 0x0800aace f_stat + 0x0800a596 0x5e build/ff.o + .text.sync_fs 0x0800a5f4 0x88 build/ff.o + .text.f_mount 0x0800a67c 0x60 build/ff.o + 0x0800a67c f_mount + .text.f_open 0x0800a6dc 0x232 build/ff.o + 0x0800a6dc f_open + .text.f_read 0x0800a90e 0x1d8 build/ff.o + 0x0800a90e f_read + .text.f_write 0x0800aae6 0x210 build/ff.o + 0x0800aae6 f_write + .text.f_sync 0x0800acf6 0x98 build/ff.o + 0x0800acf6 f_sync + .text.f_close 0x0800ad8e 0x2a build/ff.o + 0x0800ad8e f_close + .text.f_lseek 0x0800adb8 0x2a6 build/ff.o + 0x0800adb8 f_lseek + .text.f_stat 0x0800b05e 0x44 build/ff.o + 0x0800b05e f_stat .text.f_unlink - 0x0800ab12 0xc4 build/ff.o - 0x0800ab12 f_unlink - *fill* 0x0800abd6 0x2 + 0x0800b0a2 0xc4 build/ff.o + 0x0800b0a2 f_unlink + *fill* 0x0800b166 0x2 .text.FATFS_LinkDriverEx - 0x0800abd8 0x54 build/ff_gen_drv.o - 0x0800abd8 FATFS_LinkDriverEx + 0x0800b168 0x54 build/ff_gen_drv.o + 0x0800b168 FATFS_LinkDriverEx .text.FATFS_LinkDriver - 0x0800ac2c 0xa build/ff_gen_drv.o - 0x0800ac2c FATFS_LinkDriver - *fill* 0x0800ac36 0x2 - .text._sbrk 0x0800ac38 0x48 build/sysmem.o - 0x0800ac38 _sbrk + 0x0800b1bc 0xa build/ff_gen_drv.o + 0x0800b1bc FATFS_LinkDriver + *fill* 0x0800b1c6 0x2 + .text._sbrk 0x0800b1c8 0x48 build/sysmem.o + 0x0800b1c8 _sbrk .text.UART_EndRxTransfer - 0x0800ac80 0x52 build/stm32f7xx_hal_uart.o - *fill* 0x0800acd2 0x2 + 0x0800b210 0x52 build/stm32f7xx_hal_uart.o + *fill* 0x0800b262 0x2 .text.UART_SetConfig - 0x0800acd4 0x328 build/stm32f7xx_hal_uart.o - 0x0800acd4 UART_SetConfig + 0x0800b264 0x328 build/stm32f7xx_hal_uart.o + 0x0800b264 UART_SetConfig .text.UART_AdvFeatureConfig - 0x0800affc 0xca build/stm32f7xx_hal_uart.o - 0x0800affc UART_AdvFeatureConfig + 0x0800b58c 0xca build/stm32f7xx_hal_uart.o + 0x0800b58c UART_AdvFeatureConfig .text.UART_WaitOnFlagUntilTimeout - 0x0800b0c6 0xa6 build/stm32f7xx_hal_uart.o - 0x0800b0c6 UART_WaitOnFlagUntilTimeout + 0x0800b656 0xa6 build/stm32f7xx_hal_uart.o + 0x0800b656 UART_WaitOnFlagUntilTimeout .text.UART_CheckIdleState - 0x0800b16c 0xc6 build/stm32f7xx_hal_uart.o - 0x0800b16c UART_CheckIdleState + 0x0800b6fc 0xc6 build/stm32f7xx_hal_uart.o + 0x0800b6fc UART_CheckIdleState .text.HAL_UART_Init - 0x0800b232 0x62 build/stm32f7xx_hal_uart.o - 0x0800b232 HAL_UART_Init + 0x0800b7c2 0x62 build/stm32f7xx_hal_uart.o + 0x0800b7c2 HAL_UART_Init .text.Reset_Handler - 0x0800b294 0x50 build/startup_stm32f767xx.o - 0x0800b294 Reset_Handler + 0x0800b824 0x50 build/startup_stm32f767xx.o + 0x0800b824 Reset_Handler .text.Default_Handler - 0x0800b2e4 0x2 build/startup_stm32f767xx.o - 0x0800b2e4 RTC_Alarm_IRQHandler - 0x0800b2e4 EXTI2_IRQHandler - 0x0800b2e4 TIM8_CC_IRQHandler - 0x0800b2e4 UART8_IRQHandler - 0x0800b2e4 SPI4_IRQHandler - 0x0800b2e4 TIM1_CC_IRQHandler - 0x0800b2e4 DMA2_Stream5_IRQHandler - 0x0800b2e4 JPEG_IRQHandler - 0x0800b2e4 DMA1_Stream5_IRQHandler - 0x0800b2e4 CAN3_RX1_IRQHandler - 0x0800b2e4 PVD_IRQHandler - 0x0800b2e4 TAMP_STAMP_IRQHandler - 0x0800b2e4 CAN2_RX1_IRQHandler - 0x0800b2e4 EXTI3_IRQHandler - 0x0800b2e4 TIM8_TRG_COM_TIM14_IRQHandler - 0x0800b2e4 DFSDM1_FLT1_IRQHandler - 0x0800b2e4 I2C3_ER_IRQHandler - 0x0800b2e4 DFSDM1_FLT2_IRQHandler - 0x0800b2e4 EXTI0_IRQHandler - 0x0800b2e4 I2C2_EV_IRQHandler - 0x0800b2e4 DMA1_Stream2_IRQHandler - 0x0800b2e4 CAN1_RX0_IRQHandler - 0x0800b2e4 FPU_IRQHandler - 0x0800b2e4 OTG_HS_WKUP_IRQHandler - 0x0800b2e4 CAN3_SCE_IRQHandler - 0x0800b2e4 LTDC_ER_IRQHandler - 0x0800b2e4 CAN2_SCE_IRQHandler - 0x0800b2e4 DMA2_Stream2_IRQHandler - 0x0800b2e4 SPI1_IRQHandler - 0x0800b2e4 TIM1_BRK_TIM9_IRQHandler - 0x0800b2e4 DCMI_IRQHandler - 0x0800b2e4 CAN2_RX0_IRQHandler - 0x0800b2e4 DMA2_Stream3_IRQHandler - 0x0800b2e4 SAI2_IRQHandler - 0x0800b2e4 DFSDM1_FLT3_IRQHandler - 0x0800b2e4 USART6_IRQHandler - 0x0800b2e4 CAN3_RX0_IRQHandler - 0x0800b2e4 USART3_IRQHandler - 0x0800b2e4 CAN1_RX1_IRQHandler - 0x0800b2e4 UART5_IRQHandler - 0x0800b2e4 DMA2_Stream0_IRQHandler - 0x0800b2e4 TIM4_IRQHandler - 0x0800b2e4 QUADSPI_IRQHandler - 0x0800b2e4 I2C1_EV_IRQHandler - 0x0800b2e4 DMA1_Stream6_IRQHandler - 0x0800b2e4 DMA1_Stream1_IRQHandler - 0x0800b2e4 UART4_IRQHandler - 0x0800b2e4 TIM3_IRQHandler - 0x0800b2e4 RCC_IRQHandler - 0x0800b2e4 TIM8_BRK_TIM12_IRQHandler - 0x0800b2e4 Default_Handler - 0x0800b2e4 CEC_IRQHandler - 0x0800b2e4 EXTI15_10_IRQHandler - 0x0800b2e4 DMA1_Stream7_IRQHandler - 0x0800b2e4 SPI5_IRQHandler - 0x0800b2e4 SDMMC1_IRQHandler - 0x0800b2e4 CAN2_TX_IRQHandler - 0x0800b2e4 I2C3_EV_IRQHandler - 0x0800b2e4 EXTI9_5_IRQHandler - 0x0800b2e4 RTC_WKUP_IRQHandler - 0x0800b2e4 LTDC_IRQHandler - 0x0800b2e4 ETH_WKUP_IRQHandler - 0x0800b2e4 SPDIF_RX_IRQHandler - 0x0800b2e4 SPI2_IRQHandler - 0x0800b2e4 OTG_HS_EP1_IN_IRQHandler - 0x0800b2e4 DMA1_Stream0_IRQHandler - 0x0800b2e4 CAN1_TX_IRQHandler - 0x0800b2e4 EXTI4_IRQHandler - 0x0800b2e4 RNG_IRQHandler - 0x0800b2e4 ETH_IRQHandler - 0x0800b2e4 OTG_HS_EP1_OUT_IRQHandler - 0x0800b2e4 WWDG_IRQHandler - 0x0800b2e4 SPI6_IRQHandler - 0x0800b2e4 MDIOS_IRQHandler - 0x0800b2e4 I2C4_EV_IRQHandler - 0x0800b2e4 CAN3_TX_IRQHandler - 0x0800b2e4 OTG_FS_WKUP_IRQHandler - 0x0800b2e4 OTG_HS_IRQHandler - 0x0800b2e4 DMA2D_IRQHandler - 0x0800b2e4 EXTI1_IRQHandler - 0x0800b2e4 SDMMC2_IRQHandler - 0x0800b2e4 UART7_IRQHandler - 0x0800b2e4 USART2_IRQHandler - 0x0800b2e4 DFSDM1_FLT0_IRQHandler - 0x0800b2e4 I2C2_ER_IRQHandler - 0x0800b2e4 DMA2_Stream1_IRQHandler - 0x0800b2e4 CAN1_SCE_IRQHandler - 0x0800b2e4 FLASH_IRQHandler - 0x0800b2e4 DMA2_Stream4_IRQHandler - 0x0800b2e4 OTG_FS_IRQHandler - 0x0800b2e4 SPI3_IRQHandler - 0x0800b2e4 DMA1_Stream4_IRQHandler - 0x0800b2e4 I2C1_ER_IRQHandler - 0x0800b2e4 FMC_IRQHandler - 0x0800b2e4 LPTIM1_IRQHandler - 0x0800b2e4 I2C4_ER_IRQHandler - 0x0800b2e4 DMA2_Stream6_IRQHandler - 0x0800b2e4 SAI1_IRQHandler - 0x0800b2e4 DMA1_Stream3_IRQHandler + 0x0800b874 0x2 build/startup_stm32f767xx.o + 0x0800b874 RTC_Alarm_IRQHandler + 0x0800b874 EXTI2_IRQHandler + 0x0800b874 TIM8_CC_IRQHandler + 0x0800b874 UART8_IRQHandler + 0x0800b874 SPI4_IRQHandler + 0x0800b874 TIM1_CC_IRQHandler + 0x0800b874 DMA2_Stream5_IRQHandler + 0x0800b874 JPEG_IRQHandler + 0x0800b874 DMA1_Stream5_IRQHandler + 0x0800b874 CAN3_RX1_IRQHandler + 0x0800b874 PVD_IRQHandler + 0x0800b874 TAMP_STAMP_IRQHandler + 0x0800b874 CAN2_RX1_IRQHandler + 0x0800b874 EXTI3_IRQHandler + 0x0800b874 TIM8_TRG_COM_TIM14_IRQHandler + 0x0800b874 DFSDM1_FLT1_IRQHandler + 0x0800b874 I2C3_ER_IRQHandler + 0x0800b874 DFSDM1_FLT2_IRQHandler + 0x0800b874 EXTI0_IRQHandler + 0x0800b874 I2C2_EV_IRQHandler + 0x0800b874 DMA1_Stream2_IRQHandler + 0x0800b874 CAN1_RX0_IRQHandler + 0x0800b874 FPU_IRQHandler + 0x0800b874 OTG_HS_WKUP_IRQHandler + 0x0800b874 CAN3_SCE_IRQHandler + 0x0800b874 LTDC_ER_IRQHandler + 0x0800b874 CAN2_SCE_IRQHandler + 0x0800b874 DMA2_Stream2_IRQHandler + 0x0800b874 SPI1_IRQHandler + 0x0800b874 TIM1_BRK_TIM9_IRQHandler + 0x0800b874 DCMI_IRQHandler + 0x0800b874 CAN2_RX0_IRQHandler + 0x0800b874 DMA2_Stream3_IRQHandler + 0x0800b874 SAI2_IRQHandler + 0x0800b874 DFSDM1_FLT3_IRQHandler + 0x0800b874 USART6_IRQHandler + 0x0800b874 CAN3_RX0_IRQHandler + 0x0800b874 USART3_IRQHandler + 0x0800b874 CAN1_RX1_IRQHandler + 0x0800b874 UART5_IRQHandler + 0x0800b874 DMA2_Stream0_IRQHandler + 0x0800b874 TIM4_IRQHandler + 0x0800b874 QUADSPI_IRQHandler + 0x0800b874 I2C1_EV_IRQHandler + 0x0800b874 DMA1_Stream6_IRQHandler + 0x0800b874 DMA1_Stream1_IRQHandler + 0x0800b874 UART4_IRQHandler + 0x0800b874 TIM3_IRQHandler + 0x0800b874 RCC_IRQHandler + 0x0800b874 TIM8_BRK_TIM12_IRQHandler + 0x0800b874 Default_Handler + 0x0800b874 CEC_IRQHandler + 0x0800b874 EXTI15_10_IRQHandler + 0x0800b874 DMA1_Stream7_IRQHandler + 0x0800b874 SPI5_IRQHandler + 0x0800b874 SDMMC1_IRQHandler + 0x0800b874 CAN2_TX_IRQHandler + 0x0800b874 I2C3_EV_IRQHandler + 0x0800b874 EXTI9_5_IRQHandler + 0x0800b874 RTC_WKUP_IRQHandler + 0x0800b874 LTDC_IRQHandler + 0x0800b874 ETH_WKUP_IRQHandler + 0x0800b874 SPDIF_RX_IRQHandler + 0x0800b874 SPI2_IRQHandler + 0x0800b874 OTG_HS_EP1_IN_IRQHandler + 0x0800b874 DMA1_Stream0_IRQHandler + 0x0800b874 CAN1_TX_IRQHandler + 0x0800b874 EXTI4_IRQHandler + 0x0800b874 RNG_IRQHandler + 0x0800b874 ETH_IRQHandler + 0x0800b874 OTG_HS_EP1_OUT_IRQHandler + 0x0800b874 WWDG_IRQHandler + 0x0800b874 SPI6_IRQHandler + 0x0800b874 MDIOS_IRQHandler + 0x0800b874 I2C4_EV_IRQHandler + 0x0800b874 CAN3_TX_IRQHandler + 0x0800b874 OTG_FS_WKUP_IRQHandler + 0x0800b874 OTG_HS_IRQHandler + 0x0800b874 DMA2D_IRQHandler + 0x0800b874 EXTI1_IRQHandler + 0x0800b874 SDMMC2_IRQHandler + 0x0800b874 UART7_IRQHandler + 0x0800b874 USART2_IRQHandler + 0x0800b874 DFSDM1_FLT0_IRQHandler + 0x0800b874 I2C2_ER_IRQHandler + 0x0800b874 DMA2_Stream1_IRQHandler + 0x0800b874 CAN1_SCE_IRQHandler + 0x0800b874 FLASH_IRQHandler + 0x0800b874 DMA2_Stream4_IRQHandler + 0x0800b874 OTG_FS_IRQHandler + 0x0800b874 SPI3_IRQHandler + 0x0800b874 DMA1_Stream4_IRQHandler + 0x0800b874 I2C1_ER_IRQHandler + 0x0800b874 FMC_IRQHandler + 0x0800b874 LPTIM1_IRQHandler + 0x0800b874 I2C4_ER_IRQHandler + 0x0800b874 DMA2_Stream6_IRQHandler + 0x0800b874 SAI1_IRQHandler + 0x0800b874 DMA1_Stream3_IRQHandler *(.glue_7) - .glue_7 0x0800b2e6 0x0 linker stubs + .glue_7 0x0800b876 0x0 linker stubs *(.glue_7t) - .glue_7t 0x0800b2e6 0x0 linker stubs + .glue_7t 0x0800b876 0x0 linker stubs *(.eh_frame) - *fill* 0x0800b2e6 0x2 - .eh_frame 0x0800b2e8 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o + *fill* 0x0800b876 0x2 + .eh_frame 0x0800b878 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o *(.init) - .init 0x0800b2e8 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crti.o - 0x0800b2e8 _init - .init 0x0800b2ec 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o + .init 0x0800b878 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crti.o + 0x0800b878 _init + .init 0x0800b87c 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o *(.fini) - .fini 0x0800b2f4 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crti.o - 0x0800b2f4 _fini - .fini 0x0800b2f8 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o - 0x0800b300 . = ALIGN (0x4) - 0x0800b300 _etext = . + .fini 0x0800b884 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crti.o + 0x0800b884 _fini + .fini 0x0800b888 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o + 0x0800b890 . = ALIGN (0x4) + 0x0800b890 _etext = . -.vfp11_veneer 0x0800b300 0x0 - .vfp11_veneer 0x0800b300 0x0 linker stubs +.vfp11_veneer 0x0800b890 0x0 + .vfp11_veneer 0x0800b890 0x0 linker stubs -.v4_bx 0x0800b300 0x0 - .v4_bx 0x0800b300 0x0 linker stubs +.v4_bx 0x0800b890 0x0 + .v4_bx 0x0800b890 0x0 linker stubs -.iplt 0x0800b300 0x0 - .iplt 0x0800b300 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o +.iplt 0x0800b890 0x0 + .iplt 0x0800b890 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o -.rodata 0x0800b300 0x3e8 - 0x0800b300 . = ALIGN (0x4) +.rodata 0x0800b890 0x3e8 + 0x0800b890 . = ALIGN (0x4) *(.rodata) *(.rodata*) .rodata.Init_params.str1.4 - 0x0800b300 0x1ad build/main.o + 0x0800b890 0x1ad build/main.o 0x10 (size before relaxing) .rodata.SD_SAVE.str1.4 - 0x0800b4ad 0xa build/main.o - *fill* 0x0800b4ad 0x3 + 0x0800ba3d 0xa build/main.o + *fill* 0x0800ba3d 0x3 .rodata.ad9102_example2_regval - 0x0800b4b0 0x84 build/main.o + 0x0800ba40 0x84 build/main.o .rodata.ad9102_example4_regval - 0x0800b534 0x84 build/main.o + 0x0800bac4 0x84 build/main.o .rodata.ad9102_reg_addr - 0x0800b5b8 0x84 build/main.o + 0x0800bb48 0x84 build/main.o .rodata.SD_Driver - 0x0800b63c 0x14 build/sd_diskio.o - 0x0800b63c SD_Driver + 0x0800bbcc 0x14 build/sd_diskio.o + 0x0800bbcc SD_Driver .rodata.APBPrescTable - 0x0800b650 0x8 build/system_stm32f7xx.o - 0x0800b650 APBPrescTable + 0x0800bbe0 0x8 build/system_stm32f7xx.o + 0x0800bbe0 APBPrescTable .rodata.AHBPrescTable - 0x0800b658 0x10 build/system_stm32f7xx.o - 0x0800b658 AHBPrescTable + 0x0800bbe8 0x10 build/system_stm32f7xx.o + 0x0800bbe8 AHBPrescTable .rodata.Read_File.str1.4 - 0x0800b668 0xbb build/File_Handling.o + 0x0800bbf8 0xbb build/File_Handling.o .rodata.Seek_Read_File.str1.4 - 0x0800b668 0x27 build/File_Handling.o + 0x0800bbf8 0x27 build/File_Handling.o .rodata.Remove_File.str1.4 - 0x0800b668 0x64 build/File_Handling.o + 0x0800bbf8 0x64 build/File_Handling.o .rodata.create_name.str1.4 - 0x0800b668 0xf build/ff.o - .rodata.ExCvt 0x0800b668 0x80 build/ff.o + 0x0800bbf8 0xf build/ff.o + .rodata.ExCvt 0x0800bbf8 0x80 build/ff.o .rodata.str1.4 - 0x0800b6e8 0x13 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + 0x0800bc78 0x13 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) .rodata.str1.4 - 0x0800b6e8 0x25 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - 0x0800b724 . = ALIGN (0x4) + 0x0800bc78 0x25 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + 0x0800bcb4 . = ALIGN (0x4) .ARM.extab *(.ARM.extab* .gnu.linkonce.armextab.*) -.ARM 0x0800b6e8 0x8 - 0x0800b6e8 __exidx_start = . +.ARM 0x0800bc78 0x8 + 0x0800bc78 __exidx_start = . *(.ARM.exidx*) - .ARM.exidx 0x0800b6e8 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) - .ARM.exidx 0x0800b6f0 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + .ARM.exidx 0x0800bc78 0x8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + .ARM.exidx 0x0800bc80 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) 0x8 (size before relaxing) - .ARM.exidx 0x0800b6f0 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + .ARM.exidx 0x0800bc80 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) 0x8 (size before relaxing) - 0x0800b6f0 __exidx_end = . + 0x0800bc80 __exidx_end = . -.rel.dyn 0x0800b6f0 0x0 - .rel.iplt 0x0800b6f0 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o +.rel.dyn 0x0800bc80 0x0 + .rel.iplt 0x0800bc80 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o -.preinit_array 0x0800b6f0 0x0 - 0x0800b6f0 PROVIDE (__preinit_array_start = .) +.preinit_array 0x0800bc80 0x0 + 0x0800bc80 PROVIDE (__preinit_array_start = .) *(.preinit_array*) - 0x0800b6f0 PROVIDE (__preinit_array_end = .) + 0x0800bc80 PROVIDE (__preinit_array_end = .) -.init_array 0x0800b6f0 0x4 - 0x0800b6f0 PROVIDE (__init_array_start = .) +.init_array 0x0800bc80 0x4 + 0x0800bc80 PROVIDE (__init_array_start = .) *(SORT_BY_NAME(.init_array.*)) *(.init_array*) - .init_array 0x0800b6f0 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o - 0x0800b6f4 PROVIDE (__init_array_end = .) + .init_array 0x0800bc80 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o + 0x0800bc84 PROVIDE (__init_array_end = .) -.fini_array 0x0800b6f4 0x4 - 0x0800b6f4 PROVIDE (__fini_array_start = .) +.fini_array 0x0800bc84 0x4 + 0x0800bc84 PROVIDE (__fini_array_start = .) *(SORT_BY_NAME(.fini_array.*)) *(.fini_array*) - .fini_array 0x0800b6f4 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o - 0x0800b6f8 PROVIDE (__fini_array_end = .) - 0x0800b6f8 _sidata = LOADADDR (.data) + .fini_array 0x0800bc84 0x4 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o + 0x0800bc88 PROVIDE (__fini_array_end = .) + 0x0800bc88 _sidata = LOADADDR (.data) -.data 0x20000000 0x5c load address 0x0800b6f8 +.data 0x20000000 0x5c load address 0x0800bc88 0x20000000 . = ALIGN (0x4) 0x20000000 _sdata = . *(.data) @@ -3123,17 +3135,17 @@ LOAD /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o 0x2000005c _edata = . .tm_clone_table - 0x2000005c 0x0 load address 0x0800b754 + 0x2000005c 0x0 load address 0x0800bce4 .tm_clone_table 0x2000005c 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o .tm_clone_table 0x2000005c 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtend.o -.igot.plt 0x2000005c 0x0 load address 0x0800b754 +.igot.plt 0x2000005c 0x0 load address 0x0800bce4 .igot.plt 0x2000005c 0x0 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtbegin.o 0x2000005c . = ALIGN (0x4) -.bss 0x2000005c 0x266c load address 0x0800b754 +.bss 0x2000005c 0x26b8 load address 0x0800bce4 0x2000005c _sbss = . 0x2000005c __bss_start__ = _sbss *(.bss) @@ -3268,56 +3280,59 @@ LOAD /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtn.o 0x200003bc htim11 .bss.htim10 0x20000408 0x4c build/main.o 0x20000408 htim10 - .bss.htim8 0x20000454 0x4c build/main.o - 0x20000454 htim8 - .bss.htim4 0x200004a0 0x4c build/main.o - 0x200004a0 htim4 - .bss.hsd1 0x200004ec 0x84 build/main.o - 0x200004ec hsd1 - .bss.hadc3 0x20000570 0x48 build/main.o - 0x20000570 hadc3 - .bss.hadc1 0x200005b8 0x48 build/main.o - 0x200005b8 hadc1 - .bss.SDPath 0x20000600 0x4 build/fatfs.o - 0x20000600 SDPath - .bss.retSD 0x20000604 0x1 build/fatfs.o - 0x20000604 retSD - *fill* 0x20000605 0x3 - .bss.uwTick 0x20000608 0x4 build/stm32f7xx_hal.o - 0x20000608 uwTick - .bss.bw 0x2000060c 0x4 build/File_Handling.o - 0x2000060c bw - .bss.br 0x20000610 0x4 build/File_Handling.o - 0x20000610 br - .bss.fno 0x20000614 0x18 build/File_Handling.o - 0x20000614 fno - .bss.fil 0x2000062c 0x1030 build/File_Handling.o - 0x2000062c fil - .bss.fs 0x2000165c 0x1034 build/File_Handling.o - 0x2000165c fs - .bss.Files 0x20002690 0x20 build/ff.o - .bss.Fsid 0x200026b0 0x2 build/ff.o - *fill* 0x200026b2 0x2 - .bss.FatFs 0x200026b4 0x4 build/ff.o - .bss.disk 0x200026b8 0xc build/ff_gen_drv.o - 0x200026b8 disk + .bss.htim1 0x20000454 0x4c build/main.o + 0x20000454 htim1 + .bss.htim8 0x200004a0 0x4c build/main.o + 0x200004a0 htim8 + .bss.htim4 0x200004ec 0x4c build/main.o + 0x200004ec htim4 + .bss.hsd1 0x20000538 0x84 build/main.o + 0x20000538 hsd1 + .bss.hadc3 0x200005bc 0x48 build/main.o + 0x200005bc hadc3 + .bss.hadc1 0x20000604 0x48 build/main.o + 0x20000604 hadc1 + .bss.SDPath 0x2000064c 0x4 build/fatfs.o + 0x2000064c SDPath + .bss.retSD 0x20000650 0x1 build/fatfs.o + 0x20000650 retSD + *fill* 0x20000651 0x3 + .bss.uwTick 0x20000654 0x4 build/stm32f7xx_hal.o + 0x20000654 uwTick + .bss.bw 0x20000658 0x4 build/File_Handling.o + 0x20000658 bw + .bss.br 0x2000065c 0x4 build/File_Handling.o + 0x2000065c br + .bss.fno 0x20000660 0x18 build/File_Handling.o + 0x20000660 fno + .bss.fil 0x20000678 0x1030 build/File_Handling.o + 0x20000678 fil + .bss.fs 0x200016a8 0x1034 build/File_Handling.o + 0x200016a8 fs + .bss.Files 0x200026dc 0x20 build/ff.o + .bss.Fsid 0x200026fc 0x2 build/ff.o + *fill* 0x200026fe 0x2 + .bss.FatFs 0x20002700 0x4 build/ff.o + .bss.disk 0x20002704 0xc build/ff_gen_drv.o + 0x20002704 disk .bss.__sbrk_heap_end - 0x200026c4 0x4 build/sysmem.o + 0x20002710 0x4 build/sysmem.o *(COMMON) - 0x200026c8 . = ALIGN (0x4) - 0x200026c8 _ebss = . - 0x200026c8 __bss_end__ = _ebss + 0x20002714 . = ALIGN (0x4) + 0x20002714 _ebss = . + 0x20002714 __bss_end__ = _ebss ._user_heap_stack - 0x200026c8 0x6000 load address 0x0800b754 - 0x200026c8 . = ALIGN (0x8) + 0x20002714 0x6004 load address 0x0800bce4 + 0x20002718 . = ALIGN (0x8) + *fill* 0x20002714 0x4 [!provide] PROVIDE (end = .) - 0x200026c8 PROVIDE (_end = .) - 0x200046c8 . = (. + _Min_Heap_Size) - *fill* 0x200026c8 0x2000 - 0x200086c8 . = (. + _Min_Stack_Size) - *fill* 0x200046c8 0x4000 - 0x200086c8 . = ALIGN (0x8) + 0x20002718 PROVIDE (_end = .) + 0x20004718 . = (. + _Min_Heap_Size) + *fill* 0x20002718 0x2000 + 0x20008718 . = (. + _Min_Stack_Size) + *fill* 0x20004718 0x4000 + 0x20008718 . = ALIGN (0x8) /DISCARD/ libc.a(*) @@ -3502,458 +3517,458 @@ LOAD /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a .comment 0x00000026 0x27 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) .comment 0x00000026 0x27 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/crtend.o -.debug_info 0x00000000 0x3bab6 - .debug_info 0x00000000 0x94b1 build/main.o - .debug_info 0x000094b1 0xe39 build/bsp_driver_sd.o - .debug_info 0x0000a2ea 0x74a build/sd_diskio.o - .debug_info 0x0000aa34 0x65a build/fatfs.o - .debug_info 0x0000b08e 0x1f0 build/fatfs_platform.o - .debug_info 0x0000b27e 0x1925 build/stm32f7xx_it.o - .debug_info 0x0000cba3 0x23e6 build/stm32f7xx_hal_msp.o - .debug_info 0x0000ef89 0xfb5 build/stm32f7xx_hal_adc.o - .debug_info 0x0000ff3e 0xd39 build/stm32f7xx_hal_adc_ex.o - .debug_info 0x00010c77 0xd0b build/stm32f7xx_hal_rcc.o - .debug_info 0x00011982 0x96b build/stm32f7xx_hal_rcc_ex.o - .debug_info 0x000122ed 0x867 build/stm32f7xx_hal_gpio.o - .debug_info 0x00012b54 0xb00 build/stm32f7xx_hal_pwr_ex.o - .debug_info 0x00013654 0x145b build/stm32f7xx_hal_cortex.o - .debug_info 0x00014aaf 0xc0b build/stm32f7xx_hal.o - .debug_info 0x000156ba 0x1d6b build/stm32f7xx_ll_rcc.o - .debug_info 0x00017425 0xda5 build/stm32f7xx_ll_gpio.o - .debug_info 0x000181ca 0x1ad6 build/stm32f7xx_ll_sdmmc.o - .debug_info 0x00019ca0 0x2a28 build/stm32f7xx_hal_sd.o - .debug_info 0x0001c6c8 0xb14 build/stm32f7xx_ll_spi.o - .debug_info 0x0001d1dc 0x42a3 build/stm32f7xx_hal_tim.o - .debug_info 0x0002147f 0x2009 build/stm32f7xx_hal_tim_ex.o - .debug_info 0x00023488 0x19f0 build/stm32f7xx_ll_tim.o - .debug_info 0x00024e78 0xc07 build/stm32f7xx_ll_usart.o - .debug_info 0x00025a7f 0x7ea build/system_stm32f7xx.o - .debug_info 0x00026269 0x1ef6 build/File_Handling.o - .debug_info 0x0002815f 0x5f7 build/diskio.o - .debug_info 0x00028756 0x47f5 build/ff.o - .debug_info 0x0002cf4b 0x525 build/ff_gen_drv.o - .debug_info 0x0002d470 0x174 build/sysmem.o - .debug_info 0x0002d5e4 0x54ac build/stm32f7xx_hal_uart.o - .debug_info 0x00032a90 0x30 build/startup_stm32f767xx.o - .debug_info 0x00032ac0 0x87b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) - .debug_info 0x0003333b 0x70b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) - .debug_info 0x00033a46 0x1092 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) - .debug_info 0x00034ad8 0x10b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) - .debug_info 0x00034be3 0x135 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) - .debug_info 0x00034d18 0x6f1 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) - .debug_info 0x00035409 0x9b6 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) - .debug_info 0x00035dbf 0x87f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) - .debug_info 0x0003663e 0x148 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) - .debug_info 0x00036786 0x25 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) - .debug_info 0x000367ab 0x33 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) - .debug_info 0x000367de 0x796 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) - .debug_info 0x00036f74 0x8cd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) - .debug_info 0x00037841 0xdd7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - .debug_info 0x00038618 0x71c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) - .debug_info 0x00038d34 0x778 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) - .debug_info 0x000394ac 0x78a /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) - .debug_info 0x00039c36 0xe8c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) - .debug_info 0x0003aac2 0x89f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) - .debug_info 0x0003b361 0x24 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) - .debug_info 0x0003b385 0x6f5 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) - .debug_info 0x0003ba7a 0x3c /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) +.debug_info 0x00000000 0x3c64e + .debug_info 0x00000000 0x9fee build/main.o + .debug_info 0x00009fee 0xe39 build/bsp_driver_sd.o + .debug_info 0x0000ae27 0x74a build/sd_diskio.o + .debug_info 0x0000b571 0x65a build/fatfs.o + .debug_info 0x0000bbcb 0x1f0 build/fatfs_platform.o + .debug_info 0x0000bdbb 0x1927 build/stm32f7xx_it.o + .debug_info 0x0000d6e2 0x243f build/stm32f7xx_hal_msp.o + .debug_info 0x0000fb21 0xfb5 build/stm32f7xx_hal_adc.o + .debug_info 0x00010ad6 0xd39 build/stm32f7xx_hal_adc_ex.o + .debug_info 0x0001180f 0xd0b build/stm32f7xx_hal_rcc.o + .debug_info 0x0001251a 0x96b build/stm32f7xx_hal_rcc_ex.o + .debug_info 0x00012e85 0x867 build/stm32f7xx_hal_gpio.o + .debug_info 0x000136ec 0xb00 build/stm32f7xx_hal_pwr_ex.o + .debug_info 0x000141ec 0x145b build/stm32f7xx_hal_cortex.o + .debug_info 0x00015647 0xc0b build/stm32f7xx_hal.o + .debug_info 0x00016252 0x1d6b build/stm32f7xx_ll_rcc.o + .debug_info 0x00017fbd 0xda5 build/stm32f7xx_ll_gpio.o + .debug_info 0x00018d62 0x1ad6 build/stm32f7xx_ll_sdmmc.o + .debug_info 0x0001a838 0x2a28 build/stm32f7xx_hal_sd.o + .debug_info 0x0001d260 0xb14 build/stm32f7xx_ll_spi.o + .debug_info 0x0001dd74 0x42a3 build/stm32f7xx_hal_tim.o + .debug_info 0x00022017 0x2009 build/stm32f7xx_hal_tim_ex.o + .debug_info 0x00024020 0x19f0 build/stm32f7xx_ll_tim.o + .debug_info 0x00025a10 0xc07 build/stm32f7xx_ll_usart.o + .debug_info 0x00026617 0x7ea build/system_stm32f7xx.o + .debug_info 0x00026e01 0x1ef6 build/File_Handling.o + .debug_info 0x00028cf7 0x5f7 build/diskio.o + .debug_info 0x000292ee 0x47f5 build/ff.o + .debug_info 0x0002dae3 0x525 build/ff_gen_drv.o + .debug_info 0x0002e008 0x174 build/sysmem.o + .debug_info 0x0002e17c 0x54ac build/stm32f7xx_hal_uart.o + .debug_info 0x00033628 0x30 build/startup_stm32f767xx.o + .debug_info 0x00033658 0x87b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + .debug_info 0x00033ed3 0x70b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) + .debug_info 0x000345de 0x1092 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + .debug_info 0x00035670 0x10b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + .debug_info 0x0003577b 0x135 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + .debug_info 0x000358b0 0x6f1 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + .debug_info 0x00035fa1 0x9b6 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + .debug_info 0x00036957 0x87f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + .debug_info 0x000371d6 0x148 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + .debug_info 0x0003731e 0x25 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + .debug_info 0x00037343 0x33 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + .debug_info 0x00037376 0x796 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + .debug_info 0x00037b0c 0x8cd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + .debug_info 0x000383d9 0xdd7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + .debug_info 0x000391b0 0x71c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + .debug_info 0x000398cc 0x778 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + .debug_info 0x0003a044 0x78a /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + .debug_info 0x0003a7ce 0xe8c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + .debug_info 0x0003b65a 0x89f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + .debug_info 0x0003bef9 0x24 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + .debug_info 0x0003bf1d 0x6f5 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + .debug_info 0x0003c612 0x3c /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) -.debug_abbrev 0x00000000 0x7035 - .debug_abbrev 0x00000000 0x529 build/main.o - .debug_abbrev 0x00000529 0x2a1 build/bsp_driver_sd.o - .debug_abbrev 0x000007ca 0x1e1 build/sd_diskio.o - .debug_abbrev 0x000009ab 0x181 build/fatfs.o - .debug_abbrev 0x00000b2c 0x11e build/fatfs_platform.o - .debug_abbrev 0x00000c4a 0x33b build/stm32f7xx_it.o - .debug_abbrev 0x00000f85 0x299 build/stm32f7xx_hal_msp.o - .debug_abbrev 0x0000121e 0x2b6 build/stm32f7xx_hal_adc.o - .debug_abbrev 0x000014d4 0x2d9 build/stm32f7xx_hal_adc_ex.o - .debug_abbrev 0x000017ad 0x306 build/stm32f7xx_hal_rcc.o - .debug_abbrev 0x00001ab3 0x1f3 build/stm32f7xx_hal_rcc_ex.o - .debug_abbrev 0x00001ca6 0x22b build/stm32f7xx_hal_gpio.o - .debug_abbrev 0x00001ed1 0x1d5 build/stm32f7xx_hal_pwr_ex.o - .debug_abbrev 0x000020a6 0x3ca build/stm32f7xx_hal_cortex.o - .debug_abbrev 0x00002470 0x244 build/stm32f7xx_hal.o - .debug_abbrev 0x000026b4 0x294 build/stm32f7xx_ll_rcc.o - .debug_abbrev 0x00002948 0x2ad build/stm32f7xx_ll_gpio.o - .debug_abbrev 0x00002bf5 0x236 build/stm32f7xx_ll_sdmmc.o - .debug_abbrev 0x00002e2b 0x306 build/stm32f7xx_hal_sd.o - .debug_abbrev 0x00003131 0x2e3 build/stm32f7xx_ll_spi.o - .debug_abbrev 0x00003414 0x2bd build/stm32f7xx_hal_tim.o - .debug_abbrev 0x000036d1 0x2b7 build/stm32f7xx_hal_tim_ex.o - .debug_abbrev 0x00003988 0x2af build/stm32f7xx_ll_tim.o - .debug_abbrev 0x00003c37 0x2d3 build/stm32f7xx_ll_usart.o - .debug_abbrev 0x00003f0a 0x12a build/system_stm32f7xx.o - .debug_abbrev 0x00004034 0x307 build/File_Handling.o - .debug_abbrev 0x0000433b 0x1ca build/diskio.o - .debug_abbrev 0x00004505 0x309 build/ff.o - .debug_abbrev 0x0000480e 0x1da build/ff_gen_drv.o - .debug_abbrev 0x000049e8 0xeb build/sysmem.o - .debug_abbrev 0x00004ad3 0x346 build/stm32f7xx_hal_uart.o - .debug_abbrev 0x00004e19 0x1d build/startup_stm32f767xx.o - .debug_abbrev 0x00004e36 0x21c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) - .debug_abbrev 0x00005052 0x149 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) - .debug_abbrev 0x0000519b 0x32f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) - .debug_abbrev 0x000054ca 0xc9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) - .debug_abbrev 0x00005593 0xb7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) - .debug_abbrev 0x0000564a 0x15e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) - .debug_abbrev 0x000057a8 0x24a /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) - .debug_abbrev 0x000059f2 0x249 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) - .debug_abbrev 0x00005c3b 0xc3 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) - .debug_abbrev 0x00005cfe 0x14 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) - .debug_abbrev 0x00005d12 0x28 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) - .debug_abbrev 0x00005d3a 0x1cf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) - .debug_abbrev 0x00005f09 0x20c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) - .debug_abbrev 0x00006115 0x284 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - .debug_abbrev 0x00006399 0x192 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) - .debug_abbrev 0x0000652b 0x1da /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) - .debug_abbrev 0x00006705 0x196 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) - .debug_abbrev 0x0000689b 0x408 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) - .debug_abbrev 0x00006ca3 0x1ee /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) - .debug_abbrev 0x00006e91 0x14 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) - .debug_abbrev 0x00006ea5 0x16a /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) - .debug_abbrev 0x0000700f 0x26 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) +.debug_abbrev 0x00000000 0x7060 + .debug_abbrev 0x00000000 0x554 build/main.o + .debug_abbrev 0x00000554 0x2a1 build/bsp_driver_sd.o + .debug_abbrev 0x000007f5 0x1e1 build/sd_diskio.o + .debug_abbrev 0x000009d6 0x181 build/fatfs.o + .debug_abbrev 0x00000b57 0x11e build/fatfs_platform.o + .debug_abbrev 0x00000c75 0x33b build/stm32f7xx_it.o + .debug_abbrev 0x00000fb0 0x299 build/stm32f7xx_hal_msp.o + .debug_abbrev 0x00001249 0x2b6 build/stm32f7xx_hal_adc.o + .debug_abbrev 0x000014ff 0x2d9 build/stm32f7xx_hal_adc_ex.o + .debug_abbrev 0x000017d8 0x306 build/stm32f7xx_hal_rcc.o + .debug_abbrev 0x00001ade 0x1f3 build/stm32f7xx_hal_rcc_ex.o + .debug_abbrev 0x00001cd1 0x22b build/stm32f7xx_hal_gpio.o + .debug_abbrev 0x00001efc 0x1d5 build/stm32f7xx_hal_pwr_ex.o + .debug_abbrev 0x000020d1 0x3ca build/stm32f7xx_hal_cortex.o + .debug_abbrev 0x0000249b 0x244 build/stm32f7xx_hal.o + .debug_abbrev 0x000026df 0x294 build/stm32f7xx_ll_rcc.o + .debug_abbrev 0x00002973 0x2ad build/stm32f7xx_ll_gpio.o + .debug_abbrev 0x00002c20 0x236 build/stm32f7xx_ll_sdmmc.o + .debug_abbrev 0x00002e56 0x306 build/stm32f7xx_hal_sd.o + .debug_abbrev 0x0000315c 0x2e3 build/stm32f7xx_ll_spi.o + .debug_abbrev 0x0000343f 0x2bd build/stm32f7xx_hal_tim.o + .debug_abbrev 0x000036fc 0x2b7 build/stm32f7xx_hal_tim_ex.o + .debug_abbrev 0x000039b3 0x2af build/stm32f7xx_ll_tim.o + .debug_abbrev 0x00003c62 0x2d3 build/stm32f7xx_ll_usart.o + .debug_abbrev 0x00003f35 0x12a build/system_stm32f7xx.o + .debug_abbrev 0x0000405f 0x307 build/File_Handling.o + .debug_abbrev 0x00004366 0x1ca build/diskio.o + .debug_abbrev 0x00004530 0x309 build/ff.o + .debug_abbrev 0x00004839 0x1da build/ff_gen_drv.o + .debug_abbrev 0x00004a13 0xeb build/sysmem.o + .debug_abbrev 0x00004afe 0x346 build/stm32f7xx_hal_uart.o + .debug_abbrev 0x00004e44 0x1d build/startup_stm32f767xx.o + .debug_abbrev 0x00004e61 0x21c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + .debug_abbrev 0x0000507d 0x149 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) + .debug_abbrev 0x000051c6 0x32f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + .debug_abbrev 0x000054f5 0xc9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + .debug_abbrev 0x000055be 0xb7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + .debug_abbrev 0x00005675 0x15e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + .debug_abbrev 0x000057d3 0x24a /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + .debug_abbrev 0x00005a1d 0x249 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + .debug_abbrev 0x00005c66 0xc3 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + .debug_abbrev 0x00005d29 0x14 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + .debug_abbrev 0x00005d3d 0x28 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + .debug_abbrev 0x00005d65 0x1cf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + .debug_abbrev 0x00005f34 0x20c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + .debug_abbrev 0x00006140 0x284 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + .debug_abbrev 0x000063c4 0x192 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + .debug_abbrev 0x00006556 0x1da /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + .debug_abbrev 0x00006730 0x196 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + .debug_abbrev 0x000068c6 0x408 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + .debug_abbrev 0x00006cce 0x1ee /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + .debug_abbrev 0x00006ebc 0x14 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + .debug_abbrev 0x00006ed0 0x16a /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + .debug_abbrev 0x0000703a 0x26 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) -.debug_loc 0x00000000 0x274f6 - .debug_loc 0x00000000 0x3cb3 build/main.o - .debug_loc 0x00003cb3 0x6f0 build/bsp_driver_sd.o - .debug_loc 0x000043a3 0x544 build/sd_diskio.o - .debug_loc 0x000048e7 0x20 build/fatfs.o - .debug_loc 0x00004907 0x51 build/fatfs_platform.o - .debug_loc 0x00004958 0x43a build/stm32f7xx_it.o - .debug_loc 0x00004d92 0x5a7 build/stm32f7xx_hal_msp.o - .debug_loc 0x00005339 0xe7b build/stm32f7xx_hal_adc.o - .debug_loc 0x000061b4 0xc11 build/stm32f7xx_hal_adc_ex.o - .debug_loc 0x00006dc5 0x849 build/stm32f7xx_hal_rcc.o - .debug_loc 0x0000760e 0x924 build/stm32f7xx_hal_rcc_ex.o - .debug_loc 0x00007f32 0x60b build/stm32f7xx_hal_gpio.o - .debug_loc 0x0000853d 0x3e6 build/stm32f7xx_hal_pwr_ex.o - .debug_loc 0x00008923 0x886 build/stm32f7xx_hal_cortex.o - .debug_loc 0x000091a9 0x1f9 build/stm32f7xx_hal.o - .debug_loc 0x000093a2 0x1806 build/stm32f7xx_ll_rcc.o - .debug_loc 0x0000aba8 0x9ad build/stm32f7xx_ll_gpio.o - .debug_loc 0x0000b555 0x1873 build/stm32f7xx_ll_sdmmc.o - .debug_loc 0x0000cdc8 0x29f6 build/stm32f7xx_hal_sd.o - .debug_loc 0x0000f7be 0x6d7 build/stm32f7xx_ll_spi.o - .debug_loc 0x0000fe95 0x6372 build/stm32f7xx_hal_tim.o - .debug_loc 0x00016207 0x291a build/stm32f7xx_hal_tim_ex.o - .debug_loc 0x00018b21 0x1b79 build/stm32f7xx_ll_tim.o - .debug_loc 0x0001a69a 0x8b1 build/stm32f7xx_ll_usart.o - .debug_loc 0x0001af4b 0x181 build/system_stm32f7xx.o - .debug_loc 0x0001b0cc 0xa9c build/File_Handling.o - .debug_loc 0x0001bb68 0x377 build/diskio.o - .debug_loc 0x0001bedf 0x6040 build/ff.o - .debug_loc 0x00021f1f 0x37c build/ff_gen_drv.o - .debug_loc 0x0002229b 0x90 build/sysmem.o - .debug_loc 0x0002232b 0x51cb build/stm32f7xx_hal_uart.o +.debug_loc 0x00000000 0x27de1 + .debug_loc 0x00000000 0x457b build/main.o + .debug_loc 0x0000457b 0x6f0 build/bsp_driver_sd.o + .debug_loc 0x00004c6b 0x544 build/sd_diskio.o + .debug_loc 0x000051af 0x20 build/fatfs.o + .debug_loc 0x000051cf 0x51 build/fatfs_platform.o + .debug_loc 0x00005220 0x43a build/stm32f7xx_it.o + .debug_loc 0x0000565a 0x5ca build/stm32f7xx_hal_msp.o + .debug_loc 0x00005c24 0xe7b build/stm32f7xx_hal_adc.o + .debug_loc 0x00006a9f 0xc11 build/stm32f7xx_hal_adc_ex.o + .debug_loc 0x000076b0 0x849 build/stm32f7xx_hal_rcc.o + .debug_loc 0x00007ef9 0x924 build/stm32f7xx_hal_rcc_ex.o + .debug_loc 0x0000881d 0x60b build/stm32f7xx_hal_gpio.o + .debug_loc 0x00008e28 0x3e6 build/stm32f7xx_hal_pwr_ex.o + .debug_loc 0x0000920e 0x886 build/stm32f7xx_hal_cortex.o + .debug_loc 0x00009a94 0x1f9 build/stm32f7xx_hal.o + .debug_loc 0x00009c8d 0x1806 build/stm32f7xx_ll_rcc.o + .debug_loc 0x0000b493 0x9ad build/stm32f7xx_ll_gpio.o + .debug_loc 0x0000be40 0x1873 build/stm32f7xx_ll_sdmmc.o + .debug_loc 0x0000d6b3 0x29f6 build/stm32f7xx_hal_sd.o + .debug_loc 0x000100a9 0x6d7 build/stm32f7xx_ll_spi.o + .debug_loc 0x00010780 0x6372 build/stm32f7xx_hal_tim.o + .debug_loc 0x00016af2 0x291a build/stm32f7xx_hal_tim_ex.o + .debug_loc 0x0001940c 0x1b79 build/stm32f7xx_ll_tim.o + .debug_loc 0x0001af85 0x8b1 build/stm32f7xx_ll_usart.o + .debug_loc 0x0001b836 0x181 build/system_stm32f7xx.o + .debug_loc 0x0001b9b7 0xa9c build/File_Handling.o + .debug_loc 0x0001c453 0x377 build/diskio.o + .debug_loc 0x0001c7ca 0x6040 build/ff.o + .debug_loc 0x0002280a 0x37c build/ff_gen_drv.o + .debug_loc 0x00022b86 0x90 build/sysmem.o + .debug_loc 0x00022c16 0x51cb build/stm32f7xx_hal_uart.o -.debug_aranges 0x00000000 0x1c98 +.debug_aranges 0x00000000 0x1cc0 .debug_aranges - 0x00000000 0x1a0 build/main.o + 0x00000000 0x1c8 build/main.o .debug_aranges - 0x000001a0 0x98 build/bsp_driver_sd.o + 0x000001c8 0x98 build/bsp_driver_sd.o .debug_aranges - 0x00000238 0x48 build/sd_diskio.o + 0x00000260 0x48 build/sd_diskio.o .debug_aranges - 0x00000280 0x28 build/fatfs.o + 0x000002a8 0x28 build/fatfs.o .debug_aranges - 0x000002a8 0x20 build/fatfs_platform.o + 0x000002d0 0x20 build/fatfs_platform.o .debug_aranges - 0x000002c8 0xc0 build/stm32f7xx_it.o + 0x000002f0 0xc0 build/stm32f7xx_it.o .debug_aranges - 0x00000388 0x68 build/stm32f7xx_hal_msp.o + 0x000003b0 0x68 build/stm32f7xx_hal_msp.o .debug_aranges - 0x000003f0 0xe8 build/stm32f7xx_hal_adc.o + 0x00000418 0xe8 build/stm32f7xx_hal_adc.o .debug_aranges - 0x000004d8 0x90 build/stm32f7xx_hal_adc_ex.o + 0x00000500 0x90 build/stm32f7xx_hal_adc_ex.o .debug_aranges - 0x00000568 0x88 build/stm32f7xx_hal_rcc.o + 0x00000590 0x88 build/stm32f7xx_hal_rcc.o .debug_aranges - 0x000005f0 0x50 build/stm32f7xx_hal_rcc_ex.o + 0x00000618 0x50 build/stm32f7xx_hal_rcc_ex.o .debug_aranges - 0x00000640 0x58 build/stm32f7xx_hal_gpio.o + 0x00000668 0x58 build/stm32f7xx_hal_gpio.o .debug_aranges - 0x00000698 0x80 build/stm32f7xx_hal_pwr_ex.o + 0x000006c0 0x80 build/stm32f7xx_hal_pwr_ex.o .debug_aranges - 0x00000718 0xe8 build/stm32f7xx_hal_cortex.o + 0x00000740 0xe8 build/stm32f7xx_hal_cortex.o .debug_aranges - 0x00000800 0x110 build/stm32f7xx_hal.o + 0x00000828 0x110 build/stm32f7xx_hal.o .debug_aranges - 0x00000910 0xf8 build/stm32f7xx_ll_rcc.o + 0x00000938 0xf8 build/stm32f7xx_ll_rcc.o .debug_aranges - 0x00000a08 0x58 build/stm32f7xx_ll_gpio.o + 0x00000a30 0x58 build/stm32f7xx_ll_gpio.o .debug_aranges - 0x00000a60 0x188 build/stm32f7xx_ll_sdmmc.o + 0x00000a88 0x188 build/stm32f7xx_ll_sdmmc.o .debug_aranges - 0x00000be8 0x168 build/stm32f7xx_hal_sd.o + 0x00000c10 0x168 build/stm32f7xx_hal_sd.o .debug_aranges - 0x00000d50 0x50 build/stm32f7xx_ll_spi.o + 0x00000d78 0x50 build/stm32f7xx_ll_spi.o .debug_aranges - 0x00000da0 0x3e0 build/stm32f7xx_hal_tim.o + 0x00000dc8 0x3e0 build/stm32f7xx_hal_tim.o .debug_aranges - 0x00001180 0x180 build/stm32f7xx_hal_tim_ex.o + 0x000011a8 0x180 build/stm32f7xx_hal_tim_ex.o .debug_aranges - 0x00001300 0xd0 build/stm32f7xx_ll_tim.o + 0x00001328 0xd0 build/stm32f7xx_ll_tim.o .debug_aranges - 0x000013d0 0x48 build/stm32f7xx_ll_usart.o + 0x000013f8 0x48 build/stm32f7xx_ll_usart.o .debug_aranges - 0x00001418 0x28 build/system_stm32f7xx.o + 0x00001440 0x28 build/system_stm32f7xx.o .debug_aranges - 0x00001440 0x98 build/File_Handling.o + 0x00001468 0x98 build/File_Handling.o .debug_aranges - 0x000014d8 0x48 build/diskio.o + 0x00001500 0x48 build/diskio.o .debug_aranges - 0x00001520 0x208 build/ff.o + 0x00001548 0x208 build/ff.o .debug_aranges - 0x00001728 0x40 build/ff_gen_drv.o + 0x00001750 0x40 build/ff_gen_drv.o .debug_aranges - 0x00001768 0x20 build/sysmem.o + 0x00001790 0x20 build/sysmem.o .debug_aranges - 0x00001788 0x230 build/stm32f7xx_hal_uart.o + 0x000017b0 0x230 build/stm32f7xx_hal_uart.o .debug_aranges - 0x000019b8 0x28 build/startup_stm32f767xx.o + 0x000019e0 0x28 build/startup_stm32f767xx.o .debug_aranges - 0x000019e0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + 0x00001a08 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) .debug_aranges - 0x00001a00 0x18 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) + 0x00001a28 0x18 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) .debug_aranges - 0x00001a18 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + 0x00001a40 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) .debug_aranges - 0x00001a38 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + 0x00001a60 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) .debug_aranges - 0x00001a58 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + 0x00001a80 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) .debug_aranges - 0x00001a78 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + 0x00001aa0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) .debug_aranges - 0x00001a98 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + 0x00001ac0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) .debug_aranges - 0x00001ab8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + 0x00001ae0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) .debug_aranges - 0x00001ad8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + 0x00001b00 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) .debug_aranges - 0x00001af8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + 0x00001b20 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) .debug_aranges - 0x00001b18 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + 0x00001b40 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) .debug_aranges - 0x00001b38 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + 0x00001b60 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) .debug_aranges - 0x00001b58 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + 0x00001b80 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) .debug_aranges - 0x00001b78 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + 0x00001ba0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) .debug_aranges - 0x00001b98 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + 0x00001bc0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) .debug_aranges - 0x00001bb8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + 0x00001be0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) .debug_aranges - 0x00001bd8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + 0x00001c00 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) .debug_aranges - 0x00001bf8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + 0x00001c20 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) .debug_aranges - 0x00001c18 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + 0x00001c40 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) .debug_aranges - 0x00001c38 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + 0x00001c60 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) .debug_aranges - 0x00001c58 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + 0x00001c80 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) .debug_aranges - 0x00001c78 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) + 0x00001ca0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) -.debug_ranges 0x00000000 0x1c88 - .debug_ranges 0x00000000 0x2b8 build/main.o - .debug_ranges 0x000002b8 0x88 build/bsp_driver_sd.o - .debug_ranges 0x00000340 0x38 build/sd_diskio.o - .debug_ranges 0x00000378 0x18 build/fatfs.o - .debug_ranges 0x00000390 0x10 build/fatfs_platform.o - .debug_ranges 0x000003a0 0xb0 build/stm32f7xx_it.o - .debug_ranges 0x00000450 0x58 build/stm32f7xx_hal_msp.o - .debug_ranges 0x000004a8 0xd8 build/stm32f7xx_hal_adc.o - .debug_ranges 0x00000580 0x80 build/stm32f7xx_hal_adc_ex.o - .debug_ranges 0x00000600 0x78 build/stm32f7xx_hal_rcc.o - .debug_ranges 0x00000678 0x40 build/stm32f7xx_hal_rcc_ex.o - .debug_ranges 0x000006b8 0x48 build/stm32f7xx_hal_gpio.o - .debug_ranges 0x00000700 0x70 build/stm32f7xx_hal_pwr_ex.o - .debug_ranges 0x00000770 0xd8 build/stm32f7xx_hal_cortex.o - .debug_ranges 0x00000848 0x100 build/stm32f7xx_hal.o - .debug_ranges 0x00000948 0xe8 build/stm32f7xx_ll_rcc.o - .debug_ranges 0x00000a30 0x150 build/stm32f7xx_ll_gpio.o - .debug_ranges 0x00000b80 0x178 build/stm32f7xx_ll_sdmmc.o - .debug_ranges 0x00000cf8 0x158 build/stm32f7xx_hal_sd.o - .debug_ranges 0x00000e50 0x58 build/stm32f7xx_ll_spi.o - .debug_ranges 0x00000ea8 0x3d0 build/stm32f7xx_hal_tim.o - .debug_ranges 0x00001278 0x170 build/stm32f7xx_hal_tim_ex.o - .debug_ranges 0x000013e8 0x210 build/stm32f7xx_ll_tim.o - .debug_ranges 0x000015f8 0x110 build/stm32f7xx_ll_usart.o - .debug_ranges 0x00001708 0x18 build/system_stm32f7xx.o - .debug_ranges 0x00001720 0xa0 build/File_Handling.o - .debug_ranges 0x000017c0 0x38 build/diskio.o - .debug_ranges 0x000017f8 0x1f8 build/ff.o - .debug_ranges 0x000019f0 0x30 build/ff_gen_drv.o - .debug_ranges 0x00001a20 0x10 build/sysmem.o - .debug_ranges 0x00001a30 0x238 build/stm32f7xx_hal_uart.o - .debug_ranges 0x00001c68 0x20 build/startup_stm32f767xx.o +.debug_ranges 0x00000000 0x1c78 + .debug_ranges 0x00000000 0x2a8 build/main.o + .debug_ranges 0x000002a8 0x88 build/bsp_driver_sd.o + .debug_ranges 0x00000330 0x38 build/sd_diskio.o + .debug_ranges 0x00000368 0x18 build/fatfs.o + .debug_ranges 0x00000380 0x10 build/fatfs_platform.o + .debug_ranges 0x00000390 0xb0 build/stm32f7xx_it.o + .debug_ranges 0x00000440 0x58 build/stm32f7xx_hal_msp.o + .debug_ranges 0x00000498 0xd8 build/stm32f7xx_hal_adc.o + .debug_ranges 0x00000570 0x80 build/stm32f7xx_hal_adc_ex.o + .debug_ranges 0x000005f0 0x78 build/stm32f7xx_hal_rcc.o + .debug_ranges 0x00000668 0x40 build/stm32f7xx_hal_rcc_ex.o + .debug_ranges 0x000006a8 0x48 build/stm32f7xx_hal_gpio.o + .debug_ranges 0x000006f0 0x70 build/stm32f7xx_hal_pwr_ex.o + .debug_ranges 0x00000760 0xd8 build/stm32f7xx_hal_cortex.o + .debug_ranges 0x00000838 0x100 build/stm32f7xx_hal.o + .debug_ranges 0x00000938 0xe8 build/stm32f7xx_ll_rcc.o + .debug_ranges 0x00000a20 0x150 build/stm32f7xx_ll_gpio.o + .debug_ranges 0x00000b70 0x178 build/stm32f7xx_ll_sdmmc.o + .debug_ranges 0x00000ce8 0x158 build/stm32f7xx_hal_sd.o + .debug_ranges 0x00000e40 0x58 build/stm32f7xx_ll_spi.o + .debug_ranges 0x00000e98 0x3d0 build/stm32f7xx_hal_tim.o + .debug_ranges 0x00001268 0x170 build/stm32f7xx_hal_tim_ex.o + .debug_ranges 0x000013d8 0x210 build/stm32f7xx_ll_tim.o + .debug_ranges 0x000015e8 0x110 build/stm32f7xx_ll_usart.o + .debug_ranges 0x000016f8 0x18 build/system_stm32f7xx.o + .debug_ranges 0x00001710 0xa0 build/File_Handling.o + .debug_ranges 0x000017b0 0x38 build/diskio.o + .debug_ranges 0x000017e8 0x1f8 build/ff.o + .debug_ranges 0x000019e0 0x30 build/ff_gen_drv.o + .debug_ranges 0x00001a10 0x10 build/sysmem.o + .debug_ranges 0x00001a20 0x238 build/stm32f7xx_hal_uart.o + .debug_ranges 0x00001c58 0x20 build/startup_stm32f767xx.o -.debug_line 0x00000000 0x244a7 - .debug_line 0x00000000 0x41db build/main.o - .debug_line 0x000041db 0x39e build/bsp_driver_sd.o - .debug_line 0x00004579 0x2f2 build/sd_diskio.o - .debug_line 0x0000486b 0x170 build/fatfs.o - .debug_line 0x000049db 0x111 build/fatfs_platform.o - .debug_line 0x00004aec 0x9b9 build/stm32f7xx_it.o - .debug_line 0x000054a5 0x66d build/stm32f7xx_hal_msp.o - .debug_line 0x00005b12 0xfc7 build/stm32f7xx_hal_adc.o - .debug_line 0x00006ad9 0xb34 build/stm32f7xx_hal_adc_ex.o - .debug_line 0x0000760d 0xd15 build/stm32f7xx_hal_rcc.o - .debug_line 0x00008322 0xbd9 build/stm32f7xx_hal_rcc_ex.o - .debug_line 0x00008efb 0x6aa build/stm32f7xx_hal_gpio.o - .debug_line 0x000095a5 0x52c build/stm32f7xx_hal_pwr_ex.o - .debug_line 0x00009ad1 0x77a build/stm32f7xx_hal_cortex.o - .debug_line 0x0000a24b 0x548 build/stm32f7xx_hal.o - .debug_line 0x0000a793 0x1721 build/stm32f7xx_ll_rcc.o - .debug_line 0x0000beb4 0x76d build/stm32f7xx_ll_gpio.o - .debug_line 0x0000c621 0x104d build/stm32f7xx_ll_sdmmc.o - .debug_line 0x0000d66e 0x263f build/stm32f7xx_hal_sd.o - .debug_line 0x0000fcad 0x56b build/stm32f7xx_ll_spi.o - .debug_line 0x00010218 0x4839 build/stm32f7xx_hal_tim.o - .debug_line 0x00014a51 0x1bb4 build/stm32f7xx_hal_tim_ex.o - .debug_line 0x00016605 0xe26 build/stm32f7xx_ll_tim.o - .debug_line 0x0001742b 0x62f build/stm32f7xx_ll_usart.o - .debug_line 0x00017a5a 0x1c2 build/system_stm32f7xx.o - .debug_line 0x00017c1c 0xa76 build/File_Handling.o - .debug_line 0x00018692 0x217 build/diskio.o - .debug_line 0x000188a9 0x42e1 build/ff.o - .debug_line 0x0001cb8a 0x25a build/ff_gen_drv.o - .debug_line 0x0001cde4 0xf8 build/sysmem.o - .debug_line 0x0001cedc 0x3f43 build/stm32f7xx_hal_uart.o - .debug_line 0x00020e1f 0x73 build/startup_stm32f767xx.o - .debug_line 0x00020e92 0x224 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) - .debug_line 0x000210b6 0xe7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) - .debug_line 0x0002119d 0x854 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) - .debug_line 0x000219f1 0x11e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) - .debug_line 0x00021b0f 0x1b6 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) - .debug_line 0x00021cc5 0x10c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) - .debug_line 0x00021dd1 0x446 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) - .debug_line 0x00022217 0x2c3 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) - .debug_line 0x000224da 0x1f1 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) - .debug_line 0x000226cb 0x84 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) - .debug_line 0x0002274f 0xb9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) - .debug_line 0x00022808 0x16b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) - .debug_line 0x00022973 0x1f8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) - .debug_line 0x00022b6b 0x75d /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - .debug_line 0x000232c8 0x153 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) - .debug_line 0x0002341b 0x193 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) - .debug_line 0x000235ae 0x176 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) - .debug_line 0x00023724 0x4fc /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) - .debug_line 0x00023c20 0x27b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) - .debug_line 0x00023e9b 0x4e /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) - .debug_line 0x00023ee9 0x574 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) - .debug_line 0x0002445d 0x4a /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) +.debug_line 0x00000000 0x24ab1 + .debug_line 0x00000000 0x46e8 build/main.o + .debug_line 0x000046e8 0x39e build/bsp_driver_sd.o + .debug_line 0x00004a86 0x2f2 build/sd_diskio.o + .debug_line 0x00004d78 0x170 build/fatfs.o + .debug_line 0x00004ee8 0x111 build/fatfs_platform.o + .debug_line 0x00004ff9 0xa58 build/stm32f7xx_it.o + .debug_line 0x00005a51 0x6cb build/stm32f7xx_hal_msp.o + .debug_line 0x0000611c 0xfc7 build/stm32f7xx_hal_adc.o + .debug_line 0x000070e3 0xb34 build/stm32f7xx_hal_adc_ex.o + .debug_line 0x00007c17 0xd15 build/stm32f7xx_hal_rcc.o + .debug_line 0x0000892c 0xbd9 build/stm32f7xx_hal_rcc_ex.o + .debug_line 0x00009505 0x6aa build/stm32f7xx_hal_gpio.o + .debug_line 0x00009baf 0x52c build/stm32f7xx_hal_pwr_ex.o + .debug_line 0x0000a0db 0x77a build/stm32f7xx_hal_cortex.o + .debug_line 0x0000a855 0x548 build/stm32f7xx_hal.o + .debug_line 0x0000ad9d 0x1721 build/stm32f7xx_ll_rcc.o + .debug_line 0x0000c4be 0x76d build/stm32f7xx_ll_gpio.o + .debug_line 0x0000cc2b 0x104d build/stm32f7xx_ll_sdmmc.o + .debug_line 0x0000dc78 0x263f build/stm32f7xx_hal_sd.o + .debug_line 0x000102b7 0x56b build/stm32f7xx_ll_spi.o + .debug_line 0x00010822 0x4839 build/stm32f7xx_hal_tim.o + .debug_line 0x0001505b 0x1bb4 build/stm32f7xx_hal_tim_ex.o + .debug_line 0x00016c0f 0xe26 build/stm32f7xx_ll_tim.o + .debug_line 0x00017a35 0x62f build/stm32f7xx_ll_usart.o + .debug_line 0x00018064 0x1c2 build/system_stm32f7xx.o + .debug_line 0x00018226 0xa76 build/File_Handling.o + .debug_line 0x00018c9c 0x217 build/diskio.o + .debug_line 0x00018eb3 0x42e1 build/ff.o + .debug_line 0x0001d194 0x25a build/ff_gen_drv.o + .debug_line 0x0001d3ee 0xf8 build/sysmem.o + .debug_line 0x0001d4e6 0x3f43 build/stm32f7xx_hal_uart.o + .debug_line 0x00021429 0x73 build/startup_stm32f767xx.o + .debug_line 0x0002149c 0x224 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + .debug_line 0x000216c0 0xe7 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) + .debug_line 0x000217a7 0x854 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + .debug_line 0x00021ffb 0x11e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + .debug_line 0x00022119 0x1b6 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + .debug_line 0x000222cf 0x10c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + .debug_line 0x000223db 0x446 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + .debug_line 0x00022821 0x2c3 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + .debug_line 0x00022ae4 0x1f1 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + .debug_line 0x00022cd5 0x84 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + .debug_line 0x00022d59 0xb9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + .debug_line 0x00022e12 0x16b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + .debug_line 0x00022f7d 0x1f8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + .debug_line 0x00023175 0x75d /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + .debug_line 0x000238d2 0x153 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + .debug_line 0x00023a25 0x193 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + .debug_line 0x00023bb8 0x176 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + .debug_line 0x00023d2e 0x4fc /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + .debug_line 0x0002422a 0x27b /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + .debug_line 0x000244a5 0x4e /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + .debug_line 0x000244f3 0x574 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + .debug_line 0x00024a67 0x4a /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) -.debug_str 0x00000000 0x9880 - .debug_str 0x00000000 0x9880 build/main.o - 0x2ec1 (size before relaxing) - .debug_str 0x00009880 0x8f5 build/bsp_driver_sd.o - .debug_str 0x00009880 0x3d0 build/sd_diskio.o - .debug_str 0x00009880 0x3c8 build/fatfs.o - .debug_str 0x00009880 0x23d build/fatfs_platform.o - .debug_str 0x00009880 0xea9 build/stm32f7xx_it.o - .debug_str 0x00009880 0x194d build/stm32f7xx_hal_msp.o - .debug_str 0x00009880 0x93c build/stm32f7xx_hal_adc.o - .debug_str 0x00009880 0x990 build/stm32f7xx_hal_adc_ex.o - .debug_str 0x00009880 0x714 build/stm32f7xx_hal_rcc.o - .debug_str 0x00009880 0x72c build/stm32f7xx_hal_rcc_ex.o - .debug_str 0x00009880 0x4e5 build/stm32f7xx_hal_gpio.o - .debug_str 0x00009880 0x63f build/stm32f7xx_hal_pwr_ex.o - .debug_str 0x00009880 0xe66 build/stm32f7xx_hal_cortex.o - .debug_str 0x00009880 0xd38 build/stm32f7xx_hal.o - .debug_str 0x00009880 0xbce build/stm32f7xx_ll_rcc.o - .debug_str 0x00009880 0x499 build/stm32f7xx_ll_gpio.o - .debug_str 0x00009880 0x7ec build/stm32f7xx_ll_sdmmc.o - .debug_str 0x00009880 0x10c7 build/stm32f7xx_hal_sd.o - .debug_str 0x00009880 0x5bf build/stm32f7xx_ll_spi.o - .debug_str 0x00009880 0x1770 build/stm32f7xx_hal_tim.o - .debug_str 0x00009880 0x1076 build/stm32f7xx_hal_tim_ex.o - .debug_str 0x00009880 0x9cb build/stm32f7xx_ll_tim.o - .debug_str 0x00009880 0x5be build/stm32f7xx_ll_usart.o - .debug_str 0x00009880 0x449 build/system_stm32f7xx.o - .debug_str 0x00009880 0x61f build/File_Handling.o - .debug_str 0x00009880 0x2fd build/diskio.o - .debug_str 0x00009880 0x893 build/ff.o - .debug_str 0x00009880 0x34e build/ff_gen_drv.o - .debug_str 0x00009880 0x213 build/sysmem.o - .debug_str 0x00009880 0x1014 build/stm32f7xx_hal_uart.o - .debug_str 0x00009880 0x60 build/startup_stm32f767xx.o - .debug_str 0x00009880 0x4fe /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) - .debug_str 0x00009880 0x4bf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) - .debug_str 0x00009880 0x808 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) - .debug_str 0x00009880 0x1fd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) - .debug_str 0x00009880 0x1b0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) - .debug_str 0x00009880 0x4b9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) - .debug_str 0x00009880 0x5a0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) - .debug_str 0x00009880 0x53f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) - .debug_str 0x00009880 0x1cf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) - .debug_str 0x00009880 0x9e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) - .debug_str 0x00009880 0xac /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) - .debug_str 0x00009880 0x4e4 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) - .debug_str 0x00009880 0x535 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) - .debug_str 0x00009880 0x79e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - .debug_str 0x00009880 0x4dd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) - .debug_str 0x00009880 0x4c8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) - .debug_str 0x00009880 0x508 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) - .debug_str 0x00009880 0x6c2 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) - .debug_str 0x00009880 0x4de /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) - .debug_str 0x00009880 0xa3 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) - .debug_str 0x00009880 0x688 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) - .debug_str 0x00009880 0xc3 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) +.debug_str 0x00000000 0x9931 + .debug_str 0x00000000 0x9931 build/main.o + 0x3078 (size before relaxing) + .debug_str 0x00009931 0x8f5 build/bsp_driver_sd.o + .debug_str 0x00009931 0x3d0 build/sd_diskio.o + .debug_str 0x00009931 0x3c8 build/fatfs.o + .debug_str 0x00009931 0x23d build/fatfs_platform.o + .debug_str 0x00009931 0xea9 build/stm32f7xx_it.o + .debug_str 0x00009931 0x194d build/stm32f7xx_hal_msp.o + .debug_str 0x00009931 0x93c build/stm32f7xx_hal_adc.o + .debug_str 0x00009931 0x990 build/stm32f7xx_hal_adc_ex.o + .debug_str 0x00009931 0x714 build/stm32f7xx_hal_rcc.o + .debug_str 0x00009931 0x72c build/stm32f7xx_hal_rcc_ex.o + .debug_str 0x00009931 0x4e5 build/stm32f7xx_hal_gpio.o + .debug_str 0x00009931 0x63f build/stm32f7xx_hal_pwr_ex.o + .debug_str 0x00009931 0xe66 build/stm32f7xx_hal_cortex.o + .debug_str 0x00009931 0xd38 build/stm32f7xx_hal.o + .debug_str 0x00009931 0xbce build/stm32f7xx_ll_rcc.o + .debug_str 0x00009931 0x499 build/stm32f7xx_ll_gpio.o + .debug_str 0x00009931 0x7ec build/stm32f7xx_ll_sdmmc.o + .debug_str 0x00009931 0x10c7 build/stm32f7xx_hal_sd.o + .debug_str 0x00009931 0x5bf build/stm32f7xx_ll_spi.o + .debug_str 0x00009931 0x1770 build/stm32f7xx_hal_tim.o + .debug_str 0x00009931 0x1076 build/stm32f7xx_hal_tim_ex.o + .debug_str 0x00009931 0x9cb build/stm32f7xx_ll_tim.o + .debug_str 0x00009931 0x5be build/stm32f7xx_ll_usart.o + .debug_str 0x00009931 0x449 build/system_stm32f7xx.o + .debug_str 0x00009931 0x61f build/File_Handling.o + .debug_str 0x00009931 0x2fd build/diskio.o + .debug_str 0x00009931 0x893 build/ff.o + .debug_str 0x00009931 0x34e build/ff_gen_drv.o + .debug_str 0x00009931 0x213 build/sysmem.o + .debug_str 0x00009931 0x1014 build/stm32f7xx_hal_uart.o + .debug_str 0x00009931 0x60 build/startup_stm32f767xx.o + .debug_str 0x00009931 0x4fe /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + .debug_str 0x00009931 0x4bf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-impure.o) + .debug_str 0x00009931 0x808 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + .debug_str 0x00009931 0x1fd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + .debug_str 0x00009931 0x1b0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + .debug_str 0x00009931 0x4b9 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + .debug_str 0x00009931 0x5a0 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + .debug_str 0x00009931 0x53f /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + .debug_str 0x00009931 0x1cf /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + .debug_str 0x00009931 0x9e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memchr.o) + .debug_str 0x00009931 0xac /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memcpy.o) + .debug_str 0x00009931 0x4e4 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + .debug_str 0x00009931 0x535 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + .debug_str 0x00009931 0x79e /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + .debug_str 0x00009931 0x4dd /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + .debug_str 0x00009931 0x4c8 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + .debug_str 0x00009931 0x508 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + .debug_str 0x00009931 0x6c2 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + .debug_str 0x00009931 0x4de /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + .debug_str 0x00009931 0xa3 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + .debug_str 0x00009931 0x688 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) + .debug_str 0x00009931 0xc3 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_dvmd_tls.o) -.debug_frame 0x00000000 0x4e18 - .debug_frame 0x00000000 0x5e4 build/main.o - .debug_frame 0x000005e4 0x180 build/bsp_driver_sd.o - .debug_frame 0x00000764 0xac build/sd_diskio.o - .debug_frame 0x00000810 0x38 build/fatfs.o - .debug_frame 0x00000848 0x28 build/fatfs_platform.o - .debug_frame 0x00000870 0x1b4 build/stm32f7xx_it.o - .debug_frame 0x00000a24 0x138 build/stm32f7xx_hal_msp.o - .debug_frame 0x00000b5c 0x268 build/stm32f7xx_hal_adc.o - .debug_frame 0x00000dc4 0x18c build/stm32f7xx_hal_adc_ex.o - .debug_frame 0x00000f50 0x178 build/stm32f7xx_hal_rcc.o - .debug_frame 0x000010c8 0xc0 build/stm32f7xx_hal_rcc_ex.o - .debug_frame 0x00001188 0xd8 build/stm32f7xx_hal_gpio.o - .debug_frame 0x00001260 0x134 build/stm32f7xx_hal_pwr_ex.o - .debug_frame 0x00001394 0x1ec build/stm32f7xx_hal_cortex.o - .debug_frame 0x00001580 0x22c build/stm32f7xx_hal.o - .debug_frame 0x000017ac 0x250 build/stm32f7xx_ll_rcc.o - .debug_frame 0x000019fc 0xc8 build/stm32f7xx_ll_gpio.o - .debug_frame 0x00001ac4 0x4c8 build/stm32f7xx_ll_sdmmc.o - .debug_frame 0x00001f8c 0x4b8 build/stm32f7xx_hal_sd.o - .debug_frame 0x00002444 0xa8 build/stm32f7xx_ll_spi.o - .debug_frame 0x000024ec 0xb6c build/stm32f7xx_hal_tim.o - .debug_frame 0x00003058 0x478 build/stm32f7xx_hal_tim_ex.o - .debug_frame 0x000034d0 0x24c build/stm32f7xx_ll_tim.o - .debug_frame 0x0000371c 0x88 build/stm32f7xx_ll_usart.o - .debug_frame 0x000037a4 0x30 build/system_stm32f7xx.o - .debug_frame 0x000037d4 0x1e8 build/File_Handling.o - .debug_frame 0x000039bc 0xa0 build/diskio.o - .debug_frame 0x00003a5c 0x7bc build/ff.o - .debug_frame 0x00004218 0x7c build/ff_gen_drv.o - .debug_frame 0x00004294 0x28 build/sysmem.o - .debug_frame 0x000042bc 0x608 build/stm32f7xx_hal_uart.o - .debug_frame 0x000048c4 0x78 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) - .debug_frame 0x0000493c 0x98 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) - .debug_frame 0x000049d4 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) - .debug_frame 0x00004a00 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) - .debug_frame 0x00004a2c 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) - .debug_frame 0x00004a4c 0x50 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) - .debug_frame 0x00004a9c 0x58 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) - .debug_frame 0x00004af4 0x40 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) - .debug_frame 0x00004b34 0x30 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) - .debug_frame 0x00004b64 0x38 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) - .debug_frame 0x00004b9c 0x6c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) - .debug_frame 0x00004c08 0x30 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) - .debug_frame 0x00004c38 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) - .debug_frame 0x00004c64 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) - .debug_frame 0x00004c84 0xf4 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) - .debug_frame 0x00004d78 0x40 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) - .debug_frame 0x00004db8 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) - .debug_frame 0x00004de4 0x34 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) +.debug_frame 0x00000000 0x4ea4 + .debug_frame 0x00000000 0x670 build/main.o + .debug_frame 0x00000670 0x180 build/bsp_driver_sd.o + .debug_frame 0x000007f0 0xac build/sd_diskio.o + .debug_frame 0x0000089c 0x38 build/fatfs.o + .debug_frame 0x000008d4 0x28 build/fatfs_platform.o + .debug_frame 0x000008fc 0x1b4 build/stm32f7xx_it.o + .debug_frame 0x00000ab0 0x138 build/stm32f7xx_hal_msp.o + .debug_frame 0x00000be8 0x268 build/stm32f7xx_hal_adc.o + .debug_frame 0x00000e50 0x18c build/stm32f7xx_hal_adc_ex.o + .debug_frame 0x00000fdc 0x178 build/stm32f7xx_hal_rcc.o + .debug_frame 0x00001154 0xc0 build/stm32f7xx_hal_rcc_ex.o + .debug_frame 0x00001214 0xd8 build/stm32f7xx_hal_gpio.o + .debug_frame 0x000012ec 0x134 build/stm32f7xx_hal_pwr_ex.o + .debug_frame 0x00001420 0x1ec build/stm32f7xx_hal_cortex.o + .debug_frame 0x0000160c 0x22c build/stm32f7xx_hal.o + .debug_frame 0x00001838 0x250 build/stm32f7xx_ll_rcc.o + .debug_frame 0x00001a88 0xc8 build/stm32f7xx_ll_gpio.o + .debug_frame 0x00001b50 0x4c8 build/stm32f7xx_ll_sdmmc.o + .debug_frame 0x00002018 0x4b8 build/stm32f7xx_hal_sd.o + .debug_frame 0x000024d0 0xa8 build/stm32f7xx_ll_spi.o + .debug_frame 0x00002578 0xb6c build/stm32f7xx_hal_tim.o + .debug_frame 0x000030e4 0x478 build/stm32f7xx_hal_tim_ex.o + .debug_frame 0x0000355c 0x24c build/stm32f7xx_ll_tim.o + .debug_frame 0x000037a8 0x88 build/stm32f7xx_ll_usart.o + .debug_frame 0x00003830 0x30 build/system_stm32f7xx.o + .debug_frame 0x00003860 0x1e8 build/File_Handling.o + .debug_frame 0x00003a48 0xa0 build/diskio.o + .debug_frame 0x00003ae8 0x7bc build/ff.o + .debug_frame 0x000042a4 0x7c build/ff_gen_drv.o + .debug_frame 0x00004320 0x28 build/sysmem.o + .debug_frame 0x00004348 0x608 build/stm32f7xx_hal_uart.o + .debug_frame 0x00004950 0x78 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sprintf.o) + .debug_frame 0x000049c8 0x98 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-svfprintf.o) + .debug_frame 0x00004a60 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-init.o) + .debug_frame 0x00004a8c 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memset.o) + .debug_frame 0x00004ab8 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-errno.o) + .debug_frame 0x00004ad8 0x50 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mallocr.o) + .debug_frame 0x00004b28 0x58 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-freer.o) + .debug_frame 0x00004b80 0x40 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-memmove.o) + .debug_frame 0x00004bc0 0x30 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-malloc.o) + .debug_frame 0x00004bf0 0x38 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reallocr.o) + .debug_frame 0x00004c28 0x6c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-nano-vfprintf_i.o) + .debug_frame 0x00004c94 0x30 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-mlock.o) + .debug_frame 0x00004cc4 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-sbrkr.o) + .debug_frame 0x00004cf0 0x20 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-msizer.o) + .debug_frame 0x00004d10 0xf4 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-findfp.o) + .debug_frame 0x00004e04 0x40 /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/libc_nano.a(libc_a-reent.o) + .debug_frame 0x00004e44 0x2c /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_aeabi_uldivmod.o) + .debug_frame 0x00004e70 0x34 /usr/lib/gcc/arm-none-eabi/13.2.1/thumb/v7e-m+dp/hard/libgcc.a(_udivmoddi4.o) .debug_loclists 0x00000000 0x2087 @@ -4214,6 +4229,7 @@ HAL_DMA_UnRegisterCallback build/stm32f7xx_hal_dma.o HAL_DeInit build/stm32f7xx_hal.o HAL_Delay build/stm32f7xx_hal.o build/stm32f7xx_hal_sd.o + build/main.o HAL_DisableCompensationCell build/stm32f7xx_hal.o HAL_DisableFMCMemorySwapping build/stm32f7xx_hal.o HAL_DisableMemorySwappingBank build/stm32f7xx_hal.o @@ -4485,6 +4501,7 @@ HAL_TIMEx_CommutCallback build/stm32f7xx_hal_tim_ex.o build/stm32f7xx_hal_tim.o HAL_TIMEx_CommutHalfCpltCallback build/stm32f7xx_hal_tim_ex.o HAL_TIMEx_ConfigBreakDeadTime build/stm32f7xx_hal_tim_ex.o + build/main.o HAL_TIMEx_ConfigBreakInput build/stm32f7xx_hal_tim_ex.o HAL_TIMEx_ConfigCommutEvent build/stm32f7xx_hal_tim_ex.o HAL_TIMEx_ConfigCommutEvent_DMA build/stm32f7xx_hal_tim_ex.o @@ -5262,6 +5279,7 @@ hadc3 build/main.o hardware_init_hook /usr/lib/gcc/arm-none-eabi/13.2.1/../../../arm-none-eabi/lib/thumb/v7e-m+dp/hard/crt0.o hsd1 build/main.o build/bsp_driver_sd.o +htim1 build/main.o htim10 build/main.o build/stm32f7xx_it.o htim11 build/main.o diff --git a/build/diskio.lst b/build/diskio.lst index df2d7cd..4ed3ed0 100644 --- a/build/diskio.lst +++ b/build/diskio.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/cckyLcZT.s page 1 +ARM GAS /tmp/ccdXV1P2.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 28:Middlewares/Third_Party/FatFs/src/diskio.c **** /* Private function prototypes -----------------------------------------------*/ 29:Middlewares/Third_Party/FatFs/src/diskio.c **** /* Private functions ---------------------------------------------------------*/ 30:Middlewares/Third_Party/FatFs/src/diskio.c **** - ARM GAS /tmp/cckyLcZT.s page 2 + ARM GAS /tmp/ccdXV1P2.s page 2 31:Middlewares/Third_Party/FatFs/src/diskio.c **** /** @@ -118,7 +118,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 71 disk_initialize: 72 .LVL3: 73 .LFB1184: - ARM GAS /tmp/cckyLcZT.s page 3 + ARM GAS /tmp/ccdXV1P2.s page 3 45:Middlewares/Third_Party/FatFs/src/diskio.c **** @@ -178,7 +178,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 62:Middlewares/Third_Party/FatFs/src/diskio.c **** return stat; 111 .loc 1 62 3 is_stmt 1 view .LVU23 63:Middlewares/Third_Party/FatFs/src/diskio.c **** } - ARM GAS /tmp/cckyLcZT.s page 4 + ARM GAS /tmp/ccdXV1P2.s page 4 112 .loc 1 63 1 is_stmt 0 view .LVU24 @@ -238,7 +238,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 80:Middlewares/Third_Party/FatFs/src/diskio.c **** DRESULT res; 150 .loc 1 80 3 is_stmt 1 view .LVU29 81:Middlewares/Third_Party/FatFs/src/diskio.c **** - ARM GAS /tmp/cckyLcZT.s page 5 + ARM GAS /tmp/ccdXV1P2.s page 5 82:Middlewares/Third_Party/FatFs/src/diskio.c **** res = disk.drv[pdrv]->disk_read(disk.lun[pdrv], buff, sector, count); @@ -298,7 +298,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 187 @ args = 0, pretend = 0, frame = 0 188 @ frame_needed = 0, uses_anonymous_args = 0 189 .loc 1 101 1 is_stmt 0 view .LVU38 - ARM GAS /tmp/cckyLcZT.s page 6 + ARM GAS /tmp/ccdXV1P2.s page 6 190 0000 38B5 push {r3, r4, r5, lr} @@ -358,7 +358,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 116:Middlewares/Third_Party/FatFs/src/diskio.c **** #if _USE_IOCTL == 1 117:Middlewares/Third_Party/FatFs/src/diskio.c **** DRESULT disk_ioctl ( 118:Middlewares/Third_Party/FatFs/src/diskio.c **** BYTE pdrv, /* Physical drive nmuber (0..) */ - ARM GAS /tmp/cckyLcZT.s page 7 + ARM GAS /tmp/ccdXV1P2.s page 7 119:Middlewares/Third_Party/FatFs/src/diskio.c **** BYTE cmd, /* Control code */ @@ -418,7 +418,7 @@ ARM GAS /tmp/cckyLcZT.s page 1 131:Middlewares/Third_Party/FatFs/src/diskio.c **** * @brief Gets Time from RTC 132:Middlewares/Third_Party/FatFs/src/diskio.c **** * @param None 133:Middlewares/Third_Party/FatFs/src/diskio.c **** * @retval Time in DWORD - ARM GAS /tmp/cckyLcZT.s page 8 + ARM GAS /tmp/ccdXV1P2.s page 8 134:Middlewares/Third_Party/FatFs/src/diskio.c **** */ @@ -446,28 +446,28 @@ ARM GAS /tmp/cckyLcZT.s page 1 294 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" 295 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" 296 .file 8 "Middlewares/Third_Party/FatFs/src/ff_gen_drv.h" - ARM GAS /tmp/cckyLcZT.s page 9 + ARM GAS /tmp/ccdXV1P2.s page 9 DEFINED SYMBOLS *ABS*:00000000 diskio.c - /tmp/cckyLcZT.s:20 .text.disk_status:00000000 $t - /tmp/cckyLcZT.s:26 .text.disk_status:00000000 disk_status - /tmp/cckyLcZT.s:60 .text.disk_status:00000014 $d - /tmp/cckyLcZT.s:65 .text.disk_initialize:00000000 $t - /tmp/cckyLcZT.s:71 .text.disk_initialize:00000000 disk_initialize - /tmp/cckyLcZT.s:124 .text.disk_initialize:00000024 $d - /tmp/cckyLcZT.s:129 .text.disk_read:00000000 $t - /tmp/cckyLcZT.s:135 .text.disk_read:00000000 disk_read - /tmp/cckyLcZT.s:171 .text.disk_read:00000014 $d - /tmp/cckyLcZT.s:176 .text.disk_write:00000000 $t - /tmp/cckyLcZT.s:182 .text.disk_write:00000000 disk_write - /tmp/cckyLcZT.s:218 .text.disk_write:00000014 $d - /tmp/cckyLcZT.s:223 .text.disk_ioctl:00000000 $t - /tmp/cckyLcZT.s:229 .text.disk_ioctl:00000000 disk_ioctl - /tmp/cckyLcZT.s:263 .text.disk_ioctl:00000014 $d - /tmp/cckyLcZT.s:268 .text.get_fattime:00000000 $t - /tmp/cckyLcZT.s:274 .text.get_fattime:00000000 get_fattime + /tmp/ccdXV1P2.s:20 .text.disk_status:00000000 $t + /tmp/ccdXV1P2.s:26 .text.disk_status:00000000 disk_status + /tmp/ccdXV1P2.s:60 .text.disk_status:00000014 $d + /tmp/ccdXV1P2.s:65 .text.disk_initialize:00000000 $t + /tmp/ccdXV1P2.s:71 .text.disk_initialize:00000000 disk_initialize + /tmp/ccdXV1P2.s:124 .text.disk_initialize:00000024 $d + /tmp/ccdXV1P2.s:129 .text.disk_read:00000000 $t + /tmp/ccdXV1P2.s:135 .text.disk_read:00000000 disk_read + /tmp/ccdXV1P2.s:171 .text.disk_read:00000014 $d + /tmp/ccdXV1P2.s:176 .text.disk_write:00000000 $t + /tmp/ccdXV1P2.s:182 .text.disk_write:00000000 disk_write + /tmp/ccdXV1P2.s:218 .text.disk_write:00000014 $d + /tmp/ccdXV1P2.s:223 .text.disk_ioctl:00000000 $t + /tmp/ccdXV1P2.s:229 .text.disk_ioctl:00000000 disk_ioctl + /tmp/ccdXV1P2.s:263 .text.disk_ioctl:00000014 $d + /tmp/ccdXV1P2.s:268 .text.get_fattime:00000000 $t + /tmp/ccdXV1P2.s:274 .text.get_fattime:00000000 get_fattime UNDEFINED SYMBOLS disk diff --git a/build/fatfs.lst b/build/fatfs.lst index 510b14b..c2e0b27 100644 --- a/build/fatfs.lst +++ b/build/fatfs.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccFLcHcr.s page 1 +ARM GAS /tmp/ccXTUOPr.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccFLcHcr.s page 1 29:Src/fatfs.c **** 30:Src/fatfs.c **** void MX_FATFS_Init(void) 31:Src/fatfs.c **** { - ARM GAS /tmp/ccFLcHcr.s page 2 + ARM GAS /tmp/ccXTUOPr.s page 2 28 .loc 1 31 1 view -0 @@ -118,7 +118,7 @@ ARM GAS /tmp/ccFLcHcr.s page 1 69 @ frame_needed = 0, uses_anonymous_args = 0 70 @ link register save eliminated. 47:Src/fatfs.c **** /* USER CODE BEGIN get_fattime */ - ARM GAS /tmp/ccFLcHcr.s page 3 + ARM GAS /tmp/ccXTUOPr.s page 3 48:Src/fatfs.c **** return 0; @@ -169,24 +169,24 @@ ARM GAS /tmp/ccFLcHcr.s page 1 114 .file 9 "Middlewares/Third_Party/FatFs/src/ff_gen_drv.h" 115 .file 10 "Inc/sd_diskio.h" 116 .file 11 "Inc/fatfs.h" - ARM GAS /tmp/ccFLcHcr.s page 4 + ARM GAS /tmp/ccXTUOPr.s page 4 DEFINED SYMBOLS *ABS*:00000000 fatfs.c - /tmp/ccFLcHcr.s:20 .text.MX_FATFS_Init:00000000 $t - /tmp/ccFLcHcr.s:26 .text.MX_FATFS_Init:00000000 MX_FATFS_Init - /tmp/ccFLcHcr.s:51 .text.MX_FATFS_Init:00000010 $d - /tmp/ccFLcHcr.s:97 .bss.SDPath:00000000 SDPath - /tmp/ccFLcHcr.s:103 .bss.retSD:00000000 retSD - /tmp/ccFLcHcr.s:58 .text.get_fattime:00000000 $t - /tmp/ccFLcHcr.s:64 .text.get_fattime:00000000 get_fattime - /tmp/ccFLcHcr.s:83 .bss.SDFile:00000000 SDFile - /tmp/ccFLcHcr.s:80 .bss.SDFile:00000000 $d - /tmp/ccFLcHcr.s:90 .bss.SDFatFS:00000000 SDFatFS - /tmp/ccFLcHcr.s:87 .bss.SDFatFS:00000000 $d - /tmp/ccFLcHcr.s:94 .bss.SDPath:00000000 $d - /tmp/ccFLcHcr.s:104 .bss.retSD:00000000 $d + /tmp/ccXTUOPr.s:20 .text.MX_FATFS_Init:00000000 $t + /tmp/ccXTUOPr.s:26 .text.MX_FATFS_Init:00000000 MX_FATFS_Init + /tmp/ccXTUOPr.s:51 .text.MX_FATFS_Init:00000010 $d + /tmp/ccXTUOPr.s:97 .bss.SDPath:00000000 SDPath + /tmp/ccXTUOPr.s:103 .bss.retSD:00000000 retSD + /tmp/ccXTUOPr.s:58 .text.get_fattime:00000000 $t + /tmp/ccXTUOPr.s:64 .text.get_fattime:00000000 get_fattime + /tmp/ccXTUOPr.s:83 .bss.SDFile:00000000 SDFile + /tmp/ccXTUOPr.s:80 .bss.SDFile:00000000 $d + /tmp/ccXTUOPr.s:90 .bss.SDFatFS:00000000 SDFatFS + /tmp/ccXTUOPr.s:87 .bss.SDFatFS:00000000 $d + /tmp/ccXTUOPr.s:94 .bss.SDPath:00000000 $d + /tmp/ccXTUOPr.s:104 .bss.retSD:00000000 $d UNDEFINED SYMBOLS FATFS_LinkDriver diff --git a/build/ff.lst b/build/ff.lst index ba7d1fd..b18a9b2 100644 --- a/build/ff.lst +++ b/build/ff.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccH7dUYB.s page 1 +ARM GAS /tmp/cczbjqIl.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 29:Middlewares/Third_Party/FatFs/src/ff.c **** ---------------------------------------------------------------------------*/ 30:Middlewares/Third_Party/FatFs/src/ff.c **** 31:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FATFS != 68300 /* Revision ID */ - ARM GAS /tmp/ccH7dUYB.s page 2 + ARM GAS /tmp/cczbjqIl.s page 2 32:Middlewares/Third_Party/FatFs/src/ff.c **** #error Wrong include file (ff.h). @@ -118,7 +118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 86:Middlewares/Third_Party/FatFs/src/ff.c **** #define _DF1S 0 87:Middlewares/Third_Party/FatFs/src/ff.c **** #define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F, \ 88:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \ - ARM GAS /tmp/ccH7dUYB.s page 3 + ARM GAS /tmp/cczbjqIl.s page 3 89:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF, \ @@ -178,7 +178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 143:Middlewares/Third_Party/FatFs/src/ff.c **** 0x90,0x91,0x91,0xE2,0x99,0x95,0x95,0x97,0x97,0x99,0x9A,0x9B,0x9B,0x9D,0x9E,0xAC, \ 144:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB5,0xD6,0xE0,0xE9,0xA4,0xA4,0xA6,0xA6,0xA8,0xA8,0xAA,0x8D,0xAC,0xB8,0xAE,0xAF, \ 145:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBD,0xBF, \ - ARM GAS /tmp/ccH7dUYB.s page 4 + ARM GAS /tmp/cczbjqIl.s page 4 146:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC6,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \ @@ -238,7 +238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 200:Middlewares/Third_Party/FatFs/src/ff.c **** 0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \ 201:Middlewares/Third_Party/FatFs/src/ff.c **** 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF, \ 202:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \ - ARM GAS /tmp/ccH7dUYB.s page 5 + ARM GAS /tmp/cczbjqIl.s page 5 203:Middlewares/Third_Party/FatFs/src/ff.c **** 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF, \ @@ -298,7 +298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 257:Middlewares/Third_Party/FatFs/src/ff.c **** 0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xA4,0xA5,0xA6,0xD9,0xDA,0xDB,0xDC,0xA7,0xA8,0xDF, \ 258:Middlewares/Third_Party/FatFs/src/ff.c **** 0xA9,0xAA,0xAC,0xAD,0xB5,0xB6,0xB7,0xB8,0xBD,0xBE,0xC6,0xC7,0xCF,0xCF,0xD0,0xEF, \ 259:Middlewares/Third_Party/FatFs/src/ff.c **** 0xF0,0xF1,0xD1,0xD2,0xD3,0xF5,0xD4,0xF7,0xF8,0xF9,0xD5,0x96,0x95,0x98,0xFE,0xFF} - ARM GAS /tmp/ccH7dUYB.s page 6 + ARM GAS /tmp/cczbjqIl.s page 6 260:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -358,7 +358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 314:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LOSS 0x01 /* Out of 8.3 format */ 315:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LFN 0x02 /* Force to create LFN entry */ 316:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_LAST 0x04 /* Last segment */ - ARM GAS /tmp/ccH7dUYB.s page 7 + ARM GAS /tmp/cczbjqIl.s page 7 317:Middlewares/Third_Party/FatFs/src/ff.c **** #define NS_BODY 0x08 /* Lower case flag (body) */ @@ -418,7 +418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 371:Middlewares/Third_Party/FatFs/src/ff.c **** #define BS_BootCode32 90 /* FAT32: Boot code (420-byte) */ 372:Middlewares/Third_Party/FatFs/src/ff.c **** 373:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_ZeroedEx 11 /* exFAT: MBZ field (53-byte) */ - ARM GAS /tmp/ccH7dUYB.s page 8 + ARM GAS /tmp/cczbjqIl.s page 8 374:Middlewares/Third_Party/FatFs/src/ff.c **** #define BPB_VolOfsEx 64 /* exFAT: Volume offset from top of the drive [sector] (QWORD) */ @@ -478,7 +478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 428:Middlewares/Third_Party/FatFs/src/ff.c **** #define XDIR_FileSize 56 /* exFAT: File/Directory size (QWORD) */ 429:Middlewares/Third_Party/FatFs/src/ff.c **** 430:Middlewares/Third_Party/FatFs/src/ff.c **** #define SZDIRE 32 /* Size of a directory entry */ - ARM GAS /tmp/ccH7dUYB.s page 9 + ARM GAS /tmp/cczbjqIl.s page 9 431:Middlewares/Third_Party/FatFs/src/ff.c **** #define DDEM 0xE5 /* Deleted directory entry mark set to DIR_Name[0] */ @@ -538,7 +538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 485:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS == _MIN_SS 486:Middlewares/Third_Party/FatFs/src/ff.c **** #define SS(fs) ((UINT)_MAX_SS) /* Fixed sector size */ 487:Middlewares/Third_Party/FatFs/src/ff.c **** #else - ARM GAS /tmp/ccH7dUYB.s page 10 + ARM GAS /tmp/cczbjqIl.s page 10 488:Middlewares/Third_Party/FatFs/src/ff.c **** #define SS(fs) ((fs)->ssize) /* Variable sector size */ @@ -598,7 +598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 542:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 543:Middlewares/Third_Party/FatFs/src/ff.c **** 544:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 0 /* Non-LFN configuration */ - ARM GAS /tmp/ccH7dUYB.s page 11 + ARM GAS /tmp/cczbjqIl.s page 11 545:Middlewares/Third_Party/FatFs/src/ff.c **** #define DEF_NAMBUF @@ -658,7 +658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 599:Middlewares/Third_Party/FatFs/src/ff.c **** 600:Middlewares/Third_Party/FatFs/src/ff.c **** 601:Middlewares/Third_Party/FatFs/src/ff.c **** /*-------------------------------------------------------------------------- - ARM GAS /tmp/ccH7dUYB.s page 12 + ARM GAS /tmp/cczbjqIl.s page 12 602:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -718,7 +718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 61 .cfi_startproc 62 @ args = 0, pretend = 0, frame = 0 63 @ frame_needed = 0, uses_anonymous_args = 0 - ARM GAS /tmp/ccH7dUYB.s page 13 + ARM GAS /tmp/cczbjqIl.s page 13 64 @ link register save eliminated. @@ -778,7 +778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 641:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[6]; 642:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[5]; 643:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[4]; - ARM GAS /tmp/ccH7dUYB.s page 14 + ARM GAS /tmp/cczbjqIl.s page 14 644:Middlewares/Third_Party/FatFs/src/ff.c **** rv = rv << 8 | ptr[3]; @@ -838,7 +838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 140 0000 0170 strb r1, [r0] 141 .loc 1 663 22 is_stmt 1 view .LVU35 142 .LVL13: - ARM GAS /tmp/ccH7dUYB.s page 15 + ARM GAS /tmp/cczbjqIl.s page 15 664:Middlewares/Third_Party/FatFs/src/ff.c **** *ptr++ = (BYTE)val; val >>= 8; @@ -898,7 +898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 686:Middlewares/Third_Party/FatFs/src/ff.c **** 687:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ 688:Middlewares/Third_Party/FatFs/src/ff.c **** /* String functions */ - ARM GAS /tmp/ccH7dUYB.s page 16 + ARM GAS /tmp/cczbjqIl.s page 16 689:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ @@ -958,7 +958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 219 mem_set: 220 .LFB1188: 703:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 17 + ARM GAS /tmp/cczbjqIl.s page 17 704:Middlewares/Third_Party/FatFs/src/ff.c **** /* Fill memory block */ @@ -1018,7 +1018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 718:Middlewares/Third_Party/FatFs/src/ff.c **** int r = 0; 263 .loc 1 718 2 view .LVU72 264 .L12: - ARM GAS /tmp/ccH7dUYB.s page 18 + ARM GAS /tmp/cczbjqIl.s page 18 719:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -1078,7 +1078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 309 .loc 1 730 2 is_stmt 1 view .LVU85 310 .loc 1 730 8 is_stmt 0 view .LVU86 311 0002 00E0 b .L14 - ARM GAS /tmp/ccH7dUYB.s page 19 + ARM GAS /tmp/cczbjqIl.s page 19 312 .LVL33: @@ -1138,7 +1138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 756:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs && res != FR_NOT_ENABLED && res != FR_INVALID_DRIVE && res != FR_TIMEOUT) { 757:Middlewares/Third_Party/FatFs/src/ff.c **** ff_rel_grant(fs->sobj); 758:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 20 + ARM GAS /tmp/cczbjqIl.s page 20 759:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -1198,7 +1198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 369 000e 0133 adds r3, r3, #1 370 .LVL39: 371 .L18: - ARM GAS /tmp/ccH7dUYB.s page 21 + ARM GAS /tmp/cczbjqIl.s page 21 779:Middlewares/Third_Party/FatFs/src/ff.c **** if (Files[i].fs) { /* Existing entry */ @@ -1258,7 +1258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 410 0040 022B cmp r3, #2 411 0042 0BD0 beq .L30 789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec - ARM GAS /tmp/ccH7dUYB.s page 22 + ARM GAS /tmp/cczbjqIl.s page 22 790:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -1318,7 +1318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 455 .loc 1 789 35 discriminator 2 view .LVU131 456 006c 1220 movs r0, #18 457 .LVL46: - ARM GAS /tmp/ccH7dUYB.s page 23 + ARM GAS /tmp/cczbjqIl.s page 23 789:Middlewares/Third_Party/FatFs/src/ff.c **** return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new objec @@ -1378,7 +1378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 501 .LVL52: 502 .L37: 503 .loc 1 802 44 is_stmt 1 discriminator 4 view .LVU142 - ARM GAS /tmp/ccH7dUYB.s page 24 + ARM GAS /tmp/cczbjqIl.s page 24 504 0004 0130 adds r0, r0, #1 @@ -1438,7 +1438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 550 0000 70B4 push {r4, r5, r6} 551 .LCFI3: 552 .cfi_def_cfa_offset 12 - ARM GAS /tmp/ccH7dUYB.s page 25 + ARM GAS /tmp/cczbjqIl.s page 25 553 .cfi_offset 4, -12 @@ -1498,7 +1498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 598 0030 9442 cmp r4, r2 599 0032 E8D1 bne .L42 600 .L43: - ARM GAS /tmp/ccH7dUYB.s page 26 + ARM GAS /tmp/cczbjqIl.s page 26 820:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -1558,7 +1558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 636 .LVL63: 823:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ; 637 .loc 1 823 45 is_stmt 0 discriminator 4 view .LVU180 - ARM GAS /tmp/ccH7dUYB.s page 27 + ARM GAS /tmp/cczbjqIl.s page 27 638 005a F7E7 b .L45 @@ -1618,7 +1618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 680 0088 01EB0311 add r1, r1, r3, lsl #4 681 008c 8A81 strh r2, [r1, #12] @ movhi 834:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 28 + ARM GAS /tmp/cczbjqIl.s page 28 835:Middlewares/Third_Party/FatFs/src/ff.c **** return i + 1; @@ -1678,7 +1678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 726 @ args = 0, pretend = 0, frame = 0 727 @ frame_needed = 0, uses_anonymous_args = 0 728 @ link register save eliminated. - ARM GAS /tmp/ccH7dUYB.s page 29 + ARM GAS /tmp/cczbjqIl.s page 29 844:Middlewares/Third_Party/FatFs/src/ff.c **** WORD n; @@ -1738,7 +1738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 772 0026 33B9 cbnz r3, .L65 773 .L62: 774 .LVL74: - ARM GAS /tmp/ccH7dUYB.s page 30 + ARM GAS /tmp/cczbjqIl.s page 30 775 .loc 1 853 15 is_stmt 1 discriminator 1 view .LVU224 @@ -1798,7 +1798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 817 @ args = 0, pretend = 0, frame = 0 818 @ frame_needed = 0, uses_anonymous_args = 0 819 @ link register save eliminated. - ARM GAS /tmp/ccH7dUYB.s page 31 + ARM GAS /tmp/cczbjqIl.s page 31 867:Middlewares/Third_Party/FatFs/src/ff.c **** UINT i; @@ -1858,7 +1858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 860 .loc 1 870 38 is_stmt 0 discriminator 1 view .LVU245 861 001c 1A01 lsls r2, r3, #4 862 001e 0024 movs r4, #0 - ARM GAS /tmp/ccH7dUYB.s page 32 + ARM GAS /tmp/cczbjqIl.s page 32 863 0020 8C50 str r4, [r1, r2] @@ -1918,7 +1918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 884:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs /* File system object */ 885:Middlewares/Third_Party/FatFs/src/ff.c **** ) 886:Middlewares/Third_Party/FatFs/src/ff.c **** { - ARM GAS /tmp/ccH7dUYB.s page 33 + ARM GAS /tmp/cczbjqIl.s page 33 887:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD wsect; @@ -1978,7 +1978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 941:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ 942:Middlewares/Third_Party/FatFs/src/ff.c **** 943:Middlewares/Third_Party/FatFs/src/ff.c **** static - ARM GAS /tmp/ccH7dUYB.s page 34 + ARM GAS /tmp/cczbjqIl.s page 34 944:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT sync_fs ( /* FR_OK:succeeded, !=0:error */ @@ -2038,7 +2038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 989:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst >= fs->n_fatent - 2) return 0; /* Invalid cluster# */ 911 .loc 1 989 2 is_stmt 1 view .LVU255 912 .loc 1 989 16 is_stmt 0 view .LVU256 - ARM GAS /tmp/ccH7dUYB.s page 35 + ARM GAS /tmp/cczbjqIl.s page 35 913 0002 8369 ldr r3, [r0, #24] @@ -2098,7 +2098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1011:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst < 2 || clst >= fs->n_fatent) { /* Check if in valid range */ 1012:Middlewares/Third_Party/FatFs/src/ff.c **** val = 1; /* Internal error */ 1013:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 36 + ARM GAS /tmp/cczbjqIl.s page 36 1014:Middlewares/Third_Party/FatFs/src/ff.c **** } else { @@ -2158,7 +2158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1068:Middlewares/Third_Party/FatFs/src/ff.c **** 1069:Middlewares/Third_Party/FatFs/src/ff.c **** return val; 1070:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 37 + ARM GAS /tmp/cczbjqIl.s page 37 1071:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -2218,7 +2218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1125:Middlewares/Third_Party/FatFs/src/ff.c **** break; 1126:Middlewares/Third_Party/FatFs/src/ff.c **** } 1127:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 38 + ARM GAS /tmp/cczbjqIl.s page 38 1128:Middlewares/Third_Party/FatFs/src/ff.c **** return res; @@ -2278,7 +2278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1182:Middlewares/Third_Party/FatFs/src/ff.c **** /*----------------------------------------*/ 1183:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set/Clear a block of allocation bitmap */ 1184:Middlewares/Third_Party/FatFs/src/ff.c **** /*----------------------------------------*/ - ARM GAS /tmp/ccH7dUYB.s page 39 + ARM GAS /tmp/cczbjqIl.s page 39 1185:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -2338,7 +2338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1239:Middlewares/Third_Party/FatFs/src/ff.c **** 1240:Middlewares/Third_Party/FatFs/src/ff.c **** 1241:Middlewares/Third_Party/FatFs/src/ff.c **** /*---------------------------------------------*/ - ARM GAS /tmp/ccH7dUYB.s page 40 + ARM GAS /tmp/cczbjqIl.s page 40 1242:Middlewares/Third_Party/FatFs/src/ff.c **** /* Fill the last fragment of the FAT chain */ @@ -2398,7 +2398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1296:Middlewares/Third_Party/FatFs/src/ff.c **** do { 1297:Middlewares/Third_Party/FatFs/src/ff.c **** nxt = get_fat(obj, clst); /* Get cluster status */ 1298:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 0) break; /* Empty cluster? */ - ARM GAS /tmp/ccH7dUYB.s page 41 + ARM GAS /tmp/cczbjqIl.s page 41 1299:Middlewares/Third_Party/FatFs/src/ff.c **** if (nxt == 1) return FR_INT_ERR; /* Internal error? */ @@ -2458,7 +2458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1353:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD clst /* Cluster# to stretch, 0:Create a new chain */ 1354:Middlewares/Third_Party/FatFs/src/ff.c **** ) 1355:Middlewares/Third_Party/FatFs/src/ff.c **** { - ARM GAS /tmp/ccH7dUYB.s page 42 + ARM GAS /tmp/cczbjqIl.s page 42 1356:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD cs, ncl, scl; @@ -2518,7 +2518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1410:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */ 1411:Middlewares/Third_Party/FatFs/src/ff.c **** } 1412:Middlewares/Third_Party/FatFs/src/ff.c **** res = put_fat(fs, ncl, 0xFFFFFFFF); /* Mark the new cluster 'EOC' */ - ARM GAS /tmp/ccH7dUYB.s page 43 + ARM GAS /tmp/cczbjqIl.s page 43 1413:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) { @@ -2578,7 +2578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 963 .loc 1 1450 2 is_stmt 1 view .LVU272 964 .loc 1 1450 21 is_stmt 0 view .LVU273 965 0006 9089 ldrh r0, [r2, #12] - ARM GAS /tmp/ccH7dUYB.s page 44 + ARM GAS /tmp/cczbjqIl.s page 44 966 .LVL92: @@ -2638,7 +2638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1005 .LVL100: 1006 .loc 1 1457 12 view .LVU292 1007 0022 0844 add r0, r0, r1 - ARM GAS /tmp/ccH7dUYB.s page 45 + ARM GAS /tmp/cczbjqIl.s page 45 1008 .L86: @@ -2698,7 +2698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1499:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz; 1500:Middlewares/Third_Party/FatFs/src/ff.c **** } 1501:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = clust2sect(fs, clst); - ARM GAS /tmp/ccH7dUYB.s page 46 + ARM GAS /tmp/cczbjqIl.s page 46 1502:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -2758,7 +2758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1556:Middlewares/Third_Party/FatFs/src/ff.c **** if (_FS_EXFAT) dp->obj.stat |= 4; /* The directory needs to be updated */ 1557:Middlewares/Third_Party/FatFs/src/ff.c **** if (sync_window(fs) != FR_OK) return FR_DISK_ERR; /* Flush disk access window */ 1558:Middlewares/Third_Party/FatFs/src/ff.c **** mem_set(fs->win, 0, SS(fs)); /* Clear window buffer */ - ARM GAS /tmp/ccH7dUYB.s page 47 + ARM GAS /tmp/cczbjqIl.s page 47 1559:Middlewares/Third_Party/FatFs/src/ff.c **** for (n = 0, fs->winsect = clust2sect(fs, clst); n < fs->csize; n++, fs->winsect++) { /* Fill t @@ -2818,7 +2818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1613:Middlewares/Third_Party/FatFs/src/ff.c **** } 1614:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_next(dp, 1); 1615:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); /* Next entry with table stretch enabled */ - ARM GAS /tmp/ccH7dUYB.s page 48 + ARM GAS /tmp/cczbjqIl.s page 48 1616:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -2878,7 +2878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1052 .L91: 1641:Middlewares/Third_Party/FatFs/src/ff.c **** cl |= (DWORD)ld_word(dir + DIR_FstClusHI) << 16; 1642:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 49 + ARM GAS /tmp/cczbjqIl.s page 49 1643:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -2938,7 +2938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1090 .LCFI11: 1091 .cfi_def_cfa_offset 16 1092 .cfi_offset 4, -16 - ARM GAS /tmp/ccH7dUYB.s page 50 + ARM GAS /tmp/cczbjqIl.s page 50 1093 .cfi_offset 5, -12 @@ -2998,7 +2998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1666:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------------------------*/ 1667:Middlewares/Third_Party/FatFs/src/ff.c **** /* FAT-LFN: LFN handling */ 1668:Middlewares/Third_Party/FatFs/src/ff.c **** /*------------------------------------------------------------------------*/ - ARM GAS /tmp/ccH7dUYB.s page 51 + ARM GAS /tmp/cczbjqIl.s page 51 1669:Middlewares/Third_Party/FatFs/src/ff.c **** static @@ -3058,7 +3058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1723:Middlewares/Third_Party/FatFs/src/ff.c **** 1724:Middlewares/Third_Party/FatFs/src/ff.c **** i = ((dir[LDIR_Ord] & ~LLEF) - 1) * 13; /* Offset in the LFN buffer */ 1725:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 52 + ARM GAS /tmp/cczbjqIl.s page 52 1726:Middlewares/Third_Party/FatFs/src/ff.c **** for (wc = 1, s = 0; s < 13; s++) { /* Process all characters in the entry */ @@ -3118,7 +3118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1780:Middlewares/Third_Party/FatFs/src/ff.c **** 1781:Middlewares/Third_Party/FatFs/src/ff.c **** 1782:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 53 + ARM GAS /tmp/cczbjqIl.s page 53 1783:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 && !_FS_READONLY @@ -3178,7 +3178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1837:Middlewares/Third_Party/FatFs/src/ff.c **** } 1838:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_LFN != 0 && !_FS_READONLY */ 1839:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 54 + ARM GAS /tmp/cczbjqIl.s page 54 1840:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -3238,7 +3238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1894:Middlewares/Third_Party/FatFs/src/ff.c **** const WCHAR* name /* File name to be calculated */ 1895:Middlewares/Third_Party/FatFs/src/ff.c **** ) 1896:Middlewares/Third_Party/FatFs/src/ff.c **** { - ARM GAS /tmp/ccH7dUYB.s page 55 + ARM GAS /tmp/cczbjqIl.s page 55 1897:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR chr; @@ -3298,7 +3298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1951:Middlewares/Third_Party/FatFs/src/ff.c **** if ((si % SZDIRE) == 0) si += 2; /* Skip entry type field */ 1952:Middlewares/Third_Party/FatFs/src/ff.c **** w = ff_convert(ld_word(dirb + si), 0); /* Get a character and Unicode -> OEM */ 1953:Middlewares/Third_Party/FatFs/src/ff.c **** if (_DF1S && w >= 0x100) { /* Is it a double byte char? (always false at SBCS cfg) */ - ARM GAS /tmp/ccH7dUYB.s page 56 + ARM GAS /tmp/cczbjqIl.s page 56 1954:Middlewares/Third_Party/FatFs/src/ff.c **** fno->fname[di++] = (char)(w >> 8); /* Put 1st byte of the DBC */ @@ -3358,7 +3358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2008:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res; 2009:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(dp->obj.fs, dp->sect); 2010:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) return res; - ARM GAS /tmp/ccH7dUYB.s page 57 + ARM GAS /tmp/cczbjqIl.s page 57 2011:Middlewares/Third_Party/FatFs/src/ff.c **** if (dp->dir[XDIR_Type] != 0xC1) return FR_INT_ERR; @@ -3418,7 +3418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2065:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(dirb + XDIR_SetSum, xdir_sum(dirb)); 2066:Middlewares/Third_Party/FatFs/src/ff.c **** nent = dirb[XDIR_NumSec] + 1; 2067:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 58 + ARM GAS /tmp/cczbjqIl.s page 58 2068:Middlewares/Third_Party/FatFs/src/ff.c **** /* Store the set of directory to the volume */ @@ -3478,7 +3478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2122:Middlewares/Third_Party/FatFs/src/ff.c **** 2123:Middlewares/Third_Party/FatFs/src/ff.c **** 2124:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 59 + ARM GAS /tmp/cczbjqIl.s page 59 2125:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 1 || _FS_RPATH >= 2 || _USE_LABEL || _FS_EXFAT @@ -3538,7 +3538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2179:Middlewares/Third_Party/FatFs/src/ff.c **** ord = (c == ord && sum == dp->dir[LDIR_Chksum] && pick_lfn(fs->lfnbuf, dp->dir)) ? ord - 1 : 0 2180:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* An SFN entry is found */ 2181:Middlewares/Third_Party/FatFs/src/ff.c **** if (ord || sum != sum_sfn(dp->dir)) { /* Is there a valid LFN? */ - ARM GAS /tmp/ccH7dUYB.s page 60 + ARM GAS /tmp/cczbjqIl.s page 60 2182:Middlewares/Third_Party/FatFs/src/ff.c **** dp->blk_ofs = 0xFFFFFFFF; /* It has no LFN. */ @@ -3598,7 +3598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2236:Middlewares/Third_Party/FatFs/src/ff.c **** if (ff_wtoupper(ld_word(fs->dirbuf + di)) != ff_wtoupper(fs->lfnbuf[ni])) break; 2237:Middlewares/Third_Party/FatFs/src/ff.c **** } 2238:Middlewares/Third_Party/FatFs/src/ff.c **** if (nc == 0 && !fs->lfnbuf[ni]) break; /* Name matched? */ - ARM GAS /tmp/ccH7dUYB.s page 61 + ARM GAS /tmp/cczbjqIl.s page 61 2239:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -3658,7 +3658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2293:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp /* Target directory with object name to be created */ 2294:Middlewares/Third_Party/FatFs/src/ff.c **** ) 2295:Middlewares/Third_Party/FatFs/src/ff.c **** { - ARM GAS /tmp/ccH7dUYB.s page 62 + ARM GAS /tmp/cczbjqIl.s page 62 2296:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT res; @@ -3718,7 +3718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2350:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_alloc(dp, nent); /* Allocate entries */ 2351:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && --nent) { /* Set LFN entry if needed */ 2352:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(dp, dp->dptr - nent * SZDIRE); - ARM GAS /tmp/ccH7dUYB.s page 63 + ARM GAS /tmp/cczbjqIl.s page 63 2353:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { @@ -3778,7 +3778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2407:Middlewares/Third_Party/FatFs/src/ff.c **** do { 2408:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect); 2409:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; - ARM GAS /tmp/ccH7dUYB.s page 64 + ARM GAS /tmp/cczbjqIl.s page 64 2410:Middlewares/Third_Party/FatFs/src/ff.c **** /* Mark an entry 'deleted' */ @@ -3838,7 +3838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1151 .loc 1 2450 2 view .LVU325 2451:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tm; 1152 .loc 1 2451 2 view .LVU326 - ARM GAS /tmp/ccH7dUYB.s page 65 + ARM GAS /tmp/cczbjqIl.s page 65 2452:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 @@ -3898,7 +3898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2495:Middlewares/Third_Party/FatFs/src/ff.c **** } 2496:Middlewares/Third_Party/FatFs/src/ff.c **** #if _LFN_UNICODE 2497:Middlewares/Third_Party/FatFs/src/ff.c **** if (IsDBCS1(c) && i != 8 && i != 11 && IsDBCS2(dp->dir[i])) { - ARM GAS /tmp/ccH7dUYB.s page 66 + ARM GAS /tmp/cczbjqIl.s page 66 2498:Middlewares/Third_Party/FatFs/src/ff.c **** c = c << 8 | dp->dir[i++]; @@ -3958,7 +3958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1189 .loc 1 2520 11 is_stmt 1 view .LVU340 1190 0022 0A2B cmp r3, #10 1191 0024 0ED8 bhi .L109 - ARM GAS /tmp/ccH7dUYB.s page 67 + ARM GAS /tmp/cczbjqIl.s page 67 2521:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == ' ') continue; /* Skip padding spaces */ @@ -4018,7 +4018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1231 .loc 1 2527 16 view .LVU356 1232 0046 0023 movs r3, #0 1233 .LVL127: - ARM GAS /tmp/ccH7dUYB.s page 68 + ARM GAS /tmp/cczbjqIl.s page 68 1234 .loc 1 2527 16 view .LVU357 @@ -4078,7 +4078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1279 .align 1 1280 .syntax unified 1281 .thumb - ARM GAS /tmp/ccH7dUYB.s page 69 + ARM GAS /tmp/cczbjqIl.s page 69 1282 .thumb_func @@ -4138,7 +4138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2585:Middlewares/Third_Party/FatFs/src/ff.c **** if (!*pat && inf) return 1; /* (short circuit) */ 2586:Middlewares/Third_Party/FatFs/src/ff.c **** 2587:Middlewares/Third_Party/FatFs/src/ff.c **** do { - ARM GAS /tmp/ccH7dUYB.s page 70 + ARM GAS /tmp/cczbjqIl.s page 70 2588:Middlewares/Third_Party/FatFs/src/ff.c **** pp = pat; np = nam; /* Top of pattern and name to match */ @@ -4198,7 +4198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1306 0006 8A46 mov r10, r1 2623:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN != 0 /* LFN configuration */ 2624:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE b, cf; - ARM GAS /tmp/ccH7dUYB.s page 71 + ARM GAS /tmp/cczbjqIl.s page 71 2625:Middlewares/Third_Party/FatFs/src/ff.c **** WCHAR w, *lfn; @@ -4258,7 +4258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2679:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) { 2680:Middlewares/Third_Party/FatFs/src/ff.c **** w = lfn[si++]; /* Get an LFN character */ 2681:Middlewares/Third_Party/FatFs/src/ff.c **** if (!w) break; /* Break on end of the LFN */ - ARM GAS /tmp/ccH7dUYB.s page 72 + ARM GAS /tmp/cczbjqIl.s page 72 2682:Middlewares/Third_Party/FatFs/src/ff.c **** if (w == ' ' || (w == '.' && si != di)) { /* Remove spaces and dots */ @@ -4318,7 +4318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2736:Middlewares/Third_Party/FatFs/src/ff.c **** dp->fn[NSFLAG] = cf; /* SFN is created */ 2737:Middlewares/Third_Party/FatFs/src/ff.c **** 2738:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK; - ARM GAS /tmp/ccH7dUYB.s page 73 + ARM GAS /tmp/cczbjqIl.s page 73 2739:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -4378,7 +4378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2761:Middlewares/Third_Party/FatFs/src/ff.c **** } 2762:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 2763:Middlewares/Third_Party/FatFs/src/ff.c **** for (;;) { - ARM GAS /tmp/ccH7dUYB.s page 74 + ARM GAS /tmp/cczbjqIl.s page 74 2764:Middlewares/Third_Party/FatFs/src/ff.c **** c = (BYTE)p[si++]; @@ -4438,7 +4438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1360 .loc 1 2796 2 is_stmt 1 view .LVU400 1361 .loc 1 2796 5 is_stmt 0 view .LVU401 1362 0036 002D cmp r5, #0 - ARM GAS /tmp/ccH7dUYB.s page 75 + ARM GAS /tmp/cczbjqIl.s page 75 1363 0038 44D0 beq .L125 @@ -4498,7 +4498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2791:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[i++] = c; 1404 .loc 1 2791 7 view .LVU419 1405 0066 192B cmp r3, #25 - ARM GAS /tmp/ccH7dUYB.s page 76 + ARM GAS /tmp/cczbjqIl.s page 76 1406 0068 01D8 bhi .L120 @@ -4558,7 +4558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1444 .loc 1 2770 3 is_stmt 1 view .LVU435 2770:Middlewares/Third_Party/FatFs/src/ff.c **** if (ni == 11 || c != '.') return FR_INVALID_NAME; /* Over size or invalid dot */ 1445 .loc 1 2770 6 is_stmt 0 view .LVU436 - ARM GAS /tmp/ccH7dUYB.s page 77 + ARM GAS /tmp/cczbjqIl.s page 77 1446 0088 2E2C cmp r4, #46 @@ -4618,7 +4618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2798:Middlewares/Third_Party/FatFs/src/ff.c **** sfn[NSFLAG] = (c <= ' ') ? NS_LAST : 0; /* Set last segment flag if end of the path */ 1487 .loc 1 2798 29 is_stmt 0 discriminator 1 view .LVU450 1488 00ae 0523 movs r3, #5 - ARM GAS /tmp/ccH7dUYB.s page 78 + ARM GAS /tmp/cczbjqIl.s page 78 1489 00b0 89F82430 strb r3, [r9, #36] @@ -4678,7 +4678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2813:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT follow_path ( /* FR_OK(0): successful, !=0: error code */ 2814:Middlewares/Third_Party/FatFs/src/ff.c **** DIR* dp, /* Directory object to return last directory and found object */ 2815:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path /* Full-path string to find a file or directory */ - ARM GAS /tmp/ccH7dUYB.s page 79 + ARM GAS /tmp/cczbjqIl.s page 79 2816:Middlewares/Third_Party/FatFs/src/ff.c **** ) @@ -4738,7 +4738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2870:Middlewares/Third_Party/FatFs/src/ff.c **** break; 2871:Middlewares/Third_Party/FatFs/src/ff.c **** } 2872:Middlewares/Third_Party/FatFs/src/ff.c **** if (ns & NS_LAST) break; /* Last segment matched. Function completed. */ - ARM GAS /tmp/ccH7dUYB.s page 80 + ARM GAS /tmp/cczbjqIl.s page 80 2873:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get into the sub-directory */ @@ -4798,7 +4798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2916:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 2917:Middlewares/Third_Party/FatFs/src/ff.c **** 2918:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 81 + ARM GAS /tmp/cczbjqIl.s page 81 2919:Middlewares/Third_Party/FatFs/src/ff.c **** if (*path) { /* If the pointer is not a null */ @@ -4858,7 +4858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2940:Middlewares/Third_Party/FatFs/src/ff.c **** if (i < _VOLUMES) { /* If a drive id is found, get the value and strip it */ 2941:Middlewares/Third_Party/FatFs/src/ff.c **** vol = (int)i; 2942:Middlewares/Third_Party/FatFs/src/ff.c **** *path = tt; - ARM GAS /tmp/ccH7dUYB.s page 82 + ARM GAS /tmp/cczbjqIl.s page 82 2943:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -4918,7 +4918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2927:Middlewares/Third_Party/FatFs/src/ff.c **** } 1603 .loc 1 2927 12 is_stmt 0 view .LVU485 1604 0036 0132 adds r2, r2, #1 - ARM GAS /tmp/ccH7dUYB.s page 83 + ARM GAS /tmp/cczbjqIl.s page 83 1605 .LVL172: @@ -4978,7 +4978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2975:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->win[BS_JmpBoot] == 0xE9 || (fs->win[BS_JmpBoot] == 0xEB && fs->win[BS_JmpBoot + 2] == 0x90 2976:Middlewares/Third_Party/FatFs/src/ff.c **** if ((ld_dword(fs->win + BS_FilSysType) & 0xFFFFFF) == 0x544146) return 0; /* Check "FAT" string * 2977:Middlewares/Third_Party/FatFs/src/ff.c **** if (ld_dword(fs->win + BS_FilSysType32) == 0x33544146) return 0; /* Check "FAT3" string */ - ARM GAS /tmp/ccH7dUYB.s page 84 + ARM GAS /tmp/cczbjqIl.s page 84 2978:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -5038,7 +5038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3032:Middlewares/Third_Party/FatFs/src/ff.c **** /* Following code attempts to mount the volume. (analyze BPB and initialize the fs object) */ 3033:Middlewares/Third_Party/FatFs/src/ff.c **** 3034:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fs_type = 0; /* Clear the file system object */ - ARM GAS /tmp/ccH7dUYB.s page 85 + ARM GAS /tmp/cczbjqIl.s page 85 3035:Middlewares/Third_Party/FatFs/src/ff.c **** fs->drv = LD2PD(vol); /* Bind the logical drive and a physical drive */ @@ -5098,7 +5098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3089:Middlewares/Third_Party/FatFs/src/ff.c **** fs->csize = 1 << fs->win[BPB_SecPerClusEx]; /* Cluster size */ 3090:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->csize == 0) return FR_NO_FILESYSTEM; /* (Must be 1..32768) */ 3091:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 86 + ARM GAS /tmp/cczbjqIl.s page 86 3092:Middlewares/Third_Party/FatFs/src/ff.c **** nclst = ld_dword(fs->win + BPB_NumClusEx); /* Number of clusters */ @@ -5158,7 +5158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3146:Middlewares/Third_Party/FatFs/src/ff.c **** 3147:Middlewares/Third_Party/FatFs/src/ff.c **** /* Boundaries and Limits */ 3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->n_fatent = nclst + 2; /* Number of FAT entries */ - ARM GAS /tmp/ccH7dUYB.s page 87 + ARM GAS /tmp/cczbjqIl.s page 87 3149:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */ @@ -5218,7 +5218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3203:Middlewares/Third_Party/FatFs/src/ff.c **** clear_lock(fs); 3204:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 3205:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_OK; - ARM GAS /tmp/ccH7dUYB.s page 88 + ARM GAS /tmp/cczbjqIl.s page 88 3206:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -5278,7 +5278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3260:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_mount ( 3261:Middlewares/Third_Party/FatFs/src/ff.c **** FATFS* fs, /* Pointer to the file system object (NULL:unmount)*/ 3262:Middlewares/Third_Party/FatFs/src/ff.c **** const TCHAR* path, /* Logical drive number to be mounted/unmounted */ - ARM GAS /tmp/ccH7dUYB.s page 89 + ARM GAS /tmp/cczbjqIl.s page 89 3263:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE opt /* Mode option 0:Do not mount (delayed mount), 1:Mount immediately */ @@ -5338,7 +5338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3317:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY 3318:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dw, cl, bcs, clst, sc; 3319:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs; - ARM GAS /tmp/ccH7dUYB.s page 90 + ARM GAS /tmp/cczbjqIl.s page 90 3320:Middlewares/Third_Party/FatFs/src/ff.c **** #endif @@ -5398,7 +5398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3374:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_CrtTime, dw); /* Set created time */ 3375:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_CrtTime10] = 0; 3376:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_ModTime, dw); /* Set modified time */ - ARM GAS /tmp/ccH7dUYB.s page 91 + ARM GAS /tmp/cczbjqIl.s page 91 3377:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_ModTime10] = 0; @@ -5458,7 +5458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3431:Middlewares/Third_Party/FatFs/src/ff.c **** } 3432:Middlewares/Third_Party/FatFs/src/ff.c **** #else /* R/O configuration */ 3433:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { - ARM GAS /tmp/ccH7dUYB.s page 92 + ARM GAS /tmp/cczbjqIl.s page 92 3434:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.fn[NSFLAG] & NS_NONAME) { /* Origin directory itself? */ @@ -5518,7 +5518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3488:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_read(fs->drv, fp->buf, fp->sect, 1) != RES_OK) res = FR_DISK_ERR; 3489:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 3490:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 93 + ARM GAS /tmp/cczbjqIl.s page 93 3491:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -5578,7 +5578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3545:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 3546:Middlewares/Third_Party/FatFs/src/ff.c **** { 3547:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, fp->clust); /* Follow cluster chain on the FAT */ - ARM GAS /tmp/ccH7dUYB.s page 94 + ARM GAS /tmp/cczbjqIl.s page 94 3548:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -5638,7 +5638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3602:Middlewares/Third_Party/FatFs/src/ff.c **** 3603:Middlewares/Third_Party/FatFs/src/ff.c **** 3604:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 95 + ARM GAS /tmp/cczbjqIl.s page 95 3605:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -5698,7 +5698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3659:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->obj.sclust == 0) fp->obj.sclust = clst; /* Set start cluster if the first write */ 3660:Middlewares/Third_Party/FatFs/src/ff.c **** } 3661:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_TINY - ARM GAS /tmp/ccH7dUYB.s page 96 + ARM GAS /tmp/cczbjqIl.s page 96 3662:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->winsect == fp->sect && sync_window(fs) != FR_OK) ABORT(fs, FR_DISK_ERR); /* Write-back s @@ -5758,7 +5758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3716:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_DIRTY; 3717:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 3718:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 97 + ARM GAS /tmp/cczbjqIl.s page 97 3719:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -5818,7 +5818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3773:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(fs->dirbuf + XDIR_AccTime, 0); 3774:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj); /* Restore it to the directory */ 3775:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { - ARM GAS /tmp/ccH7dUYB.s page 98 + ARM GAS /tmp/cczbjqIl.s page 98 3776:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); @@ -5878,7 +5878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3830:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 3831:Middlewares/Third_Party/FatFs/src/ff.c **** { 3832:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.fs = 0; /* Invalidate file object */ - ARM GAS /tmp/ccH7dUYB.s page 99 + ARM GAS /tmp/cczbjqIl.s page 99 3833:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -5938,7 +5938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3887:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT 3888:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { 3889:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_scl = dj.obj.c_scl; - ARM GAS /tmp/ccH7dUYB.s page 100 + ARM GAS /tmp/cczbjqIl.s page 100 3890:Middlewares/Third_Party/FatFs/src/ff.c **** fs->cdc_size = dj.obj.c_size; @@ -5998,7 +5998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3944:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.sclust = fs->cdir; /* Start to follow upper directory from current directory */ 3945:Middlewares/Third_Party/FatFs/src/ff.c **** while ((ccl = dj.obj.sclust) != 0) { /* Repeat while current directory is a sub-directory */ 3946:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_sdi(&dj, 1 * SZDIRE); /* Get parent directory */ - ARM GAS /tmp/ccH7dUYB.s page 101 + ARM GAS /tmp/cczbjqIl.s page 101 3947:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; @@ -6058,7 +6058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4001:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_lseek ( 4002:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */ 4003:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t ofs /* File pointer from top of file */ - ARM GAS /tmp/ccH7dUYB.s page 102 + ARM GAS /tmp/cczbjqIl.s page 102 4004:Middlewares/Third_Party/FatFs/src/ff.c **** ) @@ -6118,7 +6118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4058:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */ 4059:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY 4060:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY - ARM GAS /tmp/ccH7dUYB.s page 103 + ARM GAS /tmp/cczbjqIl.s page 103 4061:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->flag & FA_DIRTY) { /* Write-back dirty sector cache */ @@ -6178,7 +6178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4115:Middlewares/Third_Party/FatFs/src/ff.c **** ofs = 0; break; 4116:Middlewares/Third_Party/FatFs/src/ff.c **** } 4117:Middlewares/Third_Party/FatFs/src/ff.c **** } else - ARM GAS /tmp/ccH7dUYB.s page 104 + ARM GAS /tmp/cczbjqIl.s page 104 4118:Middlewares/Third_Party/FatFs/src/ff.c **** #endif @@ -6238,7 +6238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4172:Middlewares/Third_Party/FatFs/src/ff.c **** 4173:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dp) return FR_INVALID_OBJECT; 4174:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 105 + ARM GAS /tmp/cczbjqIl.s page 105 4175:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */ @@ -6298,7 +6298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4229:Middlewares/Third_Party/FatFs/src/ff.c **** /* Close Directory */ 4230:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ 4231:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 106 + ARM GAS /tmp/cczbjqIl.s page 106 4232:Middlewares/Third_Party/FatFs/src/ff.c **** FRESULT f_closedir ( @@ -6358,7 +6358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4286:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_NO_FILE) res = FR_OK; /* Ignore end of directory now */ 4287:Middlewares/Third_Party/FatFs/src/ff.c **** } 4288:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF(); - ARM GAS /tmp/ccH7dUYB.s page 107 + ARM GAS /tmp/cczbjqIl.s page 107 4289:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -6418,7 +6418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4343:Middlewares/Third_Party/FatFs/src/ff.c **** 4344:Middlewares/Third_Party/FatFs/src/ff.c **** #endif /* _USE_FIND */ 4345:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 108 + ARM GAS /tmp/cczbjqIl.s page 108 4346:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -6478,7 +6478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4400:Middlewares/Third_Party/FatFs/src/ff.c **** 4401:Middlewares/Third_Party/FatFs/src/ff.c **** 4402:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get logical drive */ - ARM GAS /tmp/ccH7dUYB.s page 109 + ARM GAS /tmp/cczbjqIl.s page 109 4403:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&path, &fs, 0); @@ -6538,7 +6538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4457:Middlewares/Third_Party/FatFs/src/ff.c **** } 4458:Middlewares/Third_Party/FatFs/src/ff.c **** } 4459:Middlewares/Third_Party/FatFs/src/ff.c **** *nclst = nfree; /* Return the free clusters */ - ARM GAS /tmp/ccH7dUYB.s page 110 + ARM GAS /tmp/cczbjqIl.s page 110 4460:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst = nfree; /* Now free_clst is valid */ @@ -6598,7 +6598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4514:Middlewares/Third_Party/FatFs/src/ff.c **** 4515:Middlewares/Third_Party/FatFs/src/ff.c **** LEAVE_FF(fs, res); 4516:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 111 + ARM GAS /tmp/cczbjqIl.s page 111 4517:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -6658,7 +6658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4571:Middlewares/Third_Party/FatFs/src/ff.c **** if (dj.obj.attr & AM_DIR) { /* Is it a sub-directory? */ 4572:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_RPATH != 0 4573:Middlewares/Third_Party/FatFs/src/ff.c **** if (dclst == fs->cdir) { /* Is it the current directory? */ - ARM GAS /tmp/ccH7dUYB.s page 112 + ARM GAS /tmp/cczbjqIl.s page 112 4574:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; @@ -6718,7 +6718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4628:Middlewares/Third_Party/FatFs/src/ff.c **** UINT n; 4629:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD dsc, dcl, pcl, tm; 4630:Middlewares/Third_Party/FatFs/src/ff.c **** DEF_NAMBUF - ARM GAS /tmp/ccH7dUYB.s page 113 + ARM GAS /tmp/cczbjqIl.s page 113 4631:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -6778,7 +6778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4685:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_GenFlags] = 3; /* Initialize the object flag (contiguous) */ 4686:Middlewares/Third_Party/FatFs/src/ff.c **** fs->dirbuf[XDIR_Attr] = AM_DIR; /* Attribute */ 4687:Middlewares/Third_Party/FatFs/src/ff.c **** res = store_xdir(&dj); - ARM GAS /tmp/ccH7dUYB.s page 114 + ARM GAS /tmp/cczbjqIl.s page 114 4688:Middlewares/Third_Party/FatFs/src/ff.c **** } else @@ -6838,7 +6838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4742:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { /* Object to be renamed is found */ 4743:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_EXFAT 4744:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type == FS_EXFAT) { /* At exFAT */ - ARM GAS /tmp/ccH7dUYB.s page 115 + ARM GAS /tmp/cczbjqIl.s page 115 4745:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE nf, nn; @@ -6898,7 +6898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4799:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { 4800:Middlewares/Third_Party/FatFs/src/ff.c **** res = dir_remove(&djo); /* Remove old entry */ 4801:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { - ARM GAS /tmp/ccH7dUYB.s page 116 + ARM GAS /tmp/cczbjqIl.s page 116 4802:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); @@ -6958,7 +6958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4856:Middlewares/Third_Party/FatFs/src/ff.c **** res = sync_fs(fs); 4857:Middlewares/Third_Party/FatFs/src/ff.c **** } 4858:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 117 + ARM GAS /tmp/cczbjqIl.s page 117 4859:Middlewares/Third_Party/FatFs/src/ff.c **** FREE_NAMBUF(); @@ -7018,7 +7018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4913:Middlewares/Third_Party/FatFs/src/ff.c **** 4914:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LABEL 4915:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ - ARM GAS /tmp/ccH7dUYB.s page 118 + ARM GAS /tmp/cczbjqIl.s page 118 4916:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get Volume Label */ @@ -7078,7 +7078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4970:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 4971:Middlewares/Third_Party/FatFs/src/ff.c **** } while (di < 11); 4972:Middlewares/Third_Party/FatFs/src/ff.c **** do { /* Truncate trailing spaces */ - ARM GAS /tmp/ccH7dUYB.s page 119 + ARM GAS /tmp/cczbjqIl.s page 119 4973:Middlewares/Third_Party/FatFs/src/ff.c **** label[di] = 0; @@ -7138,7 +7138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5027:Middlewares/Third_Party/FatFs/src/ff.c **** res = find_volume(&label, &fs, FA_WRITE); 5028:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) LEAVE_FF(fs, res); 5029:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.fs = fs; - ARM GAS /tmp/ccH7dUYB.s page 120 + ARM GAS /tmp/cczbjqIl.s page 120 5030:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -7198,7 +7198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5084:Middlewares/Third_Party/FatFs/src/ff.c **** } 5085:Middlewares/Third_Party/FatFs/src/ff.c **** 5086:Middlewares/Third_Party/FatFs/src/ff.c **** /* Set volume label */ - ARM GAS /tmp/ccH7dUYB.s page 121 + ARM GAS /tmp/cczbjqIl.s page 121 5087:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.sclust = 0; /* Open root directory */ @@ -7258,7 +7258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5141:Middlewares/Third_Party/FatFs/src/ff.c **** FIL* fp, /* Pointer to the file object */ 5142:Middlewares/Third_Party/FatFs/src/ff.c **** FSIZE_t fsz, /* File size to be expanded to */ 5143:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE opt /* Operation mode 0:Find and prepare or 1:Find and allocate */ - ARM GAS /tmp/ccH7dUYB.s page 122 + ARM GAS /tmp/cczbjqIl.s page 122 5144:Middlewares/Third_Party/FatFs/src/ff.c **** ) @@ -7318,7 +7318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5198:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Set it as suggested point for next allocation */ 5199:Middlewares/Third_Party/FatFs/src/ff.c **** lclst = scl - 1; 5200:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 123 + ARM GAS /tmp/cczbjqIl.s page 123 5201:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -7378,7 +7378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5255:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs) & (fs->csize - 1)); /* Sector offset in the cluster */ 5256:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */ 5257:Middlewares/Third_Party/FatFs/src/ff.c **** if (csect == 0) { /* On the cluster boundary? */ - ARM GAS /tmp/ccH7dUYB.s page 124 + ARM GAS /tmp/cczbjqIl.s page 124 5258:Middlewares/Third_Party/FatFs/src/ff.c **** clst = (fp->fptr == 0) ? /* On the top of the file? */ @@ -7438,7 +7438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5312:Middlewares/Third_Party/FatFs/src/ff.c **** static const WORD cst32[] = {1, 2, 4, 8, 16, 32, 0}; /* Cluster size boundary for FAT32 volume (12 5313:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE fmt, sys, *buf, *pte, pdrv, part; 5314:Middlewares/Third_Party/FatFs/src/ff.c **** WORD ss; - ARM GAS /tmp/ccH7dUYB.s page 125 + ARM GAS /tmp/cczbjqIl.s page 125 5315:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD szb_buf, sz_buf, sz_blk, n_clst, pau, sect, nsect, n; @@ -7498,7 +7498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5369:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 128) return FR_MKFS_ABORTED; /* Check if volume size is >=128s */ 5370:Middlewares/Third_Party/FatFs/src/ff.c **** 5371:Middlewares/Third_Party/FatFs/src/ff.c **** /* Pre-determine the FAT type */ - ARM GAS /tmp/ccH7dUYB.s page 126 + ARM GAS /tmp/cczbjqIl.s page 126 5372:Middlewares/Third_Party/FatFs/src/ff.c **** do { @@ -7558,7 +7558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5426:Middlewares/Third_Party/FatFs/src/ff.c **** si++; break; /* Store the up-case char if exist */ 5427:Middlewares/Third_Party/FatFs/src/ff.c **** } 5428:Middlewares/Third_Party/FatFs/src/ff.c **** for (j = 1; (WCHAR)(si + j) && (WCHAR)(si + j) == ff_wtoupper((WCHAR)(si + j)); j++) ; /* Get r - ARM GAS /tmp/ccH7dUYB.s page 127 + ARM GAS /tmp/cczbjqIl.s page 127 5429:Middlewares/Third_Party/FatFs/src/ff.c **** if (j >= 128) { @@ -7618,7 +7618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5483:Middlewares/Third_Party/FatFs/src/ff.c **** n = (nsect > sz_buf) ? sz_buf : nsect; /* Write the buffered data */ 5484:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect, n) != RES_OK) return FR_DISK_ERR; 5485:Middlewares/Third_Party/FatFs/src/ff.c **** sect += n; nsect -= n; - ARM GAS /tmp/ccH7dUYB.s page 128 + ARM GAS /tmp/cczbjqIl.s page 128 5486:Middlewares/Third_Party/FatFs/src/ff.c **** } while (nsect); @@ -7678,7 +7678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5540:Middlewares/Third_Party/FatFs/src/ff.c **** for ( ; j < 11; j++) { 5541:Middlewares/Third_Party/FatFs/src/ff.c **** for (i = 0; i < ss; sum = xsum32(buf[i++], sum)) ; /* VBR checksum */ 5542:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_write(pdrv, buf, sect++, 1) != RES_OK) return FR_DISK_ERR; - ARM GAS /tmp/ccH7dUYB.s page 129 + ARM GAS /tmp/cczbjqIl.s page 129 5543:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -7738,7 +7738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5597:Middlewares/Third_Party/FatFs/src/ff.c **** if (!au && (au = pau / 2) != 0) continue; /* Adjust cluster size and retry */ 5598:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED; 5599:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 130 + ARM GAS /tmp/cczbjqIl.s page 130 5600:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -7798,7 +7798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5654:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(buf + BS_VolID, GET_FATTIME()); /* VSN */ 5655:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FATSz16, (WORD)sz_fat); /* FAT size [sector] */ 5656:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_DrvNum] = 0x80; /* Drive number (for int13) */ - ARM GAS /tmp/ccH7dUYB.s page 131 + ARM GAS /tmp/cczbjqIl.s page 131 5657:Middlewares/Third_Party/FatFs/src/ff.c **** buf[BS_BootSig] = 0x29; /* Extended boot signature */ @@ -7858,7 +7858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5711:Middlewares/Third_Party/FatFs/src/ff.c **** } else { 5712:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol >= 0x10000) { 5713:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x06; /* FAT12/16 (>=64KS) */ - ARM GAS /tmp/ccH7dUYB.s page 132 + ARM GAS /tmp/cczbjqIl.s page 132 5714:Middlewares/Third_Party/FatFs/src/ff.c **** } else { @@ -7918,7 +7918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5768:Middlewares/Third_Party/FatFs/src/ff.c **** 5769:Middlewares/Third_Party/FatFs/src/ff.c **** 5770:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(pdrv); - ARM GAS /tmp/ccH7dUYB.s page 133 + ARM GAS /tmp/cczbjqIl.s page 133 5771:Middlewares/Third_Party/FatFs/src/ff.c **** if (stat & STA_NOINIT) return FR_NOT_READY; @@ -7978,7 +7978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5825:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_STRFUNC 5826:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ 5827:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get a string from the file */ - ARM GAS /tmp/ccH7dUYB.s page 134 + ARM GAS /tmp/cczbjqIl.s page 134 5828:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ @@ -8038,7 +8038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5882:Middlewares/Third_Party/FatFs/src/ff.c **** } 5883:Middlewares/Third_Party/FatFs/src/ff.c **** c = ff_convert(c, 1); /* OEM -> Unicode */ 5884:Middlewares/Third_Party/FatFs/src/ff.c **** if (!c) c = '?'; - ARM GAS /tmp/ccH7dUYB.s page 135 + ARM GAS /tmp/cczbjqIl.s page 135 5885:Middlewares/Third_Party/FatFs/src/ff.c **** #endif @@ -8098,7 +8098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5939:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0xC0 | c >> 6); 5940:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* 16-bit */ 5941:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0xE0 | c >> 12); - ARM GAS /tmp/ccH7dUYB.s page 136 + ARM GAS /tmp/cczbjqIl.s page 136 5942:Middlewares/Third_Party/FatFs/src/ff.c **** pb->buf[i++] = (BYTE)(0x80 | (c >> 6 & 0x3F)); @@ -8158,7 +8158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1640 @ link register save eliminated. 5992:Middlewares/Third_Party/FatFs/src/ff.c **** pb->fp = fp; 1641 .loc 1 5992 2 view .LVU493 - ARM GAS /tmp/ccH7dUYB.s page 137 + ARM GAS /tmp/cczbjqIl.s page 137 1642 .loc 1 5992 9 is_stmt 0 view .LVU494 @@ -8218,7 +8218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1688 000c 1A78 ldrb r2, [r3] @ zero_extendqisi2 3224:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_REENTRANT 1689 .loc 1 3224 21 discriminator 2 view .LVU507 - ARM GAS /tmp/ccH7dUYB.s page 138 + ARM GAS /tmp/cczbjqIl.s page 138 1690 000e A2B1 cbz r2, .L151 @@ -8278,7 +8278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3241:Middlewares/Third_Party/FatFs/src/ff.c **** return res; 1729 .loc 1 3241 33 discriminator 1 view .LVU523 1730 002e F5E7 b .L148 - ARM GAS /tmp/ccH7dUYB.s page 139 + ARM GAS /tmp/cczbjqIl.s page 139 1731 .LVL188: @@ -8338,7 +8338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1776 .LVL197: 1777 .LFB1196: 886:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD wsect; - ARM GAS /tmp/ccH7dUYB.s page 140 + ARM GAS /tmp/cczbjqIl.s page 140 1778 .loc 1 886 1 is_stmt 1 view -0 @@ -8398,7 +8398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 894:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DISK_ERR; 1818 .loc 1 894 7 view .LVU550 1819 0016 0123 movs r3, #1 - ARM GAS /tmp/ccH7dUYB.s page 141 + ARM GAS /tmp/cczbjqIl.s page 141 1820 0018 3A46 mov r2, r7 @@ -8458,7 +8458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1858 003c 0123 movs r3, #1 1859 003e 3A46 mov r2, r7 1860 0040 4146 mov r1, r8 - ARM GAS /tmp/ccH7dUYB.s page 142 + ARM GAS /tmp/cczbjqIl.s page 142 1861 0042 6078 ldrb r0, [r4, #1] @ zero_extendqisi2 @@ -8518,7 +8518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1907 .loc 1 920 5 view .LVU576 1908 0004 8B42 cmp r3, r1 1909 0006 02D1 bne .L169 - ARM GAS /tmp/ccH7dUYB.s page 143 + ARM GAS /tmp/cczbjqIl.s page 143 917:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -8578,7 +8578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1950 .L165: 929:Middlewares/Third_Party/FatFs/src/ff.c **** } 1951 .loc 1 929 4 is_stmt 1 view .LVU591 - ARM GAS /tmp/ccH7dUYB.s page 144 + ARM GAS /tmp/cczbjqIl.s page 144 929:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -8638,7 +8638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1996 .loc 1 2973 6 is_stmt 0 view .LVU603 1997 0016 04F23220 addw r0, r4, #562 1998 001a FFF7FEFF bl ld_word - ARM GAS /tmp/ccH7dUYB.s page 145 + ARM GAS /tmp/cczbjqIl.s page 145 1999 .LVL220: @@ -8698,7 +8698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2039 005a 9842 cmp r0, r3 2040 005c 04D0 beq .L171 2982:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 146 + ARM GAS /tmp/cczbjqIl.s page 146 2041 .loc 1 2982 9 view .LVU618 @@ -8758,7 +8758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2091 .cfi_offset 14, -4 2092 0004 87B0 sub sp, sp, #28 2093 .LCFI19: - ARM GAS /tmp/ccH7dUYB.s page 147 + ARM GAS /tmp/cczbjqIl.s page 147 2094 .cfi_def_cfa_offset 64 @@ -8818,7 +8818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2128 0024 2C60 str r4, [r5] 3020:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type) { /* If the volume has been mounted */ 2129 .loc 1 3020 2 is_stmt 1 view .LVU645 - ARM GAS /tmp/ccH7dUYB.s page 148 + ARM GAS /tmp/cczbjqIl.s page 148 3020:Middlewares/Third_Party/FatFs/src/ff.c **** if (fs->fs_type) { /* If the volume has been mounted */ @@ -8878,7 +8878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2167 .loc 1 3035 2 is_stmt 1 view .LVU662 3035:Middlewares/Third_Party/FatFs/src/ff.c **** stat = disk_initialize(fs->drv); /* Initialize the physical drive */ 2168 .loc 1 3035 12 is_stmt 0 view .LVU663 - ARM GAS /tmp/ccH7dUYB.s page 149 + ARM GAS /tmp/cczbjqIl.s page 149 2169 0050 F8B2 uxtb r0, r7 @@ -8938,7 +8938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2207 0086 B3F5606F cmp r3, #3584 2208 008a 00F23981 bhi .L202 3045:Middlewares/Third_Party/FatFs/src/ff.c **** #endif - ARM GAS /tmp/ccH7dUYB.s page 150 + ARM GAS /tmp/cczbjqIl.s page 150 2209 .loc 1 3045 64 discriminator 2 view .LVU680 @@ -8998,7 +8998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2248 .LVL239: 3116:Middlewares/Third_Party/FatFs/src/ff.c **** 2249 .loc 1 3116 44 discriminator 1 view .LVU696 - ARM GAS /tmp/ccH7dUYB.s page 151 + ARM GAS /tmp/cczbjqIl.s page 151 2250 00bc B4F80C80 ldrh r8, [r4, #12] @@ -9058,7 +9058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2287 .loc 1 3123 6 view .LVU713 2288 00e8 012B cmp r3, #1 2289 00ea 00F21181 bhi .L210 - ARM GAS /tmp/ccH7dUYB.s page 152 + ARM GAS /tmp/cczbjqIl.s page 152 3124:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -9118,7 +9118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3132:Middlewares/Third_Party/FatFs/src/ff.c **** if (tsect == 0) tsect = ld_dword(fs->win + BPB_TotSec32); 2328 .loc 1 3132 11 is_stmt 0 view .LVU730 2329 0130 04F14700 add r0, r4, #71 - ARM GAS /tmp/ccH7dUYB.s page 153 + ARM GAS /tmp/cczbjqIl.s page 153 2330 0134 FFF7FEFF bl ld_word @@ -9178,7 +9178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2368 .loc 1 3140 6 is_stmt 0 view .LVU746 2369 0160 019A ldr r2, [sp, #4] 2370 0162 9A42 cmp r2, r3 - ARM GAS /tmp/ccH7dUYB.s page 154 + ARM GAS /tmp/cczbjqIl.s page 154 2371 0164 C0F0E680 bcc .L215 @@ -9238,7 +9238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2411 .L183: 3052:Middlewares/Third_Party/FatFs/src/ff.c **** pt = fs->win + (MBR_Table + i * SZ_PTE); 2412 .loc 1 3052 17 discriminator 1 view .LVU761 - ARM GAS /tmp/ccH7dUYB.s page 155 + ARM GAS /tmp/cczbjqIl.s page 155 2413 0198 032E cmp r6, #3 @@ -9298,7 +9298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2452 01bc 0AE0 b .L188 2453 .LVL268: 2454 .L226: - ARM GAS /tmp/ccH7dUYB.s page 156 + ARM GAS /tmp/cczbjqIl.s page 156 3060:Middlewares/Third_Party/FatFs/src/ff.c **** } while (LD2PT(vol) == 0 && fmt >= 2 && ++i < 4); @@ -9358,7 +9358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3148:Middlewares/Third_Party/FatFs/src/ff.c **** fs->volbase = bsect; /* Volume start sector */ 2496 .loc 1 3148 16 view .LVU790 2497 01ee C4F81890 str r9, [r4, #24] - ARM GAS /tmp/ccH7dUYB.s page 157 + ARM GAS /tmp/cczbjqIl.s page 157 3149:Middlewares/Third_Party/FatFs/src/ff.c **** fs->fatbase = bsect + nrsv; /* FAT start sector */ @@ -9418,7 +9418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2533 021a 09F00103 and r3, r9, #1 3161:Middlewares/Third_Party/FatFs/src/ff.c **** } 2534 .loc 1 3161 22 discriminator 2 view .LVU810 - ARM GAS /tmp/ccH7dUYB.s page 158 + ARM GAS /tmp/cczbjqIl.s page 158 2535 021e 03EB5203 add r3, r3, r2, lsr #1 @@ -9478,7 +9478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3192:Middlewares/Third_Party/FatFs/src/ff.c **** #if _USE_LFN == 1 2573 .loc 1 3192 9 view .LVU827 2574 024e 1380 strh r3, [r2] @ movhi - ARM GAS /tmp/ccH7dUYB.s page 159 + ARM GAS /tmp/cczbjqIl.s page 159 2575 0250 E380 strh r3, [r4, #6] @ movhi @@ -9538,7 +9538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2614 .LVL285: 3156:Middlewares/Third_Party/FatFs/src/ff.c **** } else { 2615 .loc 1 3156 11 view .LVU843 - ARM GAS /tmp/ccH7dUYB.s page 160 + ARM GAS /tmp/cczbjqIl.s page 160 2616 0280 CFE7 b .L193 @@ -9598,7 +9598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2658 02be 9842 cmp r0, r3 2659 02c0 BFD1 bne .L195 3177:Middlewares/Third_Party/FatFs/src/ff.c **** { - ARM GAS /tmp/ccH7dUYB.s page 161 + ARM GAS /tmp/cczbjqIl.s page 161 2660 .loc 1 3177 8 view .LVU856 @@ -9658,7 +9658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3015:Middlewares/Third_Party/FatFs/src/ff.c **** 2704 .loc 1 3015 18 discriminator 1 view .LVU867 2705 02f2 F9E7 b .L180 - ARM GAS /tmp/ccH7dUYB.s page 162 + ARM GAS /tmp/cczbjqIl.s page 162 2706 .LVL299: @@ -9718,7 +9718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3127:Middlewares/Third_Party/FatFs/src/ff.c **** 2752 .loc 1 3127 63 discriminator 3 view .LVU876 2753 0324 0D25 movs r5, #13 - ARM GAS /tmp/ccH7dUYB.s page 163 + ARM GAS /tmp/cczbjqIl.s page 163 2754 0326 DFE7 b .L180 @@ -9778,7 +9778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2799 .LFE1219: 2801 .section .text.put_fat,"ax",%progbits 2802 .align 1 - ARM GAS /tmp/ccH7dUYB.s page 164 + ARM GAS /tmp/cczbjqIl.s page 164 2803 .syntax unified @@ -9838,7 +9838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2846 001a 022B cmp r3, #2 2847 001c 49D0 beq .L234 2848 001e 032B cmp r3, #3 - ARM GAS /tmp/ccH7dUYB.s page 165 + ARM GAS /tmp/cczbjqIl.s page 165 2849 0020 60D0 beq .L235 @@ -9898,7 +9898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2887 .loc 1 1098 4 is_stmt 1 view .LVU913 1098:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; 2888 .loc 1 1098 7 is_stmt 0 view .LVU914 - ARM GAS /tmp/ccH7dUYB.s page 166 + ARM GAS /tmp/cczbjqIl.s page 166 2889 0052 15F00105 ands r5, r5, #1 @@ -9958,7 +9958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2927 0084 A389 ldrh r3, [r4, #12] 1102:Middlewares/Third_Party/FatFs/src/ff.c **** *p = (clst & 1) ? (BYTE)(val >> 4) : ((*p & 0xF0) | ((BYTE)(val >> 8) & 0x0F)); 2928 .loc 1 1102 21 view .LVU931 - ARM GAS /tmp/ccH7dUYB.s page 167 + ARM GAS /tmp/cczbjqIl.s page 167 2929 0086 B9FBF3F2 udiv r2, r9, r3 @@ -10018,7 +10018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; 2969 .loc 1 1108 56 view .LVU946 2970 00b6 5B08 lsrs r3, r3, #1 - ARM GAS /tmp/ccH7dUYB.s page 168 + ARM GAS /tmp/cczbjqIl.s page 168 1108:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; @@ -10078,7 +10078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; 3010 .loc 1 1118 49 view .LVU962 3011 00e6 8389 ldrh r3, [r0, #12] - ARM GAS /tmp/ccH7dUYB.s page 169 + ARM GAS /tmp/cczbjqIl.s page 169 1118:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; @@ -10138,7 +10138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3050 0118 3943 orrs r1, r1, r7 3051 .LVL340: 1123:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; - ARM GAS /tmp/ccH7dUYB.s page 170 + ARM GAS /tmp/cczbjqIl.s page 170 3052 .loc 1 1123 4 is_stmt 0 view .LVU979 @@ -10198,7 +10198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3098 0000 F8B5 push {r3, r4, r5, r6, r7, lr} 3099 .LCFI23: 3100 .cfi_def_cfa_offset 24 - ARM GAS /tmp/ccH7dUYB.s page 171 + ARM GAS /tmp/cczbjqIl.s page 171 3101 .cfi_offset 3, -24 @@ -10258,7 +10258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3140 .LVL349: 1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)]; 3141 .loc 1 1020 4 is_stmt 1 view .LVU1005 - ARM GAS /tmp/ccH7dUYB.s page 172 + ARM GAS /tmp/cczbjqIl.s page 172 1020:Middlewares/Third_Party/FatFs/src/ff.c **** wc = fs->win[bc++ % SS(fs)]; @@ -10318,7 +10318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3180 .loc 1 1022 8 view .LVU1021 3181 0052 1944 add r1, r1, r3 3182 0054 2846 mov r0, r5 - ARM GAS /tmp/ccH7dUYB.s page 173 + ARM GAS /tmp/cczbjqIl.s page 173 3183 0056 FFF7FEFF bl move_window @@ -10378,7 +10378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs)); 3223 .loc 1 1028 47 view .LVU1036 3224 0084 AB89 ldrh r3, [r5, #12] - ARM GAS /tmp/ccH7dUYB.s page 174 + ARM GAS /tmp/cczbjqIl.s page 174 1028:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_word(fs->win + clst * 2 % SS(fs)); @@ -10438,7 +10438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3263 .loc 1 1033 54 view .LVU1052 3264 00b2 9B08 lsrs r3, r3, #2 1033:Middlewares/Third_Party/FatFs/src/ff.c **** val = ld_dword(fs->win + clst * 4 % SS(fs)) & 0x0FFFFFFF; - ARM GAS /tmp/ccH7dUYB.s page 175 + ARM GAS /tmp/cczbjqIl.s page 175 3265 .loc 1 1033 44 view .LVU1053 @@ -10498,7 +10498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1012:Middlewares/Third_Party/FatFs/src/ff.c **** 3306 .loc 1 1012 7 view .LVU1067 3307 00e2 0120 movs r0, #1 - ARM GAS /tmp/ccH7dUYB.s page 176 + ARM GAS /tmp/cczbjqIl.s page 176 3308 .LVL377: @@ -10558,7 +10558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3354 .cfi_offset 4, -24 3355 .cfi_offset 5, -20 3356 .cfi_offset 6, -16 - ARM GAS /tmp/ccH7dUYB.s page 177 + ARM GAS /tmp/cczbjqIl.s page 177 3357 .cfi_offset 7, -12 @@ -10618,7 +10618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3394 .L261: 1489:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) return FR_INT_ERR; /* Is index out of range? */ 3395 .loc 1 1489 2 view .LVU1095 - ARM GAS /tmp/ccH7dUYB.s page 178 + ARM GAS /tmp/cczbjqIl.s page 178 1489:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs / SZDIRE >= fs->n_rootdir) return FR_INT_ERR; /* Is index out of range? */ @@ -10678,7 +10678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3431 0052 B8F80C20 ldrh r2, [r8, #12] 1506:Middlewares/Third_Party/FatFs/src/ff.c **** 3432 .loc 1 1506 27 view .LVU1115 - ARM GAS /tmp/ccH7dUYB.s page 179 + ARM GAS /tmp/cczbjqIl.s page 179 3433 0056 B6FBF2F1 udiv r1, r6, r2 @@ -10738,7 +10738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3471 .loc 1 1498 7 is_stmt 0 view .LVU1131 3472 0086 0128 cmp r0, #1 3473 0088 14D9 bls .L269 - ARM GAS /tmp/ccH7dUYB.s page 180 + ARM GAS /tmp/cczbjqIl.s page 180 1498:Middlewares/Third_Party/FatFs/src/ff.c **** ofs -= csz; @@ -10798,7 +10798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3515 .LVL399: 1490:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = fs->dirbase; 3516 .loc 1 1490 45 discriminator 1 view .LVU1145 - ARM GAS /tmp/ccH7dUYB.s page 181 + ARM GAS /tmp/cczbjqIl.s page 181 3517 00ae F9E7 b .L259 @@ -10858,7 +10858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3564 .cfi_offset 4, -24 3565 .cfi_offset 5, -20 3566 .cfi_offset 6, -16 - ARM GAS /tmp/ccH7dUYB.s page 182 + ARM GAS /tmp/cczbjqIl.s page 182 3567 .cfi_offset 7, -12 @@ -10918,7 +10918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1366:Middlewares/Third_Party/FatFs/src/ff.c **** if (cs < 2) return 1; /* Invalid FAT value */ 3605 .loc 1 1366 8 view .LVU1171 3606 0026 0346 mov r3, r0 - ARM GAS /tmp/ccH7dUYB.s page 183 + ARM GAS /tmp/cczbjqIl.s page 183 3607 .LVL413: @@ -10978,7 +10978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3646 004e 78B1 cbz r0, .L279 1409:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */ 3647 .loc 1 1409 4 is_stmt 1 view .LVU1187 - ARM GAS /tmp/ccH7dUYB.s page 184 + ARM GAS /tmp/cczbjqIl.s page 184 1409:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == scl) return 0; /* No free cluster */ @@ -11038,7 +11038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1412:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK && clst != 0) { 3687 .loc 1 1412 9 view .LVU1203 3688 0078 FFF7FEFF bl put_fat - ARM GAS /tmp/ccH7dUYB.s page 185 + ARM GAS /tmp/cczbjqIl.s page 185 3689 .LVL423: @@ -11098,7 +11098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1421:Middlewares/Third_Party/FatFs/src/ff.c **** } else { 3727 .loc 1 1421 3 is_stmt 1 view .LVU1220 1421:Middlewares/Third_Party/FatFs/src/ff.c **** } else { - ARM GAS /tmp/ccH7dUYB.s page 186 + ARM GAS /tmp/cczbjqIl.s page 186 3728 .loc 1 1421 5 is_stmt 0 view .LVU1221 @@ -11158,7 +11158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3771 .L287: 1405:Middlewares/Third_Party/FatFs/src/ff.c **** } 3772 .loc 1 1405 27 discriminator 1 view .LVU1233 - ARM GAS /tmp/ccH7dUYB.s page 187 + ARM GAS /tmp/cczbjqIl.s page 187 3773 00ca 0023 movs r3, #0 @@ -11218,7 +11218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3819 .loc 1 1287 2 is_stmt 1 view .LVU1243 1287:Middlewares/Third_Party/FatFs/src/ff.c **** 3820 .loc 1 1287 5 is_stmt 0 view .LVU1244 - ARM GAS /tmp/ccH7dUYB.s page 188 + ARM GAS /tmp/cczbjqIl.s page 188 3821 0006 0129 cmp r1, #1 @@ -11278,7 +11278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3860 .loc 1 1297 9 is_stmt 0 view .LVU1259 3861 002c 2146 mov r1, r4 3862 002e 3046 mov r0, r6 - ARM GAS /tmp/ccH7dUYB.s page 189 + ARM GAS /tmp/cczbjqIl.s page 189 3863 0030 FFF7FEFF bl get_fat @@ -11338,7 +11338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++; 3900 .loc 1 1305 36 view .LVU1277 3901 0054 911E subs r1, r2, #2 - ARM GAS /tmp/ccH7dUYB.s page 190 + ARM GAS /tmp/cczbjqIl.s page 190 1305:Middlewares/Third_Party/FatFs/src/ff.c **** fs->free_clst++; @@ -11398,7 +11398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3943 0078 F9E7 b .L295 3944 .LVL458: 3945 .L303: - ARM GAS /tmp/ccH7dUYB.s page 191 + ARM GAS /tmp/cczbjqIl.s page 191 1300:Middlewares/Third_Party/FatFs/src/ff.c **** if (!_FS_EXFAT || fs->fs_type != FS_EXFAT) { @@ -11458,7 +11458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3990 .loc 1 2425 5 is_stmt 0 view .LVU1302 3991 000e 20B9 cbnz r0, .L306 2426:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; - ARM GAS /tmp/ccH7dUYB.s page 192 + ARM GAS /tmp/cczbjqIl.s page 192 3992 .loc 1 2426 3 is_stmt 1 view .LVU1303 @@ -11518,7 +11518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1525:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY 4037 .loc 1 1525 9 is_stmt 0 view .LVU1315 4038 0004 0668 ldr r6, [r0] - ARM GAS /tmp/ccH7dUYB.s page 193 + ARM GAS /tmp/cczbjqIl.s page 193 4039 .LVL465: @@ -11578,7 +11578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4076 .loc 1 1537 4 is_stmt 1 view .LVU1332 1537:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE; 4077 .loc 1 1537 26 is_stmt 0 view .LVU1333 - ARM GAS /tmp/ccH7dUYB.s page 194 + ARM GAS /tmp/cczbjqIl.s page 194 4078 002e 3389 ldrh r3, [r6, #8] @@ -11638,7 +11638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4116 .LVL473: 1538:Middlewares/Third_Party/FatFs/src/ff.c **** } 4117 .loc 1 1538 26 view .LVU1350 - ARM GAS /tmp/ccH7dUYB.s page 195 + ARM GAS /tmp/cczbjqIl.s page 195 4118 0056 F9E7 b .L309 @@ -11698,7 +11698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1548:Middlewares/Third_Party/FatFs/src/ff.c **** dp->sect = 0; return FR_NO_FILE; 4155 .loc 1 1548 9 is_stmt 0 view .LVU1368 4156 007e 8FB1 cbz r7, .L327 - ARM GAS /tmp/ccH7dUYB.s page 196 + ARM GAS /tmp/cczbjqIl.s page 196 1551:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 0) return FR_DENIED; /* No free cluster */ @@ -11758,7 +11758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4194 .loc 1 1549 16 is_stmt 0 view .LVU1385 4195 00a4 0023 movs r3, #0 4196 00a6 EB61 str r3, [r5, #28] - ARM GAS /tmp/ccH7dUYB.s page 197 + ARM GAS /tmp/cczbjqIl.s page 197 1549:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -11818,7 +11818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4236 00d2 F8B9 cbnz r0, .L324 1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; 4237 .loc 1 1559 72 is_stmt 1 discriminator 2 view .LVU1401 - ARM GAS /tmp/ccH7dUYB.s page 198 + ARM GAS /tmp/cczbjqIl.s page 198 1559:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; @@ -11878,7 +11878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4278 00fc 0420 movs r0, #4 4279 .LVL493: 1531:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 199 + ARM GAS /tmp/cczbjqIl.s page 199 4280 .loc 1 1531 105 discriminator 3 view .LVU1416 @@ -11938,7 +11938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4323 .LFE1206: 4325 .section .text.dir_find,"ax",%progbits 4326 .align 1 - ARM GAS /tmp/ccH7dUYB.s page 200 + ARM GAS /tmp/cczbjqIl.s page 200 4327 .syntax unified @@ -11998,7 +11998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2277:Middlewares/Third_Party/FatFs/src/ff.c **** } while (res == FR_OK); 4370 .loc 1 2277 9 is_stmt 0 view .LVU1440 4371 0014 0021 movs r1, #0 - ARM GAS /tmp/ccH7dUYB.s page 201 + ARM GAS /tmp/cczbjqIl.s page 201 4372 0016 2046 mov r0, r4 @@ -12058,7 +12058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4410 .loc 1 2274 16 view .LVU1456 4411 003c A371 strb r3, [r4, #6] 4412 .LVL516: - ARM GAS /tmp/ccH7dUYB.s page 202 + ARM GAS /tmp/cczbjqIl.s page 202 2275:Middlewares/Third_Party/FatFs/src/ff.c **** #endif @@ -12118,7 +12118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4460 .cfi_def_cfa_offset 24 4461 0004 0446 mov r4, r0 4462 0006 0191 str r1, [sp, #4] - ARM GAS /tmp/ccH7dUYB.s page 203 + ARM GAS /tmp/cczbjqIl.s page 203 2818:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE ns; @@ -12178,7 +12178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4500 .L339: 2855:Middlewares/Third_Party/FatFs/src/ff.c **** res = create_name(dp, &path); /* Get a segment name of the path */ 4501 .loc 1 2855 3 is_stmt 1 view .LVU1483 - ARM GAS /tmp/ccH7dUYB.s page 204 + ARM GAS /tmp/cczbjqIl.s page 204 2856:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK) break; @@ -12238,7 +12238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4538 .loc 1 2888 32 is_stmt 0 view .LVU1501 4539 004e 05F13401 add r1, r5, #52 2888:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 205 + ARM GAS /tmp/cczbjqIl.s page 205 4540 .loc 1 2888 44 view .LVU1502 @@ -12298,7 +12298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2894:Middlewares/Third_Party/FatFs/src/ff.c **** 4580 .loc 1 2894 1 is_stmt 0 view .LVU1517 4581 007a 1846 mov r0, r3 - ARM GAS /tmp/ccH7dUYB.s page 206 + ARM GAS /tmp/cczbjqIl.s page 206 4582 007c 03B0 add sp, sp, #12 @@ -12358,7 +12358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4629 .cfi_offset 4, -20 4630 .cfi_offset 5, -16 4631 .cfi_offset 6, -12 - ARM GAS /tmp/ccH7dUYB.s page 207 + ARM GAS /tmp/cczbjqIl.s page 207 4632 .cfi_offset 7, -8 @@ -12418,7 +12418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4671 0020 0246 mov r2, r0 4672 0022 70B9 cbnz r0, .L348 4673 .LVL545: - ARM GAS /tmp/ccH7dUYB.s page 208 + ARM GAS /tmp/cczbjqIl.s page 208 4674 .L350: @@ -12478,7 +12478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 1619:Middlewares/Third_Party/FatFs/src/ff.c **** } 4713 .loc 1 1619 2 is_stmt 1 view .LVU1557 1620:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 209 + ARM GAS /tmp/cczbjqIl.s page 209 4714 .loc 1 1620 1 is_stmt 0 view .LVU1558 @@ -12538,7 +12538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2371:Middlewares/Third_Party/FatFs/src/ff.c **** res = move_window(fs, dp->sect); 4760 .loc 1 2371 5 is_stmt 0 view .LVU1569 4761 000c 0546 mov r5, r0 - ARM GAS /tmp/ccH7dUYB.s page 210 + ARM GAS /tmp/cczbjqIl.s page 210 4762 000e 08B1 cbz r0, .L359 @@ -12598,7 +12598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4804 .LFE1212: 4806 .section .text.dir_read,"ax",%progbits 4807 .align 1 - ARM GAS /tmp/ccH7dUYB.s page 211 + ARM GAS /tmp/cczbjqIl.s page 211 4808 .syntax unified @@ -12658,7 +12658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4851 0010 FFF7FEFF bl dir_next 4852 .LVL568: 2194:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 212 + ARM GAS /tmp/cczbjqIl.s page 212 4853 .loc 1 2194 3 is_stmt 1 view .LVU1594 @@ -12718,7 +12718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 2188:Middlewares/Third_Party/FatFs/src/ff.c **** break; 4890 .loc 1 2188 4 is_stmt 1 view .LVU1612 2188:Middlewares/Third_Party/FatFs/src/ff.c **** break; - ARM GAS /tmp/ccH7dUYB.s page 213 + ARM GAS /tmp/cczbjqIl.s page 213 4891 .loc 1 2188 7 is_stmt 0 view .LVU1613 @@ -12778,7 +12778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4934 .align 1 4935 .syntax unified 4936 .thumb - ARM GAS /tmp/ccH7dUYB.s page 214 + ARM GAS /tmp/cczbjqIl.s page 214 4937 .thumb_func @@ -12838,7 +12838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4979 .loc 1 968 6 discriminator 1 view .LVU1638 4980 001c 00B1 cbz r0, .L369 968:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 215 + ARM GAS /tmp/cczbjqIl.s page 215 4981 .loc 1 968 56 discriminator 1 view .LVU1639 @@ -12898,7 +12898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5023 0056 6169 ldr r1, [r4, #20] 5024 0058 04F50770 add r0, r4, #540 5025 005c FFF7FEFF bl st_dword - ARM GAS /tmp/ccH7dUYB.s page 216 + ARM GAS /tmp/cczbjqIl.s page 216 5026 .LVL587: @@ -12958,7 +12958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5072 .loc 1 3265 1 is_stmt 0 view .LVU1661 5073 0000 70B5 push {r4, r5, r6, lr} 5074 .LCFI38: - ARM GAS /tmp/ccH7dUYB.s page 217 + ARM GAS /tmp/cczbjqIl.s page 217 5075 .cfi_def_cfa_offset 16 @@ -13018,7 +13018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3279:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 5114 .loc 1 3279 3 is_stmt 0 view .LVU1677 5115 0020 FFF7FEFF bl clear_lock - ARM GAS /tmp/ccH7dUYB.s page 218 + ARM GAS /tmp/cczbjqIl.s page 218 5116 .LVL595: @@ -13078,7 +13078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5155 .cfi_remember_state 5156 .cfi_def_cfa_offset 16 5157 @ sp needed - ARM GAS /tmp/ccH7dUYB.s page 219 + ARM GAS /tmp/cczbjqIl.s page 219 5158 004c 70BD pop {r4, r5, r6, pc} @@ -13138,7 +13138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5207 .cfi_offset 8, -12 5208 .cfi_offset 9, -8 5209 .cfi_offset 14, -4 - ARM GAS /tmp/ccH7dUYB.s page 220 + ARM GAS /tmp/cczbjqIl.s page 220 5210 0004 91B0 sub sp, sp, #68 @@ -13198,7 +13198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5247 .loc 1 3499 31 is_stmt 0 discriminator 1 view .LVU1716 5248 0024 0023 movs r3, #0 5249 0026 3360 str r3, [r6] - ARM GAS /tmp/ccH7dUYB.s page 221 + ARM GAS /tmp/cczbjqIl.s page 221 5250 .LVL607: @@ -13258,7 +13258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5290 004c 14BF ite ne 5291 004e 0121 movne r1, #1 5292 0050 0021 moveq r1, #0 - ARM GAS /tmp/ccH7dUYB.s page 222 + ARM GAS /tmp/cczbjqIl.s page 222 5293 0052 04A8 add r0, sp, #16 @@ -13318,7 +13318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3392:Middlewares/Third_Party/FatFs/src/ff.c **** st_dword(dj.dir + DIR_ModTime, dw); /* Set modified time */ 5333 .loc 1 3392 6 is_stmt 1 view .LVU1745 5334 007c 0146 mov r1, r0 - ARM GAS /tmp/ccH7dUYB.s page 223 + ARM GAS /tmp/cczbjqIl.s page 223 5335 007e 0C98 ldr r0, [sp, #48] @@ -13378,7 +13378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3398:Middlewares/Third_Party/FatFs/src/ff.c **** 5378 .loc 1 3398 6 view .LVU1757 3398:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 224 + ARM GAS /tmp/cczbjqIl.s page 224 5379 .loc 1 3398 16 is_stmt 0 view .LVU1758 @@ -13438,7 +13438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3405:Middlewares/Third_Party/FatFs/src/ff.c **** } 5419 .loc 1 3405 22 view .LVU1773 5420 00e8 039B ldr r3, [sp, #12] - ARM GAS /tmp/ccH7dUYB.s page 225 + ARM GAS /tmp/cczbjqIl.s page 225 5421 00ea 1C61 str r4, [r3, #16] @@ -13498,7 +13498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5462 0114 AAD0 beq .L393 3360:Middlewares/Third_Party/FatFs/src/ff.c **** } 5463 .loc 1 3360 36 discriminator 1 view .LVU1787 - ARM GAS /tmp/ccH7dUYB.s page 226 + ARM GAS /tmp/cczbjqIl.s page 226 5464 0116 0825 movs r5, #8 @@ -13558,7 +13558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3423:Middlewares/Third_Party/FatFs/src/ff.c **** mode |= FA_MODIFIED; 5503 .loc 1 3423 7 is_stmt 0 view .LVU1803 5504 0140 17F0080F tst r7, #8 - ARM GAS /tmp/ccH7dUYB.s page 227 + ARM GAS /tmp/cczbjqIl.s page 227 5505 0144 01D0 beq .L395 @@ -13618,7 +13618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5543 .loc 1 3444 3 is_stmt 1 view .LVU1819 3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize); 5544 .loc 1 3456 5 view .LVU1820 - ARM GAS /tmp/ccH7dUYB.s page 228 + ARM GAS /tmp/cczbjqIl.s page 228 3456:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.objsize = ld_dword(dj.dir + DIR_FileSize); @@ -13678,7 +13678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3466:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = 0; /* Set file pointer top of the file */ 5581 .loc 1 3466 4 is_stmt 1 view .LVU1839 3466:Middlewares/Third_Party/FatFs/src/ff.c **** fp->fptr = 0; /* Set file pointer top of the file */ - ARM GAS /tmp/ccH7dUYB.s page 229 + ARM GAS /tmp/cczbjqIl.s page 229 5582 .loc 1 3466 13 is_stmt 0 view .LVU1840 @@ -13738,7 +13738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5619 01bc B168 ldr r1, [r6, #8] 5620 .LVL654: 3476:Middlewares/Third_Party/FatFs/src/ff.c **** clst = get_fat(&fp->obj, clst); - ARM GAS /tmp/ccH7dUYB.s page 230 + ARM GAS /tmp/cczbjqIl.s page 230 5621 .loc 1 3476 5 is_stmt 1 view .LVU1858 @@ -13798,7 +13798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5660 .loc 1 3479 34 discriminator 1 view .LVU1873 5661 01e2 0125 movs r5, #1 5662 .LVL660: - ARM GAS /tmp/ccH7dUYB.s page 231 + ARM GAS /tmp/cczbjqIl.s page 231 3479:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -13858,7 +13858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY 5701 .loc 1 3486 21 view .LVU1890 5702 020e 0244 add r2, r2, r0 - ARM GAS /tmp/ccH7dUYB.s page 232 + ARM GAS /tmp/cczbjqIl.s page 232 3486:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY @@ -13918,7 +13918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5743 0230 FAE6 b .L387 5744 .cfi_endproc 5745 .LFE1222: - ARM GAS /tmp/ccH7dUYB.s page 233 + ARM GAS /tmp/cczbjqIl.s page 233 5747 .section .text.f_read,"ax",%progbits @@ -13978,7 +13978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3526:Middlewares/Third_Party/FatFs/src/ff.c **** res = validate(&fp->obj, &fs); /* Check validity of the file object */ 5792 .loc 1 3526 6 view .LVU1915 5793 0010 C8F80030 str r3, [r8] - ARM GAS /tmp/ccH7dUYB.s page 234 + ARM GAS /tmp/cczbjqIl.s page 234 3527:Middlewares/Third_Party/FatFs/src/ff.c **** if (res != FR_OK || (res = (FRESULT)fp->err) != FR_OK) LEAVE_FF(fs, res); /* Check validity */ @@ -14038,7 +14038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5832 0040 2E46 mov r6, r5 5833 .LVL682: 3531:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 235 + ARM GAS /tmp/cczbjqIl.s page 235 5834 .loc 1 3531 5 view .LVU1932 @@ -14098,7 +14098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5874 .loc 1 3551 29 discriminator 1 view .LVU1946 5875 0070 CDF804A0 str r10, [sp, #4] 5876 .LVL689: - ARM GAS /tmp/ccH7dUYB.s page 236 + ARM GAS /tmp/cczbjqIl.s page 236 3551:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */ @@ -14158,7 +14158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5916 009c 5345 cmp r3, r10 5917 009e F5D2 bcs .L437 3570:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 237 + ARM GAS /tmp/cczbjqIl.s page 237 5918 .loc 1 3570 6 is_stmt 1 view .LVU1962 @@ -14218,7 +14218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5958 00d4 C4F82090 str r9, [r4, #32] 5959 .LVL698: 5960 .L426: - ARM GAS /tmp/ccH7dUYB.s page 238 + ARM GAS /tmp/cczbjqIl.s page 238 3590:Middlewares/Third_Party/FatFs/src/ff.c **** if (rcnt > btr) rcnt = btr; /* Clip it by btr if needed */ @@ -14278,7 +14278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */ 6000 .loc 1 3534 36 view .LVU1992 6001 0104 D8F80030 ldr r3, [r8] - ARM GAS /tmp/ccH7dUYB.s page 239 + ARM GAS /tmp/cczbjqIl.s page 239 3534:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) == 0) { /* On the sector boundary? */ @@ -14338,7 +14338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6039 .loc 1 3538 8 is_stmt 0 view .LVU2009 6040 0132 0029 cmp r1, #0 6041 0134 86D1 bne .L428 - ARM GAS /tmp/ccH7dUYB.s page 240 + ARM GAS /tmp/cczbjqIl.s page 240 3539:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* Middle or end of the file */ @@ -14398,7 +14398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3557:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */ 6079 .loc 1 3557 4 is_stmt 1 view .LVU2027 3557:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Read maximum contiguous sectors directly */ - ARM GAS /tmp/ccH7dUYB.s page 241 + ARM GAS /tmp/cczbjqIl.s page 241 6080 .loc 1 3557 15 is_stmt 0 view .LVU2028 @@ -14458,7 +14458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6119 0190 CDF804A0 str r10, [sp, #4] 6120 .LVL714: 6121 .L423: - ARM GAS /tmp/ccH7dUYB.s page 242 + ARM GAS /tmp/cczbjqIl.s page 242 3601:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -14518,7 +14518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3585:Middlewares/Third_Party/FatFs/src/ff.c **** } 6164 .loc 1 3585 57 is_stmt 1 discriminator 1 view .LVU2056 6165 01c4 4FF0010A mov r10, #1 - ARM GAS /tmp/ccH7dUYB.s page 243 + ARM GAS /tmp/cczbjqIl.s page 243 6166 .LVL720: @@ -14578,7 +14578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6215 0006 0446 mov r4, r0 6216 0008 0F46 mov r7, r1 6217 000a 1546 mov r5, r2 - ARM GAS /tmp/ccH7dUYB.s page 244 + ARM GAS /tmp/cczbjqIl.s page 244 6218 000c 9846 mov r8, r3 @@ -14638,7 +14638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6254 .loc 1 3628 5 view .LVU2081 6255 002a 13F0020F tst r3, #2 6256 002e 00F0EC80 beq .L482 - ARM GAS /tmp/ccH7dUYB.s page 245 + ARM GAS /tmp/cczbjqIl.s page 245 3631:Middlewares/Third_Party/FatFs/src/ff.c **** btw = (UINT)(0xFFFFFFFF - (DWORD)fp->fptr); @@ -14698,7 +14698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6294 .loc 1 3657 5 view .LVU2098 3657:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; /* Update current cluster */ 6295 .loc 1 3657 8 is_stmt 0 view .LVU2099 - ARM GAS /tmp/ccH7dUYB.s page 246 + ARM GAS /tmp/cczbjqIl.s page 246 6296 0054 B0F1FF3F cmp r0, #-1 @@ -14758,7 +14758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6332 .loc 1 3671 9 is_stmt 0 view .LVU2117 6333 007c B144 add r9, r9, r6 6334 .LVL736: - ARM GAS /tmp/ccH7dUYB.s page 247 + ARM GAS /tmp/cczbjqIl.s page 247 3672:Middlewares/Third_Party/FatFs/src/ff.c **** if (cc) { /* Write maximum contiguous sectors directly */ @@ -14818,7 +14818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3677:Middlewares/Third_Party/FatFs/src/ff.c **** #if _FS_MINIMIZE <= 2 6373 .loc 1 3677 57 is_stmt 1 discriminator 1 view .LVU2134 6374 00b2 CDF804A0 str r10, [sp, #4] - ARM GAS /tmp/ccH7dUYB.s page 248 + ARM GAS /tmp/cczbjqIl.s page 248 6375 .LVL741: @@ -14878,7 +14878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY; 6419 .loc 1 3665 5 is_stmt 1 view .LVU2145 3665:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY; - ARM GAS /tmp/ccH7dUYB.s page 249 + ARM GAS /tmp/cczbjqIl.s page 249 6420 .loc 1 3665 9 is_stmt 0 view .LVU2146 @@ -14938,7 +14938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs)); 6461 .loc 1 3685 11 is_stmt 0 view .LVU2160 6462 011c 236A ldr r3, [r4, #32] - ARM GAS /tmp/ccH7dUYB.s page 250 + ARM GAS /tmp/cczbjqIl.s page 250 3685:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(fp->buf, wbuff + ((fp->sect - sect) * SS(fs)), SS(fs)); @@ -14998,7 +14998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6502 014c 4B45 cmp r3, r9 6503 014e 03D0 beq .L478 3701:Middlewares/Third_Party/FatFs/src/ff.c **** disk_read(fs->drv, fp->buf, sect, 1) != RES_OK) { - ARM GAS /tmp/ccH7dUYB.s page 251 + ARM GAS /tmp/cczbjqIl.s page 251 6504 .loc 1 3701 7 view .LVU2176 @@ -15058,7 +15058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6542 0176 3246 mov r2, r6 6543 0178 3946 mov r1, r7 6544 017a 1844 add r0, r0, r3 - ARM GAS /tmp/ccH7dUYB.s page 252 + ARM GAS /tmp/cczbjqIl.s page 252 6545 017c FFF7FEFF bl mem_cpy @@ -15118,7 +15118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6583 .loc 1 3637 9 is_stmt 0 view .LVU2208 6584 01a8 A169 ldr r1, [r4, #24] 3637:Middlewares/Third_Party/FatFs/src/ff.c **** csect = (UINT)(fp->fptr / SS(fs)) & (fs->csize - 1); /* Sector offset in the cluster */ - ARM GAS /tmp/ccH7dUYB.s page 253 + ARM GAS /tmp/cczbjqIl.s page 253 6585 .loc 1 3637 18 view .LVU2209 @@ -15178,7 +15178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6622 01d6 2046 mov r0, r4 6623 .LVL767: 3643:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 254 + ARM GAS /tmp/cczbjqIl.s page 254 6624 .loc 1 3643 14 view .LVU2227 @@ -15238,7 +15238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6666 .LVL775: 3628:Middlewares/Third_Party/FatFs/src/ff.c **** 6667 .loc 1 3628 30 discriminator 1 view .LVU2240 - ARM GAS /tmp/ccH7dUYB.s page 255 + ARM GAS /tmp/cczbjqIl.s page 255 6668 020e 52E7 b .L459 @@ -15298,7 +15298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5960:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 6714 .loc 1 5960 2 is_stmt 1 view .LVU2251 5960:Middlewares/Third_Party/FatFs/src/ff.c **** #endif - ARM GAS /tmp/ccH7dUYB.s page 256 + ARM GAS /tmp/cczbjqIl.s page 256 6715 .loc 1 5960 11 is_stmt 0 view .LVU2252 @@ -15358,7 +15358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6757 .LVL785: 6758 .L500: 5964:Middlewares/Third_Party/FatFs/src/ff.c **** i = (bw == (UINT)i) ? 0 : -1; - ARM GAS /tmp/ccH7dUYB.s page 257 + ARM GAS /tmp/cczbjqIl.s page 257 6759 .loc 1 5964 3 is_stmt 1 view .LVU2265 @@ -15418,7 +15418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6803 .loc 1 5979 2 view .LVU2277 5979:Middlewares/Third_Party/FatFs/src/ff.c **** && f_write(pb->fp, pb->buf, (UINT)pb->idx, &nw) == FR_OK 6804 .loc 1 5979 11 is_stmt 0 view .LVU2278 - ARM GAS /tmp/ccH7dUYB.s page 258 + ARM GAS /tmp/cczbjqIl.s page 258 6805 0000 4268 ldr r2, [r0, #4] @@ -15478,7 +15478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6847 .LVL793: 6848 .L504: 6849 .LCFI61: - ARM GAS /tmp/ccH7dUYB.s page 259 + ARM GAS /tmp/cczbjqIl.s page 259 6850 .cfi_def_cfa_offset 0 @@ -15538,7 +15538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 3737:Middlewares/Third_Party/FatFs/src/ff.c **** DWORD tm; 6900 .loc 1 3737 2 view .LVU2297 3738:Middlewares/Third_Party/FatFs/src/ff.c **** BYTE *dir; - ARM GAS /tmp/ccH7dUYB.s page 260 + ARM GAS /tmp/cczbjqIl.s page 260 6901 .loc 1 3738 2 view .LVU2298 @@ -15598,7 +15598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6938 002a 78B1 cbz r0, .L517 6939 .LVL802: 6940 .L512: - ARM GAS /tmp/ccH7dUYB.s page 261 + ARM GAS /tmp/cczbjqIl.s page 261 3802:Middlewares/Third_Party/FatFs/src/ff.c **** @@ -15658,7 +15658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6982 .loc 1 3789 6 is_stmt 1 view .LVU2328 6983 0056 A268 ldr r2, [r4, #8] 6984 0058 3146 mov r1, r6 - ARM GAS /tmp/ccH7dUYB.s page 262 + ARM GAS /tmp/cczbjqIl.s page 262 6985 005a 2068 ldr r0, [r4] @@ -15718,7 +15718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7027 .cfi_endproc 7028 .LFE1225: 7030 .section .text.f_close,"ax",%progbits - ARM GAS /tmp/ccH7dUYB.s page 263 + ARM GAS /tmp/cczbjqIl.s page 263 7031 .align 1 @@ -15778,7 +15778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7076 .cfi_restore_state 3825:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { 7077 .loc 1 3825 3 is_stmt 1 view .LVU2351 - ARM GAS /tmp/ccH7dUYB.s page 264 + ARM GAS /tmp/cczbjqIl.s page 264 3825:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { @@ -15838,7 +15838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7122 .cfi_def_cfa_offset 36 7123 .cfi_offset 4, -36 7124 .cfi_offset 5, -32 - ARM GAS /tmp/ccH7dUYB.s page 265 + ARM GAS /tmp/cczbjqIl.s page 265 7125 .cfi_offset 6, -28 @@ -15898,7 +15898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4024:Middlewares/Third_Party/FatFs/src/ff.c **** if (ofs == CREATE_LINKMAP) { /* Create CLMT */ 7163 .loc 1 4024 5 view .LVU2380 7164 001a 002B cmp r3, #0 - ARM GAS /tmp/ccH7dUYB.s page 266 + ARM GAS /tmp/cczbjqIl.s page 266 7165 001c 00F08E80 beq .L526 @@ -15958,7 +15958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7205 .loc 1 4027 9 view .LVU2394 7206 003e 58F804BB ldr fp, [r8], #4 7207 .LVL829: - ARM GAS /tmp/ccH7dUYB.s page 267 + ARM GAS /tmp/cczbjqIl.s page 267 4027:Middlewares/Third_Party/FatFs/src/ff.c **** cl = fp->obj.sclust; /* Origin of the chain */ @@ -16018,7 +16018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7243 005c 2046 mov r0, r4 7244 005e FFF7FEFF bl get_fat 7245 .LVL835: - ARM GAS /tmp/ccH7dUYB.s page 268 + ARM GAS /tmp/cczbjqIl.s page 268 4035:Middlewares/Third_Party/FatFs/src/ff.c **** if (cl <= 1) ABORT(fs, FR_INT_ERR); @@ -16078,7 +16078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4042:Middlewares/Third_Party/FatFs/src/ff.c **** } 7283 .loc 1 4042 17 is_stmt 1 view .LVU2431 4042:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 269 + ARM GAS /tmp/cczbjqIl.s page 269 7284 .loc 1 4042 21 is_stmt 0 view .LVU2432 @@ -16138,7 +16138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4044:Middlewares/Third_Party/FatFs/src/ff.c **** if (ulen <= tlen) { 7324 .loc 1 4044 15 view .LVU2447 7325 00a2 C3F80090 str r9, [r3] - ARM GAS /tmp/ccH7dUYB.s page 270 + ARM GAS /tmp/cczbjqIl.s page 270 4045:Middlewares/Third_Party/FatFs/src/ff.c **** *tbl = 0; /* Terminate table */ @@ -16198,7 +16198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */ 7364 .loc 1 4057 53 view .LVU2464 7365 00da 013A subs r2, r2, #1 - ARM GAS /tmp/ccH7dUYB.s page 271 + ARM GAS /tmp/cczbjqIl.s page 271 4057:Middlewares/Third_Party/FatFs/src/ff.c **** if (fp->fptr % SS(fs) && dsc != fp->sect) { /* Refill sector cache if needed */ @@ -16258,7 +16258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7404 .loc 1 4068 15 is_stmt 0 view .LVU2480 7405 010c 2562 str r5, [r4, #32] 7406 010e 91E7 b .L525 - ARM GAS /tmp/ccH7dUYB.s page 272 + ARM GAS /tmp/cczbjqIl.s page 272 7407 .LVL854: @@ -16318,7 +16318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7446 .L572: 4066:Middlewares/Third_Party/FatFs/src/ff.c **** #endif 7447 .loc 1 4066 57 is_stmt 1 discriminator 1 view .LVU2496 - ARM GAS /tmp/ccH7dUYB.s page 273 + ARM GAS /tmp/cczbjqIl.s page 273 7448 0136 0126 movs r6, #1 @@ -16378,7 +16378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7485 0154 019A ldr r2, [sp, #4] 7486 0156 B2F80A80 ldrh r8, [r2, #10] 4086:Middlewares/Third_Party/FatFs/src/ff.c **** if (ifptr > 0 && - ARM GAS /tmp/ccH7dUYB.s page 274 + ARM GAS /tmp/cczbjqIl.s page 274 7487 .loc 1 4086 29 view .LVU2514 @@ -16438,7 +16438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7524 017e 04E0 b .L542 7525 .LVL869: 7526 .L541: - ARM GAS /tmp/ccH7dUYB.s page 275 + ARM GAS /tmp/cczbjqIl.s page 275 4093:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY @@ -16498,7 +16498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7564 019e 2275 strb r2, [r4, #20] 7565 .L555: 4138:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_TINY - ARM GAS /tmp/ccH7dUYB.s page 276 + ARM GAS /tmp/cczbjqIl.s page 276 7566 .loc 1 4138 3 is_stmt 1 view .LVU2549 @@ -16558,7 +16558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7606 .L574: 4096:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR); 7607 .loc 1 4096 6 is_stmt 1 view .LVU2564 - ARM GAS /tmp/ccH7dUYB.s page 277 + ARM GAS /tmp/cczbjqIl.s page 277 4096:Middlewares/Third_Party/FatFs/src/ff.c **** if (clst == 1) ABORT(fs, FR_INT_ERR); @@ -16618,7 +16618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7645 .loc 1 4098 30 is_stmt 1 discriminator 1 view .LVU2581 4098:Middlewares/Third_Party/FatFs/src/ff.c **** fp->obj.sclust = clst; 7646 .loc 1 4098 30 is_stmt 0 view .LVU2582 - ARM GAS /tmp/ccH7dUYB.s page 278 + ARM GAS /tmp/cczbjqIl.s page 278 7647 01fa 1BE7 b .L525 @@ -16678,7 +16678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7686 .LVL884: 4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY 7687 .loc 1 4106 18 is_stmt 1 view .LVU2598 - ARM GAS /tmp/ccH7dUYB.s page 279 + ARM GAS /tmp/cczbjqIl.s page 279 4106:Middlewares/Third_Party/FatFs/src/ff.c **** #if !_FS_READONLY @@ -16738,7 +16738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4127:Middlewares/Third_Party/FatFs/src/ff.c **** nsect = clust2sect(fs, clst); /* Current sector */ 7726 .loc 1 4127 13 view .LVU2615 7727 024c B7FBF8F3 udiv r3, r7, r8 - ARM GAS /tmp/ccH7dUYB.s page 280 + ARM GAS /tmp/cczbjqIl.s page 280 7728 0250 08FB1373 mls r3, r8, r3, r7 @@ -16798,7 +16798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7766 .LVL895: 4123:Middlewares/Third_Party/FatFs/src/ff.c **** fp->clust = clst; 7767 .loc 1 4123 45 is_stmt 0 discriminator 3 view .LVU2632 - ARM GAS /tmp/ccH7dUYB.s page 281 + ARM GAS /tmp/cczbjqIl.s page 281 7768 0270 6675 strb r6, [r4, #21] @@ -16858,7 +16858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7807 0294 95E7 b .L556 7808 .L581: 4142:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag &= (BYTE)~FA_DIRTY; - ARM GAS /tmp/ccH7dUYB.s page 282 + ARM GAS /tmp/cczbjqIl.s page 282 7809 .loc 1 4142 62 is_stmt 1 discriminator 1 view .LVU2648 @@ -16918,7 +16918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7854 .cfi_def_cfa_offset 12 7855 .cfi_offset 4, -12 7856 .cfi_offset 5, -8 - ARM GAS /tmp/ccH7dUYB.s page 283 + ARM GAS /tmp/cczbjqIl.s page 283 7857 .cfi_offset 14, -4 @@ -16978,7 +16978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7896 001e 2046 mov r0, r4 7897 0020 05B0 add sp, sp, #20 7898 .LCFI77: - ARM GAS /tmp/ccH7dUYB.s page 284 + ARM GAS /tmp/cczbjqIl.s page 284 7899 .cfi_remember_state @@ -17038,7 +17038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7937 .loc 1 4196 21 is_stmt 0 view .LVU2690 7938 0044 296A ldr r1, [r5, #32] 7939 0046 0398 ldr r0, [sp, #12] - ARM GAS /tmp/ccH7dUYB.s page 285 + ARM GAS /tmp/cczbjqIl.s page 285 7940 .LVL917: @@ -17098,7 +17098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 7977 006a 0021 movs r1, #0 7978 006c 2846 mov r0, r5 7979 .LVL920: - ARM GAS /tmp/ccH7dUYB.s page 286 + ARM GAS /tmp/cczbjqIl.s page 286 4208:Middlewares/Third_Party/FatFs/src/ff.c **** if (!obj->lockid) res = FR_TOO_MANY_OPEN_FILES; @@ -17158,7 +17158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8021 .LFE1228: 8023 .section .text.f_closedir,"ax",%progbits 8024 .align 1 - ARM GAS /tmp/ccH7dUYB.s page 287 + ARM GAS /tmp/cczbjqIl.s page 287 8025 .global f_closedir @@ -17218,7 +17218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4249:Middlewares/Third_Party/FatFs/src/ff.c **** } 8067 .loc 1 4249 4 is_stmt 1 view .LVU2734 4249:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 288 + ARM GAS /tmp/cczbjqIl.s page 288 8068 .loc 1 4249 15 is_stmt 0 view .LVU2735 @@ -17278,7 +17278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8117 0002 82B0 sub sp, sp, #8 8118 .LCFI84: 8119 .cfi_def_cfa_offset 24 - ARM GAS /tmp/ccH7dUYB.s page 289 + ARM GAS /tmp/cczbjqIl.s page 289 8120 0004 0446 mov r4, r0 @@ -17338,7 +17338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8156 .loc 1 4284 5 is_stmt 1 view .LVU2760 8157 0022 2946 mov r1, r5 8158 0024 2046 mov r0, r4 - ARM GAS /tmp/ccH7dUYB.s page 290 + ARM GAS /tmp/cczbjqIl.s page 290 8159 0026 FFF7FEFF bl get_fileinfo @@ -17398,7 +17398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8201 004a 0646 mov r6, r0 8202 004c FAE7 b .L603 8203 .cfi_endproc - ARM GAS /tmp/ccH7dUYB.s page 291 + ARM GAS /tmp/cczbjqIl.s page 291 8204 .LFE1230: @@ -17458,7 +17458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8250 .L610: 4375:Middlewares/Third_Party/FatFs/src/ff.c **** } 8251 .loc 1 4375 16 is_stmt 1 view .LVU2783 - ARM GAS /tmp/ccH7dUYB.s page 292 + ARM GAS /tmp/cczbjqIl.s page 292 4378:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -17518,7 +17518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8292 .LVL954: 4372:Middlewares/Third_Party/FatFs/src/ff.c **** } 8293 .loc 1 4372 14 is_stmt 0 discriminator 1 view .LVU2798 - ARM GAS /tmp/ccH7dUYB.s page 293 + ARM GAS /tmp/cczbjqIl.s page 293 8294 003a FFF7FEFF bl get_fileinfo @@ -17578,7 +17578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8342 .loc 1 4398 2 view .LVU2806 4399:Middlewares/Third_Party/FatFs/src/ff.c **** 8343 .loc 1 4399 2 view .LVU2807 - ARM GAS /tmp/ccH7dUYB.s page 294 + ARM GAS /tmp/cczbjqIl.s page 294 4403:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) { @@ -17638,7 +17638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8381 .loc 1 4411 4 is_stmt 1 view .LVU2824 8382 .LVL962: 4412:Middlewares/Third_Party/FatFs/src/ff.c **** clst = 2; obj.fs = fs; - ARM GAS /tmp/ccH7dUYB.s page 295 + ARM GAS /tmp/cczbjqIl.s page 295 8383 .loc 1 4412 4 view .LVU2825 @@ -17698,7 +17698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8421 .LVL969: 4419:Middlewares/Third_Party/FatFs/src/ff.c **** } else { 8422 .loc 1 4419 25 is_stmt 0 view .LVU2842 - ARM GAS /tmp/ccH7dUYB.s page 296 + ARM GAS /tmp/cczbjqIl.s page 296 8423 004c 079B ldr r3, [sp, #28] @@ -17758,7 +17758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8461 .loc 1 4444 14 view .LVU2858 8462 0072 5146 mov r1, r10 8463 0074 0798 ldr r0, [sp, #28] - ARM GAS /tmp/ccH7dUYB.s page 297 + ARM GAS /tmp/cczbjqIl.s page 297 8464 0076 FFF7FEFF bl move_window @@ -17818,7 +17818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4451:Middlewares/Third_Party/FatFs/src/ff.c **** } else { 8502 .loc 1 4451 18 is_stmt 0 view .LVU2875 8503 0096 023E subs r6, r6, #2 - ARM GAS /tmp/ccH7dUYB.s page 298 + ARM GAS /tmp/cczbjqIl.s page 298 8504 .LVL982: @@ -17878,7 +17878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8542 00b0 FFF7FEFF bl ld_dword 8543 .LVL988: 4453:Middlewares/Third_Party/FatFs/src/ff.c **** p += 4; i -= 4; - ARM GAS /tmp/ccH7dUYB.s page 299 + ARM GAS /tmp/cczbjqIl.s page 299 8544 .loc 1 4453 11 discriminator 1 view .LVU2892 @@ -17938,7 +17938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8584 .LVL993: 8585 .L628: 8586 .LCFI94: - ARM GAS /tmp/ccH7dUYB.s page 300 + ARM GAS /tmp/cczbjqIl.s page 300 8587 .cfi_restore_state @@ -17998,7 +17998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8632 000e 0028 cmp r0, #0 8633 0010 49D1 bne .L636 4485:Middlewares/Third_Party/FatFs/src/ff.c **** if (!(fp->flag & FA_WRITE)) LEAVE_FF(fs, FR_DENIED); /* Check access mode */ - ARM GAS /tmp/ccH7dUYB.s page 301 + ARM GAS /tmp/cczbjqIl.s page 301 8634 .loc 1 4485 27 discriminator 2 view .LVU2918 @@ -18058,7 +18058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED; 8673 .loc 1 4501 23 is_stmt 0 view .LVU2934 8674 003a A369 ldr r3, [r4, #24] - ARM GAS /tmp/ccH7dUYB.s page 302 + ARM GAS /tmp/cczbjqIl.s page 302 4501:Middlewares/Third_Party/FatFs/src/ff.c **** fp->flag |= FA_MODIFIED; @@ -18118,7 +18118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4494:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 0xFFFFFFFF) res = FR_DISK_ERR; 8714 .loc 1 4494 4 is_stmt 1 view .LVU2950 4495:Middlewares/Third_Party/FatFs/src/ff.c **** if (ncl == 1) res = FR_INT_ERR; - ARM GAS /tmp/ccH7dUYB.s page 303 + ARM GAS /tmp/cczbjqIl.s page 303 8715 .loc 1 4495 4 view .LVU2951 @@ -18178,7 +18178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8755 .loc 1 4496 22 discriminator 1 view .LVU2965 8756 009a 0225 movs r5, #2 8757 009c CDE7 b .L638 - ARM GAS /tmp/ccH7dUYB.s page 304 + ARM GAS /tmp/cczbjqIl.s page 304 8758 .LVL1008: @@ -18238,7 +18238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8805 .cfi_offset 5, -16 8806 .cfi_offset 6, -12 8807 .cfi_offset 7, -8 - ARM GAS /tmp/ccH7dUYB.s page 305 + ARM GAS /tmp/cczbjqIl.s page 305 8808 .cfi_offset 14, -4 @@ -18298,7 +18298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8848 .L656: 8849 .LCFI101: 8850 .cfi_restore_state - ARM GAS /tmp/ccH7dUYB.s page 306 + ARM GAS /tmp/cczbjqIl.s page 306 4543:Middlewares/Third_Party/FatFs/src/ff.c **** res = follow_path(&dj, path); /* Follow the file path */ @@ -18358,7 +18358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4555:Middlewares/Third_Party/FatFs/src/ff.c **** res = FR_DENIED; /* Cannot remove R/O object */ 8888 .loc 1 4555 8 view .LVU3006 8889 0046 15F0010F tst r5, #1 - ARM GAS /tmp/ccH7dUYB.s page 307 + ARM GAS /tmp/cczbjqIl.s page 307 8890 004a 39D1 bne .L653 @@ -18418,7 +18418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8930 .loc 1 4597 8 view .LVU3020 8931 0076 D0B9 cbnz r0, .L658 8932 .LVL1029: - ARM GAS /tmp/ccH7dUYB.s page 308 + ARM GAS /tmp/cczbjqIl.s page 308 8933 .L651: @@ -18478,7 +18478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 8971 009a 04A8 add r0, sp, #16 8972 .LVL1035: 4588:Middlewares/Third_Party/FatFs/src/ff.c **** if (res == FR_OK) res = FR_DENIED; /* Not empty? */ - ARM GAS /tmp/ccH7dUYB.s page 309 + ARM GAS /tmp/cczbjqIl.s page 309 8973 .loc 1 4588 14 view .LVU3037 @@ -18538,7 +18538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9018 .thumb 9019 .thumb_func 9021 f_mkdir: - ARM GAS /tmp/ccH7dUYB.s page 310 + ARM GAS /tmp/cczbjqIl.s page 310 9022 .LVL1041: @@ -18598,7 +18598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9063 0014 0493 str r3, [sp, #16] 4636:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs); 9064 .loc 1 4636 2 is_stmt 1 view .LVU3061 - ARM GAS /tmp/ccH7dUYB.s page 311 + ARM GAS /tmp/cczbjqIl.s page 311 4636:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs); @@ -18658,7 +18658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9105 .loc 1 4644 4 is_stmt 1 view .LVU3075 4644:Middlewares/Third_Party/FatFs/src/ff.c **** dj.obj.objsize = (DWORD)fs->csize * SS(fs); 9106 .loc 1 4644 10 is_stmt 0 view .LVU3076 - ARM GAS /tmp/ccH7dUYB.s page 312 + ARM GAS /tmp/cczbjqIl.s page 312 9107 0038 0021 movs r1, #0 @@ -18718,7 +18718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9146 .L662: 4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME(); 9147 .loc 1 4650 4 is_stmt 1 view .LVU3092 - ARM GAS /tmp/ccH7dUYB.s page 313 + ARM GAS /tmp/cczbjqIl.s page 313 4650:Middlewares/Third_Party/FatFs/src/ff.c **** tm = GET_FATTIME(); @@ -18778,7 +18778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9188 0088 0B22 movs r2, #11 9189 008a 2021 movs r1, #32 9190 008c 4046 mov r0, r8 - ARM GAS /tmp/ccH7dUYB.s page 314 + ARM GAS /tmp/cczbjqIl.s page 314 9191 008e FFF7FEFF bl mem_set @@ -18838,7 +18838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9230 00c8 0398 ldr r0, [sp, #12] 9231 00ca 0378 ldrb r3, [r0] @ zero_extendqisi2 4664:Middlewares/Third_Party/FatFs/src/ff.c **** st_clust(fs, dir + SZDIRE, pcl); - ARM GAS /tmp/ccH7dUYB.s page 315 + ARM GAS /tmp/cczbjqIl.s page 315 9232 .loc 1 4664 9 view .LVU3122 @@ -18898,7 +18898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9271 00f0 039B ldr r3, [sp, #12] 9272 00f2 9A89 ldrh r2, [r3, #12] 9273 00f4 0021 movs r1, #0 - ARM GAS /tmp/ccH7dUYB.s page 316 + ARM GAS /tmp/cczbjqIl.s page 316 9274 00f6 4046 mov r0, r8 @@ -18958,7 +18958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9315 .loc 1 4664 61 discriminator 2 view .LVU3150 9316 0118 DAE7 b .L665 9317 .LVL1083: - ARM GAS /tmp/ccH7dUYB.s page 317 + ARM GAS /tmp/cczbjqIl.s page 317 9318 .L667: @@ -19018,7 +19018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4694:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; 9360 .loc 1 4694 6 view .LVU3163 4694:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; - ARM GAS /tmp/ccH7dUYB.s page 318 + ARM GAS /tmp/cczbjqIl.s page 318 9361 .loc 1 4694 20 is_stmt 0 view .LVU3164 @@ -19078,7 +19078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9408 0002 A3B0 sub sp, sp, #140 9409 .LCFI107: 9410 .cfi_def_cfa_offset 152 - ARM GAS /tmp/ccH7dUYB.s page 319 + ARM GAS /tmp/cczbjqIl.s page 319 9411 0004 0190 str r0, [sp, #4] @@ -19138,7 +19138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 4733:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs); 9451 .loc 1 4733 3 is_stmt 1 view .LVU3188 4733:Middlewares/Third_Party/FatFs/src/ff.c **** INIT_NAMBUF(fs); - ARM GAS /tmp/ccH7dUYB.s page 320 + ARM GAS /tmp/cczbjqIl.s page 320 9452 .loc 1 4733 14 is_stmt 0 view .LVU3189 @@ -19198,7 +19198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9491 004c 1E99 ldr r1, [sp, #120] 9492 004e 0B31 adds r1, r1, #11 9493 0050 03A8 add r0, sp, #12 - ARM GAS /tmp/ccH7dUYB.s page 321 + ARM GAS /tmp/cczbjqIl.s page 321 9494 0052 FFF7FEFF bl mem_cpy @@ -19258,7 +19258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9536 .loc 1 4775 8 is_stmt 0 view .LVU3216 9537 0084 0428 cmp r0, #4 9538 0086 0CD0 beq .L687 - ARM GAS /tmp/ccH7dUYB.s page 322 + ARM GAS /tmp/cczbjqIl.s page 322 9539 .LVL1113: @@ -19318,7 +19318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9578 .loc 1 4778 7 is_stmt 1 view .LVU3231 4778:Middlewares/Third_Party/FatFs/src/ff.c **** mem_cpy(dir + 13, buf + 2, 19); 9579 .loc 1 4778 11 is_stmt 0 view .LVU3232 - ARM GAS /tmp/ccH7dUYB.s page 323 + ARM GAS /tmp/cczbjqIl.s page 323 9580 00ae 129D ldr r5, [sp, #72] @@ -19378,7 +19378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9620 .LVL1124: 9621 00e8 0146 mov r1, r0 4783:Middlewares/Third_Party/FatFs/src/ff.c **** if (!dw) { - ARM GAS /tmp/ccH7dUYB.s page 324 + ARM GAS /tmp/cczbjqIl.s page 324 9622 .loc 1 4783 13 discriminator 1 view .LVU3247 @@ -19438,7 +19438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9662 .LVL1131: 4791:Middlewares/Third_Party/FatFs/src/ff.c **** fs->wflag = 1; 9663 .loc 1 4791 10 is_stmt 0 view .LVU3262 - ARM GAS /tmp/ccH7dUYB.s page 325 + ARM GAS /tmp/cczbjqIl.s page 325 9664 0116 FFF7FEFF bl st_clust @@ -19498,7 +19498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9705 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} 9706 .LCFI110: 9707 .cfi_def_cfa_offset 36 - ARM GAS /tmp/ccH7dUYB.s page 326 + ARM GAS /tmp/cczbjqIl.s page 326 9708 .cfi_offset 4, -36 @@ -19558,7 +19558,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9745 .loc 1 5328 5 is_stmt 0 view .LVU3284 9746 0014 0028 cmp r0, #0 5328:Middlewares/Third_Party/FatFs/src/ff.c **** if (FatFs[vol]) FatFs[vol]->fs_type = 0; /* Clear the volume */ - ARM GAS /tmp/ccH7dUYB.s page 327 + ARM GAS /tmp/cczbjqIl.s page 327 9747 .loc 1 5328 5 view .LVU3285 @@ -19618,7 +19618,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9784 0042 2046 mov r0, r4 9785 .LVL1141: 5337:Middlewares/Third_Party/FatFs/src/ff.c **** #if _MAX_SS != _MIN_SS /* Get sector size of the medium if variable sector size cfg. */ - ARM GAS /tmp/ccH7dUYB.s page 328 + ARM GAS /tmp/cczbjqIl.s page 328 9786 .loc 1 5337 6 view .LVU3303 @@ -19678,7 +19678,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9826 007e 00F2D082 bhi .L742 5340:Middlewares/Third_Party/FatFs/src/ff.c **** #else 9827 .loc 1 5340 48 discriminator 2 view .LVU3318 - ARM GAS /tmp/ccH7dUYB.s page 329 + ARM GAS /tmp/cczbjqIl.s page 329 9828 0082 5A1E subs r2, r3, #1 @@ -19738,7 +19738,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9866 00b6 00F0BE82 beq .L747 5354:Middlewares/Third_Party/FatFs/src/ff.c **** /* Get partition information from partition table in the MBR */ 9867 .loc 1 5354 2 is_stmt 1 view .LVU3335 - ARM GAS /tmp/ccH7dUYB.s page 330 + ARM GAS /tmp/cczbjqIl.s page 330 5364:Middlewares/Third_Party/FatFs/src/ff.c **** b_vol = (opt & FM_SFD) ? 0 : 63; /* Volume start sector */ @@ -19798,7 +19798,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9905 00ea 802D cmp r5, #128 9906 00ec 00F2B882 bhi .L752 5379:Middlewares/Third_Party/FatFs/src/ff.c **** if ((opt & FM_ANY) == FM_FAT32 || !(opt & FM_FAT)) { /* FAT32 only or no-FAT? */ - ARM GAS /tmp/ccH7dUYB.s page 331 + ARM GAS /tmp/cczbjqIl.s page 331 9907 .loc 1 5379 3 is_stmt 1 view .LVU3353 @@ -19858,7 +19858,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9950 0136 1D46 mov r5, r3 9951 .LVL1152: 5604:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 332 + ARM GAS /tmp/cczbjqIl.s page 332 9952 .loc 1 5604 10 view .LVU3365 @@ -19918,7 +19918,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 9990 015a 0444 add r4, r4, r0 5564:Middlewares/Third_Party/FatFs/src/ff.c **** } else { /* FAT12/16 volume */ 9991 .loc 1 5564 8 view .LVU3382 - ARM GAS /tmp/ccH7dUYB.s page 333 + ARM GAS /tmp/cczbjqIl.s page 333 9992 015c 5248 ldr r0, .L793+8 @@ -19978,7 +19978,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10031 0186 DDD0 beq .L706 5558:Middlewares/Third_Party/FatFs/src/ff.c **** } 10032 .loc 1 5558 36 discriminator 3 view .LVU3398 - ARM GAS /tmp/ccH7dUYB.s page 334 + ARM GAS /tmp/cczbjqIl.s page 334 10033 0188 A342 cmp r3, r4 @@ -20038,7 +20038,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10072 .loc 1 5575 6 view .LVU3413 5575:Middlewares/Third_Party/FatFs/src/ff.c **** } 10073 .loc 1 5575 18 is_stmt 0 view .LVU3414 - ARM GAS /tmp/ccH7dUYB.s page 335 + ARM GAS /tmp/cczbjqIl.s page 335 10074 01ac 03EB4303 add r3, r3, r3, lsl #1 @@ -20098,7 +20098,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10113 .LVL1178: 5597:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED; 10114 .loc 1 5597 14 discriminator 1 view .LVU3430 - ARM GAS /tmp/ccH7dUYB.s page 336 + ARM GAS /tmp/cczbjqIl.s page 336 10115 01d4 B8F1010F cmp r8, #1 @@ -20158,7 +20158,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10153 01fe A846 mov r8, r5 10154 .LVL1183: 10155 .L710: - ARM GAS /tmp/ccH7dUYB.s page 337 + ARM GAS /tmp/cczbjqIl.s page 337 5570:Middlewares/Third_Party/FatFs/src/ff.c **** if (n_clst > MAX_FAT12) { @@ -20218,7 +20218,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5581:Middlewares/Third_Party/FatFs/src/ff.c **** b_data = b_fat + sz_fat * n_fats + sz_dir; /* Data base */ 10194 .loc 1 5581 10 is_stmt 0 view .LVU3463 10195 0228 0EEB0B09 add r9, lr, fp - ARM GAS /tmp/ccH7dUYB.s page 338 + ARM GAS /tmp/cczbjqIl.s page 338 10196 .LVL1191: @@ -20278,7 +20278,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10233 0250 C0F00C82 bcc .L759 5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { 10234 .loc 1 5594 4 is_stmt 1 view .LVU3481 - ARM GAS /tmp/ccH7dUYB.s page 339 + ARM GAS /tmp/cczbjqIl.s page 339 5594:Middlewares/Third_Party/FatFs/src/ff.c **** if (fmt == FS_FAT32) { @@ -20338,7 +20338,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED; 10273 .loc 1 5609 6 is_stmt 1 view .LVU3498 5609:Middlewares/Third_Party/FatFs/src/ff.c **** return FR_MKFS_ABORTED; - ARM GAS /tmp/ccH7dUYB.s page 340 + ARM GAS /tmp/cczbjqIl.s page 340 10274 .loc 1 5609 9 is_stmt 0 view .LVU3499 @@ -20398,7 +20398,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10318 02c8 40F6F572 movw r2, #4085 10319 02cc BAF1010F cmp r10, #1 10320 02d0 14BF ite ne - ARM GAS /tmp/ccH7dUYB.s page 341 + ARM GAS /tmp/cczbjqIl.s page 341 10321 02d2 0023 movne r3, #0 @@ -20458,7 +20458,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10363 0314 3374 strb r3, [r6, #16] 5634:Middlewares/Third_Party/FatFs/src/ff.c **** if (sz_vol < 0x10000) { 10364 .loc 1 5634 3 is_stmt 1 view .LVU3522 - ARM GAS /tmp/ccH7dUYB.s page 342 + ARM GAS /tmp/cczbjqIl.s page 342 10365 0316 06F11100 add r0, r6, #17 @@ -20518,7 +20518,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10406 .loc 1 5644 6 is_stmt 0 view .LVU3535 10407 035e BAF1030F cmp r10, #3 10408 0362 6BD0 beq .L787 - ARM GAS /tmp/ccH7dUYB.s page 343 + ARM GAS /tmp/cczbjqIl.s page 343 5654:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FATSz16, (WORD)sz_fat); /* FAT size [sector] */ @@ -20578,7 +20578,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10451 03ac FFF7FEFF bl disk_write 10452 .LVL1224: 5661:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 344 + ARM GAS /tmp/cczbjqIl.s page 344 10453 .loc 1 5661 6 discriminator 1 view .LVU3548 @@ -20638,7 +20638,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5697:Middlewares/Third_Party/FatFs/src/ff.c **** do { 10494 .loc 1 5697 35 view .LVU3562 10495 03e2 DDF82080 ldr r8, [sp, #32] - ARM GAS /tmp/ccH7dUYB.s page 345 + ARM GAS /tmp/cczbjqIl.s page 345 10496 03e6 0197 str r7, [sp, #4] @@ -20698,7 +20698,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10535 .loc 1 5709 3 view .LVU3577 5709:Middlewares/Third_Party/FatFs/src/ff.c **** sys = 0x0C; /* FAT32X */ 10536 .loc 1 5709 6 is_stmt 0 view .LVU3578 - ARM GAS /tmp/ccH7dUYB.s page 346 + ARM GAS /tmp/cczbjqIl.s page 346 10537 040e BAF1030F cmp r10, #3 @@ -20758,7 +20758,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5647:Middlewares/Third_Party/FatFs/src/ff.c **** st_word(buf + BPB_FSInfo32, 1); /* Offset of FSINFO sector (VBR + 1) */ 10579 .loc 1 5647 4 view .LVU3591 10580 0454 0221 movs r1, #2 - ARM GAS /tmp/ccH7dUYB.s page 347 + ARM GAS /tmp/cczbjqIl.s page 347 10581 0456 06F12C00 add r0, r6, #44 @@ -20818,7 +20818,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10625 04a6 6A49 ldr r1, .L795+12 10626 04a8 3046 mov r0, r6 10627 04aa FFF7FEFF bl st_dword - ARM GAS /tmp/ccH7dUYB.s page 348 + ARM GAS /tmp/cczbjqIl.s page 348 10628 .LVL1251: @@ -20878,7 +20878,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5685:Middlewares/Third_Party/FatFs/src/ff.c **** } 10673 .loc 1 5685 5 is_stmt 0 discriminator 2 view .LVU3611 10674 0500 6FF00701 mvn r1, #7 - ARM GAS /tmp/ccH7dUYB.s page 349 + ARM GAS /tmp/cczbjqIl.s page 349 10675 .L731: @@ -20938,7 +20938,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10716 .loc 1 5693 13 view .LVU3624 10717 053a B8EB0A08 subs r8, r8, r10 10718 .LVL1265: - ARM GAS /tmp/ccH7dUYB.s page 350 + ARM GAS /tmp/cczbjqIl.s page 350 5693:Middlewares/Third_Party/FatFs/src/ff.c **** } @@ -20998,7 +20998,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10763 0578 4FF00408 mov r8, #4 10764 .LVL1275: 5715:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 351 + ARM GAS /tmp/cczbjqIl.s page 351 10765 .loc 1 5715 9 discriminator 1 view .LVU3635 @@ -21058,7 +21058,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5734:Middlewares/Third_Party/FatFs/src/ff.c **** pte[PTE_System] = sys; /* System type */ 10804 .loc 1 5734 19 is_stmt 0 view .LVU3651 10805 05ac 86F8C151 strb r5, [r6, #449] - ARM GAS /tmp/ccH7dUYB.s page 352 + ARM GAS /tmp/cczbjqIl.s page 352 5735:Middlewares/Third_Party/FatFs/src/ff.c **** n = (b_vol + sz_vol) / (63 * 255); /* (End CHS may be invalid) */ @@ -21118,7 +21118,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10843 05e8 3B46 mov r3, r7 10844 05ea 2A46 mov r2, r5 10845 05ec 3146 mov r1, r6 - ARM GAS /tmp/ccH7dUYB.s page 353 + ARM GAS /tmp/cczbjqIl.s page 353 10846 05ee 2046 mov r0, r4 @@ -21178,7 +21178,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 5336:Middlewares/Third_Party/FatFs/src/ff.c **** if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &sz_blk) != RES_OK || !sz_blk || sz_blk > 32768 || (sz_blk & 10889 .loc 1 5336 33 discriminator 1 view .LVU3680 10890 0616 0A20 movs r0, #10 - ARM GAS /tmp/ccH7dUYB.s page 354 + ARM GAS /tmp/cczbjqIl.s page 354 10891 .LVL1294: @@ -21238,7 +21238,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10937 .loc 1 5366 30 discriminator 1 view .LVU3688 10938 063e 0E20 movs r0, #14 10939 0640 EAE7 b .L696 - ARM GAS /tmp/ccH7dUYB.s page 355 + ARM GAS /tmp/cczbjqIl.s page 355 10940 .L796: @@ -21298,7 +21298,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 10985 .LVL1305: 10986 .L764: 5614:Middlewares/Third_Party/FatFs/src/ff.c **** } - ARM GAS /tmp/ccH7dUYB.s page 356 + ARM GAS /tmp/cczbjqIl.s page 356 10987 .loc 1 5614 13 view .LVU3698 @@ -21358,7 +21358,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11035 @ frame_needed = 0, uses_anonymous_args = 0 5835:Middlewares/Third_Party/FatFs/src/ff.c **** int n = 0; 11036 .loc 1 5835 1 is_stmt 0 view .LVU3707 - ARM GAS /tmp/ccH7dUYB.s page 357 + ARM GAS /tmp/cczbjqIl.s page 357 11037 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} @@ -21418,7 +21418,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11078 0018 AB42 cmp r3, r5 11079 001a 13DD ble .L799 5887:Middlewares/Third_Party/FatFs/src/ff.c **** if (rc != 1) break; - ARM GAS /tmp/ccH7dUYB.s page 358 + ARM GAS /tmp/cczbjqIl.s page 358 11080 .loc 1 5887 3 is_stmt 1 view .LVU3721 @@ -21478,7 +21478,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11119 .L799: 5896:Middlewares/Third_Party/FatFs/src/ff.c **** return n ? buff : 0; /* When no data read (eof or error), return with error. */ 11120 .loc 1 5896 2 is_stmt 1 view .LVU3737 - ARM GAS /tmp/ccH7dUYB.s page 359 + ARM GAS /tmp/cczbjqIl.s page 359 5896:Middlewares/Third_Party/FatFs/src/ff.c **** return n ? buff : 0; /* When no data read (eof or error), return with error. */ @@ -21538,7 +21538,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11162 .loc 1 6002 1 is_stmt 0 view .LVU3746 11163 0000 10B5 push {r4, lr} 11164 .LCFI118: - ARM GAS /tmp/ccH7dUYB.s page 360 + ARM GAS /tmp/cczbjqIl.s page 360 11165 .cfi_def_cfa_offset 8 @@ -21598,7 +21598,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6015:Middlewares/Third_Party/FatFs/src/ff.c **** /* Put a string to the file */ 6016:Middlewares/Third_Party/FatFs/src/ff.c **** /*-----------------------------------------------------------------------*/ 6017:Middlewares/Third_Party/FatFs/src/ff.c **** - ARM GAS /tmp/ccH7dUYB.s page 361 + ARM GAS /tmp/cczbjqIl.s page 361 6018:Middlewares/Third_Party/FatFs/src/ff.c **** int f_puts ( @@ -21658,7 +21658,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6029:Middlewares/Third_Party/FatFs/src/ff.c **** } 11252 .loc 1 6029 1 view .LVU3768 11253 0022 14B0 add sp, sp, #80 - ARM GAS /tmp/ccH7dUYB.s page 362 + ARM GAS /tmp/cczbjqIl.s page 362 11254 .LCFI123: @@ -21718,7 +21718,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11296 .cfi_def_cfa_offset 160 11297 0008 0146 mov r1, r0 11298 000a 25AC add r4, sp, #148 - ARM GAS /tmp/ccH7dUYB.s page 363 + ARM GAS /tmp/cczbjqIl.s page 363 11299 000c 54F8045B ldr r5, [r4], #4 @@ -21778,7 +21778,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6061:Middlewares/Third_Party/FatFs/src/ff.c **** continue; 11336 .loc 1 6061 4 view .LVU3790 6057:Middlewares/Third_Party/FatFs/src/ff.c **** if (c == 0) break; /* End of string */ - ARM GAS /tmp/ccH7dUYB.s page 364 + ARM GAS /tmp/cczbjqIl.s page 364 11337 .loc 1 6057 11 is_stmt 0 view .LVU3791 @@ -21838,7 +21838,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11377 .LVL1349: 6066:Middlewares/Third_Party/FatFs/src/ff.c **** f = 1; c = *fmt++; 11378 .loc 1 6066 6 view .LVU3808 - ARM GAS /tmp/ccH7dUYB.s page 365 + ARM GAS /tmp/cczbjqIl.s page 365 11379 004a 0126 movs r6, #1 @@ -21898,7 +21898,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11423 0076 46F00406 orr r6, r6, #4 11424 .LVL1357: 11425 .loc 1 6077 12 is_stmt 1 view .LVU3825 - ARM GAS /tmp/ccH7dUYB.s page 366 + ARM GAS /tmp/cczbjqIl.s page 366 11426 .loc 1 6077 14 is_stmt 0 view .LVU3826 @@ -21958,7 +21958,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11475 00b4 5C .byte (.L824-.L826)/2 11476 00b5 5C .byte (.L824-.L826)/2 11477 00b6 5A .byte (.L825-.L826)/2 - ARM GAS /tmp/ccH7dUYB.s page 367 + ARM GAS /tmp/cczbjqIl.s page 367 11478 .LVL1361: @@ -22018,7 +22018,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11526 .loc 1 6087 13 is_stmt 0 discriminator 1 view .LVU3851 11527 00e6 3746 mov r7, r6 11528 .LVL1370: - ARM GAS /tmp/ccH7dUYB.s page 368 + ARM GAS /tmp/cczbjqIl.s page 368 11529 .L834: @@ -22078,7 +22078,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 6093:Middlewares/Third_Party/FatFs/src/ff.c **** case 'C' : /* Character */ 6094:Middlewares/Third_Party/FatFs/src/ff.c **** putc_bfd(&pb, (TCHAR)va_arg(arp, int)); continue; 11578 .loc 1 6094 4 is_stmt 1 view .LVU3866 - ARM GAS /tmp/ccH7dUYB.s page 369 + ARM GAS /tmp/cczbjqIl.s page 369 11579 .loc 1 6094 25 is_stmt 0 view .LVU3867 @@ -22138,7 +22138,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11613 0138 1268 ldr r2, [r2] 11614 .L842: 11615 .LVL1386: - ARM GAS /tmp/ccH7dUYB.s page 370 + ARM GAS /tmp/cczbjqIl.s page 370 6115:Middlewares/Third_Party/FatFs/src/ff.c **** if (d == 'D' && (v & 0x80000000)) { @@ -22198,7 +22198,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11657 .loc 1 6082 3 view .LVU3896 11658 0160 0220 movs r0, #2 11659 0162 E3E7 b .L829 - ARM GAS /tmp/ccH7dUYB.s page 371 + ARM GAS /tmp/cczbjqIl.s page 371 11660 .L859: @@ -22258,7 +22258,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11705 .loc 1 6124 14 is_stmt 1 view .LVU3908 11706 .loc 1 6124 19 is_stmt 0 view .LVU3909 11707 0196 1F2F cmp r7, #31 - ARM GAS /tmp/ccH7dUYB.s page 372 + ARM GAS /tmp/cczbjqIl.s page 372 11708 0198 8CBF ite hi @@ -22318,7 +22318,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11749 .loc 1 6125 6 is_stmt 0 view .LVU3925 11750 01c2 16F0080F tst r6, #8 11751 01c6 08D0 beq .L849 - ARM GAS /tmp/ccH7dUYB.s page 373 + ARM GAS /tmp/cczbjqIl.s page 373 11752 .loc 1 6125 14 is_stmt 1 discriminator 1 view .LVU3926 @@ -22378,7 +22378,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11802 .loc 1 6127 23 discriminator 2 view .LVU3942 11803 0206 C846 mov r8, r9 11804 .LVL1412: - ARM GAS /tmp/ccH7dUYB.s page 374 + ARM GAS /tmp/cczbjqIl.s page 374 11805 .L854: @@ -22438,7 +22438,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11849 @ sp needed 11850 023c BDE8F047 pop {r4, r5, r6, r7, r8, r9, r10, lr} 11851 .LCFI128: - ARM GAS /tmp/ccH7dUYB.s page 375 + ARM GAS /tmp/cczbjqIl.s page 375 11852 .cfi_restore 14 @@ -22498,7 +22498,7 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11903 0040 C0C1C2C3 .ascii "\300\301\302\303\304\305AA\310\311\312\313\314\315\316" 11903 C4C54141 11903 C8C9CACB - ARM GAS /tmp/ccH7dUYB.s page 376 + ARM GAS /tmp/cczbjqIl.s page 376 11903 CCCDCE @@ -22542,173 +22542,173 @@ ARM GAS /tmp/ccH7dUYB.s page 1 11933 .file 8 "Middlewares/Third_Party/FatFs/src/diskio.h" 11934 .file 9 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdarg.h" 11935 .file 10 "" - ARM GAS /tmp/ccH7dUYB.s page 377 + ARM GAS /tmp/cczbjqIl.s page 377 DEFINED SYMBOLS *ABS*:00000000 ff.c - /tmp/ccH7dUYB.s:20 .text.ld_word:00000000 $t - /tmp/ccH7dUYB.s:25 .text.ld_word:00000000 ld_word - /tmp/ccH7dUYB.s:52 .text.ld_dword:00000000 $t - /tmp/ccH7dUYB.s:57 .text.ld_dword:00000000 ld_dword - /tmp/ccH7dUYB.s:96 .text.st_word:00000000 $t - /tmp/ccH7dUYB.s:101 .text.st_word:00000000 st_word - /tmp/ccH7dUYB.s:125 .text.st_dword:00000000 $t - /tmp/ccH7dUYB.s:130 .text.st_dword:00000000 st_dword - /tmp/ccH7dUYB.s:169 .text.mem_cpy:00000000 $t - /tmp/ccH7dUYB.s:174 .text.mem_cpy:00000000 mem_cpy - /tmp/ccH7dUYB.s:214 .text.mem_set:00000000 $t - /tmp/ccH7dUYB.s:219 .text.mem_set:00000000 mem_set - /tmp/ccH7dUYB.s:246 .text.mem_cmp:00000000 $t - /tmp/ccH7dUYB.s:251 .text.mem_cmp:00000000 mem_cmp - /tmp/ccH7dUYB.s:294 .text.chk_chr:00000000 $t - /tmp/ccH7dUYB.s:299 .text.chk_chr:00000000 chk_chr - /tmp/ccH7dUYB.s:335 .text.chk_lock:00000000 $t - /tmp/ccH7dUYB.s:340 .text.chk_lock:00000000 chk_lock - /tmp/ccH7dUYB.s:477 .text.chk_lock:00000078 $d - /tmp/ccH7dUYB.s:11911 .bss.Files:00000000 Files - /tmp/ccH7dUYB.s:482 .text.enq_lock:00000000 $t - /tmp/ccH7dUYB.s:487 .text.enq_lock:00000000 enq_lock - /tmp/ccH7dUYB.s:531 .text.enq_lock:0000001c $d - /tmp/ccH7dUYB.s:536 .text.inc_lock:00000000 $t - /tmp/ccH7dUYB.s:541 .text.inc_lock:00000000 inc_lock - /tmp/ccH7dUYB.s:711 .text.inc_lock:0000009c $d - /tmp/ccH7dUYB.s:716 .text.dec_lock:00000000 $t - /tmp/ccH7dUYB.s:721 .text.dec_lock:00000000 dec_lock - /tmp/ccH7dUYB.s:802 .text.dec_lock:0000003c $d - /tmp/ccH7dUYB.s:807 .text.clear_lock:00000000 $t - /tmp/ccH7dUYB.s:812 .text.clear_lock:00000000 clear_lock - /tmp/ccH7dUYB.s:889 .text.clear_lock:00000038 $d - /tmp/ccH7dUYB.s:894 .text.clust2sect:00000000 $t - /tmp/ccH7dUYB.s:899 .text.clust2sect:00000000 clust2sect - /tmp/ccH7dUYB.s:939 .text.clmt_clust:00000000 $t - /tmp/ccH7dUYB.s:944 .text.clmt_clust:00000000 clmt_clust - /tmp/ccH7dUYB.s:1015 .text.ld_clust:00000000 $t - /tmp/ccH7dUYB.s:1020 .text.ld_clust:00000000 ld_clust - /tmp/ccH7dUYB.s:1076 .text.st_clust:00000000 $t - /tmp/ccH7dUYB.s:1081 .text.st_clust:00000000 st_clust - /tmp/ccH7dUYB.s:1130 .text.get_fileinfo:00000000 $t - /tmp/ccH7dUYB.s:1135 .text.get_fileinfo:00000000 get_fileinfo - /tmp/ccH7dUYB.s:1275 .rodata.create_name.str1.4:00000000 $d - /tmp/ccH7dUYB.s:1279 .text.create_name:00000000 $t - /tmp/ccH7dUYB.s:1284 .text.create_name:00000000 create_name - /tmp/ccH7dUYB.s:1516 .text.create_name:000000c8 $d - /tmp/ccH7dUYB.s:11899 .rodata.ExCvt:00000000 ExCvt - /tmp/ccH7dUYB.s:1522 .text.get_ldnumber:00000000 $t - /tmp/ccH7dUYB.s:1527 .text.get_ldnumber:00000000 get_ldnumber - /tmp/ccH7dUYB.s:1628 .text.putc_init:00000000 $t - /tmp/ccH7dUYB.s:1633 .text.putc_init:00000000 putc_init - /tmp/ccH7dUYB.s:1656 .text.validate:00000000 $t - /tmp/ccH7dUYB.s:1661 .text.validate:00000000 validate - /tmp/ccH7dUYB.s:1770 .text.sync_window:00000000 $t - /tmp/ccH7dUYB.s:1775 .text.sync_window:00000000 sync_window - ARM GAS /tmp/ccH7dUYB.s page 378 + /tmp/cczbjqIl.s:20 .text.ld_word:00000000 $t + /tmp/cczbjqIl.s:25 .text.ld_word:00000000 ld_word + /tmp/cczbjqIl.s:52 .text.ld_dword:00000000 $t + /tmp/cczbjqIl.s:57 .text.ld_dword:00000000 ld_dword + /tmp/cczbjqIl.s:96 .text.st_word:00000000 $t + /tmp/cczbjqIl.s:101 .text.st_word:00000000 st_word + /tmp/cczbjqIl.s:125 .text.st_dword:00000000 $t + /tmp/cczbjqIl.s:130 .text.st_dword:00000000 st_dword + /tmp/cczbjqIl.s:169 .text.mem_cpy:00000000 $t + /tmp/cczbjqIl.s:174 .text.mem_cpy:00000000 mem_cpy + /tmp/cczbjqIl.s:214 .text.mem_set:00000000 $t + /tmp/cczbjqIl.s:219 .text.mem_set:00000000 mem_set + /tmp/cczbjqIl.s:246 .text.mem_cmp:00000000 $t + /tmp/cczbjqIl.s:251 .text.mem_cmp:00000000 mem_cmp + /tmp/cczbjqIl.s:294 .text.chk_chr:00000000 $t + /tmp/cczbjqIl.s:299 .text.chk_chr:00000000 chk_chr + /tmp/cczbjqIl.s:335 .text.chk_lock:00000000 $t + /tmp/cczbjqIl.s:340 .text.chk_lock:00000000 chk_lock + /tmp/cczbjqIl.s:477 .text.chk_lock:00000078 $d + /tmp/cczbjqIl.s:11911 .bss.Files:00000000 Files + /tmp/cczbjqIl.s:482 .text.enq_lock:00000000 $t + /tmp/cczbjqIl.s:487 .text.enq_lock:00000000 enq_lock + /tmp/cczbjqIl.s:531 .text.enq_lock:0000001c $d + /tmp/cczbjqIl.s:536 .text.inc_lock:00000000 $t + /tmp/cczbjqIl.s:541 .text.inc_lock:00000000 inc_lock + /tmp/cczbjqIl.s:711 .text.inc_lock:0000009c $d + /tmp/cczbjqIl.s:716 .text.dec_lock:00000000 $t + /tmp/cczbjqIl.s:721 .text.dec_lock:00000000 dec_lock + /tmp/cczbjqIl.s:802 .text.dec_lock:0000003c $d + /tmp/cczbjqIl.s:807 .text.clear_lock:00000000 $t + /tmp/cczbjqIl.s:812 .text.clear_lock:00000000 clear_lock + /tmp/cczbjqIl.s:889 .text.clear_lock:00000038 $d + /tmp/cczbjqIl.s:894 .text.clust2sect:00000000 $t + /tmp/cczbjqIl.s:899 .text.clust2sect:00000000 clust2sect + /tmp/cczbjqIl.s:939 .text.clmt_clust:00000000 $t + /tmp/cczbjqIl.s:944 .text.clmt_clust:00000000 clmt_clust + /tmp/cczbjqIl.s:1015 .text.ld_clust:00000000 $t + /tmp/cczbjqIl.s:1020 .text.ld_clust:00000000 ld_clust + /tmp/cczbjqIl.s:1076 .text.st_clust:00000000 $t + /tmp/cczbjqIl.s:1081 .text.st_clust:00000000 st_clust + /tmp/cczbjqIl.s:1130 .text.get_fileinfo:00000000 $t + /tmp/cczbjqIl.s:1135 .text.get_fileinfo:00000000 get_fileinfo + /tmp/cczbjqIl.s:1275 .rodata.create_name.str1.4:00000000 $d + /tmp/cczbjqIl.s:1279 .text.create_name:00000000 $t + /tmp/cczbjqIl.s:1284 .text.create_name:00000000 create_name + /tmp/cczbjqIl.s:1516 .text.create_name:000000c8 $d + /tmp/cczbjqIl.s:11899 .rodata.ExCvt:00000000 ExCvt + /tmp/cczbjqIl.s:1522 .text.get_ldnumber:00000000 $t + /tmp/cczbjqIl.s:1527 .text.get_ldnumber:00000000 get_ldnumber + /tmp/cczbjqIl.s:1628 .text.putc_init:00000000 $t + /tmp/cczbjqIl.s:1633 .text.putc_init:00000000 putc_init + /tmp/cczbjqIl.s:1656 .text.validate:00000000 $t + /tmp/cczbjqIl.s:1661 .text.validate:00000000 validate + /tmp/cczbjqIl.s:1770 .text.sync_window:00000000 $t + /tmp/cczbjqIl.s:1775 .text.sync_window:00000000 sync_window + ARM GAS /tmp/cczbjqIl.s page 378 - /tmp/ccH7dUYB.s:1882 .text.move_window:00000000 $t - /tmp/ccH7dUYB.s:1887 .text.move_window:00000000 move_window - /tmp/ccH7dUYB.s:1959 .text.check_fs:00000000 $t - /tmp/ccH7dUYB.s:1964 .text.check_fs:00000000 check_fs - /tmp/ccH7dUYB.s:2060 .text.check_fs:0000006c $d - /tmp/ccH7dUYB.s:2067 .text.find_volume:00000000 $t - /tmp/ccH7dUYB.s:2072 .text.find_volume:00000000 find_volume - /tmp/ccH7dUYB.s:2746 .text.find_volume:00000314 $d - /tmp/ccH7dUYB.s:11923 .bss.FatFs:00000000 FatFs - /tmp/ccH7dUYB.s:11917 .bss.Fsid:00000000 Fsid - /tmp/ccH7dUYB.s:2753 .text.find_volume:00000324 $t - /tmp/ccH7dUYB.s:2802 .text.put_fat:00000000 $t - /tmp/ccH7dUYB.s:2807 .text.put_fat:00000000 put_fat - /tmp/ccH7dUYB.s:3085 .text.get_fat:00000000 $t - /tmp/ccH7dUYB.s:3090 .text.get_fat:00000000 get_fat - /tmp/ccH7dUYB.s:3338 .text.dir_sdi:00000000 $t - /tmp/ccH7dUYB.s:3343 .text.dir_sdi:00000000 dir_sdi - /tmp/ccH7dUYB.s:3548 .text.create_chain:00000000 $t - /tmp/ccH7dUYB.s:3553 .text.create_chain:00000000 create_chain - /tmp/ccH7dUYB.s:3789 .text.remove_chain:00000000 $t - /tmp/ccH7dUYB.s:3794 .text.remove_chain:00000000 remove_chain - /tmp/ccH7dUYB.s:3955 .text.dir_remove:00000000 $t - /tmp/ccH7dUYB.s:3960 .text.dir_remove:00000000 dir_remove - /tmp/ccH7dUYB.s:4011 .text.dir_next:00000000 $t - /tmp/ccH7dUYB.s:4016 .text.dir_next:00000000 dir_next - /tmp/ccH7dUYB.s:4326 .text.dir_find:00000000 $t - /tmp/ccH7dUYB.s:4331 .text.dir_find:00000000 dir_find - /tmp/ccH7dUYB.s:4439 .text.follow_path:00000000 $t - /tmp/ccH7dUYB.s:4444 .text.follow_path:00000000 follow_path - /tmp/ccH7dUYB.s:4612 .text.dir_alloc:00000000 $t - /tmp/ccH7dUYB.s:4617 .text.dir_alloc:00000000 dir_alloc - /tmp/ccH7dUYB.s:4728 .text.dir_register:00000000 $t - /tmp/ccH7dUYB.s:4733 .text.dir_register:00000000 dir_register - /tmp/ccH7dUYB.s:4807 .text.dir_read:00000000 $t - /tmp/ccH7dUYB.s:4812 .text.dir_read:00000000 dir_read - /tmp/ccH7dUYB.s:4934 .text.sync_fs:00000000 $t - /tmp/ccH7dUYB.s:4939 .text.sync_fs:00000000 sync_fs - /tmp/ccH7dUYB.s:5053 .text.sync_fs:00000080 $d - /tmp/ccH7dUYB.s:5059 .text.f_mount:00000000 $t - /tmp/ccH7dUYB.s:5065 .text.f_mount:00000000 f_mount - /tmp/ccH7dUYB.s:5181 .text.f_mount:0000005c $d - /tmp/ccH7dUYB.s:5186 .text.f_open:00000000 $t - /tmp/ccH7dUYB.s:5192 .text.f_open:00000000 f_open - /tmp/ccH7dUYB.s:5748 .text.f_read:00000000 $t - /tmp/ccH7dUYB.s:5754 .text.f_read:00000000 f_read - /tmp/ccH7dUYB.s:6186 .text.f_write:00000000 $t - /tmp/ccH7dUYB.s:6192 .text.f_write:00000000 f_write - /tmp/ccH7dUYB.s:6673 .text.putc_bfd:00000000 $t - /tmp/ccH7dUYB.s:6678 .text.putc_bfd:00000000 putc_bfd - /tmp/ccH7dUYB.s:6790 .text.putc_flush:00000000 $t - /tmp/ccH7dUYB.s:6795 .text.putc_flush:00000000 putc_flush - /tmp/ccH7dUYB.s:6874 .text.f_sync:00000000 $t - /tmp/ccH7dUYB.s:6880 .text.f_sync:00000000 f_sync - /tmp/ccH7dUYB.s:7031 .text.f_close:00000000 $t - /tmp/ccH7dUYB.s:7037 .text.f_close:00000000 f_close - /tmp/ccH7dUYB.s:7106 .text.f_lseek:00000000 $t - /tmp/ccH7dUYB.s:7112 .text.f_lseek:00000000 f_lseek - ARM GAS /tmp/ccH7dUYB.s page 379 + /tmp/cczbjqIl.s:1882 .text.move_window:00000000 $t + /tmp/cczbjqIl.s:1887 .text.move_window:00000000 move_window + /tmp/cczbjqIl.s:1959 .text.check_fs:00000000 $t + /tmp/cczbjqIl.s:1964 .text.check_fs:00000000 check_fs + /tmp/cczbjqIl.s:2060 .text.check_fs:0000006c $d + /tmp/cczbjqIl.s:2067 .text.find_volume:00000000 $t + /tmp/cczbjqIl.s:2072 .text.find_volume:00000000 find_volume + /tmp/cczbjqIl.s:2746 .text.find_volume:00000314 $d + /tmp/cczbjqIl.s:11923 .bss.FatFs:00000000 FatFs + /tmp/cczbjqIl.s:11917 .bss.Fsid:00000000 Fsid + /tmp/cczbjqIl.s:2753 .text.find_volume:00000324 $t + /tmp/cczbjqIl.s:2802 .text.put_fat:00000000 $t + /tmp/cczbjqIl.s:2807 .text.put_fat:00000000 put_fat + /tmp/cczbjqIl.s:3085 .text.get_fat:00000000 $t + /tmp/cczbjqIl.s:3090 .text.get_fat:00000000 get_fat + /tmp/cczbjqIl.s:3338 .text.dir_sdi:00000000 $t + /tmp/cczbjqIl.s:3343 .text.dir_sdi:00000000 dir_sdi + /tmp/cczbjqIl.s:3548 .text.create_chain:00000000 $t + /tmp/cczbjqIl.s:3553 .text.create_chain:00000000 create_chain + /tmp/cczbjqIl.s:3789 .text.remove_chain:00000000 $t + /tmp/cczbjqIl.s:3794 .text.remove_chain:00000000 remove_chain + /tmp/cczbjqIl.s:3955 .text.dir_remove:00000000 $t + /tmp/cczbjqIl.s:3960 .text.dir_remove:00000000 dir_remove + /tmp/cczbjqIl.s:4011 .text.dir_next:00000000 $t + /tmp/cczbjqIl.s:4016 .text.dir_next:00000000 dir_next + /tmp/cczbjqIl.s:4326 .text.dir_find:00000000 $t + /tmp/cczbjqIl.s:4331 .text.dir_find:00000000 dir_find + /tmp/cczbjqIl.s:4439 .text.follow_path:00000000 $t + /tmp/cczbjqIl.s:4444 .text.follow_path:00000000 follow_path + /tmp/cczbjqIl.s:4612 .text.dir_alloc:00000000 $t + /tmp/cczbjqIl.s:4617 .text.dir_alloc:00000000 dir_alloc + /tmp/cczbjqIl.s:4728 .text.dir_register:00000000 $t + /tmp/cczbjqIl.s:4733 .text.dir_register:00000000 dir_register + /tmp/cczbjqIl.s:4807 .text.dir_read:00000000 $t + /tmp/cczbjqIl.s:4812 .text.dir_read:00000000 dir_read + /tmp/cczbjqIl.s:4934 .text.sync_fs:00000000 $t + /tmp/cczbjqIl.s:4939 .text.sync_fs:00000000 sync_fs + /tmp/cczbjqIl.s:5053 .text.sync_fs:00000080 $d + /tmp/cczbjqIl.s:5059 .text.f_mount:00000000 $t + /tmp/cczbjqIl.s:5065 .text.f_mount:00000000 f_mount + /tmp/cczbjqIl.s:5181 .text.f_mount:0000005c $d + /tmp/cczbjqIl.s:5186 .text.f_open:00000000 $t + /tmp/cczbjqIl.s:5192 .text.f_open:00000000 f_open + /tmp/cczbjqIl.s:5748 .text.f_read:00000000 $t + /tmp/cczbjqIl.s:5754 .text.f_read:00000000 f_read + /tmp/cczbjqIl.s:6186 .text.f_write:00000000 $t + /tmp/cczbjqIl.s:6192 .text.f_write:00000000 f_write + /tmp/cczbjqIl.s:6673 .text.putc_bfd:00000000 $t + /tmp/cczbjqIl.s:6678 .text.putc_bfd:00000000 putc_bfd + /tmp/cczbjqIl.s:6790 .text.putc_flush:00000000 $t + /tmp/cczbjqIl.s:6795 .text.putc_flush:00000000 putc_flush + /tmp/cczbjqIl.s:6874 .text.f_sync:00000000 $t + /tmp/cczbjqIl.s:6880 .text.f_sync:00000000 f_sync + /tmp/cczbjqIl.s:7031 .text.f_close:00000000 $t + /tmp/cczbjqIl.s:7037 .text.f_close:00000000 f_close + /tmp/cczbjqIl.s:7106 .text.f_lseek:00000000 $t + /tmp/cczbjqIl.s:7112 .text.f_lseek:00000000 f_lseek + ARM GAS /tmp/cczbjqIl.s page 379 - /tmp/ccH7dUYB.s:7838 .text.f_opendir:00000000 $t - /tmp/ccH7dUYB.s:7844 .text.f_opendir:00000000 f_opendir - /tmp/ccH7dUYB.s:8024 .text.f_closedir:00000000 $t - /tmp/ccH7dUYB.s:8030 .text.f_closedir:00000000 f_closedir - /tmp/ccH7dUYB.s:8096 .text.f_readdir:00000000 $t - /tmp/ccH7dUYB.s:8102 .text.f_readdir:00000000 f_readdir - /tmp/ccH7dUYB.s:8207 .text.f_stat:00000000 $t - /tmp/ccH7dUYB.s:8213 .text.f_stat:00000000 f_stat - /tmp/ccH7dUYB.s:8306 .text.f_getfree:00000000 $t - /tmp/ccH7dUYB.s:8312 .text.f_getfree:00000000 f_getfree - /tmp/ccH7dUYB.s:8597 .text.f_truncate:00000000 $t - /tmp/ccH7dUYB.s:8603 .text.f_truncate:00000000 f_truncate - /tmp/ccH7dUYB.s:8787 .text.f_unlink:00000000 $t - /tmp/ccH7dUYB.s:8793 .text.f_unlink:00000000 f_unlink - /tmp/ccH7dUYB.s:9015 .text.f_mkdir:00000000 $t - /tmp/ccH7dUYB.s:9021 .text.f_mkdir:00000000 f_mkdir - /tmp/ccH7dUYB.s:9388 .text.f_rename:00000000 $t - /tmp/ccH7dUYB.s:9394 .text.f_rename:00000000 f_rename - /tmp/ccH7dUYB.s:9681 .rodata.f_mkfs.str1.4:00000000 $d - /tmp/ccH7dUYB.s:9691 .text.f_mkfs:00000000 $t - /tmp/ccH7dUYB.s:9697 .text.f_mkfs:00000000 f_mkfs - /tmp/ccH7dUYB.s:10298 .text.f_mkfs:000002a0 $d - /tmp/ccH7dUYB.s:11887 .rodata.cst32.1:00000000 cst32.1 - /tmp/ccH7dUYB.s:11875 .rodata.cst.0:00000000 cst.0 - /tmp/ccH7dUYB.s:10306 .text.f_mkfs:000002b4 $t - /tmp/ccH7dUYB.s:10943 .text.f_mkfs:00000644 $d - /tmp/ccH7dUYB.s:10951 .text.f_mkfs:0000065c $t - /tmp/ccH7dUYB.s:11023 .text.f_gets:00000000 $t - /tmp/ccH7dUYB.s:11029 .text.f_gets:00000000 f_gets - /tmp/ccH7dUYB.s:11149 .text.f_putc:00000000 $t - /tmp/ccH7dUYB.s:11155 .text.f_putc:00000000 f_putc - /tmp/ccH7dUYB.s:11200 .text.f_puts:00000000 $t - /tmp/ccH7dUYB.s:11206 .text.f_puts:00000000 f_puts - /tmp/ccH7dUYB.s:11263 .text.f_printf:00000000 $t - /tmp/ccH7dUYB.s:11269 .text.f_printf:00000000 f_printf - /tmp/ccH7dUYB.s:11455 .text.f_printf:000000a0 $d - /tmp/ccH7dUYB.s:11872 .rodata.cst.0:00000000 $d - /tmp/ccH7dUYB.s:11884 .rodata.cst32.1:00000000 $d - /tmp/ccH7dUYB.s:11896 .rodata.ExCvt:00000000 $d - /tmp/ccH7dUYB.s:11908 .bss.Files:00000000 $d - /tmp/ccH7dUYB.s:11914 .bss.Fsid:00000000 $d - /tmp/ccH7dUYB.s:11920 .bss.FatFs:00000000 $d - /tmp/ccH7dUYB.s:11479 .text.f_printf:000000b7 $d - /tmp/ccH7dUYB.s:11479 .text.f_printf:000000b8 $t + /tmp/cczbjqIl.s:7838 .text.f_opendir:00000000 $t + /tmp/cczbjqIl.s:7844 .text.f_opendir:00000000 f_opendir + /tmp/cczbjqIl.s:8024 .text.f_closedir:00000000 $t + /tmp/cczbjqIl.s:8030 .text.f_closedir:00000000 f_closedir + /tmp/cczbjqIl.s:8096 .text.f_readdir:00000000 $t + /tmp/cczbjqIl.s:8102 .text.f_readdir:00000000 f_readdir + /tmp/cczbjqIl.s:8207 .text.f_stat:00000000 $t + /tmp/cczbjqIl.s:8213 .text.f_stat:00000000 f_stat + /tmp/cczbjqIl.s:8306 .text.f_getfree:00000000 $t + /tmp/cczbjqIl.s:8312 .text.f_getfree:00000000 f_getfree + /tmp/cczbjqIl.s:8597 .text.f_truncate:00000000 $t + /tmp/cczbjqIl.s:8603 .text.f_truncate:00000000 f_truncate + /tmp/cczbjqIl.s:8787 .text.f_unlink:00000000 $t + /tmp/cczbjqIl.s:8793 .text.f_unlink:00000000 f_unlink + /tmp/cczbjqIl.s:9015 .text.f_mkdir:00000000 $t + /tmp/cczbjqIl.s:9021 .text.f_mkdir:00000000 f_mkdir + /tmp/cczbjqIl.s:9388 .text.f_rename:00000000 $t + /tmp/cczbjqIl.s:9394 .text.f_rename:00000000 f_rename + /tmp/cczbjqIl.s:9681 .rodata.f_mkfs.str1.4:00000000 $d + /tmp/cczbjqIl.s:9691 .text.f_mkfs:00000000 $t + /tmp/cczbjqIl.s:9697 .text.f_mkfs:00000000 f_mkfs + /tmp/cczbjqIl.s:10298 .text.f_mkfs:000002a0 $d + /tmp/cczbjqIl.s:11887 .rodata.cst32.1:00000000 cst32.1 + /tmp/cczbjqIl.s:11875 .rodata.cst.0:00000000 cst.0 + /tmp/cczbjqIl.s:10306 .text.f_mkfs:000002b4 $t + /tmp/cczbjqIl.s:10943 .text.f_mkfs:00000644 $d + /tmp/cczbjqIl.s:10951 .text.f_mkfs:0000065c $t + /tmp/cczbjqIl.s:11023 .text.f_gets:00000000 $t + /tmp/cczbjqIl.s:11029 .text.f_gets:00000000 f_gets + /tmp/cczbjqIl.s:11149 .text.f_putc:00000000 $t + /tmp/cczbjqIl.s:11155 .text.f_putc:00000000 f_putc + /tmp/cczbjqIl.s:11200 .text.f_puts:00000000 $t + /tmp/cczbjqIl.s:11206 .text.f_puts:00000000 f_puts + /tmp/cczbjqIl.s:11263 .text.f_printf:00000000 $t + /tmp/cczbjqIl.s:11269 .text.f_printf:00000000 f_printf + /tmp/cczbjqIl.s:11455 .text.f_printf:000000a0 $d + /tmp/cczbjqIl.s:11872 .rodata.cst.0:00000000 $d + /tmp/cczbjqIl.s:11884 .rodata.cst32.1:00000000 $d + /tmp/cczbjqIl.s:11896 .rodata.ExCvt:00000000 $d + /tmp/cczbjqIl.s:11908 .bss.Files:00000000 $d + /tmp/cczbjqIl.s:11914 .bss.Fsid:00000000 $d + /tmp/cczbjqIl.s:11920 .bss.FatFs:00000000 $d + /tmp/cczbjqIl.s:11479 .text.f_printf:000000b7 $d + /tmp/cczbjqIl.s:11479 .text.f_printf:000000b8 $t UNDEFINED SYMBOLS disk_status diff --git a/build/ff_gen_drv.lst b/build/ff_gen_drv.lst index 47d73b9..03932a8 100644 --- a/build/ff_gen_drv.lst +++ b/build/ff_gen_drv.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccoeDKf8.s page 1 +ARM GAS /tmp/ccaLv9j7.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 28:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** 29:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** /** 30:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** * @brief Links a compatible diskio driver/lun id and increments the number of active - ARM GAS /tmp/ccoeDKf8.s page 2 + ARM GAS /tmp/ccaLv9j7.s page 2 31:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** * linked drivers. @@ -118,7 +118,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 64 .loc 1 48 5 is_stmt 1 view .LVU13 65 .loc 1 48 18 is_stmt 0 view .LVU14 66 002c 5C7A ldrb r4, [r3, #9] @ zero_extendqisi2 - ARM GAS /tmp/ccoeDKf8.s page 3 + ARM GAS /tmp/ccaLv9j7.s page 3 67 .LVL2: @@ -178,7 +178,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 41:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** uint8_t DiskNum = 0; 111 .loc 1 41 11 view .LVU32 112 004c 0120 movs r0, #1 - ARM GAS /tmp/ccoeDKf8.s page 4 + ARM GAS /tmp/ccaLv9j7.s page 4 113 .LVL10: @@ -238,7 +238,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 156 .global FATFS_UnLinkDriverEx 157 .syntax unified 158 .thumb - ARM GAS /tmp/ccoeDKf8.s page 5 + ARM GAS /tmp/ccaLv9j7.s page 5 159 .thumb_func @@ -298,7 +298,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 195 .LVL15: 196 .loc 1 90 25 view .LVU54 197 001c 0020 movs r0, #0 - ARM GAS /tmp/ccoeDKf8.s page 6 + ARM GAS /tmp/ccaLv9j7.s page 6 198 .LVL16: @@ -358,7 +358,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 242 .align 1 243 .global FATFS_UnLinkDriver 244 .syntax unified - ARM GAS /tmp/ccoeDKf8.s page 7 + ARM GAS /tmp/ccaLv9j7.s page 7 245 .thumb @@ -418,7 +418,7 @@ ARM GAS /tmp/ccoeDKf8.s page 1 283 @ frame_needed = 0, uses_anonymous_args = 0 284 @ link register save eliminated. 118:Middlewares/Third_Party/FatFs/src/ff_gen_drv.c **** return disk.nbr; - ARM GAS /tmp/ccoeDKf8.s page 8 + ARM GAS /tmp/ccaLv9j7.s page 8 285 .loc 1 118 3 view .LVU75 @@ -450,25 +450,25 @@ ARM GAS /tmp/ccoeDKf8.s page 1 311 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" 312 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" 313 .file 8 "Middlewares/Third_Party/FatFs/src/ff_gen_drv.h" - ARM GAS /tmp/ccoeDKf8.s page 9 + ARM GAS /tmp/ccaLv9j7.s page 9 DEFINED SYMBOLS *ABS*:00000000 ff_gen_drv.c - /tmp/ccoeDKf8.s:20 .text.FATFS_LinkDriverEx:00000000 $t - /tmp/ccoeDKf8.s:26 .text.FATFS_LinkDriverEx:00000000 FATFS_LinkDriverEx - /tmp/ccoeDKf8.s:120 .text.FATFS_LinkDriverEx:00000050 $d - /tmp/ccoeDKf8.s:303 .bss.disk:00000000 disk - /tmp/ccoeDKf8.s:125 .text.FATFS_LinkDriver:00000000 $t - /tmp/ccoeDKf8.s:131 .text.FATFS_LinkDriver:00000000 FATFS_LinkDriver - /tmp/ccoeDKf8.s:155 .text.FATFS_UnLinkDriverEx:00000000 $t - /tmp/ccoeDKf8.s:161 .text.FATFS_UnLinkDriverEx:00000000 FATFS_UnLinkDriverEx - /tmp/ccoeDKf8.s:237 .text.FATFS_UnLinkDriverEx:00000038 $d - /tmp/ccoeDKf8.s:242 .text.FATFS_UnLinkDriver:00000000 $t - /tmp/ccoeDKf8.s:248 .text.FATFS_UnLinkDriver:00000000 FATFS_UnLinkDriver - /tmp/ccoeDKf8.s:272 .text.FATFS_GetAttachedDriversNbr:00000000 $t - /tmp/ccoeDKf8.s:278 .text.FATFS_GetAttachedDriversNbr:00000000 FATFS_GetAttachedDriversNbr - /tmp/ccoeDKf8.s:294 .text.FATFS_GetAttachedDriversNbr:00000008 $d - /tmp/ccoeDKf8.s:300 .bss.disk:00000000 $d + /tmp/ccaLv9j7.s:20 .text.FATFS_LinkDriverEx:00000000 $t + /tmp/ccaLv9j7.s:26 .text.FATFS_LinkDriverEx:00000000 FATFS_LinkDriverEx + /tmp/ccaLv9j7.s:120 .text.FATFS_LinkDriverEx:00000050 $d + /tmp/ccaLv9j7.s:303 .bss.disk:00000000 disk + /tmp/ccaLv9j7.s:125 .text.FATFS_LinkDriver:00000000 $t + /tmp/ccaLv9j7.s:131 .text.FATFS_LinkDriver:00000000 FATFS_LinkDriver + /tmp/ccaLv9j7.s:155 .text.FATFS_UnLinkDriverEx:00000000 $t + /tmp/ccaLv9j7.s:161 .text.FATFS_UnLinkDriverEx:00000000 FATFS_UnLinkDriverEx + /tmp/ccaLv9j7.s:237 .text.FATFS_UnLinkDriverEx:00000038 $d + /tmp/ccaLv9j7.s:242 .text.FATFS_UnLinkDriver:00000000 $t + /tmp/ccaLv9j7.s:248 .text.FATFS_UnLinkDriver:00000000 FATFS_UnLinkDriver + /tmp/ccaLv9j7.s:272 .text.FATFS_GetAttachedDriversNbr:00000000 $t + /tmp/ccaLv9j7.s:278 .text.FATFS_GetAttachedDriversNbr:00000000 FATFS_GetAttachedDriversNbr + /tmp/ccaLv9j7.s:294 .text.FATFS_GetAttachedDriversNbr:00000008 $d + /tmp/ccaLv9j7.s:300 .bss.disk:00000000 $d NO UNDEFINED SYMBOLS diff --git a/build/main.lst b/build/main.lst index 0509742..62b9f39 100644 --- a/build/main.lst +++ b/build/main.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccwR4KB7.s page 1 +ARM GAS /tmp/ccEQxcUB.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 28:Drivers/CMSIS/Include/core_cm7.h **** #pragma clang system_header /* treat file as system include file */ 29:Drivers/CMSIS/Include/core_cm7.h **** #endif 30:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 2 + ARM GAS /tmp/ccEQxcUB.s page 2 31:Drivers/CMSIS/Include/core_cm7.h **** #ifndef __CORE_CM7_H_GENERIC @@ -118,7 +118,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 85:Drivers/CMSIS/Include/core_cm7.h **** #define __FPU_USED 0U 86:Drivers/CMSIS/Include/core_cm7.h **** #endif 87:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 3 + ARM GAS /tmp/ccEQxcUB.s page 3 88:Drivers/CMSIS/Include/core_cm7.h **** #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) @@ -178,7 +178,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 142:Drivers/CMSIS/Include/core_cm7.h **** #define __FPU_USED 0U 143:Drivers/CMSIS/Include/core_cm7.h **** #endif 144:Drivers/CMSIS/Include/core_cm7.h **** #else - ARM GAS /tmp/ccwR4KB7.s page 4 + ARM GAS /tmp/ccEQxcUB.s page 4 145:Drivers/CMSIS/Include/core_cm7.h **** #define __FPU_USED 0U @@ -238,7 +238,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 199:Drivers/CMSIS/Include/core_cm7.h **** #warning "__ICACHE_PRESENT not defined in device header file; using default!" 200:Drivers/CMSIS/Include/core_cm7.h **** #endif 201:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 5 + ARM GAS /tmp/ccEQxcUB.s page 5 202:Drivers/CMSIS/Include/core_cm7.h **** #ifndef __DCACHE_PRESENT @@ -298,7 +298,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 256:Drivers/CMSIS/Include/core_cm7.h **** - Core MPU Register 257:Drivers/CMSIS/Include/core_cm7.h **** - Core FPU Register 258:Drivers/CMSIS/Include/core_cm7.h **** ******************************************************************************/ - ARM GAS /tmp/ccwR4KB7.s page 6 + ARM GAS /tmp/ccEQxcUB.s page 6 259:Drivers/CMSIS/Include/core_cm7.h **** /** @@ -358,7 +358,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 313:Drivers/CMSIS/Include/core_cm7.h **** typedef union 314:Drivers/CMSIS/Include/core_cm7.h **** { 315:Drivers/CMSIS/Include/core_cm7.h **** struct - ARM GAS /tmp/ccwR4KB7.s page 7 + ARM GAS /tmp/ccEQxcUB.s page 7 316:Drivers/CMSIS/Include/core_cm7.h **** { @@ -418,7 +418,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 370:Drivers/CMSIS/Include/core_cm7.h **** #define xPSR_T_Pos 24U /*!< xPSR 371:Drivers/CMSIS/Include/core_cm7.h **** #define xPSR_T_Msk (1UL << xPSR_T_Pos) /*!< xPSR 372:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 8 + ARM GAS /tmp/ccEQxcUB.s page 8 373:Drivers/CMSIS/Include/core_cm7.h **** #define xPSR_GE_Pos 16U /*!< xPSR @@ -478,7 +478,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 427:Drivers/CMSIS/Include/core_cm7.h **** __IOM uint32_t ISPR[8U]; /*!< Offset: 0x100 (R/W) Interrupt Set Pending Register * 428:Drivers/CMSIS/Include/core_cm7.h **** uint32_t RESERVED2[24U]; 429:Drivers/CMSIS/Include/core_cm7.h **** __IOM uint32_t ICPR[8U]; /*!< Offset: 0x180 (R/W) Interrupt Clear Pending Register - ARM GAS /tmp/ccwR4KB7.s page 9 + ARM GAS /tmp/ccEQxcUB.s page 9 430:Drivers/CMSIS/Include/core_cm7.h **** uint32_t RESERVED3[24U]; @@ -538,7 +538,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 484:Drivers/CMSIS/Include/core_cm7.h **** uint32_t RESERVED4[15U]; 485:Drivers/CMSIS/Include/core_cm7.h **** __IM uint32_t MVFR0; /*!< Offset: 0x240 (R/ ) Media and VFP Feature Register 0 486:Drivers/CMSIS/Include/core_cm7.h **** __IM uint32_t MVFR1; /*!< Offset: 0x244 (R/ ) Media and VFP Feature Register 1 - ARM GAS /tmp/ccwR4KB7.s page 10 + ARM GAS /tmp/ccEQxcUB.s page 10 487:Drivers/CMSIS/Include/core_cm7.h **** __IM uint32_t MVFR2; /*!< Offset: 0x248 (R/ ) Media and VFP Feature Register 2 @@ -598,7 +598,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 541:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_ICSR_ISRPREEMPT_Pos 23U /*!< SCB 542:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_ICSR_ISRPREEMPT_Msk (1UL << SCB_ICSR_ISRPREEMPT_Pos) /*!< SCB 543:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 11 + ARM GAS /tmp/ccEQxcUB.s page 11 544:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_ICSR_ISRPENDING_Pos 22U /*!< SCB @@ -658,7 +658,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 598:Drivers/CMSIS/Include/core_cm7.h **** 599:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CCR_DC_Pos 16U /*!< SCB 600:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CCR_DC_Msk (1UL << SCB_CCR_DC_Pos) /*!< SCB - ARM GAS /tmp/ccwR4KB7.s page 12 + ARM GAS /tmp/ccEQxcUB.s page 12 601:Drivers/CMSIS/Include/core_cm7.h **** @@ -718,7 +718,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 655:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_SHCSR_USGFAULTACT_Msk (1UL << SCB_SHCSR_USGFAULTACT_Pos) /*!< SCB 656:Drivers/CMSIS/Include/core_cm7.h **** 657:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_SHCSR_BUSFAULTACT_Pos 1U /*!< SCB - ARM GAS /tmp/ccwR4KB7.s page 13 + ARM GAS /tmp/ccEQxcUB.s page 13 658:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_SHCSR_BUSFAULTACT_Msk (1UL << SCB_SHCSR_BUSFAULTACT_Pos) /*!< SCB @@ -778,7 +778,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 712:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CFSR_IBUSERR_Msk (1UL << SCB_CFSR_IBUSERR_Pos) /*!< SCB 713:Drivers/CMSIS/Include/core_cm7.h **** 714:Drivers/CMSIS/Include/core_cm7.h **** /* UsageFault Status Register (part of SCB Configurable Fault Status Register) */ - ARM GAS /tmp/ccwR4KB7.s page 14 + ARM GAS /tmp/ccEQxcUB.s page 14 715:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CFSR_DIVBYZERO_Pos (SCB_CFSR_USGFAULTSR_Pos + 9U) /*!< SCB @@ -838,7 +838,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 769:Drivers/CMSIS/Include/core_cm7.h **** 770:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CTR_CWG_Pos 24U /*!< SCB 771:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_CTR_CWG_Msk (0xFUL << SCB_CTR_CWG_Pos) /*!< SCB - ARM GAS /tmp/ccwR4KB7.s page 15 + ARM GAS /tmp/ccEQxcUB.s page 15 772:Drivers/CMSIS/Include/core_cm7.h **** @@ -898,7 +898,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 826:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_DCCSW_SET_Pos 5U /*!< SCB 827:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_DCCSW_SET_Msk (0x1FFUL << SCB_DCCSW_SET_Pos) /*!< SCB 828:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 16 + ARM GAS /tmp/ccEQxcUB.s page 16 829:Drivers/CMSIS/Include/core_cm7.h **** /* SCB D-Cache Clean and Invalidate by Set-way Register Definitions */ @@ -958,7 +958,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 883:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_AHBSCR_TPRI_Pos 2U /*!< SCB 884:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_AHBSCR_TPRI_Msk (0x1FFUL << SCB_AHBPCR_TPRI_Pos) /*!< SCB 885:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 17 + ARM GAS /tmp/ccEQxcUB.s page 17 886:Drivers/CMSIS/Include/core_cm7.h **** #define SCB_AHBSCR_CTL_Pos 0U /*!< SCB @@ -1018,7 +1018,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 940:Drivers/CMSIS/Include/core_cm7.h **** #define SCnSCB_ACTLR_FPEXCODIS_Msk (1UL << SCnSCB_ACTLR_FPEXCODIS_Pos) /*!< ACTLR: 941:Drivers/CMSIS/Include/core_cm7.h **** 942:Drivers/CMSIS/Include/core_cm7.h **** #define SCnSCB_ACTLR_DISFOLD_Pos 2U /*!< ACTLR: - ARM GAS /tmp/ccwR4KB7.s page 18 + ARM GAS /tmp/ccEQxcUB.s page 18 943:Drivers/CMSIS/Include/core_cm7.h **** #define SCnSCB_ACTLR_DISFOLD_Msk (1UL << SCnSCB_ACTLR_DISFOLD_Pos) /*!< ACTLR: @@ -1078,7 +1078,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 997:Drivers/CMSIS/Include/core_cm7.h **** #define SysTick_CALIB_TENMS_Pos 0U /*!< SysT 998:Drivers/CMSIS/Include/core_cm7.h **** #define SysTick_CALIB_TENMS_Msk (0xFFFFFFUL /*<< SysTick_CALIB_TENMS_Pos*/) /*!< SysT 999:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 19 + ARM GAS /tmp/ccEQxcUB.s page 19 1000:Drivers/CMSIS/Include/core_cm7.h **** /*@} end of group CMSIS_SysTick */ @@ -1138,7 +1138,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1054:Drivers/CMSIS/Include/core_cm7.h **** #define ITM_TCR_BUSY_Pos 23U /*!< ITM 1055:Drivers/CMSIS/Include/core_cm7.h **** #define ITM_TCR_BUSY_Msk (1UL << ITM_TCR_BUSY_Pos) /*!< ITM 1056:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 20 + ARM GAS /tmp/ccEQxcUB.s page 20 1057:Drivers/CMSIS/Include/core_cm7.h **** #define ITM_TCR_TraceBusID_Pos 16U /*!< ITM @@ -1198,7 +1198,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1111:Drivers/CMSIS/Include/core_cm7.h **** */ 1112:Drivers/CMSIS/Include/core_cm7.h **** 1113:Drivers/CMSIS/Include/core_cm7.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 21 + ARM GAS /tmp/ccEQxcUB.s page 21 1114:Drivers/CMSIS/Include/core_cm7.h **** \brief Structure type to access the Data Watchpoint and Trace Register (DWT). @@ -1258,7 +1258,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1168:Drivers/CMSIS/Include/core_cm7.h **** #define DWT_CTRL_LSUEVTENA_Pos 20U /*!< DWT CTR 1169:Drivers/CMSIS/Include/core_cm7.h **** #define DWT_CTRL_LSUEVTENA_Msk (0x1UL << DWT_CTRL_LSUEVTENA_Pos) /*!< DWT CTR 1170:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 22 + ARM GAS /tmp/ccEQxcUB.s page 22 1171:Drivers/CMSIS/Include/core_cm7.h **** #define DWT_CTRL_SLEEPEVTENA_Pos 19U /*!< DWT CTR @@ -1318,7 +1318,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1225:Drivers/CMSIS/Include/core_cm7.h **** /* DWT Comparator Function Register Definitions */ 1226:Drivers/CMSIS/Include/core_cm7.h **** #define DWT_FUNCTION_MATCHED_Pos 24U /*!< DWT FUN 1227:Drivers/CMSIS/Include/core_cm7.h **** #define DWT_FUNCTION_MATCHED_Msk (0x1UL << DWT_FUNCTION_MATCHED_Pos) /*!< DWT FUN - ARM GAS /tmp/ccwR4KB7.s page 23 + ARM GAS /tmp/ccEQxcUB.s page 23 1228:Drivers/CMSIS/Include/core_cm7.h **** @@ -1378,7 +1378,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1282:Drivers/CMSIS/Include/core_cm7.h **** uint32_t RESERVED4[1U]; 1283:Drivers/CMSIS/Include/core_cm7.h **** __IM uint32_t ITATBCTR0; /*!< Offset: 0xEF8 (R/ ) ITATBCTR0 */ 1284:Drivers/CMSIS/Include/core_cm7.h **** __IM uint32_t FIFO1; /*!< Offset: 0xEFC (R/ ) Integration ITM Data */ - ARM GAS /tmp/ccwR4KB7.s page 24 + ARM GAS /tmp/ccEQxcUB.s page 24 1285:Drivers/CMSIS/Include/core_cm7.h **** __IOM uint32_t ITCTRL; /*!< Offset: 0xF00 (R/W) Integration Mode Control */ @@ -1438,7 +1438,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1339:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_FIFO0_ETM2_Pos 16U /*!< TPI FIF 1340:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_FIFO0_ETM2_Msk (0xFFUL << TPI_FIFO0_ETM2_Pos) /*!< TPI FIF 1341:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 25 + ARM GAS /tmp/ccEQxcUB.s page 25 1342:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_FIFO0_ETM1_Pos 8U /*!< TPI FIF @@ -1498,7 +1498,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1396:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_DEVID_PTINVALID_Msk (0x1UL << TPI_DEVID_PTINVALID_Pos) /*!< TPI DEV 1397:Drivers/CMSIS/Include/core_cm7.h **** 1398:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_DEVID_MinBufSz_Pos 6U /*!< TPI DEV - ARM GAS /tmp/ccwR4KB7.s page 26 + ARM GAS /tmp/ccEQxcUB.s page 26 1399:Drivers/CMSIS/Include/core_cm7.h **** #define TPI_DEVID_MinBufSz_Msk (0x7UL << TPI_DEVID_MinBufSz_Pos) /*!< TPI DEV @@ -1558,7 +1558,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1453:Drivers/CMSIS/Include/core_cm7.h **** #define MPU_TYPE_SEPARATE_Msk (1UL /*<< MPU_TYPE_SEPARATE_Pos*/) /*!< MPU 1454:Drivers/CMSIS/Include/core_cm7.h **** 1455:Drivers/CMSIS/Include/core_cm7.h **** /* MPU Control Register Definitions */ - ARM GAS /tmp/ccwR4KB7.s page 27 + ARM GAS /tmp/ccEQxcUB.s page 27 1456:Drivers/CMSIS/Include/core_cm7.h **** #define MPU_CTRL_PRIVDEFENA_Pos 2U /*!< MPU @@ -1618,7 +1618,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1510:Drivers/CMSIS/Include/core_cm7.h **** /*@} end of group CMSIS_MPU */ 1511:Drivers/CMSIS/Include/core_cm7.h **** #endif /* defined (__MPU_PRESENT) && (__MPU_PRESENT == 1U) */ 1512:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 28 + ARM GAS /tmp/ccEQxcUB.s page 28 1513:Drivers/CMSIS/Include/core_cm7.h **** @@ -1678,7 +1678,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1567:Drivers/CMSIS/Include/core_cm7.h **** /* Floating-Point Default Status Control Register Definitions */ 1568:Drivers/CMSIS/Include/core_cm7.h **** #define FPU_FPDSCR_AHP_Pos 26U /*!< FPDS 1569:Drivers/CMSIS/Include/core_cm7.h **** #define FPU_FPDSCR_AHP_Msk (1UL << FPU_FPDSCR_AHP_Pos) /*!< FPDS - ARM GAS /tmp/ccwR4KB7.s page 29 + ARM GAS /tmp/ccEQxcUB.s page 29 1570:Drivers/CMSIS/Include/core_cm7.h **** @@ -1738,7 +1738,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1624:Drivers/CMSIS/Include/core_cm7.h **** \ingroup CMSIS_core_register 1625:Drivers/CMSIS/Include/core_cm7.h **** \defgroup CMSIS_CoreDebug Core Debug Registers (CoreDebug) 1626:Drivers/CMSIS/Include/core_cm7.h **** \brief Type definitions for the Core Debug Registers - ARM GAS /tmp/ccwR4KB7.s page 30 + ARM GAS /tmp/ccEQxcUB.s page 30 1627:Drivers/CMSIS/Include/core_cm7.h **** @{ @@ -1798,7 +1798,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1681:Drivers/CMSIS/Include/core_cm7.h **** 1682:Drivers/CMSIS/Include/core_cm7.h **** #define CoreDebug_DCRSR_REGSEL_Pos 0U /*!< Core 1683:Drivers/CMSIS/Include/core_cm7.h **** #define CoreDebug_DCRSR_REGSEL_Msk (0x1FUL /*<< CoreDebug_DCRSR_REGSEL_Pos*/) /*!< Core - ARM GAS /tmp/ccwR4KB7.s page 31 + ARM GAS /tmp/ccEQxcUB.s page 31 1684:Drivers/CMSIS/Include/core_cm7.h **** @@ -1858,7 +1858,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1738:Drivers/CMSIS/Include/core_cm7.h **** \param[in] value Value of the bit field. This parameter is interpreted as an uint32_t type. 1739:Drivers/CMSIS/Include/core_cm7.h **** \return Masked and shifted value. 1740:Drivers/CMSIS/Include/core_cm7.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 32 + ARM GAS /tmp/ccEQxcUB.s page 32 1741:Drivers/CMSIS/Include/core_cm7.h **** #define _VAL2FLD(field, value) (((uint32_t)(value) << field ## _Pos) & field ## _Msk) @@ -1918,7 +1918,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1795:Drivers/CMSIS/Include/core_cm7.h **** - Core NVIC Functions 1796:Drivers/CMSIS/Include/core_cm7.h **** - Core SysTick Functions 1797:Drivers/CMSIS/Include/core_cm7.h **** - Core Debug Functions - ARM GAS /tmp/ccwR4KB7.s page 33 + ARM GAS /tmp/ccEQxcUB.s page 33 1798:Drivers/CMSIS/Include/core_cm7.h **** - Core Register Access Functions @@ -1978,7 +1978,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1852:Drivers/CMSIS/Include/core_cm7.h **** #define EXC_RETURN_THREAD_MSP_FPU (0xFFFFFFE9UL) /* return to Thread mode, uses MSP after retu 1853:Drivers/CMSIS/Include/core_cm7.h **** #define EXC_RETURN_THREAD_PSP_FPU (0xFFFFFFEDUL) /* return to Thread mode, uses PSP after retu 1854:Drivers/CMSIS/Include/core_cm7.h **** - ARM GAS /tmp/ccwR4KB7.s page 34 + ARM GAS /tmp/ccEQxcUB.s page 34 1855:Drivers/CMSIS/Include/core_cm7.h **** @@ -2038,7 +2038,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1909:Drivers/CMSIS/Include/core_cm7.h **** \return 0 Interrupt is not enabled. 1910:Drivers/CMSIS/Include/core_cm7.h **** \return 1 Interrupt is enabled. 1911:Drivers/CMSIS/Include/core_cm7.h **** \note IRQn must not be negative. - ARM GAS /tmp/ccwR4KB7.s page 35 + ARM GAS /tmp/ccEQxcUB.s page 35 1912:Drivers/CMSIS/Include/core_cm7.h **** */ @@ -2098,7 +2098,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1966:Drivers/CMSIS/Include/core_cm7.h **** \details Sets the pending bit of a device specific interrupt in the NVIC pending register. 1967:Drivers/CMSIS/Include/core_cm7.h **** \param [in] IRQn Device specific interrupt number. 1968:Drivers/CMSIS/Include/core_cm7.h **** \note IRQn must not be negative. - ARM GAS /tmp/ccwR4KB7.s page 36 + ARM GAS /tmp/ccEQxcUB.s page 36 1969:Drivers/CMSIS/Include/core_cm7.h **** */ @@ -2158,7 +2158,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2023:Drivers/CMSIS/Include/core_cm7.h **** */ 2024:Drivers/CMSIS/Include/core_cm7.h **** __STATIC_INLINE void __NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority) 2025:Drivers/CMSIS/Include/core_cm7.h **** { - ARM GAS /tmp/ccwR4KB7.s page 37 + ARM GAS /tmp/ccEQxcUB.s page 37 2026:Drivers/CMSIS/Include/core_cm7.h **** if ((int32_t)(IRQn) >= 0) @@ -2218,7 +2218,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 36 .cfi_def_cfa_offset 4 37 .cfi_offset 14, -4 2073:Drivers/CMSIS/Include/core_cm7.h **** uint32_t PriorityGroupTmp = (PriorityGroup & (uint32_t)0x07UL); /* only values 0..7 are used - ARM GAS /tmp/ccwR4KB7.s page 38 + ARM GAS /tmp/ccEQxcUB.s page 38 38 .loc 2 2073 3 is_stmt 1 view .LVU2 @@ -2278,7 +2278,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2078:Drivers/CMSIS/Include/core_cm7.h **** 81 .loc 2 2078 109 discriminator 2 view .LVU19 82 003a 0023 movs r3, #0 - ARM GAS /tmp/ccwR4KB7.s page 39 + ARM GAS /tmp/ccEQxcUB.s page 39 83 003c EEE7 b .L2 @@ -2338,7 +2338,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 45:Src/main.c **** #define AD9102_REG_PAT_TIMEBASE 0x0028u 46:Src/main.c **** #define AD9102_REG_PAT_PERIOD 0x0029u 47:Src/main.c **** #define AD9102_REG_DAC_PAT 0x002Bu - ARM GAS /tmp/ccwR4KB7.s page 40 + ARM GAS /tmp/ccEQxcUB.s page 40 48:Src/main.c **** #define AD9102_REG_SAW_CONFIG 0x0037u @@ -2376,1171 +2376,1270 @@ ARM GAS /tmp/ccwR4KB7.s page 1 80:Src/main.c **** #define AD9102_SRAM_START_DELAY_BASE_DEFAULT 0x1u 81:Src/main.c **** #define AD9102_SRAM_START_DLY_DEFAULT 0x0000u 82:Src/main.c **** #define AD9102_SRAM_HOLD_DEFAULT 0x1u - 83:Src/main.c **** #define AD9102_SRAM_SAMPLES_DEFAULT 16u - 84:Src/main.c **** #define AD9102_SRAM_MAX_SAMPLES 4096u - 85:Src/main.c **** #define AD9102_SRAM_RAMP_MIN (-8192) - 86:Src/main.c **** #define AD9102_SRAM_RAMP_MAX (8191) - 87:Src/main.c **** #define AD9102_SRAM_RAMP_SPAN (AD9102_SRAM_RAMP_MAX - AD9102_SRAM_RAMP_MIN) - 88:Src/main.c **** - 89:Src/main.c **** #define AD9102_SAW_STEP_DEFAULT 1u - 90:Src/main.c **** #define AD9102_PAT_PERIOD_BASE_DEFAULT 0x2u - 91:Src/main.c **** #define AD9102_START_DELAY_BASE_DEFAULT 0x1u - 92:Src/main.c **** #define AD9102_PAT_TIMEBASE_HOLD_DEFAULT 0x1u - 93:Src/main.c **** #define AD9102_PAT_PERIOD_DEFAULT 0xFFFFu - 94:Src/main.c **** - 95:Src/main.c **** #define AD9102_FLAG_ENABLE 0x0001u - 96:Src/main.c **** #define AD9102_FLAG_TRIANGLE 0x0002u - 97:Src/main.c **** #define AD9102_FLAG_SRAM 0x0004u - 98:Src/main.c **** /* USER CODE END PD */ - 99:Src/main.c **** - 100:Src/main.c **** /* Private macro -------------------------------------------------------------*/ - 101:Src/main.c **** /* USER CODE BEGIN PM */ - 102:Src/main.c **** - 103:Src/main.c **** /* USER CODE END PM */ - 104:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 41 + 83:Src/main.c **** #define AD9102_SRAM_AMP_DEFAULT 8191u + 84:Src/main.c **** #define AD9102_SRAM_SAMPLES_DEFAULT 16u + 85:Src/main.c **** #define AD9102_SRAM_MAX_SAMPLES 4096u + 86:Src/main.c **** #define AD9102_SRAM_RAMP_MIN (-8192) + 87:Src/main.c **** #define AD9102_SRAM_RAMP_MAX (8191) + 88:Src/main.c **** #define AD9102_SRAM_RAMP_SPAN (AD9102_SRAM_RAMP_MAX - AD9102_SRAM_RAMP_MIN) + 89:Src/main.c **** + 90:Src/main.c **** #define AD9102_SAW_STEP_DEFAULT 1u + 91:Src/main.c **** #define AD9102_PAT_PERIOD_BASE_DEFAULT 0x2u + 92:Src/main.c **** #define AD9102_START_DELAY_BASE_DEFAULT 0x1u + 93:Src/main.c **** #define AD9102_PAT_TIMEBASE_HOLD_DEFAULT 0x1u + 94:Src/main.c **** #define AD9102_PAT_PERIOD_DEFAULT 0xFFFFu + 95:Src/main.c **** + 96:Src/main.c **** #define AD9102_FLAG_ENABLE 0x0001u + 97:Src/main.c **** #define AD9102_FLAG_TRIANGLE 0x0002u + 98:Src/main.c **** #define AD9102_FLAG_SRAM 0x0004u + 99:Src/main.c **** #define AD9102_FLAG_SRAM_FMT 0x0008u + 100:Src/main.c **** + 101:Src/main.c **** #define AD9833_FLAG_ENABLE 0x0001u + 102:Src/main.c **** #define AD9833_FLAG_TRIANGLE 0x0002u + 103:Src/main.c **** #define DS1809_FLAG_UC 0x0001u + 104:Src/main.c **** #define DS1809_FLAG_DC 0x0002u + ARM GAS /tmp/ccEQxcUB.s page 41 - 105:Src/main.c **** /* Private variables ---------------------------------------------------------*/ - 106:Src/main.c **** ADC_HandleTypeDef hadc1; - 107:Src/main.c **** ADC_HandleTypeDef hadc3; - 108:Src/main.c **** - 109:Src/main.c **** SD_HandleTypeDef hsd1; + 105:Src/main.c **** #define DS1809_PULSE_MS_DEFAULT 2u + 106:Src/main.c **** /* USER CODE END PD */ + 107:Src/main.c **** + 108:Src/main.c **** /* Private macro -------------------------------------------------------------*/ + 109:Src/main.c **** /* USER CODE BEGIN PM */ 110:Src/main.c **** - 111:Src/main.c **** TIM_HandleTypeDef htim4; - 112:Src/main.c **** TIM_HandleTypeDef htim8; - 113:Src/main.c **** TIM_HandleTypeDef htim10; - 114:Src/main.c **** TIM_HandleTypeDef htim11; - 115:Src/main.c **** - 116:Src/main.c **** UART_HandleTypeDef huart8; - 117:Src/main.c **** - 118:Src/main.c **** /* USER CODE BEGIN PV */ - 119:Src/main.c **** uint32_t TO6, TO6_before, TO6_stop, TO6_uart, SD_SEEK, SD_SLIDE, temp32, TO7, TO7_before, TO7_PID, - 120:Src/main.c **** uint8_t uart_buf, CPU_state, CPU_state_old, UART_transmission_request, State_Data[2], UART_DATA[DL_ - 121:Src/main.c **** uint16_t UART_rec_incr, UART_header, CS_result, temp16, Long_Data[DL_16], COMMAND[CL_16];//, SD_mat - 122:Src/main.c **** FRESULT fresult; // result - 123:Src/main.c **** int test; - 124:Src/main.c **** unsigned long fgoto, sizeoffile;//file pointer of the file object & size of file FPGA_RECEIVE_DATA_ - 125:Src/main.c **** - 126:Src/main.c **** LDx_SetupTypeDef LD1_curr_setup, LD2_curr_setup, LD1_def_setup, LD2_def_setup; - 127:Src/main.c **** Work_SetupTypeDef Curr_setup, Def_setup; - 128:Src/main.c **** LDx_ParamTypeDef LD1_param, LD2_param; - 129:Src/main.c **** - 130:Src/main.c **** LD_Blinker_StateTypeDef LD_blinker; - 131:Src/main.c **** - 132:Src/main.c **** task_t task; - 133:Src/main.c **** - 134:Src/main.c **** static const uint16_t ad9102_reg_addr[AD9102_REG_COUNT] = { - 135:Src/main.c **** 0x0000u, 0x0001u, 0x0002u, 0x0003u, 0x0004u, 0x0005u, 0x0006u, 0x0007u, - 136:Src/main.c **** 0x0008u, 0x0009u, 0x000au, 0x000bu, 0x000cu, 0x000du, 0x000eu, 0x001fu, - 137:Src/main.c **** 0x0020u, 0x0022u, 0x0023u, 0x0024u, 0x0025u, 0x0026u, 0x0027u, 0x0028u, - 138:Src/main.c **** 0x0029u, 0x002au, 0x002bu, 0x002cu, 0x002du, 0x002eu, 0x002fu, 0x0030u, - 139:Src/main.c **** 0x0031u, 0x0032u, 0x0033u, 0x0034u, 0x0035u, 0x0036u, 0x0037u, 0x003eu, - 140:Src/main.c **** 0x003fu, 0x0040u, 0x0041u, 0x0042u, 0x0043u, 0x0044u, 0x0045u, 0x0047u, - 141:Src/main.c **** 0x0050u, 0x0051u, 0x0052u, 0x0053u, 0x0054u, 0x0055u, 0x0056u, 0x0057u, - 142:Src/main.c **** 0x0058u, 0x0059u, 0x005au, 0x005bu, 0x005cu, 0x005du, 0x005eu, 0x005fu, - 143:Src/main.c **** 0x001eu, 0x001du - 144:Src/main.c **** }; - 145:Src/main.c **** - 146:Src/main.c **** static const uint16_t ad9102_example4_regval[AD9102_REG_COUNT] = { - 147:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, - 148:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x1f00u, 0x0000u, 0x0000u, 0x0000u, - 149:Src/main.c **** 0x000eu, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x3212u, 0x0121u, - 150:Src/main.c **** 0xffffu, 0x0000u, 0x0101u, 0x0003u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 151:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, 0x0000u, 0x0606u, 0x1999u, - 152:Src/main.c **** 0x9a00u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 153:Src/main.c **** 0x0fa0u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 154:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x16ffu, - 155:Src/main.c **** 0x0001u, 0x0001u - 156:Src/main.c **** }; - 157:Src/main.c **** - 158:Src/main.c **** static const uint16_t ad9102_example2_regval[AD9102_REG_COUNT] = { - 159:Src/main.c **** 0x0000u, 0x0e00u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, - 160:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x1f00u, 0x0000u, 0x0000u, 0x0000u, - 161:Src/main.c **** 0x000eu, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x3030u, 0x0111u, - ARM GAS /tmp/ccwR4KB7.s page 42 + 111:Src/main.c **** /* USER CODE END PM */ + 112:Src/main.c **** + 113:Src/main.c **** /* Private variables ---------------------------------------------------------*/ + 114:Src/main.c **** ADC_HandleTypeDef hadc1; + 115:Src/main.c **** ADC_HandleTypeDef hadc3; + 116:Src/main.c **** + 117:Src/main.c **** SD_HandleTypeDef hsd1; + 118:Src/main.c **** + 119:Src/main.c **** TIM_HandleTypeDef htim4; + 120:Src/main.c **** TIM_HandleTypeDef htim8; + 121:Src/main.c **** TIM_HandleTypeDef htim1; + 122:Src/main.c **** TIM_HandleTypeDef htim10; + 123:Src/main.c **** TIM_HandleTypeDef htim11; + 124:Src/main.c **** + 125:Src/main.c **** UART_HandleTypeDef huart8; + 126:Src/main.c **** + 127:Src/main.c **** /* USER CODE BEGIN PV */ + 128:Src/main.c **** uint32_t TO6, TO6_before, TO6_stop, TO6_uart, SD_SEEK, SD_SLIDE, temp32, TO7, TO7_before, TO7_PID, + 129:Src/main.c **** uint8_t uart_buf, CPU_state, CPU_state_old, UART_transmission_request, State_Data[2], UART_DATA[DL_ + 130:Src/main.c **** uint16_t UART_rec_incr, UART_header, CS_result, temp16, Long_Data[DL_16], COMMAND[CL_16];//, SD_mat + 131:Src/main.c **** FRESULT fresult; // result + 132:Src/main.c **** int test; + 133:Src/main.c **** unsigned long fgoto, sizeoffile;//file pointer of the file object & size of file FPGA_RECEIVE_DATA_ + 134:Src/main.c **** + 135:Src/main.c **** LDx_SetupTypeDef LD1_curr_setup, LD2_curr_setup, LD1_def_setup, LD2_def_setup; + 136:Src/main.c **** Work_SetupTypeDef Curr_setup, Def_setup; + 137:Src/main.c **** LDx_ParamTypeDef LD1_param, LD2_param; + 138:Src/main.c **** + 139:Src/main.c **** LD_Blinker_StateTypeDef LD_blinker; + 140:Src/main.c **** + 141:Src/main.c **** task_t task; + 142:Src/main.c **** + 143:Src/main.c **** static const uint16_t ad9102_reg_addr[AD9102_REG_COUNT] = { + 144:Src/main.c **** 0x0000u, 0x0001u, 0x0002u, 0x0003u, 0x0004u, 0x0005u, 0x0006u, 0x0007u, + 145:Src/main.c **** 0x0008u, 0x0009u, 0x000au, 0x000bu, 0x000cu, 0x000du, 0x000eu, 0x001fu, + 146:Src/main.c **** 0x0020u, 0x0022u, 0x0023u, 0x0024u, 0x0025u, 0x0026u, 0x0027u, 0x0028u, + 147:Src/main.c **** 0x0029u, 0x002au, 0x002bu, 0x002cu, 0x002du, 0x002eu, 0x002fu, 0x0030u, + 148:Src/main.c **** 0x0031u, 0x0032u, 0x0033u, 0x0034u, 0x0035u, 0x0036u, 0x0037u, 0x003eu, + 149:Src/main.c **** 0x003fu, 0x0040u, 0x0041u, 0x0042u, 0x0043u, 0x0044u, 0x0045u, 0x0047u, + 150:Src/main.c **** 0x0050u, 0x0051u, 0x0052u, 0x0053u, 0x0054u, 0x0055u, 0x0056u, 0x0057u, + 151:Src/main.c **** 0x0058u, 0x0059u, 0x005au, 0x005bu, 0x005cu, 0x005du, 0x005eu, 0x005fu, + 152:Src/main.c **** 0x001eu, 0x001du + 153:Src/main.c **** }; + 154:Src/main.c **** + 155:Src/main.c **** static const uint16_t ad9102_example4_regval[AD9102_REG_COUNT] = { + 156:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, + 157:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x1f00u, 0x0000u, 0x0000u, 0x0000u, + 158:Src/main.c **** 0x000eu, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x3212u, 0x0121u, + 159:Src/main.c **** 0xffffu, 0x0000u, 0x0101u, 0x0003u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + 160:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, 0x0000u, 0x0606u, 0x1999u, + 161:Src/main.c **** 0x9a00u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + ARM GAS /tmp/ccEQxcUB.s page 42 - 162:Src/main.c **** 0xffffu, 0x0000u, 0x0101u, 0x0003u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 163:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, 0x0000u, 0x0200u, 0x0000u, - 164:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 165:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, - 166:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0fa0u, 0x0000u, 0x3ff0u, 0x0100u, - 167:Src/main.c **** 0x0001u, 0x0001u - 168:Src/main.c **** }; - 169:Src/main.c **** - 170:Src/main.c **** - 171:Src/main.c **** - 172:Src/main.c **** - 173:Src/main.c **** /* USER CODE END PV */ - 174:Src/main.c **** - 175:Src/main.c **** /* Private function prototypes -----------------------------------------------*/ - 176:Src/main.c **** void SystemClock_Config(void); - 177:Src/main.c **** static void MX_GPIO_Init(void); - 178:Src/main.c **** static void MX_DMA_Init(void); - 179:Src/main.c **** static void MX_SPI4_Init(void); - 180:Src/main.c **** static void MX_TIM2_Init(void); - 181:Src/main.c **** static void MX_TIM5_Init(void); - 182:Src/main.c **** static void MX_ADC1_Init(void); - 183:Src/main.c **** static void MX_ADC3_Init(void); - 184:Src/main.c **** static void MX_SPI2_Init(void); - 185:Src/main.c **** static void MX_SPI5_Init(void); - 186:Src/main.c **** static void MX_SPI6_Init(void); - 187:Src/main.c **** static void MX_USART1_UART_Init(void); - 188:Src/main.c **** static void MX_SDMMC1_SD_Init(void); - 189:Src/main.c **** static void MX_TIM7_Init(void); - 190:Src/main.c **** static void MX_TIM6_Init(void); - 191:Src/main.c **** static void MX_TIM10_Init(void); - 192:Src/main.c **** static void MX_UART8_Init(void); - 193:Src/main.c **** static void MX_TIM8_Init(void); - 194:Src/main.c **** static void MX_TIM11_Init(void); - 195:Src/main.c **** static void MX_TIM4_Init(void); - 196:Src/main.c **** /* USER CODE BEGIN PFP */ - 197:Src/main.c **** static void Init_params(void); - 198:Src/main.c **** static void Decode_uart(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ - 199:Src/main.c **** static void Decode_task(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ - 200:Src/main.c **** void Set_LTEC(uint8_t num, uint16_t DATA); - 201:Src/main.c **** static uint16_t MPhD_T(uint8_t num); - 202:Src/main.c **** static uint16_t Get_ADC(uint8_t num); - 203:Src/main.c **** static uint16_t PID_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_resul - 204:Src/main.c **** static void AD9102_Init(void); - 205:Src/main.c **** static void AD9102_WriteReg(uint16_t addr, uint16_t value); - 206:Src/main.c **** static uint16_t AD9102_ReadReg(uint16_t addr); - 207:Src/main.c **** static void AD9102_WriteRegTable(const uint16_t *values, uint16_t count); - 208:Src/main.c **** static uint16_t AD9102_Apply(uint8_t saw_type, uint8_t enable, uint8_t saw_step, uint8_t pat_base, - 209:Src/main.c **** static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle); - 210:Src/main.c **** static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle); - 211:Src/main.c **** static uint8_t AD9102_CheckFlags(uint16_t pat_status, uint8_t expect_run, uint8_t saw_type, uint8_t - 212:Src/main.c **** static uint8_t AD9102_CheckFlagsSram(uint16_t pat_status, uint8_t expect_run, uint16_t samples, uin - 213:Src/main.c **** uint8_t CheckChecksum(uint16_t *pbuff); - 214:Src/main.c **** uint16_t CalculateChecksum(uint16_t *pbuff, uint16_t len); - 215:Src/main.c **** //int SD_Init(void); - 216:Src/main.c **** int SD_SAVE(uint16_t *pbuff); - 217:Src/main.c **** //uint32_t Get_Length(void); - 218:Src/main.c **** int SD_READ(uint16_t *pbuff); - ARM GAS /tmp/ccwR4KB7.s page 43 + 162:Src/main.c **** 0x0fa0u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + 163:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x16ffu, + 164:Src/main.c **** 0x0001u, 0x0001u + 165:Src/main.c **** }; + 166:Src/main.c **** + 167:Src/main.c **** static const uint16_t ad9102_example2_regval[AD9102_REG_COUNT] = { + 168:Src/main.c **** 0x0000u, 0x0e00u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, + 169:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x1f00u, 0x0000u, 0x0000u, 0x0000u, + 170:Src/main.c **** 0x000eu, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x3030u, 0x0111u, + 171:Src/main.c **** 0xffffu, 0x0000u, 0x0101u, 0x0003u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + 172:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x4000u, 0x0000u, 0x0200u, 0x0000u, + 173:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + 174:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0000u, + 175:Src/main.c **** 0x0000u, 0x0000u, 0x0000u, 0x0000u, 0x0fa0u, 0x0000u, 0x3ff0u, 0x0100u, + 176:Src/main.c **** 0x0001u, 0x0001u + 177:Src/main.c **** }; + 178:Src/main.c **** + 179:Src/main.c **** + 180:Src/main.c **** + 181:Src/main.c **** + 182:Src/main.c **** /* USER CODE END PV */ + 183:Src/main.c **** + 184:Src/main.c **** /* Private function prototypes -----------------------------------------------*/ + 185:Src/main.c **** void SystemClock_Config(void); + 186:Src/main.c **** static void MX_GPIO_Init(void); + 187:Src/main.c **** static void MX_DMA_Init(void); + 188:Src/main.c **** static void MX_SPI4_Init(void); + 189:Src/main.c **** static void MX_TIM2_Init(void); + 190:Src/main.c **** static void MX_TIM5_Init(void); + 191:Src/main.c **** static void MX_ADC1_Init(void); + 192:Src/main.c **** static void MX_ADC3_Init(void); + 193:Src/main.c **** static void MX_SPI2_Init(void); + 194:Src/main.c **** static void MX_SPI5_Init(void); + 195:Src/main.c **** static void MX_SPI6_Init(void); + 196:Src/main.c **** static void MX_USART1_UART_Init(void); + 197:Src/main.c **** static void MX_SDMMC1_SD_Init(void); + 198:Src/main.c **** static void MX_TIM7_Init(void); + 199:Src/main.c **** static void MX_TIM6_Init(void); + 200:Src/main.c **** static void MX_TIM10_Init(void); + 201:Src/main.c **** static void MX_UART8_Init(void); + 202:Src/main.c **** static void MX_TIM8_Init(void); + 203:Src/main.c **** static void MX_TIM11_Init(void); + 204:Src/main.c **** static void MX_TIM4_Init(void); + 205:Src/main.c **** static void MX_TIM1_Init(void); + 206:Src/main.c **** /* USER CODE BEGIN PFP */ + 207:Src/main.c **** static void Init_params(void); + 208:Src/main.c **** static void Decode_uart(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ + 209:Src/main.c **** static void Decode_task(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ + 210:Src/main.c **** void Set_LTEC(uint8_t num, uint16_t DATA); + 211:Src/main.c **** static uint16_t MPhD_T(uint8_t num); + 212:Src/main.c **** static uint16_t Get_ADC(uint8_t num); + 213:Src/main.c **** static uint16_t PID_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_resul + 214:Src/main.c **** static void AD9102_Init(void); + 215:Src/main.c **** static void AD9102_WriteReg(uint16_t addr, uint16_t value); + 216:Src/main.c **** static uint16_t AD9102_ReadReg(uint16_t addr); + 217:Src/main.c **** static void AD9102_WriteRegTable(const uint16_t *values, uint16_t count); + 218:Src/main.c **** static uint16_t AD9102_Apply(uint8_t saw_type, uint8_t enable, uint8_t saw_step, uint8_t pat_base, + ARM GAS /tmp/ccEQxcUB.s page 43 - 219:Src/main.c **** int SD_REMOVE(void); - 220:Src/main.c **** void USART_TX (uint8_t* dt, uint16_t sz); - 221:Src/main.c **** void USART_TX_DMA (uint16_t sz); - 222:Src/main.c **** static void Stop_TIM10(); - 223:Src/main.c **** static void OUT_trigger(uint8_t); - 224:Src/main.c **** /* USER CODE END PFP */ - 225:Src/main.c **** - 226:Src/main.c **** /* Private user code ---------------------------------------------------------*/ - 227:Src/main.c **** /* USER CODE BEGIN 0 */ - 228:Src/main.c **** - 229:Src/main.c **** /* USER CODE END 0 */ - 230:Src/main.c **** - 231:Src/main.c **** /** - 232:Src/main.c **** * @brief The application entry point. - 233:Src/main.c **** * @retval int - 234:Src/main.c **** */ - 235:Src/main.c **** int main(void) - 236:Src/main.c **** { - 237:Src/main.c **** - 238:Src/main.c **** /* USER CODE BEGIN 1 */ - 239:Src/main.c **** HAL_StatusTypeDef st; - 240:Src/main.c **** /* USER CODE END 1 */ - 241:Src/main.c **** - 242:Src/main.c **** /* MCU Configuration--------------------------------------------------------*/ - 243:Src/main.c **** - 244:Src/main.c **** /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ - 245:Src/main.c **** HAL_Init(); - 246:Src/main.c **** - 247:Src/main.c **** /* USER CODE BEGIN Init */ - 248:Src/main.c **** /*I hope you don't forget that first - MX_DMA_Init(); and than - MX_USART1_UART_Init();*/ - 249:Src/main.c **** /* USER CODE END Init */ - 250:Src/main.c **** - 251:Src/main.c **** /* Configure the system clock */ - 252:Src/main.c **** SystemClock_Config(); - 253:Src/main.c **** - 254:Src/main.c **** /* USER CODE BEGIN SysInit */ - 255:Src/main.c **** - 256:Src/main.c **** /* USER CODE END SysInit */ + 219:Src/main.c **** static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle, + 220:Src/main.c **** static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle, uint16_t amplitude); + 221:Src/main.c **** static uint8_t AD9102_CheckFlags(uint16_t pat_status, uint8_t expect_run, uint8_t saw_type, uint8_t + 222:Src/main.c **** static uint8_t AD9102_CheckFlagsSram(uint16_t pat_status, uint8_t expect_run, uint16_t samples, uin + 223:Src/main.c **** static void SPI2_SetMode(uint32_t polarity, uint32_t phase); + 224:Src/main.c **** static void AD9833_WriteWord(uint16_t word); + 225:Src/main.c **** static void AD9833_Apply(uint8_t enable, uint8_t triangle, uint32_t freq_word); + 226:Src/main.c **** static void DS1809_Pulse(uint8_t uc, uint8_t dc, uint16_t count, uint16_t pulse_ms); + 227:Src/main.c **** uint8_t CheckChecksum(uint16_t *pbuff); + 228:Src/main.c **** uint16_t CalculateChecksum(uint16_t *pbuff, uint16_t len); + 229:Src/main.c **** //int SD_Init(void); + 230:Src/main.c **** int SD_SAVE(uint16_t *pbuff); + 231:Src/main.c **** //uint32_t Get_Length(void); + 232:Src/main.c **** int SD_READ(uint16_t *pbuff); + 233:Src/main.c **** int SD_REMOVE(void); + 234:Src/main.c **** void USART_TX (uint8_t* dt, uint16_t sz); + 235:Src/main.c **** void USART_TX_DMA (uint16_t sz); + 236:Src/main.c **** static void Stop_TIM10(); + 237:Src/main.c **** static void OUT_trigger(uint8_t); + 238:Src/main.c **** /* USER CODE END PFP */ + 239:Src/main.c **** + 240:Src/main.c **** /* Private user code ---------------------------------------------------------*/ + 241:Src/main.c **** /* USER CODE BEGIN 0 */ + 242:Src/main.c **** + 243:Src/main.c **** /* USER CODE END 0 */ + 244:Src/main.c **** + 245:Src/main.c **** /** + 246:Src/main.c **** * @brief The application entry point. + 247:Src/main.c **** * @retval int + 248:Src/main.c **** */ + 249:Src/main.c **** int main(void) + 250:Src/main.c **** { + 251:Src/main.c **** + 252:Src/main.c **** /* USER CODE BEGIN 1 */ + 253:Src/main.c **** HAL_StatusTypeDef st; + 254:Src/main.c **** /* USER CODE END 1 */ + 255:Src/main.c **** + 256:Src/main.c **** /* MCU Configuration--------------------------------------------------------*/ 257:Src/main.c **** - 258:Src/main.c **** /* Initialize all configured peripherals */ - 259:Src/main.c **** MX_GPIO_Init(); - 260:Src/main.c **** MX_DMA_Init(); - 261:Src/main.c **** MX_SPI4_Init(); - 262:Src/main.c **** MX_FATFS_Init(); - 263:Src/main.c **** MX_TIM2_Init(); - 264:Src/main.c **** MX_TIM5_Init(); - 265:Src/main.c **** MX_ADC1_Init(); - 266:Src/main.c **** MX_ADC3_Init(); - 267:Src/main.c **** MX_SPI2_Init(); - 268:Src/main.c **** MX_SPI5_Init(); - 269:Src/main.c **** MX_SPI6_Init(); - 270:Src/main.c **** MX_USART1_UART_Init(); - 271:Src/main.c **** MX_SDMMC1_SD_Init(); - 272:Src/main.c **** MX_TIM7_Init(); - 273:Src/main.c **** MX_TIM6_Init(); - 274:Src/main.c **** MX_TIM10_Init(); - 275:Src/main.c **** MX_UART8_Init(); - ARM GAS /tmp/ccwR4KB7.s page 44 + 258:Src/main.c **** /* Reset of all peripherals, Initializes the Flash interface and the Systick. */ + 259:Src/main.c **** HAL_Init(); + 260:Src/main.c **** + 261:Src/main.c **** /* USER CODE BEGIN Init */ + 262:Src/main.c **** /*I hope you don't forget that first - MX_DMA_Init(); and than - MX_USART1_UART_Init();*/ + 263:Src/main.c **** /* USER CODE END Init */ + 264:Src/main.c **** + 265:Src/main.c **** /* Configure the system clock */ + 266:Src/main.c **** SystemClock_Config(); + 267:Src/main.c **** + 268:Src/main.c **** /* USER CODE BEGIN SysInit */ + 269:Src/main.c **** + 270:Src/main.c **** /* USER CODE END SysInit */ + 271:Src/main.c **** + 272:Src/main.c **** /* Initialize all configured peripherals */ + 273:Src/main.c **** MX_GPIO_Init(); + 274:Src/main.c **** MX_DMA_Init(); + 275:Src/main.c **** MX_SPI4_Init(); + ARM GAS /tmp/ccEQxcUB.s page 44 - 276:Src/main.c **** MX_TIM8_Init(); - 277:Src/main.c **** MX_TIM11_Init(); - 278:Src/main.c **** MX_TIM4_Init(); - 279:Src/main.c **** /* USER CODE BEGIN 2 */ - 280:Src/main.c **** Init_params(); - 281:Src/main.c **** //HAL_TIM_Base_Start(&htim11); - 282:Src/main.c **** //HAL_TIM_PWM_Start(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator - 283:Src/main.c **** - 284:Src/main.c **** - 285:Src/main.c **** //TIM4,11 clocks = 92 MHz - 286:Src/main.c **** - 287:Src/main.c **** //ADC clock - 288:Src/main.c **** //TIM4 -> ARR = 60; // for 1.5 MHz - 289:Src/main.c **** //TIM4 -> ARR = 91; // for 1 MHz - 290:Src/main.c **** //TIM4 -> ARR = 45; // for 2 MHz - 291:Src/main.c **** TIM4 -> ARR = 53; // for 1.735 MHz. It`s the highest frequency for correct ADC work. At higher fre - 292:Src/main.c **** - 293:Src/main.c **** TIM4 -> CCR3 = (TIM4 -> ARR +1)/2 - 1; - 294:Src/main.c **** - 295:Src/main.c **** - 296:Src/main.c **** //Mach-Zander clock (should be 1/4 of ADC clock freq) - 297:Src/main.c **** - 298:Src/main.c **** TIM11 -> ARR = (TIM4 -> ARR +1)*4 - 1; - 299:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 300:Src/main.c **** - 301:Src/main.c **** /* - 302:Src/main.c **** if (HAL_GPIO_ReadPin(INP_0_GPIO_Port, INP_0_Pin) == 0){ - 303:Src/main.c **** - 304:Src/main.c **** CPU_state = DECODE_ENABLE; - 305:Src/main.c **** } - 306:Src/main.c **** */ - 307:Src/main.c **** /* USER CODE END 2 */ - 308:Src/main.c **** - 309:Src/main.c **** /* Infinite loop */ - 310:Src/main.c **** /* USER CODE BEGIN WHILE */ - 311:Src/main.c **** while (1) - 312:Src/main.c **** { - 313:Src/main.c **** if ((HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin)==GPIO_PIN_SET)&&(u_rx_flg == 0)) - 314:Src/main.c **** { - 315:Src/main.c **** //NVIC_DisableIRQ(USART1_IRQn); - 316:Src/main.c **** LL_USART_EnableIT_PE(USART1); - 317:Src/main.c **** LL_USART_EnableIT_RXNE(USART1); - 318:Src/main.c **** LL_USART_EnableIT_ERROR(USART1); - 319:Src/main.c **** NVIC_SetPriority(USART1_IRQn, 0); - 320:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn);//In other case you have FE error flag... - 321:Src/main.c **** u_rx_flg = 1; - 322:Src/main.c **** } - 323:Src/main.c **** // else - 324:Src/main.c **** // { - 325:Src/main.c **** // //NVIC_DisableIRQ(USART1_IRQn); - 326:Src/main.c **** // u_rx_flg = 0; - 327:Src/main.c **** // } - 328:Src/main.c **** switch (CPU_state) - 329:Src/main.c **** { - 330:Src/main.c **** case HALT://0 - Default state - 331:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 332:Src/main.c **** task.current_param = task.min_param; - ARM GAS /tmp/ccwR4KB7.s page 45 + 276:Src/main.c **** MX_FATFS_Init(); + 277:Src/main.c **** MX_TIM2_Init(); + 278:Src/main.c **** MX_TIM5_Init(); + 279:Src/main.c **** MX_ADC1_Init(); + 280:Src/main.c **** MX_ADC3_Init(); + 281:Src/main.c **** MX_SPI2_Init(); + 282:Src/main.c **** MX_SPI5_Init(); + 283:Src/main.c **** MX_SPI6_Init(); + 284:Src/main.c **** MX_USART1_UART_Init(); + 285:Src/main.c **** MX_SDMMC1_SD_Init(); + 286:Src/main.c **** MX_TIM7_Init(); + 287:Src/main.c **** MX_TIM6_Init(); + 288:Src/main.c **** MX_TIM10_Init(); + 289:Src/main.c **** MX_UART8_Init(); + 290:Src/main.c **** MX_TIM8_Init(); + 291:Src/main.c **** MX_TIM11_Init(); + 292:Src/main.c **** MX_TIM4_Init(); + 293:Src/main.c **** MX_TIM1_Init(); + 294:Src/main.c **** /* USER CODE BEGIN 2 */ + 295:Src/main.c **** Init_params(); + 296:Src/main.c **** //HAL_TIM_Base_Start(&htim11); + 297:Src/main.c **** //HAL_TIM_PWM_Start(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator + 298:Src/main.c **** + 299:Src/main.c **** + 300:Src/main.c **** //TIM4,11 clocks = 92 MHz + 301:Src/main.c **** + 302:Src/main.c **** //ADC clock + 303:Src/main.c **** //TIM4 -> ARR = 60; // for 1.5 MHz + 304:Src/main.c **** //TIM4 -> ARR = 91; // for 1 MHz + 305:Src/main.c **** //TIM4 -> ARR = 45; // for 2 MHz + 306:Src/main.c **** TIM4 -> ARR = 53; // for 1.735 MHz. It`s the highest frequency for correct ADC work. At higher fre + 307:Src/main.c **** + 308:Src/main.c **** TIM4 -> CCR3 = (TIM4 -> ARR +1)/2 - 1; + 309:Src/main.c **** + 310:Src/main.c **** + 311:Src/main.c **** //Mach-Zander clock (should be 1/4 of ADC clock freq) + 312:Src/main.c **** + 313:Src/main.c **** TIM11 -> ARR = (TIM4 -> ARR +1)*4 - 1; + 314:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + 315:Src/main.c **** + 316:Src/main.c **** // AD9833 MCLK output on PE9 (TIM1_CH1) + 317:Src/main.c **** // TIM1 clock = 184 MHz, ARR=8 -> ~20.44 MHz output + 318:Src/main.c **** HAL_TIM_PWM_Start(&htim1, TIM_CHANNEL_1); + 319:Src/main.c **** + 320:Src/main.c **** /* + 321:Src/main.c **** if (HAL_GPIO_ReadPin(INP_0_GPIO_Port, INP_0_Pin) == 0){ + 322:Src/main.c **** + 323:Src/main.c **** CPU_state = DECODE_ENABLE; + 324:Src/main.c **** } + 325:Src/main.c **** */ + 326:Src/main.c **** /* USER CODE END 2 */ + 327:Src/main.c **** + 328:Src/main.c **** /* Infinite loop */ + 329:Src/main.c **** /* USER CODE BEGIN WHILE */ + 330:Src/main.c **** while (1) + 331:Src/main.c **** { + 332:Src/main.c **** if ((HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin)==GPIO_PIN_SET)&&(u_rx_flg == 0)) + ARM GAS /tmp/ccEQxcUB.s page 45 - 333:Src/main.c **** Stop_TIM10(); - 334:Src/main.c **** break; - 335:Src/main.c **** case DECODE_ENABLE://1 - Decode rec. message - 336:Src/main.c **** CS_result = CalculateChecksum(COMMAND, CL_16-2); - 337:Src/main.c **** if (CheckChecksum(COMMAND)) - 338:Src/main.c **** { - 339:Src/main.c **** LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC & TEC1 - 340:Src/main.c **** LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC & TEC2 - 341:Src/main.c **** Decode_uart(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); - 342:Src/main.c **** TO6_before = TO6; - 343:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; - 344:Src/main.c **** //LD2_param.LD_TEMP_Before = LD2_param.LD_TEMP; - 345:Src/main.c **** CPU_state = WORK_ENABLE; - 346:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle - 347:Src/main.c **** } - 348:Src/main.c **** else - 349:Src/main.c **** { - 350:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; - 351:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 352:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 353:Src/main.c **** } - 354:Src/main.c **** UART_transmission_request = MESS_01; - 355:Src/main.c **** break; - 356:Src/main.c **** case DEFAULT_ENABLE://2 - Go to HALT - 357:Src/main.c **** //Set current setup to default - 358:Src/main.c **** task.current_param = task.min_param; - 359:Src/main.c **** Stop_TIM10(); - 360:Src/main.c **** Init_params(); - 361:Src/main.c **** LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC & TEC1 - 362:Src/main.c **** LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC & TEC2 - 363:Src/main.c **** CPU_state = HALT; - 364:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 365:Src/main.c **** UART_transmission_request = MESS_01; - 366:Src/main.c **** break; - 367:Src/main.c **** case TRANS_S_ENABLE://3 - Transmith saved packet Before this operation must to be defaulting! - 368:Src/main.c **** temp16 = SD_READ(&Long_Data[0]); - 369:Src/main.c **** State_Data[0]|=temp16&0xff; - 370:Src/main.c **** if (temp16==0) - 371:Src/main.c **** { - 372:Src/main.c **** UART_transmission_request = MESS_03; - 373:Src/main.c **** } - 374:Src/main.c **** else - 375:Src/main.c **** { - 376:Src/main.c **** UART_transmission_request = MESS_01; - 377:Src/main.c **** } - 378:Src/main.c **** CPU_state_old = HALT; - 379:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 380:Src/main.c **** break; - 381:Src/main.c **** case TRANS_ENABLE://4 - Transmith current packet - 382:Src/main.c **** UART_transmission_request = MESS_02; - 383:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 384:Src/main.c **** break; - 385:Src/main.c **** case REMOVE_FILE://5 - Remove file from SD - 386:Src/main.c **** State_Data[0]|=SD_REMOVE()&0xff; - 387:Src/main.c **** UART_transmission_request = MESS_01; - 388:Src/main.c **** CPU_state = CPU_state_old; - 389:Src/main.c **** break; - ARM GAS /tmp/ccwR4KB7.s page 46 + 333:Src/main.c **** { + 334:Src/main.c **** //NVIC_DisableIRQ(USART1_IRQn); + 335:Src/main.c **** LL_USART_EnableIT_PE(USART1); + 336:Src/main.c **** LL_USART_EnableIT_RXNE(USART1); + 337:Src/main.c **** LL_USART_EnableIT_ERROR(USART1); + 338:Src/main.c **** NVIC_SetPriority(USART1_IRQn, 0); + 339:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn);//In other case you have FE error flag... + 340:Src/main.c **** u_rx_flg = 1; + 341:Src/main.c **** } + 342:Src/main.c **** // else + 343:Src/main.c **** // { + 344:Src/main.c **** // //NVIC_DisableIRQ(USART1_IRQn); + 345:Src/main.c **** // u_rx_flg = 0; + 346:Src/main.c **** // } + 347:Src/main.c **** switch (CPU_state) + 348:Src/main.c **** { + 349:Src/main.c **** case HALT://0 - Default state + 350:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 351:Src/main.c **** task.current_param = task.min_param; + 352:Src/main.c **** Stop_TIM10(); + 353:Src/main.c **** break; + 354:Src/main.c **** case DECODE_ENABLE://1 - Decode rec. message + 355:Src/main.c **** CS_result = CalculateChecksum(COMMAND, CL_16-2); + 356:Src/main.c **** if (CheckChecksum(COMMAND)) + 357:Src/main.c **** { + 358:Src/main.c **** LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC & TEC1 + 359:Src/main.c **** LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC & TEC2 + 360:Src/main.c **** Decode_uart(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); + 361:Src/main.c **** TO6_before = TO6; + 362:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; + 363:Src/main.c **** //LD2_param.LD_TEMP_Before = LD2_param.LD_TEMP; + 364:Src/main.c **** CPU_state = WORK_ENABLE; + 365:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle + 366:Src/main.c **** } + 367:Src/main.c **** else + 368:Src/main.c **** { + 369:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 370:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 371:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 372:Src/main.c **** } + 373:Src/main.c **** UART_transmission_request = MESS_01; + 374:Src/main.c **** break; + 375:Src/main.c **** case DEFAULT_ENABLE://2 - Go to HALT + 376:Src/main.c **** //Set current setup to default + 377:Src/main.c **** task.current_param = task.min_param; + 378:Src/main.c **** Stop_TIM10(); + 379:Src/main.c **** Init_params(); + 380:Src/main.c **** LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC & TEC1 + 381:Src/main.c **** LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC & TEC2 + 382:Src/main.c **** CPU_state = HALT; + 383:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 384:Src/main.c **** UART_transmission_request = MESS_01; + 385:Src/main.c **** break; + 386:Src/main.c **** case TRANS_S_ENABLE://3 - Transmith saved packet Before this operation must to be defaulting! + 387:Src/main.c **** temp16 = SD_READ(&Long_Data[0]); + 388:Src/main.c **** State_Data[0]|=temp16&0xff; + 389:Src/main.c **** if (temp16==0) + ARM GAS /tmp/ccEQxcUB.s page 46 - 390:Src/main.c **** case STATE://6 - Transmith state message - 391:Src/main.c **** UART_transmission_request = MESS_01; - 392:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 393:Src/main.c **** break; - 394:Src/main.c **** case WORK_ENABLE://7 - Main work cycle - 395:Src/main.c **** task.current_param = task.min_param; - 396:Src/main.c **** Stop_TIM10(); - 397:Src/main.c **** if (TO7>TO7_before)//Main work cycle go with the timer 7 (1000 us or 1 kHz) - 398:Src/main.c **** { - 399:Src/main.c **** TO7_before = TO7; - 400:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 401:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 402:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 403:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 404:Src/main.c **** - 405:Src/main.c **** //Correct temperature in all pulses - 406:Src/main.c **** (void) MPhD_T(3); - 407:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); - 408:Src/main.c **** (void) MPhD_T(4); - 409:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); - 410:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 411:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 - 412:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 413:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 - 414:Src/main.c **** - 415:Src/main.c **** Long_Data[1] = LD1_param.POWER;//Translate Data from monitor photodiode of LD1 to Long_Data - 416:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 417:Src/main.c **** - 418:Src/main.c **** Set_LTEC(1,LD1_curr_setup.CURRENT);//Drive Laser diode 1 - 419:Src/main.c **** Set_LTEC(2,LD2_curr_setup.CURRENT);//Drive Laser diode 2 - 420:Src/main.c **** - 421:Src/main.c **** //Prepare DATA of internals ADCs - 422:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 423:Src/main.c **** temp16 = Get_ADC(0); - 424:Src/main.c **** temp16 = Get_ADC(1); - 425:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain - 426:Src/main.c **** - 427:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 428:Src/main.c **** temp16 = Get_ADC(1); - 429:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain - 430:Src/main.c **** - 431:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 432:Src/main.c **** temp16 = Get_ADC(1); - 433:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor - 434:Src/main.c **** - 435:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 436:Src/main.c **** temp16 = Get_ADC(1); - 437:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor - 438:Src/main.c **** - 439:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 440:Src/main.c **** temp16 = Get_ADC(1); - 441:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor - 442:Src/main.c **** temp16 = Get_ADC(2); - 443:Src/main.c **** - 444:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 445:Src/main.c **** temp16 = Get_ADC(3); - 446:Src/main.c **** temp16 = Get_ADC(4); - ARM GAS /tmp/ccwR4KB7.s page 47 + 390:Src/main.c **** { + 391:Src/main.c **** UART_transmission_request = MESS_03; + 392:Src/main.c **** } + 393:Src/main.c **** else + 394:Src/main.c **** { + 395:Src/main.c **** UART_transmission_request = MESS_01; + 396:Src/main.c **** } + 397:Src/main.c **** CPU_state_old = HALT; + 398:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 399:Src/main.c **** break; + 400:Src/main.c **** case TRANS_ENABLE://4 - Transmith current packet + 401:Src/main.c **** UART_transmission_request = MESS_02; + 402:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 403:Src/main.c **** break; + 404:Src/main.c **** case REMOVE_FILE://5 - Remove file from SD + 405:Src/main.c **** State_Data[0]|=SD_REMOVE()&0xff; + 406:Src/main.c **** UART_transmission_request = MESS_01; + 407:Src/main.c **** CPU_state = CPU_state_old; + 408:Src/main.c **** break; + 409:Src/main.c **** case STATE://6 - Transmith state message + 410:Src/main.c **** UART_transmission_request = MESS_01; + 411:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 412:Src/main.c **** break; + 413:Src/main.c **** case WORK_ENABLE://7 - Main work cycle + 414:Src/main.c **** task.current_param = task.min_param; + 415:Src/main.c **** Stop_TIM10(); + 416:Src/main.c **** if (TO7>TO7_before)//Main work cycle go with the timer 7 (1000 us or 1 kHz) + 417:Src/main.c **** { + 418:Src/main.c **** TO7_before = TO7; + 419:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 420:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 421:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 422:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 423:Src/main.c **** + 424:Src/main.c **** //Correct temperature in all pulses + 425:Src/main.c **** (void) MPhD_T(3); + 426:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); + 427:Src/main.c **** (void) MPhD_T(4); + 428:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); + 429:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 430:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 + 431:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 432:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 + 433:Src/main.c **** + 434:Src/main.c **** Long_Data[1] = LD1_param.POWER;//Translate Data from monitor photodiode of LD1 to Long_Data + 435:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 436:Src/main.c **** + 437:Src/main.c **** Set_LTEC(1,LD1_curr_setup.CURRENT);//Drive Laser diode 1 + 438:Src/main.c **** Set_LTEC(2,LD2_curr_setup.CURRENT);//Drive Laser diode 2 + 439:Src/main.c **** + 440:Src/main.c **** //Prepare DATA of internals ADCs + 441:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 442:Src/main.c **** temp16 = Get_ADC(0); + 443:Src/main.c **** temp16 = Get_ADC(1); + 444:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain + 445:Src/main.c **** + 446:Src/main.c **** //Put the temperature of LD2 to Long_Data: + ARM GAS /tmp/ccEQxcUB.s page 47 - 447:Src/main.c **** Long_Data[12] = temp16; - 448:Src/main.c **** temp16 = Get_ADC(5); - 449:Src/main.c **** - 450:Src/main.c **** //Put the timer tick to Long_Data: - 451:Src/main.c **** TO6_stop = TO6; - 452:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 453:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 454:Src/main.c **** - 455:Src/main.c **** //Put the average temperature of LD1 to Long_Data: - 456:Src/main.c **** Long_Data[5] = LD1_param.LD_CURR_TEMP; + 447:Src/main.c **** temp16 = Get_ADC(1); + 448:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain + 449:Src/main.c **** + 450:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 451:Src/main.c **** temp16 = Get_ADC(1); + 452:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor + 453:Src/main.c **** + 454:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 455:Src/main.c **** temp16 = Get_ADC(1); + 456:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor 457:Src/main.c **** - 458:Src/main.c **** //Put the average temperature of LD2 to Long_Data: - 459:Src/main.c **** Long_Data[6] = LD2_param.LD_CURR_TEMP; - 460:Src/main.c **** - 461:Src/main.c **** if (Curr_setup.SD_EN==1) - 462:Src/main.c **** { - 463:Src/main.c **** CS_result = CalculateChecksum(&Long_Data[1], DL_16-2); - 464:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 465:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); - 466:Src/main.c **** State_Data[0]|=temp16&0xff; - 467:Src/main.c **** } - 468:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle - 469:Src/main.c **** } - 470:Src/main.c **** break; - 471:Src/main.c **** case AD9102_CMD://10 - Configure AD9102 sawtooth output - 472:Src/main.c **** if (CalculateChecksum(COMMAND, AD9102_CMD_WORDS - 1) == COMMAND[AD9102_CMD_WORDS - 1]) - 473:Src/main.c **** { - 474:Src/main.c **** uint16_t flags = COMMAND[0]; - 475:Src/main.c **** uint16_t param0 = COMMAND[1]; - 476:Src/main.c **** uint16_t param1 = COMMAND[2]; - 477:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; - 478:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; - 479:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; - 480:Src/main.c **** - 481:Src/main.c **** if (sram_mode) - 482:Src/main.c **** { - 483:Src/main.c **** uint16_t samples = param0; - 484:Src/main.c **** uint8_t hold = (uint8_t)(param1 & 0x0Fu); - 485:Src/main.c **** uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle); - 486:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 487:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) - 488:Src/main.c **** { - 489:Src/main.c **** State_Data[0] |= AD9102_ERR; - 490:Src/main.c **** } - 491:Src/main.c **** } - 492:Src/main.c **** else - 493:Src/main.c **** { - 494:Src/main.c **** uint8_t saw_type = triangle ? AD9102_SAW_TYPE_TRI : AD9102_SAW_TYPE_UP; - 495:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); - 496:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); - 497:Src/main.c **** uint16_t pat_period = param1; - 498:Src/main.c **** - 499:Src/main.c **** if (param0 == 0u && param1 == 0u) - 500:Src/main.c **** { - 501:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; - 502:Src/main.c **** pat_base = AD9102_PAT_PERIOD_BASE_DEFAULT; - 503:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; - ARM GAS /tmp/ccwR4KB7.s page 48 + 458:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 459:Src/main.c **** temp16 = Get_ADC(1); + 460:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor + 461:Src/main.c **** temp16 = Get_ADC(2); + 462:Src/main.c **** + 463:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 464:Src/main.c **** temp16 = Get_ADC(3); + 465:Src/main.c **** temp16 = Get_ADC(4); + 466:Src/main.c **** Long_Data[12] = temp16; + 467:Src/main.c **** temp16 = Get_ADC(5); + 468:Src/main.c **** + 469:Src/main.c **** //Put the timer tick to Long_Data: + 470:Src/main.c **** TO6_stop = TO6; + 471:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 472:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 473:Src/main.c **** + 474:Src/main.c **** //Put the average temperature of LD1 to Long_Data: + 475:Src/main.c **** Long_Data[5] = LD1_param.LD_CURR_TEMP; + 476:Src/main.c **** + 477:Src/main.c **** //Put the average temperature of LD2 to Long_Data: + 478:Src/main.c **** Long_Data[6] = LD2_param.LD_CURR_TEMP; + 479:Src/main.c **** + 480:Src/main.c **** if (Curr_setup.SD_EN==1) + 481:Src/main.c **** { + 482:Src/main.c **** CS_result = CalculateChecksum(&Long_Data[1], DL_16-2); + 483:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 484:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); + 485:Src/main.c **** State_Data[0]|=temp16&0xff; + 486:Src/main.c **** } + 487:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle + 488:Src/main.c **** } + 489:Src/main.c **** break; + 490:Src/main.c **** case AD9102_CMD://10 - Configure AD9102 sawtooth output + 491:Src/main.c **** if (CalculateChecksum(COMMAND, AD9102_CMD_WORDS - 1) == COMMAND[AD9102_CMD_WORDS - 1]) + 492:Src/main.c **** { + 493:Src/main.c **** uint16_t flags = COMMAND[0]; + 494:Src/main.c **** uint16_t param0 = COMMAND[1]; + 495:Src/main.c **** uint16_t param1 = COMMAND[2]; + 496:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; + 497:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; + 498:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; + 499:Src/main.c **** + 500:Src/main.c **** if (sram_mode) + 501:Src/main.c **** { + 502:Src/main.c **** uint8_t sram_fmt = (flags & AD9102_FLAG_SRAM_FMT) ? 1u : 0u; + 503:Src/main.c **** uint16_t samples; + ARM GAS /tmp/ccEQxcUB.s page 48 - 504:Src/main.c **** } - 505:Src/main.c **** else - 506:Src/main.c **** { - 507:Src/main.c **** if (saw_step == 0u) - 508:Src/main.c **** { - 509:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; - 510:Src/main.c **** } - 511:Src/main.c **** else if (saw_step > 63u) - 512:Src/main.c **** { - 513:Src/main.c **** saw_step = 63u; - 514:Src/main.c **** } - 515:Src/main.c **** if (pat_period == 0u) - 516:Src/main.c **** { - 517:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; - 518:Src/main.c **** } - 519:Src/main.c **** } - 520:Src/main.c **** - 521:Src/main.c **** uint16_t pat_status = AD9102_Apply(saw_type, enable, saw_step, pat_base, pat_period); - 522:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 523:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) - 524:Src/main.c **** { - 525:Src/main.c **** State_Data[0] |= AD9102_ERR; - 526:Src/main.c **** } - 527:Src/main.c **** } - 528:Src/main.c **** } - 529:Src/main.c **** else - 530:Src/main.c **** { - 531:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; - 532:Src/main.c **** } - 533:Src/main.c **** UART_transmission_request = MESS_01; - 534:Src/main.c **** CPU_state = CPU_state_old; - 535:Src/main.c **** break; - 536:Src/main.c **** case DECODE_TASK: - 537:Src/main.c **** if (CheckChecksum(COMMAND)) - 538:Src/main.c **** { - 539:Src/main.c **** Decode_task(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); - 540:Src/main.c **** TO6_before = TO6; - 541:Src/main.c **** CPU_state = RUN_TASK; - 542:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle - 543:Src/main.c **** } - 544:Src/main.c **** else - 545:Src/main.c **** { - 546:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; - 547:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 548:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 549:Src/main.c **** } - 550:Src/main.c **** UART_transmission_request = MESS_01; - 551:Src/main.c **** break; - 552:Src/main.c **** case RUN_TASK: - 553:Src/main.c **** switch (task.task_type) - 554:Src/main.c **** { - 555:Src/main.c **** case TT_CHANGE_CURR_1: - 556:Src/main.c **** - 557:Src/main.c **** - 558:Src/main.c **** //calculating timer periods for ADC clock and Mach-Zander modulator - 559:Src/main.c **** //ADC clock - 560:Src/main.c **** //TIM4 -> ARR = 60; // for 1.5 MHz - ARM GAS /tmp/ccwR4KB7.s page 49 + 504:Src/main.c **** uint8_t hold; + 505:Src/main.c **** uint16_t amplitude; + 506:Src/main.c **** + 507:Src/main.c **** if (sram_fmt) + 508:Src/main.c **** { + 509:Src/main.c **** amplitude = param0; + 510:Src/main.c **** samples = param1; + 511:Src/main.c **** hold = AD9102_SRAM_HOLD_DEFAULT; + 512:Src/main.c **** } + 513:Src/main.c **** else + 514:Src/main.c **** { + 515:Src/main.c **** samples = param0; + 516:Src/main.c **** hold = (uint8_t)(param1 & 0x0Fu); + 517:Src/main.c **** amplitude = AD9102_SRAM_AMP_DEFAULT; + 518:Src/main.c **** } + 519:Src/main.c **** + 520:Src/main.c **** uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle, amplitude); + 521:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 522:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) + 523:Src/main.c **** { + 524:Src/main.c **** State_Data[0] |= AD9102_ERR; + 525:Src/main.c **** } + 526:Src/main.c **** } + 527:Src/main.c **** else + 528:Src/main.c **** { + 529:Src/main.c **** uint8_t saw_type = triangle ? AD9102_SAW_TYPE_TRI : AD9102_SAW_TYPE_UP; + 530:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); + 531:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); + 532:Src/main.c **** uint16_t pat_period = param1; + 533:Src/main.c **** + 534:Src/main.c **** if (param0 == 0u && param1 == 0u) + 535:Src/main.c **** { + 536:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; + 537:Src/main.c **** pat_base = AD9102_PAT_PERIOD_BASE_DEFAULT; + 538:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; + 539:Src/main.c **** } + 540:Src/main.c **** else + 541:Src/main.c **** { + 542:Src/main.c **** if (saw_step == 0u) + 543:Src/main.c **** { + 544:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; + 545:Src/main.c **** } + 546:Src/main.c **** else if (saw_step > 63u) + 547:Src/main.c **** { + 548:Src/main.c **** saw_step = 63u; + 549:Src/main.c **** } + 550:Src/main.c **** if (pat_period == 0u) + 551:Src/main.c **** { + 552:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; + 553:Src/main.c **** } + 554:Src/main.c **** } + 555:Src/main.c **** + 556:Src/main.c **** uint16_t pat_status = AD9102_Apply(saw_type, enable, saw_step, pat_base, pat_period); + 557:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 558:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) + 559:Src/main.c **** { + 560:Src/main.c **** State_Data[0] |= AD9102_ERR; + ARM GAS /tmp/ccEQxcUB.s page 49 - 561:Src/main.c **** //TIM4 -> ARR = 91; // for 1 MHz - 562:Src/main.c **** //TIM4 -> ARR = 45; // for 2 MHz - 563:Src/main.c **** - 564:Src/main.c **** //online calculation for debug purposes: - 565:Src/main.c **** //manually varying TIM4 -> ARR by debugger while running - 566:Src/main.c **** //TIM4 -> CCR3 = (TIM4 -> ARR +1)/2 - 1; - 567:Src/main.c **** - 568:Src/main.c **** - 569:Src/main.c **** //Mach-Zander clock (should be half of ADC clock freq) - 570:Src/main.c **** //TIM11 -> ARR = (TIM4 -> ARR +1)*2 - 1; - 571:Src/main.c **** //TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 572:Src/main.c **** - 573:Src/main.c **** - 574:Src/main.c **** - 575:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.curr); - 576:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 577:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 578:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 579:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 580:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 581:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 582:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 583:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 584:Src/main.c **** - 585:Src/main.c **** // Toggle pin for oscilloscope - 586:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); //start of the whole frequency sweep proc - 587:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 588:Src/main.c **** - 589:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); - 590:Src/main.c **** if (st != HAL_OK) - 591:Src/main.c **** while(1); - 592:Src/main.c **** - 593:Src/main.c **** uint16_t step_counter = 0; - 594:Src/main.c **** uint16_t trigger_counter = 0; - 595:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 - 596:Src/main.c **** uint16_t task_sheduler = 0; - 597:Src/main.c **** - 598:Src/main.c **** + 561:Src/main.c **** } + 562:Src/main.c **** } + 563:Src/main.c **** } + 564:Src/main.c **** else + 565:Src/main.c **** { + 566:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 567:Src/main.c **** } + 568:Src/main.c **** UART_transmission_request = MESS_01; + 569:Src/main.c **** CPU_state = CPU_state_old; + 570:Src/main.c **** break; + 571:Src/main.c **** case AD9833_CMD://11 - Configure AD9833 triangle output + 572:Src/main.c **** State_Data[1] = 0u; + 573:Src/main.c **** if (CalculateChecksum(COMMAND, AD9833_CMD_WORDS - 1) == COMMAND[AD9833_CMD_WORDS - 1]) + 574:Src/main.c **** { + 575:Src/main.c **** uint16_t flags = COMMAND[0]; + 576:Src/main.c **** uint16_t lsw = (uint16_t)(COMMAND[1] & 0x3FFFu); + 577:Src/main.c **** uint16_t msw = (uint16_t)(COMMAND[2] & 0x3FFFu); + 578:Src/main.c **** uint8_t enable = (flags & AD9833_FLAG_ENABLE) ? 1u : 0u; + 579:Src/main.c **** uint8_t triangle = (flags & AD9833_FLAG_TRIANGLE) ? 1u : 0u; + 580:Src/main.c **** uint32_t freq_word = ((uint32_t)msw << 14) | (uint32_t)lsw; + 581:Src/main.c **** + 582:Src/main.c **** AD9833_Apply(enable, triangle, freq_word); + 583:Src/main.c **** } + 584:Src/main.c **** else + 585:Src/main.c **** { + 586:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 587:Src/main.c **** } + 588:Src/main.c **** UART_transmission_request = MESS_01; + 589:Src/main.c **** CPU_state = CPU_state_old; + 590:Src/main.c **** break; + 591:Src/main.c **** case DS1809_CMD://12 - Pulse DS1809 UC/DC controls + 592:Src/main.c **** if (CalculateChecksum(COMMAND, DS1809_CMD_WORDS - 1) == COMMAND[DS1809_CMD_WORDS - 1]) + 593:Src/main.c **** { + 594:Src/main.c **** uint16_t flags = COMMAND[0]; + 595:Src/main.c **** uint16_t count = COMMAND[1]; + 596:Src/main.c **** uint16_t pulse_ms = COMMAND[2]; + 597:Src/main.c **** uint8_t uc = (flags & DS1809_FLAG_UC) ? 1u : 0u; + 598:Src/main.c **** uint8_t dc = (flags & DS1809_FLAG_DC) ? 1u : 0u; 599:Src/main.c **** - 600:Src/main.c **** HAL_TIM_PWM_Stop(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator - 601:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock - 602:Src/main.c **** TIM11 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 603:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 604:Src/main.c **** - 605:Src/main.c **** - 606:Src/main.c **** - 607:Src/main.c **** TIM11 -> CNT = 0; - 608:Src/main.c **** TIM4 -> CNT = 0; - 609:Src/main.c **** - 610:Src/main.c **** HAL_TIM_PWM_Start(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator - 611:Src/main.c **** HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_3); //start ADC clock - 612:Src/main.c **** //TIM4 -> CNT = 0; - 613:Src/main.c **** - 614:Src/main.c **** TIM4 -> CNT = TIM4 -> ARR - 20; // not zero to make phase shift that will be robust to big de - 615:Src/main.c **** TIM11 -> CNT = 0; - 616:Src/main.c **** - 617:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 50 + 600:Src/main.c **** if (uc && dc) + 601:Src/main.c **** { + 602:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 603:Src/main.c **** } + 604:Src/main.c **** else + 605:Src/main.c **** { + 606:Src/main.c **** if (count == 0u) + 607:Src/main.c **** { + 608:Src/main.c **** count = 1u; + 609:Src/main.c **** } + 610:Src/main.c **** if (count > 64u) + 611:Src/main.c **** { + 612:Src/main.c **** count = 64u; + 613:Src/main.c **** } + 614:Src/main.c **** if (pulse_ms == 0u) + 615:Src/main.c **** { + 616:Src/main.c **** pulse_ms = DS1809_PULSE_MS_DEFAULT; + 617:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 50 - 618:Src/main.c **** while (task.current_param < task.max_param) - 619:Src/main.c **** { - 620:Src/main.c **** if (TIM10_coflag) - 621:Src/main.c **** { - 622:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - 623:Src/main.c **** //TIM11 -> CNT = 0; // to link modulator phase - 624:Src/main.c **** //TIM4 -> CNT = 0; // to link ADC clock phase - 625:Src/main.c **** task.current_param += task.delta_param; - 626:Src/main.c **** TO10 = 0; - 627:Src/main.c **** TIM10_coflag = 0; - 628:Src/main.c **** - 629:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_SET); // set the current step laser current t - 630:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_RESET); - 631:Src/main.c **** //* - 632:Src/main.c **** if (step_counter % trigger_step == 0){ //trigger at every 60 step - 633:Src/main.c **** OUT_trigger(trigger_counter); - 634:Src/main.c **** ++trigger_counter; - 635:Src/main.c **** } - 636:Src/main.c **** ++step_counter; - 637:Src/main.c **** //*/ - 638:Src/main.c **** /* - 639:Src/main.c **** ++task_sheduler; - 640:Src/main.c **** if (task_sheduler >= 10){ - 641:Src/main.c **** task_sheduler = 0; - 642:Src/main.c **** } - 643:Src/main.c **** //maintain stable temperature of laser 2 - 644:Src/main.c **** if (task_sheduler == 0){ - 645:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 646:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 647:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 648:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 649:Src/main.c **** } - 650:Src/main.c **** //maintain stable temperature of laser 1 - 651:Src/main.c **** //* - 652:Src/main.c **** if (task_sheduler == 5){ - 653:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 654:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 655:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 656:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 657:Src/main.c **** } - 658:Src/main.c **** //*/ - 659:Src/main.c **** } - 660:Src/main.c **** } - 661:Src/main.c **** TIM11 -> DIER |= 1; //enable update interrupt. In this IRQ handler we will set both tims to o - 662:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd - 663:Src/main.c **** //TIM4 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upda - 664:Src/main.c **** //but one-pulse mode should be disabled - 665:Src/main.c **** - 666:Src/main.c **** //HAL_TIM_PWM_Stop(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator - 667:Src/main.c **** //HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock + 618:Src/main.c **** if (pulse_ms > 500u) + 619:Src/main.c **** { + 620:Src/main.c **** pulse_ms = 500u; + 621:Src/main.c **** } + 622:Src/main.c **** DS1809_Pulse(uc, dc, count, pulse_ms); + 623:Src/main.c **** } + 624:Src/main.c **** } + 625:Src/main.c **** else + 626:Src/main.c **** { + 627:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 628:Src/main.c **** } + 629:Src/main.c **** UART_transmission_request = MESS_01; + 630:Src/main.c **** CPU_state = CPU_state_old; + 631:Src/main.c **** break; + 632:Src/main.c **** case DECODE_TASK: + 633:Src/main.c **** if (CheckChecksum(COMMAND)) + 634:Src/main.c **** { + 635:Src/main.c **** Decode_task(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); + 636:Src/main.c **** TO6_before = TO6; + 637:Src/main.c **** CPU_state = RUN_TASK; + 638:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle + 639:Src/main.c **** } + 640:Src/main.c **** else + 641:Src/main.c **** { + 642:Src/main.c **** State_Data[0] |= UART_DECODE_ERR; + 643:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 644:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 645:Src/main.c **** } + 646:Src/main.c **** UART_transmission_request = MESS_01; + 647:Src/main.c **** break; + 648:Src/main.c **** case RUN_TASK: + 649:Src/main.c **** switch (task.task_type) + 650:Src/main.c **** { + 651:Src/main.c **** case TT_CHANGE_CURR_1: + 652:Src/main.c **** + 653:Src/main.c **** + 654:Src/main.c **** //calculating timer periods for ADC clock and Mach-Zander modulator + 655:Src/main.c **** //ADC clock + 656:Src/main.c **** //TIM4 -> ARR = 60; // for 1.5 MHz + 657:Src/main.c **** //TIM4 -> ARR = 91; // for 1 MHz + 658:Src/main.c **** //TIM4 -> ARR = 45; // for 2 MHz + 659:Src/main.c **** + 660:Src/main.c **** //online calculation for debug purposes: + 661:Src/main.c **** //manually varying TIM4 -> ARR by debugger while running + 662:Src/main.c **** //TIM4 -> CCR3 = (TIM4 -> ARR +1)/2 - 1; + 663:Src/main.c **** + 664:Src/main.c **** + 665:Src/main.c **** //Mach-Zander clock (should be half of ADC clock freq) + 666:Src/main.c **** //TIM11 -> ARR = (TIM4 -> ARR +1)*2 - 1; + 667:Src/main.c **** //TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; 668:Src/main.c **** 669:Src/main.c **** 670:Src/main.c **** - 671:Src/main.c **** Stop_TIM10(); - 672:Src/main.c **** - 673:Src/main.c **** task.current_param = task.min_param; - 674:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - ARM GAS /tmp/ccwR4KB7.s page 51 + 671:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.curr); + 672:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 673:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 674:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + ARM GAS /tmp/ccEQxcUB.s page 51 - 675:Src/main.c **** if (task.tau > 3) - 676:Src/main.c **** { - 677:Src/main.c **** TIM10_period = htim10.Init.Period; - 678:Src/main.c **** htim10.Init.Period = 9999; - 679:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 680:Src/main.c **** } - 681:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); - 682:Src/main.c **** break; - 683:Src/main.c **** case TT_CHANGE_CURR_2: - 684:Src/main.c **** //Blink laser 2 - 685:Src/main.c **** //* - 686:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.curr); - 687:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 688:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 689:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 690:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 691:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 692:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 693:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 694:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 675:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 676:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 677:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 678:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 679:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 680:Src/main.c **** + 681:Src/main.c **** // Toggle pin for oscilloscope + 682:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); //start of the whole frequency sweep proc + 683:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 684:Src/main.c **** + 685:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); + 686:Src/main.c **** if (st != HAL_OK) + 687:Src/main.c **** while(1); + 688:Src/main.c **** + 689:Src/main.c **** uint16_t step_counter = 0; + 690:Src/main.c **** uint16_t trigger_counter = 0; + 691:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 + 692:Src/main.c **** uint16_t task_sheduler = 0; + 693:Src/main.c **** + 694:Src/main.c **** 695:Src/main.c **** - 696:Src/main.c **** LD_blinker.task_type = 2; - 697:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L - 698:Src/main.c **** //LD_blinker.param = task.current_param; - 699:Src/main.c **** LD_blinker.param = 0; - 700:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) - 701:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; - 702:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; - 703:Src/main.c **** - 704:Src/main.c **** TIM8->ARR = 10000; //zero to LD_blinker.param change frequency (also in unspecified units). - 705:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU - 706:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim8); - 707:Src/main.c **** if (st != HAL_OK) - 708:Src/main.c **** while(1); - 709:Src/main.c **** // */ - 710:Src/main.c **** - 711:Src/main.c **** // Toggle pin for oscilloscope - 712:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); - 713:Src/main.c **** uint32_t i = 10000; while (--i){} - 714:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 715:Src/main.c **** LD_blinker.state = 2; - 716:Src/main.c **** - 717:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); - 718:Src/main.c **** if (st != HAL_OK) - 719:Src/main.c **** while(1); - 720:Src/main.c **** while (task.current_param < task.max_param) - 721:Src/main.c **** { - 722:Src/main.c **** if (TIM10_coflag) - 723:Src/main.c **** { - 724:Src/main.c **** //Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 725:Src/main.c **** //LD_blinker.param = task.current_param; - 726:Src/main.c **** //++LD_blinker.param; - 727:Src/main.c **** task.current_param += task.delta_param; - 728:Src/main.c **** TO10 = 0; - 729:Src/main.c **** TIM10_coflag = 0; - 730:Src/main.c **** - 731:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 52 + 696:Src/main.c **** HAL_TIM_PWM_Stop(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator + 697:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock + 698:Src/main.c **** TIM11 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 699:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 700:Src/main.c **** + 701:Src/main.c **** + 702:Src/main.c **** + 703:Src/main.c **** TIM11 -> CNT = 0; + 704:Src/main.c **** TIM4 -> CNT = 0; + 705:Src/main.c **** + 706:Src/main.c **** HAL_TIM_PWM_Start(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator + 707:Src/main.c **** HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_3); //start ADC clock + 708:Src/main.c **** //TIM4 -> CNT = 0; + 709:Src/main.c **** + 710:Src/main.c **** TIM4 -> CNT = TIM4 -> ARR - 20; // not zero to make phase shift that will be robust to big de + 711:Src/main.c **** TIM11 -> CNT = 0; + 712:Src/main.c **** + 713:Src/main.c **** + 714:Src/main.c **** while (task.current_param < task.max_param) + 715:Src/main.c **** { + 716:Src/main.c **** if (TIM10_coflag) + 717:Src/main.c **** { + 718:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 719:Src/main.c **** //TIM11 -> CNT = 0; // to link modulator phase + 720:Src/main.c **** //TIM4 -> CNT = 0; // to link ADC clock phase + 721:Src/main.c **** task.current_param += task.delta_param; + 722:Src/main.c **** TO10 = 0; + 723:Src/main.c **** TIM10_coflag = 0; + 724:Src/main.c **** + 725:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_SET); // set the current step laser current t + 726:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_RESET); + 727:Src/main.c **** //* + 728:Src/main.c **** if (step_counter % trigger_step == 0){ //trigger at every 60 step + 729:Src/main.c **** OUT_trigger(trigger_counter); + 730:Src/main.c **** ++trigger_counter; + 731:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 52 - 732:Src/main.c **** } - 733:Src/main.c **** } - 734:Src/main.c **** HAL_TIM_Base_Stop(&htim10); - 735:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); - 736:Src/main.c **** - 737:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 738:Src/main.c **** - 739:Src/main.c **** HAL_TIM_Base_Stop_IT(&htim8); - 740:Src/main.c **** TIM8->CNT = 0; - 741:Src/main.c **** - 742:Src/main.c **** Stop_TIM10(); - 743:Src/main.c **** task.current_param = task.min_param; - 744:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 745:Src/main.c **** if (task.tau > 3) - 746:Src/main.c **** { - 747:Src/main.c **** TIM10_period = htim10.Init.Period; - 748:Src/main.c **** htim10.Init.Period = 9999; - 749:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 750:Src/main.c **** } - 751:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); - 752:Src/main.c **** - 753:Src/main.c **** + 732:Src/main.c **** ++step_counter; + 733:Src/main.c **** //*/ + 734:Src/main.c **** /* + 735:Src/main.c **** ++task_sheduler; + 736:Src/main.c **** if (task_sheduler >= 10){ + 737:Src/main.c **** task_sheduler = 0; + 738:Src/main.c **** } + 739:Src/main.c **** //maintain stable temperature of laser 2 + 740:Src/main.c **** if (task_sheduler == 0){ + 741:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 742:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 743:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 744:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 745:Src/main.c **** } + 746:Src/main.c **** //maintain stable temperature of laser 1 + 747:Src/main.c **** //* + 748:Src/main.c **** if (task_sheduler == 5){ + 749:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 750:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 751:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 752:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 753:Src/main.c **** } 754:Src/main.c **** //*/ - 755:Src/main.c **** - 756:Src/main.c **** /* // Backup - 757:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.curr); - 758:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 759:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 760:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 761:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 762:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 763:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 764:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 765:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 755:Src/main.c **** } + 756:Src/main.c **** } + 757:Src/main.c **** TIM11 -> DIER |= 1; //enable update interrupt. In this IRQ handler we will set both tims to o + 758:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd + 759:Src/main.c **** //TIM4 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upda + 760:Src/main.c **** //but one-pulse mode should be disabled + 761:Src/main.c **** + 762:Src/main.c **** //HAL_TIM_PWM_Stop(&htim11, TIM_CHANNEL_1); //start modulating by Mach-Zander modulator + 763:Src/main.c **** //HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock + 764:Src/main.c **** + 765:Src/main.c **** 766:Src/main.c **** - 767:Src/main.c **** // Toggle pin for oscilloscope - 768:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); - 769:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 770:Src/main.c **** - 771:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); - 772:Src/main.c **** if (st != HAL_OK) - 773:Src/main.c **** while(1); - 774:Src/main.c **** while (task.current_param < task.max_param) - 775:Src/main.c **** { - 776:Src/main.c **** if (TIM10_coflag) - 777:Src/main.c **** { - 778:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 779:Src/main.c **** task.current_param += task.delta_param; - 780:Src/main.c **** TO10 = 0; - 781:Src/main.c **** TIM10_coflag = 0; - 782:Src/main.c **** - 783:Src/main.c **** - 784:Src/main.c **** } - 785:Src/main.c **** } - 786:Src/main.c **** Stop_TIM10(); - 787:Src/main.c **** task.current_param = task.min_param; - 788:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - ARM GAS /tmp/ccwR4KB7.s page 53 + 767:Src/main.c **** Stop_TIM10(); + 768:Src/main.c **** + 769:Src/main.c **** task.current_param = task.min_param; + 770:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 771:Src/main.c **** if (task.tau > 3) + 772:Src/main.c **** { + 773:Src/main.c **** TIM10_period = htim10.Init.Period; + 774:Src/main.c **** htim10.Init.Period = 9999; + 775:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 776:Src/main.c **** } + 777:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); + 778:Src/main.c **** break; + 779:Src/main.c **** case TT_CHANGE_CURR_2: + 780:Src/main.c **** //Blink laser 2 + 781:Src/main.c **** //* + 782:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.curr); + 783:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 784:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 785:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 786:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 787:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 788:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + ARM GAS /tmp/ccEQxcUB.s page 53 - 789:Src/main.c **** if (task.tau > 3) - 790:Src/main.c **** { - 791:Src/main.c **** TIM10_period = htim10.Init.Period; - 792:Src/main.c **** htim10.Init.Period = 9999; - 793:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 794:Src/main.c **** } - 795:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); - 796:Src/main.c **** */ - 797:Src/main.c **** - 798:Src/main.c **** - 799:Src/main.c **** break; - 800:Src/main.c **** case TT_CHANGE_TEMP_1: - 801:Src/main.c **** // isn't implemented - 802:Src/main.c **** break; - 803:Src/main.c **** case TT_CHANGE_TEMP_2: - 804:Src/main.c **** // isn't implemented - 805:Src/main.c **** break; - 806:Src/main.c **** } - 807:Src/main.c **** - 808:Src/main.c **** if (TO7>TO7_before) - 809:Src/main.c **** { - 810:Src/main.c **** TO7_before = TO7; - 811:Src/main.c **** - 812:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 813:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 814:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 815:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 816:Src/main.c **** - 817:Src/main.c **** Long_Data[1] = LD1_param.POWER;//Translate Data from monitor photodiode of LD1 to Long_Data - 818:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 819:Src/main.c **** - 820:Src/main.c **** //Prepare DATA of internals ADCs - 821:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 822:Src/main.c **** temp16 = Get_ADC(0); - 823:Src/main.c **** temp16 = Get_ADC(1); - 824:Src/main.c **** Long_Data[7] = temp16; - 825:Src/main.c **** - 826:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 827:Src/main.c **** temp16 = Get_ADC(1); - 828:Src/main.c **** Long_Data[8] = temp16; - 829:Src/main.c **** - 830:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 831:Src/main.c **** temp16 = Get_ADC(1); - 832:Src/main.c **** Long_Data[9] = temp16; - 833:Src/main.c **** - 834:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 835:Src/main.c **** temp16 = Get_ADC(1); - 836:Src/main.c **** Long_Data[10] = temp16; - 837:Src/main.c **** - 838:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 839:Src/main.c **** temp16 = Get_ADC(1); - 840:Src/main.c **** Long_Data[11] = temp16; - 841:Src/main.c **** temp16 = Get_ADC(2); - 842:Src/main.c **** - 843:Src/main.c **** //Put the temperature of LD2 to Long_Data: - 844:Src/main.c **** temp16 = Get_ADC(3); - 845:Src/main.c **** temp16 = Get_ADC(4); - ARM GAS /tmp/ccwR4KB7.s page 54 + 789:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 790:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 791:Src/main.c **** + 792:Src/main.c **** LD_blinker.task_type = 2; + 793:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L + 794:Src/main.c **** //LD_blinker.param = task.current_param; + 795:Src/main.c **** LD_blinker.param = 0; + 796:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) + 797:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; + 798:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; + 799:Src/main.c **** + 800:Src/main.c **** TIM8->ARR = 10000; //zero to LD_blinker.param change frequency (also in unspecified units). + 801:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU + 802:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim8); + 803:Src/main.c **** if (st != HAL_OK) + 804:Src/main.c **** while(1); + 805:Src/main.c **** // */ + 806:Src/main.c **** + 807:Src/main.c **** // Toggle pin for oscilloscope + 808:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); + 809:Src/main.c **** uint32_t i = 10000; while (--i){} + 810:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 811:Src/main.c **** LD_blinker.state = 2; + 812:Src/main.c **** + 813:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); + 814:Src/main.c **** if (st != HAL_OK) + 815:Src/main.c **** while(1); + 816:Src/main.c **** while (task.current_param < task.max_param) + 817:Src/main.c **** { + 818:Src/main.c **** if (TIM10_coflag) + 819:Src/main.c **** { + 820:Src/main.c **** //Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 821:Src/main.c **** //LD_blinker.param = task.current_param; + 822:Src/main.c **** //++LD_blinker.param; + 823:Src/main.c **** task.current_param += task.delta_param; + 824:Src/main.c **** TO10 = 0; + 825:Src/main.c **** TIM10_coflag = 0; + 826:Src/main.c **** + 827:Src/main.c **** + 828:Src/main.c **** } + 829:Src/main.c **** } + 830:Src/main.c **** HAL_TIM_Base_Stop(&htim10); + 831:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); + 832:Src/main.c **** + 833:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 834:Src/main.c **** + 835:Src/main.c **** HAL_TIM_Base_Stop_IT(&htim8); + 836:Src/main.c **** TIM8->CNT = 0; + 837:Src/main.c **** + 838:Src/main.c **** Stop_TIM10(); + 839:Src/main.c **** task.current_param = task.min_param; + 840:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 841:Src/main.c **** if (task.tau > 3) + 842:Src/main.c **** { + 843:Src/main.c **** TIM10_period = htim10.Init.Period; + 844:Src/main.c **** htim10.Init.Period = 9999; + 845:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + ARM GAS /tmp/ccEQxcUB.s page 54 - 846:Src/main.c **** Long_Data[12] = temp16; - 847:Src/main.c **** temp16 = Get_ADC(5); - 848:Src/main.c **** - 849:Src/main.c **** //Put the timer tick to Long_Data: - 850:Src/main.c **** TO6_stop = TO6; - 851:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 852:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 853:Src/main.c **** - 854:Src/main.c **** //Put the average temperature of LD1 to Long_Data: - 855:Src/main.c **** Long_Data[5] = LD1_param.LD_CURR_TEMP; - 856:Src/main.c **** - 857:Src/main.c **** //Put the average temperature of LD2 to Long_Data: - 858:Src/main.c **** Long_Data[6] = LD2_param.LD_CURR_TEMP; - 859:Src/main.c **** } - 860:Src/main.c **** while (!TIM10_coflag); - 861:Src/main.c **** - 862:Src/main.c **** Stop_TIM10(); - 863:Src/main.c **** - 864:Src/main.c **** if (task.tau > 3) - 865:Src/main.c **** { - 866:Src/main.c **** htim10.Init.Period = TIM10_period; - 867:Src/main.c **** TO10_counter = task.dt / 10; - 868:Src/main.c **** } - 869:Src/main.c **** - 870:Src/main.c **** CPU_state_old = RUN_TASK; - 871:Src/main.c **** break; - 872:Src/main.c **** } - 873:Src/main.c **** - 874:Src/main.c **** switch (UART_transmission_request) - 875:Src/main.c **** { - 876:Src/main.c **** case MESS_01://Default state - 877:Src/main.c **** USART_TX(State_Data,2); - 878:Src/main.c **** //HAL_UART_Transmit(&huart1, State_Data, 2, 10); - 879:Src/main.c **** State_Data[0]=0; - 880:Src/main.c **** State_Data[1]=0;//All OK! - 881:Src/main.c **** UART_transmission_request = NO_MESS; - 882:Src/main.c **** break; - 883:Src/main.c **** case MESS_02://Transmith packet - 884:Src/main.c **** - 885:Src/main.c **** //Find CS and put to Long_Data: - 886:Src/main.c **** CS_result = CalculateChecksum(&Long_Data[1], DL_16-2); - 887:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 888:Src/main.c **** - 889:Src/main.c **** for (uint16_t i = 0; i < DL_16; i++) - 890:Src/main.c **** { - 891:Src/main.c **** UART_DATA[i*2] = (Long_Data[i])&0xff; - 892:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 893:Src/main.c **** } - 894:Src/main.c **** //HAL_NVIC_SetPriority(DMA2_Stream7_IRQn, 0, 0); - 895:Src/main.c **** //HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn); - 896:Src/main.c **** //HAL_UART_Transmit_DMA(&huart1, UART_DATA, DL_8); - 897:Src/main.c **** //huart1.gState = HAL_UART_STATE_READY; - 898:Src/main.c **** //hdma_usart1_tx.State=HAL_DMA_STATE_BUSY; - 899:Src/main.c **** USART_TX_DMA (DL_8);//Send data by USART using DMA - 900:Src/main.c **** UART_transmission_request = NO_MESS; - 901:Src/main.c **** break; - 902:Src/main.c **** case MESS_03://Transmith saved packet - ARM GAS /tmp/ccwR4KB7.s page 55 + 846:Src/main.c **** } + 847:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); + 848:Src/main.c **** + 849:Src/main.c **** + 850:Src/main.c **** //*/ + 851:Src/main.c **** + 852:Src/main.c **** /* // Backup + 853:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.curr); + 854:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 855:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 856:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 857:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 858:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 859:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 860:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 861:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 862:Src/main.c **** + 863:Src/main.c **** // Toggle pin for oscilloscope + 864:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); + 865:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 866:Src/main.c **** + 867:Src/main.c **** st = HAL_TIM_Base_Start_IT(&htim10); + 868:Src/main.c **** if (st != HAL_OK) + 869:Src/main.c **** while(1); + 870:Src/main.c **** while (task.current_param < task.max_param) + 871:Src/main.c **** { + 872:Src/main.c **** if (TIM10_coflag) + 873:Src/main.c **** { + 874:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 875:Src/main.c **** task.current_param += task.delta_param; + 876:Src/main.c **** TO10 = 0; + 877:Src/main.c **** TIM10_coflag = 0; + 878:Src/main.c **** + 879:Src/main.c **** + 880:Src/main.c **** } + 881:Src/main.c **** } + 882:Src/main.c **** Stop_TIM10(); + 883:Src/main.c **** task.current_param = task.min_param; + 884:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 885:Src/main.c **** if (task.tau > 3) + 886:Src/main.c **** { + 887:Src/main.c **** TIM10_period = htim10.Init.Period; + 888:Src/main.c **** htim10.Init.Period = 9999; + 889:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 890:Src/main.c **** } + 891:Src/main.c **** HAL_TIM_Base_Start_IT(&htim10); + 892:Src/main.c **** */ + 893:Src/main.c **** + 894:Src/main.c **** + 895:Src/main.c **** break; + 896:Src/main.c **** case TT_CHANGE_TEMP_1: + 897:Src/main.c **** // isn't implemented + 898:Src/main.c **** break; + 899:Src/main.c **** case TT_CHANGE_TEMP_2: + 900:Src/main.c **** // isn't implemented + 901:Src/main.c **** break; + 902:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 55 - 903:Src/main.c **** for (uint16_t i = 0; i < DL_16; i++) - 904:Src/main.c **** { - 905:Src/main.c **** UART_DATA[i*2] = (Long_Data[i])&0xff; - 906:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 907:Src/main.c **** } - 908:Src/main.c **** //HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn); - 909:Src/main.c **** //HAL_UART_Transmit_DMA(&huart1, UART_DATA, DL_8); - 910:Src/main.c **** //huart1.gState = HAL_UART_STATE_READY; - 911:Src/main.c **** //hdma_usart1_tx.State=HAL_DMA_STATE_BUSY; - 912:Src/main.c **** USART_TX_DMA (DL_8);//Send data by USART using DMA - 913:Src/main.c **** UART_transmission_request = NO_MESS; - 914:Src/main.c **** break; - 915:Src/main.c **** } - 916:Src/main.c **** if ((flg_tmt==1)&&((TO6-TO6_uart)>100))//Uart timeout handle. if timeout beetween zero byte of - 917:Src/main.c **** { - 918:Src/main.c **** UART_rec_incr = 0;//Reset uart command counter - 919:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! - 920:Src/main.c **** UART_transmission_request = MESS_01;//Send status - 921:Src/main.c **** flg_tmt = 0;//Reset timeout flag - 922:Src/main.c **** } - 923:Src/main.c **** /* USER CODE END WHILE */ - 924:Src/main.c **** - 925:Src/main.c **** /* USER CODE BEGIN 3 */ - 926:Src/main.c **** } - 927:Src/main.c **** /* USER CODE END 3 */ - 928:Src/main.c **** } - 929:Src/main.c **** - 930:Src/main.c **** /** - 931:Src/main.c **** * @brief System Clock Configuration - 932:Src/main.c **** * @retval None - 933:Src/main.c **** */ - 934:Src/main.c **** void SystemClock_Config(void) - 935:Src/main.c **** { - 936:Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0}; - 937:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - 938:Src/main.c **** - 939:Src/main.c **** /** Configure the main internal regulator output voltage - 940:Src/main.c **** */ - 941:Src/main.c **** __HAL_RCC_PWR_CLK_ENABLE(); - 942:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 943:Src/main.c **** - 944:Src/main.c **** /** Initializes the RCC Oscillators according to the specified parameters - 945:Src/main.c **** * in the RCC_OscInitTypeDef structure. - 946:Src/main.c **** */ - 947:Src/main.c **** RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; - 948:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; - 949:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - 950:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; - 951:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; - 952:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; - 953:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; - 954:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; - 955:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; - 956:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - 957:Src/main.c **** { - 958:Src/main.c **** Error_Handler(); - 959:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 56 + 903:Src/main.c **** + 904:Src/main.c **** if (TO7>TO7_before) + 905:Src/main.c **** { + 906:Src/main.c **** TO7_before = TO7; + 907:Src/main.c **** + 908:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 909:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 910:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 911:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 912:Src/main.c **** + 913:Src/main.c **** Long_Data[1] = LD1_param.POWER;//Translate Data from monitor photodiode of LD1 to Long_Data + 914:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 915:Src/main.c **** + 916:Src/main.c **** //Prepare DATA of internals ADCs + 917:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 918:Src/main.c **** temp16 = Get_ADC(0); + 919:Src/main.c **** temp16 = Get_ADC(1); + 920:Src/main.c **** Long_Data[7] = temp16; + 921:Src/main.c **** + 922:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 923:Src/main.c **** temp16 = Get_ADC(1); + 924:Src/main.c **** Long_Data[8] = temp16; + 925:Src/main.c **** + 926:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 927:Src/main.c **** temp16 = Get_ADC(1); + 928:Src/main.c **** Long_Data[9] = temp16; + 929:Src/main.c **** + 930:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 931:Src/main.c **** temp16 = Get_ADC(1); + 932:Src/main.c **** Long_Data[10] = temp16; + 933:Src/main.c **** + 934:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 935:Src/main.c **** temp16 = Get_ADC(1); + 936:Src/main.c **** Long_Data[11] = temp16; + 937:Src/main.c **** temp16 = Get_ADC(2); + 938:Src/main.c **** + 939:Src/main.c **** //Put the temperature of LD2 to Long_Data: + 940:Src/main.c **** temp16 = Get_ADC(3); + 941:Src/main.c **** temp16 = Get_ADC(4); + 942:Src/main.c **** Long_Data[12] = temp16; + 943:Src/main.c **** temp16 = Get_ADC(5); + 944:Src/main.c **** + 945:Src/main.c **** //Put the timer tick to Long_Data: + 946:Src/main.c **** TO6_stop = TO6; + 947:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 948:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 949:Src/main.c **** + 950:Src/main.c **** //Put the average temperature of LD1 to Long_Data: + 951:Src/main.c **** Long_Data[5] = LD1_param.LD_CURR_TEMP; + 952:Src/main.c **** + 953:Src/main.c **** //Put the average temperature of LD2 to Long_Data: + 954:Src/main.c **** Long_Data[6] = LD2_param.LD_CURR_TEMP; + 955:Src/main.c **** } + 956:Src/main.c **** while (!TIM10_coflag); + 957:Src/main.c **** + 958:Src/main.c **** Stop_TIM10(); + 959:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 56 - 960:Src/main.c **** - 961:Src/main.c **** /** Activate the Over-Drive mode - 962:Src/main.c **** */ - 963:Src/main.c **** if (HAL_PWREx_EnableOverDrive() != HAL_OK) - 964:Src/main.c **** { - 965:Src/main.c **** Error_Handler(); - 966:Src/main.c **** } - 967:Src/main.c **** - 968:Src/main.c **** /** Initializes the CPU, AHB and APB buses clocks - 969:Src/main.c **** */ - 970:Src/main.c **** RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK - 971:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; - 972:Src/main.c **** RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; - 973:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - 974:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; - 975:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; - 976:Src/main.c **** - 977:Src/main.c **** if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_6) != HAL_OK) - 978:Src/main.c **** { - 979:Src/main.c **** Error_Handler(); - 980:Src/main.c **** } - 981:Src/main.c **** } - 982:Src/main.c **** - 983:Src/main.c **** /** - 984:Src/main.c **** * @brief ADC1 Initialization Function - 985:Src/main.c **** * @param None - 986:Src/main.c **** * @retval None - 987:Src/main.c **** */ - 988:Src/main.c **** static void MX_ADC1_Init(void) - 989:Src/main.c **** { - 990:Src/main.c **** - 991:Src/main.c **** /* USER CODE BEGIN ADC1_Init 0 */ - 992:Src/main.c **** - 993:Src/main.c **** /* USER CODE END ADC1_Init 0 */ - 994:Src/main.c **** - 995:Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0}; - 996:Src/main.c **** - 997:Src/main.c **** /* USER CODE BEGIN ADC1_Init 1 */ - 998:Src/main.c **** - 999:Src/main.c **** /* USER CODE END ADC1_Init 1 */ -1000:Src/main.c **** -1001:Src/main.c **** /** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of con -1002:Src/main.c **** */ -1003:Src/main.c **** hadc1.Instance = ADC1; -1004:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; -1005:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; -1006:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; -1007:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; -1008:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; -1009:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; -1010:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; -1011:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; -1012:Src/main.c **** hadc1.Init.NbrOfConversion = 5; -1013:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; -1014:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; -1015:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) -1016:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 57 + 960:Src/main.c **** if (task.tau > 3) + 961:Src/main.c **** { + 962:Src/main.c **** htim10.Init.Period = TIM10_period; + 963:Src/main.c **** TO10_counter = task.dt / 10; + 964:Src/main.c **** } + 965:Src/main.c **** + 966:Src/main.c **** CPU_state_old = RUN_TASK; + 967:Src/main.c **** break; + 968:Src/main.c **** } + 969:Src/main.c **** + 970:Src/main.c **** switch (UART_transmission_request) + 971:Src/main.c **** { + 972:Src/main.c **** case MESS_01://Default state + 973:Src/main.c **** USART_TX(State_Data,2); + 974:Src/main.c **** //HAL_UART_Transmit(&huart1, State_Data, 2, 10); + 975:Src/main.c **** State_Data[0]=0; + 976:Src/main.c **** State_Data[1]=0;//All OK! + 977:Src/main.c **** UART_transmission_request = NO_MESS; + 978:Src/main.c **** break; + 979:Src/main.c **** case MESS_02://Transmith packet + 980:Src/main.c **** + 981:Src/main.c **** //Find CS and put to Long_Data: + 982:Src/main.c **** CS_result = CalculateChecksum(&Long_Data[1], DL_16-2); + 983:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 984:Src/main.c **** + 985:Src/main.c **** for (uint16_t i = 0; i < DL_16; i++) + 986:Src/main.c **** { + 987:Src/main.c **** UART_DATA[i*2] = (Long_Data[i])&0xff; + 988:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 989:Src/main.c **** } + 990:Src/main.c **** //HAL_NVIC_SetPriority(DMA2_Stream7_IRQn, 0, 0); + 991:Src/main.c **** //HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn); + 992:Src/main.c **** //HAL_UART_Transmit_DMA(&huart1, UART_DATA, DL_8); + 993:Src/main.c **** //huart1.gState = HAL_UART_STATE_READY; + 994:Src/main.c **** //hdma_usart1_tx.State=HAL_DMA_STATE_BUSY; + 995:Src/main.c **** USART_TX_DMA (DL_8);//Send data by USART using DMA + 996:Src/main.c **** UART_transmission_request = NO_MESS; + 997:Src/main.c **** break; + 998:Src/main.c **** case MESS_03://Transmith saved packet + 999:Src/main.c **** for (uint16_t i = 0; i < DL_16; i++) +1000:Src/main.c **** { +1001:Src/main.c **** UART_DATA[i*2] = (Long_Data[i])&0xff; +1002:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; +1003:Src/main.c **** } +1004:Src/main.c **** //HAL_NVIC_EnableIRQ(DMA2_Stream7_IRQn); +1005:Src/main.c **** //HAL_UART_Transmit_DMA(&huart1, UART_DATA, DL_8); +1006:Src/main.c **** //huart1.gState = HAL_UART_STATE_READY; +1007:Src/main.c **** //hdma_usart1_tx.State=HAL_DMA_STATE_BUSY; +1008:Src/main.c **** USART_TX_DMA (DL_8);//Send data by USART using DMA +1009:Src/main.c **** UART_transmission_request = NO_MESS; +1010:Src/main.c **** break; +1011:Src/main.c **** } +1012:Src/main.c **** if ((flg_tmt==1)&&((TO6-TO6_uart)>100))//Uart timeout handle. if timeout beetween zero byte of +1013:Src/main.c **** { +1014:Src/main.c **** UART_rec_incr = 0;//Reset uart command counter +1015:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! +1016:Src/main.c **** UART_transmission_request = MESS_01;//Send status + ARM GAS /tmp/ccEQxcUB.s page 57 -1017:Src/main.c **** Error_Handler(); -1018:Src/main.c **** } -1019:Src/main.c **** -1020:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it -1021:Src/main.c **** */ -1022:Src/main.c **** sConfig.Channel = ADC_CHANNEL_9; -1023:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; -1024:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; -1025:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) -1026:Src/main.c **** { -1027:Src/main.c **** Error_Handler(); -1028:Src/main.c **** } -1029:Src/main.c **** -1030:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it -1031:Src/main.c **** */ -1032:Src/main.c **** sConfig.Channel = ADC_CHANNEL_8; -1033:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; -1034:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) -1035:Src/main.c **** { -1036:Src/main.c **** Error_Handler(); -1037:Src/main.c **** } -1038:Src/main.c **** -1039:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it -1040:Src/main.c **** */ -1041:Src/main.c **** sConfig.Channel = ADC_CHANNEL_2; -1042:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; -1043:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) -1044:Src/main.c **** { -1045:Src/main.c **** Error_Handler(); -1046:Src/main.c **** } -1047:Src/main.c **** -1048:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it -1049:Src/main.c **** */ -1050:Src/main.c **** sConfig.Channel = ADC_CHANNEL_10; -1051:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; -1052:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) +1017:Src/main.c **** flg_tmt = 0;//Reset timeout flag +1018:Src/main.c **** } +1019:Src/main.c **** /* USER CODE END WHILE */ +1020:Src/main.c **** +1021:Src/main.c **** /* USER CODE BEGIN 3 */ +1022:Src/main.c **** } +1023:Src/main.c **** /* USER CODE END 3 */ +1024:Src/main.c **** } +1025:Src/main.c **** +1026:Src/main.c **** /** +1027:Src/main.c **** * @brief System Clock Configuration +1028:Src/main.c **** * @retval None +1029:Src/main.c **** */ +1030:Src/main.c **** void SystemClock_Config(void) +1031:Src/main.c **** { +1032:Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0}; +1033:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; +1034:Src/main.c **** +1035:Src/main.c **** /** Configure the main internal regulator output voltage +1036:Src/main.c **** */ +1037:Src/main.c **** __HAL_RCC_PWR_CLK_ENABLE(); +1038:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); +1039:Src/main.c **** +1040:Src/main.c **** /** Initializes the RCC Oscillators according to the specified parameters +1041:Src/main.c **** * in the RCC_OscInitTypeDef structure. +1042:Src/main.c **** */ +1043:Src/main.c **** RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; +1044:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; +1045:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; +1046:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; +1047:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; +1048:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; +1049:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; +1050:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; +1051:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; +1052:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) 1053:Src/main.c **** { 1054:Src/main.c **** Error_Handler(); 1055:Src/main.c **** } 1056:Src/main.c **** -1057:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1057:Src/main.c **** /** Activate the Over-Drive mode 1058:Src/main.c **** */ -1059:Src/main.c **** sConfig.Channel = ADC_CHANNEL_11; -1060:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; -1061:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) -1062:Src/main.c **** { -1063:Src/main.c **** Error_Handler(); -1064:Src/main.c **** } -1065:Src/main.c **** /* USER CODE BEGIN ADC1_Init 2 */ -1066:Src/main.c **** -1067:Src/main.c **** /* USER CODE END ADC1_Init 2 */ -1068:Src/main.c **** -1069:Src/main.c **** } -1070:Src/main.c **** -1071:Src/main.c **** /** -1072:Src/main.c **** * @brief ADC3 Initialization Function -1073:Src/main.c **** * @param None - ARM GAS /tmp/ccwR4KB7.s page 58 +1059:Src/main.c **** if (HAL_PWREx_EnableOverDrive() != HAL_OK) +1060:Src/main.c **** { +1061:Src/main.c **** Error_Handler(); +1062:Src/main.c **** } +1063:Src/main.c **** +1064:Src/main.c **** /** Initializes the CPU, AHB and APB buses clocks +1065:Src/main.c **** */ +1066:Src/main.c **** RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK +1067:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; +1068:Src/main.c **** RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; +1069:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; +1070:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; +1071:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; +1072:Src/main.c **** +1073:Src/main.c **** if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_6) != HAL_OK) + ARM GAS /tmp/ccEQxcUB.s page 58 -1074:Src/main.c **** * @retval None -1075:Src/main.c **** */ -1076:Src/main.c **** static void MX_ADC3_Init(void) -1077:Src/main.c **** { +1074:Src/main.c **** { +1075:Src/main.c **** Error_Handler(); +1076:Src/main.c **** } +1077:Src/main.c **** } 1078:Src/main.c **** -1079:Src/main.c **** /* USER CODE BEGIN ADC3_Init 0 */ -1080:Src/main.c **** -1081:Src/main.c **** /* USER CODE END ADC3_Init 0 */ -1082:Src/main.c **** -1083:Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0}; -1084:Src/main.c **** -1085:Src/main.c **** /* USER CODE BEGIN ADC3_Init 1 */ +1079:Src/main.c **** /** +1080:Src/main.c **** * @brief ADC1 Initialization Function +1081:Src/main.c **** * @param None +1082:Src/main.c **** * @retval None +1083:Src/main.c **** */ +1084:Src/main.c **** static void MX_ADC1_Init(void) +1085:Src/main.c **** { 1086:Src/main.c **** -1087:Src/main.c **** /* USER CODE END ADC3_Init 1 */ +1087:Src/main.c **** /* USER CODE BEGIN ADC1_Init 0 */ 1088:Src/main.c **** -1089:Src/main.c **** /** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of con -1090:Src/main.c **** */ -1091:Src/main.c **** hadc3.Instance = ADC3; -1092:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; -1093:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; -1094:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; -1095:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; -1096:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; -1097:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; -1098:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; -1099:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; -1100:Src/main.c **** hadc3.Init.NbrOfConversion = 1; -1101:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; -1102:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; -1103:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) -1104:Src/main.c **** { -1105:Src/main.c **** Error_Handler(); -1106:Src/main.c **** } -1107:Src/main.c **** -1108:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it -1109:Src/main.c **** */ -1110:Src/main.c **** sConfig.Channel = ADC_CHANNEL_15; -1111:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; -1112:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; -1113:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) -1114:Src/main.c **** { -1115:Src/main.c **** Error_Handler(); -1116:Src/main.c **** } -1117:Src/main.c **** /* USER CODE BEGIN ADC3_Init 2 */ -1118:Src/main.c **** -1119:Src/main.c **** /* USER CODE END ADC3_Init 2 */ -1120:Src/main.c **** -1121:Src/main.c **** } -1122:Src/main.c **** -1123:Src/main.c **** /** -1124:Src/main.c **** * @brief SDMMC1 Initialization Function -1125:Src/main.c **** * @param None -1126:Src/main.c **** * @retval None +1089:Src/main.c **** /* USER CODE END ADC1_Init 0 */ +1090:Src/main.c **** +1091:Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0}; +1092:Src/main.c **** +1093:Src/main.c **** /* USER CODE BEGIN ADC1_Init 1 */ +1094:Src/main.c **** +1095:Src/main.c **** /* USER CODE END ADC1_Init 1 */ +1096:Src/main.c **** +1097:Src/main.c **** /** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of con +1098:Src/main.c **** */ +1099:Src/main.c **** hadc1.Instance = ADC1; +1100:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; +1101:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; +1102:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; +1103:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; +1104:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; +1105:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; +1106:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; +1107:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; +1108:Src/main.c **** hadc1.Init.NbrOfConversion = 5; +1109:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; +1110:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; +1111:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) +1112:Src/main.c **** { +1113:Src/main.c **** Error_Handler(); +1114:Src/main.c **** } +1115:Src/main.c **** +1116:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1117:Src/main.c **** */ +1118:Src/main.c **** sConfig.Channel = ADC_CHANNEL_9; +1119:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; +1120:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; +1121:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) +1122:Src/main.c **** { +1123:Src/main.c **** Error_Handler(); +1124:Src/main.c **** } +1125:Src/main.c **** +1126:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it 1127:Src/main.c **** */ -1128:Src/main.c **** static void MX_SDMMC1_SD_Init(void) -1129:Src/main.c **** { - 95 .loc 1 1129 1 is_stmt 1 view -0 - ARM GAS /tmp/ccwR4KB7.s page 59 +1128:Src/main.c **** sConfig.Channel = ADC_CHANNEL_8; +1129:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; +1130:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + ARM GAS /tmp/ccEQxcUB.s page 59 +1131:Src/main.c **** { +1132:Src/main.c **** Error_Handler(); +1133:Src/main.c **** } +1134:Src/main.c **** +1135:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1136:Src/main.c **** */ +1137:Src/main.c **** sConfig.Channel = ADC_CHANNEL_2; +1138:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; +1139:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) +1140:Src/main.c **** { +1141:Src/main.c **** Error_Handler(); +1142:Src/main.c **** } +1143:Src/main.c **** +1144:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1145:Src/main.c **** */ +1146:Src/main.c **** sConfig.Channel = ADC_CHANNEL_10; +1147:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; +1148:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) +1149:Src/main.c **** { +1150:Src/main.c **** Error_Handler(); +1151:Src/main.c **** } +1152:Src/main.c **** +1153:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1154:Src/main.c **** */ +1155:Src/main.c **** sConfig.Channel = ADC_CHANNEL_11; +1156:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; +1157:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) +1158:Src/main.c **** { +1159:Src/main.c **** Error_Handler(); +1160:Src/main.c **** } +1161:Src/main.c **** /* USER CODE BEGIN ADC1_Init 2 */ +1162:Src/main.c **** +1163:Src/main.c **** /* USER CODE END ADC1_Init 2 */ +1164:Src/main.c **** +1165:Src/main.c **** } +1166:Src/main.c **** +1167:Src/main.c **** /** +1168:Src/main.c **** * @brief ADC3 Initialization Function +1169:Src/main.c **** * @param None +1170:Src/main.c **** * @retval None +1171:Src/main.c **** */ +1172:Src/main.c **** static void MX_ADC3_Init(void) +1173:Src/main.c **** { +1174:Src/main.c **** +1175:Src/main.c **** /* USER CODE BEGIN ADC3_Init 0 */ +1176:Src/main.c **** +1177:Src/main.c **** /* USER CODE END ADC3_Init 0 */ +1178:Src/main.c **** +1179:Src/main.c **** ADC_ChannelConfTypeDef sConfig = {0}; +1180:Src/main.c **** +1181:Src/main.c **** /* USER CODE BEGIN ADC3_Init 1 */ +1182:Src/main.c **** +1183:Src/main.c **** /* USER CODE END ADC3_Init 1 */ +1184:Src/main.c **** +1185:Src/main.c **** /** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of con +1186:Src/main.c **** */ +1187:Src/main.c **** hadc3.Instance = ADC3; + ARM GAS /tmp/ccEQxcUB.s page 60 + + +1188:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; +1189:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; +1190:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; +1191:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; +1192:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; +1193:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; +1194:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; +1195:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; +1196:Src/main.c **** hadc3.Init.NbrOfConversion = 1; +1197:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; +1198:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; +1199:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) +1200:Src/main.c **** { +1201:Src/main.c **** Error_Handler(); +1202:Src/main.c **** } +1203:Src/main.c **** +1204:Src/main.c **** /** Configure for the selected ADC regular channel its corresponding rank in the sequencer and it +1205:Src/main.c **** */ +1206:Src/main.c **** sConfig.Channel = ADC_CHANNEL_15; +1207:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; +1208:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; +1209:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) +1210:Src/main.c **** { +1211:Src/main.c **** Error_Handler(); +1212:Src/main.c **** } +1213:Src/main.c **** /* USER CODE BEGIN ADC3_Init 2 */ +1214:Src/main.c **** +1215:Src/main.c **** /* USER CODE END ADC3_Init 2 */ +1216:Src/main.c **** +1217:Src/main.c **** } +1218:Src/main.c **** +1219:Src/main.c **** /** +1220:Src/main.c **** * @brief SDMMC1 Initialization Function +1221:Src/main.c **** * @param None +1222:Src/main.c **** * @retval None +1223:Src/main.c **** */ +1224:Src/main.c **** static void MX_SDMMC1_SD_Init(void) +1225:Src/main.c **** { + 95 .loc 1 1225 1 is_stmt 1 view -0 96 .cfi_startproc 97 @ args = 0, pretend = 0, frame = 0 98 @ frame_needed = 0, uses_anonymous_args = 0 99 @ link register save eliminated. -1130:Src/main.c **** -1131:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 0 */ -1132:Src/main.c **** -1133:Src/main.c **** /* USER CODE END SDMMC1_Init 0 */ -1134:Src/main.c **** -1135:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 1 */ -1136:Src/main.c **** -1137:Src/main.c **** /* USER CODE END SDMMC1_Init 1 */ -1138:Src/main.c **** hsd1.Instance = SDMMC1; - 100 .loc 1 1138 3 view .LVU21 - 101 .loc 1 1138 17 is_stmt 0 view .LVU22 +1226:Src/main.c **** +1227:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 0 */ +1228:Src/main.c **** +1229:Src/main.c **** /* USER CODE END SDMMC1_Init 0 */ +1230:Src/main.c **** +1231:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 1 */ +1232:Src/main.c **** +1233:Src/main.c **** /* USER CODE END SDMMC1_Init 1 */ +1234:Src/main.c **** hsd1.Instance = SDMMC1; + 100 .loc 1 1234 3 view .LVU21 + 101 .loc 1 1234 17 is_stmt 0 view .LVU22 102 0000 064B ldr r3, .L6 103 0002 074A ldr r2, .L6+4 104 0004 1A60 str r2, [r3] -1139:Src/main.c **** hsd1.Init.ClockEdge = SDMMC_CLOCK_EDGE_RISING; - 105 .loc 1 1139 3 is_stmt 1 view .LVU23 - 106 .loc 1 1139 23 is_stmt 0 view .LVU24 + ARM GAS /tmp/ccEQxcUB.s page 61 + + +1235:Src/main.c **** hsd1.Init.ClockEdge = SDMMC_CLOCK_EDGE_RISING; + 105 .loc 1 1235 3 is_stmt 1 view .LVU23 + 106 .loc 1 1235 23 is_stmt 0 view .LVU24 107 0006 0022 movs r2, #0 108 0008 5A60 str r2, [r3, #4] -1140:Src/main.c **** hsd1.Init.ClockBypass = SDMMC_CLOCK_BYPASS_DISABLE; - 109 .loc 1 1140 3 is_stmt 1 view .LVU25 - 110 .loc 1 1140 25 is_stmt 0 view .LVU26 +1236:Src/main.c **** hsd1.Init.ClockBypass = SDMMC_CLOCK_BYPASS_DISABLE; + 109 .loc 1 1236 3 is_stmt 1 view .LVU25 + 110 .loc 1 1236 25 is_stmt 0 view .LVU26 111 000a 9A60 str r2, [r3, #8] -1141:Src/main.c **** hsd1.Init.ClockPowerSave = SDMMC_CLOCK_POWER_SAVE_DISABLE; - 112 .loc 1 1141 3 is_stmt 1 view .LVU27 - 113 .loc 1 1141 28 is_stmt 0 view .LVU28 +1237:Src/main.c **** hsd1.Init.ClockPowerSave = SDMMC_CLOCK_POWER_SAVE_DISABLE; + 112 .loc 1 1237 3 is_stmt 1 view .LVU27 + 113 .loc 1 1237 28 is_stmt 0 view .LVU28 114 000c DA60 str r2, [r3, #12] -1142:Src/main.c **** hsd1.Init.BusWide = SDMMC_BUS_WIDE_4B; - 115 .loc 1 1142 3 is_stmt 1 view .LVU29 - 116 .loc 1 1142 21 is_stmt 0 view .LVU30 +1238:Src/main.c **** hsd1.Init.BusWide = SDMMC_BUS_WIDE_4B; + 115 .loc 1 1238 3 is_stmt 1 view .LVU29 + 116 .loc 1 1238 21 is_stmt 0 view .LVU30 117 000e 4FF40061 mov r1, #2048 118 0012 1961 str r1, [r3, #16] -1143:Src/main.c **** hsd1.Init.HardwareFlowControl = SDMMC_HARDWARE_FLOW_CONTROL_DISABLE; - 119 .loc 1 1143 3 is_stmt 1 view .LVU31 - 120 .loc 1 1143 33 is_stmt 0 view .LVU32 +1239:Src/main.c **** hsd1.Init.HardwareFlowControl = SDMMC_HARDWARE_FLOW_CONTROL_DISABLE; + 119 .loc 1 1239 3 is_stmt 1 view .LVU31 + 120 .loc 1 1239 33 is_stmt 0 view .LVU32 121 0014 5A61 str r2, [r3, #20] -1144:Src/main.c **** hsd1.Init.ClockDiv = 20; - 122 .loc 1 1144 3 is_stmt 1 view .LVU33 - 123 .loc 1 1144 22 is_stmt 0 view .LVU34 +1240:Src/main.c **** hsd1.Init.ClockDiv = 20; + 122 .loc 1 1240 3 is_stmt 1 view .LVU33 + 123 .loc 1 1240 22 is_stmt 0 view .LVU34 124 0016 1422 movs r2, #20 125 0018 9A61 str r2, [r3, #24] -1145:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 2 */ -1146:Src/main.c **** -1147:Src/main.c **** /* USER CODE END SDMMC1_Init 2 */ -1148:Src/main.c **** -1149:Src/main.c **** } - 126 .loc 1 1149 1 view .LVU35 +1241:Src/main.c **** /* USER CODE BEGIN SDMMC1_Init 2 */ +1242:Src/main.c **** +1243:Src/main.c **** /* USER CODE END SDMMC1_Init 2 */ +1244:Src/main.c **** +1245:Src/main.c **** } + 126 .loc 1 1245 1 view .LVU35 127 001a 7047 bx lr 128 .L7: 129 .align 2 130 .L6: 131 001c 00000000 .word hsd1 132 0020 002C0140 .word 1073818624 - ARM GAS /tmp/ccwR4KB7.s page 60 - - 133 .cfi_endproc 134 .LFE1190: 136 .section .text.MX_DMA_Init,"ax",%progbits @@ -3549,796 +3648,871 @@ ARM GAS /tmp/ccwR4KB7.s page 1 139 .thumb 140 .thumb_func 142 MX_DMA_Init: - 143 .LFB1205: -1150:Src/main.c **** -1151:Src/main.c **** /** -1152:Src/main.c **** * @brief SPI2 Initialization Function -1153:Src/main.c **** * @param None -1154:Src/main.c **** * @retval None -1155:Src/main.c **** */ -1156:Src/main.c **** static void MX_SPI2_Init(void) -1157:Src/main.c **** { -1158:Src/main.c **** -1159:Src/main.c **** /* USER CODE BEGIN SPI2_Init 0 */ -1160:Src/main.c **** -1161:Src/main.c **** /* USER CODE END SPI2_Init 0 */ -1162:Src/main.c **** -1163:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; -1164:Src/main.c **** -1165:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; -1166:Src/main.c **** -1167:Src/main.c **** /* Peripheral clock enable */ -1168:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_SPI2); -1169:Src/main.c **** -1170:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOB); -1171:Src/main.c **** /**SPI2 GPIO Configuration -1172:Src/main.c **** PB13 ------> SPI2_SCK -1173:Src/main.c **** PB14 ------> SPI2_MISO -1174:Src/main.c **** PB15 ------> SPI2_MOSI -1175:Src/main.c **** */ -1176:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_13; -1177:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1178:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1179:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1180:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1181:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1182:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); -1183:Src/main.c **** -1184:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_14; -1185:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1186:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1187:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1188:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1189:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1190:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); -1191:Src/main.c **** -1192:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_15; -1193:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1194:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1195:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1196:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1197:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - ARM GAS /tmp/ccwR4KB7.s page 61 - - -1198:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); -1199:Src/main.c **** -1200:Src/main.c **** /* USER CODE BEGIN SPI2_Init 1 */ -1201:Src/main.c **** -1202:Src/main.c **** /* USER CODE END SPI2_Init 1 */ -1203:Src/main.c **** /* SPI2 parameter configuration*/ -1204:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_FULL_DUPLEX; -1205:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; -1206:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; -1207:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; -1208:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; -1209:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; -1210:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; -1211:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; -1212:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; -1213:Src/main.c **** SPI_InitStruct.CRCPoly = 7; -1214:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); -1215:Src/main.c **** LL_SPI_SetStandard(SPI2, LL_SPI_PROTOCOL_MOTOROLA); -1216:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI2); -1217:Src/main.c **** /* USER CODE BEGIN SPI2_Init 2 */ -1218:Src/main.c **** -1219:Src/main.c **** /* USER CODE END SPI2_Init 2 */ -1220:Src/main.c **** -1221:Src/main.c **** } -1222:Src/main.c **** -1223:Src/main.c **** /** -1224:Src/main.c **** * @brief SPI4 Initialization Function -1225:Src/main.c **** * @param None -1226:Src/main.c **** * @retval None -1227:Src/main.c **** */ -1228:Src/main.c **** static void MX_SPI4_Init(void) -1229:Src/main.c **** { -1230:Src/main.c **** -1231:Src/main.c **** /* USER CODE BEGIN SPI4_Init 0 */ -1232:Src/main.c **** -1233:Src/main.c **** /* USER CODE END SPI4_Init 0 */ -1234:Src/main.c **** -1235:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; -1236:Src/main.c **** -1237:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; -1238:Src/main.c **** -1239:Src/main.c **** /* Peripheral clock enable */ -1240:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI4); -1241:Src/main.c **** -1242:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOE); -1243:Src/main.c **** /**SPI4 GPIO Configuration -1244:Src/main.c **** PE12 ------> SPI4_SCK -1245:Src/main.c **** PE13 ------> SPI4_MISO -1246:Src/main.c **** */ -1247:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_12; -1248:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1249:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1250:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1251:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1252:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1253:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 143 .LFB1206: +1246:Src/main.c **** +1247:Src/main.c **** /** +1248:Src/main.c **** * @brief SPI2 Initialization Function +1249:Src/main.c **** * @param None +1250:Src/main.c **** * @retval None +1251:Src/main.c **** */ +1252:Src/main.c **** static void MX_SPI2_Init(void) +1253:Src/main.c **** { 1254:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 62 + ARM GAS /tmp/ccEQxcUB.s page 62 -1255:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_13; -1256:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1257:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1258:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1259:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1260:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1261:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); +1255:Src/main.c **** /* USER CODE BEGIN SPI2_Init 0 */ +1256:Src/main.c **** +1257:Src/main.c **** /* USER CODE END SPI2_Init 0 */ +1258:Src/main.c **** +1259:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; +1260:Src/main.c **** +1261:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; 1262:Src/main.c **** -1263:Src/main.c **** /* USER CODE BEGIN SPI4_Init 1 */ -1264:Src/main.c **** -1265:Src/main.c **** /* USER CODE END SPI4_Init 1 */ -1266:Src/main.c **** /* SPI4 parameter configuration*/ -1267:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_SIMPLEX_RX; -1268:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; -1269:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; -1270:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; -1271:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; -1272:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; -1273:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; -1274:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; -1275:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; -1276:Src/main.c **** SPI_InitStruct.CRCPoly = 7; -1277:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); -1278:Src/main.c **** LL_SPI_SetStandard(SPI4, LL_SPI_PROTOCOL_MOTOROLA); -1279:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI4); -1280:Src/main.c **** /* USER CODE BEGIN SPI4_Init 2 */ -1281:Src/main.c **** -1282:Src/main.c **** /* USER CODE END SPI4_Init 2 */ -1283:Src/main.c **** -1284:Src/main.c **** } -1285:Src/main.c **** -1286:Src/main.c **** /** -1287:Src/main.c **** * @brief SPI5 Initialization Function -1288:Src/main.c **** * @param None -1289:Src/main.c **** * @retval None -1290:Src/main.c **** */ -1291:Src/main.c **** static void MX_SPI5_Init(void) -1292:Src/main.c **** { -1293:Src/main.c **** -1294:Src/main.c **** /* USER CODE BEGIN SPI5_Init 0 */ +1263:Src/main.c **** /* Peripheral clock enable */ +1264:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_SPI2); +1265:Src/main.c **** +1266:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOB); +1267:Src/main.c **** /**SPI2 GPIO Configuration +1268:Src/main.c **** PB13 ------> SPI2_SCK +1269:Src/main.c **** PB14 ------> SPI2_MISO +1270:Src/main.c **** PB15 ------> SPI2_MOSI +1271:Src/main.c **** */ +1272:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_13; +1273:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1274:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1275:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1276:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1277:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1278:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); +1279:Src/main.c **** +1280:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_14; +1281:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1282:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1283:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1284:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1285:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1286:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); +1287:Src/main.c **** +1288:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_15; +1289:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1290:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1291:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1292:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1293:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1294:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); 1295:Src/main.c **** -1296:Src/main.c **** /* USER CODE END SPI5_Init 0 */ +1296:Src/main.c **** /* USER CODE BEGIN SPI2_Init 1 */ 1297:Src/main.c **** -1298:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; -1299:Src/main.c **** -1300:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; -1301:Src/main.c **** -1302:Src/main.c **** /* Peripheral clock enable */ -1303:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI5); -1304:Src/main.c **** -1305:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOF); -1306:Src/main.c **** /**SPI5 GPIO Configuration -1307:Src/main.c **** PF7 ------> SPI5_SCK -1308:Src/main.c **** PF8 ------> SPI5_MISO -1309:Src/main.c **** */ -1310:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_7; -1311:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - ARM GAS /tmp/ccwR4KB7.s page 63 +1298:Src/main.c **** /* USER CODE END SPI2_Init 1 */ +1299:Src/main.c **** /* SPI2 parameter configuration*/ +1300:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_FULL_DUPLEX; +1301:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; +1302:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; +1303:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; +1304:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; +1305:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; +1306:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; +1307:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; +1308:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; +1309:Src/main.c **** SPI_InitStruct.CRCPoly = 7; +1310:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); +1311:Src/main.c **** LL_SPI_SetStandard(SPI2, LL_SPI_PROTOCOL_MOTOROLA); + ARM GAS /tmp/ccEQxcUB.s page 63 -1312:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1313:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1314:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1315:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1316:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); -1317:Src/main.c **** -1318:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_8; -1319:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1320:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1321:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1322:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1323:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; -1324:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); -1325:Src/main.c **** -1326:Src/main.c **** /* USER CODE BEGIN SPI5_Init 1 */ -1327:Src/main.c **** -1328:Src/main.c **** /* USER CODE END SPI5_Init 1 */ -1329:Src/main.c **** /* SPI5 parameter configuration*/ -1330:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_SIMPLEX_RX; -1331:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; -1332:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; -1333:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; -1334:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; -1335:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; -1336:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; -1337:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; -1338:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; -1339:Src/main.c **** SPI_InitStruct.CRCPoly = 7; -1340:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); -1341:Src/main.c **** LL_SPI_SetStandard(SPI5, LL_SPI_PROTOCOL_MOTOROLA); -1342:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI5); -1343:Src/main.c **** /* USER CODE BEGIN SPI5_Init 2 */ -1344:Src/main.c **** -1345:Src/main.c **** /* USER CODE END SPI5_Init 2 */ -1346:Src/main.c **** -1347:Src/main.c **** } -1348:Src/main.c **** -1349:Src/main.c **** /** -1350:Src/main.c **** * @brief SPI6 Initialization Function -1351:Src/main.c **** * @param None -1352:Src/main.c **** * @retval None -1353:Src/main.c **** */ -1354:Src/main.c **** static void MX_SPI6_Init(void) -1355:Src/main.c **** { -1356:Src/main.c **** -1357:Src/main.c **** /* USER CODE BEGIN SPI6_Init 0 */ +1312:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI2); +1313:Src/main.c **** /* USER CODE BEGIN SPI2_Init 2 */ +1314:Src/main.c **** +1315:Src/main.c **** /* USER CODE END SPI2_Init 2 */ +1316:Src/main.c **** +1317:Src/main.c **** } +1318:Src/main.c **** +1319:Src/main.c **** /** +1320:Src/main.c **** * @brief SPI4 Initialization Function +1321:Src/main.c **** * @param None +1322:Src/main.c **** * @retval None +1323:Src/main.c **** */ +1324:Src/main.c **** static void MX_SPI4_Init(void) +1325:Src/main.c **** { +1326:Src/main.c **** +1327:Src/main.c **** /* USER CODE BEGIN SPI4_Init 0 */ +1328:Src/main.c **** +1329:Src/main.c **** /* USER CODE END SPI4_Init 0 */ +1330:Src/main.c **** +1331:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; +1332:Src/main.c **** +1333:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; +1334:Src/main.c **** +1335:Src/main.c **** /* Peripheral clock enable */ +1336:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI4); +1337:Src/main.c **** +1338:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOE); +1339:Src/main.c **** /**SPI4 GPIO Configuration +1340:Src/main.c **** PE12 ------> SPI4_SCK +1341:Src/main.c **** PE13 ------> SPI4_MISO +1342:Src/main.c **** */ +1343:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_12; +1344:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1345:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1346:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1347:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1348:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1349:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); +1350:Src/main.c **** +1351:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_13; +1352:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1353:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1354:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1355:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1356:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1357:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); 1358:Src/main.c **** -1359:Src/main.c **** /* USER CODE END SPI6_Init 0 */ +1359:Src/main.c **** /* USER CODE BEGIN SPI4_Init 1 */ 1360:Src/main.c **** -1361:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; -1362:Src/main.c **** -1363:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; -1364:Src/main.c **** -1365:Src/main.c **** /* Peripheral clock enable */ -1366:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI6); -1367:Src/main.c **** -1368:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA); - ARM GAS /tmp/ccwR4KB7.s page 64 +1361:Src/main.c **** /* USER CODE END SPI4_Init 1 */ +1362:Src/main.c **** /* SPI4 parameter configuration*/ +1363:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_SIMPLEX_RX; +1364:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; +1365:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; +1366:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; +1367:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; +1368:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + ARM GAS /tmp/ccEQxcUB.s page 64 -1369:Src/main.c **** /**SPI6 GPIO Configuration -1370:Src/main.c **** PA5 ------> SPI6_SCK -1371:Src/main.c **** PA7 ------> SPI6_MOSI -1372:Src/main.c **** */ -1373:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_5; -1374:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1375:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1376:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1377:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1378:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; -1379:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); -1380:Src/main.c **** -1381:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_7; -1382:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1383:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1384:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1385:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1386:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; -1387:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); -1388:Src/main.c **** -1389:Src/main.c **** /* USER CODE BEGIN SPI6_Init 1 */ -1390:Src/main.c **** -1391:Src/main.c **** /* USER CODE END SPI6_Init 1 */ -1392:Src/main.c **** /* SPI6 parameter configuration*/ -1393:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_FULL_DUPLEX; -1394:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; -1395:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; -1396:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; -1397:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; -1398:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; -1399:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; -1400:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; -1401:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; -1402:Src/main.c **** SPI_InitStruct.CRCPoly = 7; -1403:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); -1404:Src/main.c **** LL_SPI_SetStandard(SPI6, LL_SPI_PROTOCOL_MOTOROLA); -1405:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI6); -1406:Src/main.c **** /* USER CODE BEGIN SPI6_Init 2 */ -1407:Src/main.c **** -1408:Src/main.c **** /* USER CODE END SPI6_Init 2 */ -1409:Src/main.c **** -1410:Src/main.c **** } -1411:Src/main.c **** -1412:Src/main.c **** /** -1413:Src/main.c **** * @brief TIM2 Initialization Function -1414:Src/main.c **** * @param None -1415:Src/main.c **** * @retval None -1416:Src/main.c **** */ -1417:Src/main.c **** static void MX_TIM2_Init(void) -1418:Src/main.c **** { -1419:Src/main.c **** -1420:Src/main.c **** /* USER CODE BEGIN TIM2_Init 0 */ +1369:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; +1370:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; +1371:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; +1372:Src/main.c **** SPI_InitStruct.CRCPoly = 7; +1373:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); +1374:Src/main.c **** LL_SPI_SetStandard(SPI4, LL_SPI_PROTOCOL_MOTOROLA); +1375:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI4); +1376:Src/main.c **** /* USER CODE BEGIN SPI4_Init 2 */ +1377:Src/main.c **** +1378:Src/main.c **** /* USER CODE END SPI4_Init 2 */ +1379:Src/main.c **** +1380:Src/main.c **** } +1381:Src/main.c **** +1382:Src/main.c **** /** +1383:Src/main.c **** * @brief SPI5 Initialization Function +1384:Src/main.c **** * @param None +1385:Src/main.c **** * @retval None +1386:Src/main.c **** */ +1387:Src/main.c **** static void MX_SPI5_Init(void) +1388:Src/main.c **** { +1389:Src/main.c **** +1390:Src/main.c **** /* USER CODE BEGIN SPI5_Init 0 */ +1391:Src/main.c **** +1392:Src/main.c **** /* USER CODE END SPI5_Init 0 */ +1393:Src/main.c **** +1394:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; +1395:Src/main.c **** +1396:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; +1397:Src/main.c **** +1398:Src/main.c **** /* Peripheral clock enable */ +1399:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI5); +1400:Src/main.c **** +1401:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOF); +1402:Src/main.c **** /**SPI5 GPIO Configuration +1403:Src/main.c **** PF7 ------> SPI5_SCK +1404:Src/main.c **** PF8 ------> SPI5_MISO +1405:Src/main.c **** */ +1406:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_7; +1407:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1408:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1409:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1410:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1411:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1412:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); +1413:Src/main.c **** +1414:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_8; +1415:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1416:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1417:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1418:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1419:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; +1420:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); 1421:Src/main.c **** -1422:Src/main.c **** /* USER CODE END TIM2_Init 0 */ +1422:Src/main.c **** /* USER CODE BEGIN SPI5_Init 1 */ 1423:Src/main.c **** -1424:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; -1425:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 65 +1424:Src/main.c **** /* USER CODE END SPI5_Init 1 */ +1425:Src/main.c **** /* SPI5 parameter configuration*/ + ARM GAS /tmp/ccEQxcUB.s page 65 -1426:Src/main.c **** /* Peripheral clock enable */ -1427:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM2); -1428:Src/main.c **** -1429:Src/main.c **** /* TIM2 interrupt Init */ -1430:Src/main.c **** NVIC_SetPriority(TIM2_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); -1431:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); -1432:Src/main.c **** -1433:Src/main.c **** /* USER CODE BEGIN TIM2_Init 1 */ -1434:Src/main.c **** -1435:Src/main.c **** /* USER CODE END TIM2_Init 1 */ -1436:Src/main.c **** TIM_InitStruct.Prescaler = 1000; -1437:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; -1438:Src/main.c **** TIM_InitStruct.Autoreload = 840000; -1439:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; -1440:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); -1441:Src/main.c **** LL_TIM_DisableARRPreload(TIM2); -1442:Src/main.c **** LL_TIM_SetClockSource(TIM2, LL_TIM_CLOCKSOURCE_INTERNAL); -1443:Src/main.c **** LL_TIM_SetTriggerOutput(TIM2, LL_TIM_TRGO_RESET); -1444:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM2); -1445:Src/main.c **** /* USER CODE BEGIN TIM2_Init 2 */ -1446:Src/main.c **** -1447:Src/main.c **** /* USER CODE END TIM2_Init 2 */ -1448:Src/main.c **** -1449:Src/main.c **** } -1450:Src/main.c **** -1451:Src/main.c **** /** -1452:Src/main.c **** * @brief TIM4 Initialization Function -1453:Src/main.c **** * @param None -1454:Src/main.c **** * @retval None -1455:Src/main.c **** */ -1456:Src/main.c **** static void MX_TIM4_Init(void) -1457:Src/main.c **** { +1426:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_SIMPLEX_RX; +1427:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; +1428:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; +1429:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; +1430:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; +1431:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; +1432:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; +1433:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; +1434:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; +1435:Src/main.c **** SPI_InitStruct.CRCPoly = 7; +1436:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); +1437:Src/main.c **** LL_SPI_SetStandard(SPI5, LL_SPI_PROTOCOL_MOTOROLA); +1438:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI5); +1439:Src/main.c **** /* USER CODE BEGIN SPI5_Init 2 */ +1440:Src/main.c **** +1441:Src/main.c **** /* USER CODE END SPI5_Init 2 */ +1442:Src/main.c **** +1443:Src/main.c **** } +1444:Src/main.c **** +1445:Src/main.c **** /** +1446:Src/main.c **** * @brief SPI6 Initialization Function +1447:Src/main.c **** * @param None +1448:Src/main.c **** * @retval None +1449:Src/main.c **** */ +1450:Src/main.c **** static void MX_SPI6_Init(void) +1451:Src/main.c **** { +1452:Src/main.c **** +1453:Src/main.c **** /* USER CODE BEGIN SPI6_Init 0 */ +1454:Src/main.c **** +1455:Src/main.c **** /* USER CODE END SPI6_Init 0 */ +1456:Src/main.c **** +1457:Src/main.c **** LL_SPI_InitTypeDef SPI_InitStruct = {0}; 1458:Src/main.c **** -1459:Src/main.c **** /* USER CODE BEGIN TIM4_Init 0 */ +1459:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; 1460:Src/main.c **** -1461:Src/main.c **** /* USER CODE END TIM4_Init 0 */ -1462:Src/main.c **** -1463:Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0}; -1464:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; -1465:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; -1466:Src/main.c **** -1467:Src/main.c **** /* USER CODE BEGIN TIM4_Init 1 */ -1468:Src/main.c **** -1469:Src/main.c **** /* USER CODE END TIM4_Init 1 */ -1470:Src/main.c **** htim4.Instance = TIM4; -1471:Src/main.c **** htim4.Init.Prescaler = 0; -1472:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; -1473:Src/main.c **** htim4.Init.Period = 45; -1474:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; -1475:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; -1476:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) -1477:Src/main.c **** { -1478:Src/main.c **** Error_Handler(); -1479:Src/main.c **** } -1480:Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; -1481:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) -1482:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 66 +1461:Src/main.c **** /* Peripheral clock enable */ +1462:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_SPI6); +1463:Src/main.c **** +1464:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA); +1465:Src/main.c **** /**SPI6 GPIO Configuration +1466:Src/main.c **** PA5 ------> SPI6_SCK +1467:Src/main.c **** PA7 ------> SPI6_MOSI +1468:Src/main.c **** */ +1469:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_5; +1470:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1471:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1472:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1473:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1474:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; +1475:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); +1476:Src/main.c **** +1477:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_7; +1478:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1479:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1480:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1481:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1482:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; + ARM GAS /tmp/ccEQxcUB.s page 66 -1483:Src/main.c **** Error_Handler(); -1484:Src/main.c **** } -1485:Src/main.c **** if (HAL_TIM_PWM_Init(&htim4) != HAL_OK) -1486:Src/main.c **** { -1487:Src/main.c **** Error_Handler(); -1488:Src/main.c **** } -1489:Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; -1490:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; -1491:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) -1492:Src/main.c **** { -1493:Src/main.c **** Error_Handler(); -1494:Src/main.c **** } -1495:Src/main.c **** sConfigOC.OCMode = TIM_OCMODE_PWM1; -1496:Src/main.c **** sConfigOC.Pulse = 22; -1497:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; -1498:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; -1499:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) -1500:Src/main.c **** { -1501:Src/main.c **** Error_Handler(); -1502:Src/main.c **** } -1503:Src/main.c **** /* USER CODE BEGIN TIM4_Init 2 */ -1504:Src/main.c **** -1505:Src/main.c **** /* USER CODE END TIM4_Init 2 */ -1506:Src/main.c **** HAL_TIM_MspPostInit(&htim4); +1483:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); +1484:Src/main.c **** +1485:Src/main.c **** /* USER CODE BEGIN SPI6_Init 1 */ +1486:Src/main.c **** +1487:Src/main.c **** /* USER CODE END SPI6_Init 1 */ +1488:Src/main.c **** /* SPI6 parameter configuration*/ +1489:Src/main.c **** SPI_InitStruct.TransferDirection = LL_SPI_FULL_DUPLEX; +1490:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; +1491:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; +1492:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; +1493:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; +1494:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; +1495:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; +1496:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; +1497:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; +1498:Src/main.c **** SPI_InitStruct.CRCPoly = 7; +1499:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); +1500:Src/main.c **** LL_SPI_SetStandard(SPI6, LL_SPI_PROTOCOL_MOTOROLA); +1501:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI6); +1502:Src/main.c **** /* USER CODE BEGIN SPI6_Init 2 */ +1503:Src/main.c **** +1504:Src/main.c **** /* USER CODE END SPI6_Init 2 */ +1505:Src/main.c **** +1506:Src/main.c **** } 1507:Src/main.c **** -1508:Src/main.c **** } -1509:Src/main.c **** -1510:Src/main.c **** /** -1511:Src/main.c **** * @brief TIM5 Initialization Function -1512:Src/main.c **** * @param None -1513:Src/main.c **** * @retval None -1514:Src/main.c **** */ -1515:Src/main.c **** static void MX_TIM5_Init(void) -1516:Src/main.c **** { +1508:Src/main.c **** /** +1509:Src/main.c **** * @brief TIM2 Initialization Function +1510:Src/main.c **** * @param None +1511:Src/main.c **** * @retval None +1512:Src/main.c **** */ +1513:Src/main.c **** static void MX_TIM2_Init(void) +1514:Src/main.c **** { +1515:Src/main.c **** +1516:Src/main.c **** /* USER CODE BEGIN TIM2_Init 0 */ 1517:Src/main.c **** -1518:Src/main.c **** /* USER CODE BEGIN TIM5_Init 0 */ +1518:Src/main.c **** /* USER CODE END TIM2_Init 0 */ 1519:Src/main.c **** -1520:Src/main.c **** /* USER CODE END TIM5_Init 0 */ +1520:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; 1521:Src/main.c **** -1522:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; -1523:Src/main.c **** -1524:Src/main.c **** /* Peripheral clock enable */ -1525:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM5); -1526:Src/main.c **** -1527:Src/main.c **** /* TIM5 interrupt Init */ -1528:Src/main.c **** NVIC_SetPriority(TIM5_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); -1529:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); +1522:Src/main.c **** /* Peripheral clock enable */ +1523:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM2); +1524:Src/main.c **** +1525:Src/main.c **** /* TIM2 interrupt Init */ +1526:Src/main.c **** NVIC_SetPriority(TIM2_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); +1527:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); +1528:Src/main.c **** +1529:Src/main.c **** /* USER CODE BEGIN TIM2_Init 1 */ 1530:Src/main.c **** -1531:Src/main.c **** /* USER CODE BEGIN TIM5_Init 1 */ -1532:Src/main.c **** -1533:Src/main.c **** /* USER CODE END TIM5_Init 1 */ -1534:Src/main.c **** TIM_InitStruct.Prescaler = 10000; -1535:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; -1536:Src/main.c **** TIM_InitStruct.Autoreload = 560; -1537:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; -1538:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); -1539:Src/main.c **** LL_TIM_DisableARRPreload(TIM5); - ARM GAS /tmp/ccwR4KB7.s page 67 +1531:Src/main.c **** /* USER CODE END TIM2_Init 1 */ +1532:Src/main.c **** TIM_InitStruct.Prescaler = 1000; +1533:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; +1534:Src/main.c **** TIM_InitStruct.Autoreload = 840000; +1535:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; +1536:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); +1537:Src/main.c **** LL_TIM_DisableARRPreload(TIM2); +1538:Src/main.c **** LL_TIM_SetClockSource(TIM2, LL_TIM_CLOCKSOURCE_INTERNAL); +1539:Src/main.c **** LL_TIM_SetTriggerOutput(TIM2, LL_TIM_TRGO_RESET); + ARM GAS /tmp/ccEQxcUB.s page 67 -1540:Src/main.c **** LL_TIM_SetClockSource(TIM5, LL_TIM_CLOCKSOURCE_INTERNAL); -1541:Src/main.c **** LL_TIM_SetTriggerOutput(TIM5, LL_TIM_TRGO_RESET); -1542:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM5); -1543:Src/main.c **** /* USER CODE BEGIN TIM5_Init 2 */ +1540:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM2); +1541:Src/main.c **** /* USER CODE BEGIN TIM2_Init 2 */ +1542:Src/main.c **** +1543:Src/main.c **** /* USER CODE END TIM2_Init 2 */ 1544:Src/main.c **** -1545:Src/main.c **** /* USER CODE END TIM5_Init 2 */ +1545:Src/main.c **** } 1546:Src/main.c **** -1547:Src/main.c **** } -1548:Src/main.c **** -1549:Src/main.c **** /** -1550:Src/main.c **** * @brief TIM6 Initialization Function -1551:Src/main.c **** * @param None -1552:Src/main.c **** * @retval None -1553:Src/main.c **** */ -1554:Src/main.c **** static void MX_TIM6_Init(void) -1555:Src/main.c **** { +1547:Src/main.c **** /** +1548:Src/main.c **** * @brief TIM4 Initialization Function +1549:Src/main.c **** * @param None +1550:Src/main.c **** * @retval None +1551:Src/main.c **** */ +1552:Src/main.c **** static void MX_TIM4_Init(void) +1553:Src/main.c **** { +1554:Src/main.c **** +1555:Src/main.c **** /* USER CODE BEGIN TIM4_Init 0 */ 1556:Src/main.c **** -1557:Src/main.c **** /* USER CODE BEGIN TIM6_Init 0 */ +1557:Src/main.c **** /* USER CODE END TIM4_Init 0 */ 1558:Src/main.c **** -1559:Src/main.c **** /* USER CODE END TIM6_Init 0 */ -1560:Src/main.c **** -1561:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; +1559:Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0}; +1560:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; +1561:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; 1562:Src/main.c **** -1563:Src/main.c **** /* Peripheral clock enable */ -1564:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM6); -1565:Src/main.c **** -1566:Src/main.c **** /* TIM6 interrupt Init */ -1567:Src/main.c **** NVIC_SetPriority(TIM6_DAC_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); -1568:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); -1569:Src/main.c **** -1570:Src/main.c **** /* USER CODE BEGIN TIM6_Init 1 */ -1571:Src/main.c **** -1572:Src/main.c **** /* USER CODE END TIM6_Init 1 */ -1573:Src/main.c **** TIM_InitStruct.Prescaler = 45999; -1574:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; -1575:Src/main.c **** TIM_InitStruct.Autoreload = 19; -1576:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); -1577:Src/main.c **** LL_TIM_DisableARRPreload(TIM6); -1578:Src/main.c **** LL_TIM_SetTriggerOutput(TIM6, LL_TIM_TRGO_ENABLE); -1579:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM6); -1580:Src/main.c **** /* USER CODE BEGIN TIM6_Init 2 */ -1581:Src/main.c **** -1582:Src/main.c **** /* USER CODE END TIM6_Init 2 */ -1583:Src/main.c **** -1584:Src/main.c **** } -1585:Src/main.c **** -1586:Src/main.c **** /** -1587:Src/main.c **** * @brief TIM7 Initialization Function -1588:Src/main.c **** * @param None -1589:Src/main.c **** * @retval None -1590:Src/main.c **** */ -1591:Src/main.c **** static void MX_TIM7_Init(void) -1592:Src/main.c **** { -1593:Src/main.c **** -1594:Src/main.c **** /* USER CODE BEGIN TIM7_Init 0 */ -1595:Src/main.c **** -1596:Src/main.c **** /* USER CODE END TIM7_Init 0 */ - ARM GAS /tmp/ccwR4KB7.s page 68 +1563:Src/main.c **** /* USER CODE BEGIN TIM4_Init 1 */ +1564:Src/main.c **** +1565:Src/main.c **** /* USER CODE END TIM4_Init 1 */ +1566:Src/main.c **** htim4.Instance = TIM4; +1567:Src/main.c **** htim4.Init.Prescaler = 0; +1568:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; +1569:Src/main.c **** htim4.Init.Period = 45; +1570:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; +1571:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; +1572:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) +1573:Src/main.c **** { +1574:Src/main.c **** Error_Handler(); +1575:Src/main.c **** } +1576:Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; +1577:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) +1578:Src/main.c **** { +1579:Src/main.c **** Error_Handler(); +1580:Src/main.c **** } +1581:Src/main.c **** if (HAL_TIM_PWM_Init(&htim4) != HAL_OK) +1582:Src/main.c **** { +1583:Src/main.c **** Error_Handler(); +1584:Src/main.c **** } +1585:Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; +1586:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; +1587:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) +1588:Src/main.c **** { +1589:Src/main.c **** Error_Handler(); +1590:Src/main.c **** } +1591:Src/main.c **** sConfigOC.OCMode = TIM_OCMODE_PWM1; +1592:Src/main.c **** sConfigOC.Pulse = 22; +1593:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; +1594:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; +1595:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) +1596:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 68 -1597:Src/main.c **** -1598:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; -1599:Src/main.c **** -1600:Src/main.c **** /* Peripheral clock enable */ -1601:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM7); -1602:Src/main.c **** -1603:Src/main.c **** /* TIM7 interrupt Init */ -1604:Src/main.c **** NVIC_SetPriority(TIM7_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); -1605:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); -1606:Src/main.c **** -1607:Src/main.c **** /* USER CODE BEGIN TIM7_Init 1 */ -1608:Src/main.c **** -1609:Src/main.c **** /* USER CODE END TIM7_Init 1 */ -1610:Src/main.c **** TIM_InitStruct.Prescaler = 919; -1611:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; -1612:Src/main.c **** TIM_InitStruct.Autoreload = 99; -1613:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); -1614:Src/main.c **** LL_TIM_DisableARRPreload(TIM7); -1615:Src/main.c **** LL_TIM_SetTriggerOutput(TIM7, LL_TIM_TRGO_ENABLE); -1616:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM7); -1617:Src/main.c **** /* USER CODE BEGIN TIM7_Init 2 */ -1618:Src/main.c **** -1619:Src/main.c **** /* USER CODE END TIM7_Init 2 */ -1620:Src/main.c **** -1621:Src/main.c **** } +1597:Src/main.c **** Error_Handler(); +1598:Src/main.c **** } +1599:Src/main.c **** /* USER CODE BEGIN TIM4_Init 2 */ +1600:Src/main.c **** +1601:Src/main.c **** /* USER CODE END TIM4_Init 2 */ +1602:Src/main.c **** HAL_TIM_MspPostInit(&htim4); +1603:Src/main.c **** +1604:Src/main.c **** } +1605:Src/main.c **** +1606:Src/main.c **** /** +1607:Src/main.c **** * @brief TIM5 Initialization Function +1608:Src/main.c **** * @param None +1609:Src/main.c **** * @retval None +1610:Src/main.c **** */ +1611:Src/main.c **** static void MX_TIM5_Init(void) +1612:Src/main.c **** { +1613:Src/main.c **** +1614:Src/main.c **** /* USER CODE BEGIN TIM5_Init 0 */ +1615:Src/main.c **** +1616:Src/main.c **** /* USER CODE END TIM5_Init 0 */ +1617:Src/main.c **** +1618:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; +1619:Src/main.c **** +1620:Src/main.c **** /* Peripheral clock enable */ +1621:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM5); 1622:Src/main.c **** -1623:Src/main.c **** /** -1624:Src/main.c **** * @brief TIM8 Initialization Function -1625:Src/main.c **** * @param None -1626:Src/main.c **** * @retval None -1627:Src/main.c **** */ -1628:Src/main.c **** static void MX_TIM8_Init(void) -1629:Src/main.c **** { -1630:Src/main.c **** -1631:Src/main.c **** /* USER CODE BEGIN TIM8_Init 0 */ -1632:Src/main.c **** -1633:Src/main.c **** /* USER CODE END TIM8_Init 0 */ -1634:Src/main.c **** -1635:Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0}; -1636:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; -1637:Src/main.c **** -1638:Src/main.c **** /* USER CODE BEGIN TIM8_Init 1 */ -1639:Src/main.c **** -1640:Src/main.c **** /* USER CODE END TIM8_Init 1 */ -1641:Src/main.c **** htim8.Instance = TIM8; -1642:Src/main.c **** htim8.Init.Prescaler = 0; -1643:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; -1644:Src/main.c **** htim8.Init.Period = 91; -1645:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; -1646:Src/main.c **** htim8.Init.RepetitionCounter = 0; -1647:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; -1648:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) -1649:Src/main.c **** { -1650:Src/main.c **** Error_Handler(); -1651:Src/main.c **** } -1652:Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; -1653:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) - ARM GAS /tmp/ccwR4KB7.s page 69 +1623:Src/main.c **** /* TIM5 interrupt Init */ +1624:Src/main.c **** NVIC_SetPriority(TIM5_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); +1625:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); +1626:Src/main.c **** +1627:Src/main.c **** /* USER CODE BEGIN TIM5_Init 1 */ +1628:Src/main.c **** +1629:Src/main.c **** /* USER CODE END TIM5_Init 1 */ +1630:Src/main.c **** TIM_InitStruct.Prescaler = 10000; +1631:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; +1632:Src/main.c **** TIM_InitStruct.Autoreload = 560; +1633:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; +1634:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); +1635:Src/main.c **** LL_TIM_DisableARRPreload(TIM5); +1636:Src/main.c **** LL_TIM_SetClockSource(TIM5, LL_TIM_CLOCKSOURCE_INTERNAL); +1637:Src/main.c **** LL_TIM_SetTriggerOutput(TIM5, LL_TIM_TRGO_RESET); +1638:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM5); +1639:Src/main.c **** /* USER CODE BEGIN TIM5_Init 2 */ +1640:Src/main.c **** +1641:Src/main.c **** /* USER CODE END TIM5_Init 2 */ +1642:Src/main.c **** +1643:Src/main.c **** } +1644:Src/main.c **** +1645:Src/main.c **** /** +1646:Src/main.c **** * @brief TIM6 Initialization Function +1647:Src/main.c **** * @param None +1648:Src/main.c **** * @retval None +1649:Src/main.c **** */ +1650:Src/main.c **** static void MX_TIM6_Init(void) +1651:Src/main.c **** { +1652:Src/main.c **** +1653:Src/main.c **** /* USER CODE BEGIN TIM6_Init 0 */ + ARM GAS /tmp/ccEQxcUB.s page 69 -1654:Src/main.c **** { -1655:Src/main.c **** Error_Handler(); -1656:Src/main.c **** } -1657:Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; -1658:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; -1659:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; -1660:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) -1661:Src/main.c **** { -1662:Src/main.c **** Error_Handler(); -1663:Src/main.c **** } -1664:Src/main.c **** /* USER CODE BEGIN TIM8_Init 2 */ +1654:Src/main.c **** +1655:Src/main.c **** /* USER CODE END TIM6_Init 0 */ +1656:Src/main.c **** +1657:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; +1658:Src/main.c **** +1659:Src/main.c **** /* Peripheral clock enable */ +1660:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM6); +1661:Src/main.c **** +1662:Src/main.c **** /* TIM6 interrupt Init */ +1663:Src/main.c **** NVIC_SetPriority(TIM6_DAC_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); +1664:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); 1665:Src/main.c **** -1666:Src/main.c **** /* USER CODE END TIM8_Init 2 */ +1666:Src/main.c **** /* USER CODE BEGIN TIM6_Init 1 */ 1667:Src/main.c **** -1668:Src/main.c **** } -1669:Src/main.c **** -1670:Src/main.c **** /** -1671:Src/main.c **** * @brief TIM10 Initialization Function -1672:Src/main.c **** * @param None -1673:Src/main.c **** * @retval None -1674:Src/main.c **** */ -1675:Src/main.c **** static void MX_TIM10_Init(void) -1676:Src/main.c **** { +1668:Src/main.c **** /* USER CODE END TIM6_Init 1 */ +1669:Src/main.c **** TIM_InitStruct.Prescaler = 45999; +1670:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; +1671:Src/main.c **** TIM_InitStruct.Autoreload = 19; +1672:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); +1673:Src/main.c **** LL_TIM_DisableARRPreload(TIM6); +1674:Src/main.c **** LL_TIM_SetTriggerOutput(TIM6, LL_TIM_TRGO_ENABLE); +1675:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM6); +1676:Src/main.c **** /* USER CODE BEGIN TIM6_Init 2 */ 1677:Src/main.c **** -1678:Src/main.c **** /* USER CODE BEGIN TIM10_Init 0 */ +1678:Src/main.c **** /* USER CODE END TIM6_Init 2 */ 1679:Src/main.c **** -1680:Src/main.c **** /* USER CODE END TIM10_Init 0 */ +1680:Src/main.c **** } 1681:Src/main.c **** -1682:Src/main.c **** /* USER CODE BEGIN TIM10_Init 1 */ -1683:Src/main.c **** -1684:Src/main.c **** /* USER CODE END TIM10_Init 1 */ -1685:Src/main.c **** htim10.Instance = TIM10; -1686:Src/main.c **** htim10.Init.Prescaler = 183; -1687:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; -1688:Src/main.c **** htim10.Init.Period = 9; -1689:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; -1690:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; -1691:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) -1692:Src/main.c **** { -1693:Src/main.c **** Error_Handler(); -1694:Src/main.c **** } -1695:Src/main.c **** /* USER CODE BEGIN TIM10_Init 2 */ -1696:Src/main.c **** -1697:Src/main.c **** /* USER CODE END TIM10_Init 2 */ +1682:Src/main.c **** /** +1683:Src/main.c **** * @brief TIM7 Initialization Function +1684:Src/main.c **** * @param None +1685:Src/main.c **** * @retval None +1686:Src/main.c **** */ +1687:Src/main.c **** static void MX_TIM7_Init(void) +1688:Src/main.c **** { +1689:Src/main.c **** +1690:Src/main.c **** /* USER CODE BEGIN TIM7_Init 0 */ +1691:Src/main.c **** +1692:Src/main.c **** /* USER CODE END TIM7_Init 0 */ +1693:Src/main.c **** +1694:Src/main.c **** LL_TIM_InitTypeDef TIM_InitStruct = {0}; +1695:Src/main.c **** +1696:Src/main.c **** /* Peripheral clock enable */ +1697:Src/main.c **** LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_TIM7); 1698:Src/main.c **** -1699:Src/main.c **** } -1700:Src/main.c **** -1701:Src/main.c **** /** -1702:Src/main.c **** * @brief TIM11 Initialization Function -1703:Src/main.c **** * @param None -1704:Src/main.c **** * @retval None -1705:Src/main.c **** */ -1706:Src/main.c **** static void MX_TIM11_Init(void) -1707:Src/main.c **** { -1708:Src/main.c **** -1709:Src/main.c **** /* USER CODE BEGIN TIM11_Init 0 */ -1710:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 70 +1699:Src/main.c **** /* TIM7 interrupt Init */ +1700:Src/main.c **** NVIC_SetPriority(TIM7_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); +1701:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); +1702:Src/main.c **** +1703:Src/main.c **** /* USER CODE BEGIN TIM7_Init 1 */ +1704:Src/main.c **** +1705:Src/main.c **** /* USER CODE END TIM7_Init 1 */ +1706:Src/main.c **** TIM_InitStruct.Prescaler = 919; +1707:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; +1708:Src/main.c **** TIM_InitStruct.Autoreload = 99; +1709:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); +1710:Src/main.c **** LL_TIM_DisableARRPreload(TIM7); + ARM GAS /tmp/ccEQxcUB.s page 70 -1711:Src/main.c **** /* USER CODE END TIM11_Init 0 */ -1712:Src/main.c **** -1713:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; +1711:Src/main.c **** LL_TIM_SetTriggerOutput(TIM7, LL_TIM_TRGO_ENABLE); +1712:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM7); +1713:Src/main.c **** /* USER CODE BEGIN TIM7_Init 2 */ 1714:Src/main.c **** -1715:Src/main.c **** /* USER CODE BEGIN TIM11_Init 1 */ +1715:Src/main.c **** /* USER CODE END TIM7_Init 2 */ 1716:Src/main.c **** -1717:Src/main.c **** /* USER CODE END TIM11_Init 1 */ -1718:Src/main.c **** htim11.Instance = TIM11; -1719:Src/main.c **** htim11.Init.Prescaler = 1; -1720:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; -1721:Src/main.c **** htim11.Init.Period = 91; -1722:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; -1723:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; -1724:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) -1725:Src/main.c **** { -1726:Src/main.c **** Error_Handler(); -1727:Src/main.c **** } -1728:Src/main.c **** if (HAL_TIM_PWM_Init(&htim11) != HAL_OK) -1729:Src/main.c **** { -1730:Src/main.c **** Error_Handler(); -1731:Src/main.c **** } -1732:Src/main.c **** sConfigOC.OCMode = TIM_OCMODE_PWM1; -1733:Src/main.c **** sConfigOC.Pulse = 91; -1734:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; -1735:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; -1736:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) -1737:Src/main.c **** { -1738:Src/main.c **** Error_Handler(); -1739:Src/main.c **** } -1740:Src/main.c **** /* USER CODE BEGIN TIM11_Init 2 */ -1741:Src/main.c **** -1742:Src/main.c **** /* USER CODE END TIM11_Init 2 */ -1743:Src/main.c **** HAL_TIM_MspPostInit(&htim11); -1744:Src/main.c **** -1745:Src/main.c **** } -1746:Src/main.c **** -1747:Src/main.c **** /** -1748:Src/main.c **** * @brief UART8 Initialization Function -1749:Src/main.c **** * @param None -1750:Src/main.c **** * @retval None -1751:Src/main.c **** */ -1752:Src/main.c **** static void MX_UART8_Init(void) -1753:Src/main.c **** { -1754:Src/main.c **** -1755:Src/main.c **** /* USER CODE BEGIN UART8_Init 0 */ -1756:Src/main.c **** -1757:Src/main.c **** /* USER CODE END UART8_Init 0 */ -1758:Src/main.c **** -1759:Src/main.c **** /* USER CODE BEGIN UART8_Init 1 */ -1760:Src/main.c **** -1761:Src/main.c **** /* USER CODE END UART8_Init 1 */ -1762:Src/main.c **** huart8.Instance = UART8; -1763:Src/main.c **** huart8.Init.BaudRate = 115200; -1764:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; -1765:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; -1766:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; -1767:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; - ARM GAS /tmp/ccwR4KB7.s page 71 +1717:Src/main.c **** } +1718:Src/main.c **** +1719:Src/main.c **** /** +1720:Src/main.c **** * @brief TIM8 Initialization Function +1721:Src/main.c **** * @param None +1722:Src/main.c **** * @retval None +1723:Src/main.c **** */ +1724:Src/main.c **** static void MX_TIM8_Init(void) +1725:Src/main.c **** { +1726:Src/main.c **** +1727:Src/main.c **** /* USER CODE BEGIN TIM8_Init 0 */ +1728:Src/main.c **** +1729:Src/main.c **** /* USER CODE END TIM8_Init 0 */ +1730:Src/main.c **** +1731:Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0}; +1732:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; +1733:Src/main.c **** +1734:Src/main.c **** /* USER CODE BEGIN TIM8_Init 1 */ +1735:Src/main.c **** +1736:Src/main.c **** /* USER CODE END TIM8_Init 1 */ +1737:Src/main.c **** htim8.Instance = TIM8; +1738:Src/main.c **** htim8.Init.Prescaler = 0; +1739:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; +1740:Src/main.c **** htim8.Init.Period = 91; +1741:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; +1742:Src/main.c **** htim8.Init.RepetitionCounter = 0; +1743:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; +1744:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) +1745:Src/main.c **** { +1746:Src/main.c **** Error_Handler(); +1747:Src/main.c **** } +1748:Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; +1749:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) +1750:Src/main.c **** { +1751:Src/main.c **** Error_Handler(); +1752:Src/main.c **** } +1753:Src/main.c **** sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET; +1754:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; +1755:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; +1756:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) +1757:Src/main.c **** { +1758:Src/main.c **** Error_Handler(); +1759:Src/main.c **** } +1760:Src/main.c **** /* USER CODE BEGIN TIM8_Init 2 */ +1761:Src/main.c **** +1762:Src/main.c **** /* USER CODE END TIM8_Init 2 */ +1763:Src/main.c **** +1764:Src/main.c **** } +1765:Src/main.c **** +1766:Src/main.c **** /** +1767:Src/main.c **** * @brief TIM10 Initialization Function + ARM GAS /tmp/ccEQxcUB.s page 71 -1768:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; -1769:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; -1770:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; -1771:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; -1772:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) -1773:Src/main.c **** { -1774:Src/main.c **** Error_Handler(); -1775:Src/main.c **** } -1776:Src/main.c **** /* USER CODE BEGIN UART8_Init 2 */ +1768:Src/main.c **** * @param None +1769:Src/main.c **** * @retval None +1770:Src/main.c **** */ +1771:Src/main.c **** static void MX_TIM10_Init(void) +1772:Src/main.c **** { +1773:Src/main.c **** +1774:Src/main.c **** /* USER CODE BEGIN TIM10_Init 0 */ +1775:Src/main.c **** +1776:Src/main.c **** /* USER CODE END TIM10_Init 0 */ 1777:Src/main.c **** -1778:Src/main.c **** /* USER CODE END UART8_Init 2 */ +1778:Src/main.c **** /* USER CODE BEGIN TIM10_Init 1 */ 1779:Src/main.c **** -1780:Src/main.c **** } -1781:Src/main.c **** -1782:Src/main.c **** /** -1783:Src/main.c **** * @brief USART1 Initialization Function -1784:Src/main.c **** * @param None -1785:Src/main.c **** * @retval None -1786:Src/main.c **** */ -1787:Src/main.c **** static void MX_USART1_UART_Init(void) -1788:Src/main.c **** { -1789:Src/main.c **** -1790:Src/main.c **** /* USER CODE BEGIN USART1_Init 0 */ -1791:Src/main.c **** -1792:Src/main.c **** /* USER CODE END USART1_Init 0 */ -1793:Src/main.c **** -1794:Src/main.c **** LL_USART_InitTypeDef USART_InitStruct = {0}; -1795:Src/main.c **** -1796:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; -1797:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; -1798:Src/main.c **** -1799:Src/main.c **** /** Initializes the peripherals clock -1800:Src/main.c **** */ -1801:Src/main.c **** PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USART1; -1802:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; -1803:Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) -1804:Src/main.c **** { -1805:Src/main.c **** Error_Handler(); -1806:Src/main.c **** } -1807:Src/main.c **** -1808:Src/main.c **** /* Peripheral clock enable */ -1809:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_USART1); +1780:Src/main.c **** /* USER CODE END TIM10_Init 1 */ +1781:Src/main.c **** htim10.Instance = TIM10; +1782:Src/main.c **** htim10.Init.Prescaler = 183; +1783:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; +1784:Src/main.c **** htim10.Init.Period = 9; +1785:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; +1786:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; +1787:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) +1788:Src/main.c **** { +1789:Src/main.c **** Error_Handler(); +1790:Src/main.c **** } +1791:Src/main.c **** /* USER CODE BEGIN TIM10_Init 2 */ +1792:Src/main.c **** +1793:Src/main.c **** /* USER CODE END TIM10_Init 2 */ +1794:Src/main.c **** +1795:Src/main.c **** } +1796:Src/main.c **** +1797:Src/main.c **** /** +1798:Src/main.c **** * @brief TIM11 Initialization Function +1799:Src/main.c **** * @param None +1800:Src/main.c **** * @retval None +1801:Src/main.c **** */ +1802:Src/main.c **** static void MX_TIM11_Init(void) +1803:Src/main.c **** { +1804:Src/main.c **** +1805:Src/main.c **** /* USER CODE BEGIN TIM11_Init 0 */ +1806:Src/main.c **** +1807:Src/main.c **** /* USER CODE END TIM11_Init 0 */ +1808:Src/main.c **** +1809:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; 1810:Src/main.c **** -1811:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA); -1812:Src/main.c **** /**USART1 GPIO Configuration -1813:Src/main.c **** PA9 ------> USART1_TX -1814:Src/main.c **** PA10 ------> USART1_RX -1815:Src/main.c **** */ -1816:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_9; -1817:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1818:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1819:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1820:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1821:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; -1822:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); -1823:Src/main.c **** -1824:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_10; - ARM GAS /tmp/ccwR4KB7.s page 72 +1811:Src/main.c **** /* USER CODE BEGIN TIM11_Init 1 */ +1812:Src/main.c **** +1813:Src/main.c **** /* USER CODE END TIM11_Init 1 */ +1814:Src/main.c **** htim11.Instance = TIM11; +1815:Src/main.c **** htim11.Init.Prescaler = 1; +1816:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; +1817:Src/main.c **** htim11.Init.Period = 91; +1818:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; +1819:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; +1820:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) +1821:Src/main.c **** { +1822:Src/main.c **** Error_Handler(); +1823:Src/main.c **** } +1824:Src/main.c **** if (HAL_TIM_PWM_Init(&htim11) != HAL_OK) + ARM GAS /tmp/ccEQxcUB.s page 72 -1825:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; -1826:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; -1827:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; -1828:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; -1829:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; -1830:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); -1831:Src/main.c **** -1832:Src/main.c **** /* USART1 DMA Init */ -1833:Src/main.c **** -1834:Src/main.c **** /* USART1_TX Init */ -1835:Src/main.c **** LL_DMA_SetChannelSelection(DMA2, LL_DMA_STREAM_7, LL_DMA_CHANNEL_4); -1836:Src/main.c **** -1837:Src/main.c **** LL_DMA_SetDataTransferDirection(DMA2, LL_DMA_STREAM_7, LL_DMA_DIRECTION_MEMORY_TO_PERIPH); -1838:Src/main.c **** -1839:Src/main.c **** LL_DMA_SetStreamPriorityLevel(DMA2, LL_DMA_STREAM_7, LL_DMA_PRIORITY_VERYHIGH); +1825:Src/main.c **** { +1826:Src/main.c **** Error_Handler(); +1827:Src/main.c **** } +1828:Src/main.c **** sConfigOC.OCMode = TIM_OCMODE_PWM1; +1829:Src/main.c **** sConfigOC.Pulse = 91; +1830:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; +1831:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; +1832:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) +1833:Src/main.c **** { +1834:Src/main.c **** Error_Handler(); +1835:Src/main.c **** } +1836:Src/main.c **** /* USER CODE BEGIN TIM11_Init 2 */ +1837:Src/main.c **** +1838:Src/main.c **** /* USER CODE END TIM11_Init 2 */ +1839:Src/main.c **** HAL_TIM_MspPostInit(&htim11); 1840:Src/main.c **** -1841:Src/main.c **** LL_DMA_SetMode(DMA2, LL_DMA_STREAM_7, LL_DMA_MODE_NORMAL); +1841:Src/main.c **** } 1842:Src/main.c **** -1843:Src/main.c **** LL_DMA_SetPeriphIncMode(DMA2, LL_DMA_STREAM_7, LL_DMA_PERIPH_NOINCREMENT); -1844:Src/main.c **** -1845:Src/main.c **** LL_DMA_SetMemoryIncMode(DMA2, LL_DMA_STREAM_7, LL_DMA_MEMORY_INCREMENT); -1846:Src/main.c **** -1847:Src/main.c **** LL_DMA_SetPeriphSize(DMA2, LL_DMA_STREAM_7, LL_DMA_PDATAALIGN_BYTE); -1848:Src/main.c **** -1849:Src/main.c **** LL_DMA_SetMemorySize(DMA2, LL_DMA_STREAM_7, LL_DMA_MDATAALIGN_BYTE); +1843:Src/main.c **** /** +1844:Src/main.c **** * @brief TIM1 Initialization Function +1845:Src/main.c **** * @param None +1846:Src/main.c **** * @retval None +1847:Src/main.c **** */ +1848:Src/main.c **** static void MX_TIM1_Init(void) +1849:Src/main.c **** { 1850:Src/main.c **** -1851:Src/main.c **** LL_DMA_DisableFifoMode(DMA2, LL_DMA_STREAM_7); +1851:Src/main.c **** /* USER CODE BEGIN TIM1_Init 0 */ 1852:Src/main.c **** -1853:Src/main.c **** /* USART1 interrupt Init */ -1854:Src/main.c **** NVIC_SetPriority(USART1_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); -1855:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); -1856:Src/main.c **** -1857:Src/main.c **** /* USER CODE BEGIN USART1_Init 1 */ +1853:Src/main.c **** /* USER CODE END TIM1_Init 0 */ +1854:Src/main.c **** +1855:Src/main.c **** TIM_ClockConfigTypeDef sClockSourceConfig = {0}; +1856:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; +1857:Src/main.c **** TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; 1858:Src/main.c **** -1859:Src/main.c **** /* USER CODE END USART1_Init 1 */ -1860:Src/main.c **** USART_InitStruct.BaudRate = 115200; -1861:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; -1862:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; -1863:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; -1864:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; -1865:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; -1866:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; -1867:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); -1868:Src/main.c **** LL_USART_ConfigAsyncMode(USART1); -1869:Src/main.c **** LL_USART_Enable(USART1); -1870:Src/main.c **** /* USER CODE BEGIN USART1_Init 2 */ -1871:Src/main.c **** -1872:Src/main.c **** /* USER CODE END USART1_Init 2 */ -1873:Src/main.c **** -1874:Src/main.c **** } -1875:Src/main.c **** -1876:Src/main.c **** /** -1877:Src/main.c **** * Enable DMA controller clock -1878:Src/main.c **** */ -1879:Src/main.c **** static void MX_DMA_Init(void) -1880:Src/main.c **** { - 144 .loc 1 1880 1 is_stmt 1 view -0 - ARM GAS /tmp/ccwR4KB7.s page 73 +1859:Src/main.c **** /* USER CODE BEGIN TIM1_Init 1 */ +1860:Src/main.c **** +1861:Src/main.c **** /* USER CODE END TIM1_Init 1 */ +1862:Src/main.c **** htim1.Instance = TIM1; +1863:Src/main.c **** htim1.Init.Prescaler = 0; +1864:Src/main.c **** htim1.Init.CounterMode = TIM_COUNTERMODE_UP; +1865:Src/main.c **** htim1.Init.Period = 8; +1866:Src/main.c **** htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; +1867:Src/main.c **** htim1.Init.RepetitionCounter = 0; +1868:Src/main.c **** htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; +1869:Src/main.c **** if (HAL_TIM_Base_Init(&htim1) != HAL_OK) +1870:Src/main.c **** { +1871:Src/main.c **** Error_Handler(); +1872:Src/main.c **** } +1873:Src/main.c **** sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL; +1874:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK) +1875:Src/main.c **** { +1876:Src/main.c **** Error_Handler(); +1877:Src/main.c **** } +1878:Src/main.c **** if (HAL_TIM_PWM_Init(&htim1) != HAL_OK) +1879:Src/main.c **** { +1880:Src/main.c **** Error_Handler(); +1881:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 73 +1882:Src/main.c **** sConfigOC.OCMode = TIM_OCMODE_PWM1; +1883:Src/main.c **** sConfigOC.Pulse = 4; +1884:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; +1885:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; +1886:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) +1887:Src/main.c **** { +1888:Src/main.c **** Error_Handler(); +1889:Src/main.c **** } +1890:Src/main.c **** sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_DISABLE; +1891:Src/main.c **** sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; +1892:Src/main.c **** sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; +1893:Src/main.c **** sBreakDeadTimeConfig.DeadTime = 0; +1894:Src/main.c **** sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; +1895:Src/main.c **** sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; +1896:Src/main.c **** sBreakDeadTimeConfig.BreakFilter = 0; +1897:Src/main.c **** sBreakDeadTimeConfig.Break2State = TIM_BREAK2_DISABLE; +1898:Src/main.c **** sBreakDeadTimeConfig.Break2Polarity = TIM_BREAK2POLARITY_HIGH; +1899:Src/main.c **** sBreakDeadTimeConfig.Break2Filter = 0; +1900:Src/main.c **** sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; +1901:Src/main.c **** if (HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig) != HAL_OK) +1902:Src/main.c **** { +1903:Src/main.c **** Error_Handler(); +1904:Src/main.c **** } +1905:Src/main.c **** /* USER CODE BEGIN TIM1_Init 2 */ +1906:Src/main.c **** +1907:Src/main.c **** /* USER CODE END TIM1_Init 2 */ +1908:Src/main.c **** HAL_TIM_MspPostInit(&htim1); +1909:Src/main.c **** +1910:Src/main.c **** } +1911:Src/main.c **** +1912:Src/main.c **** /** +1913:Src/main.c **** * @brief UART8 Initialization Function +1914:Src/main.c **** * @param None +1915:Src/main.c **** * @retval None +1916:Src/main.c **** */ +1917:Src/main.c **** static void MX_UART8_Init(void) +1918:Src/main.c **** { +1919:Src/main.c **** +1920:Src/main.c **** /* USER CODE BEGIN UART8_Init 0 */ +1921:Src/main.c **** +1922:Src/main.c **** /* USER CODE END UART8_Init 0 */ +1923:Src/main.c **** +1924:Src/main.c **** /* USER CODE BEGIN UART8_Init 1 */ +1925:Src/main.c **** +1926:Src/main.c **** /* USER CODE END UART8_Init 1 */ +1927:Src/main.c **** huart8.Instance = UART8; +1928:Src/main.c **** huart8.Init.BaudRate = 115200; +1929:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; +1930:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; +1931:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; +1932:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; +1933:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; +1934:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; +1935:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; +1936:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; +1937:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) +1938:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 74 + + +1939:Src/main.c **** Error_Handler(); +1940:Src/main.c **** } +1941:Src/main.c **** /* USER CODE BEGIN UART8_Init 2 */ +1942:Src/main.c **** +1943:Src/main.c **** /* USER CODE END UART8_Init 2 */ +1944:Src/main.c **** +1945:Src/main.c **** } +1946:Src/main.c **** +1947:Src/main.c **** /** +1948:Src/main.c **** * @brief USART1 Initialization Function +1949:Src/main.c **** * @param None +1950:Src/main.c **** * @retval None +1951:Src/main.c **** */ +1952:Src/main.c **** static void MX_USART1_UART_Init(void) +1953:Src/main.c **** { +1954:Src/main.c **** +1955:Src/main.c **** /* USER CODE BEGIN USART1_Init 0 */ +1956:Src/main.c **** +1957:Src/main.c **** /* USER CODE END USART1_Init 0 */ +1958:Src/main.c **** +1959:Src/main.c **** LL_USART_InitTypeDef USART_InitStruct = {0}; +1960:Src/main.c **** +1961:Src/main.c **** LL_GPIO_InitTypeDef GPIO_InitStruct = {0}; +1962:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; +1963:Src/main.c **** +1964:Src/main.c **** /** Initializes the peripherals clock +1965:Src/main.c **** */ +1966:Src/main.c **** PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USART1; +1967:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; +1968:Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) +1969:Src/main.c **** { +1970:Src/main.c **** Error_Handler(); +1971:Src/main.c **** } +1972:Src/main.c **** +1973:Src/main.c **** /* Peripheral clock enable */ +1974:Src/main.c **** LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_USART1); +1975:Src/main.c **** +1976:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_GPIOA); +1977:Src/main.c **** /**USART1 GPIO Configuration +1978:Src/main.c **** PA9 ------> USART1_TX +1979:Src/main.c **** PA10 ------> USART1_RX +1980:Src/main.c **** */ +1981:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_9; +1982:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1983:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1984:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1985:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1986:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; +1987:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); +1988:Src/main.c **** +1989:Src/main.c **** GPIO_InitStruct.Pin = LL_GPIO_PIN_10; +1990:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; +1991:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; +1992:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; +1993:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; +1994:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; +1995:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + ARM GAS /tmp/ccEQxcUB.s page 75 + + +1996:Src/main.c **** +1997:Src/main.c **** /* USART1 DMA Init */ +1998:Src/main.c **** +1999:Src/main.c **** /* USART1_TX Init */ +2000:Src/main.c **** LL_DMA_SetChannelSelection(DMA2, LL_DMA_STREAM_7, LL_DMA_CHANNEL_4); +2001:Src/main.c **** +2002:Src/main.c **** LL_DMA_SetDataTransferDirection(DMA2, LL_DMA_STREAM_7, LL_DMA_DIRECTION_MEMORY_TO_PERIPH); +2003:Src/main.c **** +2004:Src/main.c **** LL_DMA_SetStreamPriorityLevel(DMA2, LL_DMA_STREAM_7, LL_DMA_PRIORITY_VERYHIGH); +2005:Src/main.c **** +2006:Src/main.c **** LL_DMA_SetMode(DMA2, LL_DMA_STREAM_7, LL_DMA_MODE_NORMAL); +2007:Src/main.c **** +2008:Src/main.c **** LL_DMA_SetPeriphIncMode(DMA2, LL_DMA_STREAM_7, LL_DMA_PERIPH_NOINCREMENT); +2009:Src/main.c **** +2010:Src/main.c **** LL_DMA_SetMemoryIncMode(DMA2, LL_DMA_STREAM_7, LL_DMA_MEMORY_INCREMENT); +2011:Src/main.c **** +2012:Src/main.c **** LL_DMA_SetPeriphSize(DMA2, LL_DMA_STREAM_7, LL_DMA_PDATAALIGN_BYTE); +2013:Src/main.c **** +2014:Src/main.c **** LL_DMA_SetMemorySize(DMA2, LL_DMA_STREAM_7, LL_DMA_MDATAALIGN_BYTE); +2015:Src/main.c **** +2016:Src/main.c **** LL_DMA_DisableFifoMode(DMA2, LL_DMA_STREAM_7); +2017:Src/main.c **** +2018:Src/main.c **** /* USART1 interrupt Init */ +2019:Src/main.c **** NVIC_SetPriority(USART1_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); +2020:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); +2021:Src/main.c **** +2022:Src/main.c **** /* USER CODE BEGIN USART1_Init 1 */ +2023:Src/main.c **** +2024:Src/main.c **** /* USER CODE END USART1_Init 1 */ +2025:Src/main.c **** USART_InitStruct.BaudRate = 115200; +2026:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; +2027:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; +2028:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; +2029:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; +2030:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; +2031:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; +2032:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); +2033:Src/main.c **** LL_USART_ConfigAsyncMode(USART1); +2034:Src/main.c **** LL_USART_Enable(USART1); +2035:Src/main.c **** /* USER CODE BEGIN USART1_Init 2 */ +2036:Src/main.c **** +2037:Src/main.c **** /* USER CODE END USART1_Init 2 */ +2038:Src/main.c **** +2039:Src/main.c **** } +2040:Src/main.c **** +2041:Src/main.c **** /** +2042:Src/main.c **** * Enable DMA controller clock +2043:Src/main.c **** */ +2044:Src/main.c **** static void MX_DMA_Init(void) +2045:Src/main.c **** { + 144 .loc 1 2045 1 is_stmt 1 view -0 145 .cfi_startproc 146 @ args = 0, pretend = 0, frame = 8 147 @ frame_needed = 0, uses_anonymous_args = 0 148 0000 00B5 push {lr} 149 .LCFI1: 150 .cfi_def_cfa_offset 4 + ARM GAS /tmp/ccEQxcUB.s page 76 + + 151 .cfi_offset 14, -4 152 0002 83B0 sub sp, sp, #12 153 .LCFI2: 154 .cfi_def_cfa_offset 16 -1881:Src/main.c **** -1882:Src/main.c **** /* Init with LL driver */ -1883:Src/main.c **** /* DMA controller clock enable */ -1884:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_DMA2); - 155 .loc 1 1884 3 view .LVU37 +2046:Src/main.c **** +2047:Src/main.c **** /* Init with LL driver */ +2048:Src/main.c **** /* DMA controller clock enable */ +2049:Src/main.c **** LL_AHB1_GRP1_EnableClock(LL_AHB1_GRP1_PERIPH_DMA2); + 155 .loc 1 2049 3 view .LVU37 156 .LVL8: - 157 .LBB331: - 158 .LBI331: + 157 .LBB351: + 158 .LBI351: 159 .file 3 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** ****************************************************************************** @@ -4378,15 +4552,15 @@ ARM GAS /tmp/ccwR4KB7.s page 1 36:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #ifndef __STM32F7xx_LL_BUS_H 37:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define __STM32F7xx_LL_BUS_H 38:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** - ARM GAS /tmp/ccwR4KB7.s page 74 - - 39:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #ifdef __cplusplus 40:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** extern "C" { 41:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #endif 42:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 43:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Includes ------------------------------------------------------------------*/ 44:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #include "stm32f7xx.h" + ARM GAS /tmp/ccEQxcUB.s page 77 + + 45:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 46:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** @addtogroup STM32F7xx_LL_Driver 47:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @{ @@ -4438,15 +4612,15 @@ ARM GAS /tmp/ccwR4KB7.s page 1 93:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #if defined(ETH) 94:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_ETHMAC RCC_AHB1ENR_ETHMACEN 95:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_ETHMACTX RCC_AHB1ENR_ETHMACTXEN - ARM GAS /tmp/ccwR4KB7.s page 75 - - 96:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_ETHMACRX RCC_AHB1ENR_ETHMACRXEN 97:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_ETHMACPTP RCC_AHB1ENR_ETHMACPTPEN 98:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #endif /* ETH */ 99:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_OTGHS RCC_AHB1ENR_OTGHSEN 100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_OTGHSULPI RCC_AHB1ENR_OTGHSULPIEN 101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_AXI RCC_AHB1LPENR_AXILPEN + ARM GAS /tmp/ccEQxcUB.s page 78 + + 102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_FLITF RCC_AHB1LPENR_FLITFLPEN 103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_SRAM1 RCC_AHB1LPENR_SRAM1LPEN 104:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_AHB1_GRP1_PERIPH_SRAM2 RCC_AHB1LPENR_SRAM2LPEN @@ -4498,15 +4672,15 @@ ARM GAS /tmp/ccwR4KB7.s page 1 150:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM4 RCC_APB1ENR_TIM4EN 151:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM5 RCC_APB1ENR_TIM5EN 152:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM6 RCC_APB1ENR_TIM6EN - ARM GAS /tmp/ccwR4KB7.s page 76 - - 153:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM7 RCC_APB1ENR_TIM7EN 154:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM12 RCC_APB1ENR_TIM12EN 155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM13 RCC_APB1ENR_TIM13EN 156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_TIM14 RCC_APB1ENR_TIM14EN 157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_LPTIM1 RCC_APB1ENR_LPTIM1EN 158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_WWDG RCC_APB1ENR_WWDGEN + ARM GAS /tmp/ccEQxcUB.s page 79 + + 159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_SPI2 RCC_APB1ENR_SPI2EN 160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB1_GRP1_PERIPH_SPI3 RCC_APB1ENR_SPI3EN 161:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #if defined(SPDIFRX) @@ -4558,15 +4732,15 @@ ARM GAS /tmp/ccwR4KB7.s page 1 207:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #if defined(SDMMC2) 208:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SDMMC2 RCC_APB2ENR_SDMMC2EN 209:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #endif /* SDMMC2 */ - ARM GAS /tmp/ccwR4KB7.s page 77 - - 210:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SPI1 RCC_APB2ENR_SPI1EN 211:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SPI4 RCC_APB2ENR_SPI4EN 212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SYSCFG RCC_APB2ENR_SYSCFGEN 213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_TIM9 RCC_APB2ENR_TIM9EN 214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_TIM10 RCC_APB2ENR_TIM10EN 215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_TIM11 RCC_APB2ENR_TIM11EN + ARM GAS /tmp/ccEQxcUB.s page 80 + + 216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SPI5 RCC_APB2ENR_SPI5EN 217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #if defined(SPI6) 218:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** #define LL_APB2_GRP1_PERIPH_SPI6 RCC_APB2ENR_SPI6EN @@ -4618,15 +4792,15 @@ ARM GAS /tmp/ccwR4KB7.s page 1 264:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR GPIOGEN LL_AHB1_GRP1_EnableClock\n 265:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR GPIOHEN LL_AHB1_GRP1_EnableClock\n 266:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR GPIOIEN LL_AHB1_GRP1_EnableClock\n - ARM GAS /tmp/ccwR4KB7.s page 78 - - 267:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR GPIOJEN LL_AHB1_GRP1_EnableClock\n 268:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR GPIOKEN LL_AHB1_GRP1_EnableClock\n 269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR CRCEN LL_AHB1_GRP1_EnableClock\n 270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR BKPSRAMEN LL_AHB1_GRP1_EnableClock\n 271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR DTCMRAMEN LL_AHB1_GRP1_EnableClock\n 272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR DMA1EN LL_AHB1_GRP1_EnableClock\n + ARM GAS /tmp/ccEQxcUB.s page 81 + + 273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR DMA2EN LL_AHB1_GRP1_EnableClock\n 274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR DMA2DEN LL_AHB1_GRP1_EnableClock\n 275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * AHB1ENR ETHMACEN LL_AHB1_GRP1_EnableClock\n @@ -4665,7 +4839,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 308:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** */ 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __STATIC_INLINE void LL_AHB1_GRP1_EnableClock(uint32_t Periphs) 160 .loc 3 309 22 view .LVU38 - 161 .LBB332: + 161 .LBB352: 310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __IO uint32_t tmpreg; 162 .loc 3 311 3 view .LVU39 @@ -4678,50 +4852,50 @@ ARM GAS /tmp/ccwR4KB7.s page 1 313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** tmpreg = READ_BIT(RCC->AHB1ENR, Periphs); 168 .loc 3 314 3 view .LVU41 - ARM GAS /tmp/ccwR4KB7.s page 79 - - 169 .loc 3 314 12 is_stmt 0 view .LVU42 170 000e 1B6B ldr r3, [r3, #48] 171 0010 03F48003 and r3, r3, #4194304 172 .loc 3 314 10 view .LVU43 173 0014 0193 str r3, [sp, #4] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + ARM GAS /tmp/ccEQxcUB.s page 82 + + 174 .loc 3 315 3 is_stmt 1 view .LVU44 175 0016 019B ldr r3, [sp, #4] 176 .LVL9: 177 .loc 3 315 3 is_stmt 0 view .LVU45 - 178 .LBE332: - 179 .LBE331: -1885:Src/main.c **** -1886:Src/main.c **** /* DMA interrupt init */ -1887:Src/main.c **** /* DMA2_Stream7_IRQn interrupt configuration */ -1888:Src/main.c **** NVIC_SetPriority(DMA2_Stream7_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); - 180 .loc 1 1888 3 is_stmt 1 view .LVU46 - 181 .LBB333: - 182 .LBI333: + 178 .LBE352: + 179 .LBE351: +2050:Src/main.c **** +2051:Src/main.c **** /* DMA interrupt init */ +2052:Src/main.c **** /* DMA2_Stream7_IRQn interrupt configuration */ +2053:Src/main.c **** NVIC_SetPriority(DMA2_Stream7_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0)); + 180 .loc 1 2053 3 is_stmt 1 view .LVU46 + 181 .LBB353: + 182 .LBI353: 1884:Drivers/CMSIS/Include/core_cm7.h **** { 183 .loc 2 1884 26 view .LVU47 - 184 .LBB334: + 184 .LBB354: 1886:Drivers/CMSIS/Include/core_cm7.h **** } 185 .loc 2 1886 3 view .LVU48 1886:Drivers/CMSIS/Include/core_cm7.h **** } 186 .loc 2 1886 26 is_stmt 0 view .LVU49 187 0018 094B ldr r3, .L10+4 188 001a D868 ldr r0, [r3, #12] - 189 .LBE334: - 190 .LBE333: - 191 .loc 1 1888 3 discriminator 1 view .LVU50 + 189 .LBE354: + 190 .LBE353: + 191 .loc 1 2053 3 discriminator 1 view .LVU50 192 001c 0022 movs r2, #0 193 001e 1146 mov r1, r2 194 0020 C0F30220 ubfx r0, r0, #8, #3 195 0024 FFF7FEFF bl NVIC_EncodePriority 196 .LVL10: - 197 .LBB335: - 198 .LBI335: + 197 .LBB355: + 198 .LBI355: 2024:Drivers/CMSIS/Include/core_cm7.h **** { 199 .loc 2 2024 22 is_stmt 1 view .LVU51 - 200 .LBB336: + 200 .LBB356: 2026:Drivers/CMSIS/Include/core_cm7.h **** { 201 .loc 2 2026 3 view .LVU52 2028:Drivers/CMSIS/Include/core_cm7.h **** } @@ -4738,20 +4912,20 @@ ARM GAS /tmp/ccwR4KB7.s page 1 209 002c 054B ldr r3, .L10+8 210 002e 83F84603 strb r0, [r3, #838] 211 .LVL12: - ARM GAS /tmp/ccwR4KB7.s page 80 - - 2028:Drivers/CMSIS/Include/core_cm7.h **** } 212 .loc 2 2028 47 view .LVU57 - 213 .LBE336: - 214 .LBE335: -1889:Src/main.c **** NVIC_EnableIRQ(DMA2_Stream7_IRQn); - 215 .loc 1 1889 3 is_stmt 1 view .LVU58 - 216 .LBB337: - 217 .LBI337: + 213 .LBE356: + 214 .LBE355: +2054:Src/main.c **** NVIC_EnableIRQ(DMA2_Stream7_IRQn); + 215 .loc 1 2054 3 is_stmt 1 view .LVU58 + ARM GAS /tmp/ccEQxcUB.s page 83 + + + 216 .LBB357: + 217 .LBI357: 1896:Drivers/CMSIS/Include/core_cm7.h **** { 218 .loc 2 1896 22 view .LVU59 - 219 .LBB338: + 219 .LBB358: 1898:Drivers/CMSIS/Include/core_cm7.h **** { 220 .loc 2 1898 3 view .LVU60 1900:Drivers/CMSIS/Include/core_cm7.h **** } @@ -4763,11 +4937,11 @@ ARM GAS /tmp/ccwR4KB7.s page 1 225 .LVL13: 1900:Drivers/CMSIS/Include/core_cm7.h **** } 226 .loc 2 1900 43 view .LVU63 - 227 .LBE338: - 228 .LBE337: -1890:Src/main.c **** -1891:Src/main.c **** } - 229 .loc 1 1891 1 view .LVU64 + 227 .LBE358: + 228 .LBE357: +2055:Src/main.c **** +2056:Src/main.c **** } + 229 .loc 1 2056 1 view .LVU64 230 0036 03B0 add sp, sp, #12 231 .LCFI3: 232 .cfi_def_cfa_offset 4 @@ -4780,7 +4954,7 @@ ARM GAS /tmp/ccwR4KB7.s page 1 239 0040 00ED00E0 .word -536810240 240 0044 00E100E0 .word -536813312 241 .cfi_endproc - 242 .LFE1205: + 242 .LFE1206: 244 .section .text.Decode_task,"ax",%progbits 245 .align 1 246 .syntax unified @@ -4788,817 +4962,827 @@ ARM GAS /tmp/ccwR4KB7.s page 1 248 .thumb_func 250 Decode_task: 251 .LVL14: - 252 .LFB1209: -1892:Src/main.c **** -1893:Src/main.c **** /** -1894:Src/main.c **** * @brief GPIO Initialization Function -1895:Src/main.c **** * @param None -1896:Src/main.c **** * @retval None -1897:Src/main.c **** */ -1898:Src/main.c **** static void MX_GPIO_Init(void) -1899:Src/main.c **** { -1900:Src/main.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; - ARM GAS /tmp/ccwR4KB7.s page 81 + 252 .LFB1210: +2057:Src/main.c **** +2058:Src/main.c **** /** +2059:Src/main.c **** * @brief GPIO Initialization Function +2060:Src/main.c **** * @param None +2061:Src/main.c **** * @retval None +2062:Src/main.c **** */ +2063:Src/main.c **** static void MX_GPIO_Init(void) +2064:Src/main.c **** { +2065:Src/main.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; +2066:Src/main.c **** /* USER CODE BEGIN MX_GPIO_Init_1 */ +2067:Src/main.c **** /* USER CODE END MX_GPIO_Init_1 */ +2068:Src/main.c **** +2069:Src/main.c **** /* GPIO Ports Clock Enable */ +2070:Src/main.c **** __HAL_RCC_GPIOF_CLK_ENABLE(); +2071:Src/main.c **** __HAL_RCC_GPIOH_CLK_ENABLE(); + ARM GAS /tmp/ccEQxcUB.s page 84 -1901:Src/main.c **** /* USER CODE BEGIN MX_GPIO_Init_1 */ -1902:Src/main.c **** /* USER CODE END MX_GPIO_Init_1 */ -1903:Src/main.c **** -1904:Src/main.c **** /* GPIO Ports Clock Enable */ -1905:Src/main.c **** __HAL_RCC_GPIOF_CLK_ENABLE(); -1906:Src/main.c **** __HAL_RCC_GPIOH_CLK_ENABLE(); -1907:Src/main.c **** __HAL_RCC_GPIOC_CLK_ENABLE(); -1908:Src/main.c **** __HAL_RCC_GPIOA_CLK_ENABLE(); -1909:Src/main.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); -1910:Src/main.c **** __HAL_RCC_GPIOE_CLK_ENABLE(); -1911:Src/main.c **** __HAL_RCC_GPIOD_CLK_ENABLE(); -1912:Src/main.c **** __HAL_RCC_GPIOG_CLK_ENABLE(); -1913:Src/main.c **** -1914:Src/main.c **** /*Configure GPIO pin Output Level */ -1915:Src/main.c **** HAL_GPIO_WritePin(GPIOF, ADC_MPD2_CS_Pin|SPI5_CNV_Pin|ADC_ThrLD2_CS_Pin, GPIO_PIN_RESET); -1916:Src/main.c **** -1917:Src/main.c **** /*Configure GPIO pin Output Level */ -1918:Src/main.c **** HAL_GPIO_WritePin(GPIOC, EN_5V2_Pin|EN_5V1_Pin|LD2_EN_Pin|TEC2_PD_Pin, GPIO_PIN_RESET); -1919:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); -1920:Src/main.c **** -1921:Src/main.c **** /*Configure GPIO pin Output Level */ -1922:Src/main.c **** HAL_GPIO_WritePin(GPIOA, TECEN1_Pin|TECEN2_Pin|REF2_ON_Pin|DAC_LD2_CS_Pin, GPIO_PIN_RESET); -1923:Src/main.c **** -1924:Src/main.c **** /*Configure GPIO pin Output Level */ -1925:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET); -1926:Src/main.c **** -1927:Src/main.c **** /*Configure GPIO pin Output Level */ -1928:Src/main.c **** HAL_GPIO_WritePin(GPIOE, ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); -1929:Src/main.c **** -1930:Src/main.c **** /*Configure GPIO pin Output Level */ -1931:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); -1932:Src/main.c **** -1933:Src/main.c **** /*Configure GPIO pin Output Level */ -1934:Src/main.c **** HAL_GPIO_WritePin(GPIOB, REF0_EN_Pin|TEC1_PD_Pin|OUT_6_Pin -1935:Src/main.c **** |OUT_7_Pin|OUT_8_Pin|OUT_9_Pin, GPIO_PIN_RESET); -1936:Src/main.c **** -1937:Src/main.c **** /*Configure GPIO pin Output Level */ -1938:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); -1939:Src/main.c **** -1940:Src/main.c **** /*Configure GPIO pin Output Level */ -1941:Src/main.c **** HAL_GPIO_WritePin(GPIOD, LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7, GPIO_PIN_RESET); -1942:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -1943:Src/main.c **** -1944:Src/main.c **** /*Configure GPIO pin Output Level */ -1945:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9|OUT_0_Pin|OUT_1_Pin|OUT_2_Pin -1946:Src/main.c **** |OUT_3_Pin|OUT_4_Pin|OUT_5_Pin, GPIO_PIN_RESET); -1947:Src/main.c **** -1948:Src/main.c **** /*Configure GPIO pins : INP_0_Pin INP_1_Pin */ -1949:Src/main.c **** GPIO_InitStruct.Pin = INP_0_Pin|INP_1_Pin; -1950:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; -1951:Src/main.c **** GPIO_InitStruct.Pull = GPIO_PULLUP; -1952:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); -1953:Src/main.c **** -1954:Src/main.c **** /*Configure GPIO pins : ADC_MPD2_CS_Pin SPI5_CNV_Pin ADC_ThrLD2_CS_Pin */ -1955:Src/main.c **** GPIO_InitStruct.Pin = ADC_MPD2_CS_Pin|SPI5_CNV_Pin|ADC_ThrLD2_CS_Pin; -1956:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -1957:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - ARM GAS /tmp/ccwR4KB7.s page 82 +2072:Src/main.c **** __HAL_RCC_GPIOC_CLK_ENABLE(); +2073:Src/main.c **** __HAL_RCC_GPIOA_CLK_ENABLE(); +2074:Src/main.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); +2075:Src/main.c **** __HAL_RCC_GPIOE_CLK_ENABLE(); +2076:Src/main.c **** __HAL_RCC_GPIOD_CLK_ENABLE(); +2077:Src/main.c **** __HAL_RCC_GPIOG_CLK_ENABLE(); +2078:Src/main.c **** +2079:Src/main.c **** /*Configure GPIO pin Output Level */ +2080:Src/main.c **** HAL_GPIO_WritePin(GPIOF, ADC_MPD2_CS_Pin|SPI5_CNV_Pin|ADC_ThrLD2_CS_Pin, GPIO_PIN_RESET); +2081:Src/main.c **** +2082:Src/main.c **** /*Configure GPIO pin Output Level */ +2083:Src/main.c **** HAL_GPIO_WritePin(GPIOC, EN_5V2_Pin|EN_5V1_Pin|LD2_EN_Pin|TEC2_PD_Pin, GPIO_PIN_RESET); +2084:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); +2085:Src/main.c **** +2086:Src/main.c **** /*Configure GPIO pin Output Level */ +2087:Src/main.c **** HAL_GPIO_WritePin(GPIOA, TECEN1_Pin|TECEN2_Pin|REF2_ON_Pin|DAC_LD2_CS_Pin, GPIO_PIN_RESET); +2088:Src/main.c **** +2089:Src/main.c **** /*Configure GPIO pin Output Level */ +2090:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET); +2091:Src/main.c **** +2092:Src/main.c **** /*Configure GPIO pin Output Level */ +2093:Src/main.c **** HAL_GPIO_WritePin(GPIOE, ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); +2094:Src/main.c **** HAL_GPIO_WritePin(GPIOE, DS1809_UC_Pin|DS1809_DC_Pin, GPIO_PIN_SET); +2095:Src/main.c **** +2096:Src/main.c **** /*Configure GPIO pin Output Level */ +2097:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); +2098:Src/main.c **** +2099:Src/main.c **** /*Configure GPIO pin Output Level */ +2100:Src/main.c **** HAL_GPIO_WritePin(GPIOB, REF0_EN_Pin|TEC1_PD_Pin|OUT_6_Pin +2101:Src/main.c **** |OUT_7_Pin|OUT_8_Pin|OUT_9_Pin, GPIO_PIN_RESET); +2102:Src/main.c **** +2103:Src/main.c **** /*Configure GPIO pin Output Level */ +2104:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); +2105:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +2106:Src/main.c **** +2107:Src/main.c **** /*Configure GPIO pin Output Level */ +2108:Src/main.c **** HAL_GPIO_WritePin(GPIOD, LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7, GPIO_PIN_RESET); +2109:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +2110:Src/main.c **** HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_SET); +2111:Src/main.c **** +2112:Src/main.c **** /*Configure GPIO pin Output Level */ +2113:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9|OUT_0_Pin|OUT_1_Pin|OUT_2_Pin +2114:Src/main.c **** |OUT_3_Pin|OUT_4_Pin|OUT_5_Pin, GPIO_PIN_RESET); +2115:Src/main.c **** +2116:Src/main.c **** /*Configure GPIO pins : INP_0_Pin INP_1_Pin */ +2117:Src/main.c **** GPIO_InitStruct.Pin = INP_0_Pin|INP_1_Pin; +2118:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; +2119:Src/main.c **** GPIO_InitStruct.Pull = GPIO_PULLUP; +2120:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); +2121:Src/main.c **** +2122:Src/main.c **** /*Configure GPIO pins : ADC_MPD2_CS_Pin SPI5_CNV_Pin ADC_ThrLD2_CS_Pin */ +2123:Src/main.c **** GPIO_InitStruct.Pin = ADC_MPD2_CS_Pin|SPI5_CNV_Pin|ADC_ThrLD2_CS_Pin; +2124:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2125:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2126:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; +2127:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); +2128:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 85 -1958:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -1959:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); -1960:Src/main.c **** -1961:Src/main.c **** /*Configure GPIO pins : EN_5V2_Pin LD2_EN_Pin TEC2_PD_Pin AD9102_RESET_Pin */ -1962:Src/main.c **** GPIO_InitStruct.Pin = EN_5V2_Pin|LD2_EN_Pin|TEC2_PD_Pin|AD9102_RESET_Pin; -1963:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -1964:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -1965:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -1966:Src/main.c **** HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); -1967:Src/main.c **** -1968:Src/main.c **** /*Configure GPIO pin : EN_5V1_Pin */ -1969:Src/main.c **** GPIO_InitStruct.Pin = EN_5V1_Pin; -1970:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -1971:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -1972:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; -1973:Src/main.c **** HAL_GPIO_Init(EN_5V1_GPIO_Port, &GPIO_InitStruct); -1974:Src/main.c **** -1975:Src/main.c **** /*Configure GPIO pins : TECEN1_Pin TECEN2_Pin REF2_ON_Pin DAC_TEC2_CS_Pin -1976:Src/main.c **** DAC_LD2_CS_Pin */ -1977:Src/main.c **** GPIO_InitStruct.Pin = TECEN1_Pin|TECEN2_Pin|REF2_ON_Pin|DAC_TEC2_CS_Pin -1978:Src/main.c **** |DAC_LD2_CS_Pin; -1979:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -1980:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -1981:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -1982:Src/main.c **** HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); -1983:Src/main.c **** -1984:Src/main.c **** /*Configure GPIO pins : TEC2_FLAG1_Pin TEC2_FLAG2_Pin TEC1_FLAG1_Pin TEC1_FLAG2_Pin */ -1985:Src/main.c **** GPIO_InitStruct.Pin = TEC2_FLAG1_Pin|TEC2_FLAG2_Pin|TEC1_FLAG1_Pin|TEC1_FLAG2_Pin; -1986:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; -1987:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -1988:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); -1989:Src/main.c **** -1990:Src/main.c **** /*Configure GPIO pins : ADC_MPD1_CS_Pin ADC_ThrLD1_CS_Pin */ -1991:Src/main.c **** GPIO_InitStruct.Pin = ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin; -1992:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -1993:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -1994:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -1995:Src/main.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); -1996:Src/main.c **** -1997:Src/main.c **** /*Configure GPIO pin : SPI4_CNV_Pin */ -1998:Src/main.c **** GPIO_InitStruct.Pin = SPI4_CNV_Pin; -1999:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -2000:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2001:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; -2002:Src/main.c **** HAL_GPIO_Init(SPI4_CNV_GPIO_Port, &GPIO_InitStruct); -2003:Src/main.c **** -2004:Src/main.c **** /*Configure GPIO pins : REF0_EN_Pin TEC1_PD_Pin DAC_TEC1_CS_Pin -2005:Src/main.c **** OUT_6_Pin OUT_7_Pin OUT_8_Pin OUT_9_Pin */ -2006:Src/main.c **** GPIO_InitStruct.Pin = REF0_EN_Pin|TEC1_PD_Pin|DAC_TEC1_CS_Pin -2007:Src/main.c **** |OUT_6_Pin|OUT_7_Pin|OUT_8_Pin|OUT_9_Pin; -2008:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -2009:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2010:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -2011:Src/main.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); -2012:Src/main.c **** -2013:Src/main.c **** /*Configure GPIO pins : LD1_EN_Pin TEST_01_Pin PD7 AD9102_TRIG_Pin */ -2014:Src/main.c **** GPIO_InitStruct.Pin = LD1_EN_Pin|TEST_01_Pin|GPIO_PIN_7|AD9102_TRIG_Pin; - ARM GAS /tmp/ccwR4KB7.s page 83 +2129:Src/main.c **** /*Configure GPIO pins : EN_5V2_Pin LD2_EN_Pin TEC2_PD_Pin AD9102_RESET_Pin */ +2130:Src/main.c **** GPIO_InitStruct.Pin = EN_5V2_Pin|LD2_EN_Pin|TEC2_PD_Pin|AD9102_RESET_Pin; +2131:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2132:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2133:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; +2134:Src/main.c **** HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); +2135:Src/main.c **** +2136:Src/main.c **** /*Configure GPIO pin : EN_5V1_Pin */ +2137:Src/main.c **** GPIO_InitStruct.Pin = EN_5V1_Pin; +2138:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2139:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2140:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; +2141:Src/main.c **** HAL_GPIO_Init(EN_5V1_GPIO_Port, &GPIO_InitStruct); +2142:Src/main.c **** +2143:Src/main.c **** /*Configure GPIO pins : TECEN1_Pin TECEN2_Pin REF2_ON_Pin DAC_TEC2_CS_Pin +2144:Src/main.c **** DAC_LD2_CS_Pin */ +2145:Src/main.c **** GPIO_InitStruct.Pin = TECEN1_Pin|TECEN2_Pin|REF2_ON_Pin|DAC_TEC2_CS_Pin +2146:Src/main.c **** |DAC_LD2_CS_Pin; +2147:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2148:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2149:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; +2150:Src/main.c **** HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); +2151:Src/main.c **** +2152:Src/main.c **** /*Configure GPIO pins : TEC2_FLAG1_Pin TEC2_FLAG2_Pin TEC1_FLAG1_Pin TEC1_FLAG2_Pin */ +2153:Src/main.c **** GPIO_InitStruct.Pin = TEC2_FLAG1_Pin|TEC2_FLAG2_Pin|TEC1_FLAG1_Pin|TEC1_FLAG2_Pin; +2154:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; +2155:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2156:Src/main.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); +2157:Src/main.c **** +2158:Src/main.c **** /*Configure GPIO pins : ADC_MPD1_CS_Pin ADC_ThrLD1_CS_Pin */ +2159:Src/main.c **** GPIO_InitStruct.Pin = ADC_MPD1_CS_Pin|ADC_ThrLD1_CS_Pin; +2160:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2161:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2162:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; +2163:Src/main.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); +2164:Src/main.c **** +2165:Src/main.c **** /*Configure GPIO pins : DS1809_UC_Pin DS1809_DC_Pin */ +2166:Src/main.c **** GPIO_InitStruct.Pin = DS1809_UC_Pin|DS1809_DC_Pin; +2167:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_OD; +2168:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2169:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; +2170:Src/main.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); +2171:Src/main.c **** +2172:Src/main.c **** /*Configure GPIO pin : SPI4_CNV_Pin */ +2173:Src/main.c **** GPIO_InitStruct.Pin = SPI4_CNV_Pin; +2174:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2175:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2176:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; +2177:Src/main.c **** HAL_GPIO_Init(SPI4_CNV_GPIO_Port, &GPIO_InitStruct); +2178:Src/main.c **** +2179:Src/main.c **** /*Configure GPIO pins : REF0_EN_Pin TEC1_PD_Pin AD9102_CS_Pin +2180:Src/main.c **** OUT_6_Pin OUT_7_Pin OUT_8_Pin OUT_9_Pin */ +2181:Src/main.c **** GPIO_InitStruct.Pin = REF0_EN_Pin|TEC1_PD_Pin|AD9102_CS_Pin +2182:Src/main.c **** |OUT_6_Pin|OUT_7_Pin|OUT_8_Pin|OUT_9_Pin; +2183:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; +2184:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; +2185:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + ARM GAS /tmp/ccEQxcUB.s page 86 -2015:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -2016:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2017:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -2018:Src/main.c **** HAL_GPIO_Init(GPIOD, &GPIO_InitStruct); -2019:Src/main.c **** -2020:Src/main.c **** /*Configure GPIO pin : USB_FLAG_Pin */ -2021:Src/main.c **** GPIO_InitStruct.Pin = USB_FLAG_Pin; -2022:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; -2023:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2024:Src/main.c **** HAL_GPIO_Init(USB_FLAG_GPIO_Port, &GPIO_InitStruct); -2025:Src/main.c **** -2026:Src/main.c **** /*Configure GPIO pin : SDMMC1_EN_Pin */ -2027:Src/main.c **** GPIO_InitStruct.Pin = SDMMC1_EN_Pin; -2028:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_INPUT; -2029:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2030:Src/main.c **** HAL_GPIO_Init(SDMMC1_EN_GPIO_Port, &GPIO_InitStruct); -2031:Src/main.c **** -2032:Src/main.c **** /*Configure GPIO pins : PG9 OUT_0_Pin OUT_1_Pin OUT_2_Pin -2033:Src/main.c **** OUT_3_Pin OUT_4_Pin OUT_5_Pin */ -2034:Src/main.c **** GPIO_InitStruct.Pin = GPIO_PIN_9|OUT_0_Pin|OUT_1_Pin|OUT_2_Pin -2035:Src/main.c **** |OUT_3_Pin|OUT_4_Pin|OUT_5_Pin; -2036:Src/main.c **** GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; -2037:Src/main.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; -2038:Src/main.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; -2039:Src/main.c **** HAL_GPIO_Init(GPIOG, &GPIO_InitStruct); -2040:Src/main.c **** -2041:Src/main.c **** /* USER CODE BEGIN MX_GPIO_Init_2 */ -2042:Src/main.c **** /* USER CODE END MX_GPIO_Init_2 */ -2043:Src/main.c **** } -2044:Src/main.c **** -2045:Src/main.c **** /* USER CODE BEGIN 4 */ -2046:Src/main.c **** -2047:Src/main.c **** //void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart) { -2048:Src/main.c **** -2049:Src/main.c **** // UART_transmission_request = NO_MESS; -2050:Src/main.c **** -2051:Src/main.c **** //} -2052:Src/main.c **** -2053:Src/main.c **** static void Init_params(void) -2054:Src/main.c **** { -2055:Src/main.c **** TO6 = 0; -2056:Src/main.c **** TO7 = 0; -2057:Src/main.c **** TO7_before = 0; -2058:Src/main.c **** TO6_before = 0; -2059:Src/main.c **** TO6_uart = 0; -2060:Src/main.c **** flg_tmt = 0; -2061:Src/main.c **** UART_rec_incr = 0; -2062:Src/main.c **** fgoto = 0; -2063:Src/main.c **** sizeoffile = 0; -2064:Src/main.c **** u_tx_flg = 0; -2065:Src/main.c **** u_rx_flg = 0; -2066:Src/main.c **** //State_Data[0]=0; -2067:Src/main.c **** //State_Data[1]=0;//All OK! -2068:Src/main.c **** for (uint16_t i=0; iWORK_EN = ((uint8_t)((*temp2)>>0))&0x01; -2222:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; -2223:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; -2224:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; -2225:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; -2226:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; -2227:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; -2228:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; -2229:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; -2230:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; -2231:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; -2232:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; -2233:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; -2234:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; -2235:Src/main.c **** -2236:Src/main.c **** temp2++; -2237:Src/main.c **** LD1_curr_setup->LD_TEMP = (uint16_t)(*temp2); -2238:Src/main.c **** temp2++; -2239:Src/main.c **** LD2_curr_setup->LD_TEMP = (uint16_t)(*temp2); -2240:Src/main.c **** temp2++; -2241:Src/main.c **** temp2++; -2242:Src/main.c **** temp2++; - ARM GAS /tmp/ccwR4KB7.s page 87 - - -2243:Src/main.c **** Curr_setup->AVERAGES = (uint16_t)(*temp2); -2244:Src/main.c **** temp2++; -2245:Src/main.c **** LD1_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint -2246:Src/main.c **** temp2++; -2247:Src/main.c **** LD1_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint -2248:Src/main.c **** temp2++; -2249:Src/main.c **** LD2_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint -2250:Src/main.c **** temp2++; -2251:Src/main.c **** LD2_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint -2252:Src/main.c **** temp2++; -2253:Src/main.c **** Long_Data[13] = (uint16_t)(*temp2);//Message ID -2254:Src/main.c **** temp2++; -2255:Src/main.c **** LD1_curr_setup->CURRENT = (uint16_t)(*temp2); -2256:Src/main.c **** temp2++; -2257:Src/main.c **** LD2_curr_setup->CURRENT = (uint16_t)(*temp2); -2258:Src/main.c **** temp2++; -2259:Src/main.c **** -2260:Src/main.c **** if (Curr_setup->U5V1_EN) -2261:Src/main.c **** { -2262:Src/main.c **** HAL_GPIO_WritePin(EN_5V1_GPIO_Port, EN_5V1_Pin, GPIO_PIN_SET); -2263:Src/main.c **** } -2264:Src/main.c **** else -2265:Src/main.c **** { -2266:Src/main.c **** HAL_GPIO_WritePin(EN_5V1_GPIO_Port, EN_5V1_Pin, GPIO_PIN_RESET); -2267:Src/main.c **** } -2268:Src/main.c **** -2269:Src/main.c **** if (Curr_setup->U5V2_EN) -2270:Src/main.c **** { -2271:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_SET); -2272:Src/main.c **** } -2273:Src/main.c **** else -2274:Src/main.c **** { -2275:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_RESET); -2276:Src/main.c **** } -2277:Src/main.c **** -2278:Src/main.c **** if (Curr_setup->LD1_EN) -2279:Src/main.c **** { -2280:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_SET); -2281:Src/main.c **** //LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC -2282:Src/main.c **** } -2283:Src/main.c **** else -2284:Src/main.c **** { -2285:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_RESET); -2286:Src/main.c **** //LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC -2287:Src/main.c **** } -2288:Src/main.c **** -2289:Src/main.c **** if (Curr_setup->LD2_EN) -2290:Src/main.c **** { -2291:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_SET); -2292:Src/main.c **** //LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC -2293:Src/main.c **** } -2294:Src/main.c **** else -2295:Src/main.c **** { -2296:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_RESET); -2297:Src/main.c **** //LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC -2298:Src/main.c **** } -2299:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 88 - - -2300:Src/main.c **** if (Curr_setup->REF1_EN) -2301:Src/main.c **** { -2302:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_SET); -2303:Src/main.c **** } -2304:Src/main.c **** else -2305:Src/main.c **** { -2306:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_RESET); -2307:Src/main.c **** } -2308:Src/main.c **** -2309:Src/main.c **** if (Curr_setup->REF2_EN) -2310:Src/main.c **** { -2311:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_SET); -2312:Src/main.c **** } -2313:Src/main.c **** else -2314:Src/main.c **** { -2315:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_RESET); -2316:Src/main.c **** } -2317:Src/main.c **** -2318:Src/main.c **** if ((Curr_setup->TS1_EN)&&(Curr_setup->TEC1_EN)) -2319:Src/main.c **** { -2320:Src/main.c **** Set_LTEC(3,32767); -2321:Src/main.c **** Set_LTEC(3,32767); -2322:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_SET); -2323:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_SET); -2324:Src/main.c **** } -2325:Src/main.c **** else -2326:Src/main.c **** { -2327:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_RESET); -2328:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); -2329:Src/main.c **** } -2330:Src/main.c **** -2331:Src/main.c **** if ((Curr_setup->TS2_EN)&&(Curr_setup->TEC2_EN)) -2332:Src/main.c **** { -2333:Src/main.c **** Set_LTEC(4,32767); -2334:Src/main.c **** Set_LTEC(4,32767); -2335:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_SET); -2336:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_SET); -2337:Src/main.c **** } -2338:Src/main.c **** else +2300:Src/main.c **** LL_DMA_ConfigAddresses(DMA2, LL_DMA_STREAM_7, (uint32_t)&UART_DATA, LL_USART_DMA_GetRegAddr(USART +2301:Src/main.c **** +2302:Src/main.c **** //HAL_UART_Receive_IT(&huart1, &uart_buf, 1); +2303:Src/main.c **** +2304:Src/main.c **** +2305:Src/main.c **** SD_SEEK = 0; +2306:Src/main.c **** SD_SLIDE = 0; +2307:Src/main.c **** //Reset all periphery +2308:Src/main.c **** HAL_GPIO_WritePin(EN_5V1_GPIO_Port, EN_5V1_Pin, GPIO_PIN_RESET); +2309:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_RESET); +2310:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_RESET); +2311:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_RESET); +2312:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_RESET); +2313:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_RESET); +2314:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_RESET); +2315:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_RESET); +2316:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); +2317:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); +2318:Src/main.c **** // for (uint16_t i = 0; i < SD_Length; i++) +2319:Src/main.c **** // { +2320:Src/main.c **** // for (uint16_t j = 0; j < DL_16; j++) +2321:Src/main.c **** // { +2322:Src/main.c **** // SD_matr[i][j] = 0; +2323:Src/main.c **** // } +2324:Src/main.c **** // } +2325:Src/main.c **** //LL_SPI_Enable(SPI4);//Enable SPI for MPhD1 ADC +2326:Src/main.c **** //LL_SPI_Enable(SPI5);//Enable SPI for MPhD2 ADC +2327:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_SET);//Enable SPI for MPhD1 ADC +2328:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET);//Enable SPI for MPhD2 ADC +2329:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); +2330:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); +2331:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET);//End operation with LDAC1 +2332:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 +2333:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 +2334:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 +2335:Src/main.c **** +2336:Src/main.c **** //------------------------------------------------------------------------------------------------ +2337:Src/main.c **** //test = 11; +2338:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET)//if exist sd && disconne 2339:Src/main.c **** { -2340:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_RESET); -2341:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); -2342:Src/main.c **** } -2343:Src/main.c **** -2344:Src/main.c **** if (Curr_setup->PI1_RD==0) -2345:Src/main.c **** { -2346:Src/main.c **** LD1_curr_setup->P_coef_temp = 10; -2347:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; -2348:Src/main.c **** } -2349:Src/main.c **** -2350:Src/main.c **** if (Curr_setup->PI2_RD==0) -2351:Src/main.c **** { -2352:Src/main.c **** LD2_curr_setup->P_coef_temp = 10; -2353:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; -2354:Src/main.c **** } -2355:Src/main.c **** } -2356:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 89 +2340:Src/main.c **** //test = 14; +2341:Src/main.c **** if (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin)==GPIO_PIN_RESET) +2342:Src/main.c **** { +2343:Src/main.c **** //test = 15; +2344:Src/main.c **** test = Mount_SD("/"); +2345:Src/main.c **** if (test == 0) //0 - suc +2346:Src/main.c **** { +2347:Src/main.c **** //Format_SD(); +2348:Src/main.c **** test = Seek_Read_File ("COMMAND.TXT", (uint8_t *)COMMAND, DL_8, DL_8);//Read next DL_8 bytes +2349:Src/main.c **** test = Unmount_SD("/"); // 0 - succ +2350:Src/main.c **** UART_rec_incr = 0; +2351:Src/main.c **** flg_tmt = 0;//Reset the timeout flag +2352:Src/main.c **** } +2353:Src/main.c **** // else +2354:Src/main.c **** // { +2355:Src/main.c **** // test = 13; +2356:Src/main.c **** // } + ARM GAS /tmp/ccEQxcUB.s page 89 -2357:Src/main.c **** static void Decode_task(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ -2358:Src/main.c **** { - 253 .loc 1 2358 1 is_stmt 1 view -0 +2357:Src/main.c **** CPU_state = DECODE_ENABLE;//Decoding data with last saved settings +2358:Src/main.c **** } +2359:Src/main.c **** // else +2360:Src/main.c **** // { +2361:Src/main.c **** // test = 16; +2362:Src/main.c **** // } +2363:Src/main.c **** } +2364:Src/main.c **** // else +2365:Src/main.c **** // { +2366:Src/main.c **** // test = 12; +2367:Src/main.c **** // } +2368:Src/main.c **** +2369:Src/main.c **** AD9102_Init(); +2370:Src/main.c **** } +2371:Src/main.c **** static void Decode_uart(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ +2372:Src/main.c **** { +2373:Src/main.c **** // uint8_t *temp1; +2374:Src/main.c **** uint16_t *temp2; +2375:Src/main.c **** +2376:Src/main.c **** //------------------------------------------------------------------------------------------------ +2377:Src/main.c **** +2378:Src/main.c **** +2379:Src/main.c **** test=0; +2380:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& +2381:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u +2382:Src/main.c **** { +2383:Src/main.c **** test = Mount_SD("/"); +2384:Src/main.c **** if (test == 0) //0 - suc +2385:Src/main.c **** { +2386:Src/main.c **** //Format_SD(); +2387:Src/main.c **** test = Remove_File ("COMMAND.TXT"); +2388:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ +2389:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); +2390:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); +2391:Src/main.c **** test = Unmount_SD("/"); // 0 - succ +2392:Src/main.c **** } +2393:Src/main.c **** } +2394:Src/main.c **** +2395:Src/main.c **** temp2 = (uint16_t *)Command; +2396:Src/main.c **** Curr_setup->WORK_EN = ((uint8_t)((*temp2)>>0))&0x01; +2397:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; +2398:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; +2399:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; +2400:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; +2401:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; +2402:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; +2403:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; +2404:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; +2405:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; +2406:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; +2407:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; +2408:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; +2409:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; +2410:Src/main.c **** +2411:Src/main.c **** temp2++; +2412:Src/main.c **** LD1_curr_setup->LD_TEMP = (uint16_t)(*temp2); +2413:Src/main.c **** temp2++; + ARM GAS /tmp/ccEQxcUB.s page 90 + + +2414:Src/main.c **** LD2_curr_setup->LD_TEMP = (uint16_t)(*temp2); +2415:Src/main.c **** temp2++; +2416:Src/main.c **** temp2++; +2417:Src/main.c **** temp2++; +2418:Src/main.c **** Curr_setup->AVERAGES = (uint16_t)(*temp2); +2419:Src/main.c **** temp2++; +2420:Src/main.c **** LD1_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint +2421:Src/main.c **** temp2++; +2422:Src/main.c **** LD1_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint +2423:Src/main.c **** temp2++; +2424:Src/main.c **** LD2_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint +2425:Src/main.c **** temp2++; +2426:Src/main.c **** LD2_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint +2427:Src/main.c **** temp2++; +2428:Src/main.c **** Long_Data[13] = (uint16_t)(*temp2);//Message ID +2429:Src/main.c **** temp2++; +2430:Src/main.c **** LD1_curr_setup->CURRENT = (uint16_t)(*temp2); +2431:Src/main.c **** temp2++; +2432:Src/main.c **** LD2_curr_setup->CURRENT = (uint16_t)(*temp2); +2433:Src/main.c **** temp2++; +2434:Src/main.c **** +2435:Src/main.c **** if (Curr_setup->U5V1_EN) +2436:Src/main.c **** { +2437:Src/main.c **** HAL_GPIO_WritePin(EN_5V1_GPIO_Port, EN_5V1_Pin, GPIO_PIN_SET); +2438:Src/main.c **** } +2439:Src/main.c **** else +2440:Src/main.c **** { +2441:Src/main.c **** HAL_GPIO_WritePin(EN_5V1_GPIO_Port, EN_5V1_Pin, GPIO_PIN_RESET); +2442:Src/main.c **** } +2443:Src/main.c **** +2444:Src/main.c **** if (Curr_setup->U5V2_EN) +2445:Src/main.c **** { +2446:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_SET); +2447:Src/main.c **** } +2448:Src/main.c **** else +2449:Src/main.c **** { +2450:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_RESET); +2451:Src/main.c **** } +2452:Src/main.c **** +2453:Src/main.c **** if (Curr_setup->LD1_EN) +2454:Src/main.c **** { +2455:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_SET); +2456:Src/main.c **** //LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC +2457:Src/main.c **** } +2458:Src/main.c **** else +2459:Src/main.c **** { +2460:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_RESET); +2461:Src/main.c **** //LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC +2462:Src/main.c **** } +2463:Src/main.c **** +2464:Src/main.c **** if (Curr_setup->LD2_EN) +2465:Src/main.c **** { +2466:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_SET); +2467:Src/main.c **** //LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC +2468:Src/main.c **** } +2469:Src/main.c **** else +2470:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 91 + + +2471:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_RESET); +2472:Src/main.c **** //LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC +2473:Src/main.c **** } +2474:Src/main.c **** +2475:Src/main.c **** if (Curr_setup->REF1_EN) +2476:Src/main.c **** { +2477:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_SET); +2478:Src/main.c **** } +2479:Src/main.c **** else +2480:Src/main.c **** { +2481:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_RESET); +2482:Src/main.c **** } +2483:Src/main.c **** +2484:Src/main.c **** if (Curr_setup->REF2_EN) +2485:Src/main.c **** { +2486:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_SET); +2487:Src/main.c **** } +2488:Src/main.c **** else +2489:Src/main.c **** { +2490:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_RESET); +2491:Src/main.c **** } +2492:Src/main.c **** +2493:Src/main.c **** if ((Curr_setup->TS1_EN)&&(Curr_setup->TEC1_EN)) +2494:Src/main.c **** { +2495:Src/main.c **** Set_LTEC(3,32767); +2496:Src/main.c **** Set_LTEC(3,32767); +2497:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_SET); +2498:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_SET); +2499:Src/main.c **** } +2500:Src/main.c **** else +2501:Src/main.c **** { +2502:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_RESET); +2503:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); +2504:Src/main.c **** } +2505:Src/main.c **** +2506:Src/main.c **** if ((Curr_setup->TS2_EN)&&(Curr_setup->TEC2_EN)) +2507:Src/main.c **** { +2508:Src/main.c **** Set_LTEC(4,32767); +2509:Src/main.c **** Set_LTEC(4,32767); +2510:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_SET); +2511:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_SET); +2512:Src/main.c **** } +2513:Src/main.c **** else +2514:Src/main.c **** { +2515:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_RESET); +2516:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); +2517:Src/main.c **** } +2518:Src/main.c **** +2519:Src/main.c **** if (Curr_setup->PI1_RD==0) +2520:Src/main.c **** { +2521:Src/main.c **** LD1_curr_setup->P_coef_temp = 10; +2522:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; +2523:Src/main.c **** } +2524:Src/main.c **** +2525:Src/main.c **** if (Curr_setup->PI2_RD==0) +2526:Src/main.c **** { +2527:Src/main.c **** LD2_curr_setup->P_coef_temp = 10; + ARM GAS /tmp/ccEQxcUB.s page 92 + + +2528:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; +2529:Src/main.c **** } +2530:Src/main.c **** } +2531:Src/main.c **** +2532:Src/main.c **** static void Decode_task(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ +2533:Src/main.c **** { + 253 .loc 1 2533 1 is_stmt 1 view -0 254 .cfi_startproc 255 @ args = 0, pretend = 0, frame = 8 256 @ frame_needed = 0, uses_anonymous_args = 0 257 @ link register save eliminated. - 258 .loc 1 2358 1 is_stmt 0 view .LVU66 + 258 .loc 1 2533 1 is_stmt 0 view .LVU66 259 0000 82B0 sub sp, sp, #8 260 .LCFI4: 261 .cfi_def_cfa_offset 8 -2359:Src/main.c **** uint16_t *temp2; - 262 .loc 1 2359 2 is_stmt 1 view .LVU67 -2360:Src/main.c **** -2361:Src/main.c **** temp2 = (uint16_t *)Command; - 263 .loc 1 2361 2 view .LVU68 +2534:Src/main.c **** uint16_t *temp2; + 262 .loc 1 2534 2 is_stmt 1 view .LVU67 +2535:Src/main.c **** +2536:Src/main.c **** temp2 = (uint16_t *)Command; + 263 .loc 1 2536 2 view .LVU68 264 .LVL15: -2362:Src/main.c **** Curr_setup->WORK_EN = ((uint8_t)((*temp2)>>0))&0x01; - 265 .loc 1 2362 2 view .LVU69 - 266 .loc 1 2362 36 is_stmt 0 view .LVU70 +2537:Src/main.c **** Curr_setup->WORK_EN = ((uint8_t)((*temp2)>>0))&0x01; + 265 .loc 1 2537 2 view .LVU69 + 266 .loc 1 2537 36 is_stmt 0 view .LVU70 267 0002 0288 ldrh r2, [r0] 268 .LVL16: - 269 .loc 1 2362 48 view .LVU71 + 269 .loc 1 2537 48 view .LVU71 270 0004 02F00102 and r2, r2, #1 - 271 .loc 1 2362 22 view .LVU72 + 271 .loc 1 2537 22 view .LVU72 272 0008 1A70 strb r2, [r3] -2363:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; - 273 .loc 1 2363 2 is_stmt 1 view .LVU73 - 274 .loc 1 2363 36 is_stmt 0 view .LVU74 +2538:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; + 273 .loc 1 2538 2 is_stmt 1 view .LVU73 + 274 .loc 1 2538 36 is_stmt 0 view .LVU74 275 000a 0288 ldrh r2, [r0] - 276 .loc 1 2363 48 view .LVU75 + 276 .loc 1 2538 48 view .LVU75 277 000c C2F34002 ubfx r2, r2, #1, #1 - 278 .loc 1 2363 22 view .LVU76 + 278 .loc 1 2538 22 view .LVU76 279 0010 5A70 strb r2, [r3, #1] -2364:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; - 280 .loc 1 2364 2 is_stmt 1 view .LVU77 - 281 .loc 1 2364 36 is_stmt 0 view .LVU78 +2539:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; + 280 .loc 1 2539 2 is_stmt 1 view .LVU77 + 281 .loc 1 2539 36 is_stmt 0 view .LVU78 282 0012 0288 ldrh r2, [r0] - 283 .loc 1 2364 48 view .LVU79 + 283 .loc 1 2539 48 view .LVU79 284 0014 C2F38002 ubfx r2, r2, #2, #1 - 285 .loc 1 2364 22 view .LVU80 + 285 .loc 1 2539 22 view .LVU80 286 0018 9A70 strb r2, [r3, #2] -2365:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; - 287 .loc 1 2365 2 is_stmt 1 view .LVU81 - 288 .loc 1 2365 35 is_stmt 0 view .LVU82 +2540:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; + 287 .loc 1 2540 2 is_stmt 1 view .LVU81 + 288 .loc 1 2540 35 is_stmt 0 view .LVU82 289 001a 0288 ldrh r2, [r0] - 290 .loc 1 2365 47 view .LVU83 + 290 .loc 1 2540 47 view .LVU83 291 001c C2F3C002 ubfx r2, r2, #3, #1 - 292 .loc 1 2365 21 view .LVU84 + 292 .loc 1 2540 21 view .LVU84 293 0020 DA70 strb r2, [r3, #3] -2366:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; - 294 .loc 1 2366 2 is_stmt 1 view .LVU85 - 295 .loc 1 2366 35 is_stmt 0 view .LVU86 +2541:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; + 294 .loc 1 2541 2 is_stmt 1 view .LVU85 + 295 .loc 1 2541 35 is_stmt 0 view .LVU86 + ARM GAS /tmp/ccEQxcUB.s page 93 + + 296 0022 0288 ldrh r2, [r0] - 297 .loc 1 2366 47 view .LVU87 + 297 .loc 1 2541 47 view .LVU87 298 0024 C2F30012 ubfx r2, r2, #4, #1 - 299 .loc 1 2366 21 view .LVU88 - ARM GAS /tmp/ccwR4KB7.s page 90 - - + 299 .loc 1 2541 21 view .LVU88 300 0028 1A71 strb r2, [r3, #4] -2367:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; - 301 .loc 1 2367 2 is_stmt 1 view .LVU89 - 302 .loc 1 2367 36 is_stmt 0 view .LVU90 +2542:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; + 301 .loc 1 2542 2 is_stmt 1 view .LVU89 + 302 .loc 1 2542 36 is_stmt 0 view .LVU90 303 002a 0288 ldrh r2, [r0] - 304 .loc 1 2367 48 view .LVU91 + 304 .loc 1 2542 48 view .LVU91 305 002c C2F34012 ubfx r2, r2, #5, #1 - 306 .loc 1 2367 22 view .LVU92 + 306 .loc 1 2542 22 view .LVU92 307 0030 5A71 strb r2, [r3, #5] -2368:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; - 308 .loc 1 2368 2 is_stmt 1 view .LVU93 - 309 .loc 1 2368 36 is_stmt 0 view .LVU94 +2543:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; + 308 .loc 1 2543 2 is_stmt 1 view .LVU93 + 309 .loc 1 2543 36 is_stmt 0 view .LVU94 310 0032 0288 ldrh r2, [r0] - 311 .loc 1 2368 48 view .LVU95 + 311 .loc 1 2543 48 view .LVU95 312 0034 C2F38012 ubfx r2, r2, #6, #1 - 313 .loc 1 2368 22 view .LVU96 + 313 .loc 1 2543 22 view .LVU96 314 0038 9A71 strb r2, [r3, #6] -2369:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; - 315 .loc 1 2369 2 is_stmt 1 view .LVU97 - 316 .loc 1 2369 36 is_stmt 0 view .LVU98 +2544:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; + 315 .loc 1 2544 2 is_stmt 1 view .LVU97 + 316 .loc 1 2544 36 is_stmt 0 view .LVU98 317 003a 0288 ldrh r2, [r0] - 318 .loc 1 2369 48 view .LVU99 + 318 .loc 1 2544 48 view .LVU99 319 003c C2F3C012 ubfx r2, r2, #7, #1 - 320 .loc 1 2369 22 view .LVU100 + 320 .loc 1 2544 22 view .LVU100 321 0040 DA71 strb r2, [r3, #7] -2370:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; - 322 .loc 1 2370 2 is_stmt 1 view .LVU101 - 323 .loc 1 2370 36 is_stmt 0 view .LVU102 +2545:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; + 322 .loc 1 2545 2 is_stmt 1 view .LVU101 + 323 .loc 1 2545 36 is_stmt 0 view .LVU102 324 0042 0288 ldrh r2, [r0] - 325 .loc 1 2370 48 view .LVU103 + 325 .loc 1 2545 48 view .LVU103 326 0044 C2F30022 ubfx r2, r2, #8, #1 - 327 .loc 1 2370 22 view .LVU104 + 327 .loc 1 2545 22 view .LVU104 328 0048 1A72 strb r2, [r3, #8] -2371:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; - 329 .loc 1 2371 2 is_stmt 1 view .LVU105 - 330 .loc 1 2371 35 is_stmt 0 view .LVU106 +2546:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; + 329 .loc 1 2546 2 is_stmt 1 view .LVU105 + 330 .loc 1 2546 35 is_stmt 0 view .LVU106 331 004a 0288 ldrh r2, [r0] - 332 .loc 1 2371 47 view .LVU107 + 332 .loc 1 2546 47 view .LVU107 333 004c C2F34022 ubfx r2, r2, #9, #1 - 334 .loc 1 2371 21 view .LVU108 + 334 .loc 1 2546 21 view .LVU108 335 0050 5A72 strb r2, [r3, #9] -2372:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; - 336 .loc 1 2372 2 is_stmt 1 view .LVU109 - 337 .loc 1 2372 35 is_stmt 0 view .LVU110 +2547:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; + 336 .loc 1 2547 2 is_stmt 1 view .LVU109 + 337 .loc 1 2547 35 is_stmt 0 view .LVU110 338 0052 0288 ldrh r2, [r0] - 339 .loc 1 2372 48 view .LVU111 + 339 .loc 1 2547 48 view .LVU111 340 0054 C2F38022 ubfx r2, r2, #10, #1 - 341 .loc 1 2372 21 view .LVU112 + 341 .loc 1 2547 21 view .LVU112 342 0058 9A72 strb r2, [r3, #10] -2373:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; - 343 .loc 1 2373 2 is_stmt 1 view .LVU113 - 344 .loc 1 2373 34 is_stmt 0 view .LVU114 +2548:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; + 343 .loc 1 2548 2 is_stmt 1 view .LVU113 + 344 .loc 1 2548 34 is_stmt 0 view .LVU114 345 005a 0288 ldrh r2, [r0] - 346 .loc 1 2373 47 view .LVU115 + ARM GAS /tmp/ccEQxcUB.s page 94 + + + 346 .loc 1 2548 47 view .LVU115 347 005c C2F3C022 ubfx r2, r2, #11, #1 - 348 .loc 1 2373 20 view .LVU116 + 348 .loc 1 2548 20 view .LVU116 349 0060 DA72 strb r2, [r3, #11] - ARM GAS /tmp/ccwR4KB7.s page 91 - - -2374:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; - 350 .loc 1 2374 2 is_stmt 1 view .LVU117 - 351 .loc 1 2374 35 is_stmt 0 view .LVU118 +2549:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; + 350 .loc 1 2549 2 is_stmt 1 view .LVU117 + 351 .loc 1 2549 35 is_stmt 0 view .LVU118 352 0062 0288 ldrh r2, [r0] - 353 .loc 1 2374 48 view .LVU119 + 353 .loc 1 2549 48 view .LVU119 354 0064 C2F30032 ubfx r2, r2, #12, #1 - 355 .loc 1 2374 21 view .LVU120 + 355 .loc 1 2549 21 view .LVU120 356 0068 1A73 strb r2, [r3, #12] -2375:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; - 357 .loc 1 2375 2 is_stmt 1 view .LVU121 - 358 .loc 1 2375 35 is_stmt 0 view .LVU122 +2550:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; + 357 .loc 1 2550 2 is_stmt 1 view .LVU121 + 358 .loc 1 2550 35 is_stmt 0 view .LVU122 359 006a 0288 ldrh r2, [r0] - 360 .loc 1 2375 48 view .LVU123 + 360 .loc 1 2550 48 view .LVU123 361 006c C2F34032 ubfx r2, r2, #13, #1 - 362 .loc 1 2375 21 view .LVU124 + 362 .loc 1 2550 21 view .LVU124 363 0070 5A73 strb r2, [r3, #13] -2376:Src/main.c **** -2377:Src/main.c **** temp2++; - 364 .loc 1 2377 2 is_stmt 1 view .LVU125 +2551:Src/main.c **** +2552:Src/main.c **** temp2++; + 364 .loc 1 2552 2 is_stmt 1 view .LVU125 365 .LVL17: -2378:Src/main.c **** task.task_type = (uint8_t)(*temp2); temp2++; - 366 .loc 1 2378 2 view .LVU126 - 367 .loc 1 2378 21 is_stmt 0 view .LVU127 +2553:Src/main.c **** task.task_type = (uint8_t)(*temp2); temp2++; + 366 .loc 1 2553 2 view .LVU126 + 367 .loc 1 2553 21 is_stmt 0 view .LVU127 368 0072 8278 ldrb r2, [r0, #2] @ zero_extendqisi2 - 369 .loc 1 2378 19 view .LVU128 + 369 .loc 1 2553 19 view .LVU128 370 0074 384B ldr r3, .L14+8 371 .LVL18: - 372 .loc 1 2378 19 view .LVU129 + 372 .loc 1 2553 19 view .LVU129 373 0076 1A70 strb r2, [r3] - 374 .loc 1 2378 40 is_stmt 1 view .LVU130 + 374 .loc 1 2553 40 is_stmt 1 view .LVU130 375 .LVL19: -2379:Src/main.c **** task.min_param = (float)(*temp2); temp2++; - 376 .loc 1 2379 2 view .LVU131 - 377 .loc 1 2379 29 is_stmt 0 view .LVU132 +2554:Src/main.c **** task.min_param = (float)(*temp2); temp2++; + 376 .loc 1 2554 2 view .LVU131 + 377 .loc 1 2554 29 is_stmt 0 view .LVU132 378 0078 8288 ldrh r2, [r0, #4] 379 007a 07EE902A vmov s15, r2 @ int - 380 .loc 1 2379 21 view .LVU133 + 380 .loc 1 2554 21 view .LVU133 381 007e F8EE677A vcvt.f32.u32 s15, s15 - 382 .loc 1 2379 19 view .LVU134 + 382 .loc 1 2554 19 view .LVU134 383 0082 C3ED017A vstr.32 s15, [r3, #4] - 384 .loc 1 2379 38 is_stmt 1 view .LVU135 + 384 .loc 1 2554 38 is_stmt 1 view .LVU135 385 .LVL20: -2380:Src/main.c **** task.max_param = (float)(*temp2); temp2++; - 386 .loc 1 2380 2 view .LVU136 - 387 .loc 1 2380 29 is_stmt 0 view .LVU137 +2555:Src/main.c **** task.max_param = (float)(*temp2); temp2++; + 386 .loc 1 2555 2 view .LVU136 + 387 .loc 1 2555 29 is_stmt 0 view .LVU137 388 0086 C288 ldrh r2, [r0, #6] 389 0088 07EE902A vmov s15, r2 @ int - 390 .loc 1 2380 21 view .LVU138 + 390 .loc 1 2555 21 view .LVU138 391 008c F8EE677A vcvt.f32.u32 s15, s15 - 392 .loc 1 2380 19 view .LVU139 + 392 .loc 1 2555 19 view .LVU139 393 0090 C3ED027A vstr.32 s15, [r3, #8] - 394 .loc 1 2380 38 is_stmt 1 view .LVU140 + 394 .loc 1 2555 38 is_stmt 1 view .LVU140 395 .LVL21: -2381:Src/main.c **** task.delta_param = (float)(*temp2); temp2++; - 396 .loc 1 2381 2 view .LVU141 - 397 .loc 1 2381 29 is_stmt 0 view .LVU142 + ARM GAS /tmp/ccEQxcUB.s page 95 + + +2556:Src/main.c **** task.delta_param = (float)(*temp2); temp2++; + 396 .loc 1 2556 2 view .LVU141 + 397 .loc 1 2556 29 is_stmt 0 view .LVU142 398 0094 0289 ldrh r2, [r0, #8] - ARM GAS /tmp/ccwR4KB7.s page 92 - - 399 0096 07EE902A vmov s15, r2 @ int - 400 .loc 1 2381 21 view .LVU143 + 400 .loc 1 2556 21 view .LVU143 401 009a F8EE677A vcvt.f32.u32 s15, s15 - 402 .loc 1 2381 19 view .LVU144 + 402 .loc 1 2556 19 view .LVU144 403 009e C3ED037A vstr.32 s15, [r3, #12] - 404 .loc 1 2381 38 is_stmt 1 view .LVU145 + 404 .loc 1 2556 38 is_stmt 1 view .LVU145 405 .LVL22: -2382:Src/main.c **** task.dt = (float)(*temp2) / 100.0; temp2++; - 406 .loc 1 2382 2 view .LVU146 - 407 .loc 1 2382 29 is_stmt 0 view .LVU147 +2557:Src/main.c **** task.dt = (float)(*temp2) / 100.0; temp2++; + 406 .loc 1 2557 2 view .LVU146 + 407 .loc 1 2557 29 is_stmt 0 view .LVU147 408 00a2 4289 ldrh r2, [r0, #10] 409 00a4 07EE102A vmov s14, r2 @ int - 410 .loc 1 2382 21 view .LVU148 + 410 .loc 1 2557 21 view .LVU148 411 00a8 B8EE477B vcvt.f64.u32 d7, s14 - 412 .loc 1 2382 37 view .LVU149 + 412 .loc 1 2557 37 view .LVU149 413 00ac 9FED285B vldr.64 d5, .L14 414 00b0 87EE056B vdiv.f64 d6, d7, d5 - 415 .loc 1 2382 19 view .LVU150 + 415 .loc 1 2557 19 view .LVU150 416 00b4 FCEEC67B vcvt.u32.f64 s15, d6 417 00b8 CDED017A vstr.32 s15, [sp, #4] @ int 418 00bc 9DF80420 ldrb r2, [sp, #4] @ zero_extendqisi2 419 00c0 1A75 strb r2, [r3, #20] - 420 .loc 1 2382 46 is_stmt 1 view .LVU151 + 420 .loc 1 2557 46 is_stmt 1 view .LVU151 421 .LVL23: -2383:Src/main.c **** task.sec_param = (float)(*temp2); temp2++; - 422 .loc 1 2383 2 view .LVU152 - 423 .loc 1 2383 29 is_stmt 0 view .LVU153 +2558:Src/main.c **** task.sec_param = (float)(*temp2); temp2++; + 422 .loc 1 2558 2 view .LVU152 + 423 .loc 1 2558 29 is_stmt 0 view .LVU153 424 00c2 8189 ldrh r1, [r0, #12] 425 .LVL24: - 426 .loc 1 2383 29 view .LVU154 + 426 .loc 1 2558 29 view .LVU154 427 00c4 07EE901A vmov s15, r1 @ int - 428 .loc 1 2383 21 view .LVU155 + 428 .loc 1 2558 21 view .LVU155 429 00c8 F8EE677A vcvt.f32.u32 s15, s15 - 430 .loc 1 2383 19 view .LVU156 + 430 .loc 1 2558 19 view .LVU156 431 00cc C3ED067A vstr.32 s15, [r3, #24] - 432 .loc 1 2383 38 is_stmt 1 view .LVU157 + 432 .loc 1 2558 38 is_stmt 1 view .LVU157 433 .LVL25: -2384:Src/main.c **** task.curr = (float)(*temp2); temp2++; - 434 .loc 1 2384 2 view .LVU158 - 435 .loc 1 2384 29 is_stmt 0 view .LVU159 +2559:Src/main.c **** task.curr = (float)(*temp2); temp2++; + 434 .loc 1 2559 2 view .LVU158 + 435 .loc 1 2559 29 is_stmt 0 view .LVU159 436 00d0 C189 ldrh r1, [r0, #14] 437 00d2 07EE901A vmov s15, r1 @ int - 438 .loc 1 2384 21 view .LVU160 + 438 .loc 1 2559 21 view .LVU160 439 00d6 F8EE677A vcvt.f32.u32 s15, s15 - 440 .loc 1 2384 19 view .LVU161 + 440 .loc 1 2559 19 view .LVU161 441 00da C3ED077A vstr.32 s15, [r3, #28] - 442 .loc 1 2384 38 is_stmt 1 view .LVU162 + 442 .loc 1 2559 38 is_stmt 1 view .LVU162 443 .LVL26: -2385:Src/main.c **** task.temp = (float)(*temp2); temp2++; - 444 .loc 1 2385 2 view .LVU163 - 445 .loc 1 2385 29 is_stmt 0 view .LVU164 +2560:Src/main.c **** task.temp = (float)(*temp2); temp2++; + 444 .loc 1 2560 2 view .LVU163 + 445 .loc 1 2560 29 is_stmt 0 view .LVU164 446 00de 018A ldrh r1, [r0, #16] 447 00e0 07EE901A vmov s15, r1 @ int - 448 .loc 1 2385 21 view .LVU165 + ARM GAS /tmp/ccEQxcUB.s page 96 + + + 448 .loc 1 2560 21 view .LVU165 449 00e4 F8EE677A vcvt.f32.u32 s15, s15 - 450 .loc 1 2385 19 view .LVU166 + 450 .loc 1 2560 19 view .LVU166 451 00e8 C3ED087A vstr.32 s15, [r3, #32] - ARM GAS /tmp/ccwR4KB7.s page 93 - - - 452 .loc 1 2385 38 is_stmt 1 view .LVU167 + 452 .loc 1 2560 38 is_stmt 1 view .LVU167 453 .LVL27: -2386:Src/main.c **** task.tau = (float)(*temp2); temp2++; - 454 .loc 1 2386 2 view .LVU168 - 455 .loc 1 2386 29 is_stmt 0 view .LVU169 +2561:Src/main.c **** task.tau = (float)(*temp2); temp2++; + 454 .loc 1 2561 2 view .LVU168 + 455 .loc 1 2561 29 is_stmt 0 view .LVU169 456 00ec 418A ldrh r1, [r0, #18] - 457 .loc 1 2386 19 view .LVU170 + 457 .loc 1 2561 19 view .LVU170 458 00ee D982 strh r1, [r3, #22] @ movhi - 459 .loc 1 2386 38 is_stmt 1 view .LVU171 + 459 .loc 1 2561 38 is_stmt 1 view .LVU171 460 .LVL28: -2387:Src/main.c **** task.p_coef_1 = (float)(*temp2) * 256.0; temp2++; - 461 .loc 1 2387 2 view .LVU172 - 462 .loc 1 2387 29 is_stmt 0 view .LVU173 +2562:Src/main.c **** task.p_coef_1 = (float)(*temp2) * 256.0; temp2++; + 461 .loc 1 2562 2 view .LVU172 + 462 .loc 1 2562 29 is_stmt 0 view .LVU173 463 00f0 818A ldrh r1, [r0, #20] 464 00f2 07EE901A vmov s15, r1 @ int - 465 .loc 1 2387 21 view .LVU174 + 465 .loc 1 2562 21 view .LVU174 466 00f6 F8EE677A vcvt.f32.u32 s15, s15 - 467 .loc 1 2387 37 view .LVU175 + 467 .loc 1 2562 37 view .LVU175 468 00fa 9FED187A vldr.32 s14, .L14+12 469 00fe 67EE877A vmul.f32 s15, s15, s14 - 470 .loc 1 2387 19 view .LVU176 + 470 .loc 1 2562 19 view .LVU176 471 0102 C3ED0A7A vstr.32 s15, [r3, #40] - 472 .loc 1 2387 46 is_stmt 1 view .LVU177 + 472 .loc 1 2562 46 is_stmt 1 view .LVU177 473 .LVL29: -2388:Src/main.c **** task.i_coef_1 = (float)(*temp2) * 256.0; temp2++; - 474 .loc 1 2388 2 view .LVU178 - 475 .loc 1 2388 29 is_stmt 0 view .LVU179 +2563:Src/main.c **** task.i_coef_1 = (float)(*temp2) * 256.0; temp2++; + 474 .loc 1 2563 2 view .LVU178 + 475 .loc 1 2563 29 is_stmt 0 view .LVU179 476 0106 C18A ldrh r1, [r0, #22] 477 0108 07EE901A vmov s15, r1 @ int - 478 .loc 1 2388 21 view .LVU180 + 478 .loc 1 2563 21 view .LVU180 479 010c F8EE677A vcvt.f32.u32 s15, s15 - 480 .loc 1 2388 37 view .LVU181 + 480 .loc 1 2563 37 view .LVU181 481 0110 67EE877A vmul.f32 s15, s15, s14 - 482 .loc 1 2388 19 view .LVU182 + 482 .loc 1 2563 19 view .LVU182 483 0114 C3ED097A vstr.32 s15, [r3, #36] - 484 .loc 1 2388 46 is_stmt 1 view .LVU183 + 484 .loc 1 2563 46 is_stmt 1 view .LVU183 485 .LVL30: -2389:Src/main.c **** task.p_coef_2 = (float)(*temp2) * 256.0; temp2++; - 486 .loc 1 2389 2 view .LVU184 - 487 .loc 1 2389 29 is_stmt 0 view .LVU185 +2564:Src/main.c **** task.p_coef_2 = (float)(*temp2) * 256.0; temp2++; + 486 .loc 1 2564 2 view .LVU184 + 487 .loc 1 2564 29 is_stmt 0 view .LVU185 488 0118 018B ldrh r1, [r0, #24] 489 011a 07EE901A vmov s15, r1 @ int - 490 .loc 1 2389 21 view .LVU186 + 490 .loc 1 2564 21 view .LVU186 491 011e F8EE677A vcvt.f32.u32 s15, s15 - 492 .loc 1 2389 37 view .LVU187 + 492 .loc 1 2564 37 view .LVU187 493 0122 67EE877A vmul.f32 s15, s15, s14 - 494 .loc 1 2389 19 view .LVU188 + 494 .loc 1 2564 19 view .LVU188 495 0126 C3ED0C7A vstr.32 s15, [r3, #48] - 496 .loc 1 2389 46 is_stmt 1 view .LVU189 + 496 .loc 1 2564 46 is_stmt 1 view .LVU189 497 .LVL31: -2390:Src/main.c **** task.i_coef_2 = (float)(*temp2) * 256.0; temp2++; - 498 .loc 1 2390 2 view .LVU190 - 499 .loc 1 2390 29 is_stmt 0 view .LVU191 +2565:Src/main.c **** task.i_coef_2 = (float)(*temp2) * 256.0; temp2++; + 498 .loc 1 2565 2 view .LVU190 + 499 .loc 1 2565 29 is_stmt 0 view .LVU191 + ARM GAS /tmp/ccEQxcUB.s page 97 + + 500 012a 418B ldrh r1, [r0, #26] 501 012c 07EE901A vmov s15, r1 @ int - 502 .loc 1 2390 21 view .LVU192 + 502 .loc 1 2565 21 view .LVU192 503 0130 F8EE677A vcvt.f32.u32 s15, s15 - ARM GAS /tmp/ccwR4KB7.s page 94 - - - 504 .loc 1 2390 37 view .LVU193 + 504 .loc 1 2565 37 view .LVU193 505 0134 67EE877A vmul.f32 s15, s15, s14 - 506 .loc 1 2390 19 view .LVU194 + 506 .loc 1 2565 19 view .LVU194 507 0138 C3ED0B7A vstr.32 s15, [r3, #44] - 508 .loc 1 2390 46 is_stmt 1 view .LVU195 + 508 .loc 1 2565 46 is_stmt 1 view .LVU195 509 .LVL32: -2391:Src/main.c **** -2392:Src/main.c **** TO10_counter = task.dt / 10; - 510 .loc 1 2392 2 view .LVU196 - 511 .loc 1 2392 25 is_stmt 0 view .LVU197 +2566:Src/main.c **** +2567:Src/main.c **** TO10_counter = task.dt / 10; + 510 .loc 1 2567 2 view .LVU196 + 511 .loc 1 2567 25 is_stmt 0 view .LVU197 512 013c 084B ldr r3, .L14+16 513 013e A3FB0232 umull r3, r2, r3, r2 514 0142 D208 lsrs r2, r2, #3 - 515 .loc 1 2392 15 view .LVU198 + 515 .loc 1 2567 15 view .LVU198 516 0144 074B ldr r3, .L14+20 517 0146 1A60 str r2, [r3] -2393:Src/main.c **** } - 518 .loc 1 2393 1 view .LVU199 +2568:Src/main.c **** } + 518 .loc 1 2568 1 view .LVU199 519 0148 02B0 add sp, sp, #8 520 .LCFI5: 521 .cfi_def_cfa_offset 0 @@ -5614,1078 +5798,103 @@ ARM GAS /tmp/ccwR4KB7.s page 1 531 0160 CDCCCCCC .word -858993459 532 0164 00000000 .word TO10_counter 533 .cfi_endproc - 534 .LFE1209: - 536 .section .text.PID_Controller_Temp,"ax",%progbits + 534 .LFE1210: + 536 .section .text.SPI2_SetMode,"ax",%progbits 537 .align 1 538 .syntax unified 539 .thumb 540 .thumb_func - 542 PID_Controller_Temp: + 542 SPI2_SetMode: 543 .LVL33: - 544 .LFB1224: -2394:Src/main.c **** -2395:Src/main.c **** void OUT_trigger(uint8_t out_n) -2396:Src/main.c **** { -2397:Src/main.c **** switch (out_n) -2398:Src/main.c **** { -2399:Src/main.c **** case 0: -2400:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_SET); -2401:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); -2402:Src/main.c **** break; -2403:Src/main.c **** -2404:Src/main.c **** case 1: -2405:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_SET); -2406:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); -2407:Src/main.c **** break; -2408:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 95 + 544 .LFB1213: +2569:Src/main.c **** +2570:Src/main.c **** void OUT_trigger(uint8_t out_n) +2571:Src/main.c **** { +2572:Src/main.c **** switch (out_n) +2573:Src/main.c **** { +2574:Src/main.c **** case 0: +2575:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_SET); +2576:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); +2577:Src/main.c **** break; +2578:Src/main.c **** +2579:Src/main.c **** case 1: + ARM GAS /tmp/ccEQxcUB.s page 98 -2409:Src/main.c **** case 2: -2410:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_SET); -2411:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); -2412:Src/main.c **** break; -2413:Src/main.c **** -2414:Src/main.c **** case 3: -2415:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_SET); -2416:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); -2417:Src/main.c **** break; -2418:Src/main.c **** -2419:Src/main.c **** case 4: -2420:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_SET); -2421:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); -2422:Src/main.c **** break; -2423:Src/main.c **** -2424:Src/main.c **** case 5: -2425:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_SET); -2426:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); -2427:Src/main.c **** break; -2428:Src/main.c **** -2429:Src/main.c **** case 6: -2430:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_SET); -2431:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); -2432:Src/main.c **** break; -2433:Src/main.c **** -2434:Src/main.c **** case 7: -2435:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_SET); -2436:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); -2437:Src/main.c **** break; -2438:Src/main.c **** -2439:Src/main.c **** case 8: -2440:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_SET); -2441:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); -2442:Src/main.c **** break; -2443:Src/main.c **** -2444:Src/main.c **** case 9: -2445:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_SET); -2446:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); -2447:Src/main.c **** break; -2448:Src/main.c **** } -2449:Src/main.c **** } -2450:Src/main.c **** -2451:Src/main.c **** static void AD9102_Init(void) -2452:Src/main.c **** { -2453:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); -2454:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); -2455:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} -2456:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); -2457:Src/main.c **** -2458:Src/main.c **** AD9102_WriteRegTable(ad9102_example4_regval, AD9102_REG_COUNT); -2459:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); -2460:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); -2461:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -2462:Src/main.c **** } -2463:Src/main.c **** -2464:Src/main.c **** static void AD9102_WriteReg(uint16_t addr, uint16_t value) -2465:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 96 - - -2466:Src/main.c **** uint32_t tmp32 = 0; -2467:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address -2468:Src/main.c **** -2469:Src/main.c **** if (!LL_SPI_IsEnabled(SPI2)) -2470:Src/main.c **** { -2471:Src/main.c **** LL_SPI_Enable(SPI2); -2472:Src/main.c **** } -2473:Src/main.c **** -2474:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_RESET); -2475:Src/main.c **** -2476:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} -2477:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); -2478:Src/main.c **** tmp32 = 0; -2479:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} -2480:Src/main.c **** (void) SPI2->DR; -2481:Src/main.c **** -2482:Src/main.c **** tmp32 = 0; -2483:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} -2484:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); -2485:Src/main.c **** tmp32 = 0; -2486:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} -2487:Src/main.c **** (void) SPI2->DR; -2488:Src/main.c **** -2489:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); -2490:Src/main.c **** } -2491:Src/main.c **** -2492:Src/main.c **** static uint16_t AD9102_ReadReg(uint16_t addr) -2493:Src/main.c **** { -2494:Src/main.c **** uint32_t tmp32 = 0; -2495:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) -2496:Src/main.c **** uint16_t value; -2497:Src/main.c **** -2498:Src/main.c **** if (!LL_SPI_IsEnabled(SPI2)) -2499:Src/main.c **** { -2500:Src/main.c **** LL_SPI_Enable(SPI2); -2501:Src/main.c **** } -2502:Src/main.c **** -2503:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_RESET); -2504:Src/main.c **** -2505:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} -2506:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); -2507:Src/main.c **** tmp32 = 0; -2508:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} -2509:Src/main.c **** (void) SPI2->DR; -2510:Src/main.c **** -2511:Src/main.c **** tmp32 = 0; -2512:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} -2513:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); -2514:Src/main.c **** tmp32 = 0; -2515:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} -2516:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); -2517:Src/main.c **** -2518:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); -2519:Src/main.c **** return value; -2520:Src/main.c **** } -2521:Src/main.c **** -2522:Src/main.c **** static void AD9102_WriteRegTable(const uint16_t *values, uint16_t count) - ARM GAS /tmp/ccwR4KB7.s page 97 - - -2523:Src/main.c **** { -2524:Src/main.c **** for (uint16_t i = 0; i < count; i++) -2525:Src/main.c **** { -2526:Src/main.c **** AD9102_WriteReg(ad9102_reg_addr[i], values[i]); -2527:Src/main.c **** } -2528:Src/main.c **** } -2529:Src/main.c **** -2530:Src/main.c **** static uint16_t AD9102_Apply(uint8_t saw_type, uint8_t enable, uint8_t saw_step, uint8_t pat_base, -2531:Src/main.c **** { -2532:Src/main.c **** if (enable) -2533:Src/main.c **** { -2534:Src/main.c **** uint16_t saw_cfg; -2535:Src/main.c **** uint16_t pat_timebase; -2536:Src/main.c **** -2537:Src/main.c **** if (saw_step == 0u) -2538:Src/main.c **** { -2539:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; -2540:Src/main.c **** } -2541:Src/main.c **** if (saw_step > 63u) -2542:Src/main.c **** { -2543:Src/main.c **** saw_step = 63u; -2544:Src/main.c **** } -2545:Src/main.c **** saw_cfg = (uint16_t)(((uint16_t)(saw_step & 0x3Fu) << 2) | -2546:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); -2547:Src/main.c **** pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | -2548:Src/main.c **** ((pat_base & 0x0Fu) << 4) | -2549:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); -2550:Src/main.c **** -2551:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX4_WAV_CONFIG); -2552:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); -2553:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); -2554:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, pat_period); -2555:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat -2556:Src/main.c **** -2557:Src/main.c **** // Update RUN then RAMUPDATE at the end of the write sequence. -2558:Src/main.c **** // AD9102 output is started by a falling edge of TRIGGER pin when RUN=1. -2559:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -2560:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); -2561:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); -2562:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} -2563:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); -2564:Src/main.c **** } -2565:Src/main.c **** else -2566:Src/main.c **** { -2567:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); -2568:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -2569:Src/main.c **** } -2570:Src/main.c **** -2571:Src/main.c **** return AD9102_ReadReg(AD9102_REG_PAT_STATUS); -2572:Src/main.c **** } -2573:Src/main.c **** -2574:Src/main.c **** static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle) -2575:Src/main.c **** { -2576:Src/main.c **** if (samples < 2u) -2577:Src/main.c **** { -2578:Src/main.c **** samples = 2u; -2579:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 98 - - -2580:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) -2581:Src/main.c **** { -2582:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; -2583:Src/main.c **** } -2584:Src/main.c **** -2585:Src/main.c **** // Enable SRAM access. -2586:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0004u); -2587:Src/main.c **** -2588:Src/main.c **** for (uint16_t i = 0; i < samples; i++) -2589:Src/main.c **** { -2590:Src/main.c **** int32_t value; -2591:Src/main.c **** if (triangle) -2592:Src/main.c **** { -2593:Src/main.c **** uint16_t half = samples / 2u; -2594:Src/main.c **** if (half == 0u) -2595:Src/main.c **** { -2596:Src/main.c **** half = 1u; -2597:Src/main.c **** } -2598:Src/main.c **** if (i < half) -2599:Src/main.c **** { -2600:Src/main.c **** uint16_t denom = (half > 1u) ? (uint16_t)(half - 1u) : 1u; -2601:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + -2602:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; -2603:Src/main.c **** } -2604:Src/main.c **** else -2605:Src/main.c **** { -2606:Src/main.c **** uint16_t tail = (uint16_t)(samples - half); -2607:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; -2608:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - -2609:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)(i - half)) / (int32_t)denom; -2610:Src/main.c **** } -2611:Src/main.c **** } -2612:Src/main.c **** else -2613:Src/main.c **** { -2614:Src/main.c **** uint16_t denom = (samples > 1u) ? (uint16_t)(samples - 1u) : 1u; -2615:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + -2616:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; -2617:Src/main.c **** } +2580:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_SET); +2581:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); +2582:Src/main.c **** break; +2583:Src/main.c **** +2584:Src/main.c **** case 2: +2585:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_SET); +2586:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); +2587:Src/main.c **** break; +2588:Src/main.c **** +2589:Src/main.c **** case 3: +2590:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_SET); +2591:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); +2592:Src/main.c **** break; +2593:Src/main.c **** +2594:Src/main.c **** case 4: +2595:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_SET); +2596:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); +2597:Src/main.c **** break; +2598:Src/main.c **** +2599:Src/main.c **** case 5: +2600:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_SET); +2601:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); +2602:Src/main.c **** break; +2603:Src/main.c **** +2604:Src/main.c **** case 6: +2605:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_SET); +2606:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); +2607:Src/main.c **** break; +2608:Src/main.c **** +2609:Src/main.c **** case 7: +2610:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_SET); +2611:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); +2612:Src/main.c **** break; +2613:Src/main.c **** +2614:Src/main.c **** case 8: +2615:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_SET); +2616:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); +2617:Src/main.c **** break; 2618:Src/main.c **** -2619:Src/main.c **** if (value < -8192) -2620:Src/main.c **** { -2621:Src/main.c **** value = -8192; -2622:Src/main.c **** } -2623:Src/main.c **** else if (value > 8191) -2624:Src/main.c **** { -2625:Src/main.c **** value = 8191; -2626:Src/main.c **** } -2627:Src/main.c **** -2628:Src/main.c **** uint16_t sample_u14 = (uint16_t)((int16_t)value) & 0x3FFFu; -2629:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); -2630:Src/main.c **** AD9102_WriteReg((uint16_t)(AD9102_REG_SRAM_DATA_BASE + i), word); -2631:Src/main.c **** } +2619:Src/main.c **** case 9: +2620:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_SET); +2621:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); +2622:Src/main.c **** break; +2623:Src/main.c **** } +2624:Src/main.c **** } +2625:Src/main.c **** +2626:Src/main.c **** static void AD9102_Init(void) +2627:Src/main.c **** { +2628:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +2629:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); +2630:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} +2631:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); 2632:Src/main.c **** -2633:Src/main.c **** // Disable SRAM access. +2633:Src/main.c **** AD9102_WriteRegTable(ad9102_example4_regval, AD9102_REG_COUNT); 2634:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); -2635:Src/main.c **** } -2636:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 99 +2635:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); +2636:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + ARM GAS /tmp/ccEQxcUB.s page 99 -2637:Src/main.c **** static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle) -2638:Src/main.c **** { -2639:Src/main.c **** if (samples == 0u) -2640:Src/main.c **** { -2641:Src/main.c **** samples = AD9102_SRAM_SAMPLES_DEFAULT; -2642:Src/main.c **** } -2643:Src/main.c **** if (samples < 2u) -2644:Src/main.c **** { -2645:Src/main.c **** samples = 2u; -2646:Src/main.c **** } -2647:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) -2648:Src/main.c **** { -2649:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; -2650:Src/main.c **** } -2651:Src/main.c **** if (hold == 0u) -2652:Src/main.c **** { -2653:Src/main.c **** hold = AD9102_SRAM_HOLD_DEFAULT; -2654:Src/main.c **** } -2655:Src/main.c **** if (hold > 0x0Fu) -2656:Src/main.c **** { -2657:Src/main.c **** hold = 0x0Fu; -2658:Src/main.c **** } -2659:Src/main.c **** -2660:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((uint16_t)(hold & 0x0Fu) << 8) | -2661:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | -2662:Src/main.c **** (AD9102_SRAM_START_DELAY_BASE_DEFAULT & 0x0Fu)); -2663:Src/main.c **** uint32_t pat_period = (uint32_t)samples * (uint32_t)(hold & 0x0Fu); -2664:Src/main.c **** if (pat_period == 0u) -2665:Src/main.c **** { -2666:Src/main.c **** pat_period = samples; -2667:Src/main.c **** } -2668:Src/main.c **** if (pat_period > 0xFFFFu) -2669:Src/main.c **** { -2670:Src/main.c **** pat_period = 0xFFFFu; -2671:Src/main.c **** } -2672:Src/main.c **** -2673:Src/main.c **** AD9102_WriteRegTable(ad9102_example2_regval, AD9102_REG_COUNT); -2674:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); -2675:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX2_WAV_CONFIG); -2676:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, AD9102_EX2_SAW_CONFIG); -2677:Src/main.c **** AD9102_WriteReg(AD9102_REG_DAC_PAT, AD9102_EX2_DAC_PAT); -2678:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); -2679:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, (uint16_t)pat_period); -2680:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat -2681:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_DLY, AD9102_SRAM_START_DLY_DEFAULT); -2682:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_ADDR, 0x0000u); -2683:Src/main.c **** AD9102_WriteReg(AD9102_REG_STOP_ADDR, (uint16_t)((samples - 1u) << 4)); -2684:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); -2685:Src/main.c **** -2686:Src/main.c **** AD9102_LoadSramRamp(samples, triangle); -2687:Src/main.c **** -2688:Src/main.c **** if (enable) -2689:Src/main.c **** { -2690:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -2691:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); -2692:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); -2693:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} - ARM GAS /tmp/ccwR4KB7.s page 100 - - -2694:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); -2695:Src/main.c **** } -2696:Src/main.c **** else -2697:Src/main.c **** { -2698:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); -2699:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); -2700:Src/main.c **** } -2701:Src/main.c **** -2702:Src/main.c **** return AD9102_ReadReg(AD9102_REG_PAT_STATUS); -2703:Src/main.c **** } -2704:Src/main.c **** -2705:Src/main.c **** static uint8_t AD9102_CheckFlags(uint16_t pat_status, uint8_t expect_run, uint8_t saw_type, uint8_t -2706:Src/main.c **** { -2707:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); -2708:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); -2709:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); -2710:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); -2711:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | -2712:Src/main.c **** ((pat_base & 0x0Fu) << 4) | -2713:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); -2714:Src/main.c **** -2715:Src/main.c **** if (saw_step == 0u) -2716:Src/main.c **** { -2717:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; -2718:Src/main.c **** } -2719:Src/main.c **** if (saw_step > 63u) -2720:Src/main.c **** { -2721:Src/main.c **** saw_step = 63u; -2722:Src/main.c **** } -2723:Src/main.c **** if (pat_period == 0u) -2724:Src/main.c **** { -2725:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; -2726:Src/main.c **** } -2727:Src/main.c **** uint16_t expect_saw = (uint16_t)(((uint16_t)(saw_step & 0x3Fu) << 2) | -2728:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); -2729:Src/main.c **** -2730:Src/main.c **** uint8_t ok = 1u; -2731:Src/main.c **** -2732:Src/main.c **** // Expect default SPI config: MSB-first, 4-wire, no double SPI, no reset. -2733:Src/main.c **** if (spiconfig != 0x0000u) -2734:Src/main.c **** { -2735:Src/main.c **** ok = 0u; -2736:Src/main.c **** } -2737:Src/main.c **** -2738:Src/main.c **** // Power blocks should not be powered down. -2739:Src/main.c **** if (powercfg & ((1u << 8) | (1u << 7) | (1u << 6) | (1u << 5) | (1u << 3))) -2740:Src/main.c **** { -2741:Src/main.c **** ok = 0u; -2742:Src/main.c **** } -2743:Src/main.c **** -2744:Src/main.c **** // Clock receiver must be enabled (cannot directly detect external clock presence). -2745:Src/main.c **** if (clockcfg & ((1u << 11) | (1u << 7) | (1u << 6) | (1u << 5))) -2746:Src/main.c **** { -2747:Src/main.c **** ok = 0u; -2748:Src/main.c **** } -2749:Src/main.c **** -2750:Src/main.c **** // Any configuration error flags indicate a bad setup. - ARM GAS /tmp/ccwR4KB7.s page 101 - - -2751:Src/main.c **** if (cfg_err & 0x003Fu) -2752:Src/main.c **** { -2753:Src/main.c **** ok = 0u; -2754:Src/main.c **** } -2755:Src/main.c **** -2756:Src/main.c **** if (expect_run && ((pat_status & AD9102_PAT_STATUS_RUN) == 0u)) -2757:Src/main.c **** { -2758:Src/main.c **** ok = 0u; -2759:Src/main.c **** } -2760:Src/main.c **** -2761:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_WAV_CONFIG) != AD9102_EX4_WAV_CONFIG) -2762:Src/main.c **** { -2763:Src/main.c **** ok = 0u; -2764:Src/main.c **** } -2765:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TIMEBASE) != pat_timebase) -2766:Src/main.c **** { -2767:Src/main.c **** ok = 0u; -2768:Src/main.c **** } -2769:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_PERIOD) != pat_period) -2770:Src/main.c **** { -2771:Src/main.c **** ok = 0u; -2772:Src/main.c **** } -2773:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TYPE) != 0x0000u) -2774:Src/main.c **** { -2775:Src/main.c **** ok = 0u; -2776:Src/main.c **** } -2777:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_SAW_CONFIG) != expect_saw) -2778:Src/main.c **** { -2779:Src/main.c **** ok = 0u; -2780:Src/main.c **** } -2781:Src/main.c **** -2782:Src/main.c **** return (ok ? 0u : 1u); -2783:Src/main.c **** } -2784:Src/main.c **** -2785:Src/main.c **** static uint8_t AD9102_CheckFlagsSram(uint16_t pat_status, uint8_t expect_run, uint16_t samples, uin -2786:Src/main.c **** { -2787:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); -2788:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); -2789:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); -2790:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); -2791:Src/main.c **** -2792:Src/main.c **** if (samples == 0u) -2793:Src/main.c **** { -2794:Src/main.c **** samples = AD9102_SRAM_SAMPLES_DEFAULT; -2795:Src/main.c **** } -2796:Src/main.c **** if (samples < 2u) -2797:Src/main.c **** { -2798:Src/main.c **** samples = 2u; -2799:Src/main.c **** } -2800:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) -2801:Src/main.c **** { -2802:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; -2803:Src/main.c **** } -2804:Src/main.c **** if (hold == 0u) -2805:Src/main.c **** { -2806:Src/main.c **** hold = AD9102_SRAM_HOLD_DEFAULT; -2807:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 102 - - -2808:Src/main.c **** if (hold > 0x0Fu) -2809:Src/main.c **** { -2810:Src/main.c **** hold = 0x0Fu; -2811:Src/main.c **** } -2812:Src/main.c **** -2813:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((uint16_t)(hold & 0x0Fu) << 8) | -2814:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | -2815:Src/main.c **** (AD9102_SRAM_START_DELAY_BASE_DEFAULT & 0x0Fu)); -2816:Src/main.c **** uint32_t pat_period = (uint32_t)samples * (uint32_t)(hold & 0x0Fu); -2817:Src/main.c **** if (pat_period == 0u) -2818:Src/main.c **** { -2819:Src/main.c **** pat_period = samples; -2820:Src/main.c **** } -2821:Src/main.c **** if (pat_period > 0xFFFFu) -2822:Src/main.c **** { -2823:Src/main.c **** pat_period = 0xFFFFu; -2824:Src/main.c **** } -2825:Src/main.c **** -2826:Src/main.c **** uint16_t stop_addr = (uint16_t)((samples - 1u) << 4); -2827:Src/main.c **** -2828:Src/main.c **** uint8_t ok = 1u; -2829:Src/main.c **** -2830:Src/main.c **** if (spiconfig != 0x0000u) -2831:Src/main.c **** { -2832:Src/main.c **** ok = 0u; -2833:Src/main.c **** } -2834:Src/main.c **** if (powercfg & ((1u << 8) | (1u << 7) | (1u << 6) | (1u << 5) | (1u << 3))) -2835:Src/main.c **** { -2836:Src/main.c **** ok = 0u; -2837:Src/main.c **** } -2838:Src/main.c **** if (clockcfg & ((1u << 11) | (1u << 7) | (1u << 6) | (1u << 5))) -2839:Src/main.c **** { -2840:Src/main.c **** ok = 0u; -2841:Src/main.c **** } -2842:Src/main.c **** if (cfg_err & 0x003Fu) -2843:Src/main.c **** { -2844:Src/main.c **** ok = 0u; -2845:Src/main.c **** } -2846:Src/main.c **** if (expect_run && ((pat_status & AD9102_PAT_STATUS_RUN) == 0u)) -2847:Src/main.c **** { -2848:Src/main.c **** ok = 0u; -2849:Src/main.c **** } -2850:Src/main.c **** -2851:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_WAV_CONFIG) != AD9102_EX2_WAV_CONFIG) -2852:Src/main.c **** { -2853:Src/main.c **** ok = 0u; -2854:Src/main.c **** } -2855:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TIMEBASE) != pat_timebase) -2856:Src/main.c **** { -2857:Src/main.c **** ok = 0u; -2858:Src/main.c **** } -2859:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_PERIOD) != (uint16_t)pat_period) -2860:Src/main.c **** { -2861:Src/main.c **** ok = 0u; -2862:Src/main.c **** } -2863:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TYPE) != 0x0000u) -2864:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 103 - - -2865:Src/main.c **** ok = 0u; -2866:Src/main.c **** } -2867:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_START_ADDR) != 0x0000u) -2868:Src/main.c **** { -2869:Src/main.c **** ok = 0u; -2870:Src/main.c **** } -2871:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_STOP_ADDR) != stop_addr) -2872:Src/main.c **** { -2873:Src/main.c **** ok = 0u; -2874:Src/main.c **** } -2875:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_DAC_PAT) != AD9102_EX2_DAC_PAT) -2876:Src/main.c **** { -2877:Src/main.c **** ok = 0u; -2878:Src/main.c **** } -2879:Src/main.c **** -2880:Src/main.c **** return (ok ? 0u : 1u); -2881:Src/main.c **** } -2882:Src/main.c **** -2883:Src/main.c **** void Set_LTEC(uint8_t num, uint16_t DATA) -2884:Src/main.c **** { -2885:Src/main.c **** uint32_t tmp32; -2886:Src/main.c **** -2887:Src/main.c **** #if AD9102_ON_SPI2 -2888:Src/main.c **** // AD9102 occupies SPI2; skip LD1/TEC1 writes to avoid CS conflicts. -2889:Src/main.c **** if (num == 1 || num == 3) -2890:Src/main.c **** { -2891:Src/main.c **** return; -2892:Src/main.c **** } -2893:Src/main.c **** #endif -2894:Src/main.c **** -2895:Src/main.c **** switch (num) -2896:Src/main.c **** { -2897:Src/main.c **** case 1: -2898:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_RESET);//Start operation with L -2899:Src/main.c **** //tmp32=0; -2900:Src/main.c **** //while(tmp32<500){tmp32++;} -2901:Src/main.c **** tmp32 = 0; -2902:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi -2903:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC -2904:Src/main.c **** tmp32 = 0; -2905:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w -2906:Src/main.c **** (void) SPI2->DR; -2907:Src/main.c **** break; -2908:Src/main.c **** case 2: -2909:Src/main.c **** //HAL_GPIO_TogglePin(OUT_11_GPIO_Port, OUT_11_Pin); //for debug purposes -2910:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_RESET);//Start operation with L -2911:Src/main.c **** //tmp32=0; -2912:Src/main.c **** //while(tmp32<500){tmp32++;} -2913:Src/main.c **** tmp32 = 0; -2914:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi -2915:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC -2916:Src/main.c **** tmp32 = 0; -2917:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w -2918:Src/main.c **** (void) SPI6->DR; -2919:Src/main.c **** break; -2920:Src/main.c **** case 3: -2921:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_RESET);//Start operation with - ARM GAS /tmp/ccwR4KB7.s page 104 - - -2922:Src/main.c **** //tmp32=0; -2923:Src/main.c **** //while(tmp32<500){tmp32++;} -2924:Src/main.c **** tmp32 = 0; -2925:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi -2926:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC -2927:Src/main.c **** tmp32 = 0; -2928:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w -2929:Src/main.c **** (void) SPI2->DR; -2930:Src/main.c **** break; -2931:Src/main.c **** case 4: -2932:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_RESET);//Start operation with -2933:Src/main.c **** //tmp32=0; -2934:Src/main.c **** //while(tmp32<500){tmp32++;} -2935:Src/main.c **** tmp32 = 0; -2936:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi -2937:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC -2938:Src/main.c **** tmp32 = 0; -2939:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w -2940:Src/main.c **** (void) SPI6->DR; -2941:Src/main.c **** break; -2942:Src/main.c **** } -2943:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET);//End operation with LDAC1 -2944:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 -2945:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 -2946:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 -2947:Src/main.c **** } -2948:Src/main.c **** static uint16_t MPhD_T(uint8_t num) -2949:Src/main.c **** { -2950:Src/main.c **** uint16_t P; -2951:Src/main.c **** uint32_t tmp32; -2952:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion -2953:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion -2954:Src/main.c **** tmp32=0; -2955:Src/main.c **** while(tmp32<500){tmp32++;} -2956:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver -2957:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver -2958:Src/main.c **** tmp32=0; -2959:Src/main.c **** while(tmp32<500){tmp32++;} -2960:Src/main.c **** if (num==1)//MPD1 -2961:Src/main.c **** { -2962:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_SET); -2963:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); -2964:Src/main.c **** tmp32=0; -2965:Src/main.c **** while(tmp32<500){tmp32++;} -2966:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c -2967:Src/main.c **** LL_SPI_Enable(SPI4);//Enable SPI for MPhD1 ADC -2968:Src/main.c **** tmp32 = 0; -2969:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w -2970:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC -2971:Src/main.c **** while(tmp32<500){tmp32++;} -2972:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); -2973:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_SET); -2974:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); -2975:Src/main.c **** } -2976:Src/main.c **** else if (num==2)//MPD2 -2977:Src/main.c **** { -2978:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_SET); - ARM GAS /tmp/ccwR4KB7.s page 105 - - -2979:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_RESET); -2980:Src/main.c **** tmp32=0; -2981:Src/main.c **** while(tmp32<500){tmp32++;} -2982:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c -2983:Src/main.c **** LL_SPI_Enable(SPI5);//Enable SPI for MPhD2 ADC -2984:Src/main.c **** tmp32 = 0; -2985:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w -2986:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC -2987:Src/main.c **** while(tmp32<500){tmp32++;} -2988:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); -2989:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET); -2990:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); -2991:Src/main.c **** } -2992:Src/main.c **** else if (num==3)//ThrLD1 -2993:Src/main.c **** { -2994:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_SET); -2995:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); -2996:Src/main.c **** tmp32=0; -2997:Src/main.c **** while(tmp32<500){tmp32++;} -2998:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c -2999:Src/main.c **** LL_SPI_Enable(SPI4);//Enable SPI for ThrLD1 ADC -3000:Src/main.c **** tmp32 = 0; -3001:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w -3002:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC -3003:Src/main.c **** while(tmp32<500){tmp32++;} -3004:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); -3005:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_SET); -3006:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); -3007:Src/main.c **** } -3008:Src/main.c **** else if (num==4)//ThrLD2 -3009:Src/main.c **** { -3010:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET); -3011:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_RESET); -3012:Src/main.c **** tmp32=0; -3013:Src/main.c **** while(tmp32<500){tmp32++;} -3014:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c -3015:Src/main.c **** LL_SPI_Enable(SPI5);//Enable SPI for ThrLD2 ADC -3016:Src/main.c **** tmp32 = 0; -3017:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w -3018:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC -3019:Src/main.c **** while(tmp32<500){tmp32++;} -3020:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); -3021:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_SET); -3022:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); -3023:Src/main.c **** } -3024:Src/main.c **** /*float I_LD, Ith, I0m, T0m, Inorm, Tnorm1, Tnorm2, P, T_C, A, Pnorm; -3025:Src/main.c **** -3026:Src/main.c **** Inorm = (float) (65535) / (float) (100); -3027:Src/main.c **** Tnorm1 = (float) (65535) / (float) (50); -3028:Src/main.c **** Tnorm2 = 4; -3029:Src/main.c **** Pnorm = (float)(65535) / (float)(20); -3030:Src/main.c **** I0m = 8.1568;//@4 C - lowest temperature of system -3031:Src/main.c **** T0m = 48.6282; -3032:Src/main.c **** T_C = (float) (T_LD) / Tnorm1 + Tnorm2; -3033:Src/main.c **** -3034:Src/main.c **** Ith = I0m * expf(T_C/T0m); -3035:Src/main.c **** I_LD = (float) (C_LD) / Inorm; - ARM GAS /tmp/ccwR4KB7.s page 106 - - -3036:Src/main.c **** -3037:Src/main.c **** if (I_LD > Ith) -3038:Src/main.c **** { -3039:Src/main.c **** A = (float) (2.24276128270098e-07) * T_C * T_C * T_C - (float) (4.73392579025590e-05) * T_C * T_ -3040:Src/main.c **** P = A * (I_LD - Ith) * Pnorm; -3041:Src/main.c **** } -3042:Src/main.c **** else -3043:Src/main.c **** { -3044:Src/main.c **** P = 0; -3045:Src/main.c **** } */ -3046:Src/main.c **** return P; -3047:Src/main.c **** } -3048:Src/main.c **** /*static uint16_t Temp_LD(uint16_t T_LD_before, uint16_t T_LD, uint32_t Timer_before, uint32_t Time -3049:Src/main.c **** { -3050:Src/main.c **** uint16_t Result; -3051:Src/main.c **** // uint8_t randf; -3052:Src/main.c **** -3053:Src/main.c **** randf = 0; -3054:Src/main.c **** for (uint8_t i = 0; i < 32; i++) -3055:Src/main.c **** { -3056:Src/main.c **** randf = ((Timer>>i)&0x0001)^randf; -3057:Src/main.c **** } -3058:Src/main.c **** -3059:Src/main.c **** Result = ((float)(T_LD - T_LD_before))*((float)(1-expf(((float)(Timer_before)-(float)(Timer))/((fl -3060:Src/main.c **** -3061:Src/main.c **** return (uint16_t)(Result); -3062:Src/main.c **** }*/ -3063:Src/main.c **** static uint16_t Get_ADC(uint8_t num) -3064:Src/main.c **** { -3065:Src/main.c **** uint16_t OUT; -3066:Src/main.c **** switch (num) -3067:Src/main.c **** { -3068:Src/main.c **** case 0: -3069:Src/main.c **** HAL_ADC_Start(&hadc1); // Power on -3070:Src/main.c **** break; -3071:Src/main.c **** case 1: -3072:Src/main.c **** HAL_ADC_PollForConversion(&hadc1, 100); // Waiting for conversion -3073:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc -3074:Src/main.c **** break; -3075:Src/main.c **** case 2: -3076:Src/main.c **** HAL_ADC_Stop(&hadc1); // Power off -3077:Src/main.c **** break; -3078:Src/main.c **** case 3: -3079:Src/main.c **** HAL_ADC_Start(&hadc3); // Power on -3080:Src/main.c **** break; -3081:Src/main.c **** case 4: -3082:Src/main.c **** HAL_ADC_PollForConversion(&hadc3, 100); // Waiting for conversion -3083:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc -3084:Src/main.c **** break; -3085:Src/main.c **** case 5: -3086:Src/main.c **** HAL_ADC_Stop(&hadc3); // Power off -3087:Src/main.c **** break; -3088:Src/main.c **** } -3089:Src/main.c **** return OUT; -3090:Src/main.c **** } -3091:Src/main.c **** -3092:Src/main.c **** uint16_t Advanced_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_results - ARM GAS /tmp/ccwR4KB7.s page 107 - - -3093:Src/main.c **** { -3094:Src/main.c **** // Main idea: -3095:Src/main.c **** // I is responsible to maintaining constant temperature difference between laser and room temperat -3096:Src/main.c **** // As room temperature can be approximated as constant at current-varying time -- I should be kept -3097:Src/main.c **** // As current through laser diode heats it -- we can estimate excessive power on laser diode and t -3098:Src/main.c **** // So, equation should be look like this: -3099:Src/main.c **** // x_output = x_output_original + I(laser)*(a + (t - b)c) -3100:Src/main.c **** // t -- cycle phase -3101:Src/main.c **** // a,b,c -- constants -3102:Src/main.c **** // -3103:Src/main.c **** // How can we control laser diode temperature? -3104:Src/main.c **** // -- We can set laser to fixed current at the time we need to measure. -3105:Src/main.c **** // Then we should measure wavelength. -3106:Src/main.c **** // Calibration sequence: -3107:Src/main.c **** // 1) n -3108:Src/main.c **** -3109:Src/main.c **** -3110:Src/main.c **** -3111:Src/main.c **** int e_pid; -3112:Src/main.c **** float P_coef_current;//, I_coef_current; -3113:Src/main.c **** float e_integral; -3114:Src/main.c **** int x_output; -3115:Src/main.c **** -3116:Src/main.c **** e_pid = (int) LDx_results->LD_CURR_TEMP - (int) LDx_curr_setup->LD_TEMP; -3117:Src/main.c **** -3118:Src/main.c **** e_integral = LDx_results->e_integral; -3119:Src/main.c **** -3120:Src/main.c **** if((e_pid < 3000) && (e_pid > - 3000)){ -3121:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 -3122:Src/main.c **** } -3123:Src/main.c **** P_coef_current = LDx_curr_setup->P_coef_temp; -3124:Src/main.c **** -3125:Src/main.c **** if (e_integral > 32000){ -3126:Src/main.c **** e_integral = 32000; -3127:Src/main.c **** } -3128:Src/main.c **** else if (e_integral < - 32000){ -3129:Src/main.c **** e_integral = -32000; -3130:Src/main.c **** } -3131:Src/main.c **** LDx_results->e_integral = e_integral; -3132:Src/main.c **** -3133:Src/main.c **** x_output = 32768 + P_coef_current * e_pid + (int)e_integral;//32768 - P_coef_current * e_pid - (in -3134:Src/main.c **** -3135:Src/main.c **** if(x_output < 1000){ -3136:Src/main.c **** x_output = 8800; -3137:Src/main.c **** } -3138:Src/main.c **** else if(x_output > 56800){ -3139:Src/main.c **** x_output = 56800; -3140:Src/main.c **** } -3141:Src/main.c **** -3142:Src/main.c **** if (num==2) -3143:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser -3144:Src/main.c **** -3145:Src/main.c **** return (uint16_t)x_output; -3146:Src/main.c **** } -3147:Src/main.c **** -3148:Src/main.c **** -3149:Src/main.c **** uint16_t PID_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_results, uin - ARM GAS /tmp/ccwR4KB7.s page 108 - - -3150:Src/main.c **** { - 545 .loc 1 3150 1 is_stmt 1 view -0 +2637:Src/main.c **** } +2638:Src/main.c **** +2639:Src/main.c **** static void SPI2_SetMode(uint32_t polarity, uint32_t phase) +2640:Src/main.c **** { + 545 .loc 1 2640 1 is_stmt 1 view -0 546 .cfi_startproc 547 @ args = 0, pretend = 0, frame = 0 548 @ frame_needed = 0, uses_anonymous_args = 0 549 @ link register save eliminated. - 550 .loc 1 3150 1 is_stmt 0 view .LVU201 - 551 0000 30B4 push {r4, r5} - 552 .LCFI6: - 553 .cfi_def_cfa_offset 8 - 554 .cfi_offset 4, -8 - 555 .cfi_offset 5, -4 -3151:Src/main.c **** int e_pid; - 556 .loc 1 3151 2 is_stmt 1 view .LVU202 -3152:Src/main.c **** float P_coef_current;//, I_coef_current; - 557 .loc 1 3152 2 view .LVU203 -3153:Src/main.c **** float e_integral; - 558 .loc 1 3153 2 view .LVU204 -3154:Src/main.c **** int x_output; - 559 .loc 1 3154 2 view .LVU205 -3155:Src/main.c **** -3156:Src/main.c **** e_pid = (int) LDx_results->LD_CURR_TEMP - (int) LDx_curr_setup->LD_TEMP; - 560 .loc 1 3156 2 view .LVU206 - 561 .loc 1 3156 28 is_stmt 0 view .LVU207 - 562 0002 0B88 ldrh r3, [r1] - 563 .loc 1 3156 65 view .LVU208 - 564 0004 0488 ldrh r4, [r0] - 565 .loc 1 3156 8 view .LVU209 - 566 0006 1B1B subs r3, r3, r4 - 567 .LVL34: -3157:Src/main.c **** -3158:Src/main.c **** e_integral = LDx_results->e_integral; - 568 .loc 1 3158 2 is_stmt 1 view .LVU210 - 569 .loc 1 3158 13 is_stmt 0 view .LVU211 - 570 0008 D1ED017A vldr.32 s15, [r1, #4] - 571 .LVL35: -3159:Src/main.c **** -3160:Src/main.c **** if((e_pid < 3000) && (e_pid > - 3000)){ - 572 .loc 1 3160 2 is_stmt 1 view .LVU212 - 573 .loc 1 3160 20 is_stmt 0 view .LVU213 - 574 000c 03F6B73C addw ip, r3, #2999 - 575 .loc 1 3160 4 view .LVU214 - 576 0010 41F26E74 movw r4, #5998 - 577 0014 A445 cmp ip, r4 - 578 0016 18D8 bhi .L17 -3161:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 - 579 .loc 1 3161 3 is_stmt 1 view .LVU215 - 580 .loc 1 3161 31 is_stmt 0 view .LVU216 - 581 0018 90ED027A vldr.32 s14, [r0, #8] - 582 .loc 1 3161 47 view .LVU217 - 583 001c 06EE903A vmov s13, r3 @ int - 584 0020 F8EEE66A vcvt.f32.s32 s13, s13 - 585 .loc 1 3161 45 view .LVU218 - 586 0024 27EE267A vmul.f32 s14, s14, s13 - 587 .loc 1 3161 76 view .LVU219 - 588 0028 284C ldr r4, .L27 - 589 002a 2468 ldr r4, [r4] - ARM GAS /tmp/ccwR4KB7.s page 109 - - - 590 002c 284D ldr r5, .L27+4 - 591 002e 2D68 ldr r5, [r5] - 592 0030 641B subs r4, r4, r5 - 593 .loc 1 3161 64 view .LVU220 - 594 0032 06EE904A vmov s13, r4 @ int - 595 0036 F8EE666A vcvt.f32.u32 s13, s13 - 596 .loc 1 3161 62 view .LVU221 - 597 003a 27EE267A vmul.f32 s14, s14, s13 - 598 .loc 1 3161 87 view .LVU222 - 599 003e 9FED256A vldr.32 s12, .L27+8 - 600 0042 C7EE066A vdiv.f32 s13, s14, s12 - 601 .loc 1 3161 14 view .LVU223 - 602 0046 77EEA67A vadd.f32 s15, s15, s13 - 603 .LVL36: - 604 .L17: -3162:Src/main.c **** } -3163:Src/main.c **** P_coef_current = LDx_curr_setup->P_coef_temp; - 605 .loc 1 3163 2 is_stmt 1 view .LVU224 - 606 .loc 1 3163 17 is_stmt 0 view .LVU225 - 607 004a D0ED016A vldr.32 s13, [r0, #4] - 608 .LVL37: -3164:Src/main.c **** -3165:Src/main.c **** if (e_integral > 32000){ - 609 .loc 1 3165 2 is_stmt 1 view .LVU226 - 610 .loc 1 3165 5 is_stmt 0 view .LVU227 - 611 004e 9FED227A vldr.32 s14, .L27+12 - 612 0052 F4EEC77A vcmpe.f32 s15, s14 - 613 0056 F1EE10FA vmrs APSR_nzcv, FPSCR - 614 005a 09DC bgt .L21 -3166:Src/main.c **** e_integral = 32000; -3167:Src/main.c **** } -3168:Src/main.c **** else if (e_integral < - 32000){ - 615 .loc 1 3168 7 is_stmt 1 view .LVU228 - 616 .loc 1 3168 10 is_stmt 0 view .LVU229 - 617 005c 9FED1F7A vldr.32 s14, .L27+16 - 618 0060 F4EEC77A vcmpe.f32 s15, s14 - 619 0064 F1EE10FA vmrs APSR_nzcv, FPSCR - 620 0068 04D5 bpl .L18 -3169:Src/main.c **** e_integral = -32000; - 621 .loc 1 3169 15 view .LVU230 - 622 006a DFED1C7A vldr.32 s15, .L27+16 - 623 .LVL38: - 624 .loc 1 3169 15 view .LVU231 - 625 006e 01E0 b .L18 - 626 .LVL39: - 627 .L21: -3166:Src/main.c **** e_integral = 32000; - 628 .loc 1 3166 15 view .LVU232 - 629 0070 DFED197A vldr.32 s15, .L27+12 - 630 .LVL40: - 631 .L18: -3170:Src/main.c **** } -3171:Src/main.c **** LDx_results->e_integral = e_integral; - 632 .loc 1 3171 2 is_stmt 1 view .LVU233 - 633 .loc 1 3171 26 is_stmt 0 view .LVU234 - 634 0074 C1ED017A vstr.32 s15, [r1, #4] -3172:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 110 - - -3173:Src/main.c **** x_output = 32768 + P_coef_current * e_pid + (int)e_integral;//32768 - P_coef_current * e_pid - (in - 635 .loc 1 3173 2 is_stmt 1 view .LVU235 - 636 .loc 1 3173 36 is_stmt 0 view .LVU236 - 637 0078 07EE103A vmov s14, r3 @ int - 638 007c B8EEC77A vcvt.f32.s32 s14, s14 - 639 0080 27EE267A vmul.f32 s14, s14, s13 - 640 .loc 1 3173 19 view .LVU237 - 641 0084 DFED166A vldr.32 s13, .L27+20 - 642 .LVL41: - 643 .loc 1 3173 19 view .LVU238 - 644 0088 37EE267A vadd.f32 s14, s14, s13 - 645 .loc 1 3173 46 view .LVU239 - 646 008c FDEEE77A vcvt.s32.f32 s15, s15 - 647 .LVL42: - 648 .loc 1 3173 44 view .LVU240 - 649 0090 F8EEE77A vcvt.f32.s32 s15, s15 - 650 0094 77EE877A vadd.f32 s15, s15, s14 - 651 .loc 1 3173 11 view .LVU241 - 652 0098 FDEEE77A vcvt.s32.f32 s15, s15 - 653 009c 17EE900A vmov r0, s15 @ int - 654 .LVL43: -3174:Src/main.c **** -3175:Src/main.c **** if(x_output < 1000){ - 655 .loc 1 3175 2 is_stmt 1 view .LVU242 - 656 .loc 1 3175 4 is_stmt 0 view .LVU243 - 657 00a0 B0F57A7F cmp r0, #1000 - 658 00a4 06DB blt .L23 -3176:Src/main.c **** x_output = 8800; -3177:Src/main.c **** } -3178:Src/main.c **** else if(x_output > 56800){ - 659 .loc 1 3178 7 is_stmt 1 view .LVU244 - 660 .loc 1 3178 9 is_stmt 0 view .LVU245 - 661 00a6 4DF6E053 movw r3, #56800 - 662 .LVL44: - 663 .loc 1 3178 9 view .LVU246 - 664 00aa 9842 cmp r0, r3 - 665 00ac 04DD ble .L19 -3179:Src/main.c **** x_output = 56800; - 666 .loc 1 3179 12 view .LVU247 - 667 00ae 4DF6E050 movw r0, #56800 - 668 .LVL45: - 669 .loc 1 3179 12 view .LVU248 - 670 00b2 01E0 b .L19 - 671 .LVL46: - 672 .L23: -3176:Src/main.c **** x_output = 8800; - 673 .loc 1 3176 12 view .LVU249 - 674 00b4 42F26020 movw r0, #8800 - 675 .LVL47: - 676 .L19: -3180:Src/main.c **** } -3181:Src/main.c **** -3182:Src/main.c **** if (num==2) - 677 .loc 1 3182 2 is_stmt 1 view .LVU250 - 678 .loc 1 3182 5 is_stmt 0 view .LVU251 - 679 00b8 022A cmp r2, #2 - 680 00ba 02D0 beq .L26 - ARM GAS /tmp/ccwR4KB7.s page 111 - - - 681 .LVL48: - 682 .L20: -3183:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser -3184:Src/main.c **** -3185:Src/main.c **** return (uint16_t)x_output; - 683 .loc 1 3185 2 is_stmt 1 view .LVU252 -3186:Src/main.c **** } - 684 .loc 1 3186 1 is_stmt 0 view .LVU253 - 685 00bc 80B2 uxth r0, r0 - 686 .LVL49: - 687 .loc 1 3186 1 view .LVU254 - 688 00be 30BC pop {r4, r5} - 689 .LCFI7: - 690 .cfi_remember_state - 691 .cfi_restore 5 - 692 .cfi_restore 4 - 693 .cfi_def_cfa_offset 0 - 694 00c0 7047 bx lr - 695 .LVL50: - 696 .L26: - 697 .LCFI8: - 698 .cfi_restore_state -3183:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser - 699 .loc 1 3183 3 is_stmt 1 view .LVU255 -3183:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser - 700 .loc 1 3183 11 is_stmt 0 view .LVU256 - 701 00c2 024B ldr r3, .L27 - 702 00c4 1A68 ldr r2, [r3] - 703 .LVL51: -3183:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser - 704 .loc 1 3183 11 view .LVU257 - 705 00c6 024B ldr r3, .L27+4 - 706 00c8 1A60 str r2, [r3] - 707 00ca F7E7 b .L20 - 708 .L28: - 709 .align 2 - 710 .L27: - 711 00cc 00000000 .word TO7 - 712 00d0 00000000 .word TO7_PID - 713 00d4 0000C842 .word 1120403456 - 714 00d8 0000FA46 .word 1190789120 - 715 00dc 0000FAC6 .word -956694528 - 716 00e0 00000047 .word 1191182336 - 717 .cfi_endproc - 718 .LFE1224: - 720 .section .text.AD9102_WriteReg,"ax",%progbits - 721 .align 1 - 722 .syntax unified - 723 .thumb - 724 .thumb_func - 726 AD9102_WriteReg: - 727 .LVL52: - 728 .LFB1212: -2465:Src/main.c **** uint32_t tmp32 = 0; - 729 .loc 1 2465 1 is_stmt 1 view -0 - 730 .cfi_startproc - 731 @ args = 0, pretend = 0, frame = 0 - ARM GAS /tmp/ccwR4KB7.s page 112 - - - 732 @ frame_needed = 0, uses_anonymous_args = 0 -2465:Src/main.c **** uint32_t tmp32 = 0; - 733 .loc 1 2465 1 is_stmt 0 view .LVU259 - 734 0000 38B5 push {r3, r4, r5, lr} - 735 .LCFI9: - 736 .cfi_def_cfa_offset 16 - 737 .cfi_offset 3, -16 - 738 .cfi_offset 4, -12 - 739 .cfi_offset 5, -8 - 740 .cfi_offset 14, -4 - 741 0002 0C46 mov r4, r1 -2466:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address - 742 .loc 1 2466 2 is_stmt 1 view .LVU260 - 743 .LVL53: -2467:Src/main.c **** - 744 .loc 1 2467 2 view .LVU261 -2467:Src/main.c **** - 745 .loc 1 2467 11 is_stmt 0 view .LVU262 - 746 0004 C0F30E05 ubfx r5, r0, #0, #15 - 747 .LVL54: -2469:Src/main.c **** { - 748 .loc 1 2469 2 is_stmt 1 view .LVU263 - 749 .LBB339: - 750 .LBI339: - 751 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h" +2641:Src/main.c **** if (LL_SPI_IsEnabled(SPI2)) + 550 .loc 1 2641 2 view .LVU201 + 551 .LBB359: + 552 .LBI359: + 553 .file 4 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @file stm32f7xx_ll_spi.h @@ -6718,9 +5927,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 30:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @addtogroup STM32F7xx_LL_Driver 31:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @{ 32:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 113 - - 33:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 34:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #if defined (SPI1) || defined (SPI2) || defined (SPI3) || defined (SPI4) || defined (SPI5) || defin 35:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** @@ -6732,6 +5938,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 41:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /* Private variables ---------------------------------------------------------*/ 42:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /* Private macros ------------------------------------------------------------*/ 43:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** + ARM GAS /tmp/ccEQxcUB.s page 100 + + 44:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /* Exported types ------------------------------------------------------------*/ 45:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #if defined(USE_FULL_LL_DRIVER) 46:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_ES_INIT SPI Exported Init structure @@ -6778,9 +5987,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 87:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** @note The communication clock is derived from the master c 88:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 89:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** This feature can be modified afterwards using unitary func - ARM GAS /tmp/ccwR4KB7.s page 114 - - 90:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 91:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** uint32_t BitOrder; /*!< Specifies whether data transfers start from MSB or LSB bit 92:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** This parameter can be a value of @ref SPI_LL_EC_BIT_ORDER. @@ -6792,6 +5998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 98:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 99:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** This feature can be modified afterwards using unitary func 100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** + ARM GAS /tmp/ccEQxcUB.s page 101 + + 101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** uint32_t CRCPoly; /*!< Specifies the polynomial used for the CRC calculation. 102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** This parameter must be a number between Min_Data = 0x00 an 103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** @@ -6838,9 +6047,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_EC_MODE Operation Mode 145:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @{ 146:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 115 - - 147:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_MODE_MASTER (SPI_CR1_MSTR | SPI_CR1_SSI) /*!< Master configuratio 148:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_MODE_SLAVE 0x00000000U /*!< Slave configuration 149:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @@ -6852,6 +6058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_PROTOCOL_MOTOROLA 0x00000000U /*!< Motorola mode. Used as de 157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_PROTOCOL_TI (SPI_CR2_FRF) /*!< TI mode + ARM GAS /tmp/ccEQxcUB.s page 102 + + 158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} 160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -6898,9 +6107,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} 202:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 203:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - ARM GAS /tmp/ccwR4KB7.s page 116 - - 204:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_EC_TRANSFER_MODE Transfer Mode 205:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @{ 206:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -6912,6 +6118,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} 213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** + ARM GAS /tmp/ccEQxcUB.s page 103 + + 215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_EC_NSS_MODE Slave Select Pin Mode 216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @{ 217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -6958,9 +6167,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 258:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 259:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_CRC_8BIT 0x00000000U /*!< 8-bit CRC length */ 260:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_CRC_16BIT (SPI_CR1_CRCL) /*!< 16-bit CRC length */ - ARM GAS /tmp/ccwR4KB7.s page 117 - - 261:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 262:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} 263:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -6972,6 +6178,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_RX_FIFO_TH_QUARTER (SPI_CR2_FRXTH) /*!< RXNE event is generated i 270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} + ARM GAS /tmp/ccEQxcUB.s page 104 + + 272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_EC_RX_FIFO RX FIFO Level @@ -7018,9 +6227,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @defgroup SPI_LL_EM_WRITE_READ Common Write and read registers Macros 316:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @{ 317:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 118 - - 318:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 319:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 320:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Write a value in SPI register @@ -7032,6 +6238,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 326:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #define LL_SPI_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VALUE 327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 105 + + 329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Read a value in SPI register 330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param __INSTANCE__ SPI Instance 331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param __REG__ Register to be read @@ -7078,9 +6287,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** CLEAR_BIT(SPIx->CR1, SPI_CR1_SPE); 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 374:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - ARM GAS /tmp/ccwR4KB7.s page 119 - - 375:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Check if SPI peripheral is enabled 377:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 SPE LL_SPI_IsEnabled @@ -7088,69 +6294,49 @@ ARM GAS /tmp/ccwR4KB7.s page 1 379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval State of bit (1 or 0). 380:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_IsEnabled(SPI_TypeDef *SPIx) - 752 .loc 4 381 26 view .LVU264 - 753 .LBB340: + 554 .loc 4 381 26 view .LVU202 + 555 .LBB360: 382:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return ((READ_BIT(SPIx->CR1, SPI_CR1_SPE) == (SPI_CR1_SPE)) ? 1UL : 0UL); - 754 .loc 4 383 3 view .LVU265 - 755 .loc 4 383 12 is_stmt 0 view .LVU266 - 756 0008 274B ldr r3, .L44 - 757 000a 1B68 ldr r3, [r3] - 758 .loc 4 383 69 view .LVU267 - 759 000c 13F0400F tst r3, #64 - 760 0010 04D1 bne .L30 - 761 .LVL55: - 762 .loc 4 383 69 view .LVU268 - 763 .LBE340: - 764 .LBE339: -2471:Src/main.c **** } - 765 .loc 1 2471 3 is_stmt 1 view .LVU269 - 766 .LBB341: - 767 .LBI341: - 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 768 .loc 4 358 22 view .LVU270 - 769 .LBB342: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 770 .loc 4 360 3 view .LVU271 - 771 0012 254A ldr r2, .L44 - 772 0014 1368 ldr r3, [r2] - 773 0016 43F04003 orr r3, r3, #64 - 774 001a 1360 str r3, [r2] - 775 .LVL56: - 776 .L30: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 777 .loc 4 360 3 is_stmt 0 view .LVU272 - 778 .LBE342: - 779 .LBE341: -2474:Src/main.c **** - 780 .loc 1 2474 2 is_stmt 1 view .LVU273 - 781 001c 0022 movs r2, #0 - 782 001e 4FF48051 mov r1, #4096 - 783 .LVL57: -2474:Src/main.c **** - 784 .loc 1 2474 2 is_stmt 0 view .LVU274 - 785 0022 2248 ldr r0, .L44+4 - 786 .LVL58: -2474:Src/main.c **** - 787 .loc 1 2474 2 view .LVU275 - 788 0024 FFF7FEFF bl HAL_GPIO_WritePin - 789 .LVL59: -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 790 .loc 1 2476 2 is_stmt 1 view .LVU276 -2466:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address - ARM GAS /tmp/ccwR4KB7.s page 120 + ARM GAS /tmp/ccEQxcUB.s page 106 - 791 .loc 1 2466 11 is_stmt 0 view .LVU277 - 792 0028 0023 movs r3, #0 - 793 .LVL60: - 794 .L32: -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 795 .loc 1 2476 63 is_stmt 1 discriminator 2 view .LVU278 -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 796 .loc 1 2476 41 discriminator 2 view .LVU279 - 797 .LBB343: - 798 .LBI343: + 556 .loc 4 383 3 view .LVU203 + 557 .loc 4 383 12 is_stmt 0 view .LVU204 + 558 0000 0F4B ldr r3, .L19 + 559 0002 1B68 ldr r3, [r3] + 560 .loc 4 383 69 view .LVU205 + 561 0004 13F0400F tst r3, #64 + 562 0008 04D0 beq .L17 + 563 .LVL34: + 564 .loc 4 383 69 view .LVU206 + 565 .LBE360: + 566 .LBE359: +2642:Src/main.c **** { +2643:Src/main.c **** LL_SPI_Disable(SPI2); + 567 .loc 1 2643 3 is_stmt 1 view .LVU207 + 568 .LBB361: + 569 .LBI361: + 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 570 .loc 4 370 22 view .LVU208 + 571 .LBB362: + 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 572 .loc 4 372 3 view .LVU209 + 573 000a 0D4A ldr r2, .L19 + 574 000c 1368 ldr r3, [r2] + 575 000e 23F04003 bic r3, r3, #64 + 576 0012 1360 str r3, [r2] + 577 .LVL35: + 578 .L17: + 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 579 .loc 4 372 3 is_stmt 0 view .LVU210 + 580 .LBE362: + 581 .LBE361: +2644:Src/main.c **** } +2645:Src/main.c **** LL_SPI_SetClockPolarity(SPI2, polarity); + 582 .loc 1 2645 2 is_stmt 1 view .LVU211 + 583 .LBB363: + 584 .LBI363: 384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @@ -7172,6 +6358,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 402:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 403:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get SPI operation mode (Master or Slave) 404:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 MSTR LL_SPI_GetMode\n + ARM GAS /tmp/ccEQxcUB.s page 107 + + 405:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * CR1 SSI LL_SPI_GetMode 406:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 407:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval Returned value can be one of the following values: @@ -7198,9 +6387,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** MODIFY_REG(SPIx->CR2, SPI_CR2_FRF, Standard); 429:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - ARM GAS /tmp/ccwR4KB7.s page 121 - - 431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 432:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get serial protocol used 433:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 FRF LL_SPI_GetStandard @@ -7232,6 +6418,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 459:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 460:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 461:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get clock phase + ARM GAS /tmp/ccEQxcUB.s page 108 + + 462:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 CPHA LL_SPI_GetClockPhase 463:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 464:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval Returned value can be one of the following values: @@ -7255,15 +6444,1303 @@ ARM GAS /tmp/ccwR4KB7.s page 1 482:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None 483:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 484:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_SetClockPolarity(SPI_TypeDef *SPIx, uint32_t ClockPolarity) + 585 .loc 4 484 22 view .LVU212 + 586 .LBB364: 485:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 486:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** MODIFY_REG(SPIx->CR1, SPI_CR1_CPOL, ClockPolarity); + 587 .loc 4 486 3 view .LVU213 + 588 0014 0A4B ldr r3, .L19 + 589 0016 1A68 ldr r2, [r3] + 590 0018 22F00202 bic r2, r2, #2 + 591 001c 1043 orrs r0, r0, r2 + 592 .LVL36: + 593 .loc 4 486 3 is_stmt 0 view .LVU214 + 594 001e 1860 str r0, [r3] + 595 .LVL37: + 596 .loc 4 486 3 view .LVU215 + 597 .LBE364: + 598 .LBE363: +2646:Src/main.c **** LL_SPI_SetClockPhase(SPI2, phase); + 599 .loc 1 2646 2 is_stmt 1 view .LVU216 + 600 .LBB365: + 601 .LBI365: + 455:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 602 .loc 4 455 22 view .LVU217 + 603 .LBB366: + 457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 604 .loc 4 457 3 view .LVU218 + 605 0020 1A68 ldr r2, [r3] + 606 0022 22F00102 bic r2, r2, #1 + 607 0026 1143 orrs r1, r1, r2 + 608 .LVL38: + 457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 609 .loc 4 457 3 is_stmt 0 view .LVU219 + 610 0028 1960 str r1, [r3] + 611 .LVL39: + 457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + ARM GAS /tmp/ccEQxcUB.s page 109 + + + 612 .loc 4 457 3 view .LVU220 + 613 .LBE366: + 614 .LBE365: +2647:Src/main.c **** if (!LL_SPI_IsEnabled(SPI2)) + 615 .loc 1 2647 2 is_stmt 1 view .LVU221 + 616 .LBB367: + 617 .LBI367: + 381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 618 .loc 4 381 26 view .LVU222 + 619 .LBB368: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 620 .loc 4 383 3 view .LVU223 + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 621 .loc 4 383 12 is_stmt 0 view .LVU224 + 622 002a 1B68 ldr r3, [r3] + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 623 .loc 4 383 69 view .LVU225 + 624 002c 13F0400F tst r3, #64 + 625 0030 04D1 bne .L16 + 626 .LVL40: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 627 .loc 4 383 69 view .LVU226 + 628 .LBE368: + 629 .LBE367: +2648:Src/main.c **** { +2649:Src/main.c **** LL_SPI_Enable(SPI2); + 630 .loc 1 2649 3 is_stmt 1 view .LVU227 + 631 .LBB369: + 632 .LBI369: + 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 633 .loc 4 358 22 view .LVU228 + 634 .LBB370: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 635 .loc 4 360 3 view .LVU229 + 636 0032 034A ldr r2, .L19 + 637 0034 1368 ldr r3, [r2] + 638 0036 43F04003 orr r3, r3, #64 + 639 003a 1360 str r3, [r2] + 640 .LVL41: + 641 .L16: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 642 .loc 4 360 3 is_stmt 0 view .LVU230 + 643 .LBE370: + 644 .LBE369: +2650:Src/main.c **** } +2651:Src/main.c **** } + 645 .loc 1 2651 1 view .LVU231 + 646 003c 7047 bx lr + 647 .L20: + 648 003e 00BF .align 2 + 649 .L19: + 650 0040 00380040 .word 1073756160 + 651 .cfi_endproc + 652 .LFE1213: + 654 .section .text.PID_Controller_Temp,"ax",%progbits + 655 .align 1 + 656 .syntax unified + ARM GAS /tmp/ccEQxcUB.s page 110 + + + 657 .thumb + 658 .thumb_func + 660 PID_Controller_Temp: + 661 .LVL42: + 662 .LFB1229: +2652:Src/main.c **** +2653:Src/main.c **** static void AD9833_WriteWord(uint16_t word) +2654:Src/main.c **** { +2655:Src/main.c **** uint32_t tmp32 = 0; +2656:Src/main.c **** +2657:Src/main.c **** SPI2_SetMode(LL_SPI_POLARITY_HIGH, LL_SPI_PHASE_1EDGE); +2658:Src/main.c **** +2659:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +2660:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); +2661:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); +2662:Src/main.c **** +2663:Src/main.c **** HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_RESET); +2664:Src/main.c **** +2665:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} +2666:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); +2667:Src/main.c **** tmp32 = 0; +2668:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} +2669:Src/main.c **** (void) SPI2->DR; +2670:Src/main.c **** +2671:Src/main.c **** HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_SET); +2672:Src/main.c **** } +2673:Src/main.c **** +2674:Src/main.c **** static void AD9833_Apply(uint8_t enable, uint8_t triangle, uint32_t freq_word) +2675:Src/main.c **** { +2676:Src/main.c **** uint16_t control = 0x2000u; // B28 = 1 +2677:Src/main.c **** if (triangle) +2678:Src/main.c **** { +2679:Src/main.c **** control |= 0x0002u; // MODE = 1 (triangle) +2680:Src/main.c **** } +2681:Src/main.c **** control |= 0x0100u; // RESET = 1 while updating +2682:Src/main.c **** +2683:Src/main.c **** freq_word &= 0x0FFFFFFFu; +2684:Src/main.c **** uint16_t lsw = (uint16_t)(0x4000u | (freq_word & 0x3FFFu)); // FREQ0 LSB +2685:Src/main.c **** uint16_t msw = (uint16_t)(0x4000u | ((freq_word >> 14) & 0x3FFFu)); // FREQ0 MSB +2686:Src/main.c **** +2687:Src/main.c **** AD9833_WriteWord(control); +2688:Src/main.c **** AD9833_WriteWord(lsw); +2689:Src/main.c **** AD9833_WriteWord(msw); +2690:Src/main.c **** AD9833_WriteWord(0xC000u); // PHASE0 = 0 +2691:Src/main.c **** +2692:Src/main.c **** if (enable) +2693:Src/main.c **** { +2694:Src/main.c **** control &= (uint16_t)(~0x0100u); +2695:Src/main.c **** } +2696:Src/main.c **** AD9833_WriteWord(control); +2697:Src/main.c **** } +2698:Src/main.c **** +2699:Src/main.c **** static void DS1809_Pulse(uint8_t uc, uint8_t dc, uint16_t count, uint16_t pulse_ms) +2700:Src/main.c **** { +2701:Src/main.c **** for (uint16_t i = 0; i < count; i++) +2702:Src/main.c **** { +2703:Src/main.c **** if (uc) + ARM GAS /tmp/ccEQxcUB.s page 111 + + +2704:Src/main.c **** { +2705:Src/main.c **** HAL_GPIO_WritePin(DS1809_UC_GPIO_Port, DS1809_UC_Pin, GPIO_PIN_RESET); +2706:Src/main.c **** } +2707:Src/main.c **** if (dc) +2708:Src/main.c **** { +2709:Src/main.c **** HAL_GPIO_WritePin(DS1809_DC_GPIO_Port, DS1809_DC_Pin, GPIO_PIN_RESET); +2710:Src/main.c **** } +2711:Src/main.c **** HAL_Delay(pulse_ms); +2712:Src/main.c **** if (uc) +2713:Src/main.c **** { +2714:Src/main.c **** HAL_GPIO_WritePin(DS1809_UC_GPIO_Port, DS1809_UC_Pin, GPIO_PIN_SET); +2715:Src/main.c **** } +2716:Src/main.c **** if (dc) +2717:Src/main.c **** { +2718:Src/main.c **** HAL_GPIO_WritePin(DS1809_DC_GPIO_Port, DS1809_DC_Pin, GPIO_PIN_SET); +2719:Src/main.c **** } +2720:Src/main.c **** HAL_Delay(pulse_ms); +2721:Src/main.c **** } +2722:Src/main.c **** } +2723:Src/main.c **** +2724:Src/main.c **** static void AD9102_WriteReg(uint16_t addr, uint16_t value) +2725:Src/main.c **** { +2726:Src/main.c **** uint32_t tmp32 = 0; +2727:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address +2728:Src/main.c **** +2729:Src/main.c **** SPI2_SetMode(LL_SPI_POLARITY_LOW, LL_SPI_PHASE_1EDGE); +2730:Src/main.c **** +2731:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); +2732:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); +2733:Src/main.c **** +2734:Src/main.c **** if (!LL_SPI_IsEnabled(SPI2)) +2735:Src/main.c **** { +2736:Src/main.c **** LL_SPI_Enable(SPI2); +2737:Src/main.c **** } +2738:Src/main.c **** +2739:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_RESET); +2740:Src/main.c **** +2741:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} +2742:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); +2743:Src/main.c **** tmp32 = 0; +2744:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} +2745:Src/main.c **** (void) SPI2->DR; +2746:Src/main.c **** +2747:Src/main.c **** tmp32 = 0; +2748:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} +2749:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); +2750:Src/main.c **** tmp32 = 0; +2751:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} +2752:Src/main.c **** (void) SPI2->DR; +2753:Src/main.c **** +2754:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +2755:Src/main.c **** } +2756:Src/main.c **** +2757:Src/main.c **** static uint16_t AD9102_ReadReg(uint16_t addr) +2758:Src/main.c **** { +2759:Src/main.c **** uint32_t tmp32 = 0; +2760:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) + ARM GAS /tmp/ccEQxcUB.s page 112 + + +2761:Src/main.c **** uint16_t value; +2762:Src/main.c **** +2763:Src/main.c **** SPI2_SetMode(LL_SPI_POLARITY_LOW, LL_SPI_PHASE_1EDGE); +2764:Src/main.c **** +2765:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); +2766:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); +2767:Src/main.c **** +2768:Src/main.c **** if (!LL_SPI_IsEnabled(SPI2)) +2769:Src/main.c **** { +2770:Src/main.c **** LL_SPI_Enable(SPI2); +2771:Src/main.c **** } +2772:Src/main.c **** +2773:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_RESET); +2774:Src/main.c **** +2775:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} +2776:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); +2777:Src/main.c **** tmp32 = 0; +2778:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} +2779:Src/main.c **** (void) SPI2->DR; +2780:Src/main.c **** +2781:Src/main.c **** tmp32 = 0; +2782:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} +2783:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); +2784:Src/main.c **** tmp32 = 0; +2785:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} +2786:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); +2787:Src/main.c **** +2788:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +2789:Src/main.c **** return value; +2790:Src/main.c **** } +2791:Src/main.c **** +2792:Src/main.c **** static void AD9102_WriteRegTable(const uint16_t *values, uint16_t count) +2793:Src/main.c **** { +2794:Src/main.c **** for (uint16_t i = 0; i < count; i++) +2795:Src/main.c **** { +2796:Src/main.c **** AD9102_WriteReg(ad9102_reg_addr[i], values[i]); +2797:Src/main.c **** } +2798:Src/main.c **** } +2799:Src/main.c **** +2800:Src/main.c **** static uint16_t AD9102_Apply(uint8_t saw_type, uint8_t enable, uint8_t saw_step, uint8_t pat_base, +2801:Src/main.c **** { +2802:Src/main.c **** if (enable) +2803:Src/main.c **** { +2804:Src/main.c **** uint16_t saw_cfg; +2805:Src/main.c **** uint16_t pat_timebase; +2806:Src/main.c **** +2807:Src/main.c **** if (saw_step == 0u) +2808:Src/main.c **** { +2809:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; +2810:Src/main.c **** } +2811:Src/main.c **** if (saw_step > 63u) +2812:Src/main.c **** { +2813:Src/main.c **** saw_step = 63u; +2814:Src/main.c **** } +2815:Src/main.c **** saw_cfg = (uint16_t)(((uint16_t)(saw_step & 0x3Fu) << 2) | +2816:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); +2817:Src/main.c **** pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | + ARM GAS /tmp/ccEQxcUB.s page 113 + + +2818:Src/main.c **** ((pat_base & 0x0Fu) << 4) | +2819:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); +2820:Src/main.c **** +2821:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX4_WAV_CONFIG); +2822:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); +2823:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); +2824:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, pat_period); +2825:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat +2826:Src/main.c **** +2827:Src/main.c **** // Update RUN then RAMUPDATE at the end of the write sequence. +2828:Src/main.c **** // AD9102 output is started by a falling edge of TRIGGER pin when RUN=1. +2829:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +2830:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); +2831:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); +2832:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} +2833:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); +2834:Src/main.c **** } +2835:Src/main.c **** else +2836:Src/main.c **** { +2837:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); +2838:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +2839:Src/main.c **** } +2840:Src/main.c **** +2841:Src/main.c **** return AD9102_ReadReg(AD9102_REG_PAT_STATUS); +2842:Src/main.c **** } +2843:Src/main.c **** +2844:Src/main.c **** static void AD9102_LoadSramRamp(uint16_t samples, uint8_t triangle, uint16_t amplitude) +2845:Src/main.c **** { +2846:Src/main.c **** if (samples < 2u) +2847:Src/main.c **** { +2848:Src/main.c **** samples = 2u; +2849:Src/main.c **** } +2850:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) +2851:Src/main.c **** { +2852:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; +2853:Src/main.c **** } +2854:Src/main.c **** if (amplitude > AD9102_SRAM_AMP_DEFAULT) +2855:Src/main.c **** { +2856:Src/main.c **** amplitude = AD9102_SRAM_AMP_DEFAULT; +2857:Src/main.c **** } +2858:Src/main.c **** +2859:Src/main.c **** // Enable SRAM access. +2860:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0004u); +2861:Src/main.c **** +2862:Src/main.c **** for (uint16_t i = 0; i < samples; i++) +2863:Src/main.c **** { +2864:Src/main.c **** int32_t value; +2865:Src/main.c **** int32_t min_val = -(int32_t)amplitude; +2866:Src/main.c **** int32_t max_val = (int32_t)amplitude; +2867:Src/main.c **** int32_t span = max_val - min_val; +2868:Src/main.c **** if (triangle) +2869:Src/main.c **** { +2870:Src/main.c **** uint16_t half = samples / 2u; +2871:Src/main.c **** if (half == 0u) +2872:Src/main.c **** { +2873:Src/main.c **** half = 1u; +2874:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 114 + + +2875:Src/main.c **** if (i < half) +2876:Src/main.c **** { +2877:Src/main.c **** uint16_t denom = (half > 1u) ? (uint16_t)(half - 1u) : 1u; +2878:Src/main.c **** if (span == 0) +2879:Src/main.c **** { +2880:Src/main.c **** value = 0; +2881:Src/main.c **** } +2882:Src/main.c **** else +2883:Src/main.c **** { +2884:Src/main.c **** value = min_val + (span * (int32_t)i) / (int32_t)denom; +2885:Src/main.c **** } +2886:Src/main.c **** } +2887:Src/main.c **** else +2888:Src/main.c **** { +2889:Src/main.c **** uint16_t tail = (uint16_t)(samples - half); +2890:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; +2891:Src/main.c **** if (span == 0) +2892:Src/main.c **** { +2893:Src/main.c **** value = 0; +2894:Src/main.c **** } +2895:Src/main.c **** else +2896:Src/main.c **** { +2897:Src/main.c **** value = max_val - (span * (int32_t)(i - half)) / (int32_t)denom; +2898:Src/main.c **** } +2899:Src/main.c **** } +2900:Src/main.c **** } +2901:Src/main.c **** else +2902:Src/main.c **** { +2903:Src/main.c **** uint16_t denom = (samples > 1u) ? (uint16_t)(samples - 1u) : 1u; +2904:Src/main.c **** if (span == 0) +2905:Src/main.c **** { +2906:Src/main.c **** value = 0; +2907:Src/main.c **** } +2908:Src/main.c **** else +2909:Src/main.c **** { +2910:Src/main.c **** value = min_val + (span * (int32_t)i) / (int32_t)denom; +2911:Src/main.c **** } +2912:Src/main.c **** } +2913:Src/main.c **** +2914:Src/main.c **** if (value < -8192) +2915:Src/main.c **** { +2916:Src/main.c **** value = -8192; +2917:Src/main.c **** } +2918:Src/main.c **** else if (value > 8191) +2919:Src/main.c **** { +2920:Src/main.c **** value = 8191; +2921:Src/main.c **** } +2922:Src/main.c **** +2923:Src/main.c **** uint16_t sample_u14 = (uint16_t)((int16_t)value) & 0x3FFFu; +2924:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); +2925:Src/main.c **** AD9102_WriteReg((uint16_t)(AD9102_REG_SRAM_DATA_BASE + i), word); +2926:Src/main.c **** } +2927:Src/main.c **** +2928:Src/main.c **** // Disable SRAM access. +2929:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); +2930:Src/main.c **** } +2931:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 115 + + +2932:Src/main.c **** static uint16_t AD9102_ApplySram(uint8_t enable, uint16_t samples, uint8_t hold, uint8_t triangle, +2933:Src/main.c **** { +2934:Src/main.c **** if (samples == 0u) +2935:Src/main.c **** { +2936:Src/main.c **** samples = AD9102_SRAM_SAMPLES_DEFAULT; +2937:Src/main.c **** } +2938:Src/main.c **** if (samples < 2u) +2939:Src/main.c **** { +2940:Src/main.c **** samples = 2u; +2941:Src/main.c **** } +2942:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) +2943:Src/main.c **** { +2944:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; +2945:Src/main.c **** } +2946:Src/main.c **** if (hold == 0u) +2947:Src/main.c **** { +2948:Src/main.c **** hold = AD9102_SRAM_HOLD_DEFAULT; +2949:Src/main.c **** } +2950:Src/main.c **** if (hold > 0x0Fu) +2951:Src/main.c **** { +2952:Src/main.c **** hold = 0x0Fu; +2953:Src/main.c **** } +2954:Src/main.c **** +2955:Src/main.c **** if (amplitude > AD9102_SRAM_AMP_DEFAULT) +2956:Src/main.c **** { +2957:Src/main.c **** amplitude = AD9102_SRAM_AMP_DEFAULT; +2958:Src/main.c **** } +2959:Src/main.c **** +2960:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((uint16_t)(hold & 0x0Fu) << 8) | +2961:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | +2962:Src/main.c **** (AD9102_SRAM_START_DELAY_BASE_DEFAULT & 0x0Fu)); +2963:Src/main.c **** uint32_t pat_period = (uint32_t)samples * (uint32_t)(hold & 0x0Fu); +2964:Src/main.c **** if (pat_period == 0u) +2965:Src/main.c **** { +2966:Src/main.c **** pat_period = samples; +2967:Src/main.c **** } +2968:Src/main.c **** if (pat_period > 0xFFFFu) +2969:Src/main.c **** { +2970:Src/main.c **** pat_period = 0xFFFFu; +2971:Src/main.c **** } +2972:Src/main.c **** +2973:Src/main.c **** AD9102_WriteRegTable(ad9102_example2_regval, AD9102_REG_COUNT); +2974:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); +2975:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX2_WAV_CONFIG); +2976:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, AD9102_EX2_SAW_CONFIG); +2977:Src/main.c **** AD9102_WriteReg(AD9102_REG_DAC_PAT, AD9102_EX2_DAC_PAT); +2978:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); +2979:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, (uint16_t)pat_period); +2980:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat +2981:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_DLY, AD9102_SRAM_START_DLY_DEFAULT); +2982:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_ADDR, 0x0000u); +2983:Src/main.c **** AD9102_WriteReg(AD9102_REG_STOP_ADDR, (uint16_t)((samples - 1u) << 4)); +2984:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); +2985:Src/main.c **** +2986:Src/main.c **** AD9102_LoadSramRamp(samples, triangle, amplitude); +2987:Src/main.c **** +2988:Src/main.c **** if (enable) + ARM GAS /tmp/ccEQxcUB.s page 116 + + +2989:Src/main.c **** { +2990:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +2991:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); +2992:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); +2993:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} +2994:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); +2995:Src/main.c **** } +2996:Src/main.c **** else +2997:Src/main.c **** { +2998:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); +2999:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); +3000:Src/main.c **** } +3001:Src/main.c **** +3002:Src/main.c **** return AD9102_ReadReg(AD9102_REG_PAT_STATUS); +3003:Src/main.c **** } +3004:Src/main.c **** +3005:Src/main.c **** static uint8_t AD9102_CheckFlags(uint16_t pat_status, uint8_t expect_run, uint8_t saw_type, uint8_t +3006:Src/main.c **** { +3007:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); +3008:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); +3009:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); +3010:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); +3011:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | +3012:Src/main.c **** ((pat_base & 0x0Fu) << 4) | +3013:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); +3014:Src/main.c **** +3015:Src/main.c **** if (saw_step == 0u) +3016:Src/main.c **** { +3017:Src/main.c **** saw_step = AD9102_SAW_STEP_DEFAULT; +3018:Src/main.c **** } +3019:Src/main.c **** if (saw_step > 63u) +3020:Src/main.c **** { +3021:Src/main.c **** saw_step = 63u; +3022:Src/main.c **** } +3023:Src/main.c **** if (pat_period == 0u) +3024:Src/main.c **** { +3025:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; +3026:Src/main.c **** } +3027:Src/main.c **** uint16_t expect_saw = (uint16_t)(((uint16_t)(saw_step & 0x3Fu) << 2) | +3028:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); +3029:Src/main.c **** +3030:Src/main.c **** uint8_t ok = 1u; +3031:Src/main.c **** +3032:Src/main.c **** // Expect default SPI config: MSB-first, 4-wire, no double SPI, no reset. +3033:Src/main.c **** if (spiconfig != 0x0000u) +3034:Src/main.c **** { +3035:Src/main.c **** ok = 0u; +3036:Src/main.c **** } +3037:Src/main.c **** +3038:Src/main.c **** // Power blocks should not be powered down. +3039:Src/main.c **** if (powercfg & ((1u << 8) | (1u << 7) | (1u << 6) | (1u << 5) | (1u << 3))) +3040:Src/main.c **** { +3041:Src/main.c **** ok = 0u; +3042:Src/main.c **** } +3043:Src/main.c **** +3044:Src/main.c **** // Clock receiver must be enabled (cannot directly detect external clock presence). +3045:Src/main.c **** if (clockcfg & ((1u << 11) | (1u << 7) | (1u << 6) | (1u << 5))) + ARM GAS /tmp/ccEQxcUB.s page 117 + + +3046:Src/main.c **** { +3047:Src/main.c **** ok = 0u; +3048:Src/main.c **** } +3049:Src/main.c **** +3050:Src/main.c **** // Any configuration error flags indicate a bad setup. +3051:Src/main.c **** if (cfg_err & 0x003Fu) +3052:Src/main.c **** { +3053:Src/main.c **** ok = 0u; +3054:Src/main.c **** } +3055:Src/main.c **** +3056:Src/main.c **** if (expect_run && ((pat_status & AD9102_PAT_STATUS_RUN) == 0u)) +3057:Src/main.c **** { +3058:Src/main.c **** ok = 0u; +3059:Src/main.c **** } +3060:Src/main.c **** +3061:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_WAV_CONFIG) != AD9102_EX4_WAV_CONFIG) +3062:Src/main.c **** { +3063:Src/main.c **** ok = 0u; +3064:Src/main.c **** } +3065:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TIMEBASE) != pat_timebase) +3066:Src/main.c **** { +3067:Src/main.c **** ok = 0u; +3068:Src/main.c **** } +3069:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_PERIOD) != pat_period) +3070:Src/main.c **** { +3071:Src/main.c **** ok = 0u; +3072:Src/main.c **** } +3073:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TYPE) != 0x0000u) +3074:Src/main.c **** { +3075:Src/main.c **** ok = 0u; +3076:Src/main.c **** } +3077:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_SAW_CONFIG) != expect_saw) +3078:Src/main.c **** { +3079:Src/main.c **** ok = 0u; +3080:Src/main.c **** } +3081:Src/main.c **** +3082:Src/main.c **** return (ok ? 0u : 1u); +3083:Src/main.c **** } +3084:Src/main.c **** +3085:Src/main.c **** static uint8_t AD9102_CheckFlagsSram(uint16_t pat_status, uint8_t expect_run, uint16_t samples, uin +3086:Src/main.c **** { +3087:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); +3088:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); +3089:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); +3090:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); +3091:Src/main.c **** +3092:Src/main.c **** if (samples == 0u) +3093:Src/main.c **** { +3094:Src/main.c **** samples = AD9102_SRAM_SAMPLES_DEFAULT; +3095:Src/main.c **** } +3096:Src/main.c **** if (samples < 2u) +3097:Src/main.c **** { +3098:Src/main.c **** samples = 2u; +3099:Src/main.c **** } +3100:Src/main.c **** if (samples > AD9102_SRAM_MAX_SAMPLES) +3101:Src/main.c **** { +3102:Src/main.c **** samples = AD9102_SRAM_MAX_SAMPLES; + ARM GAS /tmp/ccEQxcUB.s page 118 + + +3103:Src/main.c **** } +3104:Src/main.c **** if (hold == 0u) +3105:Src/main.c **** { +3106:Src/main.c **** hold = AD9102_SRAM_HOLD_DEFAULT; +3107:Src/main.c **** } +3108:Src/main.c **** if (hold > 0x0Fu) +3109:Src/main.c **** { +3110:Src/main.c **** hold = 0x0Fu; +3111:Src/main.c **** } +3112:Src/main.c **** +3113:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((uint16_t)(hold & 0x0Fu) << 8) | +3114:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | +3115:Src/main.c **** (AD9102_SRAM_START_DELAY_BASE_DEFAULT & 0x0Fu)); +3116:Src/main.c **** uint32_t pat_period = (uint32_t)samples * (uint32_t)(hold & 0x0Fu); +3117:Src/main.c **** if (pat_period == 0u) +3118:Src/main.c **** { +3119:Src/main.c **** pat_period = samples; +3120:Src/main.c **** } +3121:Src/main.c **** if (pat_period > 0xFFFFu) +3122:Src/main.c **** { +3123:Src/main.c **** pat_period = 0xFFFFu; +3124:Src/main.c **** } +3125:Src/main.c **** +3126:Src/main.c **** uint16_t stop_addr = (uint16_t)((samples - 1u) << 4); +3127:Src/main.c **** +3128:Src/main.c **** uint8_t ok = 1u; +3129:Src/main.c **** +3130:Src/main.c **** if (spiconfig != 0x0000u) +3131:Src/main.c **** { +3132:Src/main.c **** ok = 0u; +3133:Src/main.c **** } +3134:Src/main.c **** if (powercfg & ((1u << 8) | (1u << 7) | (1u << 6) | (1u << 5) | (1u << 3))) +3135:Src/main.c **** { +3136:Src/main.c **** ok = 0u; +3137:Src/main.c **** } +3138:Src/main.c **** if (clockcfg & ((1u << 11) | (1u << 7) | (1u << 6) | (1u << 5))) +3139:Src/main.c **** { +3140:Src/main.c **** ok = 0u; +3141:Src/main.c **** } +3142:Src/main.c **** if (cfg_err & 0x003Fu) +3143:Src/main.c **** { +3144:Src/main.c **** ok = 0u; +3145:Src/main.c **** } +3146:Src/main.c **** if (expect_run && ((pat_status & AD9102_PAT_STATUS_RUN) == 0u)) +3147:Src/main.c **** { +3148:Src/main.c **** ok = 0u; +3149:Src/main.c **** } +3150:Src/main.c **** +3151:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_WAV_CONFIG) != AD9102_EX2_WAV_CONFIG) +3152:Src/main.c **** { +3153:Src/main.c **** ok = 0u; +3154:Src/main.c **** } +3155:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TIMEBASE) != pat_timebase) +3156:Src/main.c **** { +3157:Src/main.c **** ok = 0u; +3158:Src/main.c **** } +3159:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_PERIOD) != (uint16_t)pat_period) + ARM GAS /tmp/ccEQxcUB.s page 119 + + +3160:Src/main.c **** { +3161:Src/main.c **** ok = 0u; +3162:Src/main.c **** } +3163:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_PAT_TYPE) != 0x0000u) +3164:Src/main.c **** { +3165:Src/main.c **** ok = 0u; +3166:Src/main.c **** } +3167:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_START_ADDR) != 0x0000u) +3168:Src/main.c **** { +3169:Src/main.c **** ok = 0u; +3170:Src/main.c **** } +3171:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_STOP_ADDR) != stop_addr) +3172:Src/main.c **** { +3173:Src/main.c **** ok = 0u; +3174:Src/main.c **** } +3175:Src/main.c **** if (AD9102_ReadReg(AD9102_REG_DAC_PAT) != AD9102_EX2_DAC_PAT) +3176:Src/main.c **** { +3177:Src/main.c **** ok = 0u; +3178:Src/main.c **** } +3179:Src/main.c **** +3180:Src/main.c **** return (ok ? 0u : 1u); +3181:Src/main.c **** } +3182:Src/main.c **** +3183:Src/main.c **** void Set_LTEC(uint8_t num, uint16_t DATA) +3184:Src/main.c **** { +3185:Src/main.c **** uint32_t tmp32; +3186:Src/main.c **** +3187:Src/main.c **** if (num == 1 || num == 3) +3188:Src/main.c **** { +3189:Src/main.c **** SPI2_SetMode(LL_SPI_POLARITY_HIGH, LL_SPI_PHASE_2EDGE); +3190:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); +3191:Src/main.c **** } +3192:Src/main.c **** +3193:Src/main.c **** switch (num) +3194:Src/main.c **** { +3195:Src/main.c **** case 1: +3196:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_RESET);//Start operation with L +3197:Src/main.c **** //tmp32=0; +3198:Src/main.c **** //while(tmp32<500){tmp32++;} +3199:Src/main.c **** tmp32 = 0; +3200:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi +3201:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC +3202:Src/main.c **** tmp32 = 0; +3203:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w +3204:Src/main.c **** (void) SPI2->DR; +3205:Src/main.c **** break; +3206:Src/main.c **** case 2: +3207:Src/main.c **** //HAL_GPIO_TogglePin(OUT_11_GPIO_Port, OUT_11_Pin); //for debug purposes +3208:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_RESET);//Start operation with L +3209:Src/main.c **** //tmp32=0; +3210:Src/main.c **** //while(tmp32<500){tmp32++;} +3211:Src/main.c **** tmp32 = 0; +3212:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi +3213:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC +3214:Src/main.c **** tmp32 = 0; +3215:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w +3216:Src/main.c **** (void) SPI6->DR; + ARM GAS /tmp/ccEQxcUB.s page 120 + + +3217:Src/main.c **** break; +3218:Src/main.c **** case 3: +3219:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_RESET);//Start operation with +3220:Src/main.c **** //tmp32=0; +3221:Src/main.c **** //while(tmp32<500){tmp32++;} +3222:Src/main.c **** tmp32 = 0; +3223:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi +3224:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC +3225:Src/main.c **** tmp32 = 0; +3226:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w +3227:Src/main.c **** (void) SPI2->DR; +3228:Src/main.c **** break; +3229:Src/main.c **** case 4: +3230:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_RESET);//Start operation with +3231:Src/main.c **** //tmp32=0; +3232:Src/main.c **** //while(tmp32<500){tmp32++;} +3233:Src/main.c **** tmp32 = 0; +3234:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi +3235:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC +3236:Src/main.c **** tmp32 = 0; +3237:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w +3238:Src/main.c **** (void) SPI6->DR; +3239:Src/main.c **** break; +3240:Src/main.c **** } +3241:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET);//End operation with LDAC1 +3242:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 +3243:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 +3244:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 +3245:Src/main.c **** } +3246:Src/main.c **** static uint16_t MPhD_T(uint8_t num) +3247:Src/main.c **** { +3248:Src/main.c **** uint16_t P; +3249:Src/main.c **** uint32_t tmp32; +3250:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion +3251:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion +3252:Src/main.c **** tmp32=0; +3253:Src/main.c **** while(tmp32<500){tmp32++;} +3254:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver +3255:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver +3256:Src/main.c **** tmp32=0; +3257:Src/main.c **** while(tmp32<500){tmp32++;} +3258:Src/main.c **** if (num==1)//MPD1 +3259:Src/main.c **** { +3260:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_SET); +3261:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); +3262:Src/main.c **** tmp32=0; +3263:Src/main.c **** while(tmp32<500){tmp32++;} +3264:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c +3265:Src/main.c **** LL_SPI_Enable(SPI4);//Enable SPI for MPhD1 ADC +3266:Src/main.c **** tmp32 = 0; +3267:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w +3268:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC +3269:Src/main.c **** while(tmp32<500){tmp32++;} +3270:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); +3271:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_SET); +3272:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); +3273:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 121 + + +3274:Src/main.c **** else if (num==2)//MPD2 +3275:Src/main.c **** { +3276:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_SET); +3277:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_RESET); +3278:Src/main.c **** tmp32=0; +3279:Src/main.c **** while(tmp32<500){tmp32++;} +3280:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c +3281:Src/main.c **** LL_SPI_Enable(SPI5);//Enable SPI for MPhD2 ADC +3282:Src/main.c **** tmp32 = 0; +3283:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w +3284:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC +3285:Src/main.c **** while(tmp32<500){tmp32++;} +3286:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); +3287:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET); +3288:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); +3289:Src/main.c **** } +3290:Src/main.c **** else if (num==3)//ThrLD1 +3291:Src/main.c **** { +3292:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_SET); +3293:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); +3294:Src/main.c **** tmp32=0; +3295:Src/main.c **** while(tmp32<500){tmp32++;} +3296:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c +3297:Src/main.c **** LL_SPI_Enable(SPI4);//Enable SPI for ThrLD1 ADC +3298:Src/main.c **** tmp32 = 0; +3299:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w +3300:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC +3301:Src/main.c **** while(tmp32<500){tmp32++;} +3302:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); +3303:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_SET); +3304:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); +3305:Src/main.c **** } +3306:Src/main.c **** else if (num==4)//ThrLD2 +3307:Src/main.c **** { +3308:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET); +3309:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_RESET); +3310:Src/main.c **** tmp32=0; +3311:Src/main.c **** while(tmp32<500){tmp32++;} +3312:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c +3313:Src/main.c **** LL_SPI_Enable(SPI5);//Enable SPI for ThrLD2 ADC +3314:Src/main.c **** tmp32 = 0; +3315:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w +3316:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC +3317:Src/main.c **** while(tmp32<500){tmp32++;} +3318:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); +3319:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_SET); +3320:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); +3321:Src/main.c **** } +3322:Src/main.c **** /*float I_LD, Ith, I0m, T0m, Inorm, Tnorm1, Tnorm2, P, T_C, A, Pnorm; +3323:Src/main.c **** +3324:Src/main.c **** Inorm = (float) (65535) / (float) (100); +3325:Src/main.c **** Tnorm1 = (float) (65535) / (float) (50); +3326:Src/main.c **** Tnorm2 = 4; +3327:Src/main.c **** Pnorm = (float)(65535) / (float)(20); +3328:Src/main.c **** I0m = 8.1568;//@4 C - lowest temperature of system +3329:Src/main.c **** T0m = 48.6282; +3330:Src/main.c **** T_C = (float) (T_LD) / Tnorm1 + Tnorm2; + ARM GAS /tmp/ccEQxcUB.s page 122 + + +3331:Src/main.c **** +3332:Src/main.c **** Ith = I0m * expf(T_C/T0m); +3333:Src/main.c **** I_LD = (float) (C_LD) / Inorm; +3334:Src/main.c **** +3335:Src/main.c **** if (I_LD > Ith) +3336:Src/main.c **** { +3337:Src/main.c **** A = (float) (2.24276128270098e-07) * T_C * T_C * T_C - (float) (4.73392579025590e-05) * T_C * T_ +3338:Src/main.c **** P = A * (I_LD - Ith) * Pnorm; +3339:Src/main.c **** } +3340:Src/main.c **** else +3341:Src/main.c **** { +3342:Src/main.c **** P = 0; +3343:Src/main.c **** } */ +3344:Src/main.c **** return P; +3345:Src/main.c **** } +3346:Src/main.c **** /*static uint16_t Temp_LD(uint16_t T_LD_before, uint16_t T_LD, uint32_t Timer_before, uint32_t Time +3347:Src/main.c **** { +3348:Src/main.c **** uint16_t Result; +3349:Src/main.c **** // uint8_t randf; +3350:Src/main.c **** +3351:Src/main.c **** randf = 0; +3352:Src/main.c **** for (uint8_t i = 0; i < 32; i++) +3353:Src/main.c **** { +3354:Src/main.c **** randf = ((Timer>>i)&0x0001)^randf; +3355:Src/main.c **** } +3356:Src/main.c **** +3357:Src/main.c **** Result = ((float)(T_LD - T_LD_before))*((float)(1-expf(((float)(Timer_before)-(float)(Timer))/((fl +3358:Src/main.c **** +3359:Src/main.c **** return (uint16_t)(Result); +3360:Src/main.c **** }*/ +3361:Src/main.c **** static uint16_t Get_ADC(uint8_t num) +3362:Src/main.c **** { +3363:Src/main.c **** uint16_t OUT; +3364:Src/main.c **** switch (num) +3365:Src/main.c **** { +3366:Src/main.c **** case 0: +3367:Src/main.c **** HAL_ADC_Start(&hadc1); // Power on +3368:Src/main.c **** break; +3369:Src/main.c **** case 1: +3370:Src/main.c **** HAL_ADC_PollForConversion(&hadc1, 100); // Waiting for conversion +3371:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc +3372:Src/main.c **** break; +3373:Src/main.c **** case 2: +3374:Src/main.c **** HAL_ADC_Stop(&hadc1); // Power off +3375:Src/main.c **** break; +3376:Src/main.c **** case 3: +3377:Src/main.c **** HAL_ADC_Start(&hadc3); // Power on +3378:Src/main.c **** break; +3379:Src/main.c **** case 4: +3380:Src/main.c **** HAL_ADC_PollForConversion(&hadc3, 100); // Waiting for conversion +3381:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc +3382:Src/main.c **** break; +3383:Src/main.c **** case 5: +3384:Src/main.c **** HAL_ADC_Stop(&hadc3); // Power off +3385:Src/main.c **** break; +3386:Src/main.c **** } +3387:Src/main.c **** return OUT; + ARM GAS /tmp/ccEQxcUB.s page 123 + + +3388:Src/main.c **** } +3389:Src/main.c **** +3390:Src/main.c **** uint16_t Advanced_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_results +3391:Src/main.c **** { +3392:Src/main.c **** // Main idea: +3393:Src/main.c **** // I is responsible to maintaining constant temperature difference between laser and room temperat +3394:Src/main.c **** // As room temperature can be approximated as constant at current-varying time -- I should be kept +3395:Src/main.c **** // As current through laser diode heats it -- we can estimate excessive power on laser diode and t +3396:Src/main.c **** // So, equation should be look like this: +3397:Src/main.c **** // x_output = x_output_original + I(laser)*(a + (t - b)c) +3398:Src/main.c **** // t -- cycle phase +3399:Src/main.c **** // a,b,c -- constants +3400:Src/main.c **** // +3401:Src/main.c **** // How can we control laser diode temperature? +3402:Src/main.c **** // -- We can set laser to fixed current at the time we need to measure. +3403:Src/main.c **** // Then we should measure wavelength. +3404:Src/main.c **** // Calibration sequence: +3405:Src/main.c **** // 1) n +3406:Src/main.c **** +3407:Src/main.c **** +3408:Src/main.c **** +3409:Src/main.c **** int e_pid; +3410:Src/main.c **** float P_coef_current;//, I_coef_current; +3411:Src/main.c **** float e_integral; +3412:Src/main.c **** int x_output; +3413:Src/main.c **** +3414:Src/main.c **** e_pid = (int) LDx_results->LD_CURR_TEMP - (int) LDx_curr_setup->LD_TEMP; +3415:Src/main.c **** +3416:Src/main.c **** e_integral = LDx_results->e_integral; +3417:Src/main.c **** +3418:Src/main.c **** if((e_pid < 3000) && (e_pid > - 3000)){ +3419:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 +3420:Src/main.c **** } +3421:Src/main.c **** P_coef_current = LDx_curr_setup->P_coef_temp; +3422:Src/main.c **** +3423:Src/main.c **** if (e_integral > 32000){ +3424:Src/main.c **** e_integral = 32000; +3425:Src/main.c **** } +3426:Src/main.c **** else if (e_integral < - 32000){ +3427:Src/main.c **** e_integral = -32000; +3428:Src/main.c **** } +3429:Src/main.c **** LDx_results->e_integral = e_integral; +3430:Src/main.c **** +3431:Src/main.c **** x_output = 32768 + P_coef_current * e_pid + (int)e_integral;//32768 - P_coef_current * e_pid - (in +3432:Src/main.c **** +3433:Src/main.c **** if(x_output < 1000){ +3434:Src/main.c **** x_output = 8800; +3435:Src/main.c **** } +3436:Src/main.c **** else if(x_output > 56800){ +3437:Src/main.c **** x_output = 56800; +3438:Src/main.c **** } +3439:Src/main.c **** +3440:Src/main.c **** if (num==2) +3441:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser +3442:Src/main.c **** +3443:Src/main.c **** return (uint16_t)x_output; +3444:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 124 + + +3445:Src/main.c **** +3446:Src/main.c **** +3447:Src/main.c **** uint16_t PID_Controller_Temp(LDx_SetupTypeDef * LDx_curr_setup, LDx_ParamTypeDef * LDx_results, uin +3448:Src/main.c **** { + 663 .loc 1 3448 1 is_stmt 1 view -0 + 664 .cfi_startproc + 665 @ args = 0, pretend = 0, frame = 0 + 666 @ frame_needed = 0, uses_anonymous_args = 0 + 667 @ link register save eliminated. + 668 .loc 1 3448 1 is_stmt 0 view .LVU233 + 669 0000 30B4 push {r4, r5} + 670 .LCFI6: + 671 .cfi_def_cfa_offset 8 + 672 .cfi_offset 4, -8 + 673 .cfi_offset 5, -4 +3449:Src/main.c **** int e_pid; + 674 .loc 1 3449 2 is_stmt 1 view .LVU234 +3450:Src/main.c **** float P_coef_current;//, I_coef_current; + 675 .loc 1 3450 2 view .LVU235 +3451:Src/main.c **** float e_integral; + 676 .loc 1 3451 2 view .LVU236 +3452:Src/main.c **** int x_output; + 677 .loc 1 3452 2 view .LVU237 +3453:Src/main.c **** +3454:Src/main.c **** e_pid = (int) LDx_results->LD_CURR_TEMP - (int) LDx_curr_setup->LD_TEMP; + 678 .loc 1 3454 2 view .LVU238 + 679 .loc 1 3454 28 is_stmt 0 view .LVU239 + 680 0002 0B88 ldrh r3, [r1] + 681 .loc 1 3454 65 view .LVU240 + 682 0004 0488 ldrh r4, [r0] + 683 .loc 1 3454 8 view .LVU241 + 684 0006 1B1B subs r3, r3, r4 + 685 .LVL43: +3455:Src/main.c **** +3456:Src/main.c **** e_integral = LDx_results->e_integral; + 686 .loc 1 3456 2 is_stmt 1 view .LVU242 + 687 .loc 1 3456 13 is_stmt 0 view .LVU243 + 688 0008 D1ED017A vldr.32 s15, [r1, #4] + 689 .LVL44: +3457:Src/main.c **** +3458:Src/main.c **** if((e_pid < 3000) && (e_pid > - 3000)){ + 690 .loc 1 3458 2 is_stmt 1 view .LVU244 + 691 .loc 1 3458 20 is_stmt 0 view .LVU245 + 692 000c 03F6B73C addw ip, r3, #2999 + 693 .loc 1 3458 4 view .LVU246 + 694 0010 41F26E74 movw r4, #5998 + 695 0014 A445 cmp ip, r4 + 696 0016 18D8 bhi .L22 +3459:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 + 697 .loc 1 3459 3 is_stmt 1 view .LVU247 + 698 .loc 1 3459 31 is_stmt 0 view .LVU248 + 699 0018 90ED027A vldr.32 s14, [r0, #8] + 700 .loc 1 3459 47 view .LVU249 + 701 001c 06EE903A vmov s13, r3 @ int + 702 0020 F8EEE66A vcvt.f32.s32 s13, s13 + 703 .loc 1 3459 45 view .LVU250 + 704 0024 27EE267A vmul.f32 s14, s14, s13 + ARM GAS /tmp/ccEQxcUB.s page 125 + + + 705 .loc 1 3459 76 view .LVU251 + 706 0028 284C ldr r4, .L32 + 707 002a 2468 ldr r4, [r4] + 708 002c 284D ldr r5, .L32+4 + 709 002e 2D68 ldr r5, [r5] + 710 0030 641B subs r4, r4, r5 + 711 .loc 1 3459 64 view .LVU252 + 712 0032 06EE904A vmov s13, r4 @ int + 713 0036 F8EE666A vcvt.f32.u32 s13, s13 + 714 .loc 1 3459 62 view .LVU253 + 715 003a 27EE267A vmul.f32 s14, s14, s13 + 716 .loc 1 3459 87 view .LVU254 + 717 003e 9FED256A vldr.32 s12, .L32+8 + 718 0042 C7EE066A vdiv.f32 s13, s14, s12 + 719 .loc 1 3459 14 view .LVU255 + 720 0046 77EEA67A vadd.f32 s15, s15, s13 + 721 .LVL45: + 722 .L22: +3460:Src/main.c **** } +3461:Src/main.c **** P_coef_current = LDx_curr_setup->P_coef_temp; + 723 .loc 1 3461 2 is_stmt 1 view .LVU256 + 724 .loc 1 3461 17 is_stmt 0 view .LVU257 + 725 004a D0ED016A vldr.32 s13, [r0, #4] + 726 .LVL46: +3462:Src/main.c **** +3463:Src/main.c **** if (e_integral > 32000){ + 727 .loc 1 3463 2 is_stmt 1 view .LVU258 + 728 .loc 1 3463 5 is_stmt 0 view .LVU259 + 729 004e 9FED227A vldr.32 s14, .L32+12 + 730 0052 F4EEC77A vcmpe.f32 s15, s14 + 731 0056 F1EE10FA vmrs APSR_nzcv, FPSCR + 732 005a 09DC bgt .L26 +3464:Src/main.c **** e_integral = 32000; +3465:Src/main.c **** } +3466:Src/main.c **** else if (e_integral < - 32000){ + 733 .loc 1 3466 7 is_stmt 1 view .LVU260 + 734 .loc 1 3466 10 is_stmt 0 view .LVU261 + 735 005c 9FED1F7A vldr.32 s14, .L32+16 + 736 0060 F4EEC77A vcmpe.f32 s15, s14 + 737 0064 F1EE10FA vmrs APSR_nzcv, FPSCR + 738 0068 04D5 bpl .L23 +3467:Src/main.c **** e_integral = -32000; + 739 .loc 1 3467 15 view .LVU262 + 740 006a DFED1C7A vldr.32 s15, .L32+16 + 741 .LVL47: + 742 .loc 1 3467 15 view .LVU263 + 743 006e 01E0 b .L23 + 744 .LVL48: + 745 .L26: +3464:Src/main.c **** e_integral = 32000; + 746 .loc 1 3464 15 view .LVU264 + 747 0070 DFED197A vldr.32 s15, .L32+12 + 748 .LVL49: + 749 .L23: +3468:Src/main.c **** } +3469:Src/main.c **** LDx_results->e_integral = e_integral; + 750 .loc 1 3469 2 is_stmt 1 view .LVU265 + ARM GAS /tmp/ccEQxcUB.s page 126 + + + 751 .loc 1 3469 26 is_stmt 0 view .LVU266 + 752 0074 C1ED017A vstr.32 s15, [r1, #4] +3470:Src/main.c **** +3471:Src/main.c **** x_output = 32768 + P_coef_current * e_pid + (int)e_integral;//32768 - P_coef_current * e_pid - (in + 753 .loc 1 3471 2 is_stmt 1 view .LVU267 + 754 .loc 1 3471 36 is_stmt 0 view .LVU268 + 755 0078 07EE103A vmov s14, r3 @ int + 756 007c B8EEC77A vcvt.f32.s32 s14, s14 + 757 0080 27EE267A vmul.f32 s14, s14, s13 + 758 .loc 1 3471 19 view .LVU269 + 759 0084 DFED166A vldr.32 s13, .L32+20 + 760 .LVL50: + 761 .loc 1 3471 19 view .LVU270 + 762 0088 37EE267A vadd.f32 s14, s14, s13 + 763 .loc 1 3471 46 view .LVU271 + 764 008c FDEEE77A vcvt.s32.f32 s15, s15 + 765 .LVL51: + 766 .loc 1 3471 44 view .LVU272 + 767 0090 F8EEE77A vcvt.f32.s32 s15, s15 + 768 0094 77EE877A vadd.f32 s15, s15, s14 + 769 .loc 1 3471 11 view .LVU273 + 770 0098 FDEEE77A vcvt.s32.f32 s15, s15 + 771 009c 17EE900A vmov r0, s15 @ int + 772 .LVL52: +3472:Src/main.c **** +3473:Src/main.c **** if(x_output < 1000){ + 773 .loc 1 3473 2 is_stmt 1 view .LVU274 + 774 .loc 1 3473 4 is_stmt 0 view .LVU275 + 775 00a0 B0F57A7F cmp r0, #1000 + 776 00a4 06DB blt .L28 +3474:Src/main.c **** x_output = 8800; +3475:Src/main.c **** } +3476:Src/main.c **** else if(x_output > 56800){ + 777 .loc 1 3476 7 is_stmt 1 view .LVU276 + 778 .loc 1 3476 9 is_stmt 0 view .LVU277 + 779 00a6 4DF6E053 movw r3, #56800 + 780 .LVL53: + 781 .loc 1 3476 9 view .LVU278 + 782 00aa 9842 cmp r0, r3 + 783 00ac 04DD ble .L24 +3477:Src/main.c **** x_output = 56800; + 784 .loc 1 3477 12 view .LVU279 + 785 00ae 4DF6E050 movw r0, #56800 + 786 .LVL54: + 787 .loc 1 3477 12 view .LVU280 + 788 00b2 01E0 b .L24 + 789 .LVL55: + 790 .L28: +3474:Src/main.c **** x_output = 8800; + 791 .loc 1 3474 12 view .LVU281 + 792 00b4 42F26020 movw r0, #8800 + 793 .LVL56: + 794 .L24: +3478:Src/main.c **** } +3479:Src/main.c **** +3480:Src/main.c **** if (num==2) + 795 .loc 1 3480 2 is_stmt 1 view .LVU282 + ARM GAS /tmp/ccEQxcUB.s page 127 + + + 796 .loc 1 3480 5 is_stmt 0 view .LVU283 + 797 00b8 022A cmp r2, #2 + 798 00ba 02D0 beq .L31 + 799 .LVL57: + 800 .L25: +3481:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser +3482:Src/main.c **** +3483:Src/main.c **** return (uint16_t)x_output; + 801 .loc 1 3483 2 is_stmt 1 view .LVU284 +3484:Src/main.c **** } + 802 .loc 1 3484 1 is_stmt 0 view .LVU285 + 803 00bc 80B2 uxth r0, r0 + 804 .LVL58: + 805 .loc 1 3484 1 view .LVU286 + 806 00be 30BC pop {r4, r5} + 807 .LCFI7: + 808 .cfi_remember_state + 809 .cfi_restore 5 + 810 .cfi_restore 4 + 811 .cfi_def_cfa_offset 0 + 812 00c0 7047 bx lr + 813 .LVL59: + 814 .L31: + 815 .LCFI8: + 816 .cfi_restore_state +3481:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser + 817 .loc 1 3481 3 is_stmt 1 view .LVU287 +3481:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser + 818 .loc 1 3481 11 is_stmt 0 view .LVU288 + 819 00c2 024B ldr r3, .L32 + 820 00c4 1A68 ldr r2, [r3] + 821 .LVL60: +3481:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser + 822 .loc 1 3481 11 view .LVU289 + 823 00c6 024B ldr r3, .L32+4 + 824 00c8 1A60 str r2, [r3] + 825 00ca F7E7 b .L25 + 826 .L33: + 827 .align 2 + 828 .L32: + 829 00cc 00000000 .word TO7 + 830 00d0 00000000 .word TO7_PID + 831 00d4 0000C842 .word 1120403456 + 832 00d8 0000FA46 .word 1190789120 + 833 00dc 0000FAC6 .word -956694528 + 834 00e0 00000047 .word 1191182336 + 835 .cfi_endproc + 836 .LFE1229: + 838 .section .text.AD9102_WriteReg,"ax",%progbits + 839 .align 1 + 840 .syntax unified + 841 .thumb + 842 .thumb_func + 844 AD9102_WriteReg: + 845 .LVL61: + 846 .LFB1217: +2725:Src/main.c **** uint32_t tmp32 = 0; + ARM GAS /tmp/ccEQxcUB.s page 128 + + + 847 .loc 1 2725 1 is_stmt 1 view -0 + 848 .cfi_startproc + 849 @ args = 0, pretend = 0, frame = 0 + 850 @ frame_needed = 0, uses_anonymous_args = 0 +2725:Src/main.c **** uint32_t tmp32 = 0; + 851 .loc 1 2725 1 is_stmt 0 view .LVU291 + 852 0000 38B5 push {r3, r4, r5, lr} + 853 .LCFI9: + 854 .cfi_def_cfa_offset 16 + 855 .cfi_offset 3, -16 + 856 .cfi_offset 4, -12 + 857 .cfi_offset 5, -8 + 858 .cfi_offset 14, -4 + 859 0002 0C46 mov r4, r1 +2726:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address + 860 .loc 1 2726 2 is_stmt 1 view .LVU292 + 861 .LVL62: +2727:Src/main.c **** + 862 .loc 1 2727 2 view .LVU293 +2727:Src/main.c **** + 863 .loc 1 2727 11 is_stmt 0 view .LVU294 + 864 0004 C0F30E05 ubfx r5, r0, #0, #15 + 865 .LVL63: +2729:Src/main.c **** + 866 .loc 1 2729 2 is_stmt 1 view .LVU295 + 867 0008 0021 movs r1, #0 + 868 .LVL64: +2729:Src/main.c **** + 869 .loc 1 2729 2 is_stmt 0 view .LVU296 + 870 000a 0846 mov r0, r1 + 871 .LVL65: +2729:Src/main.c **** + 872 .loc 1 2729 2 view .LVU297 + 873 000c FFF7FEFF bl SPI2_SetMode + 874 .LVL66: +2731:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + 875 .loc 1 2731 2 is_stmt 1 view .LVU298 + 876 0010 0122 movs r2, #1 + 877 0012 4FF48041 mov r1, #16384 + 878 0016 2C48 ldr r0, .L49 + 879 0018 FFF7FEFF bl HAL_GPIO_WritePin + 880 .LVL67: +2732:Src/main.c **** + 881 .loc 1 2732 2 view .LVU299 + 882 001c 0122 movs r2, #1 + 883 001e 4FF48051 mov r1, #4096 + 884 0022 2A48 ldr r0, .L49+4 + 885 0024 FFF7FEFF bl HAL_GPIO_WritePin + 886 .LVL68: +2734:Src/main.c **** { + 887 .loc 1 2734 2 view .LVU300 + 888 .LBB371: + 889 .LBI371: + 381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 890 .loc 4 381 26 view .LVU301 + 891 .LBB372: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + ARM GAS /tmp/ccEQxcUB.s page 129 + + + 892 .loc 4 383 3 view .LVU302 + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 893 .loc 4 383 12 is_stmt 0 view .LVU303 + 894 0028 294B ldr r3, .L49+8 + 895 002a 1B68 ldr r3, [r3] + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 896 .loc 4 383 69 view .LVU304 + 897 002c 13F0400F tst r3, #64 + 898 0030 04D1 bne .L35 + 899 .LVL69: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 900 .loc 4 383 69 view .LVU305 + 901 .LBE372: + 902 .LBE371: +2736:Src/main.c **** } + 903 .loc 1 2736 3 is_stmt 1 view .LVU306 + 904 .LBB373: + 905 .LBI373: + 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 906 .loc 4 358 22 view .LVU307 + 907 .LBB374: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 908 .loc 4 360 3 view .LVU308 + 909 0032 274A ldr r2, .L49+8 + 910 0034 1368 ldr r3, [r2] + 911 0036 43F04003 orr r3, r3, #64 + 912 003a 1360 str r3, [r2] + 913 .LVL70: + 914 .L35: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 915 .loc 4 360 3 is_stmt 0 view .LVU309 + 916 .LBE374: + 917 .LBE373: +2739:Src/main.c **** + 918 .loc 1 2739 2 is_stmt 1 view .LVU310 + 919 003c 0022 movs r2, #0 + 920 003e 4FF48051 mov r1, #4096 + 921 0042 2148 ldr r0, .L49 + 922 0044 FFF7FEFF bl HAL_GPIO_WritePin + 923 .LVL71: +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 924 .loc 1 2741 2 view .LVU311 +2726:Src/main.c **** uint16_t cmd = (uint16_t)(addr & 0x7FFFu); // R/W = 0 (write), 15-bit address + 925 .loc 1 2726 11 is_stmt 0 view .LVU312 + 926 0048 0023 movs r3, #0 + 927 .LVL72: + 928 .L37: +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 929 .loc 1 2741 63 is_stmt 1 discriminator 2 view .LVU313 +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 930 .loc 1 2741 41 discriminator 2 view .LVU314 + 931 .LBB375: + 932 .LBI375: 487:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - ARM GAS /tmp/ccwR4KB7.s page 122 - - 488:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 489:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 490:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get clock polarity + ARM GAS /tmp/ccEQxcUB.s page 130 + + 491:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 CPOL LL_SPI_GetClockPolarity 492:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 493:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval Returned value can be one of the following values: @@ -7318,12 +7795,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 542:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 543:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Set transfer bit order 544:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @note This bit should not be changed when communication is ongoing. This bit is not used in S - ARM GAS /tmp/ccwR4KB7.s page 123 - - 545:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 LSBFIRST LL_SPI_SetTransferBitOrder 546:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 547:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param BitOrder This parameter can be one of the following values: + ARM GAS /tmp/ccEQxcUB.s page 131 + + 548:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_LSB_FIRST 549:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_MSB_FIRST 550:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None @@ -7378,12 +7855,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 599:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_HALF_DUPLEX_RX 600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_HALF_DUPLEX_TX 601:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 124 - - 602:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_GetTransferDirection(SPI_TypeDef *SPIx) 603:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 604:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return (uint32_t)(READ_BIT(SPIx->CR1, SPI_CR1_RXONLY | SPI_CR1_BIDIMODE | SPI_CR1_BIDIOE)); + ARM GAS /tmp/ccEQxcUB.s page 132 + + 605:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 606:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 607:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @@ -7438,12 +7915,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 656:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 657:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Set threshold of RXFIFO that triggers an RXNE event 658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 FRXTH LL_SPI_SetRxFIFOThreshold - ARM GAS /tmp/ccwR4KB7.s page 125 - - 659:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 660:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param Threshold This parameter can be one of the following values: 661:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_RX_FIFO_TH_HALF + ARM GAS /tmp/ccEQxcUB.s page 133 + + 662:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_RX_FIFO_TH_QUARTER 663:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None 664:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -7498,12 +7975,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 713:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 714:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 715:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 126 - - 716:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Check if CRC is enabled 717:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @note This bit should be written only when SPI is disabled (SPE = 0) for correct operation. 718:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR1 CRCEN LL_SPI_IsEnabledCRC + ARM GAS /tmp/ccEQxcUB.s page 134 + + 719:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 720:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval State of bit (1 or 0). 721:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ @@ -7558,12 +8035,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 770:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 771:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param CRCPoly This parameter must be a number between Min_Data = 0x00 and Max_Data = 0xFFFF 772:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 127 - - 773:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 774:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_SetCRCPolynomial(SPI_TypeDef *SPIx, uint32_t CRCPoly) 775:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + ARM GAS /tmp/ccEQxcUB.s page 135 + + 776:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** WRITE_REG(SPIx->CRCPR, (uint16_t)CRCPoly); 777:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 778:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** @@ -7618,12 +8095,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 827:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_NSS_SOFT 828:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_NSS_HARD_INPUT 829:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_NSS_HARD_OUTPUT - ARM GAS /tmp/ccwR4KB7.s page 128 - - 830:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None 831:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 832:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_SetNSSMode(SPI_TypeDef *SPIx, uint32_t NSS) + ARM GAS /tmp/ccEQxcUB.s page 136 + + 833:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 834:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** MODIFY_REG(SPIx->CR1, SPI_CR1_SSM, NSS); 835:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** MODIFY_REG(SPIx->CR2, SPI_CR2_SSOE, ((uint32_t)(NSS >> 16U))); @@ -7678,12 +8155,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 884:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval State of bit (1 or 0). 885:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 886:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_IsEnabledNSSPulse(SPI_TypeDef *SPIx) - ARM GAS /tmp/ccwR4KB7.s page 129 - - 887:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 888:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return ((READ_BIT(SPIx->CR2, SPI_CR2_NSSP) == (SPI_CR2_NSSP)) ? 1UL : 0UL); 889:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + ARM GAS /tmp/ccEQxcUB.s page 137 + + 890:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 891:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 892:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @} @@ -7711,42 +8188,42 @@ ARM GAS /tmp/ccwR4KB7.s page 1 914:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval State of bit (1 or 0). 915:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_IsActiveFlag_TXE(SPI_TypeDef *SPIx) - 799 .loc 4 916 26 view .LVU280 - 800 .LBB344: + 933 .loc 4 916 26 view .LVU315 + 934 .LBB376: 917:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return ((READ_BIT(SPIx->SR, SPI_SR_TXE) == (SPI_SR_TXE)) ? 1UL : 0UL); - 801 .loc 4 918 3 view .LVU281 - 802 .loc 4 918 12 is_stmt 0 view .LVU282 - 803 002a 1F4A ldr r2, .L44 - 804 002c 9268 ldr r2, [r2, #8] - 805 .loc 4 918 66 view .LVU283 - 806 002e 12F0020F tst r2, #2 - 807 0032 05D1 bne .L31 - 808 .LVL61: - 809 .loc 4 918 66 view .LVU284 - 810 .LBE344: - 811 .LBE343: -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 812 .loc 1 2476 50 discriminator 1 view .LVU285 - 813 0034 5A1C adds r2, r3, #1 - 814 .LVL62: -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 815 .loc 1 2476 41 discriminator 1 view .LVU286 - 816 0036 B3F57A7F cmp r3, #1000 - 817 003a 01D2 bcs .L31 -2476:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 818 .loc 1 2476 50 discriminator 1 view .LVU287 - 819 003c 1346 mov r3, r2 - 820 003e F4E7 b .L32 - ARM GAS /tmp/ccwR4KB7.s page 130 + 935 .loc 4 918 3 view .LVU316 + 936 .loc 4 918 12 is_stmt 0 view .LVU317 + 937 004a 214A ldr r2, .L49+8 + 938 004c 9268 ldr r2, [r2, #8] + 939 .loc 4 918 66 view .LVU318 + 940 004e 12F0020F tst r2, #2 + 941 0052 05D1 bne .L36 + 942 .LVL73: + 943 .loc 4 918 66 view .LVU319 + 944 .LBE376: + 945 .LBE375: +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 946 .loc 1 2741 50 discriminator 1 view .LVU320 + 947 0054 5A1C adds r2, r3, #1 + 948 .LVL74: +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 949 .loc 1 2741 41 discriminator 1 view .LVU321 + 950 0056 B3F57A7F cmp r3, #1000 + 951 005a 01D2 bcs .L36 +2741:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 952 .loc 1 2741 50 discriminator 1 view .LVU322 + 953 005c 1346 mov r3, r2 + 954 005e F4E7 b .L37 + 955 .LVL75: + 956 .L36: +2742:Src/main.c **** tmp32 = 0; + ARM GAS /tmp/ccEQxcUB.s page 138 - 821 .LVL63: - 822 .L31: -2477:Src/main.c **** tmp32 = 0; - 823 .loc 1 2477 2 is_stmt 1 view .LVU288 - 824 .LBB345: - 825 .LBI345: + 957 .loc 1 2742 2 is_stmt 1 view .LVU323 + 958 .LBB377: + 959 .LBI377: 919:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 920:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 921:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** @@ -7798,12 +8275,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 967:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_IsActiveFlag_BSY(SPI_TypeDef *SPIx) 968:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 969:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return ((READ_BIT(SPIx->SR, SPI_SR_BSY) == (SPI_SR_BSY)) ? 1UL : 0UL); - ARM GAS /tmp/ccwR4KB7.s page 131 - - 970:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 971:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 972:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 139 + + 973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get frame format error flag 974:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll SR FRE LL_SPI_IsActiveFlag_FRE 975:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance @@ -7858,12 +8335,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1024:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 1025:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Clear mode fault error flag 1026:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @note Clearing this flag is done by a read access to the SPIx_SR - ARM GAS /tmp/ccwR4KB7.s page 132 - - 1027:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * register followed by a write access to the SPIx_CR1 register 1028:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll SR MODF LL_SPI_ClearFlag_MODF 1029:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance + ARM GAS /tmp/ccEQxcUB.s page 140 + + 1030:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None 1031:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 1032:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_ClearFlag_MODF(SPI_TypeDef *SPIx) @@ -7918,12 +8395,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1081:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @note This bit controls the generation of an interrupt when an error condition occurs (CRCERR 1082:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 ERRIE LL_SPI_EnableIT_ERR 1083:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance - ARM GAS /tmp/ccwR4KB7.s page 133 - - 1084:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None 1085:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 1086:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_EnableIT_ERR(SPI_TypeDef *SPIx) + ARM GAS /tmp/ccEQxcUB.s page 141 + + 1087:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 1088:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** SET_BIT(SPIx->CR2, SPI_CR2_ERRIE); 1089:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } @@ -7978,12 +8455,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 TXEIE LL_SPI_DisableIT_TXE 1139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 1140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 134 - - 1141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 1142:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_DisableIT_TXE(SPI_TypeDef *SPIx) 1143:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + ARM GAS /tmp/ccEQxcUB.s page 142 + + 1144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** CLEAR_BIT(SPIx->CR2, SPI_CR2_TXEIE); 1145:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 1146:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** @@ -8038,12 +8515,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1195:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 1196:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** SET_BIT(SPIx->CR2, SPI_CR2_RXDMAEN); 1197:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - ARM GAS /tmp/ccwR4KB7.s page 135 - - 1198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 1199:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 1200:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Disable DMA Rx + ARM GAS /tmp/ccEQxcUB.s page 143 + + 1201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 RXDMAEN LL_SPI_DisableDMAReq_RX 1202:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 1203:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None @@ -8098,12 +8575,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1252:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } 1253:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** 1254:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 136 - - 1255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Set parity of Last DMA reception 1256:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll CR2 LDMARX LL_SPI_SetDMAParity_RX 1257:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance + ARM GAS /tmp/ccEQxcUB.s page 144 + + 1258:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param Parity This parameter can be one of the following values: 1259:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_DMA_PARITY_ODD 1260:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @arg @ref LL_SPI_DMA_PARITY_EVEN @@ -8158,12 +8635,12 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Get the data register address used for DMA transfer 1310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll DR DR LL_SPI_DMA_GetRegAddr 1311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance - ARM GAS /tmp/ccwR4KB7.s page 137 - - 1312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval Address of data register 1313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 1314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE uint32_t LL_SPI_DMA_GetRegAddr(SPI_TypeDef *SPIx) + ARM GAS /tmp/ccEQxcUB.s page 145 + + 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 1316:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** return (uint32_t) &(SPIx->DR); 1317:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } @@ -8218,4612 +8695,5081 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** /** 1367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @brief Write 16-Bits in the data register 1368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @rmtoll DR DR LL_SPI_TransmitData16 - ARM GAS /tmp/ccwR4KB7.s page 138 - - 1369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param SPIx SPI Instance 1370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @param TxData Value between Min_Data=0x00 and Max_Data=0xFFFF 1371:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 146 + + 1372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** */ 1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __STATIC_INLINE void LL_SPI_TransmitData16(SPI_TypeDef *SPIx, uint16_t TxData) - 826 .loc 4 1373 22 view .LVU289 - 827 .LBB346: + 960 .loc 4 1373 22 view .LVU324 + 961 .LBB378: 1374:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { 1375:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** #if defined (__GNUC__) 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** __IO uint16_t *spidr = ((__IO uint16_t *)&SPIx->DR); - 828 .loc 4 1376 3 view .LVU290 + 962 .loc 4 1376 3 view .LVU325 1377:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 829 .loc 4 1377 3 view .LVU291 - 830 .loc 4 1377 10 is_stmt 0 view .LVU292 - 831 0040 194B ldr r3, .L44 - 832 0042 9D81 strh r5, [r3, #12] @ movhi - 833 .LVL64: - 834 .loc 4 1377 10 view .LVU293 - 835 .LBE346: - 836 .LBE345: -2478:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 837 .loc 1 2478 2 is_stmt 1 view .LVU294 -2479:Src/main.c **** (void) SPI2->DR; - 838 .loc 1 2479 2 view .LVU295 -2478:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 839 .loc 1 2478 8 is_stmt 0 view .LVU296 - 840 0044 0023 movs r3, #0 - 841 .LVL65: - 842 .L34: -2479:Src/main.c **** (void) SPI2->DR; - 843 .loc 1 2479 64 is_stmt 1 discriminator 2 view .LVU297 -2479:Src/main.c **** (void) SPI2->DR; - 844 .loc 1 2479 42 discriminator 2 view .LVU298 - 845 .LBB347: - 846 .LBI347: + 963 .loc 4 1377 3 view .LVU326 + 964 .loc 4 1377 10 is_stmt 0 view .LVU327 + 965 0060 1B4B ldr r3, .L49+8 + 966 0062 9D81 strh r5, [r3, #12] @ movhi + 967 .LVL76: + 968 .loc 4 1377 10 view .LVU328 + 969 .LBE378: + 970 .LBE377: +2743:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 971 .loc 1 2743 2 is_stmt 1 view .LVU329 +2744:Src/main.c **** (void) SPI2->DR; + 972 .loc 1 2744 2 view .LVU330 +2743:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 973 .loc 1 2743 8 is_stmt 0 view .LVU331 + 974 0064 0023 movs r3, #0 + 975 .LVL77: + 976 .L39: +2744:Src/main.c **** (void) SPI2->DR; + 977 .loc 1 2744 64 is_stmt 1 discriminator 2 view .LVU332 +2744:Src/main.c **** (void) SPI2->DR; + 978 .loc 1 2744 42 discriminator 2 view .LVU333 + 979 .LBB379: + 980 .LBI379: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 847 .loc 4 905 26 view .LVU299 - 848 .LBB348: + 981 .loc 4 905 26 view .LVU334 + 982 .LBB380: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 849 .loc 4 907 3 view .LVU300 + 983 .loc 4 907 3 view .LVU335 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 850 .loc 4 907 12 is_stmt 0 view .LVU301 - 851 0046 184A ldr r2, .L44 - 852 0048 9268 ldr r2, [r2, #8] + 984 .loc 4 907 12 is_stmt 0 view .LVU336 + 985 0066 1A4A ldr r2, .L49+8 + 986 0068 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 853 .loc 4 907 68 view .LVU302 - 854 004a 12F0010F tst r2, #1 - 855 004e 05D1 bne .L33 - 856 .LVL66: + 987 .loc 4 907 68 view .LVU337 + 988 006a 12F0010F tst r2, #1 + 989 006e 05D1 bne .L38 + 990 .LVL78: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 857 .loc 4 907 68 view .LVU303 - 858 .LBE348: - 859 .LBE347: -2479:Src/main.c **** (void) SPI2->DR; - 860 .loc 1 2479 51 discriminator 1 view .LVU304 - 861 0050 5A1C adds r2, r3, #1 - 862 .LVL67: - ARM GAS /tmp/ccwR4KB7.s page 139 + 991 .loc 4 907 68 view .LVU338 + 992 .LBE380: + 993 .LBE379: +2744:Src/main.c **** (void) SPI2->DR; + 994 .loc 1 2744 51 discriminator 1 view .LVU339 + 995 0070 5A1C adds r2, r3, #1 + 996 .LVL79: +2744:Src/main.c **** (void) SPI2->DR; + 997 .loc 1 2744 42 discriminator 1 view .LVU340 + 998 0072 B3F57A7F cmp r3, #1000 + ARM GAS /tmp/ccEQxcUB.s page 147 -2479:Src/main.c **** (void) SPI2->DR; - 863 .loc 1 2479 42 discriminator 1 view .LVU305 - 864 0052 B3F57A7F cmp r3, #1000 - 865 0056 01D2 bcs .L33 -2479:Src/main.c **** (void) SPI2->DR; - 866 .loc 1 2479 51 discriminator 1 view .LVU306 - 867 0058 1346 mov r3, r2 - 868 005a F4E7 b .L34 - 869 .LVL68: - 870 .L33: -2480:Src/main.c **** - 871 .loc 1 2480 2 is_stmt 1 view .LVU307 - 872 005c 124B ldr r3, .L44 - 873 005e DB68 ldr r3, [r3, #12] -2482:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} - 874 .loc 1 2482 2 view .LVU308 - 875 .LVL69: -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - 876 .loc 1 2483 2 view .LVU309 -2482:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} - 877 .loc 1 2482 8 is_stmt 0 view .LVU310 - 878 0060 0023 movs r3, #0 - 879 .LVL70: - 880 .L36: -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - 881 .loc 1 2483 63 is_stmt 1 discriminator 2 view .LVU311 -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - 882 .loc 1 2483 41 discriminator 2 view .LVU312 - 883 .LBB349: - 884 .LBI349: + 999 0076 01D2 bcs .L38 +2744:Src/main.c **** (void) SPI2->DR; + 1000 .loc 1 2744 51 discriminator 1 view .LVU341 + 1001 0078 1346 mov r3, r2 + 1002 007a F4E7 b .L39 + 1003 .LVL80: + 1004 .L38: +2745:Src/main.c **** + 1005 .loc 1 2745 2 is_stmt 1 view .LVU342 + 1006 007c 144B ldr r3, .L49+8 + 1007 007e DB68 ldr r3, [r3, #12] +2747:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} + 1008 .loc 1 2747 2 view .LVU343 + 1009 .LVL81: +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1010 .loc 1 2748 2 view .LVU344 +2747:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} + 1011 .loc 1 2747 8 is_stmt 0 view .LVU345 + 1012 0080 0023 movs r3, #0 + 1013 .LVL82: + 1014 .L41: +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1015 .loc 1 2748 63 is_stmt 1 discriminator 2 view .LVU346 +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1016 .loc 1 2748 41 discriminator 2 view .LVU347 + 1017 .LBB381: + 1018 .LBI381: 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 885 .loc 4 916 26 view .LVU313 - 886 .LBB350: + 1019 .loc 4 916 26 view .LVU348 + 1020 .LBB382: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 887 .loc 4 918 3 view .LVU314 + 1021 .loc 4 918 3 view .LVU349 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 888 .loc 4 918 12 is_stmt 0 view .LVU315 - 889 0062 114A ldr r2, .L44 - 890 0064 9268 ldr r2, [r2, #8] + 1022 .loc 4 918 12 is_stmt 0 view .LVU350 + 1023 0082 134A ldr r2, .L49+8 + 1024 0084 9268 ldr r2, [r2, #8] 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 891 .loc 4 918 66 view .LVU316 - 892 0066 12F0020F tst r2, #2 - 893 006a 05D1 bne .L35 - 894 .LVL71: + 1025 .loc 4 918 66 view .LVU351 + 1026 0086 12F0020F tst r2, #2 + 1027 008a 05D1 bne .L40 + 1028 .LVL83: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 895 .loc 4 918 66 view .LVU317 - 896 .LBE350: - 897 .LBE349: -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - 898 .loc 1 2483 50 discriminator 1 view .LVU318 - 899 006c 5A1C adds r2, r3, #1 - 900 .LVL72: -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - 901 .loc 1 2483 41 discriminator 1 view .LVU319 - 902 006e B3F57A7F cmp r3, #1000 - 903 0072 01D2 bcs .L35 -2483:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); - ARM GAS /tmp/ccwR4KB7.s page 140 + 1029 .loc 4 918 66 view .LVU352 + 1030 .LBE382: + 1031 .LBE381: +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1032 .loc 1 2748 50 discriminator 1 view .LVU353 + 1033 008c 5A1C adds r2, r3, #1 + 1034 .LVL84: +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1035 .loc 1 2748 41 discriminator 1 view .LVU354 + 1036 008e B3F57A7F cmp r3, #1000 + 1037 0092 01D2 bcs .L40 +2748:Src/main.c **** LL_SPI_TransmitData16(SPI2, value); + 1038 .loc 1 2748 50 discriminator 1 view .LVU355 + 1039 0094 1346 mov r3, r2 + 1040 0096 F4E7 b .L41 + ARM GAS /tmp/ccEQxcUB.s page 148 - 904 .loc 1 2483 50 discriminator 1 view .LVU320 - 905 0074 1346 mov r3, r2 - 906 0076 F4E7 b .L36 - 907 .LVL73: - 908 .L35: -2484:Src/main.c **** tmp32 = 0; - 909 .loc 1 2484 2 is_stmt 1 view .LVU321 - 910 .LBB351: - 911 .LBI351: + 1041 .LVL85: + 1042 .L40: +2749:Src/main.c **** tmp32 = 0; + 1043 .loc 1 2749 2 is_stmt 1 view .LVU356 + 1044 .LBB383: + 1045 .LBI383: 1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 912 .loc 4 1373 22 view .LVU322 - 913 .LBB352: + 1046 .loc 4 1373 22 view .LVU357 + 1047 .LBB384: 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 914 .loc 4 1376 3 view .LVU323 - 915 .loc 4 1377 3 view .LVU324 - 916 .loc 4 1377 10 is_stmt 0 view .LVU325 - 917 0078 0B4B ldr r3, .L44 - 918 007a 9C81 strh r4, [r3, #12] @ movhi - 919 .LVL74: - 920 .loc 4 1377 10 view .LVU326 - 921 .LBE352: - 922 .LBE351: -2485:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 923 .loc 1 2485 2 is_stmt 1 view .LVU327 -2486:Src/main.c **** (void) SPI2->DR; - 924 .loc 1 2486 2 view .LVU328 -2485:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 925 .loc 1 2485 8 is_stmt 0 view .LVU329 - 926 007c 0023 movs r3, #0 - 927 .LVL75: - 928 .L38: -2486:Src/main.c **** (void) SPI2->DR; - 929 .loc 1 2486 64 is_stmt 1 discriminator 2 view .LVU330 -2486:Src/main.c **** (void) SPI2->DR; - 930 .loc 1 2486 42 discriminator 2 view .LVU331 - 931 .LBB353: - 932 .LBI353: + 1048 .loc 4 1376 3 view .LVU358 + 1049 .loc 4 1377 3 view .LVU359 + 1050 .loc 4 1377 10 is_stmt 0 view .LVU360 + 1051 0098 0D4B ldr r3, .L49+8 + 1052 009a 9C81 strh r4, [r3, #12] @ movhi + 1053 .LVL86: + 1054 .loc 4 1377 10 view .LVU361 + 1055 .LBE384: + 1056 .LBE383: +2750:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 1057 .loc 1 2750 2 is_stmt 1 view .LVU362 +2751:Src/main.c **** (void) SPI2->DR; + 1058 .loc 1 2751 2 view .LVU363 +2750:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 1059 .loc 1 2750 8 is_stmt 0 view .LVU364 + 1060 009c 0023 movs r3, #0 + 1061 .LVL87: + 1062 .L43: +2751:Src/main.c **** (void) SPI2->DR; + 1063 .loc 1 2751 64 is_stmt 1 discriminator 2 view .LVU365 +2751:Src/main.c **** (void) SPI2->DR; + 1064 .loc 1 2751 42 discriminator 2 view .LVU366 + 1065 .LBB385: + 1066 .LBI385: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 933 .loc 4 905 26 view .LVU332 - 934 .LBB354: + 1067 .loc 4 905 26 view .LVU367 + 1068 .LBB386: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 935 .loc 4 907 3 view .LVU333 + 1069 .loc 4 907 3 view .LVU368 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 936 .loc 4 907 12 is_stmt 0 view .LVU334 - 937 007e 0A4A ldr r2, .L44 - 938 0080 9268 ldr r2, [r2, #8] + 1070 .loc 4 907 12 is_stmt 0 view .LVU369 + 1071 009e 0C4A ldr r2, .L49+8 + 1072 00a0 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 939 .loc 4 907 68 view .LVU335 - 940 0082 12F0010F tst r2, #1 - 941 0086 05D1 bne .L37 - 942 .LVL76: + 1073 .loc 4 907 68 view .LVU370 + 1074 00a2 12F0010F tst r2, #1 + 1075 00a6 05D1 bne .L42 + 1076 .LVL88: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 943 .loc 4 907 68 view .LVU336 - 944 .LBE354: - 945 .LBE353: -2486:Src/main.c **** (void) SPI2->DR; - 946 .loc 1 2486 51 discriminator 1 view .LVU337 - ARM GAS /tmp/ccwR4KB7.s page 141 + 1077 .loc 4 907 68 view .LVU371 + 1078 .LBE386: + 1079 .LBE385: +2751:Src/main.c **** (void) SPI2->DR; + 1080 .loc 1 2751 51 discriminator 1 view .LVU372 + 1081 00a8 5A1C adds r2, r3, #1 + 1082 .LVL89: +2751:Src/main.c **** (void) SPI2->DR; + ARM GAS /tmp/ccEQxcUB.s page 149 - 947 0088 5A1C adds r2, r3, #1 - 948 .LVL77: -2486:Src/main.c **** (void) SPI2->DR; - 949 .loc 1 2486 42 discriminator 1 view .LVU338 - 950 008a B3F57A7F cmp r3, #1000 - 951 008e 01D2 bcs .L37 -2486:Src/main.c **** (void) SPI2->DR; - 952 .loc 1 2486 51 discriminator 1 view .LVU339 - 953 0090 1346 mov r3, r2 - 954 0092 F4E7 b .L38 - 955 .LVL78: - 956 .L37: -2487:Src/main.c **** - 957 .loc 1 2487 2 is_stmt 1 view .LVU340 - 958 0094 044B ldr r3, .L44 - 959 0096 DB68 ldr r3, [r3, #12] -2489:Src/main.c **** } - 960 .loc 1 2489 2 view .LVU341 - 961 0098 0122 movs r2, #1 - 962 009a 4FF48051 mov r1, #4096 - 963 009e 0348 ldr r0, .L44+4 - 964 00a0 FFF7FEFF bl HAL_GPIO_WritePin - 965 .LVL79: -2490:Src/main.c **** - 966 .loc 1 2490 1 is_stmt 0 view .LVU342 - 967 00a4 38BD pop {r3, r4, r5, pc} - 968 .LVL80: - 969 .L45: -2490:Src/main.c **** - 970 .loc 1 2490 1 view .LVU343 - 971 00a6 00BF .align 2 - 972 .L44: - 973 00a8 00380040 .word 1073756160 - 974 00ac 00040240 .word 1073873920 - 975 .cfi_endproc - 976 .LFE1212: - 978 .section .text.AD9102_WriteRegTable,"ax",%progbits - 979 .align 1 - 980 .syntax unified - 981 .thumb - 982 .thumb_func - 984 AD9102_WriteRegTable: - 985 .LVL81: - 986 .LFB1214: -2523:Src/main.c **** for (uint16_t i = 0; i < count; i++) - 987 .loc 1 2523 1 is_stmt 1 view -0 - 988 .cfi_startproc - 989 @ args = 0, pretend = 0, frame = 0 - 990 @ frame_needed = 0, uses_anonymous_args = 0 -2523:Src/main.c **** for (uint16_t i = 0; i < count; i++) - 991 .loc 1 2523 1 is_stmt 0 view .LVU345 - 992 0000 70B5 push {r4, r5, r6, lr} - 993 .LCFI10: - 994 .cfi_def_cfa_offset 16 - 995 .cfi_offset 4, -16 - 996 .cfi_offset 5, -12 - 997 .cfi_offset 6, -8 - ARM GAS /tmp/ccwR4KB7.s page 142 + 1083 .loc 1 2751 42 discriminator 1 view .LVU373 + 1084 00aa B3F57A7F cmp r3, #1000 + 1085 00ae 01D2 bcs .L42 +2751:Src/main.c **** (void) SPI2->DR; + 1086 .loc 1 2751 51 discriminator 1 view .LVU374 + 1087 00b0 1346 mov r3, r2 + 1088 00b2 F4E7 b .L43 + 1089 .LVL90: + 1090 .L42: +2752:Src/main.c **** + 1091 .loc 1 2752 2 is_stmt 1 view .LVU375 + 1092 00b4 064B ldr r3, .L49+8 + 1093 00b6 DB68 ldr r3, [r3, #12] +2754:Src/main.c **** } + 1094 .loc 1 2754 2 view .LVU376 + 1095 00b8 0122 movs r2, #1 + 1096 00ba 4FF48051 mov r1, #4096 + 1097 00be 0248 ldr r0, .L49 + 1098 00c0 FFF7FEFF bl HAL_GPIO_WritePin + 1099 .LVL91: +2755:Src/main.c **** + 1100 .loc 1 2755 1 is_stmt 0 view .LVU377 + 1101 00c4 38BD pop {r3, r4, r5, pc} + 1102 .LVL92: + 1103 .L50: +2755:Src/main.c **** + 1104 .loc 1 2755 1 view .LVU378 + 1105 00c6 00BF .align 2 + 1106 .L49: + 1107 00c8 00040240 .word 1073873920 + 1108 00cc 000C0240 .word 1073875968 + 1109 00d0 00380040 .word 1073756160 + 1110 .cfi_endproc + 1111 .LFE1217: + 1113 .section .text.AD9102_WriteRegTable,"ax",%progbits + 1114 .align 1 + 1115 .syntax unified + 1116 .thumb + 1117 .thumb_func + 1119 AD9102_WriteRegTable: + 1120 .LVL93: + 1121 .LFB1219: +2793:Src/main.c **** for (uint16_t i = 0; i < count; i++) + 1122 .loc 1 2793 1 is_stmt 1 view -0 + 1123 .cfi_startproc + 1124 @ args = 0, pretend = 0, frame = 0 + 1125 @ frame_needed = 0, uses_anonymous_args = 0 +2793:Src/main.c **** for (uint16_t i = 0; i < count; i++) + 1126 .loc 1 2793 1 is_stmt 0 view .LVU380 + 1127 0000 70B5 push {r4, r5, r6, lr} + 1128 .LCFI10: + 1129 .cfi_def_cfa_offset 16 + 1130 .cfi_offset 4, -16 + 1131 .cfi_offset 5, -12 + 1132 .cfi_offset 6, -8 + 1133 .cfi_offset 14, -4 + 1134 0002 0646 mov r6, r0 + ARM GAS /tmp/ccEQxcUB.s page 150 - 998 .cfi_offset 14, -4 - 999 0002 0646 mov r6, r0 - 1000 0004 0D46 mov r5, r1 -2524:Src/main.c **** { - 1001 .loc 1 2524 2 is_stmt 1 view .LVU346 - 1002 .LBB355: -2524:Src/main.c **** { - 1003 .loc 1 2524 7 view .LVU347 - 1004 .LVL82: -2524:Src/main.c **** { - 1005 .loc 1 2524 16 is_stmt 0 view .LVU348 - 1006 0006 0024 movs r4, #0 -2524:Src/main.c **** { - 1007 .loc 1 2524 2 view .LVU349 - 1008 0008 08E0 b .L47 - 1009 .LVL83: - 1010 .L48: -2526:Src/main.c **** } - 1011 .loc 1 2526 3 is_stmt 1 view .LVU350 - 1012 000a 36F81410 ldrh r1, [r6, r4, lsl #1] - 1013 000e 054B ldr r3, .L50 - 1014 0010 33F81400 ldrh r0, [r3, r4, lsl #1] - 1015 0014 FFF7FEFF bl AD9102_WriteReg - 1016 .LVL84: -2524:Src/main.c **** { - 1017 .loc 1 2524 35 discriminator 3 view .LVU351 - 1018 0018 0134 adds r4, r4, #1 - 1019 .LVL85: -2524:Src/main.c **** { - 1020 .loc 1 2524 35 is_stmt 0 discriminator 3 view .LVU352 - 1021 001a A4B2 uxth r4, r4 - 1022 .LVL86: - 1023 .L47: -2524:Src/main.c **** { - 1024 .loc 1 2524 25 is_stmt 1 discriminator 1 view .LVU353 - 1025 001c AC42 cmp r4, r5 - 1026 001e F4D3 bcc .L48 - 1027 .LBE355: -2528:Src/main.c **** - 1028 .loc 1 2528 1 is_stmt 0 view .LVU354 - 1029 0020 70BD pop {r4, r5, r6, pc} - 1030 .LVL87: - 1031 .L51: -2528:Src/main.c **** - 1032 .loc 1 2528 1 view .LVU355 - 1033 0022 00BF .align 2 - 1034 .L50: - 1035 0024 00000000 .word ad9102_reg_addr - 1036 .cfi_endproc - 1037 .LFE1214: - 1039 .section .text.AD9102_LoadSramRamp,"ax",%progbits - 1040 .align 1 - 1041 .syntax unified - 1042 .thumb - 1043 .thumb_func - 1045 AD9102_LoadSramRamp: - 1046 .LVL88: - ARM GAS /tmp/ccwR4KB7.s page 143 + 1135 0004 0D46 mov r5, r1 +2794:Src/main.c **** { + 1136 .loc 1 2794 2 is_stmt 1 view .LVU381 + 1137 .LBB387: +2794:Src/main.c **** { + 1138 .loc 1 2794 7 view .LVU382 + 1139 .LVL94: +2794:Src/main.c **** { + 1140 .loc 1 2794 16 is_stmt 0 view .LVU383 + 1141 0006 0024 movs r4, #0 +2794:Src/main.c **** { + 1142 .loc 1 2794 2 view .LVU384 + 1143 0008 08E0 b .L52 + 1144 .LVL95: + 1145 .L53: +2796:Src/main.c **** } + 1146 .loc 1 2796 3 is_stmt 1 view .LVU385 + 1147 000a 36F81410 ldrh r1, [r6, r4, lsl #1] + 1148 000e 054B ldr r3, .L55 + 1149 0010 33F81400 ldrh r0, [r3, r4, lsl #1] + 1150 0014 FFF7FEFF bl AD9102_WriteReg + 1151 .LVL96: +2794:Src/main.c **** { + 1152 .loc 1 2794 35 discriminator 3 view .LVU386 + 1153 0018 0134 adds r4, r4, #1 + 1154 .LVL97: +2794:Src/main.c **** { + 1155 .loc 1 2794 35 is_stmt 0 discriminator 3 view .LVU387 + 1156 001a A4B2 uxth r4, r4 + 1157 .LVL98: + 1158 .L52: +2794:Src/main.c **** { + 1159 .loc 1 2794 25 is_stmt 1 discriminator 1 view .LVU388 + 1160 001c AC42 cmp r4, r5 + 1161 001e F4D3 bcc .L53 + 1162 .LBE387: +2798:Src/main.c **** + 1163 .loc 1 2798 1 is_stmt 0 view .LVU389 + 1164 0020 70BD pop {r4, r5, r6, pc} + 1165 .LVL99: + 1166 .L56: +2798:Src/main.c **** + 1167 .loc 1 2798 1 view .LVU390 + 1168 0022 00BF .align 2 + 1169 .L55: + 1170 0024 00000000 .word ad9102_reg_addr + 1171 .cfi_endproc + 1172 .LFE1219: + 1174 .section .text.AD9102_LoadSramRamp,"ax",%progbits + 1175 .align 1 + 1176 .syntax unified + 1177 .thumb + 1178 .thumb_func + 1180 AD9102_LoadSramRamp: + 1181 .LVL100: + 1182 .LFB1221: +2845:Src/main.c **** if (samples < 2u) + ARM GAS /tmp/ccEQxcUB.s page 151 - 1047 .LFB1216: -2575:Src/main.c **** if (samples < 2u) - 1048 .loc 1 2575 1 is_stmt 1 view -0 - 1049 .cfi_startproc - 1050 @ args = 0, pretend = 0, frame = 0 - 1051 @ frame_needed = 0, uses_anonymous_args = 0 -2575:Src/main.c **** if (samples < 2u) - 1052 .loc 1 2575 1 is_stmt 0 view .LVU357 - 1053 0000 70B5 push {r4, r5, r6, lr} - 1054 .LCFI11: - 1055 .cfi_def_cfa_offset 16 - 1056 .cfi_offset 4, -16 - 1057 .cfi_offset 5, -12 - 1058 .cfi_offset 6, -8 - 1059 .cfi_offset 14, -4 - 1060 0002 0E46 mov r6, r1 -2576:Src/main.c **** { - 1061 .loc 1 2576 2 is_stmt 1 view .LVU358 -2576:Src/main.c **** { - 1062 .loc 1 2576 5 is_stmt 0 view .LVU359 - 1063 0004 0128 cmp r0, #1 - 1064 0006 06D9 bls .L64 - 1065 0008 0546 mov r5, r0 -2580:Src/main.c **** { - 1066 .loc 1 2580 2 is_stmt 1 view .LVU360 -2580:Src/main.c **** { - 1067 .loc 1 2580 5 is_stmt 0 view .LVU361 - 1068 000a B0F5805F cmp r0, #4096 - 1069 000e 03D9 bls .L53 -2582:Src/main.c **** } - 1070 .loc 1 2582 11 view .LVU362 - 1071 0010 4FF48055 mov r5, #4096 - 1072 0014 00E0 b .L53 - 1073 .L64: -2578:Src/main.c **** } - 1074 .loc 1 2578 11 view .LVU363 - 1075 0016 0225 movs r5, #2 - 1076 .L53: - 1077 .LVL89: -2586:Src/main.c **** - 1078 .loc 1 2586 2 is_stmt 1 view .LVU364 - 1079 0018 0421 movs r1, #4 - 1080 .LVL90: -2586:Src/main.c **** - 1081 .loc 1 2586 2 is_stmt 0 view .LVU365 - 1082 001a 1E20 movs r0, #30 - 1083 001c FFF7FEFF bl AD9102_WriteReg - 1084 .LVL91: -2588:Src/main.c **** { - 1085 .loc 1 2588 2 is_stmt 1 view .LVU366 - 1086 .LBB356: -2588:Src/main.c **** { - 1087 .loc 1 2588 7 view .LVU367 -2588:Src/main.c **** { - 1088 .loc 1 2588 16 is_stmt 0 view .LVU368 - 1089 0020 0024 movs r4, #0 -2588:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 144 - - - 1090 .loc 1 2588 2 view .LVU369 - 1091 0022 2FE0 b .L54 - 1092 .LVL92: - 1093 .L74: - 1094 .LBB357: - 1095 .LBB358: -2596:Src/main.c **** } - 1096 .loc 1 2596 10 view .LVU370 - 1097 0024 0123 movs r3, #1 - 1098 .LVL93: -2596:Src/main.c **** } - 1099 .loc 1 2596 10 view .LVU371 - 1100 0026 34E0 b .L56 - 1101 .LVL94: - 1102 .L67: - 1103 .LBB359: -2600:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1104 .loc 1 2600 14 discriminator 2 view .LVU372 - 1105 0028 0122 movs r2, #1 - 1106 002a 38E0 b .L58 - 1107 .L57: - 1108 .LBE359: - 1109 .LBB360: -2606:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; - 1110 .loc 1 2606 5 is_stmt 1 view .LVU373 -2606:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; - 1111 .loc 1 2606 14 is_stmt 0 view .LVU374 - 1112 002c EA1A subs r2, r5, r3 - 1113 002e 92B2 uxth r2, r2 - 1114 .LVL95: -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1115 .loc 1 2607 5 is_stmt 1 view .LVU375 -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1116 .loc 1 2607 14 is_stmt 0 view .LVU376 - 1117 0030 012A cmp r2, #1 - 1118 0032 0ED9 bls .L68 -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1119 .loc 1 2607 14 discriminator 1 view .LVU377 - 1120 0034 013A subs r2, r2, #1 - 1121 .LVL96: -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1122 .loc 1 2607 14 discriminator 1 view .LVU378 - 1123 0036 92B2 uxth r2, r2 - 1124 .LVL97: - 1125 .L60: -2608:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)(i - half)) / (int32_t)denom; - 1126 .loc 1 2608 5 is_stmt 1 view .LVU379 -2609:Src/main.c **** } - 1127 .loc 1 2609 59 is_stmt 0 view .LVU380 - 1128 0038 E31A subs r3, r4, r3 - 1129 .LVL98: -2609:Src/main.c **** } - 1130 .loc 1 2609 45 view .LVU381 - 1131 003a C3EB8333 rsb r3, r3, r3, lsl #14 -2609:Src/main.c **** } - 1132 .loc 1 2609 68 view .LVU382 - 1133 003e 93FBF2F2 sdiv r2, r3, r2 - ARM GAS /tmp/ccwR4KB7.s page 145 - - - 1134 .LVL99: -2608:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)(i - half)) / (int32_t)denom; - 1135 .loc 1 2608 11 view .LVU383 - 1136 0042 41F6FF71 movw r1, #8191 - 1137 0046 891A subs r1, r1, r2 - 1138 .LVL100: -2608:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)(i - half)) / (int32_t)denom; - 1139 .loc 1 2608 11 view .LVU384 - 1140 .LBE360: - 1141 .LBE358: -2619:Src/main.c **** { - 1142 .loc 1 2619 3 is_stmt 1 view .LVU385 -2619:Src/main.c **** { - 1143 .loc 1 2619 6 is_stmt 0 view .LVU386 - 1144 0048 11F5005F cmn r1, #8192 - 1145 004c 0DDA bge .L59 -2621:Src/main.c **** } - 1146 .loc 1 2621 10 view .LVU387 - 1147 004e 1C49 ldr r1, .L75 - 1148 .LVL101: -2621:Src/main.c **** } - 1149 .loc 1 2621 10 view .LVU388 - 1150 0050 0EE0 b .L61 - 1151 .LVL102: - 1152 .L68: - 1153 .LBB363: - 1154 .LBB361: -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1155 .loc 1 2607 14 discriminator 2 view .LVU389 - 1156 0052 0122 movs r2, #1 - 1157 .LVL103: -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1158 .loc 1 2607 14 discriminator 2 view .LVU390 - 1159 0054 F0E7 b .L60 - 1160 .LVL104: - 1161 .L55: -2607:Src/main.c **** value = AD9102_SRAM_RAMP_MAX - - 1162 .loc 1 2607 14 discriminator 2 view .LVU391 - 1163 .LBE361: - 1164 .LBE363: - 1165 .LBB364: -2614:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1166 .loc 1 2614 4 is_stmt 1 view .LVU392 -2614:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1167 .loc 1 2614 13 is_stmt 0 view .LVU393 - 1168 0056 012D cmp r5, #1 - 1169 0058 28D9 bls .L70 -2614:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1170 .loc 1 2614 13 discriminator 1 view .LVU394 - 1171 005a 6A1E subs r2, r5, #1 - 1172 005c 92B2 uxth r2, r2 - 1173 .L62: - 1174 .LVL105: -2615:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - 1175 .loc 1 2615 4 is_stmt 1 view .LVU395 -2616:Src/main.c **** } - 1176 .loc 1 2616 44 is_stmt 0 view .LVU396 - ARM GAS /tmp/ccwR4KB7.s page 146 - - - 1177 005e C4EB8433 rsb r3, r4, r4, lsl #14 -2616:Src/main.c **** } - 1178 .loc 1 2616 58 view .LVU397 - 1179 0062 93FBF2F3 sdiv r3, r3, r2 -2615:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - 1180 .loc 1 2615 10 view .LVU398 - 1181 0066 A3F50051 sub r1, r3, #8192 - 1182 .LVL106: -2615:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - 1183 .loc 1 2615 10 view .LVU399 - 1184 .LBE364: -2619:Src/main.c **** { - 1185 .loc 1 2619 3 is_stmt 1 view .LVU400 - 1186 .L59: -2623:Src/main.c **** { - 1187 .loc 1 2623 8 view .LVU401 -2623:Src/main.c **** { - 1188 .loc 1 2623 11 is_stmt 0 view .LVU402 - 1189 006a B1F5005F cmp r1, #8192 - 1190 006e 1FDA bge .L71 - 1191 .LVL107: - 1192 .L61: -2628:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); - 1193 .loc 1 2628 3 is_stmt 1 view .LVU403 -2628:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); - 1194 .loc 1 2628 25 is_stmt 0 view .LVU404 - 1195 0070 89B2 uxth r1, r1 - 1196 .LVL108: -2629:Src/main.c **** AD9102_WriteReg((uint16_t)(AD9102_REG_SRAM_DATA_BASE + i), word); - 1197 .loc 1 2629 3 is_stmt 1 view .LVU405 -2630:Src/main.c **** } - 1198 .loc 1 2630 3 view .LVU406 - 1199 0072 8900 lsls r1, r1, #2 - 1200 .LVL109: -2630:Src/main.c **** } - 1201 .loc 1 2630 3 is_stmt 0 view .LVU407 - 1202 0074 89B2 uxth r1, r1 - 1203 0076 04F5C040 add r0, r4, #24576 - 1204 007a 80B2 uxth r0, r0 - 1205 007c FFF7FEFF bl AD9102_WriteReg - 1206 .LVL110: - 1207 .LBE357: -2588:Src/main.c **** { - 1208 .loc 1 2588 37 is_stmt 1 discriminator 2 view .LVU408 - 1209 0080 0134 adds r4, r4, #1 - 1210 .LVL111: -2588:Src/main.c **** { - 1211 .loc 1 2588 37 is_stmt 0 discriminator 2 view .LVU409 - 1212 0082 A4B2 uxth r4, r4 - 1213 .LVL112: - 1214 .L54: -2588:Src/main.c **** { - 1215 .loc 1 2588 25 is_stmt 1 discriminator 1 view .LVU410 - 1216 0084 A542 cmp r5, r4 - 1217 0086 16D9 bls .L73 - 1218 .LBB367: -2590:Src/main.c **** if (triangle) - ARM GAS /tmp/ccwR4KB7.s page 147 - - - 1219 .loc 1 2590 3 view .LVU411 -2591:Src/main.c **** { - 1220 .loc 1 2591 3 view .LVU412 -2591:Src/main.c **** { - 1221 .loc 1 2591 6 is_stmt 0 view .LVU413 - 1222 0088 002E cmp r6, #0 - 1223 008a E4D0 beq .L55 - 1224 .LBB365: -2593:Src/main.c **** if (half == 0u) - 1225 .loc 1 2593 4 is_stmt 1 view .LVU414 -2593:Src/main.c **** if (half == 0u) - 1226 .loc 1 2593 13 is_stmt 0 view .LVU415 - 1227 008c 6B08 lsrs r3, r5, #1 - 1228 .LVL113: -2594:Src/main.c **** { - 1229 .loc 1 2594 4 is_stmt 1 view .LVU416 -2594:Src/main.c **** { - 1230 .loc 1 2594 7 is_stmt 0 view .LVU417 - 1231 008e 012D cmp r5, #1 - 1232 0090 C8D9 bls .L74 - 1233 .LVL114: - 1234 .L56: -2598:Src/main.c **** { - 1235 .loc 1 2598 4 is_stmt 1 view .LVU418 -2598:Src/main.c **** { - 1236 .loc 1 2598 7 is_stmt 0 view .LVU419 - 1237 0092 9C42 cmp r4, r3 - 1238 0094 CAD2 bcs .L57 - 1239 .LBB362: -2600:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1240 .loc 1 2600 5 is_stmt 1 view .LVU420 -2600:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1241 .loc 1 2600 14 is_stmt 0 view .LVU421 - 1242 0096 012B cmp r3, #1 - 1243 0098 C6D9 bls .L67 -2600:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1244 .loc 1 2600 14 discriminator 1 view .LVU422 - 1245 009a 013B subs r3, r3, #1 - 1246 .LVL115: -2600:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1247 .loc 1 2600 14 discriminator 1 view .LVU423 - 1248 009c 9AB2 uxth r2, r3 - 1249 .LVL116: - 1250 .L58: -2601:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - 1251 .loc 1 2601 5 is_stmt 1 view .LVU424 -2602:Src/main.c **** } - 1252 .loc 1 2602 45 is_stmt 0 view .LVU425 - 1253 009e C4EB8433 rsb r3, r4, r4, lsl #14 -2602:Src/main.c **** } - 1254 .loc 1 2602 59 view .LVU426 - 1255 00a2 93FBF2F3 sdiv r3, r3, r2 -2601:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - 1256 .loc 1 2601 11 view .LVU427 - 1257 00a6 A3F50051 sub r1, r3, #8192 - 1258 .LVL117: -2601:Src/main.c **** ((int32_t)AD9102_SRAM_RAMP_SPAN * (int32_t)i) / (int32_t)denom; - ARM GAS /tmp/ccwR4KB7.s page 148 - - - 1259 .loc 1 2601 11 view .LVU428 - 1260 .LBE362: - 1261 .LBE365: -2619:Src/main.c **** { - 1262 .loc 1 2619 3 is_stmt 1 view .LVU429 - 1263 00aa DEE7 b .L59 - 1264 .LVL118: - 1265 .L70: - 1266 .LBB366: -2614:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1267 .loc 1 2614 13 is_stmt 0 discriminator 2 view .LVU430 - 1268 00ac 0122 movs r2, #1 - 1269 00ae D6E7 b .L62 - 1270 .LVL119: - 1271 .L71: -2614:Src/main.c **** value = AD9102_SRAM_RAMP_MIN + - 1272 .loc 1 2614 13 discriminator 2 view .LVU431 - 1273 .LBE366: -2625:Src/main.c **** } - 1274 .loc 1 2625 10 view .LVU432 - 1275 00b0 41F6FF71 movw r1, #8191 - 1276 .LVL120: -2625:Src/main.c **** } - 1277 .loc 1 2625 10 view .LVU433 - 1278 00b4 DCE7 b .L61 - 1279 .LVL121: - 1280 .L73: -2625:Src/main.c **** } - 1281 .loc 1 2625 10 view .LVU434 - 1282 .LBE367: - 1283 .LBE356: -2634:Src/main.c **** } - 1284 .loc 1 2634 2 is_stmt 1 view .LVU435 - 1285 00b6 0021 movs r1, #0 - 1286 00b8 1E20 movs r0, #30 - 1287 00ba FFF7FEFF bl AD9102_WriteReg - 1288 .LVL122: -2635:Src/main.c **** - 1289 .loc 1 2635 1 is_stmt 0 view .LVU436 - 1290 00be 70BD pop {r4, r5, r6, pc} - 1291 .LVL123: - 1292 .L76: -2635:Src/main.c **** - 1293 .loc 1 2635 1 view .LVU437 - 1294 .align 2 - 1295 .L75: - 1296 00c0 00E0FFFF .word -8192 - 1297 .cfi_endproc - 1298 .LFE1216: - 1300 .section .text.AD9102_Init,"ax",%progbits - 1301 .align 1 - 1302 .syntax unified - 1303 .thumb - 1304 .thumb_func - 1306 AD9102_Init: - 1307 .LFB1211: -2452:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); - ARM GAS /tmp/ccwR4KB7.s page 149 - - - 1308 .loc 1 2452 1 is_stmt 1 view -0 - 1309 .cfi_startproc - 1310 @ args = 0, pretend = 0, frame = 8 - 1311 @ frame_needed = 0, uses_anonymous_args = 0 - 1312 0000 00B5 push {lr} - 1313 .LCFI12: - 1314 .cfi_def_cfa_offset 4 - 1315 .cfi_offset 14, -4 - 1316 0002 83B0 sub sp, sp, #12 - 1317 .LCFI13: - 1318 .cfi_def_cfa_offset 16 -2453:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); - 1319 .loc 1 2453 2 view .LVU439 - 1320 0004 0122 movs r2, #1 - 1321 0006 4FF48051 mov r1, #4096 - 1322 000a 1648 ldr r0, .L81 - 1323 000c FFF7FEFF bl HAL_GPIO_WritePin - 1324 .LVL124: -2454:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} - 1325 .loc 1 2454 2 view .LVU440 - 1326 0010 0022 movs r2, #0 - 1327 0012 4021 movs r1, #64 - 1328 0014 1448 ldr r0, .L81+4 - 1329 0016 FFF7FEFF bl HAL_GPIO_WritePin - 1330 .LVL125: -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1331 .loc 1 2455 2 view .LVU441 - 1332 .LBB368: -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1333 .loc 1 2455 7 view .LVU442 -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1334 .loc 1 2455 25 is_stmt 0 view .LVU443 - 1335 001a 0023 movs r3, #0 - 1336 001c 0193 str r3, [sp, #4] -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1337 .loc 1 2455 2 view .LVU444 - 1338 001e 02E0 b .L78 - 1339 .L79: -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1340 .loc 1 2455 48 is_stmt 1 discriminator 3 view .LVU445 -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1341 .loc 1 2455 43 discriminator 3 view .LVU446 - 1342 0020 019B ldr r3, [sp, #4] - 1343 0022 0133 adds r3, r3, #1 - 1344 0024 0193 str r3, [sp, #4] - 1345 .L78: -2455:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); - 1346 .loc 1 2455 34 discriminator 1 view .LVU447 - 1347 0026 019B ldr r3, [sp, #4] - 1348 0028 B3F57A7F cmp r3, #1000 - 1349 002c F8D3 bcc .L79 - 1350 .LBE368: -2456:Src/main.c **** - 1351 .loc 1 2456 2 view .LVU448 - 1352 002e 0122 movs r2, #1 - 1353 0030 4021 movs r1, #64 - 1354 0032 0D48 ldr r0, .L81+4 - ARM GAS /tmp/ccwR4KB7.s page 150 - - - 1355 0034 FFF7FEFF bl HAL_GPIO_WritePin - 1356 .LVL126: -2458:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); - 1357 .loc 1 2458 2 view .LVU449 - 1358 0038 4221 movs r1, #66 - 1359 003a 0C48 ldr r0, .L81+8 - 1360 003c FFF7FEFF bl AD9102_WriteRegTable - 1361 .LVL127: -2459:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 1362 .loc 1 2459 2 view .LVU450 - 1363 0040 0021 movs r1, #0 - 1364 0042 1E20 movs r0, #30 - 1365 0044 FFF7FEFF bl AD9102_WriteReg - 1366 .LVL128: -2460:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); - 1367 .loc 1 2460 2 view .LVU451 - 1368 0048 0121 movs r1, #1 - 1369 004a 1D20 movs r0, #29 - 1370 004c FFF7FEFF bl AD9102_WriteReg - 1371 .LVL129: -2461:Src/main.c **** } - 1372 .loc 1 2461 2 view .LVU452 - 1373 0050 0122 movs r2, #1 - 1374 0052 4FF40061 mov r1, #2048 - 1375 0056 0648 ldr r0, .L81+12 - 1376 0058 FFF7FEFF bl HAL_GPIO_WritePin - 1377 .LVL130: -2462:Src/main.c **** - 1378 .loc 1 2462 1 is_stmt 0 view .LVU453 - 1379 005c 03B0 add sp, sp, #12 - 1380 .LCFI14: - 1381 .cfi_def_cfa_offset 4 - 1382 @ sp needed - 1383 005e 5DF804FB ldr pc, [sp], #4 - 1384 .L82: - 1385 0062 00BF .align 2 - 1386 .L81: - 1387 0064 00040240 .word 1073873920 - 1388 0068 00080240 .word 1073874944 - 1389 006c 00000000 .word ad9102_example4_regval - 1390 0070 000C0240 .word 1073875968 - 1391 .cfi_endproc - 1392 .LFE1211: - 1394 .section .text.AD9102_ReadReg,"ax",%progbits - 1395 .align 1 - 1396 .syntax unified - 1397 .thumb - 1398 .thumb_func - 1400 AD9102_ReadReg: - 1401 .LVL131: - 1402 .LFB1213: -2493:Src/main.c **** uint32_t tmp32 = 0; - 1403 .loc 1 2493 1 is_stmt 1 view -0 - 1404 .cfi_startproc - 1405 @ args = 0, pretend = 0, frame = 0 - 1406 @ frame_needed = 0, uses_anonymous_args = 0 -2493:Src/main.c **** uint32_t tmp32 = 0; - ARM GAS /tmp/ccwR4KB7.s page 151 - - - 1407 .loc 1 2493 1 is_stmt 0 view .LVU455 - 1408 0000 10B5 push {r4, lr} - 1409 .LCFI15: - 1410 .cfi_def_cfa_offset 8 - 1411 .cfi_offset 4, -8 - 1412 .cfi_offset 14, -4 -2494:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) - 1413 .loc 1 2494 2 is_stmt 1 view .LVU456 - 1414 .LVL132: -2495:Src/main.c **** uint16_t value; - 1415 .loc 1 2495 2 view .LVU457 -2495:Src/main.c **** uint16_t value; - 1416 .loc 1 2495 11 is_stmt 0 view .LVU458 - 1417 0002 40F40044 orr r4, r0, #32768 - 1418 .LVL133: -2496:Src/main.c **** - 1419 .loc 1 2496 2 is_stmt 1 view .LVU459 -2498:Src/main.c **** { - 1420 .loc 1 2498 2 view .LVU460 - 1421 .LBB369: - 1422 .LBI369: - 381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1423 .loc 4 381 26 view .LVU461 - 1424 .LBB370: - 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1425 .loc 4 383 3 view .LVU462 - 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1426 .loc 4 383 12 is_stmt 0 view .LVU463 - 1427 0006 284B ldr r3, .L98 - 1428 0008 1B68 ldr r3, [r3] - 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1429 .loc 4 383 69 view .LVU464 - 1430 000a 13F0400F tst r3, #64 - 1431 000e 04D1 bne .L84 - 1432 .LVL134: - 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1433 .loc 4 383 69 view .LVU465 - 1434 .LBE370: - 1435 .LBE369: -2500:Src/main.c **** } - 1436 .loc 1 2500 3 is_stmt 1 view .LVU466 - 1437 .LBB371: - 1438 .LBI371: - 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1439 .loc 4 358 22 view .LVU467 - 1440 .LBB372: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1441 .loc 4 360 3 view .LVU468 - 1442 0010 254A ldr r2, .L98 - 1443 0012 1368 ldr r3, [r2] - 1444 0014 43F04003 orr r3, r3, #64 - 1445 0018 1360 str r3, [r2] - 1446 .LVL135: - 1447 .L84: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1448 .loc 4 360 3 is_stmt 0 view .LVU469 - 1449 .LBE372: - ARM GAS /tmp/ccwR4KB7.s page 152 - - - 1450 .LBE371: -2503:Src/main.c **** - 1451 .loc 1 2503 2 is_stmt 1 view .LVU470 - 1452 001a 0022 movs r2, #0 - 1453 001c 4FF48051 mov r1, #4096 - 1454 0020 2248 ldr r0, .L98+4 - 1455 .LVL136: -2503:Src/main.c **** - 1456 .loc 1 2503 2 is_stmt 0 view .LVU471 - 1457 0022 FFF7FEFF bl HAL_GPIO_WritePin - 1458 .LVL137: -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1459 .loc 1 2505 2 is_stmt 1 view .LVU472 -2494:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) - 1460 .loc 1 2494 11 is_stmt 0 view .LVU473 - 1461 0026 0023 movs r3, #0 - 1462 .LVL138: - 1463 .L86: -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1464 .loc 1 2505 63 is_stmt 1 discriminator 2 view .LVU474 -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1465 .loc 1 2505 41 discriminator 2 view .LVU475 - 1466 .LBB373: - 1467 .LBI373: - 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1468 .loc 4 916 26 view .LVU476 - 1469 .LBB374: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1470 .loc 4 918 3 view .LVU477 - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1471 .loc 4 918 12 is_stmt 0 view .LVU478 - 1472 0028 1F4A ldr r2, .L98 - 1473 002a 9268 ldr r2, [r2, #8] - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1474 .loc 4 918 66 view .LVU479 - 1475 002c 12F0020F tst r2, #2 - 1476 0030 05D1 bne .L85 - 1477 .LVL139: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1478 .loc 4 918 66 view .LVU480 - 1479 .LBE374: - 1480 .LBE373: -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1481 .loc 1 2505 50 discriminator 1 view .LVU481 - 1482 0032 5A1C adds r2, r3, #1 - 1483 .LVL140: -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1484 .loc 1 2505 41 discriminator 1 view .LVU482 - 1485 0034 B3F57A7F cmp r3, #1000 - 1486 0038 01D2 bcs .L85 -2505:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); - 1487 .loc 1 2505 50 discriminator 1 view .LVU483 - 1488 003a 1346 mov r3, r2 - 1489 003c F4E7 b .L86 - 1490 .LVL141: - 1491 .L85: -2506:Src/main.c **** tmp32 = 0; - ARM GAS /tmp/ccwR4KB7.s page 153 - - - 1492 .loc 1 2506 2 is_stmt 1 view .LVU484 - 1493 .LBB375: - 1494 .LBI375: -1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1495 .loc 4 1373 22 view .LVU485 - 1496 .LBB376: -1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 1497 .loc 4 1376 3 view .LVU486 - 1498 .loc 4 1377 3 view .LVU487 - 1499 .loc 4 1377 10 is_stmt 0 view .LVU488 - 1500 003e 1A4B ldr r3, .L98 - 1501 0040 9C81 strh r4, [r3, #12] @ movhi - 1502 .LVL142: - 1503 .loc 4 1377 10 view .LVU489 - 1504 .LBE376: - 1505 .LBE375: -2507:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 1506 .loc 1 2507 2 is_stmt 1 view .LVU490 -2508:Src/main.c **** (void) SPI2->DR; - 1507 .loc 1 2508 2 view .LVU491 -2507:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 1508 .loc 1 2507 8 is_stmt 0 view .LVU492 - 1509 0042 0023 movs r3, #0 - 1510 .LVL143: - 1511 .L88: -2508:Src/main.c **** (void) SPI2->DR; - 1512 .loc 1 2508 64 is_stmt 1 discriminator 2 view .LVU493 -2508:Src/main.c **** (void) SPI2->DR; - 1513 .loc 1 2508 42 discriminator 2 view .LVU494 - 1514 .LBB377: - 1515 .LBI377: - 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1516 .loc 4 905 26 view .LVU495 - 1517 .LBB378: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1518 .loc 4 907 3 view .LVU496 - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1519 .loc 4 907 12 is_stmt 0 view .LVU497 - 1520 0044 184A ldr r2, .L98 - 1521 0046 9268 ldr r2, [r2, #8] - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1522 .loc 4 907 68 view .LVU498 - 1523 0048 12F0010F tst r2, #1 - 1524 004c 05D1 bne .L87 - 1525 .LVL144: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1526 .loc 4 907 68 view .LVU499 - 1527 .LBE378: - 1528 .LBE377: -2508:Src/main.c **** (void) SPI2->DR; - 1529 .loc 1 2508 51 discriminator 1 view .LVU500 - 1530 004e 5A1C adds r2, r3, #1 - 1531 .LVL145: -2508:Src/main.c **** (void) SPI2->DR; - 1532 .loc 1 2508 42 discriminator 1 view .LVU501 - 1533 0050 B3F57A7F cmp r3, #1000 - 1534 0054 01D2 bcs .L87 - ARM GAS /tmp/ccwR4KB7.s page 154 - - -2508:Src/main.c **** (void) SPI2->DR; - 1535 .loc 1 2508 51 discriminator 1 view .LVU502 - 1536 0056 1346 mov r3, r2 - 1537 0058 F4E7 b .L88 - 1538 .LVL146: - 1539 .L87: -2509:Src/main.c **** - 1540 .loc 1 2509 2 is_stmt 1 view .LVU503 - 1541 005a 134B ldr r3, .L98 - 1542 005c DB68 ldr r3, [r3, #12] -2511:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} - 1543 .loc 1 2511 2 view .LVU504 - 1544 .LVL147: -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1545 .loc 1 2512 2 view .LVU505 -2511:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} - 1546 .loc 1 2511 8 is_stmt 0 view .LVU506 - 1547 005e 0023 movs r3, #0 - 1548 .LVL148: - 1549 .L90: -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1550 .loc 1 2512 63 is_stmt 1 discriminator 2 view .LVU507 -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1551 .loc 1 2512 41 discriminator 2 view .LVU508 - 1552 .LBB379: - 1553 .LBI379: - 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1554 .loc 4 916 26 view .LVU509 - 1555 .LBB380: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1556 .loc 4 918 3 view .LVU510 - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1557 .loc 4 918 12 is_stmt 0 view .LVU511 - 1558 0060 114A ldr r2, .L98 - 1559 0062 9268 ldr r2, [r2, #8] - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1560 .loc 4 918 66 view .LVU512 - 1561 0064 12F0020F tst r2, #2 - 1562 0068 05D1 bne .L89 - 1563 .LVL149: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1564 .loc 4 918 66 view .LVU513 - 1565 .LBE380: - 1566 .LBE379: -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1567 .loc 1 2512 50 discriminator 1 view .LVU514 - 1568 006a 5A1C adds r2, r3, #1 - 1569 .LVL150: -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1570 .loc 1 2512 41 discriminator 1 view .LVU515 - 1571 006c B3F57A7F cmp r3, #1000 - 1572 0070 01D2 bcs .L89 -2512:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); - 1573 .loc 1 2512 50 discriminator 1 view .LVU516 - 1574 0072 1346 mov r3, r2 - 1575 0074 F4E7 b .L90 - 1576 .LVL151: - ARM GAS /tmp/ccwR4KB7.s page 155 - - - 1577 .L89: -2513:Src/main.c **** tmp32 = 0; - 1578 .loc 1 2513 2 is_stmt 1 view .LVU517 - 1579 .LBB381: - 1580 .LBI381: -1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1581 .loc 4 1373 22 view .LVU518 - 1582 .LBB382: -1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 1583 .loc 4 1376 3 view .LVU519 - 1584 .loc 4 1377 3 view .LVU520 - 1585 .loc 4 1377 10 is_stmt 0 view .LVU521 - 1586 0076 0023 movs r3, #0 - 1587 0078 0B4A ldr r2, .L98 - 1588 007a 9381 strh r3, [r2, #12] @ movhi - 1589 .LVL152: - 1590 .loc 4 1377 10 view .LVU522 - 1591 .LBE382: - 1592 .LBE381: -2514:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} - 1593 .loc 1 2514 2 is_stmt 1 view .LVU523 -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - 1594 .loc 1 2515 2 view .LVU524 - 1595 .L92: -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - 1596 .loc 1 2515 64 discriminator 2 view .LVU525 -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - 1597 .loc 1 2515 42 discriminator 2 view .LVU526 - 1598 .LBB383: - 1599 .LBI383: - 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1600 .loc 4 905 26 view .LVU527 - 1601 .LBB384: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1602 .loc 4 907 3 view .LVU528 - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1603 .loc 4 907 12 is_stmt 0 view .LVU529 - 1604 007c 0A4A ldr r2, .L98 - 1605 007e 9268 ldr r2, [r2, #8] - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1606 .loc 4 907 68 view .LVU530 - 1607 0080 12F0010F tst r2, #1 - 1608 0084 05D1 bne .L91 - 1609 .LVL153: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1610 .loc 4 907 68 view .LVU531 - 1611 .LBE384: - 1612 .LBE383: -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - 1613 .loc 1 2515 51 discriminator 1 view .LVU532 - 1614 0086 5A1C adds r2, r3, #1 - 1615 .LVL154: -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - 1616 .loc 1 2515 42 discriminator 1 view .LVU533 - 1617 0088 B3F57A7F cmp r3, #1000 - 1618 008c 01D2 bcs .L91 -2515:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); - ARM GAS /tmp/ccwR4KB7.s page 156 - - - 1619 .loc 1 2515 51 discriminator 1 view .LVU534 - 1620 008e 1346 mov r3, r2 - 1621 0090 F4E7 b .L92 - 1622 .LVL155: - 1623 .L91: -2516:Src/main.c **** - 1624 .loc 1 2516 2 is_stmt 1 view .LVU535 - 1625 .LBB385: - 1626 .LBI385: -1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 1627 .loc 4 1344 26 view .LVU536 - 1628 .LBB386: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1629 .loc 4 1346 3 view .LVU537 -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1630 .loc 4 1346 21 is_stmt 0 view .LVU538 - 1631 0092 054B ldr r3, .L98 - 1632 0094 DC68 ldr r4, [r3, #12] - 1633 .LVL156: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1634 .loc 4 1346 10 view .LVU539 - 1635 0096 A4B2 uxth r4, r4 - 1636 .LVL157: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 1637 .loc 4 1346 10 view .LVU540 - 1638 .LBE386: - 1639 .LBE385: -2518:Src/main.c **** return value; - 1640 .loc 1 2518 2 is_stmt 1 view .LVU541 - 1641 0098 0122 movs r2, #1 - 1642 009a 4FF48051 mov r1, #4096 - 1643 009e 0348 ldr r0, .L98+4 - 1644 00a0 FFF7FEFF bl HAL_GPIO_WritePin - 1645 .LVL158: -2519:Src/main.c **** } - 1646 .loc 1 2519 2 view .LVU542 -2520:Src/main.c **** - 1647 .loc 1 2520 1 is_stmt 0 view .LVU543 - 1648 00a4 2046 mov r0, r4 - 1649 00a6 10BD pop {r4, pc} - 1650 .LVL159: - 1651 .L99: -2520:Src/main.c **** - 1652 .loc 1 2520 1 view .LVU544 - 1653 .align 2 - 1654 .L98: - 1655 00a8 00380040 .word 1073756160 - 1656 00ac 00040240 .word 1073873920 - 1657 .cfi_endproc - 1658 .LFE1213: - 1660 .section .text.AD9102_CheckFlagsSram,"ax",%progbits - 1661 .align 1 - 1662 .syntax unified - 1663 .thumb - 1664 .thumb_func - 1666 AD9102_CheckFlagsSram: - 1667 .LVL160: - ARM GAS /tmp/ccwR4KB7.s page 157 - - - 1668 .LFB1219: -2786:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); - 1669 .loc 1 2786 1 is_stmt 1 view -0 - 1670 .cfi_startproc - 1671 @ args = 0, pretend = 0, frame = 8 - 1672 @ frame_needed = 0, uses_anonymous_args = 0 -2786:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); - 1673 .loc 1 2786 1 is_stmt 0 view .LVU546 - 1674 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} - 1675 .LCFI16: - 1676 .cfi_def_cfa_offset 36 - 1677 .cfi_offset 4, -36 - 1678 .cfi_offset 5, -32 - 1679 .cfi_offset 6, -28 - 1680 .cfi_offset 7, -24 - 1681 .cfi_offset 8, -20 - 1682 .cfi_offset 9, -16 - 1683 .cfi_offset 10, -12 - 1684 .cfi_offset 11, -8 - 1685 .cfi_offset 14, -4 - 1686 0004 83B0 sub sp, sp, #12 - 1687 .LCFI17: - 1688 .cfi_def_cfa_offset 48 - 1689 0006 8346 mov fp, r0 - 1690 0008 0F46 mov r7, r1 - 1691 000a 1446 mov r4, r2 - 1692 000c 1D46 mov r5, r3 -2787:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1693 .loc 1 2787 2 is_stmt 1 view .LVU547 -2787:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1694 .loc 1 2787 23 is_stmt 0 view .LVU548 - 1695 000e 0020 movs r0, #0 - 1696 .LVL161: -2787:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1697 .loc 1 2787 23 view .LVU549 - 1698 0010 FFF7FEFF bl AD9102_ReadReg - 1699 .LVL162: -2787:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1700 .loc 1 2787 23 view .LVU550 - 1701 0014 8246 mov r10, r0 - 1702 .LVL163: -2788:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); - 1703 .loc 1 2788 2 is_stmt 1 view .LVU551 -2788:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); - 1704 .loc 1 2788 22 is_stmt 0 view .LVU552 - 1705 0016 0120 movs r0, #1 - 1706 0018 FFF7FEFF bl AD9102_ReadReg - 1707 .LVL164: - 1708 001c 8146 mov r9, r0 - 1709 .LVL165: -2789:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); - 1710 .loc 1 2789 2 is_stmt 1 view .LVU553 -2789:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); - 1711 .loc 1 2789 22 is_stmt 0 view .LVU554 - 1712 001e 0220 movs r0, #2 - 1713 0020 FFF7FEFF bl AD9102_ReadReg - 1714 .LVL166: - ARM GAS /tmp/ccwR4KB7.s page 158 - - - 1715 0024 8046 mov r8, r0 - 1716 .LVL167: -2790:Src/main.c **** - 1717 .loc 1 2790 2 is_stmt 1 view .LVU555 -2790:Src/main.c **** - 1718 .loc 1 2790 21 is_stmt 0 view .LVU556 - 1719 0026 6020 movs r0, #96 - 1720 0028 FFF7FEFF bl AD9102_ReadReg - 1721 .LVL168: -2792:Src/main.c **** { - 1722 .loc 1 2792 2 is_stmt 1 view .LVU557 -2792:Src/main.c **** { - 1723 .loc 1 2792 5 is_stmt 0 view .LVU558 - 1724 002c 1CB1 cbz r4, .L117 -2796:Src/main.c **** { - 1725 .loc 1 2796 2 is_stmt 1 view .LVU559 -2796:Src/main.c **** { - 1726 .loc 1 2796 5 is_stmt 0 view .LVU560 - 1727 002e 012C cmp r4, #1 - 1728 0030 02D8 bhi .L101 -2798:Src/main.c **** } - 1729 .loc 1 2798 11 view .LVU561 - 1730 0032 0224 movs r4, #2 - 1731 .LVL169: -2798:Src/main.c **** } - 1732 .loc 1 2798 11 view .LVU562 - 1733 0034 03E0 b .L102 - 1734 .LVL170: - 1735 .L117: -2794:Src/main.c **** } - 1736 .loc 1 2794 11 view .LVU563 - 1737 0036 1024 movs r4, #16 - 1738 .LVL171: - 1739 .L101: -2800:Src/main.c **** { - 1740 .loc 1 2800 2 is_stmt 1 view .LVU564 -2800:Src/main.c **** { - 1741 .loc 1 2800 5 is_stmt 0 view .LVU565 - 1742 0038 B4F5805F cmp r4, #4096 - 1743 003c 04D8 bhi .L119 - 1744 .LVL172: - 1745 .L102: -2804:Src/main.c **** { - 1746 .loc 1 2804 2 is_stmt 1 view .LVU566 -2804:Src/main.c **** { - 1747 .loc 1 2804 5 is_stmt 0 view .LVU567 - 1748 003e 35B1 cbz r5, .L120 -2808:Src/main.c **** { - 1749 .loc 1 2808 2 is_stmt 1 view .LVU568 -2808:Src/main.c **** { - 1750 .loc 1 2808 5 is_stmt 0 view .LVU569 - 1751 0040 0F2D cmp r5, #15 - 1752 0042 05D9 bls .L103 -2810:Src/main.c **** } - 1753 .loc 1 2810 8 view .LVU570 - 1754 0044 0F25 movs r5, #15 - 1755 .LVL173: - ARM GAS /tmp/ccwR4KB7.s page 159 - - -2810:Src/main.c **** } - 1756 .loc 1 2810 8 view .LVU571 - 1757 0046 03E0 b .L103 - 1758 .LVL174: - 1759 .L119: -2802:Src/main.c **** } - 1760 .loc 1 2802 11 view .LVU572 - 1761 0048 4FF48054 mov r4, #4096 - 1762 .LVL175: -2802:Src/main.c **** } - 1763 .loc 1 2802 11 view .LVU573 - 1764 004c F7E7 b .L102 - 1765 .LVL176: - 1766 .L120: -2806:Src/main.c **** } - 1767 .loc 1 2806 8 view .LVU574 - 1768 004e 0125 movs r5, #1 - 1769 .LVL177: - 1770 .L103: -2813:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 1771 .loc 1 2813 2 is_stmt 1 view .LVU575 -2813:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 1772 .loc 1 2813 63 is_stmt 0 view .LVU576 - 1773 0050 2E02 lsls r6, r5, #8 - 1774 0052 06F47066 and r6, r6, #3840 -2813:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 1775 .loc 1 2813 11 view .LVU577 - 1776 0056 46F01106 orr r6, r6, #17 - 1777 .LVL178: -2816:Src/main.c **** if (pat_period == 0u) - 1778 .loc 1 2816 2 is_stmt 1 view .LVU578 -2816:Src/main.c **** if (pat_period == 0u) - 1779 .loc 1 2816 24 is_stmt 0 view .LVU579 - 1780 005a 0194 str r4, [sp, #4] -2816:Src/main.c **** if (pat_period == 0u) - 1781 .loc 1 2816 44 view .LVU580 - 1782 005c 05F00F05 and r5, r5, #15 - 1783 .LVL179: -2816:Src/main.c **** if (pat_period == 0u) - 1784 .loc 1 2816 11 view .LVU581 - 1785 0060 04FB05F5 mul r5, r4, r5 - 1786 .LVL180: -2817:Src/main.c **** { - 1787 .loc 1 2817 2 is_stmt 1 view .LVU582 -2817:Src/main.c **** { - 1788 .loc 1 2817 5 is_stmt 0 view .LVU583 - 1789 0064 1DB1 cbz r5, .L104 -2821:Src/main.c **** { - 1790 .loc 1 2821 2 is_stmt 1 view .LVU584 -2821:Src/main.c **** { - 1791 .loc 1 2821 5 is_stmt 0 view .LVU585 - 1792 0066 B5F5803F cmp r5, #65536 - 1793 006a 4CD2 bcs .L122 - 1794 006c 0195 str r5, [sp, #4] - 1795 .L104: - 1796 .LVL181: -2826:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 160 - - - 1797 .loc 1 2826 2 is_stmt 1 view .LVU586 -2826:Src/main.c **** - 1798 .loc 1 2826 43 is_stmt 0 view .LVU587 - 1799 006e 013C subs r4, r4, #1 - 1800 .LVL182: -2826:Src/main.c **** - 1801 .loc 1 2826 43 view .LVU588 - 1802 0070 A4B2 uxth r4, r4 -2826:Src/main.c **** - 1803 .loc 1 2826 11 view .LVU589 - 1804 0072 2401 lsls r4, r4, #4 - 1805 0074 A4B2 uxth r4, r4 - 1806 .LVL183: -2828:Src/main.c **** - 1807 .loc 1 2828 2 is_stmt 1 view .LVU590 -2830:Src/main.c **** { - 1808 .loc 1 2830 2 view .LVU591 -2830:Src/main.c **** { - 1809 .loc 1 2830 5 is_stmt 0 view .LVU592 - 1810 0076 BAF1000F cmp r10, #0 - 1811 007a 48D1 bne .L123 -2828:Src/main.c **** - 1812 .loc 1 2828 10 view .LVU593 - 1813 007c 0125 movs r5, #1 - 1814 .L105: - 1815 .LVL184: -2834:Src/main.c **** { - 1816 .loc 1 2834 2 is_stmt 1 view .LVU594 -2834:Src/main.c **** { - 1817 .loc 1 2834 5 is_stmt 0 view .LVU595 - 1818 007e 19F4F47F tst r9, #488 - 1819 0082 00D0 beq .L106 -2836:Src/main.c **** } - 1820 .loc 1 2836 6 view .LVU596 - 1821 0084 0025 movs r5, #0 - 1822 .LVL185: - 1823 .L106: -2838:Src/main.c **** { - 1824 .loc 1 2838 2 is_stmt 1 view .LVU597 -2838:Src/main.c **** { - 1825 .loc 1 2838 5 is_stmt 0 view .LVU598 - 1826 0086 18F40E6F tst r8, #2272 - 1827 008a 00D0 beq .L107 -2840:Src/main.c **** } - 1828 .loc 1 2840 6 view .LVU599 - 1829 008c 0025 movs r5, #0 - 1830 .LVL186: - 1831 .L107: -2842:Src/main.c **** { - 1832 .loc 1 2842 2 is_stmt 1 view .LVU600 -2842:Src/main.c **** { - 1833 .loc 1 2842 5 is_stmt 0 view .LVU601 - 1834 008e 10F03F0F tst r0, #63 - 1835 0092 00D0 beq .L108 -2844:Src/main.c **** } - 1836 .loc 1 2844 6 view .LVU602 - 1837 0094 0025 movs r5, #0 - ARM GAS /tmp/ccwR4KB7.s page 161 - - - 1838 .LVL187: - 1839 .L108: + 1183 .loc 1 2845 1 is_stmt 1 view -0 + 1184 .cfi_startproc + 1185 @ args = 0, pretend = 0, frame = 0 + 1186 @ frame_needed = 0, uses_anonymous_args = 0 +2845:Src/main.c **** if (samples < 2u) + 1187 .loc 1 2845 1 is_stmt 0 view .LVU392 + 1188 0000 F8B5 push {r3, r4, r5, r6, r7, lr} + 1189 .LCFI11: + 1190 .cfi_def_cfa_offset 24 + 1191 .cfi_offset 3, -24 + 1192 .cfi_offset 4, -20 + 1193 .cfi_offset 5, -16 + 1194 .cfi_offset 6, -12 + 1195 .cfi_offset 7, -8 + 1196 .cfi_offset 14, -4 + 1197 0002 0F46 mov r7, r1 + 1198 0004 1646 mov r6, r2 2846:Src/main.c **** { - 1840 .loc 1 2846 2 is_stmt 1 view .LVU603 + 1199 .loc 1 2846 2 is_stmt 1 view .LVU393 2846:Src/main.c **** { - 1841 .loc 1 2846 5 is_stmt 0 view .LVU604 - 1842 0096 1FB1 cbz r7, .L109 -2846:Src/main.c **** { - 1843 .loc 1 2846 17 discriminator 1 view .LVU605 - 1844 0098 1BF0010F tst fp, #1 - 1845 009c 00D1 bne .L109 + 1200 .loc 1 2846 5 is_stmt 0 view .LVU394 + 1201 0006 0128 cmp r0, #1 + 1202 0008 06D9 bls .L71 + 1203 000a 0546 mov r5, r0 +2850:Src/main.c **** { + 1204 .loc 1 2850 2 is_stmt 1 view .LVU395 +2850:Src/main.c **** { + 1205 .loc 1 2850 5 is_stmt 0 view .LVU396 + 1206 000c B0F5805F cmp r0, #4096 + 1207 0010 03D9 bls .L58 +2852:Src/main.c **** } + 1208 .loc 1 2852 11 view .LVU397 + 1209 0012 4FF48055 mov r5, #4096 + 1210 0016 00E0 b .L58 + 1211 .L71: 2848:Src/main.c **** } - 1846 .loc 1 2848 6 view .LVU606 - 1847 009e 0025 movs r5, #0 - 1848 .LVL188: - 1849 .L109: -2851:Src/main.c **** { - 1850 .loc 1 2851 2 is_stmt 1 view .LVU607 -2851:Src/main.c **** { - 1851 .loc 1 2851 6 is_stmt 0 view .LVU608 - 1852 00a0 2720 movs r0, #39 - 1853 .LVL189: -2851:Src/main.c **** { - 1854 .loc 1 2851 6 view .LVU609 - 1855 00a2 FFF7FEFF bl AD9102_ReadReg - 1856 .LVL190: -2851:Src/main.c **** { - 1857 .loc 1 2851 5 discriminator 1 view .LVU610 - 1858 00a6 43F23003 movw r3, #12336 - 1859 00aa 9842 cmp r0, r3 - 1860 00ac 00D0 beq .L110 -2853:Src/main.c **** } - 1861 .loc 1 2853 6 view .LVU611 - 1862 00ae 0025 movs r5, #0 - 1863 .LVL191: - 1864 .L110: -2855:Src/main.c **** { - 1865 .loc 1 2855 2 is_stmt 1 view .LVU612 -2855:Src/main.c **** { - 1866 .loc 1 2855 6 is_stmt 0 view .LVU613 - 1867 00b0 2820 movs r0, #40 - 1868 00b2 FFF7FEFF bl AD9102_ReadReg - 1869 .LVL192: -2855:Src/main.c **** { - 1870 .loc 1 2855 5 discriminator 1 view .LVU614 - 1871 00b6 B042 cmp r0, r6 - 1872 00b8 00D0 beq .L111 -2857:Src/main.c **** } - 1873 .loc 1 2857 6 view .LVU615 - 1874 00ba 0025 movs r5, #0 - 1875 .LVL193: - 1876 .L111: -2859:Src/main.c **** { - 1877 .loc 1 2859 2 is_stmt 1 view .LVU616 -2859:Src/main.c **** { - 1878 .loc 1 2859 6 is_stmt 0 view .LVU617 - 1879 00bc 2920 movs r0, #41 - ARM GAS /tmp/ccwR4KB7.s page 162 + 1212 .loc 1 2848 11 view .LVU398 + 1213 0018 0225 movs r5, #2 + 1214 .L58: + 1215 .LVL101: +2854:Src/main.c **** { + 1216 .loc 1 2854 2 is_stmt 1 view .LVU399 +2854:Src/main.c **** { + 1217 .loc 1 2854 5 is_stmt 0 view .LVU400 + 1218 001a B6F5005F cmp r6, #8192 + 1219 001e 01D3 bcc .L59 +2856:Src/main.c **** } + 1220 .loc 1 2856 13 view .LVU401 + 1221 0020 41F6FF76 movw r6, #8191 + 1222 .L59: + 1223 .LVL102: +2860:Src/main.c **** + 1224 .loc 1 2860 2 is_stmt 1 view .LVU402 + 1225 0024 0421 movs r1, #4 + 1226 .LVL103: +2860:Src/main.c **** + 1227 .loc 1 2860 2 is_stmt 0 view .LVU403 + ARM GAS /tmp/ccEQxcUB.s page 152 - 1880 00be FFF7FEFF bl AD9102_ReadReg - 1881 .LVL194: -2859:Src/main.c **** { - 1882 .loc 1 2859 44 discriminator 1 view .LVU618 - 1883 00c2 BDF80430 ldrh r3, [sp, #4] -2859:Src/main.c **** { - 1884 .loc 1 2859 5 discriminator 1 view .LVU619 - 1885 00c6 9842 cmp r0, r3 - 1886 00c8 00D0 beq .L112 -2861:Src/main.c **** } - 1887 .loc 1 2861 6 view .LVU620 - 1888 00ca 0025 movs r5, #0 - 1889 .LVL195: - 1890 .L112: -2863:Src/main.c **** { - 1891 .loc 1 2863 2 is_stmt 1 view .LVU621 -2863:Src/main.c **** { - 1892 .loc 1 2863 6 is_stmt 0 view .LVU622 - 1893 00cc 1F20 movs r0, #31 - 1894 00ce FFF7FEFF bl AD9102_ReadReg - 1895 .LVL196: -2863:Src/main.c **** { - 1896 .loc 1 2863 5 discriminator 1 view .LVU623 - 1897 00d2 00B1 cbz r0, .L113 -2865:Src/main.c **** } - 1898 .loc 1 2865 6 view .LVU624 - 1899 00d4 0025 movs r5, #0 - 1900 .LVL197: - 1901 .L113: -2867:Src/main.c **** { - 1902 .loc 1 2867 2 is_stmt 1 view .LVU625 -2867:Src/main.c **** { - 1903 .loc 1 2867 6 is_stmt 0 view .LVU626 - 1904 00d6 5D20 movs r0, #93 - 1905 00d8 FFF7FEFF bl AD9102_ReadReg - 1906 .LVL198: -2867:Src/main.c **** { - 1907 .loc 1 2867 5 discriminator 1 view .LVU627 - 1908 00dc 00B1 cbz r0, .L114 -2869:Src/main.c **** } - 1909 .loc 1 2869 6 view .LVU628 - 1910 00de 0025 movs r5, #0 - 1911 .LVL199: - 1912 .L114: -2871:Src/main.c **** { - 1913 .loc 1 2871 2 is_stmt 1 view .LVU629 -2871:Src/main.c **** { - 1914 .loc 1 2871 6 is_stmt 0 view .LVU630 - 1915 00e0 5E20 movs r0, #94 - 1916 00e2 FFF7FEFF bl AD9102_ReadReg - 1917 .LVL200: -2871:Src/main.c **** { - 1918 .loc 1 2871 5 discriminator 1 view .LVU631 - 1919 00e6 A042 cmp r0, r4 - 1920 00e8 00D0 beq .L115 -2873:Src/main.c **** } - 1921 .loc 1 2873 6 view .LVU632 - ARM GAS /tmp/ccwR4KB7.s page 163 + 1228 0026 1E20 movs r0, #30 + 1229 0028 FFF7FEFF bl AD9102_WriteReg + 1230 .LVL104: +2862:Src/main.c **** { + 1231 .loc 1 2862 2 is_stmt 1 view .LVU404 + 1232 .LBB388: +2862:Src/main.c **** { + 1233 .loc 1 2862 7 view .LVU405 +2862:Src/main.c **** { + 1234 .loc 1 2862 16 is_stmt 0 view .LVU406 + 1235 002c 0024 movs r4, #0 +2862:Src/main.c **** { + 1236 .loc 1 2862 2 view .LVU407 + 1237 002e 2DE0 b .L60 + 1238 .LVL105: + 1239 .L82: + 1240 .LBB389: + 1241 .LBB390: +2873:Src/main.c **** } + 1242 .loc 1 2873 10 view .LVU408 + 1243 0030 0122 movs r2, #1 + 1244 .LVL106: +2873:Src/main.c **** } + 1245 .loc 1 2873 10 view .LVU409 + 1246 0032 34E0 b .L62 + 1247 .LVL107: + 1248 .L75: + 1249 .LBB391: +2877:Src/main.c **** if (span == 0) + 1250 .loc 1 2877 14 discriminator 2 view .LVU410 + 1251 0034 0122 movs r2, #1 + 1252 .LVL108: +2877:Src/main.c **** if (span == 0) + 1253 .loc 1 2877 14 discriminator 2 view .LVU411 + 1254 0036 38E0 b .L64 + 1255 .LVL109: + 1256 .L63: +2877:Src/main.c **** if (span == 0) + 1257 .loc 1 2877 14 discriminator 2 view .LVU412 + 1258 .LBE391: + 1259 .LBB392: +2889:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; + 1260 .loc 1 2889 5 is_stmt 1 view .LVU413 +2889:Src/main.c **** uint16_t denom = (tail > 1u) ? (uint16_t)(tail - 1u) : 1u; + 1261 .loc 1 2889 14 is_stmt 0 view .LVU414 + 1262 0038 A91A subs r1, r5, r2 + 1263 003a 89B2 uxth r1, r1 + 1264 .LVL110: +2890:Src/main.c **** if (span == 0) + 1265 .loc 1 2890 5 is_stmt 1 view .LVU415 +2890:Src/main.c **** if (span == 0) + 1266 .loc 1 2890 14 is_stmt 0 view .LVU416 + 1267 003c 0129 cmp r1, #1 + 1268 003e 09D9 bls .L76 +2890:Src/main.c **** if (span == 0) + 1269 .loc 1 2890 14 discriminator 1 view .LVU417 + 1270 0040 0139 subs r1, r1, #1 + ARM GAS /tmp/ccEQxcUB.s page 153 - 1922 00ea 0025 movs r5, #0 - 1923 .LVL201: - 1924 .L115: -2875:Src/main.c **** { - 1925 .loc 1 2875 2 is_stmt 1 view .LVU633 -2875:Src/main.c **** { - 1926 .loc 1 2875 6 is_stmt 0 view .LVU634 - 1927 00ec 2B20 movs r0, #43 - 1928 00ee FFF7FEFF bl AD9102_ReadReg - 1929 .LVL202: -2875:Src/main.c **** { - 1930 .loc 1 2875 5 discriminator 1 view .LVU635 - 1931 00f2 40F20113 movw r3, #257 - 1932 00f6 9842 cmp r0, r3 - 1933 00f8 00D0 beq .L116 -2877:Src/main.c **** } - 1934 .loc 1 2877 6 view .LVU636 - 1935 00fa 0025 movs r5, #0 - 1936 .LVL203: - 1937 .L116: -2880:Src/main.c **** } - 1938 .loc 1 2880 2 is_stmt 1 view .LVU637 -2881:Src/main.c **** - 1939 .loc 1 2881 1 is_stmt 0 view .LVU638 - 1940 00fc 85F00100 eor r0, r5, #1 - 1941 0100 03B0 add sp, sp, #12 - 1942 .LCFI18: - 1943 .cfi_remember_state - 1944 .cfi_def_cfa_offset 36 - 1945 @ sp needed - 1946 0102 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} - 1947 .LVL204: - 1948 .L122: - 1949 .LCFI19: - 1950 .cfi_restore_state -2823:Src/main.c **** } - 1951 .loc 1 2823 14 view .LVU639 - 1952 0106 4FF6FF73 movw r3, #65535 - 1953 010a 0193 str r3, [sp, #4] - 1954 010c AFE7 b .L104 - 1955 .LVL205: - 1956 .L123: -2832:Src/main.c **** } - 1957 .loc 1 2832 6 view .LVU640 - 1958 010e 0025 movs r5, #0 - 1959 0110 B5E7 b .L105 - 1960 .cfi_endproc - 1961 .LFE1219: - 1963 .section .text.AD9102_CheckFlags,"ax",%progbits - 1964 .align 1 - 1965 .syntax unified - 1966 .thumb - 1967 .thumb_func - 1969 AD9102_CheckFlags: - 1970 .LVL206: - 1971 .LFB1218: -2706:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); - ARM GAS /tmp/ccwR4KB7.s page 164 + 1271 .LVL111: +2890:Src/main.c **** if (span == 0) + 1272 .loc 1 2890 14 discriminator 1 view .LVU418 + 1273 0042 89B2 uxth r1, r1 + 1274 .LVL112: + 1275 .L67: +2891:Src/main.c **** { + 1276 .loc 1 2891 5 is_stmt 1 view .LVU419 +2891:Src/main.c **** { + 1277 .loc 1 2891 8 is_stmt 0 view .LVU420 + 1278 0044 ABB1 cbz r3, .L65 +2897:Src/main.c **** } + 1279 .loc 1 2897 6 is_stmt 1 view .LVU421 +2897:Src/main.c **** } + 1280 .loc 1 2897 44 is_stmt 0 view .LVU422 + 1281 0046 A21A subs r2, r4, r2 + 1282 .LVL113: +2897:Src/main.c **** } + 1283 .loc 1 2897 30 view .LVU423 + 1284 0048 03FB02F2 mul r2, r3, r2 +2897:Src/main.c **** } + 1285 .loc 1 2897 53 view .LVU424 + 1286 004c 92FBF1F2 sdiv r2, r2, r1 +2897:Src/main.c **** } + 1287 .loc 1 2897 12 view .LVU425 + 1288 0050 831A subs r3, r0, r2 + 1289 .LVL114: +2897:Src/main.c **** } + 1290 .loc 1 2897 12 view .LVU426 + 1291 0052 0BE0 b .L66 + 1292 .LVL115: + 1293 .L76: +2890:Src/main.c **** if (span == 0) + 1294 .loc 1 2890 14 discriminator 2 view .LVU427 + 1295 0054 0121 movs r1, #1 + 1296 .LVL116: +2890:Src/main.c **** if (span == 0) + 1297 .loc 1 2890 14 discriminator 2 view .LVU428 + 1298 0056 F5E7 b .L67 + 1299 .LVL117: + 1300 .L61: +2890:Src/main.c **** if (span == 0) + 1301 .loc 1 2890 14 discriminator 2 view .LVU429 + 1302 .LBE392: + 1303 .LBE390: + 1304 .LBB394: +2903:Src/main.c **** if (span == 0) + 1305 .loc 1 2903 4 is_stmt 1 view .LVU430 +2903:Src/main.c **** if (span == 0) + 1306 .loc 1 2903 13 is_stmt 0 view .LVU431 + 1307 0058 012D cmp r5, #1 + 1308 005a 2ED9 bls .L77 +2903:Src/main.c **** if (span == 0) + 1309 .loc 1 2903 13 discriminator 1 view .LVU432 + 1310 005c 6A1E subs r2, r5, #1 + 1311 005e 92B2 uxth r2, r2 + 1312 .L68: + ARM GAS /tmp/ccEQxcUB.s page 154 - 1972 .loc 1 2706 1 is_stmt 1 view -0 - 1973 .cfi_startproc - 1974 @ args = 8, pretend = 0, frame = 8 - 1975 @ frame_needed = 0, uses_anonymous_args = 0 -2706:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); - 1976 .loc 1 2706 1 is_stmt 0 view .LVU642 - 1977 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} - 1978 .LCFI20: - 1979 .cfi_def_cfa_offset 36 - 1980 .cfi_offset 4, -36 - 1981 .cfi_offset 5, -32 - 1982 .cfi_offset 6, -28 - 1983 .cfi_offset 7, -24 - 1984 .cfi_offset 8, -20 - 1985 .cfi_offset 9, -16 - 1986 .cfi_offset 10, -12 - 1987 .cfi_offset 11, -8 - 1988 .cfi_offset 14, -4 - 1989 0004 83B0 sub sp, sp, #12 - 1990 .LCFI21: - 1991 .cfi_def_cfa_offset 48 - 1992 0006 0190 str r0, [sp, #4] - 1993 0008 0F46 mov r7, r1 - 1994 000a 1546 mov r5, r2 - 1995 000c 1C46 mov r4, r3 - 1996 000e BDF834B0 ldrh fp, [sp, #52] -2707:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1997 .loc 1 2707 2 is_stmt 1 view .LVU643 -2707:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 1998 .loc 1 2707 23 is_stmt 0 view .LVU644 - 1999 0012 0020 movs r0, #0 - 2000 .LVL207: -2707:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 2001 .loc 1 2707 23 view .LVU645 - 2002 0014 FFF7FEFF bl AD9102_ReadReg - 2003 .LVL208: -2707:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); - 2004 .loc 1 2707 23 view .LVU646 - 2005 0018 8246 mov r10, r0 - 2006 .LVL209: -2708:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); - 2007 .loc 1 2708 2 is_stmt 1 view .LVU647 -2708:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); - 2008 .loc 1 2708 22 is_stmt 0 view .LVU648 - 2009 001a 0120 movs r0, #1 - 2010 001c FFF7FEFF bl AD9102_ReadReg - 2011 .LVL210: - 2012 0020 8146 mov r9, r0 - 2013 .LVL211: -2709:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); - 2014 .loc 1 2709 2 is_stmt 1 view .LVU649 -2709:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); - 2015 .loc 1 2709 22 is_stmt 0 view .LVU650 - 2016 0022 0220 movs r0, #2 - 2017 0024 FFF7FEFF bl AD9102_ReadReg - 2018 .LVL212: - 2019 0028 8046 mov r8, r0 - ARM GAS /tmp/ccwR4KB7.s page 165 + 1313 .LVL118: +2904:Src/main.c **** { + 1314 .loc 1 2904 4 is_stmt 1 view .LVU433 +2904:Src/main.c **** { + 1315 .loc 1 2904 7 is_stmt 0 view .LVU434 + 1316 0060 3BB1 cbz r3, .L65 +2910:Src/main.c **** } + 1317 .loc 1 2910 5 is_stmt 1 view .LVU435 +2910:Src/main.c **** } + 1318 .loc 1 2910 29 is_stmt 0 view .LVU436 + 1319 0062 04FB03F3 mul r3, r4, r3 + 1320 .LVL119: +2910:Src/main.c **** } + 1321 .loc 1 2910 43 view .LVU437 + 1322 0066 93FBF2F3 sdiv r3, r3, r2 + 1323 006a 1B1A subs r3, r3, r0 + 1324 .LVL120: + 1325 .L66: +2910:Src/main.c **** } + 1326 .loc 1 2910 43 view .LVU438 + 1327 .LBE394: +2914:Src/main.c **** { + 1328 .loc 1 2914 3 is_stmt 1 view .LVU439 +2914:Src/main.c **** { + 1329 .loc 1 2914 6 is_stmt 0 view .LVU440 + 1330 006c 13F5005F cmn r3, #8192 + 1331 0070 25DB blt .L78 + 1332 .LVL121: + 1333 .L65: +2918:Src/main.c **** { + 1334 .loc 1 2918 8 is_stmt 1 view .LVU441 +2918:Src/main.c **** { + 1335 .loc 1 2918 11 is_stmt 0 view .LVU442 + 1336 0072 B3F5005F cmp r3, #8192 + 1337 0076 24DA bge .L79 + 1338 .L69: + 1339 .LVL122: +2923:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); + 1340 .loc 1 2923 3 is_stmt 1 view .LVU443 +2923:Src/main.c **** uint16_t word = (uint16_t)(sample_u14 << 2); + 1341 .loc 1 2923 25 is_stmt 0 view .LVU444 + 1342 0078 99B2 uxth r1, r3 + 1343 .LVL123: +2924:Src/main.c **** AD9102_WriteReg((uint16_t)(AD9102_REG_SRAM_DATA_BASE + i), word); + 1344 .loc 1 2924 3 is_stmt 1 view .LVU445 +2925:Src/main.c **** } + 1345 .loc 1 2925 3 view .LVU446 + 1346 007a 8900 lsls r1, r1, #2 + 1347 .LVL124: +2925:Src/main.c **** } + 1348 .loc 1 2925 3 is_stmt 0 view .LVU447 + 1349 007c 89B2 uxth r1, r1 + 1350 007e 04F5C040 add r0, r4, #24576 + 1351 .LVL125: +2925:Src/main.c **** } + 1352 .loc 1 2925 3 view .LVU448 + 1353 0082 80B2 uxth r0, r0 + ARM GAS /tmp/ccEQxcUB.s page 155 - 2020 .LVL213: -2710:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | - 2021 .loc 1 2710 2 is_stmt 1 view .LVU651 -2710:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | - 2022 .loc 1 2710 21 is_stmt 0 view .LVU652 - 2023 002a 6020 movs r0, #96 - 2024 002c FFF7FEFF bl AD9102_ReadReg - 2025 .LVL214: -2711:Src/main.c **** ((pat_base & 0x0Fu) << 4) | - 2026 .loc 1 2711 2 is_stmt 1 view .LVU653 -2712:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); - 2027 .loc 1 2712 57 is_stmt 0 view .LVU654 - 2028 0030 9DF83030 ldrb r3, [sp, #48] @ zero_extendqisi2 - 2029 0034 1B01 lsls r3, r3, #4 - 2030 0036 03F0F003 and r3, r3, #240 -2711:Src/main.c **** ((pat_base & 0x0Fu) << 4) | - 2031 .loc 1 2711 11 view .LVU655 - 2032 003a 40F20116 movw r6, #257 - 2033 003e 1E43 orrs r6, r6, r3 - 2034 .LVL215: -2715:Src/main.c **** { - 2035 .loc 1 2715 2 is_stmt 1 view .LVU656 -2715:Src/main.c **** { - 2036 .loc 1 2715 5 is_stmt 0 view .LVU657 - 2037 0040 1CB1 cbz r4, .L149 -2719:Src/main.c **** { - 2038 .loc 1 2719 2 is_stmt 1 view .LVU658 -2719:Src/main.c **** { - 2039 .loc 1 2719 5 is_stmt 0 view .LVU659 - 2040 0042 3F2C cmp r4, #63 - 2041 0044 02D9 bls .L137 -2721:Src/main.c **** } - 2042 .loc 1 2721 12 view .LVU660 - 2043 0046 3F24 movs r4, #63 - 2044 .LVL216: -2721:Src/main.c **** } - 2045 .loc 1 2721 12 view .LVU661 - 2046 0048 00E0 b .L137 - 2047 .LVL217: - 2048 .L149: -2717:Src/main.c **** } - 2049 .loc 1 2717 12 view .LVU662 - 2050 004a 0124 movs r4, #1 - 2051 .LVL218: - 2052 .L137: -2723:Src/main.c **** { - 2053 .loc 1 2723 2 is_stmt 1 view .LVU663 -2723:Src/main.c **** { - 2054 .loc 1 2723 5 is_stmt 0 view .LVU664 - 2055 004c BBF1000F cmp fp, #0 - 2056 0050 01D1 bne .L138 -2725:Src/main.c **** } - 2057 .loc 1 2725 14 view .LVU665 - 2058 0052 4FF6FF7B movw fp, #65535 - 2059 .L138: - 2060 .LVL219: -2727:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - ARM GAS /tmp/ccwR4KB7.s page 166 + 1354 0084 FFF7FEFF bl AD9102_WriteReg + 1355 .LVL126: +2925:Src/main.c **** } + 1356 .loc 1 2925 3 view .LVU449 + 1357 .LBE389: +2862:Src/main.c **** { + 1358 .loc 1 2862 37 is_stmt 1 discriminator 2 view .LVU450 + 1359 0088 0134 adds r4, r4, #1 + 1360 .LVL127: +2862:Src/main.c **** { + 1361 .loc 1 2862 37 is_stmt 0 discriminator 2 view .LVU451 + 1362 008a A4B2 uxth r4, r4 + 1363 .LVL128: + 1364 .L60: +2862:Src/main.c **** { + 1365 .loc 1 2862 25 is_stmt 1 discriminator 1 view .LVU452 + 1366 008c A542 cmp r5, r4 + 1367 008e 1BD9 bls .L81 + 1368 .LBB397: +2864:Src/main.c **** int32_t min_val = -(int32_t)amplitude; + 1369 .loc 1 2864 3 view .LVU453 +2865:Src/main.c **** int32_t max_val = (int32_t)amplitude; + 1370 .loc 1 2865 3 view .LVU454 +2865:Src/main.c **** int32_t max_val = (int32_t)amplitude; + 1371 .loc 1 2865 22 is_stmt 0 view .LVU455 + 1372 0090 3046 mov r0, r6 + 1373 .LVL129: +2866:Src/main.c **** int32_t span = max_val - min_val; + 1374 .loc 1 2866 3 is_stmt 1 view .LVU456 +2867:Src/main.c **** if (triangle) + 1375 .loc 1 2867 3 view .LVU457 +2867:Src/main.c **** if (triangle) + 1376 .loc 1 2867 11 is_stmt 0 view .LVU458 + 1377 0092 7300 lsls r3, r6, #1 + 1378 .LVL130: +2868:Src/main.c **** { + 1379 .loc 1 2868 3 is_stmt 1 view .LVU459 +2868:Src/main.c **** { + 1380 .loc 1 2868 6 is_stmt 0 view .LVU460 + 1381 0094 002F cmp r7, #0 + 1382 0096 DFD0 beq .L61 + 1383 .LBB395: +2870:Src/main.c **** if (half == 0u) + 1384 .loc 1 2870 4 is_stmt 1 view .LVU461 +2870:Src/main.c **** if (half == 0u) + 1385 .loc 1 2870 13 is_stmt 0 view .LVU462 + 1386 0098 6A08 lsrs r2, r5, #1 + 1387 .LVL131: +2871:Src/main.c **** { + 1388 .loc 1 2871 4 is_stmt 1 view .LVU463 +2871:Src/main.c **** { + 1389 .loc 1 2871 7 is_stmt 0 view .LVU464 + 1390 009a 012D cmp r5, #1 + 1391 009c C8D9 bls .L82 + 1392 .LVL132: + 1393 .L62: +2875:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 156 - 2061 .loc 1 2727 2 is_stmt 1 view .LVU666 -2728:Src/main.c **** - 2062 .loc 1 2728 35 is_stmt 0 view .LVU667 - 2063 0056 05F00305 and r5, r5, #3 - 2064 .LVL220: -2727:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2065 .loc 1 2727 71 view .LVU668 - 2066 005a A400 lsls r4, r4, #2 - 2067 .LVL221: -2727:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2068 .loc 1 2727 71 view .LVU669 - 2069 005c E4B2 uxtb r4, r4 -2727:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2070 .loc 1 2727 11 view .LVU670 - 2071 005e 2543 orrs r5, r5, r4 - 2072 .LVL222: -2730:Src/main.c **** - 2073 .loc 1 2730 2 is_stmt 1 view .LVU671 -2733:Src/main.c **** { - 2074 .loc 1 2733 2 view .LVU672 -2733:Src/main.c **** { - 2075 .loc 1 2733 5 is_stmt 0 view .LVU673 - 2076 0060 BAF1000F cmp r10, #0 - 2077 0064 36D1 bne .L152 -2730:Src/main.c **** - 2078 .loc 1 2730 10 view .LVU674 - 2079 0066 0124 movs r4, #1 - 2080 .L139: - 2081 .LVL223: -2739:Src/main.c **** { - 2082 .loc 1 2739 2 is_stmt 1 view .LVU675 -2739:Src/main.c **** { - 2083 .loc 1 2739 5 is_stmt 0 view .LVU676 - 2084 0068 19F4F47F tst r9, #488 - 2085 006c 00D0 beq .L140 -2741:Src/main.c **** } - 2086 .loc 1 2741 6 view .LVU677 - 2087 006e 0024 movs r4, #0 - 2088 .LVL224: - 2089 .L140: -2745:Src/main.c **** { - 2090 .loc 1 2745 2 is_stmt 1 view .LVU678 -2745:Src/main.c **** { - 2091 .loc 1 2745 5 is_stmt 0 view .LVU679 - 2092 0070 18F40E6F tst r8, #2272 - 2093 0074 00D0 beq .L141 -2747:Src/main.c **** } - 2094 .loc 1 2747 6 view .LVU680 - 2095 0076 0024 movs r4, #0 - 2096 .LVL225: - 2097 .L141: -2751:Src/main.c **** { - 2098 .loc 1 2751 2 is_stmt 1 view .LVU681 -2751:Src/main.c **** { - 2099 .loc 1 2751 5 is_stmt 0 view .LVU682 - 2100 0078 10F03F0F tst r0, #63 - 2101 007c 00D0 beq .L142 - ARM GAS /tmp/ccwR4KB7.s page 167 + 1394 .loc 1 2875 4 is_stmt 1 view .LVU465 +2875:Src/main.c **** { + 1395 .loc 1 2875 7 is_stmt 0 view .LVU466 + 1396 009e 9442 cmp r4, r2 + 1397 00a0 CAD2 bcs .L63 + 1398 .LBB393: +2877:Src/main.c **** if (span == 0) + 1399 .loc 1 2877 5 is_stmt 1 view .LVU467 +2877:Src/main.c **** if (span == 0) + 1400 .loc 1 2877 14 is_stmt 0 view .LVU468 + 1401 00a2 012A cmp r2, #1 + 1402 00a4 C6D9 bls .L75 +2877:Src/main.c **** if (span == 0) + 1403 .loc 1 2877 14 discriminator 1 view .LVU469 + 1404 00a6 013A subs r2, r2, #1 + 1405 .LVL133: +2877:Src/main.c **** if (span == 0) + 1406 .loc 1 2877 14 discriminator 1 view .LVU470 + 1407 00a8 92B2 uxth r2, r2 + 1408 .LVL134: + 1409 .L64: +2878:Src/main.c **** { + 1410 .loc 1 2878 5 is_stmt 1 view .LVU471 +2878:Src/main.c **** { + 1411 .loc 1 2878 8 is_stmt 0 view .LVU472 + 1412 00aa 002B cmp r3, #0 + 1413 00ac E1D0 beq .L65 +2884:Src/main.c **** } + 1414 .loc 1 2884 6 is_stmt 1 view .LVU473 +2884:Src/main.c **** } + 1415 .loc 1 2884 30 is_stmt 0 view .LVU474 + 1416 00ae 04FB03F3 mul r3, r4, r3 + 1417 .LVL135: +2884:Src/main.c **** } + 1418 .loc 1 2884 44 view .LVU475 + 1419 00b2 93FBF2F3 sdiv r3, r3, r2 + 1420 00b6 1B1A subs r3, r3, r0 + 1421 .LVL136: +2884:Src/main.c **** } + 1422 .loc 1 2884 44 view .LVU476 + 1423 00b8 D8E7 b .L66 + 1424 .LVL137: + 1425 .L77: +2884:Src/main.c **** } + 1426 .loc 1 2884 44 view .LVU477 + 1427 .LBE393: + 1428 .LBE395: + 1429 .LBB396: +2903:Src/main.c **** if (span == 0) + 1430 .loc 1 2903 13 discriminator 2 view .LVU478 + 1431 00ba 0122 movs r2, #1 + 1432 00bc D0E7 b .L68 + 1433 .LVL138: + 1434 .L78: +2903:Src/main.c **** if (span == 0) + 1435 .loc 1 2903 13 discriminator 2 view .LVU479 + 1436 .LBE396: + ARM GAS /tmp/ccEQxcUB.s page 157 -2753:Src/main.c **** } - 2102 .loc 1 2753 6 view .LVU683 - 2103 007e 0024 movs r4, #0 - 2104 .LVL226: - 2105 .L142: -2756:Src/main.c **** { - 2106 .loc 1 2756 2 is_stmt 1 view .LVU684 -2756:Src/main.c **** { - 2107 .loc 1 2756 5 is_stmt 0 view .LVU685 - 2108 0080 27B1 cbz r7, .L143 -2756:Src/main.c **** { - 2109 .loc 1 2756 17 discriminator 1 view .LVU686 - 2110 0082 019B ldr r3, [sp, #4] - 2111 0084 13F0010F tst r3, #1 - 2112 0088 00D1 bne .L143 -2758:Src/main.c **** } - 2113 .loc 1 2758 6 view .LVU687 - 2114 008a 0024 movs r4, #0 - 2115 .LVL227: - 2116 .L143: -2761:Src/main.c **** { - 2117 .loc 1 2761 2 is_stmt 1 view .LVU688 -2761:Src/main.c **** { - 2118 .loc 1 2761 6 is_stmt 0 view .LVU689 - 2119 008c 2720 movs r0, #39 - 2120 .LVL228: -2761:Src/main.c **** { - 2121 .loc 1 2761 6 view .LVU690 - 2122 008e FFF7FEFF bl AD9102_ReadReg - 2123 .LVL229: -2761:Src/main.c **** { - 2124 .loc 1 2761 5 discriminator 1 view .LVU691 - 2125 0092 43F21223 movw r3, #12818 - 2126 0096 9842 cmp r0, r3 - 2127 0098 00D0 beq .L144 -2763:Src/main.c **** } - 2128 .loc 1 2763 6 view .LVU692 - 2129 009a 0024 movs r4, #0 - 2130 .LVL230: - 2131 .L144: -2765:Src/main.c **** { - 2132 .loc 1 2765 2 is_stmt 1 view .LVU693 -2765:Src/main.c **** { - 2133 .loc 1 2765 6 is_stmt 0 view .LVU694 - 2134 009c 2820 movs r0, #40 - 2135 009e FFF7FEFF bl AD9102_ReadReg - 2136 .LVL231: -2765:Src/main.c **** { - 2137 .loc 1 2765 5 discriminator 1 view .LVU695 - 2138 00a2 B042 cmp r0, r6 - 2139 00a4 00D0 beq .L145 -2767:Src/main.c **** } - 2140 .loc 1 2767 6 view .LVU696 - 2141 00a6 0024 movs r4, #0 - 2142 .LVL232: - 2143 .L145: -2769:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 168 +2916:Src/main.c **** } + 1437 .loc 1 2916 10 view .LVU480 + 1438 00be 054B ldr r3, .L83 + 1439 .LVL139: +2916:Src/main.c **** } + 1440 .loc 1 2916 10 view .LVU481 + 1441 00c0 DAE7 b .L69 + 1442 .LVL140: + 1443 .L79: +2920:Src/main.c **** } + 1444 .loc 1 2920 10 view .LVU482 + 1445 00c2 41F6FF73 movw r3, #8191 + 1446 00c6 D7E7 b .L69 + 1447 .LVL141: + 1448 .L81: +2920:Src/main.c **** } + 1449 .loc 1 2920 10 view .LVU483 + 1450 .LBE397: + 1451 .LBE388: +2929:Src/main.c **** } + 1452 .loc 1 2929 2 is_stmt 1 view .LVU484 + 1453 00c8 0021 movs r1, #0 + 1454 00ca 1E20 movs r0, #30 + 1455 00cc FFF7FEFF bl AD9102_WriteReg + 1456 .LVL142: +2930:Src/main.c **** + 1457 .loc 1 2930 1 is_stmt 0 view .LVU485 + 1458 00d0 F8BD pop {r3, r4, r5, r6, r7, pc} + 1459 .LVL143: + 1460 .L84: +2930:Src/main.c **** + 1461 .loc 1 2930 1 view .LVU486 + 1462 00d2 00BF .align 2 + 1463 .L83: + 1464 00d4 00E0FFFF .word -8192 + 1465 .cfi_endproc + 1466 .LFE1221: + 1468 .section .text.AD9102_Init,"ax",%progbits + 1469 .align 1 + 1470 .syntax unified + 1471 .thumb + 1472 .thumb_func + 1474 AD9102_Init: + 1475 .LFB1212: +2627:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + 1476 .loc 1 2627 1 is_stmt 1 view -0 + 1477 .cfi_startproc + 1478 @ args = 0, pretend = 0, frame = 8 + 1479 @ frame_needed = 0, uses_anonymous_args = 0 + 1480 0000 00B5 push {lr} + 1481 .LCFI12: + 1482 .cfi_def_cfa_offset 4 + 1483 .cfi_offset 14, -4 + 1484 0002 83B0 sub sp, sp, #12 + 1485 .LCFI13: + 1486 .cfi_def_cfa_offset 16 +2628:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_RESET); + ARM GAS /tmp/ccEQxcUB.s page 158 - 2144 .loc 1 2769 2 is_stmt 1 view .LVU697 -2769:Src/main.c **** { - 2145 .loc 1 2769 6 is_stmt 0 view .LVU698 - 2146 00a8 2920 movs r0, #41 - 2147 00aa FFF7FEFF bl AD9102_ReadReg - 2148 .LVL233: -2769:Src/main.c **** { - 2149 .loc 1 2769 5 discriminator 1 view .LVU699 - 2150 00ae 5845 cmp r0, fp - 2151 00b0 00D0 beq .L146 -2771:Src/main.c **** } - 2152 .loc 1 2771 6 view .LVU700 - 2153 00b2 0024 movs r4, #0 - 2154 .LVL234: - 2155 .L146: -2773:Src/main.c **** { - 2156 .loc 1 2773 2 is_stmt 1 view .LVU701 -2773:Src/main.c **** { - 2157 .loc 1 2773 6 is_stmt 0 view .LVU702 - 2158 00b4 1F20 movs r0, #31 - 2159 00b6 FFF7FEFF bl AD9102_ReadReg - 2160 .LVL235: -2773:Src/main.c **** { - 2161 .loc 1 2773 5 discriminator 1 view .LVU703 - 2162 00ba 00B1 cbz r0, .L147 -2775:Src/main.c **** } - 2163 .loc 1 2775 6 view .LVU704 - 2164 00bc 0024 movs r4, #0 - 2165 .LVL236: - 2166 .L147: -2777:Src/main.c **** { - 2167 .loc 1 2777 2 is_stmt 1 view .LVU705 -2777:Src/main.c **** { - 2168 .loc 1 2777 6 is_stmt 0 view .LVU706 - 2169 00be 3720 movs r0, #55 - 2170 00c0 FFF7FEFF bl AD9102_ReadReg - 2171 .LVL237: -2777:Src/main.c **** { - 2172 .loc 1 2777 5 discriminator 1 view .LVU707 - 2173 00c4 A842 cmp r0, r5 - 2174 00c6 00D0 beq .L148 -2779:Src/main.c **** } - 2175 .loc 1 2779 6 view .LVU708 - 2176 00c8 0024 movs r4, #0 - 2177 .LVL238: - 2178 .L148: -2782:Src/main.c **** } - 2179 .loc 1 2782 2 is_stmt 1 view .LVU709 -2783:Src/main.c **** - 2180 .loc 1 2783 1 is_stmt 0 view .LVU710 - 2181 00ca 84F00100 eor r0, r4, #1 - 2182 00ce 03B0 add sp, sp, #12 - 2183 .LCFI22: - 2184 .cfi_remember_state - 2185 .cfi_def_cfa_offset 36 - 2186 @ sp needed - 2187 00d0 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} - ARM GAS /tmp/ccwR4KB7.s page 169 + 1487 .loc 1 2628 2 view .LVU488 + 1488 0004 0122 movs r2, #1 + 1489 0006 4FF48051 mov r1, #4096 + 1490 000a 1648 ldr r0, .L89 + 1491 000c FFF7FEFF bl HAL_GPIO_WritePin + 1492 .LVL144: +2629:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} + 1493 .loc 1 2629 2 view .LVU489 + 1494 0010 0022 movs r2, #0 + 1495 0012 4021 movs r1, #64 + 1496 0014 1448 ldr r0, .L89+4 + 1497 0016 FFF7FEFF bl HAL_GPIO_WritePin + 1498 .LVL145: +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1499 .loc 1 2630 2 view .LVU490 + 1500 .LBB398: +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1501 .loc 1 2630 7 view .LVU491 +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1502 .loc 1 2630 25 is_stmt 0 view .LVU492 + 1503 001a 0023 movs r3, #0 + 1504 001c 0193 str r3, [sp, #4] +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1505 .loc 1 2630 2 view .LVU493 + 1506 001e 02E0 b .L86 + 1507 .L87: +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1508 .loc 1 2630 48 is_stmt 1 discriminator 3 view .LVU494 +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1509 .loc 1 2630 43 discriminator 3 view .LVU495 + 1510 0020 019B ldr r3, [sp, #4] + 1511 0022 0133 adds r3, r3, #1 + 1512 0024 0193 str r3, [sp, #4] + 1513 .L86: +2630:Src/main.c **** HAL_GPIO_WritePin(AD9102_RESET_GPIO_Port, AD9102_RESET_Pin, GPIO_PIN_SET); + 1514 .loc 1 2630 34 discriminator 1 view .LVU496 + 1515 0026 019B ldr r3, [sp, #4] + 1516 0028 B3F57A7F cmp r3, #1000 + 1517 002c F8D3 bcc .L87 + 1518 .LBE398: +2631:Src/main.c **** + 1519 .loc 1 2631 2 view .LVU497 + 1520 002e 0122 movs r2, #1 + 1521 0030 4021 movs r1, #64 + 1522 0032 0D48 ldr r0, .L89+4 + 1523 0034 FFF7FEFF bl HAL_GPIO_WritePin + 1524 .LVL146: +2633:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); + 1525 .loc 1 2633 2 view .LVU498 + 1526 0038 4221 movs r1, #66 + 1527 003a 0C48 ldr r0, .L89+8 + 1528 003c FFF7FEFF bl AD9102_WriteRegTable + 1529 .LVL147: +2634:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + 1530 .loc 1 2634 2 view .LVU499 + 1531 0040 0021 movs r1, #0 + 1532 0042 1E20 movs r0, #30 + ARM GAS /tmp/ccEQxcUB.s page 159 - 2188 .LVL239: - 2189 .L152: - 2190 .LCFI23: - 2191 .cfi_restore_state -2735:Src/main.c **** } - 2192 .loc 1 2735 6 view .LVU711 - 2193 00d4 0024 movs r4, #0 - 2194 00d6 C7E7 b .L139 - 2195 .cfi_endproc - 2196 .LFE1218: - 2198 .section .text.AD9102_ApplySram,"ax",%progbits - 2199 .align 1 - 2200 .syntax unified - 2201 .thumb - 2202 .thumb_func - 2204 AD9102_ApplySram: - 2205 .LVL240: - 2206 .LFB1217: -2638:Src/main.c **** if (samples == 0u) - 2207 .loc 1 2638 1 is_stmt 1 view -0 - 2208 .cfi_startproc - 2209 @ args = 0, pretend = 0, frame = 8 - 2210 @ frame_needed = 0, uses_anonymous_args = 0 -2638:Src/main.c **** if (samples == 0u) - 2211 .loc 1 2638 1 is_stmt 0 view .LVU713 - 2212 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 2213 .LCFI24: - 2214 .cfi_def_cfa_offset 24 - 2215 .cfi_offset 4, -24 - 2216 .cfi_offset 5, -20 - 2217 .cfi_offset 6, -16 - 2218 .cfi_offset 7, -12 - 2219 .cfi_offset 8, -8 - 2220 .cfi_offset 14, -4 - 2221 0004 82B0 sub sp, sp, #8 - 2222 .LCFI25: - 2223 .cfi_def_cfa_offset 32 - 2224 0006 0546 mov r5, r0 - 2225 0008 1E46 mov r6, r3 -2639:Src/main.c **** { - 2226 .loc 1 2639 2 is_stmt 1 view .LVU714 -2639:Src/main.c **** { - 2227 .loc 1 2639 5 is_stmt 0 view .LVU715 - 2228 000a 21B1 cbz r1, .L172 - 2229 000c 0C46 mov r4, r1 -2643:Src/main.c **** { - 2230 .loc 1 2643 2 is_stmt 1 view .LVU716 -2643:Src/main.c **** { - 2231 .loc 1 2643 5 is_stmt 0 view .LVU717 - 2232 000e 0129 cmp r1, #1 - 2233 0010 02D8 bhi .L164 -2645:Src/main.c **** } - 2234 .loc 1 2645 11 view .LVU718 - 2235 0012 0224 movs r4, #2 - 2236 0014 03E0 b .L165 - 2237 .L172: -2641:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 170 + 1533 0044 FFF7FEFF bl AD9102_WriteReg + 1534 .LVL148: +2635:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + 1535 .loc 1 2635 2 view .LVU500 + 1536 0048 0121 movs r1, #1 + 1537 004a 1D20 movs r0, #29 + 1538 004c FFF7FEFF bl AD9102_WriteReg + 1539 .LVL149: +2636:Src/main.c **** } + 1540 .loc 1 2636 2 view .LVU501 + 1541 0050 0122 movs r2, #1 + 1542 0052 4FF40061 mov r1, #2048 + 1543 0056 0648 ldr r0, .L89+12 + 1544 0058 FFF7FEFF bl HAL_GPIO_WritePin + 1545 .LVL150: +2637:Src/main.c **** + 1546 .loc 1 2637 1 is_stmt 0 view .LVU502 + 1547 005c 03B0 add sp, sp, #12 + 1548 .LCFI14: + 1549 .cfi_def_cfa_offset 4 + 1550 @ sp needed + 1551 005e 5DF804FB ldr pc, [sp], #4 + 1552 .L90: + 1553 0062 00BF .align 2 + 1554 .L89: + 1555 0064 00040240 .word 1073873920 + 1556 0068 00080240 .word 1073874944 + 1557 006c 00000000 .word ad9102_example4_regval + 1558 0070 000C0240 .word 1073875968 + 1559 .cfi_endproc + 1560 .LFE1212: + 1562 .section .text.AD9102_ReadReg,"ax",%progbits + 1563 .align 1 + 1564 .syntax unified + 1565 .thumb + 1566 .thumb_func + 1568 AD9102_ReadReg: + 1569 .LVL151: + 1570 .LFB1218: +2758:Src/main.c **** uint32_t tmp32 = 0; + 1571 .loc 1 2758 1 is_stmt 1 view -0 + 1572 .cfi_startproc + 1573 @ args = 0, pretend = 0, frame = 0 + 1574 @ frame_needed = 0, uses_anonymous_args = 0 +2758:Src/main.c **** uint32_t tmp32 = 0; + 1575 .loc 1 2758 1 is_stmt 0 view .LVU504 + 1576 0000 10B5 push {r4, lr} + 1577 .LCFI15: + 1578 .cfi_def_cfa_offset 8 + 1579 .cfi_offset 4, -8 + 1580 .cfi_offset 14, -4 +2759:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) + 1581 .loc 1 2759 2 is_stmt 1 view .LVU505 + 1582 .LVL152: +2760:Src/main.c **** uint16_t value; + 1583 .loc 1 2760 2 view .LVU506 +2760:Src/main.c **** uint16_t value; + ARM GAS /tmp/ccEQxcUB.s page 160 - 2238 .loc 1 2641 11 view .LVU719 - 2239 0016 1024 movs r4, #16 - 2240 .L164: - 2241 .LVL241: -2647:Src/main.c **** { - 2242 .loc 1 2647 2 is_stmt 1 view .LVU720 -2647:Src/main.c **** { - 2243 .loc 1 2647 5 is_stmt 0 view .LVU721 - 2244 0018 B4F5805F cmp r4, #4096 - 2245 001c 04D8 bhi .L174 + 1584 .loc 1 2760 11 is_stmt 0 view .LVU507 + 1585 0002 40F40044 orr r4, r0, #32768 + 1586 .LVL153: +2761:Src/main.c **** + 1587 .loc 1 2761 2 is_stmt 1 view .LVU508 +2763:Src/main.c **** + 1588 .loc 1 2763 2 view .LVU509 + 1589 0006 0021 movs r1, #0 + 1590 0008 0846 mov r0, r1 + 1591 .LVL154: +2763:Src/main.c **** + 1592 .loc 1 2763 2 is_stmt 0 view .LVU510 + 1593 000a FFF7FEFF bl SPI2_SetMode + 1594 .LVL155: +2765:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + 1595 .loc 1 2765 2 is_stmt 1 view .LVU511 + 1596 000e 0122 movs r2, #1 + 1597 0010 4FF48041 mov r1, #16384 + 1598 0014 2C48 ldr r0, .L106 + 1599 0016 FFF7FEFF bl HAL_GPIO_WritePin + 1600 .LVL156: +2766:Src/main.c **** + 1601 .loc 1 2766 2 view .LVU512 + 1602 001a 0122 movs r2, #1 + 1603 001c 4FF48051 mov r1, #4096 + 1604 0020 2A48 ldr r0, .L106+4 + 1605 0022 FFF7FEFF bl HAL_GPIO_WritePin + 1606 .LVL157: +2768:Src/main.c **** { + 1607 .loc 1 2768 2 view .LVU513 + 1608 .LBB399: + 1609 .LBI399: + 381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1610 .loc 4 381 26 view .LVU514 + 1611 .LBB400: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1612 .loc 4 383 3 view .LVU515 + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1613 .loc 4 383 12 is_stmt 0 view .LVU516 + 1614 0026 2A4B ldr r3, .L106+8 + 1615 0028 1B68 ldr r3, [r3] + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1616 .loc 4 383 69 view .LVU517 + 1617 002a 13F0400F tst r3, #64 + 1618 002e 04D1 bne .L92 + 1619 .LVL158: + 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1620 .loc 4 383 69 view .LVU518 + 1621 .LBE400: + 1622 .LBE399: +2770:Src/main.c **** } + 1623 .loc 1 2770 3 is_stmt 1 view .LVU519 + 1624 .LBB401: + 1625 .LBI401: + 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1626 .loc 4 358 22 view .LVU520 + 1627 .LBB402: + ARM GAS /tmp/ccEQxcUB.s page 161 + + + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1628 .loc 4 360 3 view .LVU521 + 1629 0030 274A ldr r2, .L106+8 + 1630 0032 1368 ldr r3, [r2] + 1631 0034 43F04003 orr r3, r3, #64 + 1632 0038 1360 str r3, [r2] + 1633 .LVL159: + 1634 .L92: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1635 .loc 4 360 3 is_stmt 0 view .LVU522 + 1636 .LBE402: + 1637 .LBE401: +2773:Src/main.c **** + 1638 .loc 1 2773 2 is_stmt 1 view .LVU523 + 1639 003a 0022 movs r2, #0 + 1640 003c 4FF48051 mov r1, #4096 + 1641 0040 2148 ldr r0, .L106 + 1642 0042 FFF7FEFF bl HAL_GPIO_WritePin + 1643 .LVL160: +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1644 .loc 1 2775 2 view .LVU524 +2759:Src/main.c **** uint16_t cmd = (uint16_t)(0x8000u | (addr & 0x7FFFu)); // R/W = 1 (read) + 1645 .loc 1 2759 11 is_stmt 0 view .LVU525 + 1646 0046 0023 movs r3, #0 + 1647 .LVL161: + 1648 .L94: +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1649 .loc 1 2775 63 is_stmt 1 discriminator 2 view .LVU526 +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1650 .loc 1 2775 41 discriminator 2 view .LVU527 + 1651 .LBB403: + 1652 .LBI403: + 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1653 .loc 4 916 26 view .LVU528 + 1654 .LBB404: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1655 .loc 4 918 3 view .LVU529 + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1656 .loc 4 918 12 is_stmt 0 view .LVU530 + 1657 0048 214A ldr r2, .L106+8 + 1658 004a 9268 ldr r2, [r2, #8] + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1659 .loc 4 918 66 view .LVU531 + 1660 004c 12F0020F tst r2, #2 + 1661 0050 05D1 bne .L93 + 1662 .LVL162: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1663 .loc 4 918 66 view .LVU532 + 1664 .LBE404: + 1665 .LBE403: +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1666 .loc 1 2775 50 discriminator 1 view .LVU533 + 1667 0052 5A1C adds r2, r3, #1 + 1668 .LVL163: +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1669 .loc 1 2775 41 discriminator 1 view .LVU534 + 1670 0054 B3F57A7F cmp r3, #1000 + ARM GAS /tmp/ccEQxcUB.s page 162 + + + 1671 0058 01D2 bcs .L93 +2775:Src/main.c **** LL_SPI_TransmitData16(SPI2, cmd); + 1672 .loc 1 2775 50 discriminator 1 view .LVU535 + 1673 005a 1346 mov r3, r2 + 1674 005c F4E7 b .L94 + 1675 .LVL164: + 1676 .L93: +2776:Src/main.c **** tmp32 = 0; + 1677 .loc 1 2776 2 is_stmt 1 view .LVU536 + 1678 .LBB405: + 1679 .LBI405: +1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1680 .loc 4 1373 22 view .LVU537 + 1681 .LBB406: +1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; + 1682 .loc 4 1376 3 view .LVU538 + 1683 .loc 4 1377 3 view .LVU539 + 1684 .loc 4 1377 10 is_stmt 0 view .LVU540 + 1685 005e 1C4B ldr r3, .L106+8 + 1686 0060 9C81 strh r4, [r3, #12] @ movhi + 1687 .LVL165: + 1688 .loc 4 1377 10 view .LVU541 + 1689 .LBE406: + 1690 .LBE405: +2777:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 1691 .loc 1 2777 2 is_stmt 1 view .LVU542 +2778:Src/main.c **** (void) SPI2->DR; + 1692 .loc 1 2778 2 view .LVU543 +2777:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 1693 .loc 1 2777 8 is_stmt 0 view .LVU544 + 1694 0062 0023 movs r3, #0 + 1695 .LVL166: + 1696 .L96: +2778:Src/main.c **** (void) SPI2->DR; + 1697 .loc 1 2778 64 is_stmt 1 discriminator 2 view .LVU545 +2778:Src/main.c **** (void) SPI2->DR; + 1698 .loc 1 2778 42 discriminator 2 view .LVU546 + 1699 .LBB407: + 1700 .LBI407: + 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1701 .loc 4 905 26 view .LVU547 + 1702 .LBB408: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1703 .loc 4 907 3 view .LVU548 + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1704 .loc 4 907 12 is_stmt 0 view .LVU549 + 1705 0064 1A4A ldr r2, .L106+8 + 1706 0066 9268 ldr r2, [r2, #8] + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1707 .loc 4 907 68 view .LVU550 + 1708 0068 12F0010F tst r2, #1 + 1709 006c 05D1 bne .L95 + 1710 .LVL167: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1711 .loc 4 907 68 view .LVU551 + 1712 .LBE408: + 1713 .LBE407: + ARM GAS /tmp/ccEQxcUB.s page 163 + + +2778:Src/main.c **** (void) SPI2->DR; + 1714 .loc 1 2778 51 discriminator 1 view .LVU552 + 1715 006e 5A1C adds r2, r3, #1 + 1716 .LVL168: +2778:Src/main.c **** (void) SPI2->DR; + 1717 .loc 1 2778 42 discriminator 1 view .LVU553 + 1718 0070 B3F57A7F cmp r3, #1000 + 1719 0074 01D2 bcs .L95 +2778:Src/main.c **** (void) SPI2->DR; + 1720 .loc 1 2778 51 discriminator 1 view .LVU554 + 1721 0076 1346 mov r3, r2 + 1722 0078 F4E7 b .L96 + 1723 .LVL169: + 1724 .L95: +2779:Src/main.c **** + 1725 .loc 1 2779 2 is_stmt 1 view .LVU555 + 1726 007a 154B ldr r3, .L106+8 + 1727 007c DB68 ldr r3, [r3, #12] +2781:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} + 1728 .loc 1 2781 2 view .LVU556 + 1729 .LVL170: +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + 1730 .loc 1 2782 2 view .LVU557 +2781:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2)) && (tmp32++ < 1000)) {} + 1731 .loc 1 2781 8 is_stmt 0 view .LVU558 + 1732 007e 0023 movs r3, #0 + 1733 .LVL171: + 1734 .L98: +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + 1735 .loc 1 2782 63 is_stmt 1 discriminator 2 view .LVU559 +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + 1736 .loc 1 2782 41 discriminator 2 view .LVU560 + 1737 .LBB409: + 1738 .LBI409: + 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1739 .loc 4 916 26 view .LVU561 + 1740 .LBB410: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1741 .loc 4 918 3 view .LVU562 + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1742 .loc 4 918 12 is_stmt 0 view .LVU563 + 1743 0080 134A ldr r2, .L106+8 + 1744 0082 9268 ldr r2, [r2, #8] + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1745 .loc 4 918 66 view .LVU564 + 1746 0084 12F0020F tst r2, #2 + 1747 0088 05D1 bne .L97 + 1748 .LVL172: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1749 .loc 4 918 66 view .LVU565 + 1750 .LBE410: + 1751 .LBE409: +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + 1752 .loc 1 2782 50 discriminator 1 view .LVU566 + 1753 008a 5A1C adds r2, r3, #1 + 1754 .LVL173: +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + ARM GAS /tmp/ccEQxcUB.s page 164 + + + 1755 .loc 1 2782 41 discriminator 1 view .LVU567 + 1756 008c B3F57A7F cmp r3, #1000 + 1757 0090 01D2 bcs .L97 +2782:Src/main.c **** LL_SPI_TransmitData16(SPI2, 0x0000u); + 1758 .loc 1 2782 50 discriminator 1 view .LVU568 + 1759 0092 1346 mov r3, r2 + 1760 0094 F4E7 b .L98 + 1761 .LVL174: + 1762 .L97: +2783:Src/main.c **** tmp32 = 0; + 1763 .loc 1 2783 2 is_stmt 1 view .LVU569 + 1764 .LBB411: + 1765 .LBI411: +1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1766 .loc 4 1373 22 view .LVU570 + 1767 .LBB412: +1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; + 1768 .loc 4 1376 3 view .LVU571 + 1769 .loc 4 1377 3 view .LVU572 + 1770 .loc 4 1377 10 is_stmt 0 view .LVU573 + 1771 0096 0023 movs r3, #0 + 1772 0098 0D4A ldr r2, .L106+8 + 1773 009a 9381 strh r3, [r2, #12] @ movhi + 1774 .LVL175: + 1775 .loc 4 1377 10 view .LVU574 + 1776 .LBE412: + 1777 .LBE411: +2784:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 1778 .loc 1 2784 2 is_stmt 1 view .LVU575 +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + 1779 .loc 1 2785 2 view .LVU576 + 1780 .L100: +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + 1781 .loc 1 2785 64 discriminator 2 view .LVU577 +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + 1782 .loc 1 2785 42 discriminator 2 view .LVU578 + 1783 .LBB413: + 1784 .LBI413: + 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1785 .loc 4 905 26 view .LVU579 + 1786 .LBB414: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1787 .loc 4 907 3 view .LVU580 + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1788 .loc 4 907 12 is_stmt 0 view .LVU581 + 1789 009c 0C4A ldr r2, .L106+8 + 1790 009e 9268 ldr r2, [r2, #8] + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1791 .loc 4 907 68 view .LVU582 + 1792 00a0 12F0010F tst r2, #1 + 1793 00a4 05D1 bne .L99 + 1794 .LVL176: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1795 .loc 4 907 68 view .LVU583 + 1796 .LBE414: + 1797 .LBE413: +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + ARM GAS /tmp/ccEQxcUB.s page 165 + + + 1798 .loc 1 2785 51 discriminator 1 view .LVU584 + 1799 00a6 5A1C adds r2, r3, #1 + 1800 .LVL177: +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + 1801 .loc 1 2785 42 discriminator 1 view .LVU585 + 1802 00a8 B3F57A7F cmp r3, #1000 + 1803 00ac 01D2 bcs .L99 +2785:Src/main.c **** value = LL_SPI_ReceiveData16(SPI2); + 1804 .loc 1 2785 51 discriminator 1 view .LVU586 + 1805 00ae 1346 mov r3, r2 + 1806 00b0 F4E7 b .L100 + 1807 .LVL178: + 1808 .L99: +2786:Src/main.c **** + 1809 .loc 1 2786 2 is_stmt 1 view .LVU587 + 1810 .LBB415: + 1811 .LBI415: +1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 1812 .loc 4 1344 26 view .LVU588 + 1813 .LBB416: +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1814 .loc 4 1346 3 view .LVU589 +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1815 .loc 4 1346 21 is_stmt 0 view .LVU590 + 1816 00b2 074B ldr r3, .L106+8 + 1817 00b4 DC68 ldr r4, [r3, #12] + 1818 .LVL179: +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1819 .loc 4 1346 10 view .LVU591 + 1820 00b6 A4B2 uxth r4, r4 + 1821 .LVL180: +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 1822 .loc 4 1346 10 view .LVU592 + 1823 .LBE416: + 1824 .LBE415: +2788:Src/main.c **** return value; + 1825 .loc 1 2788 2 is_stmt 1 view .LVU593 + 1826 00b8 0122 movs r2, #1 + 1827 00ba 4FF48051 mov r1, #4096 + 1828 00be 0248 ldr r0, .L106 + 1829 00c0 FFF7FEFF bl HAL_GPIO_WritePin + 1830 .LVL181: +2789:Src/main.c **** } + 1831 .loc 1 2789 2 view .LVU594 +2790:Src/main.c **** + 1832 .loc 1 2790 1 is_stmt 0 view .LVU595 + 1833 00c4 2046 mov r0, r4 + 1834 00c6 10BD pop {r4, pc} + 1835 .LVL182: + 1836 .L107: +2790:Src/main.c **** + 1837 .loc 1 2790 1 view .LVU596 + 1838 .align 2 + 1839 .L106: + 1840 00c8 00040240 .word 1073873920 + 1841 00cc 000C0240 .word 1073875968 + 1842 00d0 00380040 .word 1073756160 + ARM GAS /tmp/ccEQxcUB.s page 166 + + + 1843 .cfi_endproc + 1844 .LFE1218: + 1846 .section .text.AD9102_CheckFlagsSram,"ax",%progbits + 1847 .align 1 + 1848 .syntax unified + 1849 .thumb + 1850 .thumb_func + 1852 AD9102_CheckFlagsSram: + 1853 .LVL183: + 1854 .LFB1224: +3086:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); + 1855 .loc 1 3086 1 is_stmt 1 view -0 + 1856 .cfi_startproc + 1857 @ args = 0, pretend = 0, frame = 8 + 1858 @ frame_needed = 0, uses_anonymous_args = 0 +3086:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); + 1859 .loc 1 3086 1 is_stmt 0 view .LVU598 + 1860 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} + 1861 .LCFI16: + 1862 .cfi_def_cfa_offset 36 + 1863 .cfi_offset 4, -36 + 1864 .cfi_offset 5, -32 + 1865 .cfi_offset 6, -28 + 1866 .cfi_offset 7, -24 + 1867 .cfi_offset 8, -20 + 1868 .cfi_offset 9, -16 + 1869 .cfi_offset 10, -12 + 1870 .cfi_offset 11, -8 + 1871 .cfi_offset 14, -4 + 1872 0004 83B0 sub sp, sp, #12 + 1873 .LCFI17: + 1874 .cfi_def_cfa_offset 48 + 1875 0006 8346 mov fp, r0 + 1876 0008 0F46 mov r7, r1 + 1877 000a 1446 mov r4, r2 + 1878 000c 1D46 mov r5, r3 +3087:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 1879 .loc 1 3087 2 is_stmt 1 view .LVU599 +3087:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 1880 .loc 1 3087 23 is_stmt 0 view .LVU600 + 1881 000e 0020 movs r0, #0 + 1882 .LVL184: +3087:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 1883 .loc 1 3087 23 view .LVU601 + 1884 0010 FFF7FEFF bl AD9102_ReadReg + 1885 .LVL185: +3087:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 1886 .loc 1 3087 23 view .LVU602 + 1887 0014 8246 mov r10, r0 + 1888 .LVL186: +3088:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); + 1889 .loc 1 3088 2 is_stmt 1 view .LVU603 +3088:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); + 1890 .loc 1 3088 22 is_stmt 0 view .LVU604 + 1891 0016 0120 movs r0, #1 + 1892 0018 FFF7FEFF bl AD9102_ReadReg + 1893 .LVL187: + ARM GAS /tmp/ccEQxcUB.s page 167 + + + 1894 001c 8146 mov r9, r0 + 1895 .LVL188: +3089:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); + 1896 .loc 1 3089 2 is_stmt 1 view .LVU605 +3089:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); + 1897 .loc 1 3089 22 is_stmt 0 view .LVU606 + 1898 001e 0220 movs r0, #2 + 1899 0020 FFF7FEFF bl AD9102_ReadReg + 1900 .LVL189: + 1901 0024 8046 mov r8, r0 + 1902 .LVL190: +3090:Src/main.c **** + 1903 .loc 1 3090 2 is_stmt 1 view .LVU607 +3090:Src/main.c **** + 1904 .loc 1 3090 21 is_stmt 0 view .LVU608 + 1905 0026 6020 movs r0, #96 + 1906 0028 FFF7FEFF bl AD9102_ReadReg + 1907 .LVL191: +3092:Src/main.c **** { + 1908 .loc 1 3092 2 is_stmt 1 view .LVU609 +3092:Src/main.c **** { + 1909 .loc 1 3092 5 is_stmt 0 view .LVU610 + 1910 002c 1CB1 cbz r4, .L125 +3096:Src/main.c **** { + 1911 .loc 1 3096 2 is_stmt 1 view .LVU611 +3096:Src/main.c **** { + 1912 .loc 1 3096 5 is_stmt 0 view .LVU612 + 1913 002e 012C cmp r4, #1 + 1914 0030 02D8 bhi .L109 +3098:Src/main.c **** } + 1915 .loc 1 3098 11 view .LVU613 + 1916 0032 0224 movs r4, #2 + 1917 .LVL192: +3098:Src/main.c **** } + 1918 .loc 1 3098 11 view .LVU614 + 1919 0034 03E0 b .L110 + 1920 .LVL193: + 1921 .L125: +3094:Src/main.c **** } + 1922 .loc 1 3094 11 view .LVU615 + 1923 0036 1024 movs r4, #16 + 1924 .LVL194: + 1925 .L109: +3100:Src/main.c **** { + 1926 .loc 1 3100 2 is_stmt 1 view .LVU616 +3100:Src/main.c **** { + 1927 .loc 1 3100 5 is_stmt 0 view .LVU617 + 1928 0038 B4F5805F cmp r4, #4096 + 1929 003c 04D8 bhi .L127 + 1930 .LVL195: + 1931 .L110: +3104:Src/main.c **** { + 1932 .loc 1 3104 2 is_stmt 1 view .LVU618 +3104:Src/main.c **** { + 1933 .loc 1 3104 5 is_stmt 0 view .LVU619 + 1934 003e 35B1 cbz r5, .L128 +3108:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 168 + + + 1935 .loc 1 3108 2 is_stmt 1 view .LVU620 +3108:Src/main.c **** { + 1936 .loc 1 3108 5 is_stmt 0 view .LVU621 + 1937 0040 0F2D cmp r5, #15 + 1938 0042 05D9 bls .L111 +3110:Src/main.c **** } + 1939 .loc 1 3110 8 view .LVU622 + 1940 0044 0F25 movs r5, #15 + 1941 .LVL196: +3110:Src/main.c **** } + 1942 .loc 1 3110 8 view .LVU623 + 1943 0046 03E0 b .L111 + 1944 .LVL197: + 1945 .L127: +3102:Src/main.c **** } + 1946 .loc 1 3102 11 view .LVU624 + 1947 0048 4FF48054 mov r4, #4096 + 1948 .LVL198: +3102:Src/main.c **** } + 1949 .loc 1 3102 11 view .LVU625 + 1950 004c F7E7 b .L110 + 1951 .LVL199: + 1952 .L128: +3106:Src/main.c **** } + 1953 .loc 1 3106 8 view .LVU626 + 1954 004e 0125 movs r5, #1 + 1955 .LVL200: + 1956 .L111: +3113:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 1957 .loc 1 3113 2 is_stmt 1 view .LVU627 +3113:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 1958 .loc 1 3113 63 is_stmt 0 view .LVU628 + 1959 0050 2E02 lsls r6, r5, #8 + 1960 0052 06F47066 and r6, r6, #3840 +3113:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 1961 .loc 1 3113 11 view .LVU629 + 1962 0056 46F01106 orr r6, r6, #17 + 1963 .LVL201: +3116:Src/main.c **** if (pat_period == 0u) + 1964 .loc 1 3116 2 is_stmt 1 view .LVU630 +3116:Src/main.c **** if (pat_period == 0u) + 1965 .loc 1 3116 24 is_stmt 0 view .LVU631 + 1966 005a 0194 str r4, [sp, #4] +3116:Src/main.c **** if (pat_period == 0u) + 1967 .loc 1 3116 44 view .LVU632 + 1968 005c 05F00F05 and r5, r5, #15 + 1969 .LVL202: +3116:Src/main.c **** if (pat_period == 0u) + 1970 .loc 1 3116 11 view .LVU633 + 1971 0060 04FB05F5 mul r5, r4, r5 + 1972 .LVL203: +3117:Src/main.c **** { + 1973 .loc 1 3117 2 is_stmt 1 view .LVU634 +3117:Src/main.c **** { + 1974 .loc 1 3117 5 is_stmt 0 view .LVU635 + 1975 0064 1DB1 cbz r5, .L112 +3121:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 169 + + + 1976 .loc 1 3121 2 is_stmt 1 view .LVU636 +3121:Src/main.c **** { + 1977 .loc 1 3121 5 is_stmt 0 view .LVU637 + 1978 0066 B5F5803F cmp r5, #65536 + 1979 006a 4CD2 bcs .L130 + 1980 006c 0195 str r5, [sp, #4] + 1981 .L112: + 1982 .LVL204: +3126:Src/main.c **** + 1983 .loc 1 3126 2 is_stmt 1 view .LVU638 +3126:Src/main.c **** + 1984 .loc 1 3126 43 is_stmt 0 view .LVU639 + 1985 006e 013C subs r4, r4, #1 + 1986 .LVL205: +3126:Src/main.c **** + 1987 .loc 1 3126 43 view .LVU640 + 1988 0070 A4B2 uxth r4, r4 +3126:Src/main.c **** + 1989 .loc 1 3126 11 view .LVU641 + 1990 0072 2401 lsls r4, r4, #4 + 1991 0074 A4B2 uxth r4, r4 + 1992 .LVL206: +3128:Src/main.c **** + 1993 .loc 1 3128 2 is_stmt 1 view .LVU642 +3130:Src/main.c **** { + 1994 .loc 1 3130 2 view .LVU643 +3130:Src/main.c **** { + 1995 .loc 1 3130 5 is_stmt 0 view .LVU644 + 1996 0076 BAF1000F cmp r10, #0 + 1997 007a 48D1 bne .L131 +3128:Src/main.c **** + 1998 .loc 1 3128 10 view .LVU645 + 1999 007c 0125 movs r5, #1 + 2000 .L113: + 2001 .LVL207: +3134:Src/main.c **** { + 2002 .loc 1 3134 2 is_stmt 1 view .LVU646 +3134:Src/main.c **** { + 2003 .loc 1 3134 5 is_stmt 0 view .LVU647 + 2004 007e 19F4F47F tst r9, #488 + 2005 0082 00D0 beq .L114 +3136:Src/main.c **** } + 2006 .loc 1 3136 6 view .LVU648 + 2007 0084 0025 movs r5, #0 + 2008 .LVL208: + 2009 .L114: +3138:Src/main.c **** { + 2010 .loc 1 3138 2 is_stmt 1 view .LVU649 +3138:Src/main.c **** { + 2011 .loc 1 3138 5 is_stmt 0 view .LVU650 + 2012 0086 18F40E6F tst r8, #2272 + 2013 008a 00D0 beq .L115 +3140:Src/main.c **** } + 2014 .loc 1 3140 6 view .LVU651 + 2015 008c 0025 movs r5, #0 + 2016 .LVL209: + 2017 .L115: + ARM GAS /tmp/ccEQxcUB.s page 170 + + +3142:Src/main.c **** { + 2018 .loc 1 3142 2 is_stmt 1 view .LVU652 +3142:Src/main.c **** { + 2019 .loc 1 3142 5 is_stmt 0 view .LVU653 + 2020 008e 10F03F0F tst r0, #63 + 2021 0092 00D0 beq .L116 +3144:Src/main.c **** } + 2022 .loc 1 3144 6 view .LVU654 + 2023 0094 0025 movs r5, #0 + 2024 .LVL210: + 2025 .L116: +3146:Src/main.c **** { + 2026 .loc 1 3146 2 is_stmt 1 view .LVU655 +3146:Src/main.c **** { + 2027 .loc 1 3146 5 is_stmt 0 view .LVU656 + 2028 0096 1FB1 cbz r7, .L117 +3146:Src/main.c **** { + 2029 .loc 1 3146 17 discriminator 1 view .LVU657 + 2030 0098 1BF0010F tst fp, #1 + 2031 009c 00D1 bne .L117 +3148:Src/main.c **** } + 2032 .loc 1 3148 6 view .LVU658 + 2033 009e 0025 movs r5, #0 + 2034 .LVL211: + 2035 .L117: +3151:Src/main.c **** { + 2036 .loc 1 3151 2 is_stmt 1 view .LVU659 +3151:Src/main.c **** { + 2037 .loc 1 3151 6 is_stmt 0 view .LVU660 + 2038 00a0 2720 movs r0, #39 + 2039 .LVL212: +3151:Src/main.c **** { + 2040 .loc 1 3151 6 view .LVU661 + 2041 00a2 FFF7FEFF bl AD9102_ReadReg + 2042 .LVL213: +3151:Src/main.c **** { + 2043 .loc 1 3151 5 discriminator 1 view .LVU662 + 2044 00a6 43F23003 movw r3, #12336 + 2045 00aa 9842 cmp r0, r3 + 2046 00ac 00D0 beq .L118 +3153:Src/main.c **** } + 2047 .loc 1 3153 6 view .LVU663 + 2048 00ae 0025 movs r5, #0 + 2049 .LVL214: + 2050 .L118: +3155:Src/main.c **** { + 2051 .loc 1 3155 2 is_stmt 1 view .LVU664 +3155:Src/main.c **** { + 2052 .loc 1 3155 6 is_stmt 0 view .LVU665 + 2053 00b0 2820 movs r0, #40 + 2054 00b2 FFF7FEFF bl AD9102_ReadReg + 2055 .LVL215: +3155:Src/main.c **** { + 2056 .loc 1 3155 5 discriminator 1 view .LVU666 + 2057 00b6 B042 cmp r0, r6 + 2058 00b8 00D0 beq .L119 +3157:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 171 + + + 2059 .loc 1 3157 6 view .LVU667 + 2060 00ba 0025 movs r5, #0 + 2061 .LVL216: + 2062 .L119: +3159:Src/main.c **** { + 2063 .loc 1 3159 2 is_stmt 1 view .LVU668 +3159:Src/main.c **** { + 2064 .loc 1 3159 6 is_stmt 0 view .LVU669 + 2065 00bc 2920 movs r0, #41 + 2066 00be FFF7FEFF bl AD9102_ReadReg + 2067 .LVL217: +3159:Src/main.c **** { + 2068 .loc 1 3159 44 discriminator 1 view .LVU670 + 2069 00c2 BDF80430 ldrh r3, [sp, #4] +3159:Src/main.c **** { + 2070 .loc 1 3159 5 discriminator 1 view .LVU671 + 2071 00c6 9842 cmp r0, r3 + 2072 00c8 00D0 beq .L120 +3161:Src/main.c **** } + 2073 .loc 1 3161 6 view .LVU672 + 2074 00ca 0025 movs r5, #0 + 2075 .LVL218: + 2076 .L120: +3163:Src/main.c **** { + 2077 .loc 1 3163 2 is_stmt 1 view .LVU673 +3163:Src/main.c **** { + 2078 .loc 1 3163 6 is_stmt 0 view .LVU674 + 2079 00cc 1F20 movs r0, #31 + 2080 00ce FFF7FEFF bl AD9102_ReadReg + 2081 .LVL219: +3163:Src/main.c **** { + 2082 .loc 1 3163 5 discriminator 1 view .LVU675 + 2083 00d2 00B1 cbz r0, .L121 +3165:Src/main.c **** } + 2084 .loc 1 3165 6 view .LVU676 + 2085 00d4 0025 movs r5, #0 + 2086 .LVL220: + 2087 .L121: +3167:Src/main.c **** { + 2088 .loc 1 3167 2 is_stmt 1 view .LVU677 +3167:Src/main.c **** { + 2089 .loc 1 3167 6 is_stmt 0 view .LVU678 + 2090 00d6 5D20 movs r0, #93 + 2091 00d8 FFF7FEFF bl AD9102_ReadReg + 2092 .LVL221: +3167:Src/main.c **** { + 2093 .loc 1 3167 5 discriminator 1 view .LVU679 + 2094 00dc 00B1 cbz r0, .L122 +3169:Src/main.c **** } + 2095 .loc 1 3169 6 view .LVU680 + 2096 00de 0025 movs r5, #0 + 2097 .LVL222: + 2098 .L122: +3171:Src/main.c **** { + 2099 .loc 1 3171 2 is_stmt 1 view .LVU681 +3171:Src/main.c **** { + 2100 .loc 1 3171 6 is_stmt 0 view .LVU682 + ARM GAS /tmp/ccEQxcUB.s page 172 + + + 2101 00e0 5E20 movs r0, #94 + 2102 00e2 FFF7FEFF bl AD9102_ReadReg + 2103 .LVL223: +3171:Src/main.c **** { + 2104 .loc 1 3171 5 discriminator 1 view .LVU683 + 2105 00e6 A042 cmp r0, r4 + 2106 00e8 00D0 beq .L123 +3173:Src/main.c **** } + 2107 .loc 1 3173 6 view .LVU684 + 2108 00ea 0025 movs r5, #0 + 2109 .LVL224: + 2110 .L123: +3175:Src/main.c **** { + 2111 .loc 1 3175 2 is_stmt 1 view .LVU685 +3175:Src/main.c **** { + 2112 .loc 1 3175 6 is_stmt 0 view .LVU686 + 2113 00ec 2B20 movs r0, #43 + 2114 00ee FFF7FEFF bl AD9102_ReadReg + 2115 .LVL225: +3175:Src/main.c **** { + 2116 .loc 1 3175 5 discriminator 1 view .LVU687 + 2117 00f2 40F20113 movw r3, #257 + 2118 00f6 9842 cmp r0, r3 + 2119 00f8 00D0 beq .L124 +3177:Src/main.c **** } + 2120 .loc 1 3177 6 view .LVU688 + 2121 00fa 0025 movs r5, #0 + 2122 .LVL226: + 2123 .L124: +3180:Src/main.c **** } + 2124 .loc 1 3180 2 is_stmt 1 view .LVU689 +3181:Src/main.c **** + 2125 .loc 1 3181 1 is_stmt 0 view .LVU690 + 2126 00fc 85F00100 eor r0, r5, #1 + 2127 0100 03B0 add sp, sp, #12 + 2128 .LCFI18: + 2129 .cfi_remember_state + 2130 .cfi_def_cfa_offset 36 + 2131 @ sp needed + 2132 0102 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} + 2133 .LVL227: + 2134 .L130: + 2135 .LCFI19: + 2136 .cfi_restore_state +3123:Src/main.c **** } + 2137 .loc 1 3123 14 view .LVU691 + 2138 0106 4FF6FF73 movw r3, #65535 + 2139 010a 0193 str r3, [sp, #4] + 2140 010c AFE7 b .L112 + 2141 .LVL228: + 2142 .L131: +3132:Src/main.c **** } + 2143 .loc 1 3132 6 view .LVU692 + 2144 010e 0025 movs r5, #0 + 2145 0110 B5E7 b .L113 + 2146 .cfi_endproc + 2147 .LFE1224: + ARM GAS /tmp/ccEQxcUB.s page 173 + + + 2149 .section .text.AD9102_CheckFlags,"ax",%progbits + 2150 .align 1 + 2151 .syntax unified + 2152 .thumb + 2153 .thumb_func + 2155 AD9102_CheckFlags: + 2156 .LVL229: + 2157 .LFB1223: +3006:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); + 2158 .loc 1 3006 1 is_stmt 1 view -0 + 2159 .cfi_startproc + 2160 @ args = 8, pretend = 0, frame = 8 + 2161 @ frame_needed = 0, uses_anonymous_args = 0 +3006:Src/main.c **** uint16_t spiconfig = AD9102_ReadReg(AD9102_REG_SPICONFIG); + 2162 .loc 1 3006 1 is_stmt 0 view .LVU694 + 2163 0000 2DE9F04F push {r4, r5, r6, r7, r8, r9, r10, fp, lr} + 2164 .LCFI20: + 2165 .cfi_def_cfa_offset 36 + 2166 .cfi_offset 4, -36 + 2167 .cfi_offset 5, -32 + 2168 .cfi_offset 6, -28 + 2169 .cfi_offset 7, -24 + 2170 .cfi_offset 8, -20 + 2171 .cfi_offset 9, -16 + 2172 .cfi_offset 10, -12 + 2173 .cfi_offset 11, -8 + 2174 .cfi_offset 14, -4 + 2175 0004 83B0 sub sp, sp, #12 + 2176 .LCFI21: + 2177 .cfi_def_cfa_offset 48 + 2178 0006 0190 str r0, [sp, #4] + 2179 0008 0F46 mov r7, r1 + 2180 000a 1546 mov r5, r2 + 2181 000c 1C46 mov r4, r3 + 2182 000e BDF834B0 ldrh fp, [sp, #52] +3007:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 2183 .loc 1 3007 2 is_stmt 1 view .LVU695 +3007:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 2184 .loc 1 3007 23 is_stmt 0 view .LVU696 + 2185 0012 0020 movs r0, #0 + 2186 .LVL230: +3007:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 2187 .loc 1 3007 23 view .LVU697 + 2188 0014 FFF7FEFF bl AD9102_ReadReg + 2189 .LVL231: +3007:Src/main.c **** uint16_t powercfg = AD9102_ReadReg(AD9102_REG_POWERCONFIG); + 2190 .loc 1 3007 23 view .LVU698 + 2191 0018 8246 mov r10, r0 + 2192 .LVL232: +3008:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); + 2193 .loc 1 3008 2 is_stmt 1 view .LVU699 +3008:Src/main.c **** uint16_t clockcfg = AD9102_ReadReg(AD9102_REG_CLOCKCONFIG); + 2194 .loc 1 3008 22 is_stmt 0 view .LVU700 + 2195 001a 0120 movs r0, #1 + 2196 001c FFF7FEFF bl AD9102_ReadReg + 2197 .LVL233: + 2198 0020 8146 mov r9, r0 + ARM GAS /tmp/ccEQxcUB.s page 174 + + + 2199 .LVL234: +3009:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); + 2200 .loc 1 3009 2 is_stmt 1 view .LVU701 +3009:Src/main.c **** uint16_t cfg_err = AD9102_ReadReg(AD9102_REG_CFG_ERROR); + 2201 .loc 1 3009 22 is_stmt 0 view .LVU702 + 2202 0022 0220 movs r0, #2 + 2203 0024 FFF7FEFF bl AD9102_ReadReg + 2204 .LVL235: + 2205 0028 8046 mov r8, r0 + 2206 .LVL236: +3010:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | + 2207 .loc 1 3010 2 is_stmt 1 view .LVU703 +3010:Src/main.c **** uint16_t pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | + 2208 .loc 1 3010 21 is_stmt 0 view .LVU704 + 2209 002a 6020 movs r0, #96 + 2210 002c FFF7FEFF bl AD9102_ReadReg + 2211 .LVL237: +3011:Src/main.c **** ((pat_base & 0x0Fu) << 4) | + 2212 .loc 1 3011 2 is_stmt 1 view .LVU705 +3012:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); + 2213 .loc 1 3012 57 is_stmt 0 view .LVU706 + 2214 0030 9DF83030 ldrb r3, [sp, #48] @ zero_extendqisi2 + 2215 0034 1B01 lsls r3, r3, #4 + 2216 0036 03F0F003 and r3, r3, #240 +3011:Src/main.c **** ((pat_base & 0x0Fu) << 4) | + 2217 .loc 1 3011 11 view .LVU707 + 2218 003a 40F20116 movw r6, #257 + 2219 003e 1E43 orrs r6, r6, r3 + 2220 .LVL238: +3015:Src/main.c **** { + 2221 .loc 1 3015 2 is_stmt 1 view .LVU708 +3015:Src/main.c **** { + 2222 .loc 1 3015 5 is_stmt 0 view .LVU709 + 2223 0040 1CB1 cbz r4, .L157 +3019:Src/main.c **** { + 2224 .loc 1 3019 2 is_stmt 1 view .LVU710 +3019:Src/main.c **** { + 2225 .loc 1 3019 5 is_stmt 0 view .LVU711 + 2226 0042 3F2C cmp r4, #63 + 2227 0044 02D9 bls .L145 +3021:Src/main.c **** } + 2228 .loc 1 3021 12 view .LVU712 + 2229 0046 3F24 movs r4, #63 + 2230 .LVL239: +3021:Src/main.c **** } + 2231 .loc 1 3021 12 view .LVU713 + 2232 0048 00E0 b .L145 + 2233 .LVL240: + 2234 .L157: +3017:Src/main.c **** } + 2235 .loc 1 3017 12 view .LVU714 + 2236 004a 0124 movs r4, #1 + 2237 .LVL241: + 2238 .L145: +3023:Src/main.c **** { + 2239 .loc 1 3023 2 is_stmt 1 view .LVU715 +3023:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 175 + + + 2240 .loc 1 3023 5 is_stmt 0 view .LVU716 + 2241 004c BBF1000F cmp fp, #0 + 2242 0050 01D1 bne .L146 +3025:Src/main.c **** } + 2243 .loc 1 3025 14 view .LVU717 + 2244 0052 4FF6FF7B movw fp, #65535 + 2245 .L146: 2246 .LVL242: - 2247 .L165: -2651:Src/main.c **** { - 2248 .loc 1 2651 2 is_stmt 1 view .LVU722 -2651:Src/main.c **** { - 2249 .loc 1 2651 5 is_stmt 0 view .LVU723 - 2250 001e 32B1 cbz r2, .L175 -2655:Src/main.c **** { - 2251 .loc 1 2655 2 is_stmt 1 view .LVU724 -2655:Src/main.c **** { - 2252 .loc 1 2655 5 is_stmt 0 view .LVU725 - 2253 0020 0F2A cmp r2, #15 - 2254 0022 05D9 bls .L166 -2657:Src/main.c **** } - 2255 .loc 1 2657 8 view .LVU726 - 2256 0024 0F22 movs r2, #15 - 2257 .LVL243: -2657:Src/main.c **** } - 2258 .loc 1 2657 8 view .LVU727 - 2259 0026 03E0 b .L166 - 2260 .LVL244: - 2261 .L174: -2649:Src/main.c **** } - 2262 .loc 1 2649 11 view .LVU728 - 2263 0028 4FF48054 mov r4, #4096 - 2264 .LVL245: -2649:Src/main.c **** } - 2265 .loc 1 2649 11 view .LVU729 - 2266 002c F7E7 b .L165 +3027:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2247 .loc 1 3027 2 is_stmt 1 view .LVU718 +3028:Src/main.c **** + 2248 .loc 1 3028 35 is_stmt 0 view .LVU719 + 2249 0056 05F00305 and r5, r5, #3 + 2250 .LVL243: +3027:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2251 .loc 1 3027 71 view .LVU720 + 2252 005a A400 lsls r4, r4, #2 + 2253 .LVL244: +3027:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2254 .loc 1 3027 71 view .LVU721 + 2255 005c E4B2 uxtb r4, r4 +3027:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2256 .loc 1 3027 11 view .LVU722 + 2257 005e 2543 orrs r5, r5, r4 + 2258 .LVL245: +3030:Src/main.c **** + 2259 .loc 1 3030 2 is_stmt 1 view .LVU723 +3033:Src/main.c **** { + 2260 .loc 1 3033 2 view .LVU724 +3033:Src/main.c **** { + 2261 .loc 1 3033 5 is_stmt 0 view .LVU725 + 2262 0060 BAF1000F cmp r10, #0 + 2263 0064 36D1 bne .L160 +3030:Src/main.c **** + 2264 .loc 1 3030 10 view .LVU726 + 2265 0066 0124 movs r4, #1 + 2266 .L147: 2267 .LVL246: - 2268 .L175: -2653:Src/main.c **** } - 2269 .loc 1 2653 8 view .LVU730 - 2270 002e 0122 movs r2, #1 - 2271 .LVL247: - 2272 .L166: -2660:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 2273 .loc 1 2660 2 is_stmt 1 view .LVU731 -2660:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 2274 .loc 1 2660 63 is_stmt 0 view .LVU732 - 2275 0030 1702 lsls r7, r2, #8 - 2276 0032 07F47067 and r7, r7, #3840 -2660:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | - 2277 .loc 1 2660 11 view .LVU733 - 2278 0036 47F01107 orr r7, r7, #17 - 2279 .LVL248: -2663:Src/main.c **** if (pat_period == 0u) - ARM GAS /tmp/ccwR4KB7.s page 171 +3039:Src/main.c **** { + 2268 .loc 1 3039 2 is_stmt 1 view .LVU727 +3039:Src/main.c **** { + 2269 .loc 1 3039 5 is_stmt 0 view .LVU728 + 2270 0068 19F4F47F tst r9, #488 + 2271 006c 00D0 beq .L148 +3041:Src/main.c **** } + 2272 .loc 1 3041 6 view .LVU729 + 2273 006e 0024 movs r4, #0 + 2274 .LVL247: + 2275 .L148: +3045:Src/main.c **** { + 2276 .loc 1 3045 2 is_stmt 1 view .LVU730 +3045:Src/main.c **** { + 2277 .loc 1 3045 5 is_stmt 0 view .LVU731 + 2278 0070 18F40E6F tst r8, #2272 + 2279 0074 00D0 beq .L149 +3047:Src/main.c **** } + 2280 .loc 1 3047 6 view .LVU732 + ARM GAS /tmp/ccEQxcUB.s page 176 - 2280 .loc 1 2663 2 is_stmt 1 view .LVU734 -2663:Src/main.c **** if (pat_period == 0u) - 2281 .loc 1 2663 24 is_stmt 0 view .LVU735 - 2282 003a A046 mov r8, r4 -2663:Src/main.c **** if (pat_period == 0u) - 2283 .loc 1 2663 44 view .LVU736 - 2284 003c 02F00F02 and r2, r2, #15 - 2285 .LVL249: -2663:Src/main.c **** if (pat_period == 0u) - 2286 .loc 1 2663 11 view .LVU737 - 2287 0040 04FB02F2 mul r2, r4, r2 - 2288 .LVL250: -2664:Src/main.c **** { - 2289 .loc 1 2664 2 is_stmt 1 view .LVU738 -2664:Src/main.c **** { - 2290 .loc 1 2664 5 is_stmt 0 view .LVU739 - 2291 0044 1AB1 cbz r2, .L167 -2668:Src/main.c **** { - 2292 .loc 1 2668 2 is_stmt 1 view .LVU740 -2668:Src/main.c **** { - 2293 .loc 1 2668 5 is_stmt 0 view .LVU741 - 2294 0046 B2F5803F cmp r2, #65536 - 2295 004a 4DD2 bcs .L177 - 2296 004c 9046 mov r8, r2 - 2297 .L167: - 2298 .LVL251: -2673:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); - 2299 .loc 1 2673 2 is_stmt 1 view .LVU742 - 2300 004e 4221 movs r1, #66 - 2301 0050 3648 ldr r0, .L179 - 2302 .LVL252: -2673:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); - 2303 .loc 1 2673 2 is_stmt 0 view .LVU743 - 2304 0052 FFF7FEFF bl AD9102_WriteRegTable - 2305 .LVL253: -2674:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX2_WAV_CONFIG); - 2306 .loc 1 2674 2 is_stmt 1 view .LVU744 - 2307 0056 0021 movs r1, #0 - 2308 0058 1E20 movs r0, #30 - 2309 005a FFF7FEFF bl AD9102_WriteReg - 2310 .LVL254: -2675:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, AD9102_EX2_SAW_CONFIG); - 2311 .loc 1 2675 2 view .LVU745 - 2312 005e 43F23001 movw r1, #12336 - 2313 0062 2720 movs r0, #39 - 2314 0064 FFF7FEFF bl AD9102_WriteReg - 2315 .LVL255: -2676:Src/main.c **** AD9102_WriteReg(AD9102_REG_DAC_PAT, AD9102_EX2_DAC_PAT); - 2316 .loc 1 2676 2 view .LVU746 - 2317 0068 4FF40071 mov r1, #512 - 2318 006c 3720 movs r0, #55 - 2319 006e FFF7FEFF bl AD9102_WriteReg - 2320 .LVL256: -2677:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); - 2321 .loc 1 2677 2 view .LVU747 - 2322 0072 40F20111 movw r1, #257 - 2323 0076 2B20 movs r0, #43 - ARM GAS /tmp/ccwR4KB7.s page 172 + 2281 0076 0024 movs r4, #0 + 2282 .LVL248: + 2283 .L149: +3051:Src/main.c **** { + 2284 .loc 1 3051 2 is_stmt 1 view .LVU733 +3051:Src/main.c **** { + 2285 .loc 1 3051 5 is_stmt 0 view .LVU734 + 2286 0078 10F03F0F tst r0, #63 + 2287 007c 00D0 beq .L150 +3053:Src/main.c **** } + 2288 .loc 1 3053 6 view .LVU735 + 2289 007e 0024 movs r4, #0 + 2290 .LVL249: + 2291 .L150: +3056:Src/main.c **** { + 2292 .loc 1 3056 2 is_stmt 1 view .LVU736 +3056:Src/main.c **** { + 2293 .loc 1 3056 5 is_stmt 0 view .LVU737 + 2294 0080 27B1 cbz r7, .L151 +3056:Src/main.c **** { + 2295 .loc 1 3056 17 discriminator 1 view .LVU738 + 2296 0082 019B ldr r3, [sp, #4] + 2297 0084 13F0010F tst r3, #1 + 2298 0088 00D1 bne .L151 +3058:Src/main.c **** } + 2299 .loc 1 3058 6 view .LVU739 + 2300 008a 0024 movs r4, #0 + 2301 .LVL250: + 2302 .L151: +3061:Src/main.c **** { + 2303 .loc 1 3061 2 is_stmt 1 view .LVU740 +3061:Src/main.c **** { + 2304 .loc 1 3061 6 is_stmt 0 view .LVU741 + 2305 008c 2720 movs r0, #39 + 2306 .LVL251: +3061:Src/main.c **** { + 2307 .loc 1 3061 6 view .LVU742 + 2308 008e FFF7FEFF bl AD9102_ReadReg + 2309 .LVL252: +3061:Src/main.c **** { + 2310 .loc 1 3061 5 discriminator 1 view .LVU743 + 2311 0092 43F21223 movw r3, #12818 + 2312 0096 9842 cmp r0, r3 + 2313 0098 00D0 beq .L152 +3063:Src/main.c **** } + 2314 .loc 1 3063 6 view .LVU744 + 2315 009a 0024 movs r4, #0 + 2316 .LVL253: + 2317 .L152: +3065:Src/main.c **** { + 2318 .loc 1 3065 2 is_stmt 1 view .LVU745 +3065:Src/main.c **** { + 2319 .loc 1 3065 6 is_stmt 0 view .LVU746 + 2320 009c 2820 movs r0, #40 + 2321 009e FFF7FEFF bl AD9102_ReadReg + 2322 .LVL254: +3065:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 177 - 2324 0078 FFF7FEFF bl AD9102_WriteReg - 2325 .LVL257: -2678:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, (uint16_t)pat_period); - 2326 .loc 1 2678 2 view .LVU748 - 2327 007c 3946 mov r1, r7 - 2328 007e 2820 movs r0, #40 - 2329 0080 FFF7FEFF bl AD9102_WriteReg - 2330 .LVL258: -2679:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat - 2331 .loc 1 2679 2 view .LVU749 - 2332 0084 1FFA88F1 uxth r1, r8 - 2333 0088 2920 movs r0, #41 - 2334 008a FFF7FEFF bl AD9102_WriteReg - 2335 .LVL259: -2680:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_DLY, AD9102_SRAM_START_DLY_DEFAULT); - 2336 .loc 1 2680 2 view .LVU750 - 2337 008e 0021 movs r1, #0 - 2338 0090 1F20 movs r0, #31 - 2339 0092 FFF7FEFF bl AD9102_WriteReg - 2340 .LVL260: -2681:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_ADDR, 0x0000u); - 2341 .loc 1 2681 2 view .LVU751 - 2342 0096 0021 movs r1, #0 - 2343 0098 5C20 movs r0, #92 - 2344 009a FFF7FEFF bl AD9102_WriteReg - 2345 .LVL261: -2682:Src/main.c **** AD9102_WriteReg(AD9102_REG_STOP_ADDR, (uint16_t)((samples - 1u) << 4)); - 2346 .loc 1 2682 2 view .LVU752 - 2347 009e 0021 movs r1, #0 - 2348 00a0 5D20 movs r0, #93 - 2349 00a2 FFF7FEFF bl AD9102_WriteReg - 2350 .LVL262: -2683:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 2351 .loc 1 2683 2 view .LVU753 -2683:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 2352 .loc 1 2683 60 is_stmt 0 view .LVU754 - 2353 00a6 611E subs r1, r4, #1 - 2354 00a8 89B2 uxth r1, r1 -2683:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 2355 .loc 1 2683 2 view .LVU755 - 2356 00aa 0901 lsls r1, r1, #4 - 2357 00ac 89B2 uxth r1, r1 - 2358 00ae 5E20 movs r0, #94 - 2359 00b0 FFF7FEFF bl AD9102_WriteReg - 2360 .LVL263: -2684:Src/main.c **** - 2361 .loc 1 2684 2 is_stmt 1 view .LVU756 - 2362 00b4 0121 movs r1, #1 - 2363 00b6 1D20 movs r0, #29 - 2364 00b8 FFF7FEFF bl AD9102_WriteReg - 2365 .LVL264: -2686:Src/main.c **** - 2366 .loc 1 2686 2 view .LVU757 - 2367 00bc 3146 mov r1, r6 - 2368 00be 2046 mov r0, r4 - 2369 00c0 FFF7FEFF bl AD9102_LoadSramRamp - 2370 .LVL265: - ARM GAS /tmp/ccwR4KB7.s page 173 + 2323 .loc 1 3065 5 discriminator 1 view .LVU747 + 2324 00a2 B042 cmp r0, r6 + 2325 00a4 00D0 beq .L153 +3067:Src/main.c **** } + 2326 .loc 1 3067 6 view .LVU748 + 2327 00a6 0024 movs r4, #0 + 2328 .LVL255: + 2329 .L153: +3069:Src/main.c **** { + 2330 .loc 1 3069 2 is_stmt 1 view .LVU749 +3069:Src/main.c **** { + 2331 .loc 1 3069 6 is_stmt 0 view .LVU750 + 2332 00a8 2920 movs r0, #41 + 2333 00aa FFF7FEFF bl AD9102_ReadReg + 2334 .LVL256: +3069:Src/main.c **** { + 2335 .loc 1 3069 5 discriminator 1 view .LVU751 + 2336 00ae 5845 cmp r0, fp + 2337 00b0 00D0 beq .L154 +3071:Src/main.c **** } + 2338 .loc 1 3071 6 view .LVU752 + 2339 00b2 0024 movs r4, #0 + 2340 .LVL257: + 2341 .L154: +3073:Src/main.c **** { + 2342 .loc 1 3073 2 is_stmt 1 view .LVU753 +3073:Src/main.c **** { + 2343 .loc 1 3073 6 is_stmt 0 view .LVU754 + 2344 00b4 1F20 movs r0, #31 + 2345 00b6 FFF7FEFF bl AD9102_ReadReg + 2346 .LVL258: +3073:Src/main.c **** { + 2347 .loc 1 3073 5 discriminator 1 view .LVU755 + 2348 00ba 00B1 cbz r0, .L155 +3075:Src/main.c **** } + 2349 .loc 1 3075 6 view .LVU756 + 2350 00bc 0024 movs r4, #0 + 2351 .LVL259: + 2352 .L155: +3077:Src/main.c **** { + 2353 .loc 1 3077 2 is_stmt 1 view .LVU757 +3077:Src/main.c **** { + 2354 .loc 1 3077 6 is_stmt 0 view .LVU758 + 2355 00be 3720 movs r0, #55 + 2356 00c0 FFF7FEFF bl AD9102_ReadReg + 2357 .LVL260: +3077:Src/main.c **** { + 2358 .loc 1 3077 5 discriminator 1 view .LVU759 + 2359 00c4 A842 cmp r0, r5 + 2360 00c6 00D0 beq .L156 +3079:Src/main.c **** } + 2361 .loc 1 3079 6 view .LVU760 + 2362 00c8 0024 movs r4, #0 + 2363 .LVL261: + 2364 .L156: +3082:Src/main.c **** } + 2365 .loc 1 3082 2 is_stmt 1 view .LVU761 + ARM GAS /tmp/ccEQxcUB.s page 178 -2688:Src/main.c **** { - 2371 .loc 1 2688 2 view .LVU758 -2688:Src/main.c **** { - 2372 .loc 1 2688 5 is_stmt 0 view .LVU759 - 2373 00c4 35B3 cbz r5, .L168 -2690:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); - 2374 .loc 1 2690 3 is_stmt 1 view .LVU760 - 2375 00c6 0122 movs r2, #1 - 2376 00c8 4FF40061 mov r1, #2048 - 2377 00cc 1848 ldr r0, .L179+4 - 2378 00ce FFF7FEFF bl HAL_GPIO_WritePin - 2379 .LVL266: -2691:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 2380 .loc 1 2691 3 view .LVU761 - 2381 00d2 0121 movs r1, #1 - 2382 00d4 1E20 movs r0, #30 - 2383 00d6 FFF7FEFF bl AD9102_WriteReg - 2384 .LVL267: -2692:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} - 2385 .loc 1 2692 3 view .LVU762 - 2386 00da 0121 movs r1, #1 - 2387 00dc 1D20 movs r0, #29 - 2388 00de FFF7FEFF bl AD9102_WriteReg - 2389 .LVL268: -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2390 .loc 1 2693 3 view .LVU763 - 2391 .LBB387: -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2392 .loc 1 2693 8 view .LVU764 -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2393 .loc 1 2693 26 is_stmt 0 view .LVU765 - 2394 00e2 0023 movs r3, #0 - 2395 00e4 0193 str r3, [sp, #4] -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2396 .loc 1 2693 3 view .LVU766 - 2397 00e6 05E0 b .L169 - 2398 .LVL269: - 2399 .L177: -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2400 .loc 1 2693 3 view .LVU767 - 2401 .LBE387: -2670:Src/main.c **** } - 2402 .loc 1 2670 14 view .LVU768 - 2403 00e8 4FF6FF78 movw r8, #65535 - 2404 00ec AFE7 b .L167 - 2405 .LVL270: - 2406 .L170: - 2407 .LBB388: -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2408 .loc 1 2693 49 is_stmt 1 discriminator 3 view .LVU769 -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2409 .loc 1 2693 44 discriminator 3 view .LVU770 - 2410 00ee 019B ldr r3, [sp, #4] - 2411 00f0 0133 adds r3, r3, #1 - 2412 00f2 0193 str r3, [sp, #4] - 2413 .L169: -2693:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - ARM GAS /tmp/ccwR4KB7.s page 174 +3083:Src/main.c **** + 2366 .loc 1 3083 1 is_stmt 0 view .LVU762 + 2367 00ca 84F00100 eor r0, r4, #1 + 2368 00ce 03B0 add sp, sp, #12 + 2369 .LCFI22: + 2370 .cfi_remember_state + 2371 .cfi_def_cfa_offset 36 + 2372 @ sp needed + 2373 00d0 BDE8F08F pop {r4, r5, r6, r7, r8, r9, r10, fp, pc} + 2374 .LVL262: + 2375 .L160: + 2376 .LCFI23: + 2377 .cfi_restore_state +3035:Src/main.c **** } + 2378 .loc 1 3035 6 view .LVU763 + 2379 00d4 0024 movs r4, #0 + 2380 00d6 C7E7 b .L147 + 2381 .cfi_endproc + 2382 .LFE1223: + 2384 .section .text.AD9102_ApplySram,"ax",%progbits + 2385 .align 1 + 2386 .syntax unified + 2387 .thumb + 2388 .thumb_func + 2390 AD9102_ApplySram: + 2391 .LVL263: + 2392 .LFB1222: +2933:Src/main.c **** if (samples == 0u) + 2393 .loc 1 2933 1 is_stmt 1 view -0 + 2394 .cfi_startproc + 2395 @ args = 4, pretend = 0, frame = 8 + 2396 @ frame_needed = 0, uses_anonymous_args = 0 +2933:Src/main.c **** if (samples == 0u) + 2397 .loc 1 2933 1 is_stmt 0 view .LVU765 + 2398 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} + 2399 .LCFI24: + 2400 .cfi_def_cfa_offset 28 + 2401 .cfi_offset 4, -28 + 2402 .cfi_offset 5, -24 + 2403 .cfi_offset 6, -20 + 2404 .cfi_offset 7, -16 + 2405 .cfi_offset 8, -12 + 2406 .cfi_offset 9, -8 + 2407 .cfi_offset 14, -4 + 2408 0004 83B0 sub sp, sp, #12 + 2409 .LCFI25: + 2410 .cfi_def_cfa_offset 40 + 2411 0006 0646 mov r6, r0 + 2412 0008 1F46 mov r7, r3 + 2413 000a BDF82880 ldrh r8, [sp, #40] +2934:Src/main.c **** { + 2414 .loc 1 2934 2 is_stmt 1 view .LVU766 +2934:Src/main.c **** { + 2415 .loc 1 2934 5 is_stmt 0 view .LVU767 + 2416 000e 21B1 cbz r1, .L181 + 2417 0010 0C46 mov r4, r1 +2938:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 179 - 2414 .loc 1 2693 35 discriminator 1 view .LVU771 - 2415 00f4 019B ldr r3, [sp, #4] - 2416 00f6 B3F57A7F cmp r3, #1000 - 2417 00fa F8D3 bcc .L170 - 2418 .LBE388: -2694:Src/main.c **** } - 2419 .loc 1 2694 3 view .LVU772 - 2420 00fc 0022 movs r2, #0 - 2421 00fe 4FF40061 mov r1, #2048 - 2422 0102 0B48 ldr r0, .L179+4 - 2423 0104 FFF7FEFF bl HAL_GPIO_WritePin - 2424 .LVL271: - 2425 .L171: -2702:Src/main.c **** } - 2426 .loc 1 2702 2 view .LVU773 -2702:Src/main.c **** } - 2427 .loc 1 2702 9 is_stmt 0 view .LVU774 - 2428 0108 1E20 movs r0, #30 - 2429 010a FFF7FEFF bl AD9102_ReadReg - 2430 .LVL272: -2703:Src/main.c **** - 2431 .loc 1 2703 1 view .LVU775 - 2432 010e 02B0 add sp, sp, #8 - 2433 .LCFI26: - 2434 .cfi_remember_state - 2435 .cfi_def_cfa_offset 24 - 2436 @ sp needed - 2437 0110 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 2438 .LVL273: - 2439 .L168: - 2440 .LCFI27: - 2441 .cfi_restore_state -2698:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); - 2442 .loc 1 2698 3 is_stmt 1 view .LVU776 - 2443 0114 0021 movs r1, #0 - 2444 0116 1E20 movs r0, #30 - 2445 0118 FFF7FEFF bl AD9102_WriteReg - 2446 .LVL274: -2699:Src/main.c **** } - 2447 .loc 1 2699 3 view .LVU777 - 2448 011c 0122 movs r2, #1 - 2449 011e 4FF40061 mov r1, #2048 - 2450 0122 0348 ldr r0, .L179+4 - 2451 0124 FFF7FEFF bl HAL_GPIO_WritePin - 2452 .LVL275: - 2453 0128 EEE7 b .L171 - 2454 .L180: - 2455 012a 00BF .align 2 - 2456 .L179: - 2457 012c 00000000 .word ad9102_example2_regval - 2458 0130 000C0240 .word 1073875968 - 2459 .cfi_endproc - 2460 .LFE1217: - 2462 .section .text.AD9102_Apply,"ax",%progbits - 2463 .align 1 - 2464 .syntax unified - 2465 .thumb - ARM GAS /tmp/ccwR4KB7.s page 175 + 2418 .loc 1 2938 2 is_stmt 1 view .LVU768 +2938:Src/main.c **** { + 2419 .loc 1 2938 5 is_stmt 0 view .LVU769 + 2420 0012 0129 cmp r1, #1 + 2421 0014 02D8 bhi .L172 +2940:Src/main.c **** } + 2422 .loc 1 2940 11 view .LVU770 + 2423 0016 0224 movs r4, #2 + 2424 0018 03E0 b .L173 + 2425 .L181: +2936:Src/main.c **** } + 2426 .loc 1 2936 11 view .LVU771 + 2427 001a 1024 movs r4, #16 + 2428 .L172: + 2429 .LVL264: +2942:Src/main.c **** { + 2430 .loc 1 2942 2 is_stmt 1 view .LVU772 +2942:Src/main.c **** { + 2431 .loc 1 2942 5 is_stmt 0 view .LVU773 + 2432 001c B4F5805F cmp r4, #4096 + 2433 0020 04D8 bhi .L183 + 2434 .LVL265: + 2435 .L173: +2946:Src/main.c **** { + 2436 .loc 1 2946 2 is_stmt 1 view .LVU774 +2946:Src/main.c **** { + 2437 .loc 1 2946 5 is_stmt 0 view .LVU775 + 2438 0022 32B1 cbz r2, .L184 +2950:Src/main.c **** { + 2439 .loc 1 2950 2 is_stmt 1 view .LVU776 +2950:Src/main.c **** { + 2440 .loc 1 2950 5 is_stmt 0 view .LVU777 + 2441 0024 0F2A cmp r2, #15 + 2442 0026 05D9 bls .L174 +2952:Src/main.c **** } + 2443 .loc 1 2952 8 view .LVU778 + 2444 0028 0F22 movs r2, #15 + 2445 .LVL266: +2952:Src/main.c **** } + 2446 .loc 1 2952 8 view .LVU779 + 2447 002a 03E0 b .L174 + 2448 .LVL267: + 2449 .L183: +2944:Src/main.c **** } + 2450 .loc 1 2944 11 view .LVU780 + 2451 002c 4FF48054 mov r4, #4096 + 2452 .LVL268: +2944:Src/main.c **** } + 2453 .loc 1 2944 11 view .LVU781 + 2454 0030 F7E7 b .L173 + 2455 .LVL269: + 2456 .L184: +2948:Src/main.c **** } + 2457 .loc 1 2948 8 view .LVU782 + 2458 0032 0122 movs r2, #1 + 2459 .LVL270: + 2460 .L174: + ARM GAS /tmp/ccEQxcUB.s page 180 - 2466 .thumb_func - 2468 AD9102_Apply: - 2469 .LVL276: - 2470 .LFB1215: -2531:Src/main.c **** if (enable) - 2471 .loc 1 2531 1 view -0 - 2472 .cfi_startproc - 2473 @ args = 4, pretend = 0, frame = 8 - 2474 @ frame_needed = 0, uses_anonymous_args = 0 -2531:Src/main.c **** if (enable) - 2475 .loc 1 2531 1 is_stmt 0 view .LVU779 - 2476 0000 30B5 push {r4, r5, lr} - 2477 .LCFI28: - 2478 .cfi_def_cfa_offset 12 - 2479 .cfi_offset 4, -12 - 2480 .cfi_offset 5, -8 - 2481 .cfi_offset 14, -4 - 2482 0002 83B0 sub sp, sp, #12 - 2483 .LCFI29: - 2484 .cfi_def_cfa_offset 24 -2532:Src/main.c **** { - 2485 .loc 1 2532 2 is_stmt 1 view .LVU780 -2532:Src/main.c **** { - 2486 .loc 1 2532 5 is_stmt 0 view .LVU781 - 2487 0004 0029 cmp r1, #0 - 2488 0006 4AD0 beq .L182 - 2489 .LBB389: -2534:Src/main.c **** uint16_t pat_timebase; - 2490 .loc 1 2534 3 is_stmt 1 view .LVU782 -2535:Src/main.c **** - 2491 .loc 1 2535 3 view .LVU783 -2537:Src/main.c **** { - 2492 .loc 1 2537 3 view .LVU784 -2537:Src/main.c **** { - 2493 .loc 1 2537 6 is_stmt 0 view .LVU785 - 2494 0008 1AB1 cbz r2, .L187 -2541:Src/main.c **** { - 2495 .loc 1 2541 3 is_stmt 1 view .LVU786 -2541:Src/main.c **** { - 2496 .loc 1 2541 6 is_stmt 0 view .LVU787 - 2497 000a 3F2A cmp r2, #63 - 2498 000c 02D9 bls .L183 -2543:Src/main.c **** } - 2499 .loc 1 2543 13 view .LVU788 - 2500 000e 3F22 movs r2, #63 +2955:Src/main.c **** { + 2461 .loc 1 2955 2 is_stmt 1 view .LVU783 +2955:Src/main.c **** { + 2462 .loc 1 2955 5 is_stmt 0 view .LVU784 + 2463 0034 B8F5005F cmp r8, #8192 + 2464 0038 01D3 bcc .L175 +2957:Src/main.c **** } + 2465 .loc 1 2957 13 view .LVU785 + 2466 003a 41F6FF78 movw r8, #8191 + 2467 .L175: + 2468 .LVL271: +2960:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 2469 .loc 1 2960 2 is_stmt 1 view .LVU786 +2960:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 2470 .loc 1 2960 63 is_stmt 0 view .LVU787 + 2471 003e 1502 lsls r5, r2, #8 + 2472 0040 05F47065 and r5, r5, #3840 +2960:Src/main.c **** ((AD9102_SRAM_PAT_PERIOD_BASE_DEFAULT & 0x0Fu) << 4) | + 2473 .loc 1 2960 11 view .LVU788 + 2474 0044 45F01105 orr r5, r5, #17 + 2475 .LVL272: +2963:Src/main.c **** if (pat_period == 0u) + 2476 .loc 1 2963 2 is_stmt 1 view .LVU789 +2963:Src/main.c **** if (pat_period == 0u) + 2477 .loc 1 2963 24 is_stmt 0 view .LVU790 + 2478 0048 A146 mov r9, r4 +2963:Src/main.c **** if (pat_period == 0u) + 2479 .loc 1 2963 44 view .LVU791 + 2480 004a 02F00F02 and r2, r2, #15 + 2481 .LVL273: +2963:Src/main.c **** if (pat_period == 0u) + 2482 .loc 1 2963 11 view .LVU792 + 2483 004e 04FB02F2 mul r2, r4, r2 + 2484 .LVL274: +2964:Src/main.c **** { + 2485 .loc 1 2964 2 is_stmt 1 view .LVU793 +2964:Src/main.c **** { + 2486 .loc 1 2964 5 is_stmt 0 view .LVU794 + 2487 0052 1AB1 cbz r2, .L176 +2968:Src/main.c **** { + 2488 .loc 1 2968 2 is_stmt 1 view .LVU795 +2968:Src/main.c **** { + 2489 .loc 1 2968 5 is_stmt 0 view .LVU796 + 2490 0054 B2F5803F cmp r2, #65536 + 2491 0058 4ED2 bcs .L187 + 2492 005a 9146 mov r9, r2 + 2493 .L176: + 2494 .LVL275: +2973:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); + 2495 .loc 1 2973 2 is_stmt 1 view .LVU797 + 2496 005c 4221 movs r1, #66 + 2497 005e 3748 ldr r0, .L189 + 2498 .LVL276: +2973:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, 0x0000u); + 2499 .loc 1 2973 2 is_stmt 0 view .LVU798 + 2500 0060 FFF7FEFF bl AD9102_WriteRegTable 2501 .LVL277: -2543:Src/main.c **** } - 2502 .loc 1 2543 13 view .LVU789 - 2503 0010 00E0 b .L183 - 2504 .LVL278: - 2505 .L187: -2539:Src/main.c **** } - 2506 .loc 1 2539 13 view .LVU790 - 2507 0012 0122 movs r2, #1 - 2508 .LVL279: - 2509 .L183: -2545:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - ARM GAS /tmp/ccwR4KB7.s page 176 + ARM GAS /tmp/ccEQxcUB.s page 181 - 2510 .loc 1 2545 3 is_stmt 1 view .LVU791 -2546:Src/main.c **** pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | - 2511 .loc 1 2546 25 is_stmt 0 view .LVU792 - 2512 0014 00F00300 and r0, r0, #3 - 2513 .LVL280: -2545:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2514 .loc 1 2545 60 view .LVU793 - 2515 0018 9200 lsls r2, r2, #2 - 2516 .LVL281: -2545:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2517 .loc 1 2545 60 view .LVU794 - 2518 001a D2B2 uxtb r2, r2 -2545:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); - 2519 .loc 1 2545 11 view .LVU795 - 2520 001c 40EA0204 orr r4, r0, r2 - 2521 .LVL282: -2547:Src/main.c **** ((pat_base & 0x0Fu) << 4) | - 2522 .loc 1 2547 3 is_stmt 1 view .LVU796 -2548:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); - 2523 .loc 1 2548 49 is_stmt 0 view .LVU797 - 2524 0020 1B01 lsls r3, r3, #4 - 2525 .LVL283: -2548:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); - 2526 .loc 1 2548 49 view .LVU798 - 2527 0022 03F0F003 and r3, r3, #240 -2547:Src/main.c **** ((pat_base & 0x0Fu) << 4) | - 2528 .loc 1 2547 16 view .LVU799 - 2529 0026 40F20115 movw r5, #257 - 2530 002a 1D43 orrs r5, r5, r3 - 2531 .LVL284: -2551:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); - 2532 .loc 1 2551 3 is_stmt 1 view .LVU800 - 2533 002c 43F21221 movw r1, #12818 - 2534 .LVL285: -2551:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); - 2535 .loc 1 2551 3 is_stmt 0 view .LVU801 - 2536 0030 2720 movs r0, #39 - 2537 0032 FFF7FEFF bl AD9102_WriteReg - 2538 .LVL286: -2552:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); - 2539 .loc 1 2552 3 is_stmt 1 view .LVU802 - 2540 0036 2146 mov r1, r4 - 2541 0038 3720 movs r0, #55 - 2542 003a FFF7FEFF bl AD9102_WriteReg - 2543 .LVL287: -2553:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, pat_period); - 2544 .loc 1 2553 3 view .LVU803 - 2545 003e 2946 mov r1, r5 - 2546 0040 2820 movs r0, #40 - 2547 0042 FFF7FEFF bl AD9102_WriteReg - 2548 .LVL288: -2554:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat - 2549 .loc 1 2554 3 view .LVU804 - 2550 0046 BDF81810 ldrh r1, [sp, #24] - 2551 004a 2920 movs r0, #41 - 2552 004c FFF7FEFF bl AD9102_WriteReg - 2553 .LVL289: - ARM GAS /tmp/ccwR4KB7.s page 177 +2974:Src/main.c **** AD9102_WriteReg(AD9102_REG_WAV_CONFIG, AD9102_EX2_WAV_CONFIG); + 2502 .loc 1 2974 2 is_stmt 1 view .LVU799 + 2503 0064 0021 movs r1, #0 + 2504 0066 1E20 movs r0, #30 + 2505 0068 FFF7FEFF bl AD9102_WriteReg + 2506 .LVL278: +2975:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, AD9102_EX2_SAW_CONFIG); + 2507 .loc 1 2975 2 view .LVU800 + 2508 006c 43F23001 movw r1, #12336 + 2509 0070 2720 movs r0, #39 + 2510 0072 FFF7FEFF bl AD9102_WriteReg + 2511 .LVL279: +2976:Src/main.c **** AD9102_WriteReg(AD9102_REG_DAC_PAT, AD9102_EX2_DAC_PAT); + 2512 .loc 1 2976 2 view .LVU801 + 2513 0076 4FF40071 mov r1, #512 + 2514 007a 3720 movs r0, #55 + 2515 007c FFF7FEFF bl AD9102_WriteReg + 2516 .LVL280: +2977:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); + 2517 .loc 1 2977 2 view .LVU802 + 2518 0080 40F20111 movw r1, #257 + 2519 0084 2B20 movs r0, #43 + 2520 0086 FFF7FEFF bl AD9102_WriteReg + 2521 .LVL281: +2978:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, (uint16_t)pat_period); + 2522 .loc 1 2978 2 view .LVU803 + 2523 008a 2946 mov r1, r5 + 2524 008c 2820 movs r0, #40 + 2525 008e FFF7FEFF bl AD9102_WriteReg + 2526 .LVL282: +2979:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat + 2527 .loc 1 2979 2 view .LVU804 + 2528 0092 1FFA89F1 uxth r1, r9 + 2529 0096 2920 movs r0, #41 + 2530 0098 FFF7FEFF bl AD9102_WriteReg + 2531 .LVL283: +2980:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_DLY, AD9102_SRAM_START_DLY_DEFAULT); + 2532 .loc 1 2980 2 view .LVU805 + 2533 009c 0021 movs r1, #0 + 2534 009e 1F20 movs r0, #31 + 2535 00a0 FFF7FEFF bl AD9102_WriteReg + 2536 .LVL284: +2981:Src/main.c **** AD9102_WriteReg(AD9102_REG_START_ADDR, 0x0000u); + 2537 .loc 1 2981 2 view .LVU806 + 2538 00a4 0021 movs r1, #0 + 2539 00a6 5C20 movs r0, #92 + 2540 00a8 FFF7FEFF bl AD9102_WriteReg + 2541 .LVL285: +2982:Src/main.c **** AD9102_WriteReg(AD9102_REG_STOP_ADDR, (uint16_t)((samples - 1u) << 4)); + 2542 .loc 1 2982 2 view .LVU807 + 2543 00ac 0021 movs r1, #0 + 2544 00ae 5D20 movs r0, #93 + 2545 00b0 FFF7FEFF bl AD9102_WriteReg + 2546 .LVL286: +2983:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + 2547 .loc 1 2983 2 view .LVU808 +2983:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + ARM GAS /tmp/ccEQxcUB.s page 182 -2555:Src/main.c **** - 2554 .loc 1 2555 3 view .LVU805 - 2555 0050 0021 movs r1, #0 - 2556 0052 1F20 movs r0, #31 - 2557 0054 FFF7FEFF bl AD9102_WriteReg - 2558 .LVL290: -2559:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); - 2559 .loc 1 2559 3 view .LVU806 - 2560 0058 0122 movs r2, #1 - 2561 005a 4FF40061 mov r1, #2048 - 2562 005e 1548 ldr r0, .L190 - 2563 0060 FFF7FEFF bl HAL_GPIO_WritePin - 2564 .LVL291: -2560:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); - 2565 .loc 1 2560 3 view .LVU807 - 2566 0064 0121 movs r1, #1 - 2567 0066 1E20 movs r0, #30 - 2568 0068 FFF7FEFF bl AD9102_WriteReg - 2569 .LVL292: -2561:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} - 2570 .loc 1 2561 3 view .LVU808 - 2571 006c 0121 movs r1, #1 - 2572 006e 1D20 movs r0, #29 - 2573 0070 FFF7FEFF bl AD9102_WriteReg - 2574 .LVL293: -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2575 .loc 1 2562 3 view .LVU809 - 2576 .LBB390: -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2577 .loc 1 2562 8 view .LVU810 -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2578 .loc 1 2562 26 is_stmt 0 view .LVU811 - 2579 0074 0023 movs r3, #0 - 2580 0076 0193 str r3, [sp, #4] -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2581 .loc 1 2562 3 view .LVU812 - 2582 0078 02E0 b .L184 - 2583 .L185: -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2584 .loc 1 2562 49 is_stmt 1 discriminator 3 view .LVU813 -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2585 .loc 1 2562 44 discriminator 3 view .LVU814 - 2586 007a 019B ldr r3, [sp, #4] - 2587 007c 0133 adds r3, r3, #1 - 2588 007e 0193 str r3, [sp, #4] - 2589 .L184: -2562:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); - 2590 .loc 1 2562 35 discriminator 1 view .LVU815 - 2591 0080 019B ldr r3, [sp, #4] - 2592 0082 B3F57A7F cmp r3, #1000 - 2593 0086 F8D3 bcc .L185 - 2594 .LBE390: -2563:Src/main.c **** } - 2595 .loc 1 2563 3 view .LVU816 - 2596 0088 0022 movs r2, #0 - 2597 008a 4FF40061 mov r1, #2048 - 2598 008e 0948 ldr r0, .L190 - ARM GAS /tmp/ccwR4KB7.s page 178 + 2548 .loc 1 2983 60 is_stmt 0 view .LVU809 + 2549 00b4 611E subs r1, r4, #1 + 2550 00b6 89B2 uxth r1, r1 +2983:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + 2551 .loc 1 2983 2 view .LVU810 + 2552 00b8 0901 lsls r1, r1, #4 + 2553 00ba 89B2 uxth r1, r1 + 2554 00bc 5E20 movs r0, #94 + 2555 00be FFF7FEFF bl AD9102_WriteReg + 2556 .LVL287: +2984:Src/main.c **** + 2557 .loc 1 2984 2 is_stmt 1 view .LVU811 + 2558 00c2 0121 movs r1, #1 + 2559 00c4 1D20 movs r0, #29 + 2560 00c6 FFF7FEFF bl AD9102_WriteReg + 2561 .LVL288: +2986:Src/main.c **** + 2562 .loc 1 2986 2 view .LVU812 + 2563 00ca 4246 mov r2, r8 + 2564 00cc 3946 mov r1, r7 + 2565 00ce 2046 mov r0, r4 + 2566 00d0 FFF7FEFF bl AD9102_LoadSramRamp + 2567 .LVL289: +2988:Src/main.c **** { + 2568 .loc 1 2988 2 view .LVU813 +2988:Src/main.c **** { + 2569 .loc 1 2988 5 is_stmt 0 view .LVU814 + 2570 00d4 36B3 cbz r6, .L177 +2990:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); + 2571 .loc 1 2990 3 is_stmt 1 view .LVU815 + 2572 00d6 0122 movs r2, #1 + 2573 00d8 4FF40061 mov r1, #2048 + 2574 00dc 1848 ldr r0, .L189+4 + 2575 00de FFF7FEFF bl HAL_GPIO_WritePin + 2576 .LVL290: +2991:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + 2577 .loc 1 2991 3 view .LVU816 + 2578 00e2 0121 movs r1, #1 + 2579 00e4 1E20 movs r0, #30 + 2580 00e6 FFF7FEFF bl AD9102_WriteReg + 2581 .LVL291: +2992:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} + 2582 .loc 1 2992 3 view .LVU817 + 2583 00ea 0121 movs r1, #1 + 2584 00ec 1D20 movs r0, #29 + 2585 00ee FFF7FEFF bl AD9102_WriteReg + 2586 .LVL292: +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2587 .loc 1 2993 3 view .LVU818 + 2588 .LBB417: +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2589 .loc 1 2993 8 view .LVU819 +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2590 .loc 1 2993 26 is_stmt 0 view .LVU820 + 2591 00f2 0023 movs r3, #0 + 2592 00f4 0193 str r3, [sp, #4] +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + ARM GAS /tmp/ccEQxcUB.s page 183 - 2599 0090 FFF7FEFF bl HAL_GPIO_WritePin - 2600 .LVL294: - 2601 .L186: -2563:Src/main.c **** } - 2602 .loc 1 2563 3 is_stmt 0 view .LVU817 - 2603 .LBE389: -2571:Src/main.c **** } - 2604 .loc 1 2571 2 is_stmt 1 view .LVU818 -2571:Src/main.c **** } - 2605 .loc 1 2571 9 is_stmt 0 view .LVU819 - 2606 0094 1E20 movs r0, #30 - 2607 0096 FFF7FEFF bl AD9102_ReadReg - 2608 .LVL295: -2572:Src/main.c **** - 2609 .loc 1 2572 1 view .LVU820 - 2610 009a 03B0 add sp, sp, #12 - 2611 .LCFI30: - 2612 .cfi_remember_state - 2613 .cfi_def_cfa_offset 12 - 2614 @ sp needed - 2615 009c 30BD pop {r4, r5, pc} - 2616 .LVL296: - 2617 .L182: - 2618 .LCFI31: - 2619 .cfi_restore_state -2567:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); - 2620 .loc 1 2567 3 is_stmt 1 view .LVU821 - 2621 009e 0021 movs r1, #0 - 2622 .LVL297: -2567:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); - 2623 .loc 1 2567 3 is_stmt 0 view .LVU822 - 2624 00a0 1E20 movs r0, #30 - 2625 .LVL298: -2567:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); - 2626 .loc 1 2567 3 view .LVU823 - 2627 00a2 FFF7FEFF bl AD9102_WriteReg - 2628 .LVL299: -2568:Src/main.c **** } - 2629 .loc 1 2568 3 is_stmt 1 view .LVU824 - 2630 00a6 0122 movs r2, #1 - 2631 00a8 4FF40061 mov r1, #2048 - 2632 00ac 0148 ldr r0, .L190 - 2633 00ae FFF7FEFF bl HAL_GPIO_WritePin - 2634 .LVL300: - 2635 00b2 EFE7 b .L186 - 2636 .L191: - 2637 .align 2 - 2638 .L190: - 2639 00b4 000C0240 .word 1073875968 - 2640 .cfi_endproc - 2641 .LFE1215: - 2643 .section .text.OUT_trigger,"ax",%progbits - 2644 .align 1 - 2645 .syntax unified - 2646 .thumb - 2647 .thumb_func - 2649 OUT_trigger: - ARM GAS /tmp/ccwR4KB7.s page 179 + 2593 .loc 1 2993 3 view .LVU821 + 2594 00f6 05E0 b .L178 + 2595 .LVL293: + 2596 .L187: +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2597 .loc 1 2993 3 view .LVU822 + 2598 .LBE417: +2970:Src/main.c **** } + 2599 .loc 1 2970 14 view .LVU823 + 2600 00f8 4FF6FF79 movw r9, #65535 + 2601 00fc AEE7 b .L176 + 2602 .LVL294: + 2603 .L179: + 2604 .LBB418: +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2605 .loc 1 2993 49 is_stmt 1 discriminator 3 view .LVU824 +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2606 .loc 1 2993 44 discriminator 3 view .LVU825 + 2607 00fe 019B ldr r3, [sp, #4] + 2608 0100 0133 adds r3, r3, #1 + 2609 0102 0193 str r3, [sp, #4] + 2610 .L178: +2993:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2611 .loc 1 2993 35 discriminator 1 view .LVU826 + 2612 0104 019B ldr r3, [sp, #4] + 2613 0106 B3F57A7F cmp r3, #1000 + 2614 010a F8D3 bcc .L179 + 2615 .LBE418: +2994:Src/main.c **** } + 2616 .loc 1 2994 3 view .LVU827 + 2617 010c 0022 movs r2, #0 + 2618 010e 4FF40061 mov r1, #2048 + 2619 0112 0B48 ldr r0, .L189+4 + 2620 0114 FFF7FEFF bl HAL_GPIO_WritePin + 2621 .LVL295: + 2622 .L180: +3002:Src/main.c **** } + 2623 .loc 1 3002 2 view .LVU828 +3002:Src/main.c **** } + 2624 .loc 1 3002 9 is_stmt 0 view .LVU829 + 2625 0118 1E20 movs r0, #30 + 2626 011a FFF7FEFF bl AD9102_ReadReg + 2627 .LVL296: +3003:Src/main.c **** + 2628 .loc 1 3003 1 view .LVU830 + 2629 011e 03B0 add sp, sp, #12 + 2630 .LCFI26: + 2631 .cfi_remember_state + 2632 .cfi_def_cfa_offset 28 + 2633 @ sp needed + 2634 0120 BDE8F083 pop {r4, r5, r6, r7, r8, r9, pc} + 2635 .LVL297: + 2636 .L177: + 2637 .LCFI27: + 2638 .cfi_restore_state +2998:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + 2639 .loc 1 2998 3 is_stmt 1 view .LVU831 + ARM GAS /tmp/ccEQxcUB.s page 184 - 2650 .LVL301: - 2651 .LFB1210: -2396:Src/main.c **** switch (out_n) - 2652 .loc 1 2396 1 view -0 - 2653 .cfi_startproc - 2654 @ args = 0, pretend = 0, frame = 0 - 2655 @ frame_needed = 0, uses_anonymous_args = 0 -2396:Src/main.c **** switch (out_n) - 2656 .loc 1 2396 1 is_stmt 0 view .LVU826 - 2657 0000 10B5 push {r4, lr} - 2658 .LCFI32: - 2659 .cfi_def_cfa_offset 8 - 2660 .cfi_offset 4, -8 - 2661 .cfi_offset 14, -4 -2397:Src/main.c **** { - 2662 .loc 1 2397 2 is_stmt 1 view .LVU827 - 2663 0002 0928 cmp r0, #9 - 2664 0004 13D8 bhi .L192 - 2665 0006 DFE800F0 tbb [pc, r0] - 2666 .L195: - 2667 000a 05 .byte (.L204-.L195)/2 - 2668 000b 13 .byte (.L203-.L195)/2 - 2669 000c 21 .byte (.L202-.L195)/2 - 2670 000d 2F .byte (.L201-.L195)/2 - 2671 000e 3D .byte (.L200-.L195)/2 - 2672 000f 4B .byte (.L199-.L195)/2 - 2673 0010 59 .byte (.L198-.L195)/2 - 2674 0011 65 .byte (.L197-.L195)/2 - 2675 0012 71 .byte (.L196-.L195)/2 - 2676 0013 7D .byte (.L194-.L195)/2 - 2677 .p2align 1 - 2678 .L204: -2400:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); - 2679 .loc 1 2400 3 view .LVU828 - 2680 0014 414C ldr r4, .L207 - 2681 0016 0122 movs r2, #1 - 2682 0018 4FF48061 mov r1, #1024 - 2683 001c 2046 mov r0, r4 - 2684 .LVL302: -2400:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); - 2685 .loc 1 2400 3 is_stmt 0 view .LVU829 - 2686 001e FFF7FEFF bl HAL_GPIO_WritePin - 2687 .LVL303: -2401:Src/main.c **** break; - 2688 .loc 1 2401 3 is_stmt 1 view .LVU830 - 2689 0022 0022 movs r2, #0 - 2690 0024 4FF48061 mov r1, #1024 - 2691 0028 2046 mov r0, r4 - 2692 002a FFF7FEFF bl HAL_GPIO_WritePin - 2693 .LVL304: -2402:Src/main.c **** - 2694 .loc 1 2402 2 view .LVU831 - 2695 .L192: -2449:Src/main.c **** - 2696 .loc 1 2449 1 is_stmt 0 view .LVU832 - 2697 002e 10BD pop {r4, pc} - 2698 .LVL305: - ARM GAS /tmp/ccwR4KB7.s page 180 + 2640 0124 0021 movs r1, #0 + 2641 0126 1E20 movs r0, #30 + 2642 0128 FFF7FEFF bl AD9102_WriteReg + 2643 .LVL298: +2999:Src/main.c **** } + 2644 .loc 1 2999 3 view .LVU832 + 2645 012c 0122 movs r2, #1 + 2646 012e 4FF40061 mov r1, #2048 + 2647 0132 0348 ldr r0, .L189+4 + 2648 0134 FFF7FEFF bl HAL_GPIO_WritePin + 2649 .LVL299: + 2650 0138 EEE7 b .L180 + 2651 .L190: + 2652 013a 00BF .align 2 + 2653 .L189: + 2654 013c 00000000 .word ad9102_example2_regval + 2655 0140 000C0240 .word 1073875968 + 2656 .cfi_endproc + 2657 .LFE1222: + 2659 .section .text.AD9102_Apply,"ax",%progbits + 2660 .align 1 + 2661 .syntax unified + 2662 .thumb + 2663 .thumb_func + 2665 AD9102_Apply: + 2666 .LVL300: + 2667 .LFB1220: +2801:Src/main.c **** if (enable) + 2668 .loc 1 2801 1 view -0 + 2669 .cfi_startproc + 2670 @ args = 4, pretend = 0, frame = 8 + 2671 @ frame_needed = 0, uses_anonymous_args = 0 +2801:Src/main.c **** if (enable) + 2672 .loc 1 2801 1 is_stmt 0 view .LVU834 + 2673 0000 30B5 push {r4, r5, lr} + 2674 .LCFI28: + 2675 .cfi_def_cfa_offset 12 + 2676 .cfi_offset 4, -12 + 2677 .cfi_offset 5, -8 + 2678 .cfi_offset 14, -4 + 2679 0002 83B0 sub sp, sp, #12 + 2680 .LCFI29: + 2681 .cfi_def_cfa_offset 24 +2802:Src/main.c **** { + 2682 .loc 1 2802 2 is_stmt 1 view .LVU835 +2802:Src/main.c **** { + 2683 .loc 1 2802 5 is_stmt 0 view .LVU836 + 2684 0004 0029 cmp r1, #0 + 2685 0006 4AD0 beq .L192 + 2686 .LBB419: +2804:Src/main.c **** uint16_t pat_timebase; + 2687 .loc 1 2804 3 is_stmt 1 view .LVU837 +2805:Src/main.c **** + 2688 .loc 1 2805 3 view .LVU838 +2807:Src/main.c **** { + 2689 .loc 1 2807 3 view .LVU839 +2807:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 185 - 2699 .L203: -2405:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); - 2700 .loc 1 2405 3 is_stmt 1 view .LVU833 - 2701 0030 3A4C ldr r4, .L207 - 2702 0032 0122 movs r2, #1 - 2703 0034 4FF40061 mov r1, #2048 - 2704 0038 2046 mov r0, r4 - 2705 .LVL306: -2405:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); - 2706 .loc 1 2405 3 is_stmt 0 view .LVU834 - 2707 003a FFF7FEFF bl HAL_GPIO_WritePin - 2708 .LVL307: -2406:Src/main.c **** break; - 2709 .loc 1 2406 3 is_stmt 1 view .LVU835 - 2710 003e 0022 movs r2, #0 - 2711 0040 4FF40061 mov r1, #2048 - 2712 0044 2046 mov r0, r4 - 2713 0046 FFF7FEFF bl HAL_GPIO_WritePin - 2714 .LVL308: -2407:Src/main.c **** - 2715 .loc 1 2407 2 view .LVU836 - 2716 004a F0E7 b .L192 - 2717 .LVL309: - 2718 .L202: -2410:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); - 2719 .loc 1 2410 3 view .LVU837 - 2720 004c 334C ldr r4, .L207 - 2721 004e 0122 movs r2, #1 - 2722 0050 4FF48051 mov r1, #4096 - 2723 0054 2046 mov r0, r4 - 2724 .LVL310: -2410:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); - 2725 .loc 1 2410 3 is_stmt 0 view .LVU838 - 2726 0056 FFF7FEFF bl HAL_GPIO_WritePin - 2727 .LVL311: -2411:Src/main.c **** break; - 2728 .loc 1 2411 3 is_stmt 1 view .LVU839 - 2729 005a 0022 movs r2, #0 - 2730 005c 4FF48051 mov r1, #4096 - 2731 0060 2046 mov r0, r4 - 2732 0062 FFF7FEFF bl HAL_GPIO_WritePin - 2733 .LVL312: -2412:Src/main.c **** - 2734 .loc 1 2412 2 view .LVU840 - 2735 0066 E2E7 b .L192 - 2736 .LVL313: - 2737 .L201: -2415:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); - 2738 .loc 1 2415 3 view .LVU841 - 2739 0068 2C4C ldr r4, .L207 - 2740 006a 0122 movs r2, #1 - 2741 006c 4FF40051 mov r1, #8192 - 2742 0070 2046 mov r0, r4 - 2743 .LVL314: -2415:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); - 2744 .loc 1 2415 3 is_stmt 0 view .LVU842 - 2745 0072 FFF7FEFF bl HAL_GPIO_WritePin - ARM GAS /tmp/ccwR4KB7.s page 181 + 2690 .loc 1 2807 6 is_stmt 0 view .LVU840 + 2691 0008 1AB1 cbz r2, .L197 +2811:Src/main.c **** { + 2692 .loc 1 2811 3 is_stmt 1 view .LVU841 +2811:Src/main.c **** { + 2693 .loc 1 2811 6 is_stmt 0 view .LVU842 + 2694 000a 3F2A cmp r2, #63 + 2695 000c 02D9 bls .L193 +2813:Src/main.c **** } + 2696 .loc 1 2813 13 view .LVU843 + 2697 000e 3F22 movs r2, #63 + 2698 .LVL301: +2813:Src/main.c **** } + 2699 .loc 1 2813 13 view .LVU844 + 2700 0010 00E0 b .L193 + 2701 .LVL302: + 2702 .L197: +2809:Src/main.c **** } + 2703 .loc 1 2809 13 view .LVU845 + 2704 0012 0122 movs r2, #1 + 2705 .LVL303: + 2706 .L193: +2815:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2707 .loc 1 2815 3 is_stmt 1 view .LVU846 +2816:Src/main.c **** pat_timebase = (uint16_t)(((AD9102_PAT_TIMEBASE_HOLD_DEFAULT & 0x0Fu) << 8) | + 2708 .loc 1 2816 25 is_stmt 0 view .LVU847 + 2709 0014 00F00300 and r0, r0, #3 + 2710 .LVL304: +2815:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2711 .loc 1 2815 60 view .LVU848 + 2712 0018 9200 lsls r2, r2, #2 + 2713 .LVL305: +2815:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2714 .loc 1 2815 60 view .LVU849 + 2715 001a D2B2 uxtb r2, r2 +2815:Src/main.c **** ((uint16_t)(saw_type & 0x3u))); + 2716 .loc 1 2815 11 view .LVU850 + 2717 001c 40EA0204 orr r4, r0, r2 + 2718 .LVL306: +2817:Src/main.c **** ((pat_base & 0x0Fu) << 4) | + 2719 .loc 1 2817 3 is_stmt 1 view .LVU851 +2818:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); + 2720 .loc 1 2818 49 is_stmt 0 view .LVU852 + 2721 0020 1B01 lsls r3, r3, #4 + 2722 .LVL307: +2818:Src/main.c **** (AD9102_START_DELAY_BASE_DEFAULT & 0x0Fu)); + 2723 .loc 1 2818 49 view .LVU853 + 2724 0022 03F0F003 and r3, r3, #240 +2817:Src/main.c **** ((pat_base & 0x0Fu) << 4) | + 2725 .loc 1 2817 16 view .LVU854 + 2726 0026 40F20115 movw r5, #257 + 2727 002a 1D43 orrs r5, r5, r3 + 2728 .LVL308: +2821:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); + 2729 .loc 1 2821 3 is_stmt 1 view .LVU855 + 2730 002c 43F21221 movw r1, #12818 + 2731 .LVL309: + ARM GAS /tmp/ccEQxcUB.s page 186 - 2746 .LVL315: -2416:Src/main.c **** break; - 2747 .loc 1 2416 3 is_stmt 1 view .LVU843 - 2748 0076 0022 movs r2, #0 - 2749 0078 4FF40051 mov r1, #8192 - 2750 007c 2046 mov r0, r4 - 2751 007e FFF7FEFF bl HAL_GPIO_WritePin - 2752 .LVL316: -2417:Src/main.c **** - 2753 .loc 1 2417 2 view .LVU844 - 2754 0082 D4E7 b .L192 - 2755 .LVL317: - 2756 .L200: -2420:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); - 2757 .loc 1 2420 3 view .LVU845 - 2758 0084 254C ldr r4, .L207 - 2759 0086 0122 movs r2, #1 - 2760 0088 4FF48041 mov r1, #16384 - 2761 008c 2046 mov r0, r4 - 2762 .LVL318: -2420:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); - 2763 .loc 1 2420 3 is_stmt 0 view .LVU846 - 2764 008e FFF7FEFF bl HAL_GPIO_WritePin - 2765 .LVL319: -2421:Src/main.c **** break; - 2766 .loc 1 2421 3 is_stmt 1 view .LVU847 - 2767 0092 0022 movs r2, #0 - 2768 0094 4FF48041 mov r1, #16384 - 2769 0098 2046 mov r0, r4 - 2770 009a FFF7FEFF bl HAL_GPIO_WritePin - 2771 .LVL320: -2422:Src/main.c **** - 2772 .loc 1 2422 2 view .LVU848 - 2773 009e C6E7 b .L192 - 2774 .LVL321: - 2775 .L199: -2425:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); - 2776 .loc 1 2425 3 view .LVU849 - 2777 00a0 1E4C ldr r4, .L207 - 2778 00a2 0122 movs r2, #1 - 2779 00a4 4FF40041 mov r1, #32768 - 2780 00a8 2046 mov r0, r4 - 2781 .LVL322: -2425:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); - 2782 .loc 1 2425 3 is_stmt 0 view .LVU850 - 2783 00aa FFF7FEFF bl HAL_GPIO_WritePin - 2784 .LVL323: -2426:Src/main.c **** break; - 2785 .loc 1 2426 3 is_stmt 1 view .LVU851 - 2786 00ae 0022 movs r2, #0 - 2787 00b0 4FF40041 mov r1, #32768 - 2788 00b4 2046 mov r0, r4 - 2789 00b6 FFF7FEFF bl HAL_GPIO_WritePin - 2790 .LVL324: -2427:Src/main.c **** - 2791 .loc 1 2427 2 view .LVU852 - 2792 00ba B8E7 b .L192 - ARM GAS /tmp/ccwR4KB7.s page 182 +2821:Src/main.c **** AD9102_WriteReg(AD9102_REG_SAW_CONFIG, saw_cfg); + 2732 .loc 1 2821 3 is_stmt 0 view .LVU856 + 2733 0030 2720 movs r0, #39 + 2734 0032 FFF7FEFF bl AD9102_WriteReg + 2735 .LVL310: +2822:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TIMEBASE, pat_timebase); + 2736 .loc 1 2822 3 is_stmt 1 view .LVU857 + 2737 0036 2146 mov r1, r4 + 2738 0038 3720 movs r0, #55 + 2739 003a FFF7FEFF bl AD9102_WriteReg + 2740 .LVL311: +2823:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_PERIOD, pat_period); + 2741 .loc 1 2823 3 view .LVU858 + 2742 003e 2946 mov r1, r5 + 2743 0040 2820 movs r0, #40 + 2744 0042 FFF7FEFF bl AD9102_WriteReg + 2745 .LVL312: +2824:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_TYPE, 0x0000u); // continuous pattern repeat + 2746 .loc 1 2824 3 view .LVU859 + 2747 0046 BDF81810 ldrh r1, [sp, #24] + 2748 004a 2920 movs r0, #41 + 2749 004c FFF7FEFF bl AD9102_WriteReg + 2750 .LVL313: +2825:Src/main.c **** + 2751 .loc 1 2825 3 view .LVU860 + 2752 0050 0021 movs r1, #0 + 2753 0052 1F20 movs r0, #31 + 2754 0054 FFF7FEFF bl AD9102_WriteReg + 2755 .LVL314: +2829:Src/main.c **** AD9102_WriteReg(AD9102_REG_PAT_STATUS, AD9102_PAT_STATUS_RUN); + 2756 .loc 1 2829 3 view .LVU861 + 2757 0058 0122 movs r2, #1 + 2758 005a 4FF40061 mov r1, #2048 + 2759 005e 1548 ldr r0, .L200 + 2760 0060 FFF7FEFF bl HAL_GPIO_WritePin + 2761 .LVL315: +2830:Src/main.c **** AD9102_WriteReg(AD9102_REG_RAMUPDATE, 0x0001u); + 2762 .loc 1 2830 3 view .LVU862 + 2763 0064 0121 movs r1, #1 + 2764 0066 1E20 movs r0, #30 + 2765 0068 FFF7FEFF bl AD9102_WriteReg + 2766 .LVL316: +2831:Src/main.c **** for (volatile uint32_t d = 0; d < 1000; d++) {} + 2767 .loc 1 2831 3 view .LVU863 + 2768 006c 0121 movs r1, #1 + 2769 006e 1D20 movs r0, #29 + 2770 0070 FFF7FEFF bl AD9102_WriteReg + 2771 .LVL317: +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2772 .loc 1 2832 3 view .LVU864 + 2773 .LBB420: +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2774 .loc 1 2832 8 view .LVU865 +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2775 .loc 1 2832 26 is_stmt 0 view .LVU866 + 2776 0074 0023 movs r3, #0 + 2777 0076 0193 str r3, [sp, #4] + ARM GAS /tmp/ccEQxcUB.s page 187 - 2793 .LVL325: - 2794 .L198: -2430:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); - 2795 .loc 1 2430 3 view .LVU853 - 2796 00bc 184C ldr r4, .L207+4 - 2797 00be 0122 movs r2, #1 - 2798 00c0 1021 movs r1, #16 - 2799 00c2 2046 mov r0, r4 - 2800 .LVL326: -2430:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); - 2801 .loc 1 2430 3 is_stmt 0 view .LVU854 - 2802 00c4 FFF7FEFF bl HAL_GPIO_WritePin - 2803 .LVL327: -2431:Src/main.c **** break; - 2804 .loc 1 2431 3 is_stmt 1 view .LVU855 - 2805 00c8 0022 movs r2, #0 - 2806 00ca 1021 movs r1, #16 - 2807 00cc 2046 mov r0, r4 - 2808 00ce FFF7FEFF bl HAL_GPIO_WritePin - 2809 .LVL328: -2432:Src/main.c **** - 2810 .loc 1 2432 2 view .LVU856 - 2811 00d2 ACE7 b .L192 - 2812 .LVL329: - 2813 .L197: -2435:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); - 2814 .loc 1 2435 3 view .LVU857 - 2815 00d4 124C ldr r4, .L207+4 - 2816 00d6 0122 movs r2, #1 - 2817 00d8 2021 movs r1, #32 - 2818 00da 2046 mov r0, r4 - 2819 .LVL330: -2435:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); - 2820 .loc 1 2435 3 is_stmt 0 view .LVU858 - 2821 00dc FFF7FEFF bl HAL_GPIO_WritePin - 2822 .LVL331: -2436:Src/main.c **** break; - 2823 .loc 1 2436 3 is_stmt 1 view .LVU859 - 2824 00e0 0022 movs r2, #0 - 2825 00e2 2021 movs r1, #32 - 2826 00e4 2046 mov r0, r4 - 2827 00e6 FFF7FEFF bl HAL_GPIO_WritePin - 2828 .LVL332: -2437:Src/main.c **** - 2829 .loc 1 2437 2 view .LVU860 - 2830 00ea A0E7 b .L192 - 2831 .LVL333: - 2832 .L196: -2440:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); - 2833 .loc 1 2440 3 view .LVU861 - 2834 00ec 0C4C ldr r4, .L207+4 - 2835 00ee 0122 movs r2, #1 - 2836 00f0 4021 movs r1, #64 - 2837 00f2 2046 mov r0, r4 - 2838 .LVL334: -2440:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); - 2839 .loc 1 2440 3 is_stmt 0 view .LVU862 - ARM GAS /tmp/ccwR4KB7.s page 183 +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2778 .loc 1 2832 3 view .LVU867 + 2779 0078 02E0 b .L194 + 2780 .L195: +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2781 .loc 1 2832 49 is_stmt 1 discriminator 3 view .LVU868 +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2782 .loc 1 2832 44 discriminator 3 view .LVU869 + 2783 007a 019B ldr r3, [sp, #4] + 2784 007c 0133 adds r3, r3, #1 + 2785 007e 0193 str r3, [sp, #4] + 2786 .L194: +2832:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_RESET); + 2787 .loc 1 2832 35 discriminator 1 view .LVU870 + 2788 0080 019B ldr r3, [sp, #4] + 2789 0082 B3F57A7F cmp r3, #1000 + 2790 0086 F8D3 bcc .L195 + 2791 .LBE420: +2833:Src/main.c **** } + 2792 .loc 1 2833 3 view .LVU871 + 2793 0088 0022 movs r2, #0 + 2794 008a 4FF40061 mov r1, #2048 + 2795 008e 0948 ldr r0, .L200 + 2796 0090 FFF7FEFF bl HAL_GPIO_WritePin + 2797 .LVL318: + 2798 .L196: +2833:Src/main.c **** } + 2799 .loc 1 2833 3 is_stmt 0 view .LVU872 + 2800 .LBE419: +2841:Src/main.c **** } + 2801 .loc 1 2841 2 is_stmt 1 view .LVU873 +2841:Src/main.c **** } + 2802 .loc 1 2841 9 is_stmt 0 view .LVU874 + 2803 0094 1E20 movs r0, #30 + 2804 0096 FFF7FEFF bl AD9102_ReadReg + 2805 .LVL319: +2842:Src/main.c **** + 2806 .loc 1 2842 1 view .LVU875 + 2807 009a 03B0 add sp, sp, #12 + 2808 .LCFI30: + 2809 .cfi_remember_state + 2810 .cfi_def_cfa_offset 12 + 2811 @ sp needed + 2812 009c 30BD pop {r4, r5, pc} + 2813 .LVL320: + 2814 .L192: + 2815 .LCFI31: + 2816 .cfi_restore_state +2837:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + 2817 .loc 1 2837 3 is_stmt 1 view .LVU876 + 2818 009e 0021 movs r1, #0 + 2819 .LVL321: +2837:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + 2820 .loc 1 2837 3 is_stmt 0 view .LVU877 + 2821 00a0 1E20 movs r0, #30 + 2822 .LVL322: +2837:Src/main.c **** HAL_GPIO_WritePin(AD9102_TRIG_GPIO_Port, AD9102_TRIG_Pin, GPIO_PIN_SET); + ARM GAS /tmp/ccEQxcUB.s page 188 - 2840 00f4 FFF7FEFF bl HAL_GPIO_WritePin - 2841 .LVL335: -2441:Src/main.c **** break; - 2842 .loc 1 2441 3 is_stmt 1 view .LVU863 - 2843 00f8 0022 movs r2, #0 - 2844 00fa 4021 movs r1, #64 - 2845 00fc 2046 mov r0, r4 - 2846 00fe FFF7FEFF bl HAL_GPIO_WritePin - 2847 .LVL336: -2442:Src/main.c **** - 2848 .loc 1 2442 2 view .LVU864 - 2849 0102 94E7 b .L192 - 2850 .LVL337: - 2851 .L194: -2445:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); - 2852 .loc 1 2445 3 view .LVU865 - 2853 0104 064C ldr r4, .L207+4 - 2854 0106 0122 movs r2, #1 - 2855 0108 8021 movs r1, #128 - 2856 010a 2046 mov r0, r4 - 2857 .LVL338: -2445:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); - 2858 .loc 1 2445 3 is_stmt 0 view .LVU866 - 2859 010c FFF7FEFF bl HAL_GPIO_WritePin - 2860 .LVL339: -2446:Src/main.c **** break; - 2861 .loc 1 2446 3 is_stmt 1 view .LVU867 - 2862 0110 0022 movs r2, #0 - 2863 0112 8021 movs r1, #128 - 2864 0114 2046 mov r0, r4 - 2865 0116 FFF7FEFF bl HAL_GPIO_WritePin - 2866 .LVL340: -2447:Src/main.c **** } - 2867 .loc 1 2447 2 view .LVU868 -2449:Src/main.c **** - 2868 .loc 1 2449 1 is_stmt 0 view .LVU869 - 2869 011a 88E7 b .L192 - 2870 .L208: - 2871 .align 2 - 2872 .L207: - 2873 011c 00180240 .word 1073879040 - 2874 0120 00040240 .word 1073873920 - 2875 .cfi_endproc - 2876 .LFE1210: - 2878 .section .text.MPhD_T,"ax",%progbits - 2879 .align 1 - 2880 .syntax unified - 2881 .thumb - 2882 .thumb_func - 2884 MPhD_T: - 2885 .LVL341: - 2886 .LFB1221: -2949:Src/main.c **** uint16_t P; - 2887 .loc 1 2949 1 is_stmt 1 view -0 - 2888 .cfi_startproc - 2889 @ args = 0, pretend = 0, frame = 0 - 2890 @ frame_needed = 0, uses_anonymous_args = 0 - ARM GAS /tmp/ccwR4KB7.s page 184 + 2823 .loc 1 2837 3 view .LVU878 + 2824 00a2 FFF7FEFF bl AD9102_WriteReg + 2825 .LVL323: +2838:Src/main.c **** } + 2826 .loc 1 2838 3 is_stmt 1 view .LVU879 + 2827 00a6 0122 movs r2, #1 + 2828 00a8 4FF40061 mov r1, #2048 + 2829 00ac 0148 ldr r0, .L200 + 2830 00ae FFF7FEFF bl HAL_GPIO_WritePin + 2831 .LVL324: + 2832 00b2 EFE7 b .L196 + 2833 .L201: + 2834 .align 2 + 2835 .L200: + 2836 00b4 000C0240 .word 1073875968 + 2837 .cfi_endproc + 2838 .LFE1220: + 2840 .section .text.AD9833_WriteWord,"ax",%progbits + 2841 .align 1 + 2842 .syntax unified + 2843 .thumb + 2844 .thumb_func + 2846 AD9833_WriteWord: + 2847 .LVL325: + 2848 .LFB1214: +2654:Src/main.c **** uint32_t tmp32 = 0; + 2849 .loc 1 2654 1 view -0 + 2850 .cfi_startproc + 2851 @ args = 0, pretend = 0, frame = 0 + 2852 @ frame_needed = 0, uses_anonymous_args = 0 +2654:Src/main.c **** uint32_t tmp32 = 0; + 2853 .loc 1 2654 1 is_stmt 0 view .LVU881 + 2854 0000 38B5 push {r3, r4, r5, lr} + 2855 .LCFI32: + 2856 .cfi_def_cfa_offset 16 + 2857 .cfi_offset 3, -16 + 2858 .cfi_offset 4, -12 + 2859 .cfi_offset 5, -8 + 2860 .cfi_offset 14, -4 + 2861 0002 0446 mov r4, r0 +2655:Src/main.c **** + 2862 .loc 1 2655 2 is_stmt 1 view .LVU882 + 2863 .LVL326: +2657:Src/main.c **** + 2864 .loc 1 2657 2 view .LVU883 + 2865 0004 0021 movs r1, #0 + 2866 0006 0220 movs r0, #2 + 2867 .LVL327: +2657:Src/main.c **** + 2868 .loc 1 2657 2 is_stmt 0 view .LVU884 + 2869 0008 FFF7FEFF bl SPI2_SetMode + 2870 .LVL328: +2659:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET); + 2871 .loc 1 2659 2 is_stmt 1 view .LVU885 + 2872 000c 1E4D ldr r5, .L210 + 2873 000e 0122 movs r2, #1 + 2874 0010 4FF48051 mov r1, #4096 + ARM GAS /tmp/ccEQxcUB.s page 189 -2949:Src/main.c **** uint16_t P; - 2891 .loc 1 2949 1 is_stmt 0 view .LVU871 - 2892 0000 38B5 push {r3, r4, r5, lr} - 2893 .LCFI33: - 2894 .cfi_def_cfa_offset 16 - 2895 .cfi_offset 3, -16 - 2896 .cfi_offset 4, -12 - 2897 .cfi_offset 5, -8 - 2898 .cfi_offset 14, -4 - 2899 0002 0446 mov r4, r0 -2950:Src/main.c **** uint32_t tmp32; - 2900 .loc 1 2950 2 is_stmt 1 view .LVU872 -2951:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion - 2901 .loc 1 2951 2 view .LVU873 -2952:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion - 2902 .loc 1 2952 2 view .LVU874 - 2903 0004 0022 movs r2, #0 - 2904 0006 4FF48041 mov r1, #16384 - 2905 000a 8148 ldr r0, .L250 - 2906 .LVL342: -2952:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion - 2907 .loc 1 2952 2 is_stmt 0 view .LVU875 - 2908 000c FFF7FEFF bl HAL_GPIO_WritePin - 2909 .LVL343: -2953:Src/main.c **** tmp32=0; - 2910 .loc 1 2953 2 is_stmt 1 view .LVU876 - 2911 0010 0022 movs r2, #0 - 2912 0012 4FF40071 mov r1, #512 - 2913 0016 7F48 ldr r0, .L250+4 - 2914 0018 FFF7FEFF bl HAL_GPIO_WritePin - 2915 .LVL344: -2954:Src/main.c **** while(tmp32<500){tmp32++;} - 2916 .loc 1 2954 2 view .LVU877 -2955:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2917 .loc 1 2955 2 view .LVU878 -2954:Src/main.c **** while(tmp32<500){tmp32++;} - 2918 .loc 1 2954 7 is_stmt 0 view .LVU879 - 2919 001c 0023 movs r3, #0 -2955:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2920 .loc 1 2955 7 view .LVU880 - 2921 001e 00E0 b .L210 - 2922 .LVL345: - 2923 .L211: -2955:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2924 .loc 1 2955 19 is_stmt 1 discriminator 2 view .LVU881 -2955:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2925 .loc 1 2955 24 is_stmt 0 discriminator 2 view .LVU882 - 2926 0020 0133 adds r3, r3, #1 - 2927 .LVL346: - 2928 .L210: -2955:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2929 .loc 1 2955 13 is_stmt 1 discriminator 1 view .LVU883 - 2930 0022 B3F5FA7F cmp r3, #500 - 2931 0026 FBD3 bcc .L211 -2956:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver - 2932 .loc 1 2956 2 view .LVU884 - 2933 0028 0122 movs r2, #1 - ARM GAS /tmp/ccwR4KB7.s page 185 + 2875 0014 2846 mov r0, r5 + 2876 0016 FFF7FEFF bl HAL_GPIO_WritePin + 2877 .LVL329: +2660:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET); + 2878 .loc 1 2660 2 view .LVU886 + 2879 001a 0122 movs r2, #1 + 2880 001c 4FF48041 mov r1, #16384 + 2881 0020 2846 mov r0, r5 + 2882 0022 FFF7FEFF bl HAL_GPIO_WritePin + 2883 .LVL330: +2661:Src/main.c **** + 2884 .loc 1 2661 2 view .LVU887 + 2885 0026 05F50065 add r5, r5, #2048 + 2886 002a 0122 movs r2, #1 + 2887 002c 4FF48051 mov r1, #4096 + 2888 0030 2846 mov r0, r5 + 2889 0032 FFF7FEFF bl HAL_GPIO_WritePin + 2890 .LVL331: +2663:Src/main.c **** + 2891 .loc 1 2663 2 view .LVU888 + 2892 0036 0022 movs r2, #0 + 2893 0038 4FF40051 mov r1, #8192 + 2894 003c 2846 mov r0, r5 + 2895 003e FFF7FEFF bl HAL_GPIO_WritePin + 2896 .LVL332: +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + 2897 .loc 1 2665 2 view .LVU889 +2655:Src/main.c **** + 2898 .loc 1 2655 11 is_stmt 0 view .LVU890 + 2899 0042 0023 movs r3, #0 + 2900 .LVL333: + 2901 .L204: +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + 2902 .loc 1 2665 63 is_stmt 1 discriminator 2 view .LVU891 +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + 2903 .loc 1 2665 41 discriminator 2 view .LVU892 + 2904 .LBB421: + 2905 .LBI421: + 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 2906 .loc 4 916 26 view .LVU893 + 2907 .LBB422: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 2908 .loc 4 918 3 view .LVU894 + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 2909 .loc 4 918 12 is_stmt 0 view .LVU895 + 2910 0044 114A ldr r2, .L210+4 + 2911 0046 9268 ldr r2, [r2, #8] + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 2912 .loc 4 918 66 view .LVU896 + 2913 0048 12F0020F tst r2, #2 + 2914 004c 05D1 bne .L203 + 2915 .LVL334: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 2916 .loc 4 918 66 view .LVU897 + 2917 .LBE422: + 2918 .LBE421: +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + ARM GAS /tmp/ccEQxcUB.s page 190 - 2934 002a 4FF48041 mov r1, #16384 - 2935 002e 7848 ldr r0, .L250 - 2936 0030 FFF7FEFF bl HAL_GPIO_WritePin - 2937 .LVL347: -2957:Src/main.c **** tmp32=0; - 2938 .loc 1 2957 2 view .LVU885 - 2939 0034 0122 movs r2, #1 - 2940 0036 4FF40071 mov r1, #512 - 2941 003a 7648 ldr r0, .L250+4 - 2942 003c FFF7FEFF bl HAL_GPIO_WritePin - 2943 .LVL348: -2958:Src/main.c **** while(tmp32<500){tmp32++;} - 2944 .loc 1 2958 2 view .LVU886 -2959:Src/main.c **** if (num==1)//MPD1 - 2945 .loc 1 2959 2 view .LVU887 -2958:Src/main.c **** while(tmp32<500){tmp32++;} - 2946 .loc 1 2958 7 is_stmt 0 view .LVU888 - 2947 0040 0023 movs r3, #0 -2959:Src/main.c **** if (num==1)//MPD1 - 2948 .loc 1 2959 7 view .LVU889 - 2949 0042 00E0 b .L212 - 2950 .LVL349: - 2951 .L213: -2959:Src/main.c **** if (num==1)//MPD1 - 2952 .loc 1 2959 19 is_stmt 1 discriminator 2 view .LVU890 -2959:Src/main.c **** if (num==1)//MPD1 - 2953 .loc 1 2959 24 is_stmt 0 discriminator 2 view .LVU891 - 2954 0044 0133 adds r3, r3, #1 - 2955 .LVL350: - 2956 .L212: -2959:Src/main.c **** if (num==1)//MPD1 - 2957 .loc 1 2959 13 is_stmt 1 discriminator 1 view .LVU892 - 2958 0046 B3F5FA7F cmp r3, #500 - 2959 004a FBD3 bcc .L213 -2960:Src/main.c **** { - 2960 .loc 1 2960 2 view .LVU893 - 2961 004c 631E subs r3, r4, #1 - 2962 .LVL351: -2960:Src/main.c **** { - 2963 .loc 1 2960 2 is_stmt 0 view .LVU894 - 2964 004e 032B cmp r3, #3 - 2965 0050 39D8 bhi .L214 - 2966 0052 DFE803F0 tbb [pc, r3] - 2967 .L216: - 2968 0056 02 .byte (.L219-.L216)/2 - 2969 0057 3A .byte (.L218-.L216)/2 - 2970 0058 6F .byte (.L217-.L216)/2 - 2971 0059 A6 .byte (.L215-.L216)/2 - 2972 .p2align 1 - 2973 .L219: -2962:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); - 2974 .loc 1 2962 3 is_stmt 1 view .LVU895 - 2975 005a 6D4C ldr r4, .L250 - 2976 .LVL352: -2962:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); - 2977 .loc 1 2962 3 is_stmt 0 view .LVU896 - 2978 005c 0122 movs r2, #1 - ARM GAS /tmp/ccwR4KB7.s page 186 - - - 2979 005e 4FF40061 mov r1, #2048 - 2980 0062 2046 mov r0, r4 - 2981 0064 FFF7FEFF bl HAL_GPIO_WritePin - 2982 .LVL353: -2963:Src/main.c **** tmp32=0; - 2983 .loc 1 2963 3 is_stmt 1 view .LVU897 - 2984 0068 0022 movs r2, #0 - 2985 006a 4FF48061 mov r1, #1024 - 2986 006e 2046 mov r0, r4 - 2987 0070 FFF7FEFF bl HAL_GPIO_WritePin - 2988 .LVL354: -2964:Src/main.c **** while(tmp32<500){tmp32++;} - 2989 .loc 1 2964 3 view .LVU898 -2965:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 2990 .loc 1 2965 3 view .LVU899 -2964:Src/main.c **** while(tmp32<500){tmp32++;} - 2991 .loc 1 2964 8 is_stmt 0 view .LVU900 - 2992 0074 0023 movs r3, #0 -2965:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 2993 .loc 1 2965 8 view .LVU901 - 2994 0076 00E0 b .L220 - 2995 .LVL355: - 2996 .L221: -2965:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 2997 .loc 1 2965 20 is_stmt 1 discriminator 2 view .LVU902 -2965:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 2998 .loc 1 2965 25 is_stmt 0 discriminator 2 view .LVU903 - 2999 0078 0133 adds r3, r3, #1 - 3000 .LVL356: - 3001 .L220: -2965:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3002 .loc 1 2965 14 is_stmt 1 discriminator 1 view .LVU904 - 3003 007a B3F5FA7F cmp r3, #500 - 3004 007e FBD3 bcc .L221 -2967:Src/main.c **** tmp32 = 0; - 3005 .loc 1 2967 3 view .LVU905 - 3006 .LVL357: - 3007 .LBB391: - 3008 .LBI391: - 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3009 .loc 4 358 22 view .LVU906 - 3010 .LBB392: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3011 .loc 4 360 3 view .LVU907 - 3012 0080 654A ldr r2, .L250+8 - 3013 0082 1368 ldr r3, [r2] - 3014 .LVL358: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3015 .loc 4 360 3 is_stmt 0 view .LVU908 - 3016 0084 43F04003 orr r3, r3, #64 - 3017 0088 1360 str r3, [r2] - 3018 .LVL359: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3019 .loc 4 360 3 view .LVU909 - 3020 .LBE392: - 3021 .LBE391: -2968:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - ARM GAS /tmp/ccwR4KB7.s page 187 - - - 3022 .loc 1 2968 3 is_stmt 1 view .LVU910 -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3023 .loc 1 2969 3 view .LVU911 -2968:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3024 .loc 1 2968 9 is_stmt 0 view .LVU912 - 3025 008a 0023 movs r3, #0 - 3026 .LVL360: - 3027 .L222: -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3028 .loc 1 2969 43 is_stmt 1 discriminator 1 view .LVU913 - 3029 .LBB393: - 3030 .LBI393: + 2919 .loc 1 2665 50 discriminator 1 view .LVU898 + 2920 004e 5A1C adds r2, r3, #1 + 2921 .LVL335: +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + 2922 .loc 1 2665 41 discriminator 1 view .LVU899 + 2923 0050 B3F57A7F cmp r3, #1000 + 2924 0054 01D2 bcs .L203 +2665:Src/main.c **** LL_SPI_TransmitData16(SPI2, word); + 2925 .loc 1 2665 50 discriminator 1 view .LVU900 + 2926 0056 1346 mov r3, r2 + 2927 0058 F4E7 b .L204 + 2928 .LVL336: + 2929 .L203: +2666:Src/main.c **** tmp32 = 0; + 2930 .loc 1 2666 2 is_stmt 1 view .LVU901 + 2931 .LBB423: + 2932 .LBI423: +1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 2933 .loc 4 1373 22 view .LVU902 + 2934 .LBB424: +1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; + 2935 .loc 4 1376 3 view .LVU903 + 2936 .loc 4 1377 3 view .LVU904 + 2937 .loc 4 1377 10 is_stmt 0 view .LVU905 + 2938 005a 0C4B ldr r3, .L210+4 + 2939 005c 9C81 strh r4, [r3, #12] @ movhi + 2940 .LVL337: + 2941 .loc 4 1377 10 view .LVU906 + 2942 .LBE424: + 2943 .LBE423: +2667:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 2944 .loc 1 2667 2 is_stmt 1 view .LVU907 +2668:Src/main.c **** (void) SPI2->DR; + 2945 .loc 1 2668 2 view .LVU908 +2667:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2)) && (tmp32++ < 1000)) {} + 2946 .loc 1 2667 8 is_stmt 0 view .LVU909 + 2947 005e 0023 movs r3, #0 + 2948 .LVL338: + 2949 .L206: +2668:Src/main.c **** (void) SPI2->DR; + 2950 .loc 1 2668 64 is_stmt 1 discriminator 2 view .LVU910 +2668:Src/main.c **** (void) SPI2->DR; + 2951 .loc 1 2668 42 discriminator 2 view .LVU911 + 2952 .LBB425: + 2953 .LBI425: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3031 .loc 4 905 26 view .LVU914 - 3032 .LBB394: + 2954 .loc 4 905 26 view .LVU912 + 2955 .LBB426: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3033 .loc 4 907 3 view .LVU915 + 2956 .loc 4 907 3 view .LVU913 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3034 .loc 4 907 12 is_stmt 0 view .LVU916 - 3035 008c 624A ldr r2, .L250+8 - 3036 008e 9268 ldr r2, [r2, #8] + 2957 .loc 4 907 12 is_stmt 0 view .LVU914 + 2958 0060 0A4A ldr r2, .L210+4 + 2959 0062 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3037 .loc 4 907 68 view .LVU917 - 3038 0090 12F0010F tst r2, #1 - 3039 0094 04D1 bne .L223 - 3040 .LVL361: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3041 .loc 4 907 68 view .LVU918 - 3042 .LBE394: - 3043 .LBE393: -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3044 .loc 1 2969 43 discriminator 2 view .LVU919 - 3045 0096 B3F57A7F cmp r3, #1000 - 3046 009a 01D8 bhi .L223 -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3047 .loc 1 2969 62 is_stmt 1 discriminator 3 view .LVU920 -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3048 .loc 1 2969 67 is_stmt 0 discriminator 3 view .LVU921 - 3049 009c 0133 adds r3, r3, #1 - 3050 .LVL362: -2969:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC - 3051 .loc 1 2969 67 discriminator 3 view .LVU922 - 3052 009e F5E7 b .L222 - 3053 .L223: -2970:Src/main.c **** while(tmp32<500){tmp32++;} - 3054 .loc 1 2970 3 is_stmt 1 view .LVU923 - 3055 .LVL363: - 3056 .LBB395: - 3057 .LBI395: - 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3058 .loc 4 370 22 view .LVU924 - 3059 .LBB396: - 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3060 .loc 4 372 3 view .LVU925 - 3061 00a0 5D49 ldr r1, .L250+8 - 3062 00a2 0A68 ldr r2, [r1] - 3063 00a4 22F04002 bic r2, r2, #64 - ARM GAS /tmp/ccwR4KB7.s page 188 + 2960 .loc 4 907 68 view .LVU915 + 2961 0064 12F0010F tst r2, #1 + ARM GAS /tmp/ccEQxcUB.s page 191 - 3064 00a8 0A60 str r2, [r1] - 3065 .LVL364: - 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3066 .loc 4 372 3 is_stmt 0 view .LVU926 - 3067 .LBE396: - 3068 .LBE395: -2971:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3069 .loc 1 2971 3 is_stmt 1 view .LVU927 - 3070 .LBB398: - 3071 .LBB397: - 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3072 .loc 4 373 1 is_stmt 0 view .LVU928 - 3073 00aa 00E0 b .L225 - 3074 .L226: - 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3075 .loc 4 373 1 view .LVU929 - 3076 .LBE397: - 3077 .LBE398: -2971:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3078 .loc 1 2971 20 is_stmt 1 discriminator 2 view .LVU930 -2971:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3079 .loc 1 2971 25 is_stmt 0 discriminator 2 view .LVU931 - 3080 00ac 0133 adds r3, r3, #1 - 3081 .LVL365: - 3082 .L225: -2971:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3083 .loc 1 2971 14 is_stmt 1 discriminator 1 view .LVU932 - 3084 00ae B3F5FA7F cmp r3, #500 - 3085 00b2 FBD3 bcc .L226 -2973:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); - 3086 .loc 1 2973 3 view .LVU933 - 3087 00b4 0122 movs r2, #1 - 3088 00b6 4FF48061 mov r1, #1024 - 3089 00ba 5548 ldr r0, .L250 - 3090 00bc FFF7FEFF bl HAL_GPIO_WritePin - 3091 .LVL366: -2974:Src/main.c **** } - 3092 .loc 1 2974 3 view .LVU934 - 3093 .LBB399: - 3094 .LBI399: -1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3095 .loc 4 1344 26 view .LVU935 - 3096 .LBB400: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3097 .loc 4 1346 3 view .LVU936 -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3098 .loc 4 1346 21 is_stmt 0 view .LVU937 - 3099 00c0 554B ldr r3, .L250+8 - 3100 00c2 DD68 ldr r5, [r3, #12] -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3101 .loc 4 1346 10 view .LVU938 - 3102 00c4 ADB2 uxth r5, r5 - 3103 .LVL367: - 3104 .L214: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3105 .loc 4 1346 10 view .LVU939 - 3106 .LBE400: - ARM GAS /tmp/ccwR4KB7.s page 189 + 2962 0068 05D1 bne .L205 + 2963 .LVL339: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 2964 .loc 4 907 68 view .LVU916 + 2965 .LBE426: + 2966 .LBE425: +2668:Src/main.c **** (void) SPI2->DR; + 2967 .loc 1 2668 51 discriminator 1 view .LVU917 + 2968 006a 5A1C adds r2, r3, #1 + 2969 .LVL340: +2668:Src/main.c **** (void) SPI2->DR; + 2970 .loc 1 2668 42 discriminator 1 view .LVU918 + 2971 006c B3F57A7F cmp r3, #1000 + 2972 0070 01D2 bcs .L205 +2668:Src/main.c **** (void) SPI2->DR; + 2973 .loc 1 2668 51 discriminator 1 view .LVU919 + 2974 0072 1346 mov r3, r2 + 2975 0074 F4E7 b .L206 + 2976 .LVL341: + 2977 .L205: +2669:Src/main.c **** + 2978 .loc 1 2669 2 is_stmt 1 view .LVU920 + 2979 0076 054B ldr r3, .L210+4 + 2980 0078 DB68 ldr r3, [r3, #12] +2671:Src/main.c **** } + 2981 .loc 1 2671 2 view .LVU921 + 2982 007a 0122 movs r2, #1 + 2983 007c 4FF40051 mov r1, #8192 + 2984 0080 0348 ldr r0, .L210+8 + 2985 0082 FFF7FEFF bl HAL_GPIO_WritePin + 2986 .LVL342: +2672:Src/main.c **** + 2987 .loc 1 2672 1 is_stmt 0 view .LVU922 + 2988 0086 38BD pop {r3, r4, r5, pc} + 2989 .LVL343: + 2990 .L211: +2672:Src/main.c **** + 2991 .loc 1 2672 1 view .LVU923 + 2992 .align 2 + 2993 .L210: + 2994 0088 00040240 .word 1073873920 + 2995 008c 00380040 .word 1073756160 + 2996 0090 000C0240 .word 1073875968 + 2997 .cfi_endproc + 2998 .LFE1214: + 3000 .section .text.AD9833_Apply,"ax",%progbits + 3001 .align 1 + 3002 .syntax unified + 3003 .thumb + 3004 .thumb_func + 3006 AD9833_Apply: + 3007 .LVL344: + 3008 .LFB1215: +2675:Src/main.c **** uint16_t control = 0x2000u; // B28 = 1 + 3009 .loc 1 2675 1 is_stmt 1 view -0 + 3010 .cfi_startproc + 3011 @ args = 0, pretend = 0, frame = 0 + ARM GAS /tmp/ccEQxcUB.s page 192 - 3107 .LBE399: -3046:Src/main.c **** } - 3108 .loc 1 3046 2 is_stmt 1 view .LVU940 -3047:Src/main.c **** /*static uint16_t Temp_LD(uint16_t T_LD_before, uint16_t T_LD, uint32_t Timer_before, uint32_t Time - 3109 .loc 1 3047 1 is_stmt 0 view .LVU941 - 3110 00c6 2846 mov r0, r5 - 3111 00c8 38BD pop {r3, r4, r5, pc} - 3112 .LVL368: - 3113 .L218: -2978:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_RESET); - 3114 .loc 1 2978 3 is_stmt 1 view .LVU942 - 3115 00ca 524C ldr r4, .L250+4 - 3116 00cc 0122 movs r2, #1 - 3117 00ce 4FF48061 mov r1, #1024 - 3118 00d2 2046 mov r0, r4 - 3119 00d4 FFF7FEFF bl HAL_GPIO_WritePin - 3120 .LVL369: -2979:Src/main.c **** tmp32=0; - 3121 .loc 1 2979 3 view .LVU943 - 3122 00d8 0022 movs r2, #0 - 3123 00da 4021 movs r1, #64 - 3124 00dc 2046 mov r0, r4 - 3125 00de FFF7FEFF bl HAL_GPIO_WritePin - 3126 .LVL370: -2980:Src/main.c **** while(tmp32<500){tmp32++;} - 3127 .loc 1 2980 3 view .LVU944 -2981:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3128 .loc 1 2981 3 view .LVU945 -2980:Src/main.c **** while(tmp32<500){tmp32++;} - 3129 .loc 1 2980 8 is_stmt 0 view .LVU946 - 3130 00e2 0023 movs r3, #0 -2981:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3131 .loc 1 2981 8 view .LVU947 - 3132 00e4 00E0 b .L227 - 3133 .LVL371: - 3134 .L228: -2981:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3135 .loc 1 2981 20 is_stmt 1 discriminator 2 view .LVU948 -2981:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3136 .loc 1 2981 25 is_stmt 0 discriminator 2 view .LVU949 - 3137 00e6 0133 adds r3, r3, #1 - 3138 .LVL372: - 3139 .L227: -2981:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3140 .loc 1 2981 14 is_stmt 1 discriminator 1 view .LVU950 - 3141 00e8 B3F5FA7F cmp r3, #500 - 3142 00ec FBD3 bcc .L228 -2983:Src/main.c **** tmp32 = 0; - 3143 .loc 1 2983 3 view .LVU951 - 3144 .LVL373: - 3145 .LBB401: - 3146 .LBI401: + 3012 @ frame_needed = 0, uses_anonymous_args = 0 +2675:Src/main.c **** uint16_t control = 0x2000u; // B28 = 1 + 3013 .loc 1 2675 1 is_stmt 0 view .LVU925 + 3014 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 3015 .LCFI33: + 3016 .cfi_def_cfa_offset 24 + 3017 .cfi_offset 4, -24 + 3018 .cfi_offset 5, -20 + 3019 .cfi_offset 6, -16 + 3020 .cfi_offset 7, -12 + 3021 .cfi_offset 8, -8 + 3022 .cfi_offset 14, -4 + 3023 0004 0546 mov r5, r0 +2676:Src/main.c **** if (triangle) + 3024 .loc 1 2676 2 is_stmt 1 view .LVU926 + 3025 .LVL345: +2677:Src/main.c **** { + 3026 .loc 1 2677 2 view .LVU927 +2677:Src/main.c **** { + 3027 .loc 1 2677 5 is_stmt 0 view .LVU928 + 3028 0006 F9B9 cbnz r1, .L215 +2676:Src/main.c **** if (triangle) + 3029 .loc 1 2676 11 view .LVU929 + 3030 0008 4FF40057 mov r7, #8192 + 3031 .L213: + 3032 .LVL346: +2681:Src/main.c **** + 3033 .loc 1 2681 2 is_stmt 1 view .LVU930 +2681:Src/main.c **** + 3034 .loc 1 2681 10 is_stmt 0 view .LVU931 + 3035 000c 47F48078 orr r8, r7, #256 + 3036 .LVL347: +2683:Src/main.c **** uint16_t lsw = (uint16_t)(0x4000u | (freq_word & 0x3FFFu)); // FREQ0 LSB + 3037 .loc 1 2683 2 is_stmt 1 view .LVU932 +2684:Src/main.c **** uint16_t msw = (uint16_t)(0x4000u | ((freq_word >> 14) & 0x3FFFu)); // FREQ0 MSB + 3038 .loc 1 2684 2 view .LVU933 +2684:Src/main.c **** uint16_t msw = (uint16_t)(0x4000u | ((freq_word >> 14) & 0x3FFFu)); // FREQ0 MSB + 3039 .loc 1 2684 49 is_stmt 0 view .LVU934 + 3040 0010 C2F30D06 ubfx r6, r2, #0, #14 +2684:Src/main.c **** uint16_t msw = (uint16_t)(0x4000u | ((freq_word >> 14) & 0x3FFFu)); // FREQ0 MSB + 3041 .loc 1 2684 11 view .LVU935 + 3042 0014 46F48046 orr r6, r6, #16384 + 3043 .LVL348: +2685:Src/main.c **** + 3044 .loc 1 2685 2 is_stmt 1 view .LVU936 +2685:Src/main.c **** + 3045 .loc 1 2685 57 is_stmt 0 view .LVU937 + 3046 0018 C2F38D32 ubfx r2, r2, #14, #14 + 3047 .LVL349: +2685:Src/main.c **** + 3048 .loc 1 2685 11 view .LVU938 + 3049 001c 42F48044 orr r4, r2, #16384 + 3050 .LVL350: +2687:Src/main.c **** AD9833_WriteWord(lsw); + 3051 .loc 1 2687 2 is_stmt 1 view .LVU939 + 3052 0020 4046 mov r0, r8 + 3053 .LVL351: + ARM GAS /tmp/ccEQxcUB.s page 193 + + +2687:Src/main.c **** AD9833_WriteWord(lsw); + 3054 .loc 1 2687 2 is_stmt 0 view .LVU940 + 3055 0022 FFF7FEFF bl AD9833_WriteWord + 3056 .LVL352: +2688:Src/main.c **** AD9833_WriteWord(msw); + 3057 .loc 1 2688 2 is_stmt 1 view .LVU941 + 3058 0026 3046 mov r0, r6 + 3059 0028 FFF7FEFF bl AD9833_WriteWord + 3060 .LVL353: +2689:Src/main.c **** AD9833_WriteWord(0xC000u); // PHASE0 = 0 + 3061 .loc 1 2689 2 view .LVU942 + 3062 002c 2046 mov r0, r4 + 3063 002e FFF7FEFF bl AD9833_WriteWord + 3064 .LVL354: +2690:Src/main.c **** + 3065 .loc 1 2690 2 view .LVU943 + 3066 0032 4FF44040 mov r0, #49152 + 3067 0036 FFF7FEFF bl AD9833_WriteWord + 3068 .LVL355: +2692:Src/main.c **** { + 3069 .loc 1 2692 2 view .LVU944 +2692:Src/main.c **** { + 3070 .loc 1 2692 5 is_stmt 0 view .LVU945 + 3071 003a 05B9 cbnz r5, .L214 +2681:Src/main.c **** + 3072 .loc 1 2681 10 view .LVU946 + 3073 003c 4746 mov r7, r8 + 3074 .L214: + 3075 .LVL356: +2696:Src/main.c **** } + 3076 .loc 1 2696 2 is_stmt 1 view .LVU947 + 3077 003e 3846 mov r0, r7 + 3078 0040 FFF7FEFF bl AD9833_WriteWord + 3079 .LVL357: +2697:Src/main.c **** + 3080 .loc 1 2697 1 is_stmt 0 view .LVU948 + 3081 0044 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 3082 .LVL358: + 3083 .L215: +2679:Src/main.c **** } + 3084 .loc 1 2679 11 view .LVU949 + 3085 0048 42F20207 movw r7, #8194 + 3086 004c DEE7 b .L213 + 3087 .cfi_endproc + 3088 .LFE1215: + 3090 .section .text.OUT_trigger,"ax",%progbits + 3091 .align 1 + 3092 .syntax unified + 3093 .thumb + 3094 .thumb_func + 3096 OUT_trigger: + 3097 .LVL359: + 3098 .LFB1211: +2571:Src/main.c **** switch (out_n) + 3099 .loc 1 2571 1 is_stmt 1 view -0 + 3100 .cfi_startproc + 3101 @ args = 0, pretend = 0, frame = 0 + ARM GAS /tmp/ccEQxcUB.s page 194 + + + 3102 @ frame_needed = 0, uses_anonymous_args = 0 +2571:Src/main.c **** switch (out_n) + 3103 .loc 1 2571 1 is_stmt 0 view .LVU951 + 3104 0000 10B5 push {r4, lr} + 3105 .LCFI34: + 3106 .cfi_def_cfa_offset 8 + 3107 .cfi_offset 4, -8 + 3108 .cfi_offset 14, -4 +2572:Src/main.c **** { + 3109 .loc 1 2572 2 is_stmt 1 view .LVU952 + 3110 0002 0928 cmp r0, #9 + 3111 0004 13D8 bhi .L217 + 3112 0006 DFE800F0 tbb [pc, r0] + 3113 .L220: + 3114 000a 05 .byte (.L229-.L220)/2 + 3115 000b 13 .byte (.L228-.L220)/2 + 3116 000c 21 .byte (.L227-.L220)/2 + 3117 000d 2F .byte (.L226-.L220)/2 + 3118 000e 3D .byte (.L225-.L220)/2 + 3119 000f 4B .byte (.L224-.L220)/2 + 3120 0010 59 .byte (.L223-.L220)/2 + 3121 0011 65 .byte (.L222-.L220)/2 + 3122 0012 71 .byte (.L221-.L220)/2 + 3123 0013 7D .byte (.L219-.L220)/2 + 3124 .p2align 1 + 3125 .L229: +2575:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); + 3126 .loc 1 2575 3 view .LVU953 + 3127 0014 414C ldr r4, .L232 + 3128 0016 0122 movs r2, #1 + 3129 0018 4FF48061 mov r1, #1024 + 3130 001c 2046 mov r0, r4 + 3131 .LVL360: +2575:Src/main.c **** HAL_GPIO_WritePin(OUT_0_GPIO_Port, OUT_0_Pin, GPIO_PIN_RESET); + 3132 .loc 1 2575 3 is_stmt 0 view .LVU954 + 3133 001e FFF7FEFF bl HAL_GPIO_WritePin + 3134 .LVL361: +2576:Src/main.c **** break; + 3135 .loc 1 2576 3 is_stmt 1 view .LVU955 + 3136 0022 0022 movs r2, #0 + 3137 0024 4FF48061 mov r1, #1024 + 3138 0028 2046 mov r0, r4 + 3139 002a FFF7FEFF bl HAL_GPIO_WritePin + 3140 .LVL362: +2577:Src/main.c **** + 3141 .loc 1 2577 2 view .LVU956 + 3142 .L217: +2624:Src/main.c **** + 3143 .loc 1 2624 1 is_stmt 0 view .LVU957 + 3144 002e 10BD pop {r4, pc} + 3145 .LVL363: + 3146 .L228: +2580:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); + 3147 .loc 1 2580 3 is_stmt 1 view .LVU958 + 3148 0030 3A4C ldr r4, .L232 + 3149 0032 0122 movs r2, #1 + 3150 0034 4FF40061 mov r1, #2048 + ARM GAS /tmp/ccEQxcUB.s page 195 + + + 3151 0038 2046 mov r0, r4 + 3152 .LVL364: +2580:Src/main.c **** HAL_GPIO_WritePin(OUT_1_GPIO_Port, OUT_1_Pin, GPIO_PIN_RESET); + 3153 .loc 1 2580 3 is_stmt 0 view .LVU959 + 3154 003a FFF7FEFF bl HAL_GPIO_WritePin + 3155 .LVL365: +2581:Src/main.c **** break; + 3156 .loc 1 2581 3 is_stmt 1 view .LVU960 + 3157 003e 0022 movs r2, #0 + 3158 0040 4FF40061 mov r1, #2048 + 3159 0044 2046 mov r0, r4 + 3160 0046 FFF7FEFF bl HAL_GPIO_WritePin + 3161 .LVL366: +2582:Src/main.c **** + 3162 .loc 1 2582 2 view .LVU961 + 3163 004a F0E7 b .L217 + 3164 .LVL367: + 3165 .L227: +2585:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); + 3166 .loc 1 2585 3 view .LVU962 + 3167 004c 334C ldr r4, .L232 + 3168 004e 0122 movs r2, #1 + 3169 0050 4FF48051 mov r1, #4096 + 3170 0054 2046 mov r0, r4 + 3171 .LVL368: +2585:Src/main.c **** HAL_GPIO_WritePin(OUT_2_GPIO_Port, OUT_2_Pin, GPIO_PIN_RESET); + 3172 .loc 1 2585 3 is_stmt 0 view .LVU963 + 3173 0056 FFF7FEFF bl HAL_GPIO_WritePin + 3174 .LVL369: +2586:Src/main.c **** break; + 3175 .loc 1 2586 3 is_stmt 1 view .LVU964 + 3176 005a 0022 movs r2, #0 + 3177 005c 4FF48051 mov r1, #4096 + 3178 0060 2046 mov r0, r4 + 3179 0062 FFF7FEFF bl HAL_GPIO_WritePin + 3180 .LVL370: +2587:Src/main.c **** + 3181 .loc 1 2587 2 view .LVU965 + 3182 0066 E2E7 b .L217 + 3183 .LVL371: + 3184 .L226: +2590:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); + 3185 .loc 1 2590 3 view .LVU966 + 3186 0068 2C4C ldr r4, .L232 + 3187 006a 0122 movs r2, #1 + 3188 006c 4FF40051 mov r1, #8192 + 3189 0070 2046 mov r0, r4 + 3190 .LVL372: +2590:Src/main.c **** HAL_GPIO_WritePin(OUT_3_GPIO_Port, OUT_3_Pin, GPIO_PIN_RESET); + 3191 .loc 1 2590 3 is_stmt 0 view .LVU967 + 3192 0072 FFF7FEFF bl HAL_GPIO_WritePin + 3193 .LVL373: +2591:Src/main.c **** break; + 3194 .loc 1 2591 3 is_stmt 1 view .LVU968 + 3195 0076 0022 movs r2, #0 + 3196 0078 4FF40051 mov r1, #8192 + 3197 007c 2046 mov r0, r4 + ARM GAS /tmp/ccEQxcUB.s page 196 + + + 3198 007e FFF7FEFF bl HAL_GPIO_WritePin + 3199 .LVL374: +2592:Src/main.c **** + 3200 .loc 1 2592 2 view .LVU969 + 3201 0082 D4E7 b .L217 + 3202 .LVL375: + 3203 .L225: +2595:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); + 3204 .loc 1 2595 3 view .LVU970 + 3205 0084 254C ldr r4, .L232 + 3206 0086 0122 movs r2, #1 + 3207 0088 4FF48041 mov r1, #16384 + 3208 008c 2046 mov r0, r4 + 3209 .LVL376: +2595:Src/main.c **** HAL_GPIO_WritePin(OUT_4_GPIO_Port, OUT_4_Pin, GPIO_PIN_RESET); + 3210 .loc 1 2595 3 is_stmt 0 view .LVU971 + 3211 008e FFF7FEFF bl HAL_GPIO_WritePin + 3212 .LVL377: +2596:Src/main.c **** break; + 3213 .loc 1 2596 3 is_stmt 1 view .LVU972 + 3214 0092 0022 movs r2, #0 + 3215 0094 4FF48041 mov r1, #16384 + 3216 0098 2046 mov r0, r4 + 3217 009a FFF7FEFF bl HAL_GPIO_WritePin + 3218 .LVL378: +2597:Src/main.c **** + 3219 .loc 1 2597 2 view .LVU973 + 3220 009e C6E7 b .L217 + 3221 .LVL379: + 3222 .L224: +2600:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); + 3223 .loc 1 2600 3 view .LVU974 + 3224 00a0 1E4C ldr r4, .L232 + 3225 00a2 0122 movs r2, #1 + 3226 00a4 4FF40041 mov r1, #32768 + 3227 00a8 2046 mov r0, r4 + 3228 .LVL380: +2600:Src/main.c **** HAL_GPIO_WritePin(OUT_5_GPIO_Port, OUT_5_Pin, GPIO_PIN_RESET); + 3229 .loc 1 2600 3 is_stmt 0 view .LVU975 + 3230 00aa FFF7FEFF bl HAL_GPIO_WritePin + 3231 .LVL381: +2601:Src/main.c **** break; + 3232 .loc 1 2601 3 is_stmt 1 view .LVU976 + 3233 00ae 0022 movs r2, #0 + 3234 00b0 4FF40041 mov r1, #32768 + 3235 00b4 2046 mov r0, r4 + 3236 00b6 FFF7FEFF bl HAL_GPIO_WritePin + 3237 .LVL382: +2602:Src/main.c **** + 3238 .loc 1 2602 2 view .LVU977 + 3239 00ba B8E7 b .L217 + 3240 .LVL383: + 3241 .L223: +2605:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); + 3242 .loc 1 2605 3 view .LVU978 + 3243 00bc 184C ldr r4, .L232+4 + 3244 00be 0122 movs r2, #1 + ARM GAS /tmp/ccEQxcUB.s page 197 + + + 3245 00c0 1021 movs r1, #16 + 3246 00c2 2046 mov r0, r4 + 3247 .LVL384: +2605:Src/main.c **** HAL_GPIO_WritePin(OUT_6_GPIO_Port, OUT_6_Pin, GPIO_PIN_RESET); + 3248 .loc 1 2605 3 is_stmt 0 view .LVU979 + 3249 00c4 FFF7FEFF bl HAL_GPIO_WritePin + 3250 .LVL385: +2606:Src/main.c **** break; + 3251 .loc 1 2606 3 is_stmt 1 view .LVU980 + 3252 00c8 0022 movs r2, #0 + 3253 00ca 1021 movs r1, #16 + 3254 00cc 2046 mov r0, r4 + 3255 00ce FFF7FEFF bl HAL_GPIO_WritePin + 3256 .LVL386: +2607:Src/main.c **** + 3257 .loc 1 2607 2 view .LVU981 + 3258 00d2 ACE7 b .L217 + 3259 .LVL387: + 3260 .L222: +2610:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); + 3261 .loc 1 2610 3 view .LVU982 + 3262 00d4 124C ldr r4, .L232+4 + 3263 00d6 0122 movs r2, #1 + 3264 00d8 2021 movs r1, #32 + 3265 00da 2046 mov r0, r4 + 3266 .LVL388: +2610:Src/main.c **** HAL_GPIO_WritePin(OUT_7_GPIO_Port, OUT_7_Pin, GPIO_PIN_RESET); + 3267 .loc 1 2610 3 is_stmt 0 view .LVU983 + 3268 00dc FFF7FEFF bl HAL_GPIO_WritePin + 3269 .LVL389: +2611:Src/main.c **** break; + 3270 .loc 1 2611 3 is_stmt 1 view .LVU984 + 3271 00e0 0022 movs r2, #0 + 3272 00e2 2021 movs r1, #32 + 3273 00e4 2046 mov r0, r4 + 3274 00e6 FFF7FEFF bl HAL_GPIO_WritePin + 3275 .LVL390: +2612:Src/main.c **** + 3276 .loc 1 2612 2 view .LVU985 + 3277 00ea A0E7 b .L217 + 3278 .LVL391: + 3279 .L221: +2615:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); + 3280 .loc 1 2615 3 view .LVU986 + 3281 00ec 0C4C ldr r4, .L232+4 + 3282 00ee 0122 movs r2, #1 + 3283 00f0 4021 movs r1, #64 + 3284 00f2 2046 mov r0, r4 + 3285 .LVL392: +2615:Src/main.c **** HAL_GPIO_WritePin(OUT_8_GPIO_Port, OUT_8_Pin, GPIO_PIN_RESET); + 3286 .loc 1 2615 3 is_stmt 0 view .LVU987 + 3287 00f4 FFF7FEFF bl HAL_GPIO_WritePin + 3288 .LVL393: +2616:Src/main.c **** break; + 3289 .loc 1 2616 3 is_stmt 1 view .LVU988 + 3290 00f8 0022 movs r2, #0 + 3291 00fa 4021 movs r1, #64 + ARM GAS /tmp/ccEQxcUB.s page 198 + + + 3292 00fc 2046 mov r0, r4 + 3293 00fe FFF7FEFF bl HAL_GPIO_WritePin + 3294 .LVL394: +2617:Src/main.c **** + 3295 .loc 1 2617 2 view .LVU989 + 3296 0102 94E7 b .L217 + 3297 .LVL395: + 3298 .L219: +2620:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); + 3299 .loc 1 2620 3 view .LVU990 + 3300 0104 064C ldr r4, .L232+4 + 3301 0106 0122 movs r2, #1 + 3302 0108 8021 movs r1, #128 + 3303 010a 2046 mov r0, r4 + 3304 .LVL396: +2620:Src/main.c **** HAL_GPIO_WritePin(OUT_9_GPIO_Port, OUT_9_Pin, GPIO_PIN_RESET); + 3305 .loc 1 2620 3 is_stmt 0 view .LVU991 + 3306 010c FFF7FEFF bl HAL_GPIO_WritePin + 3307 .LVL397: +2621:Src/main.c **** break; + 3308 .loc 1 2621 3 is_stmt 1 view .LVU992 + 3309 0110 0022 movs r2, #0 + 3310 0112 8021 movs r1, #128 + 3311 0114 2046 mov r0, r4 + 3312 0116 FFF7FEFF bl HAL_GPIO_WritePin + 3313 .LVL398: +2622:Src/main.c **** } + 3314 .loc 1 2622 2 view .LVU993 +2624:Src/main.c **** + 3315 .loc 1 2624 1 is_stmt 0 view .LVU994 + 3316 011a 88E7 b .L217 + 3317 .L233: + 3318 .align 2 + 3319 .L232: + 3320 011c 00180240 .word 1073879040 + 3321 0120 00040240 .word 1073873920 + 3322 .cfi_endproc + 3323 .LFE1211: + 3325 .section .text.MPhD_T,"ax",%progbits + 3326 .align 1 + 3327 .syntax unified + 3328 .thumb + 3329 .thumb_func + 3331 MPhD_T: + 3332 .LVL399: + 3333 .LFB1226: +3247:Src/main.c **** uint16_t P; + 3334 .loc 1 3247 1 is_stmt 1 view -0 + 3335 .cfi_startproc + 3336 @ args = 0, pretend = 0, frame = 0 + 3337 @ frame_needed = 0, uses_anonymous_args = 0 +3247:Src/main.c **** uint16_t P; + 3338 .loc 1 3247 1 is_stmt 0 view .LVU996 + 3339 0000 38B5 push {r3, r4, r5, lr} + 3340 .LCFI35: + 3341 .cfi_def_cfa_offset 16 + 3342 .cfi_offset 3, -16 + ARM GAS /tmp/ccEQxcUB.s page 199 + + + 3343 .cfi_offset 4, -12 + 3344 .cfi_offset 5, -8 + 3345 .cfi_offset 14, -4 + 3346 0002 0446 mov r4, r0 +3248:Src/main.c **** uint32_t tmp32; + 3347 .loc 1 3248 2 is_stmt 1 view .LVU997 +3249:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion + 3348 .loc 1 3249 2 view .LVU998 +3250:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion + 3349 .loc 1 3250 2 view .LVU999 + 3350 0004 0022 movs r2, #0 + 3351 0006 4FF48041 mov r1, #16384 + 3352 000a 8148 ldr r0, .L275 + 3353 .LVL400: +3250:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_RESET);//Prepare conversion + 3354 .loc 1 3250 2 is_stmt 0 view .LVU1000 + 3355 000c FFF7FEFF bl HAL_GPIO_WritePin + 3356 .LVL401: +3251:Src/main.c **** tmp32=0; + 3357 .loc 1 3251 2 is_stmt 1 view .LVU1001 + 3358 0010 0022 movs r2, #0 + 3359 0012 4FF40071 mov r1, #512 + 3360 0016 7F48 ldr r0, .L275+4 + 3361 0018 FFF7FEFF bl HAL_GPIO_WritePin + 3362 .LVL402: +3252:Src/main.c **** while(tmp32<500){tmp32++;} + 3363 .loc 1 3252 2 view .LVU1002 +3253:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3364 .loc 1 3253 2 view .LVU1003 +3252:Src/main.c **** while(tmp32<500){tmp32++;} + 3365 .loc 1 3252 7 is_stmt 0 view .LVU1004 + 3366 001c 0023 movs r3, #0 +3253:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3367 .loc 1 3253 7 view .LVU1005 + 3368 001e 00E0 b .L235 + 3369 .LVL403: + 3370 .L236: +3253:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3371 .loc 1 3253 19 is_stmt 1 discriminator 2 view .LVU1006 +3253:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3372 .loc 1 3253 24 is_stmt 0 discriminator 2 view .LVU1007 + 3373 0020 0133 adds r3, r3, #1 + 3374 .LVL404: + 3375 .L235: +3253:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3376 .loc 1 3253 13 is_stmt 1 discriminator 1 view .LVU1008 + 3377 0022 B3F5FA7F cmp r3, #500 + 3378 0026 FBD3 bcc .L236 +3254:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI5_CNV_Pin, GPIO_PIN_SET);//Stop acqusition & start conver + 3379 .loc 1 3254 2 view .LVU1009 + 3380 0028 0122 movs r2, #1 + 3381 002a 4FF48041 mov r1, #16384 + 3382 002e 7848 ldr r0, .L275 + 3383 0030 FFF7FEFF bl HAL_GPIO_WritePin + 3384 .LVL405: +3255:Src/main.c **** tmp32=0; + 3385 .loc 1 3255 2 view .LVU1010 + ARM GAS /tmp/ccEQxcUB.s page 200 + + + 3386 0034 0122 movs r2, #1 + 3387 0036 4FF40071 mov r1, #512 + 3388 003a 7648 ldr r0, .L275+4 + 3389 003c FFF7FEFF bl HAL_GPIO_WritePin + 3390 .LVL406: +3256:Src/main.c **** while(tmp32<500){tmp32++;} + 3391 .loc 1 3256 2 view .LVU1011 +3257:Src/main.c **** if (num==1)//MPD1 + 3392 .loc 1 3257 2 view .LVU1012 +3256:Src/main.c **** while(tmp32<500){tmp32++;} + 3393 .loc 1 3256 7 is_stmt 0 view .LVU1013 + 3394 0040 0023 movs r3, #0 +3257:Src/main.c **** if (num==1)//MPD1 + 3395 .loc 1 3257 7 view .LVU1014 + 3396 0042 00E0 b .L237 + 3397 .LVL407: + 3398 .L238: +3257:Src/main.c **** if (num==1)//MPD1 + 3399 .loc 1 3257 19 is_stmt 1 discriminator 2 view .LVU1015 +3257:Src/main.c **** if (num==1)//MPD1 + 3400 .loc 1 3257 24 is_stmt 0 discriminator 2 view .LVU1016 + 3401 0044 0133 adds r3, r3, #1 + 3402 .LVL408: + 3403 .L237: +3257:Src/main.c **** if (num==1)//MPD1 + 3404 .loc 1 3257 13 is_stmt 1 discriminator 1 view .LVU1017 + 3405 0046 B3F5FA7F cmp r3, #500 + 3406 004a FBD3 bcc .L238 +3258:Src/main.c **** { + 3407 .loc 1 3258 2 view .LVU1018 + 3408 004c 631E subs r3, r4, #1 + 3409 .LVL409: +3258:Src/main.c **** { + 3410 .loc 1 3258 2 is_stmt 0 view .LVU1019 + 3411 004e 032B cmp r3, #3 + 3412 0050 39D8 bhi .L239 + 3413 0052 DFE803F0 tbb [pc, r3] + 3414 .L241: + 3415 0056 02 .byte (.L244-.L241)/2 + 3416 0057 3A .byte (.L243-.L241)/2 + 3417 0058 6F .byte (.L242-.L241)/2 + 3418 0059 A6 .byte (.L240-.L241)/2 + 3419 .p2align 1 + 3420 .L244: +3260:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); + 3421 .loc 1 3260 3 is_stmt 1 view .LVU1020 + 3422 005a 6D4C ldr r4, .L275 + 3423 .LVL410: +3260:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD1_CS_GPIO_Port, ADC_MPD1_CS_Pin, GPIO_PIN_RESET); + 3424 .loc 1 3260 3 is_stmt 0 view .LVU1021 + 3425 005c 0122 movs r2, #1 + 3426 005e 4FF40061 mov r1, #2048 + 3427 0062 2046 mov r0, r4 + 3428 0064 FFF7FEFF bl HAL_GPIO_WritePin + 3429 .LVL411: +3261:Src/main.c **** tmp32=0; + 3430 .loc 1 3261 3 is_stmt 1 view .LVU1022 + ARM GAS /tmp/ccEQxcUB.s page 201 + + + 3431 0068 0022 movs r2, #0 + 3432 006a 4FF48061 mov r1, #1024 + 3433 006e 2046 mov r0, r4 + 3434 0070 FFF7FEFF bl HAL_GPIO_WritePin + 3435 .LVL412: +3262:Src/main.c **** while(tmp32<500){tmp32++;} + 3436 .loc 1 3262 3 view .LVU1023 +3263:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3437 .loc 1 3263 3 view .LVU1024 +3262:Src/main.c **** while(tmp32<500){tmp32++;} + 3438 .loc 1 3262 8 is_stmt 0 view .LVU1025 + 3439 0074 0023 movs r3, #0 +3263:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3440 .loc 1 3263 8 view .LVU1026 + 3441 0076 00E0 b .L245 + 3442 .LVL413: + 3443 .L246: +3263:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3444 .loc 1 3263 20 is_stmt 1 discriminator 2 view .LVU1027 +3263:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3445 .loc 1 3263 25 is_stmt 0 discriminator 2 view .LVU1028 + 3446 0078 0133 adds r3, r3, #1 + 3447 .LVL414: + 3448 .L245: +3263:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3449 .loc 1 3263 14 is_stmt 1 discriminator 1 view .LVU1029 + 3450 007a B3F5FA7F cmp r3, #500 + 3451 007e FBD3 bcc .L246 +3265:Src/main.c **** tmp32 = 0; + 3452 .loc 1 3265 3 view .LVU1030 + 3453 .LVL415: + 3454 .LBB427: + 3455 .LBI427: 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3147 .loc 4 358 22 view .LVU952 - 3148 .LBB402: + 3456 .loc 4 358 22 view .LVU1031 + 3457 .LBB428: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3149 .loc 4 360 3 view .LVU953 - ARM GAS /tmp/ccwR4KB7.s page 190 + 3458 .loc 4 360 3 view .LVU1032 + 3459 0080 654A ldr r2, .L275+8 + 3460 0082 1368 ldr r3, [r2] + 3461 .LVL416: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3462 .loc 4 360 3 is_stmt 0 view .LVU1033 + 3463 0084 43F04003 orr r3, r3, #64 + 3464 0088 1360 str r3, [r2] + 3465 .LVL417: + 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3466 .loc 4 360 3 view .LVU1034 + 3467 .LBE428: + 3468 .LBE427: +3266:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3469 .loc 1 3266 3 is_stmt 1 view .LVU1035 +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3470 .loc 1 3267 3 view .LVU1036 +3266:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3471 .loc 1 3266 9 is_stmt 0 view .LVU1037 + 3472 008a 0023 movs r3, #0 + ARM GAS /tmp/ccEQxcUB.s page 202 - 3150 00ee 4B4A ldr r2, .L250+12 - 3151 00f0 1368 ldr r3, [r2] - 3152 .LVL374: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3153 .loc 4 360 3 is_stmt 0 view .LVU954 - 3154 00f2 43F04003 orr r3, r3, #64 - 3155 00f6 1360 str r3, [r2] - 3156 .LVL375: - 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3157 .loc 4 360 3 view .LVU955 - 3158 .LBE402: - 3159 .LBE401: -2984:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3160 .loc 1 2984 3 is_stmt 1 view .LVU956 -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3161 .loc 1 2985 3 view .LVU957 -2984:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3162 .loc 1 2984 9 is_stmt 0 view .LVU958 - 3163 00f8 0023 movs r3, #0 - 3164 .LVL376: - 3165 .L229: -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3166 .loc 1 2985 43 is_stmt 1 discriminator 1 view .LVU959 - 3167 .LBB403: - 3168 .LBI403: + 3473 .LVL418: + 3474 .L247: +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3475 .loc 1 3267 43 is_stmt 1 discriminator 1 view .LVU1038 + 3476 .LBB429: + 3477 .LBI429: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3169 .loc 4 905 26 view .LVU960 - 3170 .LBB404: + 3478 .loc 4 905 26 view .LVU1039 + 3479 .LBB430: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3171 .loc 4 907 3 view .LVU961 + 3480 .loc 4 907 3 view .LVU1040 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3172 .loc 4 907 12 is_stmt 0 view .LVU962 - 3173 00fa 484A ldr r2, .L250+12 - 3174 00fc 9268 ldr r2, [r2, #8] + 3481 .loc 4 907 12 is_stmt 0 view .LVU1041 + 3482 008c 624A ldr r2, .L275+8 + 3483 008e 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3175 .loc 4 907 68 view .LVU963 - 3176 00fe 12F0010F tst r2, #1 - 3177 0102 04D1 bne .L230 - 3178 .LVL377: + 3484 .loc 4 907 68 view .LVU1042 + 3485 0090 12F0010F tst r2, #1 + 3486 0094 04D1 bne .L248 + 3487 .LVL419: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3179 .loc 4 907 68 view .LVU964 - 3180 .LBE404: - 3181 .LBE403: -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3182 .loc 1 2985 43 discriminator 2 view .LVU965 - 3183 0104 B3F57A7F cmp r3, #1000 - 3184 0108 01D8 bhi .L230 -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3185 .loc 1 2985 62 is_stmt 1 discriminator 3 view .LVU966 -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3186 .loc 1 2985 67 is_stmt 0 discriminator 3 view .LVU967 - 3187 010a 0133 adds r3, r3, #1 - 3188 .LVL378: -2985:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC - 3189 .loc 1 2985 67 discriminator 3 view .LVU968 - 3190 010c F5E7 b .L229 - 3191 .L230: - ARM GAS /tmp/ccwR4KB7.s page 191 - - -2986:Src/main.c **** while(tmp32<500){tmp32++;} - 3192 .loc 1 2986 3 is_stmt 1 view .LVU969 - 3193 .LVL379: - 3194 .LBB405: - 3195 .LBI405: + 3488 .loc 4 907 68 view .LVU1043 + 3489 .LBE430: + 3490 .LBE429: +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3491 .loc 1 3267 43 discriminator 2 view .LVU1044 + 3492 0096 B3F57A7F cmp r3, #1000 + 3493 009a 01D8 bhi .L248 +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3494 .loc 1 3267 62 is_stmt 1 discriminator 3 view .LVU1045 +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3495 .loc 1 3267 67 is_stmt 0 discriminator 3 view .LVU1046 + 3496 009c 0133 adds r3, r3, #1 + 3497 .LVL420: +3267:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for MPhD1 ADC + 3498 .loc 1 3267 67 discriminator 3 view .LVU1047 + 3499 009e F5E7 b .L247 + 3500 .L248: +3268:Src/main.c **** while(tmp32<500){tmp32++;} + 3501 .loc 1 3268 3 is_stmt 1 view .LVU1048 + 3502 .LVL421: + 3503 .LBB431: + 3504 .LBI431: 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3196 .loc 4 370 22 view .LVU970 - 3197 .LBB406: + 3505 .loc 4 370 22 view .LVU1049 + 3506 .LBB432: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3198 .loc 4 372 3 view .LVU971 - 3199 010e 4349 ldr r1, .L250+12 - 3200 0110 0A68 ldr r2, [r1] - 3201 0112 22F04002 bic r2, r2, #64 - 3202 0116 0A60 str r2, [r1] - 3203 .LVL380: + 3507 .loc 4 372 3 view .LVU1050 + 3508 00a0 5D49 ldr r1, .L275+8 + 3509 00a2 0A68 ldr r2, [r1] + 3510 00a4 22F04002 bic r2, r2, #64 + 3511 00a8 0A60 str r2, [r1] + 3512 .LVL422: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3204 .loc 4 372 3 is_stmt 0 view .LVU972 - 3205 .LBE406: - 3206 .LBE405: -2987:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3207 .loc 1 2987 3 is_stmt 1 view .LVU973 - 3208 .LBB408: - 3209 .LBB407: + 3513 .loc 4 372 3 is_stmt 0 view .LVU1051 + 3514 .LBE432: + 3515 .LBE431: + ARM GAS /tmp/ccEQxcUB.s page 203 + + +3269:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3516 .loc 1 3269 3 is_stmt 1 view .LVU1052 + 3517 .LBB434: + 3518 .LBB433: 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3210 .loc 4 373 1 is_stmt 0 view .LVU974 - 3211 0118 00E0 b .L232 - 3212 .L233: + 3519 .loc 4 373 1 is_stmt 0 view .LVU1053 + 3520 00aa 00E0 b .L250 + 3521 .L251: 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3213 .loc 4 373 1 view .LVU975 - 3214 .LBE407: - 3215 .LBE408: -2987:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3216 .loc 1 2987 20 is_stmt 1 discriminator 2 view .LVU976 -2987:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3217 .loc 1 2987 25 is_stmt 0 discriminator 2 view .LVU977 - 3218 011a 0133 adds r3, r3, #1 - 3219 .LVL381: - 3220 .L232: -2987:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3221 .loc 1 2987 14 is_stmt 1 discriminator 1 view .LVU978 - 3222 011c B3F5FA7F cmp r3, #500 - 3223 0120 FBD3 bcc .L233 -2989:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); - 3224 .loc 1 2989 3 view .LVU979 - 3225 0122 0122 movs r2, #1 - 3226 0124 4021 movs r1, #64 - 3227 0126 3B48 ldr r0, .L250+4 - 3228 0128 FFF7FEFF bl HAL_GPIO_WritePin - 3229 .LVL382: -2990:Src/main.c **** } - 3230 .loc 1 2990 3 view .LVU980 - 3231 .LBB409: - 3232 .LBI409: + 3522 .loc 4 373 1 view .LVU1054 + 3523 .LBE433: + 3524 .LBE434: +3269:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3525 .loc 1 3269 20 is_stmt 1 discriminator 2 view .LVU1055 +3269:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3526 .loc 1 3269 25 is_stmt 0 discriminator 2 view .LVU1056 + 3527 00ac 0133 adds r3, r3, #1 + 3528 .LVL423: + 3529 .L250: +3269:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3530 .loc 1 3269 14 is_stmt 1 discriminator 1 view .LVU1057 + 3531 00ae B3F5FA7F cmp r3, #500 + 3532 00b2 FBD3 bcc .L251 +3271:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); + 3533 .loc 1 3271 3 view .LVU1058 + 3534 00b4 0122 movs r2, #1 + 3535 00b6 4FF48061 mov r1, #1024 + 3536 00ba 5548 ldr r0, .L275 + 3537 00bc FFF7FEFF bl HAL_GPIO_WritePin + 3538 .LVL424: +3272:Src/main.c **** } + 3539 .loc 1 3272 3 view .LVU1059 + 3540 .LBB435: + 3541 .LBI435: 1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3233 .loc 4 1344 26 view .LVU981 - 3234 .LBB410: + 3542 .loc 4 1344 26 view .LVU1060 + 3543 .LBB436: 1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - ARM GAS /tmp/ccwR4KB7.s page 192 + 3544 .loc 4 1346 3 view .LVU1061 +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3545 .loc 4 1346 21 is_stmt 0 view .LVU1062 + 3546 00c0 554B ldr r3, .L275+8 + 3547 00c2 DD68 ldr r5, [r3, #12] +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3548 .loc 4 1346 10 view .LVU1063 + 3549 00c4 ADB2 uxth r5, r5 + 3550 .LVL425: + 3551 .L239: +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3552 .loc 4 1346 10 view .LVU1064 + 3553 .LBE436: + 3554 .LBE435: +3344:Src/main.c **** } + 3555 .loc 1 3344 2 is_stmt 1 view .LVU1065 +3345:Src/main.c **** /*static uint16_t Temp_LD(uint16_t T_LD_before, uint16_t T_LD, uint32_t Timer_before, uint32_t Time + 3556 .loc 1 3345 1 is_stmt 0 view .LVU1066 + 3557 00c6 2846 mov r0, r5 + ARM GAS /tmp/ccEQxcUB.s page 204 - 3235 .loc 4 1346 3 view .LVU982 -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3236 .loc 4 1346 21 is_stmt 0 view .LVU983 - 3237 012c 3B4B ldr r3, .L250+12 - 3238 012e DD68 ldr r5, [r3, #12] -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3239 .loc 4 1346 10 view .LVU984 - 3240 0130 ADB2 uxth r5, r5 - 3241 .LVL383: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3242 .loc 4 1346 10 view .LVU985 - 3243 .LBE410: - 3244 .LBE409: - 3245 0132 C8E7 b .L214 - 3246 .LVL384: - 3247 .L217: -2994:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); - 3248 .loc 1 2994 3 is_stmt 1 view .LVU986 - 3249 0134 364C ldr r4, .L250 - 3250 0136 0122 movs r2, #1 - 3251 0138 4FF48061 mov r1, #1024 - 3252 013c 2046 mov r0, r4 - 3253 013e FFF7FEFF bl HAL_GPIO_WritePin - 3254 .LVL385: -2995:Src/main.c **** tmp32=0; - 3255 .loc 1 2995 3 view .LVU987 - 3256 0142 0022 movs r2, #0 - 3257 0144 4FF40061 mov r1, #2048 - 3258 0148 2046 mov r0, r4 - 3259 014a FFF7FEFF bl HAL_GPIO_WritePin - 3260 .LVL386: -2996:Src/main.c **** while(tmp32<500){tmp32++;} - 3261 .loc 1 2996 3 view .LVU988 -2997:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3262 .loc 1 2997 3 view .LVU989 -2996:Src/main.c **** while(tmp32<500){tmp32++;} - 3263 .loc 1 2996 8 is_stmt 0 view .LVU990 - 3264 014e 0023 movs r3, #0 -2997:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3265 .loc 1 2997 8 view .LVU991 - 3266 0150 00E0 b .L234 - 3267 .LVL387: - 3268 .L235: -2997:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3269 .loc 1 2997 20 is_stmt 1 discriminator 2 view .LVU992 -2997:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3270 .loc 1 2997 25 is_stmt 0 discriminator 2 view .LVU993 - 3271 0152 0133 adds r3, r3, #1 - 3272 .LVL388: - 3273 .L234: -2997:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3274 .loc 1 2997 14 is_stmt 1 discriminator 1 view .LVU994 - 3275 0154 B3F5FA7F cmp r3, #500 - 3276 0158 FBD3 bcc .L235 -2999:Src/main.c **** tmp32 = 0; - 3277 .loc 1 2999 3 view .LVU995 - 3278 .LVL389: - ARM GAS /tmp/ccwR4KB7.s page 193 - - - 3279 .LBB411: - 3280 .LBI411: + 3558 00c8 38BD pop {r3, r4, r5, pc} + 3559 .LVL426: + 3560 .L243: +3276:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_RESET); + 3561 .loc 1 3276 3 is_stmt 1 view .LVU1067 + 3562 00ca 524C ldr r4, .L275+4 + 3563 00cc 0122 movs r2, #1 + 3564 00ce 4FF48061 mov r1, #1024 + 3565 00d2 2046 mov r0, r4 + 3566 00d4 FFF7FEFF bl HAL_GPIO_WritePin + 3567 .LVL427: +3277:Src/main.c **** tmp32=0; + 3568 .loc 1 3277 3 view .LVU1068 + 3569 00d8 0022 movs r2, #0 + 3570 00da 4021 movs r1, #64 + 3571 00dc 2046 mov r0, r4 + 3572 00de FFF7FEFF bl HAL_GPIO_WritePin + 3573 .LVL428: +3278:Src/main.c **** while(tmp32<500){tmp32++;} + 3574 .loc 1 3278 3 view .LVU1069 +3279:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3575 .loc 1 3279 3 view .LVU1070 +3278:Src/main.c **** while(tmp32<500){tmp32++;} + 3576 .loc 1 3278 8 is_stmt 0 view .LVU1071 + 3577 00e2 0023 movs r3, #0 +3279:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3578 .loc 1 3279 8 view .LVU1072 + 3579 00e4 00E0 b .L252 + 3580 .LVL429: + 3581 .L253: +3279:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3582 .loc 1 3279 20 is_stmt 1 discriminator 2 view .LVU1073 +3279:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3583 .loc 1 3279 25 is_stmt 0 discriminator 2 view .LVU1074 + 3584 00e6 0133 adds r3, r3, #1 + 3585 .LVL430: + 3586 .L252: +3279:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3587 .loc 1 3279 14 is_stmt 1 discriminator 1 view .LVU1075 + 3588 00e8 B3F5FA7F cmp r3, #500 + 3589 00ec FBD3 bcc .L253 +3281:Src/main.c **** tmp32 = 0; + 3590 .loc 1 3281 3 view .LVU1076 + 3591 .LVL431: + 3592 .LBB437: + 3593 .LBI437: 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3281 .loc 4 358 22 view .LVU996 - 3282 .LBB412: + 3594 .loc 4 358 22 view .LVU1077 + 3595 .LBB438: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3283 .loc 4 360 3 view .LVU997 - 3284 015a 2F4A ldr r2, .L250+8 - 3285 015c 1368 ldr r3, [r2] - 3286 .LVL390: + 3596 .loc 4 360 3 view .LVU1078 + 3597 00ee 4B4A ldr r2, .L275+12 + 3598 00f0 1368 ldr r3, [r2] + 3599 .LVL432: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3287 .loc 4 360 3 is_stmt 0 view .LVU998 - 3288 015e 43F04003 orr r3, r3, #64 - 3289 0162 1360 str r3, [r2] - 3290 .LVL391: + 3600 .loc 4 360 3 is_stmt 0 view .LVU1079 + 3601 00f2 43F04003 orr r3, r3, #64 + ARM GAS /tmp/ccEQxcUB.s page 205 + + + 3602 00f6 1360 str r3, [r2] + 3603 .LVL433: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3291 .loc 4 360 3 view .LVU999 - 3292 .LBE412: - 3293 .LBE411: -3000:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3294 .loc 1 3000 3 is_stmt 1 view .LVU1000 -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - 3295 .loc 1 3001 3 view .LVU1001 -3000:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3296 .loc 1 3000 9 is_stmt 0 view .LVU1002 - 3297 0164 0023 movs r3, #0 - 3298 .LVL392: - 3299 .L236: -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - 3300 .loc 1 3001 43 is_stmt 1 discriminator 1 view .LVU1003 - 3301 .LBB413: - 3302 .LBI413: + 3604 .loc 4 360 3 view .LVU1080 + 3605 .LBE438: + 3606 .LBE437: +3282:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3607 .loc 1 3282 3 is_stmt 1 view .LVU1081 +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3608 .loc 1 3283 3 view .LVU1082 +3282:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3609 .loc 1 3282 9 is_stmt 0 view .LVU1083 + 3610 00f8 0023 movs r3, #0 + 3611 .LVL434: + 3612 .L254: +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3613 .loc 1 3283 43 is_stmt 1 discriminator 1 view .LVU1084 + 3614 .LBB439: + 3615 .LBI439: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3303 .loc 4 905 26 view .LVU1004 - 3304 .LBB414: + 3616 .loc 4 905 26 view .LVU1085 + 3617 .LBB440: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3305 .loc 4 907 3 view .LVU1005 + 3618 .loc 4 907 3 view .LVU1086 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3306 .loc 4 907 12 is_stmt 0 view .LVU1006 - 3307 0166 2C4A ldr r2, .L250+8 - 3308 0168 9268 ldr r2, [r2, #8] + 3619 .loc 4 907 12 is_stmt 0 view .LVU1087 + 3620 00fa 484A ldr r2, .L275+12 + 3621 00fc 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3309 .loc 4 907 68 view .LVU1007 - 3310 016a 12F0010F tst r2, #1 - 3311 016e 04D1 bne .L237 - 3312 .LVL393: + 3622 .loc 4 907 68 view .LVU1088 + 3623 00fe 12F0010F tst r2, #1 + 3624 0102 04D1 bne .L255 + 3625 .LVL435: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3313 .loc 4 907 68 view .LVU1008 - 3314 .LBE414: - 3315 .LBE413: -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - 3316 .loc 1 3001 43 discriminator 2 view .LVU1009 - 3317 0170 B3F57A7F cmp r3, #1000 - 3318 0174 01D8 bhi .L237 -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - 3319 .loc 1 3001 62 is_stmt 1 discriminator 3 view .LVU1010 -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - ARM GAS /tmp/ccwR4KB7.s page 194 - - - 3320 .loc 1 3001 67 is_stmt 0 discriminator 3 view .LVU1011 - 3321 0176 0133 adds r3, r3, #1 - 3322 .LVL394: -3001:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC - 3323 .loc 1 3001 67 discriminator 3 view .LVU1012 - 3324 0178 F5E7 b .L236 - 3325 .L237: -3002:Src/main.c **** while(tmp32<500){tmp32++;} - 3326 .loc 1 3002 3 is_stmt 1 view .LVU1013 - 3327 .LVL395: - 3328 .LBB415: - 3329 .LBI415: + 3626 .loc 4 907 68 view .LVU1089 + 3627 .LBE440: + 3628 .LBE439: +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3629 .loc 1 3283 43 discriminator 2 view .LVU1090 + 3630 0104 B3F57A7F cmp r3, #1000 + 3631 0108 01D8 bhi .L255 +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3632 .loc 1 3283 62 is_stmt 1 discriminator 3 view .LVU1091 +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3633 .loc 1 3283 67 is_stmt 0 discriminator 3 view .LVU1092 + 3634 010a 0133 adds r3, r3, #1 + 3635 .LVL436: +3283:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for MPhD2 ADC + 3636 .loc 1 3283 67 discriminator 3 view .LVU1093 + 3637 010c F5E7 b .L254 + 3638 .L255: +3284:Src/main.c **** while(tmp32<500){tmp32++;} + 3639 .loc 1 3284 3 is_stmt 1 view .LVU1094 + 3640 .LVL437: + 3641 .LBB441: + 3642 .LBI441: 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3330 .loc 4 370 22 view .LVU1014 - 3331 .LBB416: - 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3332 .loc 4 372 3 view .LVU1015 - 3333 017a 2749 ldr r1, .L250+8 - 3334 017c 0A68 ldr r2, [r1] - 3335 017e 22F04002 bic r2, r2, #64 - 3336 0182 0A60 str r2, [r1] - 3337 .LVL396: - 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3338 .loc 4 372 3 is_stmt 0 view .LVU1016 - 3339 .LBE416: - 3340 .LBE415: -3003:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3341 .loc 1 3003 3 is_stmt 1 view .LVU1017 - 3342 .LBB418: - 3343 .LBB417: - 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3344 .loc 4 373 1 is_stmt 0 view .LVU1018 - 3345 0184 00E0 b .L239 - 3346 .L240: - 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3347 .loc 4 373 1 view .LVU1019 - 3348 .LBE417: - 3349 .LBE418: -3003:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3350 .loc 1 3003 20 is_stmt 1 discriminator 2 view .LVU1020 -3003:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3351 .loc 1 3003 25 is_stmt 0 discriminator 2 view .LVU1021 - 3352 0186 0133 adds r3, r3, #1 - 3353 .LVL397: - 3354 .L239: -3003:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3355 .loc 1 3003 14 is_stmt 1 discriminator 1 view .LVU1022 - 3356 0188 B3F5FA7F cmp r3, #500 - 3357 018c FBD3 bcc .L240 -3005:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); - 3358 .loc 1 3005 3 view .LVU1023 - 3359 018e 0122 movs r2, #1 - 3360 0190 4FF40061 mov r1, #2048 - 3361 0194 1E48 ldr r0, .L250 - 3362 0196 FFF7FEFF bl HAL_GPIO_WritePin - 3363 .LVL398: -3006:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 195 + ARM GAS /tmp/ccEQxcUB.s page 206 - 3364 .loc 1 3006 3 view .LVU1024 - 3365 .LBB419: - 3366 .LBI419: + 3643 .loc 4 370 22 view .LVU1095 + 3644 .LBB442: + 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3645 .loc 4 372 3 view .LVU1096 + 3646 010e 4349 ldr r1, .L275+12 + 3647 0110 0A68 ldr r2, [r1] + 3648 0112 22F04002 bic r2, r2, #64 + 3649 0116 0A60 str r2, [r1] + 3650 .LVL438: + 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3651 .loc 4 372 3 is_stmt 0 view .LVU1097 + 3652 .LBE442: + 3653 .LBE441: +3285:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3654 .loc 1 3285 3 is_stmt 1 view .LVU1098 + 3655 .LBB444: + 3656 .LBB443: + 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** + 3657 .loc 4 373 1 is_stmt 0 view .LVU1099 + 3658 0118 00E0 b .L257 + 3659 .L258: + 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** + 3660 .loc 4 373 1 view .LVU1100 + 3661 .LBE443: + 3662 .LBE444: +3285:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3663 .loc 1 3285 20 is_stmt 1 discriminator 2 view .LVU1101 +3285:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3664 .loc 1 3285 25 is_stmt 0 discriminator 2 view .LVU1102 + 3665 011a 0133 adds r3, r3, #1 + 3666 .LVL439: + 3667 .L257: +3285:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3668 .loc 1 3285 14 is_stmt 1 discriminator 1 view .LVU1103 + 3669 011c B3F5FA7F cmp r3, #500 + 3670 0120 FBD3 bcc .L258 +3287:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); + 3671 .loc 1 3287 3 view .LVU1104 + 3672 0122 0122 movs r2, #1 + 3673 0124 4021 movs r1, #64 + 3674 0126 3B48 ldr r0, .L275+4 + 3675 0128 FFF7FEFF bl HAL_GPIO_WritePin + 3676 .LVL440: +3288:Src/main.c **** } + 3677 .loc 1 3288 3 view .LVU1105 + 3678 .LBB445: + 3679 .LBI445: 1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3367 .loc 4 1344 26 view .LVU1025 - 3368 .LBB420: + 3680 .loc 4 1344 26 view .LVU1106 + 3681 .LBB446: 1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3369 .loc 4 1346 3 view .LVU1026 + 3682 .loc 4 1346 3 view .LVU1107 1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3370 .loc 4 1346 21 is_stmt 0 view .LVU1027 - 3371 019a 1F4B ldr r3, .L250+8 - 3372 019c DD68 ldr r5, [r3, #12] + 3683 .loc 4 1346 21 is_stmt 0 view .LVU1108 + 3684 012c 3B4B ldr r3, .L275+12 + 3685 012e DD68 ldr r5, [r3, #12] 1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3373 .loc 4 1346 10 view .LVU1028 - 3374 019e ADB2 uxth r5, r5 - 3375 .LVL399: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3376 .loc 4 1346 10 view .LVU1029 - 3377 .LBE420: - 3378 .LBE419: - 3379 01a0 91E7 b .L214 - 3380 .LVL400: - 3381 .L215: -3010:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD2_CS_GPIO_Port, ADC_ThrLD2_CS_Pin, GPIO_PIN_RESET); - 3382 .loc 1 3010 3 is_stmt 1 view .LVU1030 - 3383 01a2 1C4C ldr r4, .L250+4 - 3384 01a4 0122 movs r2, #1 - 3385 01a6 4021 movs r1, #64 - 3386 01a8 2046 mov r0, r4 - 3387 01aa FFF7FEFF bl HAL_GPIO_WritePin - 3388 .LVL401: -3011:Src/main.c **** tmp32=0; - 3389 .loc 1 3011 3 view .LVU1031 - 3390 01ae 0022 movs r2, #0 - 3391 01b0 4FF48061 mov r1, #1024 - 3392 01b4 2046 mov r0, r4 - 3393 01b6 FFF7FEFF bl HAL_GPIO_WritePin - 3394 .LVL402: -3012:Src/main.c **** while(tmp32<500){tmp32++;} - 3395 .loc 1 3012 3 view .LVU1032 -3013:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3396 .loc 1 3013 3 view .LVU1033 -3012:Src/main.c **** while(tmp32<500){tmp32++;} - 3397 .loc 1 3012 8 is_stmt 0 view .LVU1034 - 3398 01ba 0023 movs r3, #0 -3013:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3399 .loc 1 3013 8 view .LVU1035 - 3400 01bc 00E0 b .L241 - 3401 .LVL403: - 3402 .L242: -3013:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3403 .loc 1 3013 20 is_stmt 1 discriminator 2 view .LVU1036 -3013:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3404 .loc 1 3013 25 is_stmt 0 discriminator 2 view .LVU1037 - 3405 01be 0133 adds r3, r3, #1 - 3406 .LVL404: - 3407 .L241: - ARM GAS /tmp/ccwR4KB7.s page 196 + ARM GAS /tmp/ccEQxcUB.s page 207 -3013:Src/main.c **** //LL_SPI_TransmitData16(SPI5, 0xFFFF);//We must to clock the CLK output for collect RX data. We c - 3408 .loc 1 3013 14 is_stmt 1 discriminator 1 view .LVU1038 - 3409 01c0 B3F5FA7F cmp r3, #500 - 3410 01c4 FBD3 bcc .L242 -3015:Src/main.c **** tmp32 = 0; - 3411 .loc 1 3015 3 view .LVU1039 - 3412 .LVL405: - 3413 .LBB421: - 3414 .LBI421: + 3686 .loc 4 1346 10 view .LVU1109 + 3687 0130 ADB2 uxth r5, r5 + 3688 .LVL441: +1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 3689 .loc 4 1346 10 view .LVU1110 + 3690 .LBE446: + 3691 .LBE445: + 3692 0132 C8E7 b .L239 + 3693 .LVL442: + 3694 .L242: +3292:Src/main.c **** HAL_GPIO_WritePin(ADC_ThrLD1_CS_GPIO_Port, ADC_ThrLD1_CS_Pin, GPIO_PIN_RESET); + 3695 .loc 1 3292 3 is_stmt 1 view .LVU1111 + 3696 0134 364C ldr r4, .L275 + 3697 0136 0122 movs r2, #1 + 3698 0138 4FF48061 mov r1, #1024 + 3699 013c 2046 mov r0, r4 + 3700 013e FFF7FEFF bl HAL_GPIO_WritePin + 3701 .LVL443: +3293:Src/main.c **** tmp32=0; + 3702 .loc 1 3293 3 view .LVU1112 + 3703 0142 0022 movs r2, #0 + 3704 0144 4FF40061 mov r1, #2048 + 3705 0148 2046 mov r0, r4 + 3706 014a FFF7FEFF bl HAL_GPIO_WritePin + 3707 .LVL444: +3294:Src/main.c **** while(tmp32<500){tmp32++;} + 3708 .loc 1 3294 3 view .LVU1113 +3295:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3709 .loc 1 3295 3 view .LVU1114 +3294:Src/main.c **** while(tmp32<500){tmp32++;} + 3710 .loc 1 3294 8 is_stmt 0 view .LVU1115 + 3711 014e 0023 movs r3, #0 +3295:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3712 .loc 1 3295 8 view .LVU1116 + 3713 0150 00E0 b .L259 + 3714 .LVL445: + 3715 .L260: +3295:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3716 .loc 1 3295 20 is_stmt 1 discriminator 2 view .LVU1117 +3295:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3717 .loc 1 3295 25 is_stmt 0 discriminator 2 view .LVU1118 + 3718 0152 0133 adds r3, r3, #1 + 3719 .LVL446: + 3720 .L259: +3295:Src/main.c **** //LL_SPI_TransmitData16(SPI4, 0xFFFF);//We must to clock the CLK output for collect RX data. We c + 3721 .loc 1 3295 14 is_stmt 1 discriminator 1 view .LVU1119 + 3722 0154 B3F5FA7F cmp r3, #500 + 3723 0158 FBD3 bcc .L260 +3297:Src/main.c **** tmp32 = 0; + 3724 .loc 1 3297 3 view .LVU1120 + 3725 .LVL447: + 3726 .LBB447: + 3727 .LBI447: 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3415 .loc 4 358 22 view .LVU1040 - 3416 .LBB422: + 3728 .loc 4 358 22 view .LVU1121 + 3729 .LBB448: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3417 .loc 4 360 3 view .LVU1041 - 3418 01c6 154A ldr r2, .L250+12 - 3419 01c8 1368 ldr r3, [r2] - 3420 .LVL406: + ARM GAS /tmp/ccEQxcUB.s page 208 + + + 3730 .loc 4 360 3 view .LVU1122 + 3731 015a 2F4A ldr r2, .L275+8 + 3732 015c 1368 ldr r3, [r2] + 3733 .LVL448: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3421 .loc 4 360 3 is_stmt 0 view .LVU1042 - 3422 01ca 43F04003 orr r3, r3, #64 - 3423 01ce 1360 str r3, [r2] - 3424 .LVL407: + 3734 .loc 4 360 3 is_stmt 0 view .LVU1123 + 3735 015e 43F04003 orr r3, r3, #64 + 3736 0162 1360 str r3, [r2] + 3737 .LVL449: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3425 .loc 4 360 3 view .LVU1043 - 3426 .LBE422: - 3427 .LBE421: -3016:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3428 .loc 1 3016 3 is_stmt 1 view .LVU1044 -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3429 .loc 1 3017 3 view .LVU1045 -3016:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI5))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w - 3430 .loc 1 3016 9 is_stmt 0 view .LVU1046 - 3431 01d0 0023 movs r3, #0 - 3432 .LVL408: - 3433 .L243: -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3434 .loc 1 3017 43 is_stmt 1 discriminator 1 view .LVU1047 - 3435 .LBB423: - 3436 .LBI423: + 3738 .loc 4 360 3 view .LVU1124 + 3739 .LBE448: + 3740 .LBE447: +3298:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3741 .loc 1 3298 3 is_stmt 1 view .LVU1125 +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3742 .loc 1 3299 3 view .LVU1126 +3298:Src/main.c **** while(((!LL_SPI_IsActiveFlag_RXNE(SPI4))&&(tmp32<=1000))) {tmp32++;}//When rec. last data cycle w + 3743 .loc 1 3298 9 is_stmt 0 view .LVU1127 + 3744 0164 0023 movs r3, #0 + 3745 .LVL450: + 3746 .L261: +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3747 .loc 1 3299 43 is_stmt 1 discriminator 1 view .LVU1128 + 3748 .LBB449: + 3749 .LBI449: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3437 .loc 4 905 26 view .LVU1048 - 3438 .LBB424: + 3750 .loc 4 905 26 view .LVU1129 + 3751 .LBB450: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3439 .loc 4 907 3 view .LVU1049 + 3752 .loc 4 907 3 view .LVU1130 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3440 .loc 4 907 12 is_stmt 0 view .LVU1050 - 3441 01d2 124A ldr r2, .L250+12 - 3442 01d4 9268 ldr r2, [r2, #8] + 3753 .loc 4 907 12 is_stmt 0 view .LVU1131 + 3754 0166 2C4A ldr r2, .L275+8 + 3755 0168 9268 ldr r2, [r2, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3443 .loc 4 907 68 view .LVU1051 - 3444 01d6 12F0010F tst r2, #1 - 3445 01da 04D1 bne .L244 - 3446 .LVL409: + 3756 .loc 4 907 68 view .LVU1132 + 3757 016a 12F0010F tst r2, #1 + 3758 016e 04D1 bne .L262 + 3759 .LVL451: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3447 .loc 4 907 68 view .LVU1052 - 3448 .LBE424: - 3449 .LBE423: - ARM GAS /tmp/ccwR4KB7.s page 197 + 3760 .loc 4 907 68 view .LVU1133 + 3761 .LBE450: + 3762 .LBE449: +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3763 .loc 1 3299 43 discriminator 2 view .LVU1134 + 3764 0170 B3F57A7F cmp r3, #1000 + 3765 0174 01D8 bhi .L262 +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3766 .loc 1 3299 62 is_stmt 1 discriminator 3 view .LVU1135 +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3767 .loc 1 3299 67 is_stmt 0 discriminator 3 view .LVU1136 + 3768 0176 0133 adds r3, r3, #1 + 3769 .LVL452: +3299:Src/main.c **** LL_SPI_Disable(SPI4);//Enable SPI for ThrLD1 ADC + 3770 .loc 1 3299 67 discriminator 3 view .LVU1137 + 3771 0178 F5E7 b .L261 + ARM GAS /tmp/ccEQxcUB.s page 209 -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3450 .loc 1 3017 43 discriminator 2 view .LVU1053 - 3451 01dc B3F57A7F cmp r3, #1000 - 3452 01e0 01D8 bhi .L244 -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3453 .loc 1 3017 62 is_stmt 1 discriminator 3 view .LVU1054 -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3454 .loc 1 3017 67 is_stmt 0 discriminator 3 view .LVU1055 - 3455 01e2 0133 adds r3, r3, #1 - 3456 .LVL410: -3017:Src/main.c **** LL_SPI_Disable(SPI5);//Enable SPI for ThrLD2 ADC - 3457 .loc 1 3017 67 discriminator 3 view .LVU1056 - 3458 01e4 F5E7 b .L243 - 3459 .L244: -3018:Src/main.c **** while(tmp32<500){tmp32++;} - 3460 .loc 1 3018 3 is_stmt 1 view .LVU1057 - 3461 .LVL411: - 3462 .LBB425: - 3463 .LBI425: + 3772 .L262: +3300:Src/main.c **** while(tmp32<500){tmp32++;} + 3773 .loc 1 3300 3 is_stmt 1 view .LVU1138 + 3774 .LVL453: + 3775 .LBB451: + 3776 .LBI451: 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3464 .loc 4 370 22 view .LVU1058 - 3465 .LBB426: + 3777 .loc 4 370 22 view .LVU1139 + 3778 .LBB452: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3466 .loc 4 372 3 view .LVU1059 - 3467 01e6 0D49 ldr r1, .L250+12 - 3468 01e8 0A68 ldr r2, [r1] - 3469 01ea 22F04002 bic r2, r2, #64 - 3470 01ee 0A60 str r2, [r1] - 3471 .LVL412: + 3779 .loc 4 372 3 view .LVU1140 + 3780 017a 2749 ldr r1, .L275+8 + 3781 017c 0A68 ldr r2, [r1] + 3782 017e 22F04002 bic r2, r2, #64 + 3783 0182 0A60 str r2, [r1] + 3784 .LVL454: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3472 .loc 4 372 3 is_stmt 0 view .LVU1060 - 3473 .LBE426: - 3474 .LBE425: -3019:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3475 .loc 1 3019 3 is_stmt 1 view .LVU1061 - 3476 .LBB428: - 3477 .LBB427: + 3785 .loc 4 372 3 is_stmt 0 view .LVU1141 + 3786 .LBE452: + 3787 .LBE451: +3301:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3788 .loc 1 3301 3 is_stmt 1 view .LVU1142 + 3789 .LBB454: + 3790 .LBB453: 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3478 .loc 4 373 1 is_stmt 0 view .LVU1062 - 3479 01f0 00E0 b .L246 - 3480 .L247: + 3791 .loc 4 373 1 is_stmt 0 view .LVU1143 + 3792 0184 00E0 b .L264 + 3793 .L265: 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** - 3481 .loc 4 373 1 view .LVU1063 - 3482 .LBE427: - 3483 .LBE428: -3019:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3484 .loc 1 3019 20 is_stmt 1 discriminator 2 view .LVU1064 -3019:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3485 .loc 1 3019 25 is_stmt 0 discriminator 2 view .LVU1065 - 3486 01f2 0133 adds r3, r3, #1 - 3487 .LVL413: - 3488 .L246: -3019:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); - 3489 .loc 1 3019 14 is_stmt 1 discriminator 1 view .LVU1066 - 3490 01f4 B3F5FA7F cmp r3, #500 - 3491 01f8 FBD3 bcc .L247 -3021:Src/main.c **** P = LL_SPI_ReceiveData16(SPI5); - ARM GAS /tmp/ccwR4KB7.s page 198 - - - 3492 .loc 1 3021 3 view .LVU1067 - 3493 01fa 0122 movs r2, #1 - 3494 01fc 4FF48061 mov r1, #1024 - 3495 0200 0448 ldr r0, .L250+4 - 3496 0202 FFF7FEFF bl HAL_GPIO_WritePin - 3497 .LVL414: -3022:Src/main.c **** } - 3498 .loc 1 3022 3 view .LVU1068 - 3499 .LBB429: - 3500 .LBI429: -1344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 3501 .loc 4 1344 26 view .LVU1069 - 3502 .LBB430: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3503 .loc 4 1346 3 view .LVU1070 -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3504 .loc 4 1346 21 is_stmt 0 view .LVU1071 - 3505 0206 054B ldr r3, .L250+12 - 3506 0208 DD68 ldr r5, [r3, #12] -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3507 .loc 4 1346 10 view .LVU1072 - 3508 020a ADB2 uxth r5, r5 - 3509 .LVL415: -1346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 3510 .loc 4 1346 10 view .LVU1073 - 3511 020c 5BE7 b .L214 - 3512 .L251: - 3513 020e 00BF .align 2 - 3514 .L250: - 3515 0210 00100240 .word 1073876992 - 3516 0214 00140240 .word 1073878016 - 3517 0218 00340140 .word 1073820672 - 3518 021c 00500140 .word 1073827840 - 3519 .LBE430: - 3520 .LBE429: - 3521 .cfi_endproc - 3522 .LFE1221: - 3524 .section .text.Stop_TIM10,"ax",%progbits - 3525 .align 1 - 3526 .syntax unified - 3527 .thumb - 3528 .thumb_func - 3530 Stop_TIM10: - 3531 .LFB1232: -3187:Src/main.c **** uint8_t CheckChecksum(uint16_t *pbuff) -3188:Src/main.c **** { -3189:Src/main.c **** uint16_t cl_ind; -3190:Src/main.c **** -3191:Src/main.c **** switch (UART_header) -3192:Src/main.c **** { -3193:Src/main.c **** case 0x7777: -3194:Src/main.c **** cl_ind = TSK_16 - 2; -3195:Src/main.c **** break; -3196:Src/main.c **** case 0x1111: -3197:Src/main.c **** cl_ind = CL_16 - 2; -3198:Src/main.c **** break; -3199:Src/main.c **** default: - ARM GAS /tmp/ccwR4KB7.s page 199 - - -3200:Src/main.c **** return 0; -3201:Src/main.c **** break; -3202:Src/main.c **** } -3203:Src/main.c **** -3204:Src/main.c **** CS_result = CalculateChecksum(pbuff, cl_ind); -3205:Src/main.c **** -3206:Src/main.c **** return ((CS_result == COMMAND[cl_ind]) ? 1 : 0); -3207:Src/main.c **** } -3208:Src/main.c **** uint16_t CalculateChecksum(uint16_t *pbuff, uint16_t len) -3209:Src/main.c **** { -3210:Src/main.c **** short i; -3211:Src/main.c **** uint16_t cs = *pbuff; -3212:Src/main.c **** -3213:Src/main.c **** for(i = 1; i < len; i++) -3214:Src/main.c **** { -3215:Src/main.c **** cs ^= *(pbuff+i); -3216:Src/main.c **** } -3217:Src/main.c **** return cs; -3218:Src/main.c **** } -3219:Src/main.c **** -3220:Src/main.c **** /*int SD_Init(void) -3221:Src/main.c **** { -3222:Src/main.c **** int test=0; -3223:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) -3224:Src/main.c **** { -3225:Src/main.c **** test = Mount_SD("/"); -3226:Src/main.c **** if (test == 0) //0 - suc -3227:Src/main.c **** { -3228:Src/main.c **** //Format_SD(); -3229:Src/main.c **** test = Create_File("FILE1.TXT"); // 0 -suc -3230:Src/main.c **** //Create_File("FILE2.TXT"); -3231:Src/main.c **** Write_File ("FILE1.TXT", "____OSGG main borad information. Program made by Kazakov Viktor. Part -3232:Src/main.c **** test = Unmount_SD("/"); // 0 - succ -3233:Src/main.c **** return test; -3234:Src/main.c **** } -3235:Src/main.c **** else -3236:Src/main.c **** { -3237:Src/main.c **** return 1; -3238:Src/main.c **** } -3239:Src/main.c **** } -3240:Src/main.c **** else -3241:Src/main.c **** { -3242:Src/main.c **** return 1; -3243:Src/main.c **** } -3244:Src/main.c **** }*/ -3245:Src/main.c **** -3246:Src/main.c **** int SD_SAVE(uint16_t *pbuff) -3247:Src/main.c **** { -3248:Src/main.c **** int test=0; -3249:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) -3250:Src/main.c **** { -3251:Src/main.c **** test = Mount_SD("/"); -3252:Src/main.c **** if (test == 0) //0 - suc -3253:Src/main.c **** { -3254:Src/main.c **** //Format_SD(); -3255:Src/main.c **** test = Update_File_byte("FILE1.TXT", (uint8_t *)pbuff, DL_8); -3256:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - ARM GAS /tmp/ccwR4KB7.s page 200 - - -3257:Src/main.c **** return test; -3258:Src/main.c **** } -3259:Src/main.c **** else -3260:Src/main.c **** { -3261:Src/main.c **** return 1; -3262:Src/main.c **** } -3263:Src/main.c **** } -3264:Src/main.c **** else -3265:Src/main.c **** { -3266:Src/main.c **** return 1; -3267:Src/main.c **** } -3268:Src/main.c **** } -3269:Src/main.c **** -3270:Src/main.c **** -3271:Src/main.c **** -3272:Src/main.c **** //uint32_t Get_Length(void) -3273:Src/main.c **** //{ -3274:Src/main.c **** // return SD_matr[0][0] + ((uint32_t) (SD_matr[0][1])<<16); -3275:Src/main.c **** //} -3276:Src/main.c **** -3277:Src/main.c **** int SD_READ(uint16_t *pbuff) -3278:Src/main.c **** { -3279:Src/main.c **** int test=0; -3280:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) -3281:Src/main.c **** { -3282:Src/main.c **** test = Mount_SD("/"); -3283:Src/main.c **** if (test == 0) //0 - suc -3284:Src/main.c **** { -3285:Src/main.c **** //Format_SD(); -3286:Src/main.c **** test = Seek_Read_File ("FILE1.TXT", (uint8_t *)pbuff, DL_8, fgoto);//Read next 246 bytes -3287:Src/main.c **** fgoto+=DL_8; -3288:Src/main.c **** test = Unmount_SD("/"); // 0 - succ -3289:Src/main.c **** return test; -3290:Src/main.c **** } -3291:Src/main.c **** else -3292:Src/main.c **** { -3293:Src/main.c **** return 1; -3294:Src/main.c **** } -3295:Src/main.c **** } -3296:Src/main.c **** else -3297:Src/main.c **** { -3298:Src/main.c **** return 1; -3299:Src/main.c **** } -3300:Src/main.c **** -3301:Src/main.c **** /* for (uint16_t j = 0; j < DL_16; j++) -3302:Src/main.c **** { -3303:Src/main.c **** *(pbuff+j) = SD_matr[SD_SLIDE][j]; + 3794 .loc 4 373 1 view .LVU1144 + 3795 .LBE453: + 3796 .LBE454: +3301:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3797 .loc 1 3301 20 is_stmt 1 discriminator 2 view .LVU1145 +3301:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3798 .loc 1 3301 25 is_stmt 0 discriminator 2 view .LVU1146 + 3799 0186 0133 adds r3, r3, #1 + 3800 .LVL455: + 3801 .L264: +3301:Src/main.c **** //HAL_SPI_Receive(&hspi4, &P[0], 1, 100); + 3802 .loc 1 3301 14 is_stmt 1 discriminator 1 view .LVU1147 + 3803 0188 B3F5FA7F cmp r3, #500 + 3804 018c FBD3 bcc .L265 +3303:Src/main.c **** P = LL_SPI_ReceiveData16(SPI4); + 3805 .loc 1 3303 3 view .LVU1148 + 3806 018e 0122 movs r2, #1 + 3807 0190 4FF40061 mov r1, #2048 + 3808 0194 1E48 ldr r0, .L275 + 3809 0196 FFF7FEFF bl HAL_GPIO_WritePin + 3810 .LVL456: 3304:Src/main.c **** } -3305:Src/main.c **** if (SD_SLIDEAHB3RSTR, Periphs); 956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - ARM GAS /tmp/ccwR4KB7.s page 226 - - 957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 958:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** 959:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @brief Enable AHB3 peripheral clocks in low-power mode @@ -13515,6 +14458,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 968:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** */ 969:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __STATIC_INLINE void LL_AHB3_GRP1_EnableClockLowPower(uint32_t Periphs) 970:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { + ARM GAS /tmp/ccEQxcUB.s page 242 + + 971:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __IO uint32_t tmpreg; 972:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB3LPENR, Periphs); 973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ @@ -13558,9 +14504,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1011:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM13EN LL_APB1_GRP1_EnableClock\n 1012:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM14EN LL_APB1_GRP1_EnableClock\n 1013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR LPTIM1EN LL_APB1_GRP1_EnableClock\n - ARM GAS /tmp/ccwR4KB7.s page 227 - - 1014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR WWDGEN LL_APB1_GRP1_EnableClock\n 1015:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR SPI2EN LL_APB1_GRP1_EnableClock\n 1016:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR SPI3EN LL_APB1_GRP1_EnableClock\n @@ -13575,6 +14518,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1025:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR I2C4EN LL_APB1_GRP1_EnableClock\n 1026:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR CAN1EN LL_APB1_GRP1_EnableClock\n 1027:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR CAN2EN LL_APB1_GRP1_EnableClock\n + ARM GAS /tmp/ccEQxcUB.s page 243 + + 1028:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR CAN3EN LL_APB1_GRP1_EnableClock\n 1029:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR CECEN LL_APB1_GRP1_EnableClock\n 1030:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR PWREN LL_APB1_GRP1_EnableClock\n @@ -13618,9 +14564,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1068:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * (*) value not defined in all devices. 1069:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @retval None 1070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 228 - - 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __STATIC_INLINE void LL_APB1_GRP1_EnableClock(uint32_t Periphs) 1072:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { 1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __IO uint32_t tmpreg; @@ -13635,6 +14578,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1082:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @rmtoll APB1ENR TIM2EN LL_APB1_GRP1_IsEnabledClock\n 1083:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM3EN LL_APB1_GRP1_IsEnabledClock\n 1084:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM4EN LL_APB1_GRP1_IsEnabledClock\n + ARM GAS /tmp/ccEQxcUB.s page 244 + + 1085:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM5EN LL_APB1_GRP1_IsEnabledClock\n 1086:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM6EN LL_APB1_GRP1_IsEnabledClock\n 1087:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR TIM7EN LL_APB1_GRP1_IsEnabledClock\n @@ -13678,9 +14624,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPI2 1126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPI3 1127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPDIFRX (*) - ARM GAS /tmp/ccwR4KB7.s page 229 - - 1128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_USART2 1129:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_USART3 1130:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_UART4 @@ -13695,6 +14638,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CEC (*) 1140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_PWR 1141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_DAC1 + ARM GAS /tmp/ccEQxcUB.s page 245 + + 1142:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_UART7 1143:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_UART8 1144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_RTCAPB (*) @@ -13738,9 +14684,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR PWREN LL_APB1_GRP1_DisableClock\n 1183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR DACEN LL_APB1_GRP1_DisableClock\n 1184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR UART7EN LL_APB1_GRP1_DisableClock\n - ARM GAS /tmp/ccwR4KB7.s page 230 - - 1185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR UART8EN LL_APB1_GRP1_DisableClock\n 1186:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1ENR RTCEN LL_APB1_GRP1_DisableClock 1187:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @param Periphs This parameter can be a combination of the following values: @@ -13755,6 +14698,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1196:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM14 1197:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_LPTIM1 1198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_WWDG + ARM GAS /tmp/ccEQxcUB.s page 246 + + 1199:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPI2 1200:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPI3 1201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_SPDIFRX (*) @@ -13798,9 +14744,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR LPTIM1RST LL_APB1_GRP1_ForceReset\n 1240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR WWDGRST LL_APB1_GRP1_ForceReset\n 1241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPI2RST LL_APB1_GRP1_ForceReset\n - ARM GAS /tmp/ccwR4KB7.s page 231 - - 1242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPI3RST LL_APB1_GRP1_ForceReset\n 1243:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPDIFRXRST LL_APB1_GRP1_ForceReset\n 1244:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR USART2RST LL_APB1_GRP1_ForceReset\n @@ -13815,6 +14758,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1253:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR CAN2RST LL_APB1_GRP1_ForceReset\n 1254:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR CAN3RST LL_APB1_GRP1_ForceReset\n 1255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR CECRST LL_APB1_GRP1_ForceReset\n + ARM GAS /tmp/ccEQxcUB.s page 247 + + 1256:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR PWRRST LL_APB1_GRP1_ForceReset\n 1257:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR DACRST LL_APB1_GRP1_ForceReset\n 1258:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR UART7RST LL_APB1_GRP1_ForceReset\n @@ -13858,9 +14804,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { 1297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1RSTR, Periphs); 1298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - ARM GAS /tmp/ccwR4KB7.s page 232 - - 1299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 1300:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** 1301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @brief Release APB1 peripherals reset. @@ -13875,6 +14818,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR TIM14RST LL_APB1_GRP1_ReleaseReset\n 1311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR LPTIM1RST LL_APB1_GRP1_ReleaseReset\n 1312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR WWDGRST LL_APB1_GRP1_ReleaseReset\n + ARM GAS /tmp/ccEQxcUB.s page 248 + + 1313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPI2RST LL_APB1_GRP1_ReleaseReset\n 1314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPI3RST LL_APB1_GRP1_ReleaseReset\n 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1RSTR SPDIFRXRST LL_APB1_GRP1_ReleaseReset\n @@ -13918,9 +14864,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C3 1354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C4 (*) 1355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CAN1 - ARM GAS /tmp/ccwR4KB7.s page 233 - - 1356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CAN2 (*) 1357:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CAN3 (*) 1358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CEC (*) @@ -13935,6 +14878,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __STATIC_INLINE void LL_APB1_GRP1_ReleaseReset(uint32_t Periphs) 1368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { 1369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** CLEAR_BIT(RCC->APB1RSTR, Periphs); + ARM GAS /tmp/ccEQxcUB.s page 249 + + 1370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } 1371:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 1372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** @@ -13978,9 +14924,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1410:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM6 1411:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM7 1412:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM12 - ARM GAS /tmp/ccwR4KB7.s page 234 - - 1413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM13 1414:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM14 1415:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_LPTIM1 @@ -13995,6 +14938,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1424:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C1 1425:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C2 1426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C3 + ARM GAS /tmp/ccEQxcUB.s page 250 + + 1427:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_I2C4 (*) 1428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CAN1 1429:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_CAN2 (*) @@ -14038,9 +14984,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1467:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR USART3LPEN LL_APB1_GRP1_DisableClockLowPower\n 1468:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR UART4LPEN LL_APB1_GRP1_DisableClockLowPower\n 1469:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR UART5LPEN LL_APB1_GRP1_DisableClockLowPower\n - ARM GAS /tmp/ccwR4KB7.s page 235 - - 1470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR I2C1LPEN LL_APB1_GRP1_DisableClockLowPower\n 1471:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR I2C2LPEN LL_APB1_GRP1_DisableClockLowPower\n 1472:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR I2C3LPEN LL_APB1_GRP1_DisableClockLowPower\n @@ -14055,6 +14998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1481:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR UART8LPEN LL_APB1_GRP1_DisableClockLowPower\n 1482:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB1LPENR RTCLPEN LL_APB1_GRP1_DisableClockLowPower 1483:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @param Periphs This parameter can be a combination of the following values: + ARM GAS /tmp/ccEQxcUB.s page 251 + + 1484:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM2 1485:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM3 1486:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB1_GRP1_PERIPH_TIM4 @@ -14098,9 +15044,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1524:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** 1525:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @} 1526:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 236 - - 1527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** 1528:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /** @defgroup BUS_LL_EF_APB2 APB2 1529:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @{ @@ -14115,6 +15058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1538:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR ADC1EN LL_APB2_GRP1_EnableClock\n 1539:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR ADC2EN LL_APB2_GRP1_EnableClock\n 1540:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR ADC3EN LL_APB2_GRP1_EnableClock\n + ARM GAS /tmp/ccEQxcUB.s page 252 + + 1541:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR SDMMC1EN LL_APB2_GRP1_EnableClock\n 1542:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR SDMMC2EN LL_APB2_GRP1_EnableClock\n 1543:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * APB2ENR SPI1EN LL_APB2_GRP1_EnableClock\n @@ -14158,1394 +15104,1391 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB2_GRP1_PERIPH_MDIO (*) 1582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @arg @ref LL_APB2_GRP1_PERIPH_OTGPHYC (*) 1583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * - ARM GAS /tmp/ccwR4KB7.s page 237 - - 1584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * (*) value not defined in all devices. 1585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** * @retval None 1586:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** */ 1587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __STATIC_INLINE void LL_APB2_GRP1_EnableClock(uint32_t Periphs) - 4087 .loc 3 1587 22 view .LVU1260 - 4088 .LBB440: + 4571 .loc 3 1587 22 view .LVU1397 + 4572 .LBB476: 1588:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** __IO uint32_t tmpreg; - 4089 .loc 3 1589 3 view .LVU1261 + 4573 .loc 3 1589 3 view .LVU1398 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB2ENR, Periphs); - 4090 .loc 3 1590 3 view .LVU1262 - 4091 001e 2A4B ldr r3, .L262 - 4092 0020 5A6C ldr r2, [r3, #68] - 4093 0022 42F40052 orr r2, r2, #8192 - 4094 0026 5A64 str r2, [r3, #68] + 4574 .loc 3 1590 3 view .LVU1399 + 4575 001e 2A4B ldr r3, .L287 + 4576 0020 5A6C ldr r2, [r3, #68] + 4577 0022 42F40052 orr r2, r2, #8192 + ARM GAS /tmp/ccEQxcUB.s page 253 + + + 4578 0026 5A64 str r2, [r3, #68] 1591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** tmpreg = READ_BIT(RCC->APB2ENR, Periphs); - 4095 .loc 3 1592 3 view .LVU1263 - 4096 .loc 3 1592 12 is_stmt 0 view .LVU1264 - 4097 0028 5A6C ldr r2, [r3, #68] - 4098 002a 02F40052 and r2, r2, #8192 - 4099 .loc 3 1592 10 view .LVU1265 - 4100 002e 0192 str r2, [sp, #4] + 4579 .loc 3 1592 3 view .LVU1400 + 4580 .loc 3 1592 12 is_stmt 0 view .LVU1401 + 4581 0028 5A6C ldr r2, [r3, #68] + 4582 002a 02F40052 and r2, r2, #8192 + 4583 .loc 3 1592 10 view .LVU1402 + 4584 002e 0192 str r2, [sp, #4] 1593:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4101 .loc 3 1593 3 is_stmt 1 view .LVU1266 - 4102 0030 019A ldr r2, [sp, #4] - 4103 .LVL444: - 4104 .loc 3 1593 3 is_stmt 0 view .LVU1267 - 4105 .LBE440: - 4106 .LBE439: -1242:Src/main.c **** /**SPI4 GPIO Configuration - 4107 .loc 1 1242 3 is_stmt 1 view .LVU1268 - 4108 .LBB441: - 4109 .LBI441: + 4585 .loc 3 1593 3 is_stmt 1 view .LVU1403 + 4586 0030 019A ldr r2, [sp, #4] + 4587 .LVL506: + 4588 .loc 3 1593 3 is_stmt 0 view .LVU1404 + 4589 .LBE476: + 4590 .LBE475: +1338:Src/main.c **** /**SPI4 GPIO Configuration + 4591 .loc 1 1338 3 is_stmt 1 view .LVU1405 + 4592 .LBB477: + 4593 .LBI477: 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4110 .loc 3 309 22 view .LVU1269 - 4111 .LBB442: + 4594 .loc 3 309 22 view .LVU1406 + 4595 .LBB478: 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB1ENR, Periphs); - 4112 .loc 3 311 3 view .LVU1270 + 4596 .loc 3 311 3 view .LVU1407 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4113 .loc 3 312 3 view .LVU1271 - 4114 0032 1A6B ldr r2, [r3, #48] - 4115 0034 42F01002 orr r2, r2, #16 - 4116 0038 1A63 str r2, [r3, #48] + 4597 .loc 3 312 3 view .LVU1408 + 4598 0032 1A6B ldr r2, [r3, #48] + 4599 0034 42F01002 orr r2, r2, #16 + 4600 0038 1A63 str r2, [r3, #48] 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4117 .loc 3 314 3 view .LVU1272 + 4601 .loc 3 314 3 view .LVU1409 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4118 .loc 3 314 12 is_stmt 0 view .LVU1273 - 4119 003a 1B6B ldr r3, [r3, #48] - 4120 003c 03F01003 and r3, r3, #16 + 4602 .loc 3 314 12 is_stmt 0 view .LVU1410 + 4603 003a 1B6B ldr r3, [r3, #48] + 4604 003c 03F01003 and r3, r3, #16 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4121 .loc 3 314 10 view .LVU1274 - 4122 0040 0093 str r3, [sp] + 4605 .loc 3 314 10 view .LVU1411 + 4606 0040 0093 str r3, [sp] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4123 .loc 3 315 3 is_stmt 1 view .LVU1275 - 4124 0042 009B ldr r3, [sp] - 4125 .LVL445: - ARM GAS /tmp/ccwR4KB7.s page 238 + 4607 .loc 3 315 3 is_stmt 1 view .LVU1412 + 4608 0042 009B ldr r3, [sp] + 4609 .LVL507: + 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 4610 .loc 3 315 3 is_stmt 0 view .LVU1413 + 4611 .LBE478: + 4612 .LBE477: +1343:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4613 .loc 1 1343 3 is_stmt 1 view .LVU1414 +1343:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4614 .loc 1 1343 23 is_stmt 0 view .LVU1415 + 4615 0044 4FF48053 mov r3, #4096 + 4616 0048 0293 str r3, [sp, #8] +1344:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4617 .loc 1 1344 3 is_stmt 1 view .LVU1416 +1344:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4618 .loc 1 1344 24 is_stmt 0 view .LVU1417 + ARM GAS /tmp/ccEQxcUB.s page 254 - 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4126 .loc 3 315 3 is_stmt 0 view .LVU1276 - 4127 .LBE442: - 4128 .LBE441: -1247:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4129 .loc 1 1247 3 is_stmt 1 view .LVU1277 -1247:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4130 .loc 1 1247 23 is_stmt 0 view .LVU1278 - 4131 0044 4FF48053 mov r3, #4096 - 4132 0048 0293 str r3, [sp, #8] -1248:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4133 .loc 1 1248 3 is_stmt 1 view .LVU1279 -1248:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4134 .loc 1 1248 24 is_stmt 0 view .LVU1280 - 4135 004a 0225 movs r5, #2 - 4136 004c 0395 str r5, [sp, #12] -1249:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4137 .loc 1 1249 3 is_stmt 1 view .LVU1281 -1249:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4138 .loc 1 1249 25 is_stmt 0 view .LVU1282 - 4139 004e 4FF00308 mov r8, #3 - 4140 0052 CDF81080 str r8, [sp, #16] -1250:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4141 .loc 1 1250 3 is_stmt 1 view .LVU1283 -1251:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4142 .loc 1 1251 3 view .LVU1284 -1252:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 4143 .loc 1 1252 3 view .LVU1285 -1252:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 4144 .loc 1 1252 29 is_stmt 0 view .LVU1286 - 4145 0056 0527 movs r7, #5 - 4146 0058 0797 str r7, [sp, #28] + 4619 004a 0225 movs r5, #2 + 4620 004c 0395 str r5, [sp, #12] +1345:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4621 .loc 1 1345 3 is_stmt 1 view .LVU1418 +1345:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4622 .loc 1 1345 25 is_stmt 0 view .LVU1419 + 4623 004e 4FF00308 mov r8, #3 + 4624 0052 CDF81080 str r8, [sp, #16] +1346:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4625 .loc 1 1346 3 is_stmt 1 view .LVU1420 +1347:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4626 .loc 1 1347 3 view .LVU1421 +1348:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 4627 .loc 1 1348 3 view .LVU1422 +1348:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 4628 .loc 1 1348 29 is_stmt 0 view .LVU1423 + 4629 0056 0527 movs r7, #5 + 4630 0058 0797 str r7, [sp, #28] +1349:Src/main.c **** + 4631 .loc 1 1349 3 is_stmt 1 view .LVU1424 + 4632 005a 1C4E ldr r6, .L287+4 + 4633 005c 02A9 add r1, sp, #8 + 4634 005e 3046 mov r0, r6 + 4635 0060 FFF7FEFF bl LL_GPIO_Init + 4636 .LVL508: +1351:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4637 .loc 1 1351 3 view .LVU1425 +1351:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4638 .loc 1 1351 23 is_stmt 0 view .LVU1426 + 4639 0064 4FF40053 mov r3, #8192 + 4640 0068 0293 str r3, [sp, #8] +1352:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4641 .loc 1 1352 3 is_stmt 1 view .LVU1427 +1352:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4642 .loc 1 1352 24 is_stmt 0 view .LVU1428 + 4643 006a 0395 str r5, [sp, #12] +1353:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4644 .loc 1 1353 3 is_stmt 1 view .LVU1429 +1353:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4645 .loc 1 1353 25 is_stmt 0 view .LVU1430 + 4646 006c CDF81080 str r8, [sp, #16] +1354:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4647 .loc 1 1354 3 is_stmt 1 view .LVU1431 +1354:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4648 .loc 1 1354 30 is_stmt 0 view .LVU1432 + 4649 0070 0594 str r4, [sp, #20] +1355:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4650 .loc 1 1355 3 is_stmt 1 view .LVU1433 +1355:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4651 .loc 1 1355 24 is_stmt 0 view .LVU1434 + 4652 0072 0694 str r4, [sp, #24] +1356:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 4653 .loc 1 1356 3 is_stmt 1 view .LVU1435 +1356:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 4654 .loc 1 1356 29 is_stmt 0 view .LVU1436 + 4655 0074 0797 str r7, [sp, #28] +1357:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 255 + + + 4656 .loc 1 1357 3 is_stmt 1 view .LVU1437 + 4657 0076 02A9 add r1, sp, #8 + 4658 0078 3046 mov r0, r6 + 4659 007a FFF7FEFF bl LL_GPIO_Init + 4660 .LVL509: +1363:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 4661 .loc 1 1363 3 view .LVU1438 +1363:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 4662 .loc 1 1363 36 is_stmt 0 view .LVU1439 + 4663 007e 4FF48063 mov r3, #1024 + 4664 0082 0893 str r3, [sp, #32] +1364:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 4665 .loc 1 1364 3 is_stmt 1 view .LVU1440 +1364:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 4666 .loc 1 1364 23 is_stmt 0 view .LVU1441 + 4667 0084 4FF48273 mov r3, #260 + 4668 0088 0993 str r3, [sp, #36] +1365:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 4669 .loc 1 1365 3 is_stmt 1 view .LVU1442 +1365:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 4670 .loc 1 1365 28 is_stmt 0 view .LVU1443 + 4671 008a 4FF47063 mov r3, #3840 + 4672 008e 0A93 str r3, [sp, #40] +1366:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 4673 .loc 1 1366 3 is_stmt 1 view .LVU1444 +1366:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 4674 .loc 1 1366 32 is_stmt 0 view .LVU1445 + 4675 0090 0B95 str r5, [sp, #44] +1367:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 4676 .loc 1 1367 3 is_stmt 1 view .LVU1446 +1367:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 4677 .loc 1 1367 29 is_stmt 0 view .LVU1447 + 4678 0092 0C94 str r4, [sp, #48] +1368:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 4679 .loc 1 1368 3 is_stmt 1 view .LVU1448 +1368:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 4680 .loc 1 1368 22 is_stmt 0 view .LVU1449 + 4681 0094 4FF40073 mov r3, #512 + 4682 0098 0D93 str r3, [sp, #52] +1369:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 4683 .loc 1 1369 3 is_stmt 1 view .LVU1450 +1369:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 4684 .loc 1 1369 27 is_stmt 0 view .LVU1451 + 4685 009a 1823 movs r3, #24 + 4686 009c 0E93 str r3, [sp, #56] +1370:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 4687 .loc 1 1370 3 is_stmt 1 view .LVU1452 +1370:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 4688 .loc 1 1370 27 is_stmt 0 view .LVU1453 + 4689 009e 0F94 str r4, [sp, #60] +1371:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 4690 .loc 1 1371 3 is_stmt 1 view .LVU1454 +1371:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 4691 .loc 1 1371 33 is_stmt 0 view .LVU1455 + 4692 00a0 1094 str r4, [sp, #64] +1372:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); + 4693 .loc 1 1372 3 is_stmt 1 view .LVU1456 + ARM GAS /tmp/ccEQxcUB.s page 256 + + +1372:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); + 4694 .loc 1 1372 26 is_stmt 0 view .LVU1457 + 4695 00a2 0723 movs r3, #7 + 4696 00a4 1193 str r3, [sp, #68] +1373:Src/main.c **** LL_SPI_SetStandard(SPI4, LL_SPI_PROTOCOL_MOTOROLA); + 4697 .loc 1 1373 3 is_stmt 1 view .LVU1458 + 4698 00a6 0A4C ldr r4, .L287+8 + 4699 00a8 08A9 add r1, sp, #32 + 4700 00aa 2046 mov r0, r4 + 4701 00ac FFF7FEFF bl LL_SPI_Init + 4702 .LVL510: +1374:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI4); + 4703 .loc 1 1374 3 view .LVU1459 + 4704 .LBB479: + 4705 .LBI479: + 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 4706 .loc 4 426 22 view .LVU1460 + 4707 .LBB480: + 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 4708 .loc 4 428 3 view .LVU1461 + 4709 00b0 6368 ldr r3, [r4, #4] + 4710 00b2 23F01003 bic r3, r3, #16 + 4711 00b6 6360 str r3, [r4, #4] + 4712 .LVL511: + 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 4713 .loc 4 428 3 is_stmt 0 view .LVU1462 + 4714 .LBE480: + 4715 .LBE479: +1375:Src/main.c **** /* USER CODE BEGIN SPI4_Init 2 */ + 4716 .loc 1 1375 3 is_stmt 1 view .LVU1463 + 4717 .LBB481: + 4718 .LBI481: + 874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 4719 .loc 4 874 22 view .LVU1464 + 4720 .LBB482: + 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 4721 .loc 4 876 3 view .LVU1465 + 4722 00b8 6368 ldr r3, [r4, #4] + 4723 00ba 23F00803 bic r3, r3, #8 + 4724 00be 6360 str r3, [r4, #4] + 4725 .LVL512: + 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 4726 .loc 4 876 3 is_stmt 0 view .LVU1466 + 4727 .LBE482: + 4728 .LBE481: +1380:Src/main.c **** + 4729 .loc 1 1380 1 view .LVU1467 + 4730 00c0 12B0 add sp, sp, #72 + 4731 .LCFI42: + 4732 .cfi_def_cfa_offset 24 + 4733 @ sp needed + 4734 00c2 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 4735 .L288: + 4736 00c6 00BF .align 2 + 4737 .L287: + 4738 00c8 00380240 .word 1073887232 + 4739 00cc 00100240 .word 1073876992 + ARM GAS /tmp/ccEQxcUB.s page 257 + + + 4740 00d0 00340140 .word 1073820672 + 4741 .cfi_endproc + 4742 .LFE1192: + 4744 .section .text.MX_SPI2_Init,"ax",%progbits + 4745 .align 1 + 4746 .syntax unified + 4747 .thumb + 4748 .thumb_func + 4750 MX_SPI2_Init: + 4751 .LFB1191: 1253:Src/main.c **** - 4147 .loc 1 1253 3 is_stmt 1 view .LVU1287 - 4148 005a 1C4E ldr r6, .L262+4 - 4149 005c 02A9 add r1, sp, #8 - 4150 005e 3046 mov r0, r6 - 4151 0060 FFF7FEFF bl LL_GPIO_Init - 4152 .LVL446: -1255:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4153 .loc 1 1255 3 view .LVU1288 -1255:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4154 .loc 1 1255 23 is_stmt 0 view .LVU1289 - 4155 0064 4FF40053 mov r3, #8192 - 4156 0068 0293 str r3, [sp, #8] -1256:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4157 .loc 1 1256 3 is_stmt 1 view .LVU1290 -1256:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4158 .loc 1 1256 24 is_stmt 0 view .LVU1291 - 4159 006a 0395 str r5, [sp, #12] -1257:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4160 .loc 1 1257 3 is_stmt 1 view .LVU1292 -1257:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4161 .loc 1 1257 25 is_stmt 0 view .LVU1293 - 4162 006c CDF81080 str r8, [sp, #16] -1258:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4163 .loc 1 1258 3 is_stmt 1 view .LVU1294 - ARM GAS /tmp/ccwR4KB7.s page 239 - - -1258:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4164 .loc 1 1258 30 is_stmt 0 view .LVU1295 - 4165 0070 0594 str r4, [sp, #20] -1259:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4166 .loc 1 1259 3 is_stmt 1 view .LVU1296 -1259:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4167 .loc 1 1259 24 is_stmt 0 view .LVU1297 - 4168 0072 0694 str r4, [sp, #24] -1260:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 4169 .loc 1 1260 3 is_stmt 1 view .LVU1298 -1260:Src/main.c **** LL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 4170 .loc 1 1260 29 is_stmt 0 view .LVU1299 - 4171 0074 0797 str r7, [sp, #28] + 4752 .loc 1 1253 1 is_stmt 1 view -0 + 4753 .cfi_startproc + 4754 @ args = 0, pretend = 0, frame = 72 + 4755 @ frame_needed = 0, uses_anonymous_args = 0 + 4756 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 4757 .LCFI43: + 4758 .cfi_def_cfa_offset 24 + 4759 .cfi_offset 4, -24 + 4760 .cfi_offset 5, -20 + 4761 .cfi_offset 6, -16 + 4762 .cfi_offset 7, -12 + 4763 .cfi_offset 8, -8 + 4764 .cfi_offset 14, -4 + 4765 0004 92B0 sub sp, sp, #72 + 4766 .LCFI44: + 4767 .cfi_def_cfa_offset 96 +1259:Src/main.c **** + 4768 .loc 1 1259 3 view .LVU1469 +1259:Src/main.c **** + 4769 .loc 1 1259 22 is_stmt 0 view .LVU1470 + 4770 0006 2822 movs r2, #40 + 4771 0008 0021 movs r1, #0 + 4772 000a 08A8 add r0, sp, #32 + 4773 000c FFF7FEFF bl memset + 4774 .LVL513: 1261:Src/main.c **** - 4172 .loc 1 1261 3 is_stmt 1 view .LVU1300 - 4173 0076 02A9 add r1, sp, #8 - 4174 0078 3046 mov r0, r6 - 4175 007a FFF7FEFF bl LL_GPIO_Init - 4176 .LVL447: -1267:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4177 .loc 1 1267 3 view .LVU1301 -1267:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4178 .loc 1 1267 36 is_stmt 0 view .LVU1302 - 4179 007e 4FF48063 mov r3, #1024 - 4180 0082 0893 str r3, [sp, #32] -1268:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4181 .loc 1 1268 3 is_stmt 1 view .LVU1303 -1268:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4182 .loc 1 1268 23 is_stmt 0 view .LVU1304 - 4183 0084 4FF48273 mov r3, #260 - 4184 0088 0993 str r3, [sp, #36] -1269:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4185 .loc 1 1269 3 is_stmt 1 view .LVU1305 -1269:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4186 .loc 1 1269 28 is_stmt 0 view .LVU1306 - 4187 008a 4FF47063 mov r3, #3840 - 4188 008e 0A93 str r3, [sp, #40] -1270:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4189 .loc 1 1270 3 is_stmt 1 view .LVU1307 -1270:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4190 .loc 1 1270 32 is_stmt 0 view .LVU1308 - 4191 0090 0B95 str r5, [sp, #44] -1271:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4192 .loc 1 1271 3 is_stmt 1 view .LVU1309 -1271:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4193 .loc 1 1271 29 is_stmt 0 view .LVU1310 - 4194 0092 0C94 str r4, [sp, #48] -1272:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4195 .loc 1 1272 3 is_stmt 1 view .LVU1311 -1272:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4196 .loc 1 1272 22 is_stmt 0 view .LVU1312 - 4197 0094 4FF40073 mov r3, #512 - 4198 0098 0D93 str r3, [sp, #52] -1273:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4199 .loc 1 1273 3 is_stmt 1 view .LVU1313 -1273:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4200 .loc 1 1273 27 is_stmt 0 view .LVU1314 - ARM GAS /tmp/ccwR4KB7.s page 240 - - - 4201 009a 1823 movs r3, #24 - 4202 009c 0E93 str r3, [sp, #56] -1274:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4203 .loc 1 1274 3 is_stmt 1 view .LVU1315 -1274:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4204 .loc 1 1274 27 is_stmt 0 view .LVU1316 - 4205 009e 0F94 str r4, [sp, #60] -1275:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4206 .loc 1 1275 3 is_stmt 1 view .LVU1317 -1275:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4207 .loc 1 1275 33 is_stmt 0 view .LVU1318 - 4208 00a0 1094 str r4, [sp, #64] -1276:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); - 4209 .loc 1 1276 3 is_stmt 1 view .LVU1319 -1276:Src/main.c **** LL_SPI_Init(SPI4, &SPI_InitStruct); - 4210 .loc 1 1276 26 is_stmt 0 view .LVU1320 - 4211 00a2 0723 movs r3, #7 - 4212 00a4 1193 str r3, [sp, #68] -1277:Src/main.c **** LL_SPI_SetStandard(SPI4, LL_SPI_PROTOCOL_MOTOROLA); - 4213 .loc 1 1277 3 is_stmt 1 view .LVU1321 - 4214 00a6 0A4C ldr r4, .L262+8 - 4215 00a8 08A9 add r1, sp, #32 - 4216 00aa 2046 mov r0, r4 - 4217 00ac FFF7FEFF bl LL_SPI_Init - 4218 .LVL448: -1278:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI4); - 4219 .loc 1 1278 3 view .LVU1322 - 4220 .LBB443: - 4221 .LBI443: - 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4222 .loc 4 426 22 view .LVU1323 - 4223 .LBB444: - 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4224 .loc 4 428 3 view .LVU1324 - 4225 00b0 6368 ldr r3, [r4, #4] - 4226 00b2 23F01003 bic r3, r3, #16 - 4227 00b6 6360 str r3, [r4, #4] - 4228 .LVL449: - 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4229 .loc 4 428 3 is_stmt 0 view .LVU1325 - 4230 .LBE444: - 4231 .LBE443: -1279:Src/main.c **** /* USER CODE BEGIN SPI4_Init 2 */ - 4232 .loc 1 1279 3 is_stmt 1 view .LVU1326 - 4233 .LBB445: - 4234 .LBI445: - 874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4235 .loc 4 874 22 view .LVU1327 - 4236 .LBB446: - 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4237 .loc 4 876 3 view .LVU1328 - 4238 00b8 6368 ldr r3, [r4, #4] - 4239 00ba 23F00803 bic r3, r3, #8 - 4240 00be 6360 str r3, [r4, #4] - 4241 .LVL450: - 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4242 .loc 4 876 3 is_stmt 0 view .LVU1329 - ARM GAS /tmp/ccwR4KB7.s page 241 - - - 4243 .LBE446: - 4244 .LBE445: -1284:Src/main.c **** - 4245 .loc 1 1284 1 view .LVU1330 - 4246 00c0 12B0 add sp, sp, #72 - 4247 .LCFI40: - 4248 .cfi_def_cfa_offset 24 - 4249 @ sp needed - 4250 00c2 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 4251 .L263: - 4252 00c6 00BF .align 2 - 4253 .L262: - 4254 00c8 00380240 .word 1073887232 - 4255 00cc 00100240 .word 1073876992 - 4256 00d0 00340140 .word 1073820672 - 4257 .cfi_endproc - 4258 .LFE1192: - 4260 .section .text.MX_SPI2_Init,"ax",%progbits - 4261 .align 1 - 4262 .syntax unified - 4263 .thumb - 4264 .thumb_func - 4266 MX_SPI2_Init: - 4267 .LFB1191: -1157:Src/main.c **** - 4268 .loc 1 1157 1 is_stmt 1 view -0 - 4269 .cfi_startproc - 4270 @ args = 0, pretend = 0, frame = 72 - 4271 @ frame_needed = 0, uses_anonymous_args = 0 - 4272 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 4273 .LCFI41: - 4274 .cfi_def_cfa_offset 24 - 4275 .cfi_offset 4, -24 - 4276 .cfi_offset 5, -20 - 4277 .cfi_offset 6, -16 - 4278 .cfi_offset 7, -12 - 4279 .cfi_offset 8, -8 - 4280 .cfi_offset 14, -4 - 4281 0004 92B0 sub sp, sp, #72 - 4282 .LCFI42: - 4283 .cfi_def_cfa_offset 96 -1163:Src/main.c **** - 4284 .loc 1 1163 3 view .LVU1332 -1163:Src/main.c **** - 4285 .loc 1 1163 22 is_stmt 0 view .LVU1333 - 4286 0006 2822 movs r2, #40 - 4287 0008 0021 movs r1, #0 - 4288 000a 08A8 add r0, sp, #32 - 4289 000c FFF7FEFF bl memset - 4290 .LVL451: -1165:Src/main.c **** - 4291 .loc 1 1165 3 is_stmt 1 view .LVU1334 -1165:Src/main.c **** - 4292 .loc 1 1165 23 is_stmt 0 view .LVU1335 - 4293 0010 0024 movs r4, #0 - 4294 0012 0294 str r4, [sp, #8] - 4295 0014 0394 str r4, [sp, #12] - ARM GAS /tmp/ccwR4KB7.s page 242 - - - 4296 0016 0494 str r4, [sp, #16] - 4297 0018 0594 str r4, [sp, #20] - 4298 001a 0694 str r4, [sp, #24] - 4299 001c 0794 str r4, [sp, #28] -1168:Src/main.c **** - 4300 .loc 1 1168 3 is_stmt 1 view .LVU1336 - 4301 .LVL452: - 4302 .LBB447: - 4303 .LBI447: + 4775 .loc 1 1261 3 is_stmt 1 view .LVU1471 +1261:Src/main.c **** + 4776 .loc 1 1261 23 is_stmt 0 view .LVU1472 + 4777 0010 0024 movs r4, #0 + 4778 0012 0294 str r4, [sp, #8] + 4779 0014 0394 str r4, [sp, #12] + 4780 0016 0494 str r4, [sp, #16] + 4781 0018 0594 str r4, [sp, #20] + 4782 001a 0694 str r4, [sp, #24] + 4783 001c 0794 str r4, [sp, #28] +1264:Src/main.c **** + 4784 .loc 1 1264 3 is_stmt 1 view .LVU1473 + 4785 .LVL514: + 4786 .LBB483: + 4787 .LBI483: 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4304 .loc 3 1071 22 view .LVU1337 - 4305 .LBB448: + 4788 .loc 3 1071 22 view .LVU1474 + 4789 .LBB484: 1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); - 4306 .loc 3 1073 3 view .LVU1338 + 4790 .loc 3 1073 3 view .LVU1475 + ARM GAS /tmp/ccEQxcUB.s page 258 + + 1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4307 .loc 3 1074 3 view .LVU1339 - 4308 001e 2F4B ldr r3, .L266 - 4309 0020 1A6C ldr r2, [r3, #64] - 4310 0022 42F48042 orr r2, r2, #16384 - 4311 0026 1A64 str r2, [r3, #64] + 4791 .loc 3 1074 3 view .LVU1476 + 4792 001e 2F4B ldr r3, .L291 + 4793 0020 1A6C ldr r2, [r3, #64] + 4794 0022 42F48042 orr r2, r2, #16384 + 4795 0026 1A64 str r2, [r3, #64] 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4312 .loc 3 1076 3 view .LVU1340 + 4796 .loc 3 1076 3 view .LVU1477 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4313 .loc 3 1076 12 is_stmt 0 view .LVU1341 - 4314 0028 1A6C ldr r2, [r3, #64] - 4315 002a 02F48042 and r2, r2, #16384 + 4797 .loc 3 1076 12 is_stmt 0 view .LVU1478 + 4798 0028 1A6C ldr r2, [r3, #64] + 4799 002a 02F48042 and r2, r2, #16384 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4316 .loc 3 1076 10 view .LVU1342 - 4317 002e 0192 str r2, [sp, #4] + 4800 .loc 3 1076 10 view .LVU1479 + 4801 002e 0192 str r2, [sp, #4] 1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4318 .loc 3 1077 3 is_stmt 1 view .LVU1343 - 4319 0030 019A ldr r2, [sp, #4] - 4320 .LVL453: + 4802 .loc 3 1077 3 is_stmt 1 view .LVU1480 + 4803 0030 019A ldr r2, [sp, #4] + 4804 .LVL515: 1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4321 .loc 3 1077 3 is_stmt 0 view .LVU1344 - 4322 .LBE448: - 4323 .LBE447: -1170:Src/main.c **** /**SPI2 GPIO Configuration - 4324 .loc 1 1170 3 is_stmt 1 view .LVU1345 - 4325 .LBB449: - 4326 .LBI449: + 4805 .loc 3 1077 3 is_stmt 0 view .LVU1481 + 4806 .LBE484: + 4807 .LBE483: +1266:Src/main.c **** /**SPI2 GPIO Configuration + 4808 .loc 1 1266 3 is_stmt 1 view .LVU1482 + 4809 .LBB485: + 4810 .LBI485: 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4327 .loc 3 309 22 view .LVU1346 - 4328 .LBB450: + 4811 .loc 3 309 22 view .LVU1483 + 4812 .LBB486: 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB1ENR, Periphs); - 4329 .loc 3 311 3 view .LVU1347 + 4813 .loc 3 311 3 view .LVU1484 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4330 .loc 3 312 3 view .LVU1348 - 4331 0032 1A6B ldr r2, [r3, #48] - 4332 0034 42F00202 orr r2, r2, #2 - 4333 0038 1A63 str r2, [r3, #48] + 4814 .loc 3 312 3 view .LVU1485 + 4815 0032 1A6B ldr r2, [r3, #48] + 4816 0034 42F00202 orr r2, r2, #2 + 4817 0038 1A63 str r2, [r3, #48] 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4334 .loc 3 314 3 view .LVU1349 + 4818 .loc 3 314 3 view .LVU1486 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4335 .loc 3 314 12 is_stmt 0 view .LVU1350 - 4336 003a 1B6B ldr r3, [r3, #48] - 4337 003c 03F00203 and r3, r3, #2 - ARM GAS /tmp/ccwR4KB7.s page 243 - - + 4819 .loc 3 314 12 is_stmt 0 view .LVU1487 + 4820 003a 1B6B ldr r3, [r3, #48] + 4821 003c 03F00203 and r3, r3, #2 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4338 .loc 3 314 10 view .LVU1351 - 4339 0040 0093 str r3, [sp] + 4822 .loc 3 314 10 view .LVU1488 + 4823 0040 0093 str r3, [sp] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4340 .loc 3 315 3 is_stmt 1 view .LVU1352 - 4341 0042 009B ldr r3, [sp] - 4342 .LVL454: + 4824 .loc 3 315 3 is_stmt 1 view .LVU1489 + 4825 0042 009B ldr r3, [sp] + 4826 .LVL516: 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4343 .loc 3 315 3 is_stmt 0 view .LVU1353 - 4344 .LBE450: - 4345 .LBE449: -1176:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4346 .loc 1 1176 3 is_stmt 1 view .LVU1354 -1176:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4347 .loc 1 1176 23 is_stmt 0 view .LVU1355 - 4348 0044 4FF40053 mov r3, #8192 - 4349 0048 0293 str r3, [sp, #8] -1177:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4350 .loc 1 1177 3 is_stmt 1 view .LVU1356 -1177:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4351 .loc 1 1177 24 is_stmt 0 view .LVU1357 - 4352 004a 4FF00208 mov r8, #2 - 4353 004e CDF80C80 str r8, [sp, #12] -1178:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4354 .loc 1 1178 3 is_stmt 1 view .LVU1358 -1178:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4355 .loc 1 1178 25 is_stmt 0 view .LVU1359 - 4356 0052 0327 movs r7, #3 - 4357 0054 0497 str r7, [sp, #16] -1179:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4358 .loc 1 1179 3 is_stmt 1 view .LVU1360 -1180:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4359 .loc 1 1180 3 view .LVU1361 -1181:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4360 .loc 1 1181 3 view .LVU1362 -1181:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4361 .loc 1 1181 29 is_stmt 0 view .LVU1363 - 4362 0056 0526 movs r6, #5 - 4363 0058 0796 str r6, [sp, #28] -1182:Src/main.c **** - 4364 .loc 1 1182 3 is_stmt 1 view .LVU1364 - 4365 005a 214D ldr r5, .L266+4 - 4366 005c 02A9 add r1, sp, #8 - 4367 005e 2846 mov r0, r5 - 4368 0060 FFF7FEFF bl LL_GPIO_Init - 4369 .LVL455: -1184:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4370 .loc 1 1184 3 view .LVU1365 -1184:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4371 .loc 1 1184 23 is_stmt 0 view .LVU1366 - 4372 0064 4FF48043 mov r3, #16384 - 4373 0068 0293 str r3, [sp, #8] -1185:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4374 .loc 1 1185 3 is_stmt 1 view .LVU1367 -1185:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4375 .loc 1 1185 24 is_stmt 0 view .LVU1368 - 4376 006a CDF80C80 str r8, [sp, #12] - ARM GAS /tmp/ccwR4KB7.s page 244 + 4827 .loc 3 315 3 is_stmt 0 view .LVU1490 + 4828 .LBE486: + 4829 .LBE485: +1272:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4830 .loc 1 1272 3 is_stmt 1 view .LVU1491 +1272:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + ARM GAS /tmp/ccEQxcUB.s page 259 -1186:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4377 .loc 1 1186 3 is_stmt 1 view .LVU1369 -1186:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4378 .loc 1 1186 25 is_stmt 0 view .LVU1370 - 4379 006e 0497 str r7, [sp, #16] -1187:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4380 .loc 1 1187 3 is_stmt 1 view .LVU1371 -1187:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4381 .loc 1 1187 30 is_stmt 0 view .LVU1372 - 4382 0070 0594 str r4, [sp, #20] -1188:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4383 .loc 1 1188 3 is_stmt 1 view .LVU1373 -1188:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4384 .loc 1 1188 24 is_stmt 0 view .LVU1374 - 4385 0072 0694 str r4, [sp, #24] -1189:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4386 .loc 1 1189 3 is_stmt 1 view .LVU1375 -1189:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4387 .loc 1 1189 29 is_stmt 0 view .LVU1376 - 4388 0074 0796 str r6, [sp, #28] -1190:Src/main.c **** - 4389 .loc 1 1190 3 is_stmt 1 view .LVU1377 - 4390 0076 02A9 add r1, sp, #8 - 4391 0078 2846 mov r0, r5 - 4392 007a FFF7FEFF bl LL_GPIO_Init - 4393 .LVL456: -1192:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4394 .loc 1 1192 3 view .LVU1378 -1192:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4395 .loc 1 1192 23 is_stmt 0 view .LVU1379 - 4396 007e 4FF40043 mov r3, #32768 - 4397 0082 0293 str r3, [sp, #8] -1193:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4398 .loc 1 1193 3 is_stmt 1 view .LVU1380 -1193:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4399 .loc 1 1193 24 is_stmt 0 view .LVU1381 - 4400 0084 CDF80C80 str r8, [sp, #12] -1194:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4401 .loc 1 1194 3 is_stmt 1 view .LVU1382 -1194:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4402 .loc 1 1194 25 is_stmt 0 view .LVU1383 - 4403 0088 0497 str r7, [sp, #16] -1195:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4404 .loc 1 1195 3 is_stmt 1 view .LVU1384 -1195:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4405 .loc 1 1195 30 is_stmt 0 view .LVU1385 - 4406 008a 0594 str r4, [sp, #20] -1196:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4407 .loc 1 1196 3 is_stmt 1 view .LVU1386 -1196:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4408 .loc 1 1196 24 is_stmt 0 view .LVU1387 - 4409 008c 0694 str r4, [sp, #24] -1197:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4410 .loc 1 1197 3 is_stmt 1 view .LVU1388 -1197:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 4411 .loc 1 1197 29 is_stmt 0 view .LVU1389 - 4412 008e 0796 str r6, [sp, #28] - ARM GAS /tmp/ccwR4KB7.s page 245 + 4831 .loc 1 1272 23 is_stmt 0 view .LVU1492 + 4832 0044 4FF40053 mov r3, #8192 + 4833 0048 0293 str r3, [sp, #8] +1273:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4834 .loc 1 1273 3 is_stmt 1 view .LVU1493 +1273:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4835 .loc 1 1273 24 is_stmt 0 view .LVU1494 + 4836 004a 4FF00208 mov r8, #2 + 4837 004e CDF80C80 str r8, [sp, #12] +1274:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4838 .loc 1 1274 3 is_stmt 1 view .LVU1495 +1274:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4839 .loc 1 1274 25 is_stmt 0 view .LVU1496 + 4840 0052 0327 movs r7, #3 + 4841 0054 0497 str r7, [sp, #16] +1275:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4842 .loc 1 1275 3 is_stmt 1 view .LVU1497 +1276:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4843 .loc 1 1276 3 view .LVU1498 +1277:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4844 .loc 1 1277 3 view .LVU1499 +1277:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4845 .loc 1 1277 29 is_stmt 0 view .LVU1500 + 4846 0056 0526 movs r6, #5 + 4847 0058 0796 str r6, [sp, #28] +1278:Src/main.c **** + 4848 .loc 1 1278 3 is_stmt 1 view .LVU1501 + 4849 005a 214D ldr r5, .L291+4 + 4850 005c 02A9 add r1, sp, #8 + 4851 005e 2846 mov r0, r5 + 4852 0060 FFF7FEFF bl LL_GPIO_Init + 4853 .LVL517: +1280:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4854 .loc 1 1280 3 view .LVU1502 +1280:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4855 .loc 1 1280 23 is_stmt 0 view .LVU1503 + 4856 0064 4FF48043 mov r3, #16384 + 4857 0068 0293 str r3, [sp, #8] +1281:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4858 .loc 1 1281 3 is_stmt 1 view .LVU1504 +1281:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4859 .loc 1 1281 24 is_stmt 0 view .LVU1505 + 4860 006a CDF80C80 str r8, [sp, #12] +1282:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4861 .loc 1 1282 3 is_stmt 1 view .LVU1506 +1282:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4862 .loc 1 1282 25 is_stmt 0 view .LVU1507 + 4863 006e 0497 str r7, [sp, #16] +1283:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4864 .loc 1 1283 3 is_stmt 1 view .LVU1508 +1283:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4865 .loc 1 1283 30 is_stmt 0 view .LVU1509 + 4866 0070 0594 str r4, [sp, #20] +1284:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4867 .loc 1 1284 3 is_stmt 1 view .LVU1510 +1284:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4868 .loc 1 1284 24 is_stmt 0 view .LVU1511 + ARM GAS /tmp/ccEQxcUB.s page 260 -1198:Src/main.c **** - 4413 .loc 1 1198 3 is_stmt 1 view .LVU1390 - 4414 0090 02A9 add r1, sp, #8 - 4415 0092 2846 mov r0, r5 - 4416 0094 FFF7FEFF bl LL_GPIO_Init - 4417 .LVL457: -1204:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4418 .loc 1 1204 3 view .LVU1391 -1204:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4419 .loc 1 1204 36 is_stmt 0 view .LVU1392 - 4420 0098 0894 str r4, [sp, #32] -1205:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4421 .loc 1 1205 3 is_stmt 1 view .LVU1393 -1205:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4422 .loc 1 1205 23 is_stmt 0 view .LVU1394 - 4423 009a 4FF48273 mov r3, #260 - 4424 009e 0993 str r3, [sp, #36] -1206:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; - 4425 .loc 1 1206 3 is_stmt 1 view .LVU1395 -1206:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; - 4426 .loc 1 1206 28 is_stmt 0 view .LVU1396 - 4427 00a0 4FF47063 mov r3, #3840 - 4428 00a4 0A93 str r3, [sp, #40] -1207:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4429 .loc 1 1207 3 is_stmt 1 view .LVU1397 -1207:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4430 .loc 1 1207 32 is_stmt 0 view .LVU1398 - 4431 00a6 0B94 str r4, [sp, #44] -1208:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4432 .loc 1 1208 3 is_stmt 1 view .LVU1399 -1208:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4433 .loc 1 1208 29 is_stmt 0 view .LVU1400 - 4434 00a8 0C94 str r4, [sp, #48] -1209:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; - 4435 .loc 1 1209 3 is_stmt 1 view .LVU1401 -1209:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; - 4436 .loc 1 1209 22 is_stmt 0 view .LVU1402 - 4437 00aa 4FF40073 mov r3, #512 - 4438 00ae 0D93 str r3, [sp, #52] -1210:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4439 .loc 1 1210 3 is_stmt 1 view .LVU1403 -1210:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4440 .loc 1 1210 27 is_stmt 0 view .LVU1404 - 4441 00b0 1023 movs r3, #16 - 4442 00b2 0E93 str r3, [sp, #56] -1211:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4443 .loc 1 1211 3 is_stmt 1 view .LVU1405 -1211:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4444 .loc 1 1211 27 is_stmt 0 view .LVU1406 - 4445 00b4 0F94 str r4, [sp, #60] -1212:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4446 .loc 1 1212 3 is_stmt 1 view .LVU1407 -1212:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4447 .loc 1 1212 33 is_stmt 0 view .LVU1408 - 4448 00b6 1094 str r4, [sp, #64] -1213:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); - 4449 .loc 1 1213 3 is_stmt 1 view .LVU1409 - ARM GAS /tmp/ccwR4KB7.s page 246 + 4869 0072 0694 str r4, [sp, #24] +1285:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4870 .loc 1 1285 3 is_stmt 1 view .LVU1512 +1285:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4871 .loc 1 1285 29 is_stmt 0 view .LVU1513 + 4872 0074 0796 str r6, [sp, #28] +1286:Src/main.c **** + 4873 .loc 1 1286 3 is_stmt 1 view .LVU1514 + 4874 0076 02A9 add r1, sp, #8 + 4875 0078 2846 mov r0, r5 + 4876 007a FFF7FEFF bl LL_GPIO_Init + 4877 .LVL518: +1288:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4878 .loc 1 1288 3 view .LVU1515 +1288:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 4879 .loc 1 1288 23 is_stmt 0 view .LVU1516 + 4880 007e 4FF40043 mov r3, #32768 + 4881 0082 0293 str r3, [sp, #8] +1289:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4882 .loc 1 1289 3 is_stmt 1 view .LVU1517 +1289:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 4883 .loc 1 1289 24 is_stmt 0 view .LVU1518 + 4884 0084 CDF80C80 str r8, [sp, #12] +1290:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4885 .loc 1 1290 3 is_stmt 1 view .LVU1519 +1290:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 4886 .loc 1 1290 25 is_stmt 0 view .LVU1520 + 4887 0088 0497 str r7, [sp, #16] +1291:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4888 .loc 1 1291 3 is_stmt 1 view .LVU1521 +1291:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 4889 .loc 1 1291 30 is_stmt 0 view .LVU1522 + 4890 008a 0594 str r4, [sp, #20] +1292:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4891 .loc 1 1292 3 is_stmt 1 view .LVU1523 +1292:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 4892 .loc 1 1292 24 is_stmt 0 view .LVU1524 + 4893 008c 0694 str r4, [sp, #24] +1293:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4894 .loc 1 1293 3 is_stmt 1 view .LVU1525 +1293:Src/main.c **** LL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 4895 .loc 1 1293 29 is_stmt 0 view .LVU1526 + 4896 008e 0796 str r6, [sp, #28] +1294:Src/main.c **** + 4897 .loc 1 1294 3 is_stmt 1 view .LVU1527 + 4898 0090 02A9 add r1, sp, #8 + 4899 0092 2846 mov r0, r5 + 4900 0094 FFF7FEFF bl LL_GPIO_Init + 4901 .LVL519: +1300:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 4902 .loc 1 1300 3 view .LVU1528 +1300:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 4903 .loc 1 1300 36 is_stmt 0 view .LVU1529 + 4904 0098 0894 str r4, [sp, #32] +1301:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 4905 .loc 1 1301 3 is_stmt 1 view .LVU1530 +1301:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + ARM GAS /tmp/ccEQxcUB.s page 261 -1213:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); - 4450 .loc 1 1213 26 is_stmt 0 view .LVU1410 - 4451 00b8 0723 movs r3, #7 - 4452 00ba 1193 str r3, [sp, #68] -1214:Src/main.c **** LL_SPI_SetStandard(SPI2, LL_SPI_PROTOCOL_MOTOROLA); - 4453 .loc 1 1214 3 is_stmt 1 view .LVU1411 - 4454 00bc 094C ldr r4, .L266+8 - 4455 00be 08A9 add r1, sp, #32 - 4456 00c0 2046 mov r0, r4 - 4457 00c2 FFF7FEFF bl LL_SPI_Init - 4458 .LVL458: -1215:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI2); - 4459 .loc 1 1215 3 view .LVU1412 - 4460 .LBB451: - 4461 .LBI451: + 4906 .loc 1 1301 23 is_stmt 0 view .LVU1531 + 4907 009a 4FF48273 mov r3, #260 + 4908 009e 0993 str r3, [sp, #36] +1302:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; + 4909 .loc 1 1302 3 is_stmt 1 view .LVU1532 +1302:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_LOW; + 4910 .loc 1 1302 28 is_stmt 0 view .LVU1533 + 4911 00a0 4FF47063 mov r3, #3840 + 4912 00a4 0A93 str r3, [sp, #40] +1303:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 4913 .loc 1 1303 3 is_stmt 1 view .LVU1534 +1303:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 4914 .loc 1 1303 32 is_stmt 0 view .LVU1535 + 4915 00a6 0B94 str r4, [sp, #44] +1304:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 4916 .loc 1 1304 3 is_stmt 1 view .LVU1536 +1304:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 4917 .loc 1 1304 29 is_stmt 0 view .LVU1537 + 4918 00a8 0C94 str r4, [sp, #48] +1305:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; + 4919 .loc 1 1305 3 is_stmt 1 view .LVU1538 +1305:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV8; + 4920 .loc 1 1305 22 is_stmt 0 view .LVU1539 + 4921 00aa 4FF40073 mov r3, #512 + 4922 00ae 0D93 str r3, [sp, #52] +1306:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 4923 .loc 1 1306 3 is_stmt 1 view .LVU1540 +1306:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 4924 .loc 1 1306 27 is_stmt 0 view .LVU1541 + 4925 00b0 1023 movs r3, #16 + 4926 00b2 0E93 str r3, [sp, #56] +1307:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 4927 .loc 1 1307 3 is_stmt 1 view .LVU1542 +1307:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 4928 .loc 1 1307 27 is_stmt 0 view .LVU1543 + 4929 00b4 0F94 str r4, [sp, #60] +1308:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 4930 .loc 1 1308 3 is_stmt 1 view .LVU1544 +1308:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 4931 .loc 1 1308 33 is_stmt 0 view .LVU1545 + 4932 00b6 1094 str r4, [sp, #64] +1309:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); + 4933 .loc 1 1309 3 is_stmt 1 view .LVU1546 +1309:Src/main.c **** LL_SPI_Init(SPI2, &SPI_InitStruct); + 4934 .loc 1 1309 26 is_stmt 0 view .LVU1547 + 4935 00b8 0723 movs r3, #7 + 4936 00ba 1193 str r3, [sp, #68] +1310:Src/main.c **** LL_SPI_SetStandard(SPI2, LL_SPI_PROTOCOL_MOTOROLA); + 4937 .loc 1 1310 3 is_stmt 1 view .LVU1548 + 4938 00bc 094C ldr r4, .L291+8 + 4939 00be 08A9 add r1, sp, #32 + 4940 00c0 2046 mov r0, r4 + 4941 00c2 FFF7FEFF bl LL_SPI_Init + 4942 .LVL520: +1311:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI2); + 4943 .loc 1 1311 3 view .LVU1549 + 4944 .LBB487: + ARM GAS /tmp/ccEQxcUB.s page 262 + + + 4945 .LBI487: 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4462 .loc 4 426 22 view .LVU1413 - 4463 .LBB452: + 4946 .loc 4 426 22 view .LVU1550 + 4947 .LBB488: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4464 .loc 4 428 3 view .LVU1414 - 4465 00c6 6368 ldr r3, [r4, #4] - 4466 00c8 23F01003 bic r3, r3, #16 - 4467 00cc 6360 str r3, [r4, #4] - 4468 .LVL459: + 4948 .loc 4 428 3 view .LVU1551 + 4949 00c6 6368 ldr r3, [r4, #4] + 4950 00c8 23F01003 bic r3, r3, #16 + 4951 00cc 6360 str r3, [r4, #4] + 4952 .LVL521: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4469 .loc 4 428 3 is_stmt 0 view .LVU1415 - 4470 .LBE452: - 4471 .LBE451: -1216:Src/main.c **** /* USER CODE BEGIN SPI2_Init 2 */ - 4472 .loc 1 1216 3 is_stmt 1 view .LVU1416 - 4473 .LBB453: - 4474 .LBI453: + 4953 .loc 4 428 3 is_stmt 0 view .LVU1552 + 4954 .LBE488: + 4955 .LBE487: +1312:Src/main.c **** /* USER CODE BEGIN SPI2_Init 2 */ + 4956 .loc 1 1312 3 is_stmt 1 view .LVU1553 + 4957 .LBB489: + 4958 .LBI489: 874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4475 .loc 4 874 22 view .LVU1417 - 4476 .LBB454: + 4959 .loc 4 874 22 view .LVU1554 + 4960 .LBB490: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4477 .loc 4 876 3 view .LVU1418 - 4478 00ce 6368 ldr r3, [r4, #4] - 4479 00d0 23F00803 bic r3, r3, #8 - 4480 00d4 6360 str r3, [r4, #4] - 4481 .LVL460: + 4961 .loc 4 876 3 view .LVU1555 + 4962 00ce 6368 ldr r3, [r4, #4] + 4963 00d0 23F00803 bic r3, r3, #8 + 4964 00d4 6360 str r3, [r4, #4] + 4965 .LVL522: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4482 .loc 4 876 3 is_stmt 0 view .LVU1419 - 4483 .LBE454: - 4484 .LBE453: -1221:Src/main.c **** - 4485 .loc 1 1221 1 view .LVU1420 - 4486 00d6 12B0 add sp, sp, #72 - 4487 .LCFI43: - 4488 .cfi_def_cfa_offset 24 - 4489 @ sp needed - 4490 00d8 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 4491 .L267: - 4492 .align 2 - 4493 .L266: - 4494 00dc 00380240 .word 1073887232 - 4495 00e0 00040240 .word 1073873920 - ARM GAS /tmp/ccwR4KB7.s page 247 + 4966 .loc 4 876 3 is_stmt 0 view .LVU1556 + 4967 .LBE490: + 4968 .LBE489: +1317:Src/main.c **** + 4969 .loc 1 1317 1 view .LVU1557 + 4970 00d6 12B0 add sp, sp, #72 + 4971 .LCFI45: + 4972 .cfi_def_cfa_offset 24 + 4973 @ sp needed + 4974 00d8 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 4975 .L292: + 4976 .align 2 + 4977 .L291: + 4978 00dc 00380240 .word 1073887232 + 4979 00e0 00040240 .word 1073873920 + 4980 00e4 00380040 .word 1073756160 + 4981 .cfi_endproc + 4982 .LFE1191: + 4984 .section .text.MX_SPI5_Init,"ax",%progbits + 4985 .align 1 + 4986 .syntax unified + 4987 .thumb + 4988 .thumb_func + 4990 MX_SPI5_Init: + 4991 .LFB1193: +1388:Src/main.c **** + 4992 .loc 1 1388 1 is_stmt 1 view -0 + 4993 .cfi_startproc + 4994 @ args = 0, pretend = 0, frame = 72 + ARM GAS /tmp/ccEQxcUB.s page 263 - 4496 00e4 00380040 .word 1073756160 - 4497 .cfi_endproc - 4498 .LFE1191: - 4500 .section .text.MX_SPI5_Init,"ax",%progbits - 4501 .align 1 - 4502 .syntax unified - 4503 .thumb - 4504 .thumb_func - 4506 MX_SPI5_Init: - 4507 .LFB1193: -1292:Src/main.c **** - 4508 .loc 1 1292 1 is_stmt 1 view -0 - 4509 .cfi_startproc - 4510 @ args = 0, pretend = 0, frame = 72 - 4511 @ frame_needed = 0, uses_anonymous_args = 0 - 4512 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 4513 .LCFI44: - 4514 .cfi_def_cfa_offset 24 - 4515 .cfi_offset 4, -24 - 4516 .cfi_offset 5, -20 - 4517 .cfi_offset 6, -16 - 4518 .cfi_offset 7, -12 - 4519 .cfi_offset 8, -8 - 4520 .cfi_offset 14, -4 - 4521 0004 92B0 sub sp, sp, #72 - 4522 .LCFI45: - 4523 .cfi_def_cfa_offset 96 -1298:Src/main.c **** - 4524 .loc 1 1298 3 view .LVU1422 -1298:Src/main.c **** - 4525 .loc 1 1298 22 is_stmt 0 view .LVU1423 - 4526 0006 2822 movs r2, #40 - 4527 0008 0021 movs r1, #0 - 4528 000a 08A8 add r0, sp, #32 - 4529 000c FFF7FEFF bl memset - 4530 .LVL461: -1300:Src/main.c **** - 4531 .loc 1 1300 3 is_stmt 1 view .LVU1424 -1300:Src/main.c **** - 4532 .loc 1 1300 23 is_stmt 0 view .LVU1425 - 4533 0010 0024 movs r4, #0 - 4534 0012 0294 str r4, [sp, #8] - 4535 0014 0394 str r4, [sp, #12] - 4536 0016 0494 str r4, [sp, #16] - 4537 0018 0594 str r4, [sp, #20] - 4538 001a 0694 str r4, [sp, #24] - 4539 001c 0794 str r4, [sp, #28] -1303:Src/main.c **** - 4540 .loc 1 1303 3 is_stmt 1 view .LVU1426 - 4541 .LVL462: - 4542 .LBB455: - 4543 .LBI455: + 4995 @ frame_needed = 0, uses_anonymous_args = 0 + 4996 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 4997 .LCFI46: + 4998 .cfi_def_cfa_offset 24 + 4999 .cfi_offset 4, -24 + 5000 .cfi_offset 5, -20 + 5001 .cfi_offset 6, -16 + 5002 .cfi_offset 7, -12 + 5003 .cfi_offset 8, -8 + 5004 .cfi_offset 14, -4 + 5005 0004 92B0 sub sp, sp, #72 + 5006 .LCFI47: + 5007 .cfi_def_cfa_offset 96 +1394:Src/main.c **** + 5008 .loc 1 1394 3 view .LVU1559 +1394:Src/main.c **** + 5009 .loc 1 1394 22 is_stmt 0 view .LVU1560 + 5010 0006 2822 movs r2, #40 + 5011 0008 0021 movs r1, #0 + 5012 000a 08A8 add r0, sp, #32 + 5013 000c FFF7FEFF bl memset + 5014 .LVL523: +1396:Src/main.c **** + 5015 .loc 1 1396 3 is_stmt 1 view .LVU1561 +1396:Src/main.c **** + 5016 .loc 1 1396 23 is_stmt 0 view .LVU1562 + 5017 0010 0024 movs r4, #0 + 5018 0012 0294 str r4, [sp, #8] + 5019 0014 0394 str r4, [sp, #12] + 5020 0016 0494 str r4, [sp, #16] + 5021 0018 0594 str r4, [sp, #20] + 5022 001a 0694 str r4, [sp, #24] + 5023 001c 0794 str r4, [sp, #28] +1399:Src/main.c **** + 5024 .loc 1 1399 3 is_stmt 1 view .LVU1563 + 5025 .LVL524: + 5026 .LBB491: + 5027 .LBI491: 1587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4544 .loc 3 1587 22 view .LVU1427 - 4545 .LBB456: + 5028 .loc 3 1587 22 view .LVU1564 + 5029 .LBB492: 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB2ENR, Periphs); - 4546 .loc 3 1589 3 view .LVU1428 - ARM GAS /tmp/ccwR4KB7.s page 248 - - + 5030 .loc 3 1589 3 view .LVU1565 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4547 .loc 3 1590 3 view .LVU1429 - 4548 001e 294B ldr r3, .L270 - 4549 0020 5A6C ldr r2, [r3, #68] - 4550 0022 42F48012 orr r2, r2, #1048576 - 4551 0026 5A64 str r2, [r3, #68] + 5031 .loc 3 1590 3 view .LVU1566 + 5032 001e 294B ldr r3, .L295 + 5033 0020 5A6C ldr r2, [r3, #68] + 5034 0022 42F48012 orr r2, r2, #1048576 + 5035 0026 5A64 str r2, [r3, #68] 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4552 .loc 3 1592 3 view .LVU1430 + 5036 .loc 3 1592 3 view .LVU1567 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4553 .loc 3 1592 12 is_stmt 0 view .LVU1431 - 4554 0028 5A6C ldr r2, [r3, #68] - 4555 002a 02F48012 and r2, r2, #1048576 + 5037 .loc 3 1592 12 is_stmt 0 view .LVU1568 + 5038 0028 5A6C ldr r2, [r3, #68] + 5039 002a 02F48012 and r2, r2, #1048576 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4556 .loc 3 1592 10 view .LVU1432 - 4557 002e 0192 str r2, [sp, #4] - 4558 .loc 3 1593 3 is_stmt 1 view .LVU1433 - 4559 0030 019A ldr r2, [sp, #4] - 4560 .LVL463: - 4561 .loc 3 1593 3 is_stmt 0 view .LVU1434 - 4562 .LBE456: - 4563 .LBE455: -1305:Src/main.c **** /**SPI5 GPIO Configuration - 4564 .loc 1 1305 3 is_stmt 1 view .LVU1435 - 4565 .LBB457: - 4566 .LBI457: + 5040 .loc 3 1592 10 view .LVU1569 + ARM GAS /tmp/ccEQxcUB.s page 264 + + + 5041 002e 0192 str r2, [sp, #4] + 5042 .loc 3 1593 3 is_stmt 1 view .LVU1570 + 5043 0030 019A ldr r2, [sp, #4] + 5044 .LVL525: + 5045 .loc 3 1593 3 is_stmt 0 view .LVU1571 + 5046 .LBE492: + 5047 .LBE491: +1401:Src/main.c **** /**SPI5 GPIO Configuration + 5048 .loc 1 1401 3 is_stmt 1 view .LVU1572 + 5049 .LBB493: + 5050 .LBI493: 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4567 .loc 3 309 22 view .LVU1436 - 4568 .LBB458: + 5051 .loc 3 309 22 view .LVU1573 + 5052 .LBB494: 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB1ENR, Periphs); - 4569 .loc 3 311 3 view .LVU1437 + 5053 .loc 3 311 3 view .LVU1574 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4570 .loc 3 312 3 view .LVU1438 - 4571 0032 1A6B ldr r2, [r3, #48] - 4572 0034 42F02002 orr r2, r2, #32 - 4573 0038 1A63 str r2, [r3, #48] + 5054 .loc 3 312 3 view .LVU1575 + 5055 0032 1A6B ldr r2, [r3, #48] + 5056 0034 42F02002 orr r2, r2, #32 + 5057 0038 1A63 str r2, [r3, #48] 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4574 .loc 3 314 3 view .LVU1439 + 5058 .loc 3 314 3 view .LVU1576 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4575 .loc 3 314 12 is_stmt 0 view .LVU1440 - 4576 003a 1B6B ldr r3, [r3, #48] - 4577 003c 03F02003 and r3, r3, #32 + 5059 .loc 3 314 12 is_stmt 0 view .LVU1577 + 5060 003a 1B6B ldr r3, [r3, #48] + 5061 003c 03F02003 and r3, r3, #32 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4578 .loc 3 314 10 view .LVU1441 - 4579 0040 0093 str r3, [sp] + 5062 .loc 3 314 10 view .LVU1578 + 5063 0040 0093 str r3, [sp] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4580 .loc 3 315 3 is_stmt 1 view .LVU1442 - 4581 0042 009B ldr r3, [sp] - 4582 .LVL464: + 5064 .loc 3 315 3 is_stmt 1 view .LVU1579 + 5065 0042 009B ldr r3, [sp] + 5066 .LVL526: 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4583 .loc 3 315 3 is_stmt 0 view .LVU1443 - 4584 .LBE458: - 4585 .LBE457: -1310:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4586 .loc 1 1310 3 is_stmt 1 view .LVU1444 -1310:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4587 .loc 1 1310 23 is_stmt 0 view .LVU1445 - 4588 0044 8023 movs r3, #128 - ARM GAS /tmp/ccwR4KB7.s page 249 + 5067 .loc 3 315 3 is_stmt 0 view .LVU1580 + 5068 .LBE494: + 5069 .LBE493: +1406:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5070 .loc 1 1406 3 is_stmt 1 view .LVU1581 +1406:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5071 .loc 1 1406 23 is_stmt 0 view .LVU1582 + 5072 0044 8023 movs r3, #128 + 5073 0046 0293 str r3, [sp, #8] +1407:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5074 .loc 1 1407 3 is_stmt 1 view .LVU1583 +1407:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5075 .loc 1 1407 24 is_stmt 0 view .LVU1584 + 5076 0048 0225 movs r5, #2 + 5077 004a 0395 str r5, [sp, #12] +1408:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5078 .loc 1 1408 3 is_stmt 1 view .LVU1585 +1408:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5079 .loc 1 1408 25 is_stmt 0 view .LVU1586 + 5080 004c 4FF00308 mov r8, #3 + 5081 0050 CDF81080 str r8, [sp, #16] +1409:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + ARM GAS /tmp/ccEQxcUB.s page 265 - 4589 0046 0293 str r3, [sp, #8] -1311:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4590 .loc 1 1311 3 is_stmt 1 view .LVU1446 -1311:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4591 .loc 1 1311 24 is_stmt 0 view .LVU1447 - 4592 0048 0225 movs r5, #2 - 4593 004a 0395 str r5, [sp, #12] -1312:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4594 .loc 1 1312 3 is_stmt 1 view .LVU1448 -1312:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4595 .loc 1 1312 25 is_stmt 0 view .LVU1449 - 4596 004c 4FF00308 mov r8, #3 - 4597 0050 CDF81080 str r8, [sp, #16] -1313:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4598 .loc 1 1313 3 is_stmt 1 view .LVU1450 -1314:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4599 .loc 1 1314 3 view .LVU1451 -1315:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); - 4600 .loc 1 1315 3 view .LVU1452 -1315:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); - 4601 .loc 1 1315 29 is_stmt 0 view .LVU1453 - 4602 0054 0527 movs r7, #5 - 4603 0056 0797 str r7, [sp, #28] -1316:Src/main.c **** - 4604 .loc 1 1316 3 is_stmt 1 view .LVU1454 - 4605 0058 1B4E ldr r6, .L270+4 - 4606 005a 02A9 add r1, sp, #8 - 4607 005c 3046 mov r0, r6 - 4608 005e FFF7FEFF bl LL_GPIO_Init - 4609 .LVL465: -1318:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4610 .loc 1 1318 3 view .LVU1455 -1318:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4611 .loc 1 1318 23 is_stmt 0 view .LVU1456 - 4612 0062 4FF48073 mov r3, #256 - 4613 0066 0293 str r3, [sp, #8] -1319:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4614 .loc 1 1319 3 is_stmt 1 view .LVU1457 -1319:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4615 .loc 1 1319 24 is_stmt 0 view .LVU1458 - 4616 0068 0395 str r5, [sp, #12] -1320:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4617 .loc 1 1320 3 is_stmt 1 view .LVU1459 -1320:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4618 .loc 1 1320 25 is_stmt 0 view .LVU1460 - 4619 006a CDF81080 str r8, [sp, #16] -1321:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4620 .loc 1 1321 3 is_stmt 1 view .LVU1461 -1321:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4621 .loc 1 1321 30 is_stmt 0 view .LVU1462 - 4622 006e 0594 str r4, [sp, #20] -1322:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4623 .loc 1 1322 3 is_stmt 1 view .LVU1463 -1322:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; - 4624 .loc 1 1322 24 is_stmt 0 view .LVU1464 - 4625 0070 0694 str r4, [sp, #24] -1323:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); - ARM GAS /tmp/ccwR4KB7.s page 250 + 5082 .loc 1 1409 3 is_stmt 1 view .LVU1587 +1410:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 5083 .loc 1 1410 3 view .LVU1588 +1411:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); + 5084 .loc 1 1411 3 view .LVU1589 +1411:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); + 5085 .loc 1 1411 29 is_stmt 0 view .LVU1590 + 5086 0054 0527 movs r7, #5 + 5087 0056 0797 str r7, [sp, #28] +1412:Src/main.c **** + 5088 .loc 1 1412 3 is_stmt 1 view .LVU1591 + 5089 0058 1B4E ldr r6, .L295+4 + 5090 005a 02A9 add r1, sp, #8 + 5091 005c 3046 mov r0, r6 + 5092 005e FFF7FEFF bl LL_GPIO_Init + 5093 .LVL527: +1414:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5094 .loc 1 1414 3 view .LVU1592 +1414:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5095 .loc 1 1414 23 is_stmt 0 view .LVU1593 + 5096 0062 4FF48073 mov r3, #256 + 5097 0066 0293 str r3, [sp, #8] +1415:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5098 .loc 1 1415 3 is_stmt 1 view .LVU1594 +1415:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5099 .loc 1 1415 24 is_stmt 0 view .LVU1595 + 5100 0068 0395 str r5, [sp, #12] +1416:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5101 .loc 1 1416 3 is_stmt 1 view .LVU1596 +1416:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5102 .loc 1 1416 25 is_stmt 0 view .LVU1597 + 5103 006a CDF81080 str r8, [sp, #16] +1417:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 5104 .loc 1 1417 3 is_stmt 1 view .LVU1598 +1417:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 5105 .loc 1 1417 30 is_stmt 0 view .LVU1599 + 5106 006e 0594 str r4, [sp, #20] +1418:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 5107 .loc 1 1418 3 is_stmt 1 view .LVU1600 +1418:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_5; + 5108 .loc 1 1418 24 is_stmt 0 view .LVU1601 + 5109 0070 0694 str r4, [sp, #24] +1419:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); + 5110 .loc 1 1419 3 is_stmt 1 view .LVU1602 +1419:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); + 5111 .loc 1 1419 29 is_stmt 0 view .LVU1603 + 5112 0072 0797 str r7, [sp, #28] +1420:Src/main.c **** + 5113 .loc 1 1420 3 is_stmt 1 view .LVU1604 + 5114 0074 02A9 add r1, sp, #8 + 5115 0076 3046 mov r0, r6 + 5116 0078 FFF7FEFF bl LL_GPIO_Init + 5117 .LVL528: +1426:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 5118 .loc 1 1426 3 view .LVU1605 +1426:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 5119 .loc 1 1426 36 is_stmt 0 view .LVU1606 + ARM GAS /tmp/ccEQxcUB.s page 266 - 4626 .loc 1 1323 3 is_stmt 1 view .LVU1465 -1323:Src/main.c **** LL_GPIO_Init(GPIOF, &GPIO_InitStruct); - 4627 .loc 1 1323 29 is_stmt 0 view .LVU1466 - 4628 0072 0797 str r7, [sp, #28] -1324:Src/main.c **** - 4629 .loc 1 1324 3 is_stmt 1 view .LVU1467 - 4630 0074 02A9 add r1, sp, #8 - 4631 0076 3046 mov r0, r6 - 4632 0078 FFF7FEFF bl LL_GPIO_Init - 4633 .LVL466: -1330:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4634 .loc 1 1330 3 view .LVU1468 -1330:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4635 .loc 1 1330 36 is_stmt 0 view .LVU1469 - 4636 007c 4FF48063 mov r3, #1024 - 4637 0080 0893 str r3, [sp, #32] -1331:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4638 .loc 1 1331 3 is_stmt 1 view .LVU1470 -1331:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4639 .loc 1 1331 23 is_stmt 0 view .LVU1471 - 4640 0082 4FF48273 mov r3, #260 - 4641 0086 0993 str r3, [sp, #36] -1332:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4642 .loc 1 1332 3 is_stmt 1 view .LVU1472 -1332:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4643 .loc 1 1332 28 is_stmt 0 view .LVU1473 - 4644 0088 4FF47063 mov r3, #3840 - 4645 008c 0A93 str r3, [sp, #40] -1333:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4646 .loc 1 1333 3 is_stmt 1 view .LVU1474 -1333:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; - 4647 .loc 1 1333 32 is_stmt 0 view .LVU1475 - 4648 008e 0B95 str r5, [sp, #44] -1334:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4649 .loc 1 1334 3 is_stmt 1 view .LVU1476 -1334:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4650 .loc 1 1334 29 is_stmt 0 view .LVU1477 - 4651 0090 0C94 str r4, [sp, #48] -1335:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4652 .loc 1 1335 3 is_stmt 1 view .LVU1478 -1335:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4653 .loc 1 1335 22 is_stmt 0 view .LVU1479 - 4654 0092 4FF40073 mov r3, #512 - 4655 0096 0D93 str r3, [sp, #52] -1336:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4656 .loc 1 1336 3 is_stmt 1 view .LVU1480 -1336:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4657 .loc 1 1336 27 is_stmt 0 view .LVU1481 - 4658 0098 1823 movs r3, #24 - 4659 009a 0E93 str r3, [sp, #56] -1337:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4660 .loc 1 1337 3 is_stmt 1 view .LVU1482 -1337:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4661 .loc 1 1337 27 is_stmt 0 view .LVU1483 - 4662 009c 0F94 str r4, [sp, #60] -1338:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4663 .loc 1 1338 3 is_stmt 1 view .LVU1484 - ARM GAS /tmp/ccwR4KB7.s page 251 + 5120 007c 4FF48063 mov r3, #1024 + 5121 0080 0893 str r3, [sp, #32] +1427:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 5122 .loc 1 1427 3 is_stmt 1 view .LVU1607 +1427:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 5123 .loc 1 1427 23 is_stmt 0 view .LVU1608 + 5124 0082 4FF48273 mov r3, #260 + 5125 0086 0993 str r3, [sp, #36] +1428:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 5126 .loc 1 1428 3 is_stmt 1 view .LVU1609 +1428:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 5127 .loc 1 1428 28 is_stmt 0 view .LVU1610 + 5128 0088 4FF47063 mov r3, #3840 + 5129 008c 0A93 str r3, [sp, #40] +1429:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 5130 .loc 1 1429 3 is_stmt 1 view .LVU1611 +1429:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_1EDGE; + 5131 .loc 1 1429 32 is_stmt 0 view .LVU1612 + 5132 008e 0B95 str r5, [sp, #44] +1430:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 5133 .loc 1 1430 3 is_stmt 1 view .LVU1613 +1430:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 5134 .loc 1 1430 29 is_stmt 0 view .LVU1614 + 5135 0090 0C94 str r4, [sp, #48] +1431:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 5136 .loc 1 1431 3 is_stmt 1 view .LVU1615 +1431:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 5137 .loc 1 1431 22 is_stmt 0 view .LVU1616 + 5138 0092 4FF40073 mov r3, #512 + 5139 0096 0D93 str r3, [sp, #52] +1432:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 5140 .loc 1 1432 3 is_stmt 1 view .LVU1617 +1432:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 5141 .loc 1 1432 27 is_stmt 0 view .LVU1618 + 5142 0098 1823 movs r3, #24 + 5143 009a 0E93 str r3, [sp, #56] +1433:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 5144 .loc 1 1433 3 is_stmt 1 view .LVU1619 +1433:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 5145 .loc 1 1433 27 is_stmt 0 view .LVU1620 + 5146 009c 0F94 str r4, [sp, #60] +1434:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 5147 .loc 1 1434 3 is_stmt 1 view .LVU1621 +1434:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 5148 .loc 1 1434 33 is_stmt 0 view .LVU1622 + 5149 009e 1094 str r4, [sp, #64] +1435:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); + 5150 .loc 1 1435 3 is_stmt 1 view .LVU1623 +1435:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); + 5151 .loc 1 1435 26 is_stmt 0 view .LVU1624 + 5152 00a0 0723 movs r3, #7 + 5153 00a2 1193 str r3, [sp, #68] +1436:Src/main.c **** LL_SPI_SetStandard(SPI5, LL_SPI_PROTOCOL_MOTOROLA); + 5154 .loc 1 1436 3 is_stmt 1 view .LVU1625 + 5155 00a4 094C ldr r4, .L295+8 + 5156 00a6 08A9 add r1, sp, #32 + 5157 00a8 2046 mov r0, r4 + ARM GAS /tmp/ccEQxcUB.s page 267 -1338:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4664 .loc 1 1338 33 is_stmt 0 view .LVU1485 - 4665 009e 1094 str r4, [sp, #64] -1339:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); - 4666 .loc 1 1339 3 is_stmt 1 view .LVU1486 -1339:Src/main.c **** LL_SPI_Init(SPI5, &SPI_InitStruct); - 4667 .loc 1 1339 26 is_stmt 0 view .LVU1487 - 4668 00a0 0723 movs r3, #7 - 4669 00a2 1193 str r3, [sp, #68] -1340:Src/main.c **** LL_SPI_SetStandard(SPI5, LL_SPI_PROTOCOL_MOTOROLA); - 4670 .loc 1 1340 3 is_stmt 1 view .LVU1488 - 4671 00a4 094C ldr r4, .L270+8 - 4672 00a6 08A9 add r1, sp, #32 - 4673 00a8 2046 mov r0, r4 - 4674 00aa FFF7FEFF bl LL_SPI_Init - 4675 .LVL467: -1341:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI5); - 4676 .loc 1 1341 3 view .LVU1489 - 4677 .LBB459: - 4678 .LBI459: + 5158 00aa FFF7FEFF bl LL_SPI_Init + 5159 .LVL529: +1437:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI5); + 5160 .loc 1 1437 3 view .LVU1626 + 5161 .LBB495: + 5162 .LBI495: 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4679 .loc 4 426 22 view .LVU1490 - 4680 .LBB460: + 5163 .loc 4 426 22 view .LVU1627 + 5164 .LBB496: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4681 .loc 4 428 3 view .LVU1491 - 4682 00ae 6368 ldr r3, [r4, #4] - 4683 00b0 23F01003 bic r3, r3, #16 - 4684 00b4 6360 str r3, [r4, #4] - 4685 .LVL468: + 5165 .loc 4 428 3 view .LVU1628 + 5166 00ae 6368 ldr r3, [r4, #4] + 5167 00b0 23F01003 bic r3, r3, #16 + 5168 00b4 6360 str r3, [r4, #4] + 5169 .LVL530: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4686 .loc 4 428 3 is_stmt 0 view .LVU1492 - 4687 .LBE460: - 4688 .LBE459: -1342:Src/main.c **** /* USER CODE BEGIN SPI5_Init 2 */ - 4689 .loc 1 1342 3 is_stmt 1 view .LVU1493 - 4690 .LBB461: - 4691 .LBI461: + 5170 .loc 4 428 3 is_stmt 0 view .LVU1629 + 5171 .LBE496: + 5172 .LBE495: +1438:Src/main.c **** /* USER CODE BEGIN SPI5_Init 2 */ + 5173 .loc 1 1438 3 is_stmt 1 view .LVU1630 + 5174 .LBB497: + 5175 .LBI497: 874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4692 .loc 4 874 22 view .LVU1494 - 4693 .LBB462: + 5176 .loc 4 874 22 view .LVU1631 + 5177 .LBB498: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4694 .loc 4 876 3 view .LVU1495 - 4695 00b6 6368 ldr r3, [r4, #4] - 4696 00b8 23F00803 bic r3, r3, #8 - 4697 00bc 6360 str r3, [r4, #4] - 4698 .LVL469: + 5178 .loc 4 876 3 view .LVU1632 + 5179 00b6 6368 ldr r3, [r4, #4] + 5180 00b8 23F00803 bic r3, r3, #8 + 5181 00bc 6360 str r3, [r4, #4] + 5182 .LVL531: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4699 .loc 4 876 3 is_stmt 0 view .LVU1496 - 4700 .LBE462: - 4701 .LBE461: -1347:Src/main.c **** - 4702 .loc 1 1347 1 view .LVU1497 - 4703 00be 12B0 add sp, sp, #72 - 4704 .LCFI46: - 4705 .cfi_def_cfa_offset 24 - 4706 @ sp needed - 4707 00c0 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - ARM GAS /tmp/ccwR4KB7.s page 252 - - - 4708 .L271: - 4709 .align 2 - 4710 .L270: - 4711 00c4 00380240 .word 1073887232 - 4712 00c8 00140240 .word 1073878016 - 4713 00cc 00500140 .word 1073827840 - 4714 .cfi_endproc - 4715 .LFE1193: - 4717 .section .text.MX_SPI6_Init,"ax",%progbits - 4718 .align 1 - 4719 .syntax unified - 4720 .thumb - 4721 .thumb_func - 4723 MX_SPI6_Init: - 4724 .LFB1194: -1355:Src/main.c **** - 4725 .loc 1 1355 1 is_stmt 1 view -0 - 4726 .cfi_startproc - 4727 @ args = 0, pretend = 0, frame = 72 - 4728 @ frame_needed = 0, uses_anonymous_args = 0 - 4729 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 4730 .LCFI47: - 4731 .cfi_def_cfa_offset 24 - 4732 .cfi_offset 4, -24 - 4733 .cfi_offset 5, -20 - 4734 .cfi_offset 6, -16 - 4735 .cfi_offset 7, -12 - 4736 .cfi_offset 8, -8 - 4737 .cfi_offset 14, -4 - 4738 0004 92B0 sub sp, sp, #72 - 4739 .LCFI48: - 4740 .cfi_def_cfa_offset 96 -1361:Src/main.c **** - 4741 .loc 1 1361 3 view .LVU1499 -1361:Src/main.c **** - 4742 .loc 1 1361 22 is_stmt 0 view .LVU1500 - 4743 0006 2822 movs r2, #40 - 4744 0008 0021 movs r1, #0 - 4745 000a 08A8 add r0, sp, #32 - 4746 000c FFF7FEFF bl memset - 4747 .LVL470: -1363:Src/main.c **** - 4748 .loc 1 1363 3 is_stmt 1 view .LVU1501 -1363:Src/main.c **** - 4749 .loc 1 1363 23 is_stmt 0 view .LVU1502 - 4750 0010 0024 movs r4, #0 - 4751 0012 0294 str r4, [sp, #8] - 4752 0014 0394 str r4, [sp, #12] - 4753 0016 0494 str r4, [sp, #16] - 4754 0018 0594 str r4, [sp, #20] - 4755 001a 0694 str r4, [sp, #24] - 4756 001c 0794 str r4, [sp, #28] -1366:Src/main.c **** - 4757 .loc 1 1366 3 is_stmt 1 view .LVU1503 - 4758 .LVL471: - 4759 .LBB463: - 4760 .LBI463: - ARM GAS /tmp/ccwR4KB7.s page 253 + 5183 .loc 4 876 3 is_stmt 0 view .LVU1633 + 5184 .LBE498: + 5185 .LBE497: +1443:Src/main.c **** + 5186 .loc 1 1443 1 view .LVU1634 + 5187 00be 12B0 add sp, sp, #72 + 5188 .LCFI48: + 5189 .cfi_def_cfa_offset 24 + 5190 @ sp needed + 5191 00c0 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 5192 .L296: + 5193 .align 2 + 5194 .L295: + 5195 00c4 00380240 .word 1073887232 + 5196 00c8 00140240 .word 1073878016 + 5197 00cc 00500140 .word 1073827840 + 5198 .cfi_endproc + 5199 .LFE1193: + 5201 .section .text.MX_SPI6_Init,"ax",%progbits + 5202 .align 1 + 5203 .syntax unified + 5204 .thumb + 5205 .thumb_func + 5207 MX_SPI6_Init: + ARM GAS /tmp/ccEQxcUB.s page 268 + 5208 .LFB1194: +1451:Src/main.c **** + 5209 .loc 1 1451 1 is_stmt 1 view -0 + 5210 .cfi_startproc + 5211 @ args = 0, pretend = 0, frame = 72 + 5212 @ frame_needed = 0, uses_anonymous_args = 0 + 5213 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 5214 .LCFI49: + 5215 .cfi_def_cfa_offset 24 + 5216 .cfi_offset 4, -24 + 5217 .cfi_offset 5, -20 + 5218 .cfi_offset 6, -16 + 5219 .cfi_offset 7, -12 + 5220 .cfi_offset 8, -8 + 5221 .cfi_offset 14, -4 + 5222 0004 92B0 sub sp, sp, #72 + 5223 .LCFI50: + 5224 .cfi_def_cfa_offset 96 +1457:Src/main.c **** + 5225 .loc 1 1457 3 view .LVU1636 +1457:Src/main.c **** + 5226 .loc 1 1457 22 is_stmt 0 view .LVU1637 + 5227 0006 2822 movs r2, #40 + 5228 0008 0021 movs r1, #0 + 5229 000a 08A8 add r0, sp, #32 + 5230 000c FFF7FEFF bl memset + 5231 .LVL532: +1459:Src/main.c **** + 5232 .loc 1 1459 3 is_stmt 1 view .LVU1638 +1459:Src/main.c **** + 5233 .loc 1 1459 23 is_stmt 0 view .LVU1639 + 5234 0010 0024 movs r4, #0 + 5235 0012 0294 str r4, [sp, #8] + 5236 0014 0394 str r4, [sp, #12] + 5237 0016 0494 str r4, [sp, #16] + 5238 0018 0594 str r4, [sp, #20] + 5239 001a 0694 str r4, [sp, #24] + 5240 001c 0794 str r4, [sp, #28] +1462:Src/main.c **** + 5241 .loc 1 1462 3 is_stmt 1 view .LVU1640 + 5242 .LVL533: + 5243 .LBB499: + 5244 .LBI499: 1587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4761 .loc 3 1587 22 view .LVU1504 - 4762 .LBB464: + 5245 .loc 3 1587 22 view .LVU1641 + 5246 .LBB500: 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB2ENR, Periphs); - 4763 .loc 3 1589 3 view .LVU1505 + 5247 .loc 3 1589 3 view .LVU1642 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4764 .loc 3 1590 3 view .LVU1506 - 4765 001e 294B ldr r3, .L274 - 4766 0020 5A6C ldr r2, [r3, #68] - 4767 0022 42F40012 orr r2, r2, #2097152 - 4768 0026 5A64 str r2, [r3, #68] + 5248 .loc 3 1590 3 view .LVU1643 + 5249 001e 294B ldr r3, .L299 + 5250 0020 5A6C ldr r2, [r3, #68] + 5251 0022 42F40012 orr r2, r2, #2097152 + 5252 0026 5A64 str r2, [r3, #68] 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4769 .loc 3 1592 3 view .LVU1507 + 5253 .loc 3 1592 3 view .LVU1644 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4770 .loc 3 1592 12 is_stmt 0 view .LVU1508 - 4771 0028 5A6C ldr r2, [r3, #68] - 4772 002a 02F40012 and r2, r2, #2097152 + ARM GAS /tmp/ccEQxcUB.s page 269 + + + 5254 .loc 3 1592 12 is_stmt 0 view .LVU1645 + 5255 0028 5A6C ldr r2, [r3, #68] + 5256 002a 02F40012 and r2, r2, #2097152 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4773 .loc 3 1592 10 view .LVU1509 - 4774 002e 0192 str r2, [sp, #4] - 4775 .loc 3 1593 3 is_stmt 1 view .LVU1510 - 4776 0030 019A ldr r2, [sp, #4] - 4777 .LVL472: - 4778 .loc 3 1593 3 is_stmt 0 view .LVU1511 - 4779 .LBE464: - 4780 .LBE463: -1368:Src/main.c **** /**SPI6 GPIO Configuration - 4781 .loc 1 1368 3 is_stmt 1 view .LVU1512 - 4782 .LBB465: - 4783 .LBI465: + 5257 .loc 3 1592 10 view .LVU1646 + 5258 002e 0192 str r2, [sp, #4] + 5259 .loc 3 1593 3 is_stmt 1 view .LVU1647 + 5260 0030 019A ldr r2, [sp, #4] + 5261 .LVL534: + 5262 .loc 3 1593 3 is_stmt 0 view .LVU1648 + 5263 .LBE500: + 5264 .LBE499: +1464:Src/main.c **** /**SPI6 GPIO Configuration + 5265 .loc 1 1464 3 is_stmt 1 view .LVU1649 + 5266 .LBB501: + 5267 .LBI501: 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4784 .loc 3 309 22 view .LVU1513 - 4785 .LBB466: + 5268 .loc 3 309 22 view .LVU1650 + 5269 .LBB502: 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB1ENR, Periphs); - 4786 .loc 3 311 3 view .LVU1514 + 5270 .loc 3 311 3 view .LVU1651 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4787 .loc 3 312 3 view .LVU1515 - 4788 0032 1A6B ldr r2, [r3, #48] - 4789 0034 42F00102 orr r2, r2, #1 - 4790 0038 1A63 str r2, [r3, #48] + 5271 .loc 3 312 3 view .LVU1652 + 5272 0032 1A6B ldr r2, [r3, #48] + 5273 0034 42F00102 orr r2, r2, #1 + 5274 0038 1A63 str r2, [r3, #48] 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4791 .loc 3 314 3 view .LVU1516 + 5275 .loc 3 314 3 view .LVU1653 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4792 .loc 3 314 12 is_stmt 0 view .LVU1517 - 4793 003a 1B6B ldr r3, [r3, #48] - 4794 003c 03F00103 and r3, r3, #1 + 5276 .loc 3 314 12 is_stmt 0 view .LVU1654 + 5277 003a 1B6B ldr r3, [r3, #48] + 5278 003c 03F00103 and r3, r3, #1 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4795 .loc 3 314 10 view .LVU1518 - 4796 0040 0093 str r3, [sp] + 5279 .loc 3 314 10 view .LVU1655 + 5280 0040 0093 str r3, [sp] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4797 .loc 3 315 3 is_stmt 1 view .LVU1519 - 4798 0042 009B ldr r3, [sp] - 4799 .LVL473: + 5281 .loc 3 315 3 is_stmt 1 view .LVU1656 + 5282 0042 009B ldr r3, [sp] + 5283 .LVL535: 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4800 .loc 3 315 3 is_stmt 0 view .LVU1520 - 4801 .LBE466: - 4802 .LBE465: - ARM GAS /tmp/ccwR4KB7.s page 254 + 5284 .loc 3 315 3 is_stmt 0 view .LVU1657 + 5285 .LBE502: + 5286 .LBE501: +1469:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5287 .loc 1 1469 3 is_stmt 1 view .LVU1658 +1469:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5288 .loc 1 1469 23 is_stmt 0 view .LVU1659 + 5289 0044 2023 movs r3, #32 + 5290 0046 0293 str r3, [sp, #8] +1470:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5291 .loc 1 1470 3 is_stmt 1 view .LVU1660 +1470:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5292 .loc 1 1470 24 is_stmt 0 view .LVU1661 + 5293 0048 0225 movs r5, #2 + 5294 004a 0395 str r5, [sp, #12] +1471:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5295 .loc 1 1471 3 is_stmt 1 view .LVU1662 + ARM GAS /tmp/ccEQxcUB.s page 270 -1373:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4803 .loc 1 1373 3 is_stmt 1 view .LVU1521 -1373:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4804 .loc 1 1373 23 is_stmt 0 view .LVU1522 - 4805 0044 2023 movs r3, #32 - 4806 0046 0293 str r3, [sp, #8] -1374:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4807 .loc 1 1374 3 is_stmt 1 view .LVU1523 -1374:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4808 .loc 1 1374 24 is_stmt 0 view .LVU1524 - 4809 0048 0225 movs r5, #2 - 4810 004a 0395 str r5, [sp, #12] -1375:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4811 .loc 1 1375 3 is_stmt 1 view .LVU1525 -1375:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4812 .loc 1 1375 25 is_stmt 0 view .LVU1526 - 4813 004c 4FF00308 mov r8, #3 - 4814 0050 CDF81080 str r8, [sp, #16] -1376:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4815 .loc 1 1376 3 is_stmt 1 view .LVU1527 -1377:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; - 4816 .loc 1 1377 3 view .LVU1528 -1378:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 4817 .loc 1 1378 3 view .LVU1529 -1378:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 4818 .loc 1 1378 29 is_stmt 0 view .LVU1530 - 4819 0054 0827 movs r7, #8 - 4820 0056 0797 str r7, [sp, #28] -1379:Src/main.c **** - 4821 .loc 1 1379 3 is_stmt 1 view .LVU1531 - 4822 0058 1B4E ldr r6, .L274+4 - 4823 005a 0DEB0701 add r1, sp, r7 - 4824 005e 3046 mov r0, r6 - 4825 0060 FFF7FEFF bl LL_GPIO_Init - 4826 .LVL474: -1381:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4827 .loc 1 1381 3 view .LVU1532 -1381:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 4828 .loc 1 1381 23 is_stmt 0 view .LVU1533 - 4829 0064 8023 movs r3, #128 - 4830 0066 0293 str r3, [sp, #8] -1382:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4831 .loc 1 1382 3 is_stmt 1 view .LVU1534 -1382:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 4832 .loc 1 1382 24 is_stmt 0 view .LVU1535 - 4833 0068 0395 str r5, [sp, #12] -1383:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4834 .loc 1 1383 3 is_stmt 1 view .LVU1536 -1383:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 4835 .loc 1 1383 25 is_stmt 0 view .LVU1537 - 4836 006a CDF81080 str r8, [sp, #16] -1384:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4837 .loc 1 1384 3 is_stmt 1 view .LVU1538 -1384:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 4838 .loc 1 1384 30 is_stmt 0 view .LVU1539 - 4839 006e 0594 str r4, [sp, #20] -1385:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; - ARM GAS /tmp/ccwR4KB7.s page 255 +1471:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5296 .loc 1 1471 25 is_stmt 0 view .LVU1663 + 5297 004c 4FF00308 mov r8, #3 + 5298 0050 CDF81080 str r8, [sp, #16] +1472:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 5299 .loc 1 1472 3 is_stmt 1 view .LVU1664 +1473:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; + 5300 .loc 1 1473 3 view .LVU1665 +1474:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 5301 .loc 1 1474 3 view .LVU1666 +1474:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 5302 .loc 1 1474 29 is_stmt 0 view .LVU1667 + 5303 0054 0827 movs r7, #8 + 5304 0056 0797 str r7, [sp, #28] +1475:Src/main.c **** + 5305 .loc 1 1475 3 is_stmt 1 view .LVU1668 + 5306 0058 1B4E ldr r6, .L299+4 + 5307 005a 0DEB0701 add r1, sp, r7 + 5308 005e 3046 mov r0, r6 + 5309 0060 FFF7FEFF bl LL_GPIO_Init + 5310 .LVL536: +1477:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5311 .loc 1 1477 3 view .LVU1669 +1477:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 5312 .loc 1 1477 23 is_stmt 0 view .LVU1670 + 5313 0064 8023 movs r3, #128 + 5314 0066 0293 str r3, [sp, #8] +1478:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5315 .loc 1 1478 3 is_stmt 1 view .LVU1671 +1478:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 5316 .loc 1 1478 24 is_stmt 0 view .LVU1672 + 5317 0068 0395 str r5, [sp, #12] +1479:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5318 .loc 1 1479 3 is_stmt 1 view .LVU1673 +1479:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 5319 .loc 1 1479 25 is_stmt 0 view .LVU1674 + 5320 006a CDF81080 str r8, [sp, #16] +1480:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 5321 .loc 1 1480 3 is_stmt 1 view .LVU1675 +1480:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 5322 .loc 1 1480 30 is_stmt 0 view .LVU1676 + 5323 006e 0594 str r4, [sp, #20] +1481:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; + 5324 .loc 1 1481 3 is_stmt 1 view .LVU1677 +1481:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; + 5325 .loc 1 1481 24 is_stmt 0 view .LVU1678 + 5326 0070 0694 str r4, [sp, #24] +1482:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 5327 .loc 1 1482 3 is_stmt 1 view .LVU1679 +1482:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 5328 .loc 1 1482 29 is_stmt 0 view .LVU1680 + 5329 0072 0797 str r7, [sp, #28] +1483:Src/main.c **** + 5330 .loc 1 1483 3 is_stmt 1 view .LVU1681 + 5331 0074 0DEB0701 add r1, sp, r7 + 5332 0078 3046 mov r0, r6 + 5333 007a FFF7FEFF bl LL_GPIO_Init + ARM GAS /tmp/ccEQxcUB.s page 271 - 4840 .loc 1 1385 3 is_stmt 1 view .LVU1540 -1385:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_8; - 4841 .loc 1 1385 24 is_stmt 0 view .LVU1541 - 4842 0070 0694 str r4, [sp, #24] -1386:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 4843 .loc 1 1386 3 is_stmt 1 view .LVU1542 -1386:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 4844 .loc 1 1386 29 is_stmt 0 view .LVU1543 - 4845 0072 0797 str r7, [sp, #28] -1387:Src/main.c **** - 4846 .loc 1 1387 3 is_stmt 1 view .LVU1544 - 4847 0074 0DEB0701 add r1, sp, r7 - 4848 0078 3046 mov r0, r6 - 4849 007a FFF7FEFF bl LL_GPIO_Init - 4850 .LVL475: -1393:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4851 .loc 1 1393 3 view .LVU1545 -1393:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; - 4852 .loc 1 1393 36 is_stmt 0 view .LVU1546 - 4853 007e 0894 str r4, [sp, #32] -1394:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4854 .loc 1 1394 3 is_stmt 1 view .LVU1547 -1394:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; - 4855 .loc 1 1394 23 is_stmt 0 view .LVU1548 - 4856 0080 4FF48273 mov r3, #260 - 4857 0084 0993 str r3, [sp, #36] -1395:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4858 .loc 1 1395 3 is_stmt 1 view .LVU1549 -1395:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; - 4859 .loc 1 1395 28 is_stmt 0 view .LVU1550 - 4860 0086 4FF47063 mov r3, #3840 - 4861 008a 0A93 str r3, [sp, #40] -1396:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; - 4862 .loc 1 1396 3 is_stmt 1 view .LVU1551 -1396:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; - 4863 .loc 1 1396 32 is_stmt 0 view .LVU1552 - 4864 008c 0B95 str r5, [sp, #44] -1397:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4865 .loc 1 1397 3 is_stmt 1 view .LVU1553 -1397:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; - 4866 .loc 1 1397 29 is_stmt 0 view .LVU1554 - 4867 008e 0123 movs r3, #1 - 4868 0090 0C93 str r3, [sp, #48] -1398:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4869 .loc 1 1398 3 is_stmt 1 view .LVU1555 -1398:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; - 4870 .loc 1 1398 22 is_stmt 0 view .LVU1556 - 4871 0092 4FF40073 mov r3, #512 - 4872 0096 0D93 str r3, [sp, #52] -1399:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4873 .loc 1 1399 3 is_stmt 1 view .LVU1557 -1399:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; - 4874 .loc 1 1399 27 is_stmt 0 view .LVU1558 - 4875 0098 1823 movs r3, #24 - 4876 009a 0E93 str r3, [sp, #56] -1400:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4877 .loc 1 1400 3 is_stmt 1 view .LVU1559 - ARM GAS /tmp/ccwR4KB7.s page 256 + 5334 .LVL537: +1489:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 5335 .loc 1 1489 3 view .LVU1682 +1489:Src/main.c **** SPI_InitStruct.Mode = LL_SPI_MODE_MASTER; + 5336 .loc 1 1489 36 is_stmt 0 view .LVU1683 + 5337 007e 0894 str r4, [sp, #32] +1490:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 5338 .loc 1 1490 3 is_stmt 1 view .LVU1684 +1490:Src/main.c **** SPI_InitStruct.DataWidth = LL_SPI_DATAWIDTH_16BIT; + 5339 .loc 1 1490 23 is_stmt 0 view .LVU1685 + 5340 0080 4FF48273 mov r3, #260 + 5341 0084 0993 str r3, [sp, #36] +1491:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 5342 .loc 1 1491 3 is_stmt 1 view .LVU1686 +1491:Src/main.c **** SPI_InitStruct.ClockPolarity = LL_SPI_POLARITY_HIGH; + 5343 .loc 1 1491 28 is_stmt 0 view .LVU1687 + 5344 0086 4FF47063 mov r3, #3840 + 5345 008a 0A93 str r3, [sp, #40] +1492:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; + 5346 .loc 1 1492 3 is_stmt 1 view .LVU1688 +1492:Src/main.c **** SPI_InitStruct.ClockPhase = LL_SPI_PHASE_2EDGE; + 5347 .loc 1 1492 32 is_stmt 0 view .LVU1689 + 5348 008c 0B95 str r5, [sp, #44] +1493:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 5349 .loc 1 1493 3 is_stmt 1 view .LVU1690 +1493:Src/main.c **** SPI_InitStruct.NSS = LL_SPI_NSS_SOFT; + 5350 .loc 1 1493 29 is_stmt 0 view .LVU1691 + 5351 008e 0123 movs r3, #1 + 5352 0090 0C93 str r3, [sp, #48] +1494:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 5353 .loc 1 1494 3 is_stmt 1 view .LVU1692 +1494:Src/main.c **** SPI_InitStruct.BaudRate = LL_SPI_BAUDRATEPRESCALER_DIV16; + 5354 .loc 1 1494 22 is_stmt 0 view .LVU1693 + 5355 0092 4FF40073 mov r3, #512 + 5356 0096 0D93 str r3, [sp, #52] +1495:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 5357 .loc 1 1495 3 is_stmt 1 view .LVU1694 +1495:Src/main.c **** SPI_InitStruct.BitOrder = LL_SPI_MSB_FIRST; + 5358 .loc 1 1495 27 is_stmt 0 view .LVU1695 + 5359 0098 1823 movs r3, #24 + 5360 009a 0E93 str r3, [sp, #56] +1496:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 5361 .loc 1 1496 3 is_stmt 1 view .LVU1696 +1496:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; + 5362 .loc 1 1496 27 is_stmt 0 view .LVU1697 + 5363 009c 0F94 str r4, [sp, #60] +1497:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 5364 .loc 1 1497 3 is_stmt 1 view .LVU1698 +1497:Src/main.c **** SPI_InitStruct.CRCPoly = 7; + 5365 .loc 1 1497 33 is_stmt 0 view .LVU1699 + 5366 009e 1094 str r4, [sp, #64] +1498:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); + 5367 .loc 1 1498 3 is_stmt 1 view .LVU1700 +1498:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); + 5368 .loc 1 1498 26 is_stmt 0 view .LVU1701 + 5369 00a0 0723 movs r3, #7 + 5370 00a2 1193 str r3, [sp, #68] + ARM GAS /tmp/ccEQxcUB.s page 272 -1400:Src/main.c **** SPI_InitStruct.CRCCalculation = LL_SPI_CRCCALCULATION_DISABLE; - 4878 .loc 1 1400 27 is_stmt 0 view .LVU1560 - 4879 009c 0F94 str r4, [sp, #60] -1401:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4880 .loc 1 1401 3 is_stmt 1 view .LVU1561 -1401:Src/main.c **** SPI_InitStruct.CRCPoly = 7; - 4881 .loc 1 1401 33 is_stmt 0 view .LVU1562 - 4882 009e 1094 str r4, [sp, #64] -1402:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); - 4883 .loc 1 1402 3 is_stmt 1 view .LVU1563 -1402:Src/main.c **** LL_SPI_Init(SPI6, &SPI_InitStruct); - 4884 .loc 1 1402 26 is_stmt 0 view .LVU1564 - 4885 00a0 0723 movs r3, #7 - 4886 00a2 1193 str r3, [sp, #68] -1403:Src/main.c **** LL_SPI_SetStandard(SPI6, LL_SPI_PROTOCOL_MOTOROLA); - 4887 .loc 1 1403 3 is_stmt 1 view .LVU1565 - 4888 00a4 094C ldr r4, .L274+8 - 4889 00a6 08A9 add r1, sp, #32 - 4890 00a8 2046 mov r0, r4 - 4891 00aa FFF7FEFF bl LL_SPI_Init - 4892 .LVL476: -1404:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI6); - 4893 .loc 1 1404 3 view .LVU1566 - 4894 .LBB467: - 4895 .LBI467: +1499:Src/main.c **** LL_SPI_SetStandard(SPI6, LL_SPI_PROTOCOL_MOTOROLA); + 5371 .loc 1 1499 3 is_stmt 1 view .LVU1702 + 5372 00a4 094C ldr r4, .L299+8 + 5373 00a6 08A9 add r1, sp, #32 + 5374 00a8 2046 mov r0, r4 + 5375 00aa FFF7FEFF bl LL_SPI_Init + 5376 .LVL538: +1500:Src/main.c **** LL_SPI_DisableNSSPulseMgt(SPI6); + 5377 .loc 1 1500 3 view .LVU1703 + 5378 .LBB503: + 5379 .LBI503: 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4896 .loc 4 426 22 view .LVU1567 - 4897 .LBB468: + 5380 .loc 4 426 22 view .LVU1704 + 5381 .LBB504: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4898 .loc 4 428 3 view .LVU1568 - 4899 00ae 6368 ldr r3, [r4, #4] - 4900 00b0 23F01003 bic r3, r3, #16 - 4901 00b4 6360 str r3, [r4, #4] - 4902 .LVL477: + 5382 .loc 4 428 3 view .LVU1705 + 5383 00ae 6368 ldr r3, [r4, #4] + 5384 00b0 23F01003 bic r3, r3, #16 + 5385 00b4 6360 str r3, [r4, #4] + 5386 .LVL539: 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4903 .loc 4 428 3 is_stmt 0 view .LVU1569 - 4904 .LBE468: - 4905 .LBE467: -1405:Src/main.c **** /* USER CODE BEGIN SPI6_Init 2 */ - 4906 .loc 1 1405 3 is_stmt 1 view .LVU1570 - 4907 .LBB469: - 4908 .LBI469: + 5387 .loc 4 428 3 is_stmt 0 view .LVU1706 + 5388 .LBE504: + 5389 .LBE503: +1501:Src/main.c **** /* USER CODE BEGIN SPI6_Init 2 */ + 5390 .loc 1 1501 3 is_stmt 1 view .LVU1707 + 5391 .LBB505: + 5392 .LBI505: 874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 4909 .loc 4 874 22 view .LVU1571 - 4910 .LBB470: + 5393 .loc 4 874 22 view .LVU1708 + 5394 .LBB506: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4911 .loc 4 876 3 view .LVU1572 - 4912 00b6 6368 ldr r3, [r4, #4] - 4913 00b8 23F00803 bic r3, r3, #8 - 4914 00bc 6360 str r3, [r4, #4] - 4915 .LVL478: + 5395 .loc 4 876 3 view .LVU1709 + 5396 00b6 6368 ldr r3, [r4, #4] + 5397 00b8 23F00803 bic r3, r3, #8 + 5398 00bc 6360 str r3, [r4, #4] + 5399 .LVL540: 876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 4916 .loc 4 876 3 is_stmt 0 view .LVU1573 - 4917 .LBE470: - 4918 .LBE469: -1410:Src/main.c **** - 4919 .loc 1 1410 1 view .LVU1574 - ARM GAS /tmp/ccwR4KB7.s page 257 + 5400 .loc 4 876 3 is_stmt 0 view .LVU1710 + 5401 .LBE506: + 5402 .LBE505: +1506:Src/main.c **** + 5403 .loc 1 1506 1 view .LVU1711 + 5404 00be 12B0 add sp, sp, #72 + 5405 .LCFI51: + 5406 .cfi_def_cfa_offset 24 + 5407 @ sp needed + 5408 00c0 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 5409 .L300: + 5410 .align 2 + 5411 .L299: + 5412 00c4 00380240 .word 1073887232 + 5413 00c8 00000240 .word 1073872896 + 5414 00cc 00540140 .word 1073828864 + 5415 .cfi_endproc + 5416 .LFE1194: + 5418 .section .text.MX_TIM2_Init,"ax",%progbits + ARM GAS /tmp/ccEQxcUB.s page 273 - 4920 00be 12B0 add sp, sp, #72 - 4921 .LCFI49: - 4922 .cfi_def_cfa_offset 24 - 4923 @ sp needed - 4924 00c0 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 4925 .L275: - 4926 .align 2 - 4927 .L274: - 4928 00c4 00380240 .word 1073887232 - 4929 00c8 00000240 .word 1073872896 - 4930 00cc 00540140 .word 1073828864 - 4931 .cfi_endproc - 4932 .LFE1194: - 4934 .section .text.MX_TIM2_Init,"ax",%progbits - 4935 .align 1 - 4936 .syntax unified - 4937 .thumb - 4938 .thumb_func - 4940 MX_TIM2_Init: - 4941 .LFB1195: -1418:Src/main.c **** - 4942 .loc 1 1418 1 is_stmt 1 view -0 - 4943 .cfi_startproc - 4944 @ args = 0, pretend = 0, frame = 24 - 4945 @ frame_needed = 0, uses_anonymous_args = 0 - 4946 0000 10B5 push {r4, lr} - 4947 .LCFI50: - 4948 .cfi_def_cfa_offset 8 - 4949 .cfi_offset 4, -8 - 4950 .cfi_offset 14, -4 - 4951 0002 86B0 sub sp, sp, #24 - 4952 .LCFI51: - 4953 .cfi_def_cfa_offset 32 -1424:Src/main.c **** - 4954 .loc 1 1424 3 view .LVU1576 -1424:Src/main.c **** - 4955 .loc 1 1424 22 is_stmt 0 view .LVU1577 - 4956 0004 0024 movs r4, #0 - 4957 0006 0194 str r4, [sp, #4] - 4958 0008 0294 str r4, [sp, #8] - 4959 000a 0394 str r4, [sp, #12] - 4960 000c 0494 str r4, [sp, #16] - 4961 000e 0594 str r4, [sp, #20] -1427:Src/main.c **** - 4962 .loc 1 1427 3 is_stmt 1 view .LVU1578 - 4963 .LVL479: - 4964 .LBB471: - 4965 .LBI471: + 5419 .align 1 + 5420 .syntax unified + 5421 .thumb + 5422 .thumb_func + 5424 MX_TIM2_Init: + 5425 .LFB1195: +1514:Src/main.c **** + 5426 .loc 1 1514 1 is_stmt 1 view -0 + 5427 .cfi_startproc + 5428 @ args = 0, pretend = 0, frame = 24 + 5429 @ frame_needed = 0, uses_anonymous_args = 0 + 5430 0000 10B5 push {r4, lr} + 5431 .LCFI52: + 5432 .cfi_def_cfa_offset 8 + 5433 .cfi_offset 4, -8 + 5434 .cfi_offset 14, -4 + 5435 0002 86B0 sub sp, sp, #24 + 5436 .LCFI53: + 5437 .cfi_def_cfa_offset 32 +1520:Src/main.c **** + 5438 .loc 1 1520 3 view .LVU1713 +1520:Src/main.c **** + 5439 .loc 1 1520 22 is_stmt 0 view .LVU1714 + 5440 0004 0024 movs r4, #0 + 5441 0006 0194 str r4, [sp, #4] + 5442 0008 0294 str r4, [sp, #8] + 5443 000a 0394 str r4, [sp, #12] + 5444 000c 0494 str r4, [sp, #16] + 5445 000e 0594 str r4, [sp, #20] +1523:Src/main.c **** + 5446 .loc 1 1523 3 is_stmt 1 view .LVU1715 + 5447 .LVL541: + 5448 .LBB507: + 5449 .LBI507: 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 4966 .loc 3 1071 22 view .LVU1579 - 4967 .LBB472: + 5450 .loc 3 1071 22 view .LVU1716 + 5451 .LBB508: 1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); - 4968 .loc 3 1073 3 view .LVU1580 + 5452 .loc 3 1073 3 view .LVU1717 1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 4969 .loc 3 1074 3 view .LVU1581 - 4970 0010 1D4B ldr r3, .L278 - 4971 0012 1A6C ldr r2, [r3, #64] - ARM GAS /tmp/ccwR4KB7.s page 258 + 5453 .loc 3 1074 3 view .LVU1718 + 5454 0010 1D4B ldr r3, .L303 + 5455 0012 1A6C ldr r2, [r3, #64] + 5456 0014 42F00102 orr r2, r2, #1 + 5457 0018 1A64 str r2, [r3, #64] +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5458 .loc 3 1076 3 view .LVU1719 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5459 .loc 3 1076 12 is_stmt 0 view .LVU1720 + 5460 001a 1B6C ldr r3, [r3, #64] + 5461 001c 03F00103 and r3, r3, #1 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5462 .loc 3 1076 10 view .LVU1721 + 5463 0020 0093 str r3, [sp] +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 5464 .loc 3 1077 3 is_stmt 1 view .LVU1722 + 5465 0022 009B ldr r3, [sp] + ARM GAS /tmp/ccEQxcUB.s page 274 - 4972 0014 42F00102 orr r2, r2, #1 - 4973 0018 1A64 str r2, [r3, #64] -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4974 .loc 3 1076 3 view .LVU1582 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4975 .loc 3 1076 12 is_stmt 0 view .LVU1583 - 4976 001a 1B6C ldr r3, [r3, #64] - 4977 001c 03F00103 and r3, r3, #1 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 4978 .loc 3 1076 10 view .LVU1584 - 4979 0020 0093 str r3, [sp] + 5466 .LVL542: 1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4980 .loc 3 1077 3 is_stmt 1 view .LVU1585 - 4981 0022 009B ldr r3, [sp] - 4982 .LVL480: -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 4983 .loc 3 1077 3 is_stmt 0 view .LVU1586 - 4984 .LBE472: - 4985 .LBE471: -1430:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); - 4986 .loc 1 1430 3 is_stmt 1 view .LVU1587 - 4987 .LBB473: - 4988 .LBI473: + 5467 .loc 3 1077 3 is_stmt 0 view .LVU1723 + 5468 .LBE508: + 5469 .LBE507: +1526:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); + 5470 .loc 1 1526 3 is_stmt 1 view .LVU1724 + 5471 .LBB509: + 5472 .LBI509: 1884:Drivers/CMSIS/Include/core_cm7.h **** { - 4989 .loc 2 1884 26 view .LVU1588 - 4990 .LBB474: + 5473 .loc 2 1884 26 view .LVU1725 + 5474 .LBB510: 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 4991 .loc 2 1886 3 view .LVU1589 + 5475 .loc 2 1886 3 view .LVU1726 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 4992 .loc 2 1886 26 is_stmt 0 view .LVU1590 - 4993 0024 194B ldr r3, .L278+4 - 4994 0026 D868 ldr r0, [r3, #12] - 4995 .LBE474: - 4996 .LBE473: -1430:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); - 4997 .loc 1 1430 3 discriminator 1 view .LVU1591 - 4998 0028 2246 mov r2, r4 - 4999 002a 2146 mov r1, r4 - 5000 002c C0F30220 ubfx r0, r0, #8, #3 - 5001 0030 FFF7FEFF bl NVIC_EncodePriority - 5002 .LVL481: - 5003 .LBB475: - 5004 .LBI475: + 5476 .loc 2 1886 26 is_stmt 0 view .LVU1727 + 5477 0024 194B ldr r3, .L303+4 + 5478 0026 D868 ldr r0, [r3, #12] + 5479 .LBE510: + 5480 .LBE509: +1526:Src/main.c **** NVIC_EnableIRQ(TIM2_IRQn); + 5481 .loc 1 1526 3 discriminator 1 view .LVU1728 + 5482 0028 2246 mov r2, r4 + 5483 002a 2146 mov r1, r4 + 5484 002c C0F30220 ubfx r0, r0, #8, #3 + 5485 0030 FFF7FEFF bl NVIC_EncodePriority + 5486 .LVL543: + 5487 .LBB511: + 5488 .LBI511: 2024:Drivers/CMSIS/Include/core_cm7.h **** { - 5005 .loc 2 2024 22 is_stmt 1 view .LVU1592 - 5006 .LBB476: + 5489 .loc 2 2024 22 is_stmt 1 view .LVU1729 + 5490 .LBB512: 2026:Drivers/CMSIS/Include/core_cm7.h **** { - 5007 .loc 2 2026 3 view .LVU1593 + 5491 .loc 2 2026 3 view .LVU1730 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5008 .loc 2 2028 5 view .LVU1594 + 5492 .loc 2 2028 5 view .LVU1731 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5009 .loc 2 2028 49 is_stmt 0 view .LVU1595 - 5010 0034 0001 lsls r0, r0, #4 - 5011 .LVL482: + 5493 .loc 2 2028 49 is_stmt 0 view .LVU1732 + 5494 0034 0001 lsls r0, r0, #4 + 5495 .LVL544: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5012 .loc 2 2028 49 view .LVU1596 - 5013 0036 C0B2 uxtb r0, r0 - ARM GAS /tmp/ccwR4KB7.s page 259 - - + 5496 .loc 2 2028 49 view .LVU1733 + 5497 0036 C0B2 uxtb r0, r0 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5014 .loc 2 2028 47 view .LVU1597 - 5015 0038 154B ldr r3, .L278+8 - 5016 003a 83F81C03 strb r0, [r3, #796] - 5017 .LVL483: + 5498 .loc 2 2028 47 view .LVU1734 + 5499 0038 154B ldr r3, .L303+8 + 5500 003a 83F81C03 strb r0, [r3, #796] + 5501 .LVL545: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5018 .loc 2 2028 47 view .LVU1598 - 5019 .LBE476: - 5020 .LBE475: -1431:Src/main.c **** - 5021 .loc 1 1431 3 is_stmt 1 view .LVU1599 - 5022 .LBB477: - 5023 .LBI477: + 5502 .loc 2 2028 47 view .LVU1735 + 5503 .LBE512: + 5504 .LBE511: +1527:Src/main.c **** + 5505 .loc 1 1527 3 is_stmt 1 view .LVU1736 + 5506 .LBB513: + 5507 .LBI513: 1896:Drivers/CMSIS/Include/core_cm7.h **** { - 5024 .loc 2 1896 22 view .LVU1600 - 5025 .LBB478: + ARM GAS /tmp/ccEQxcUB.s page 275 + + + 5508 .loc 2 1896 22 view .LVU1737 + 5509 .LBB514: 1898:Drivers/CMSIS/Include/core_cm7.h **** { - 5026 .loc 2 1898 3 view .LVU1601 + 5510 .loc 2 1898 3 view .LVU1738 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5027 .loc 2 1900 5 view .LVU1602 + 5511 .loc 2 1900 5 view .LVU1739 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5028 .loc 2 1900 43 is_stmt 0 view .LVU1603 - 5029 003e 4FF08052 mov r2, #268435456 - 5030 0042 1A60 str r2, [r3] - 5031 .LVL484: + 5512 .loc 2 1900 43 is_stmt 0 view .LVU1740 + 5513 003e 4FF08052 mov r2, #268435456 + 5514 0042 1A60 str r2, [r3] + 5515 .LVL546: 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5032 .loc 2 1900 43 view .LVU1604 - 5033 .LBE478: - 5034 .LBE477: -1436:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5035 .loc 1 1436 3 is_stmt 1 view .LVU1605 -1436:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5036 .loc 1 1436 28 is_stmt 0 view .LVU1606 - 5037 0044 4FF47A73 mov r3, #1000 - 5038 0048 ADF80430 strh r3, [sp, #4] @ movhi -1437:Src/main.c **** TIM_InitStruct.Autoreload = 840000; - 5039 .loc 1 1437 3 is_stmt 1 view .LVU1607 -1437:Src/main.c **** TIM_InitStruct.Autoreload = 840000; - 5040 .loc 1 1437 30 is_stmt 0 view .LVU1608 - 5041 004c 0294 str r4, [sp, #8] -1438:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; - 5042 .loc 1 1438 3 is_stmt 1 view .LVU1609 -1438:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; - 5043 .loc 1 1438 29 is_stmt 0 view .LVU1610 - 5044 004e 114B ldr r3, .L278+12 - 5045 0050 0393 str r3, [sp, #12] -1439:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); - 5046 .loc 1 1439 3 is_stmt 1 view .LVU1611 -1439:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); - 5047 .loc 1 1439 32 is_stmt 0 view .LVU1612 - 5048 0052 0494 str r4, [sp, #16] -1440:Src/main.c **** LL_TIM_DisableARRPreload(TIM2); - 5049 .loc 1 1440 3 is_stmt 1 view .LVU1613 - 5050 0054 01A9 add r1, sp, #4 - 5051 0056 4FF08040 mov r0, #1073741824 - 5052 005a FFF7FEFF bl LL_TIM_Init - 5053 .LVL485: - ARM GAS /tmp/ccwR4KB7.s page 260 - - -1441:Src/main.c **** LL_TIM_SetClockSource(TIM2, LL_TIM_CLOCKSOURCE_INTERNAL); - 5054 .loc 1 1441 3 view .LVU1614 - 5055 .LBB479: - 5056 .LBI479: - 5057 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" + 5516 .loc 2 1900 43 view .LVU1741 + 5517 .LBE514: + 5518 .LBE513: +1532:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5519 .loc 1 1532 3 is_stmt 1 view .LVU1742 +1532:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5520 .loc 1 1532 28 is_stmt 0 view .LVU1743 + 5521 0044 4FF47A73 mov r3, #1000 + 5522 0048 ADF80430 strh r3, [sp, #4] @ movhi +1533:Src/main.c **** TIM_InitStruct.Autoreload = 840000; + 5523 .loc 1 1533 3 is_stmt 1 view .LVU1744 +1533:Src/main.c **** TIM_InitStruct.Autoreload = 840000; + 5524 .loc 1 1533 30 is_stmt 0 view .LVU1745 + 5525 004c 0294 str r4, [sp, #8] +1534:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; + 5526 .loc 1 1534 3 is_stmt 1 view .LVU1746 +1534:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; + 5527 .loc 1 1534 29 is_stmt 0 view .LVU1747 + 5528 004e 114B ldr r3, .L303+12 + 5529 0050 0393 str r3, [sp, #12] +1535:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); + 5530 .loc 1 1535 3 is_stmt 1 view .LVU1748 +1535:Src/main.c **** LL_TIM_Init(TIM2, &TIM_InitStruct); + 5531 .loc 1 1535 32 is_stmt 0 view .LVU1749 + 5532 0052 0494 str r4, [sp, #16] +1536:Src/main.c **** LL_TIM_DisableARRPreload(TIM2); + 5533 .loc 1 1536 3 is_stmt 1 view .LVU1750 + 5534 0054 01A9 add r1, sp, #4 + 5535 0056 4FF08040 mov r0, #1073741824 + 5536 005a FFF7FEFF bl LL_TIM_Init + 5537 .LVL547: +1537:Src/main.c **** LL_TIM_SetClockSource(TIM2, LL_TIM_CLOCKSOURCE_INTERNAL); + 5538 .loc 1 1537 3 view .LVU1751 + 5539 .LBB515: + 5540 .LBI515: + 5541 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @file stm32f7xx_ll_tim.h @@ -15555,6 +16498,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 7:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @attention 8:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * 9:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * Copyright (c) 2017 STMicroelectronics. + ARM GAS /tmp/ccEQxcUB.s page 276 + + 10:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * All rights reserved. 11:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * 12:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * This software is licensed under terms that can be found in the LICENSE file @@ -15598,9 +16544,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 50:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x00U, /* 3: TIMx_CH2N */ 51:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x04U, /* 4: TIMx_CH3 */ 52:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x04U, /* 5: TIMx_CH3N */ - ARM GAS /tmp/ccwR4KB7.s page 261 - - 53:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x04U, /* 6: TIMx_CH4 */ 54:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x3CU, /* 7: TIMx_CH5 */ 55:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x3CU /* 8: TIMx_CH6 */ @@ -15615,6 +16558,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 64:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0U, /* 4: OC3M, OC3FE, OC3PE */ 65:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0U, /* 5: - NA */ 66:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 8U, /* 6: OC4M, OC4FE, OC4PE */ + ARM GAS /tmp/ccEQxcUB.s page 277 + + 67:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0U, /* 7: OC5M, OC5FE, OC5PE */ 68:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 8U /* 8: OC6M, OC6FE, OC6PE */ 69:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** }; @@ -15658,9 +16604,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 107:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 10U /* 8: OIS6 */ 108:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** }; 109:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 262 - - 110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 111:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 112:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -15675,6 +16618,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 121:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 122:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /* Generic bit definitions for TIMx_AF1 register */ 123:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define TIMx_AF1_BKINP TIM1_AF1_BKINP /*!< BRK BKIN input polarity */ + ARM GAS /tmp/ccEQxcUB.s page 278 + + 124:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #endif /* TIM_BREAK_INPUT_SUPPORT */ 125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /* Remap mask definitions */ @@ -15718,9 +16664,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 164:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 165:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval none 166:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 263 - - 167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define TIM_GET_CHANNEL_INDEX( __CHANNEL__) \ 168:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** (((__CHANNEL__) == LL_TIM_CHANNEL_CH1) ? 0U :\ 169:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** ((__CHANNEL__) == LL_TIM_CHANNEL_CH1N) ? 1U :\ @@ -15735,6 +16678,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 178:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __TIMCLK__ timer input clock frequency (in Hz). 179:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __CKD__ This parameter can be one of the following values: 180:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV1 + ARM GAS /tmp/ccEQxcUB.s page 279 + + 181:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV2 182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV4 183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval none @@ -15778,9 +16724,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 221:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** be a number between 0x0000 and 0xFFFFFFFF. 222:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 223:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary function - ARM GAS /tmp/ccwR4KB7.s page 264 - - 224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_SetAutoReload().*/ 225:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 226:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t ClockDivision; /*!< Specifies the clock division. @@ -15795,6 +16738,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This means in PWM mode that (N+1) corresponds to: 236:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - the number of PWM periods in edge-aligned mode 237:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - the number of half PWM period in center-aligned mode + ARM GAS /tmp/ccEQxcUB.s page 280 + + 238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** GP timers: this parameter must be a number between Min_Data = 0x 239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** Max_Data = 0xFF. 240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** Advanced timers: this parameter must be a number between Min_Dat @@ -15838,9 +16784,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary function 280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_OC_SetPolarity().*/ - ARM GAS /tmp/ccwR4KB7.s page 265 - - 281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 282:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t OCNPolarity; /*!< Specifies the complementary output polarity. 283:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_OCPOLARITY. @@ -15855,6 +16798,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 292:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary function 293:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_OC_SetIdleState().*/ 294:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 281 + + 295:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t OCNIdleState; /*!< Specifies the TIM Output Compare pin state during Idle state. 296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_OCIDLESTATE. 297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -15898,9 +16844,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 335:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 336:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief TIM Encoder interface configuration structure definition. 337:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 266 - - 338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** typedef struct 339:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 340:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t EncoderMode; /*!< Specifies the encoder resolution (x2 or x4). @@ -15915,6 +16858,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 349:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary function 350:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_IC_SetPolarity().*/ 351:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 282 + + 352:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t IC1ActiveInput; /*!< Specifies the TI1 input source 353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_ACTIVEINPUT. 354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -15958,9 +16904,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 392:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_IC_SetFilter().*/ 393:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 394:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } LL_TIM_ENCODER_InitTypeDef; - ARM GAS /tmp/ccwR4KB7.s page 267 - - 395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 396:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 397:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief TIM Hall sensor interface configuration structure definition. @@ -15975,6 +16918,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 406:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_IC_SetPolarity().*/ 407:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 408:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t IC1Prescaler; /*!< Specifies the TI1 input prescaler value. + ARM GAS /tmp/ccEQxcUB.s page 283 + + 409:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** Prescaler must be set to get a maximum counter period longer th 410:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** time interval between 2 consecutive changes on the Hall inputs. 411:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_ICPSC. @@ -16018,9 +16964,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 449:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary functio 450:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_SetOffStates() 451:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 268 - - 452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @note This bit-field cannot be modified as long as LOCK level 453:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** programmed. */ 454:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -16035,6 +16978,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 463:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a number between Min_Data = 0x00 and Ma 464:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 465:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary functio + ARM GAS /tmp/ccEQxcUB.s page 284 + + 466:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_OC_SetDeadTime() 467:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 468:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @note This bit-field can not be modified as long as LOCK leve @@ -16078,9 +17024,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 507:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t Break2Polarity; /*!< Specifies the TIM Break2 Input pin polarity. 508:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_BREAK2_POLARI - ARM GAS /tmp/ccwR4KB7.s page 269 - - 509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 510:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary functio 511:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_ConfigBRK2() @@ -16095,6 +17038,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 520:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_ConfigBRK2() 521:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 522:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @note This bit-field can not be modified as long as LOCK leve + ARM GAS /tmp/ccEQxcUB.s page 285 + + 523:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** programmed. */ 524:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 525:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t AutomaticOutput; /*!< Specifies whether the TIM Automatic Output feature is enabled @@ -16138,9 +17084,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 563:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_CC4OF TIM_SR_CC4OF /*!< Capture/Compare 4 overcapt 564:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_SBIF TIM_SR_SBIF /*!< System Break interrupt fla 565:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 270 - - 566:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 567:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 568:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -16155,6 +17098,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 577:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 578:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 579:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_BREAK2_ENABLE Break2 Enable + ARM GAS /tmp/ccEQxcUB.s page 286 + + 580:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_DISABLE 0x00000000U /*!< Break2 function disabled */ @@ -16198,9 +17144,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 621:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 622:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 271 - - 623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_ONEPULSEMODE One Pulse Mode 624:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 625:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -16215,6 +17158,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 634:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 635:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_COUNTERMODE_UP 0x00000000U /*!< Counter used as upcounter 636:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_COUNTERMODE_DOWN TIM_CR1_DIR /*!< Counter used as downcounte + ARM GAS /tmp/ccEQxcUB.s page 287 + + 637:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_COUNTERMODE_CENTER_DOWN TIM_CR1_CMS_0 /*!< The counter counts up and 638:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_COUNTERMODE_CENTER_UP TIM_CR1_CMS_1 /*!< The counter counts up and 639:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_COUNTERMODE_CENTER_UP_DOWN TIM_CR1_CMS /*!< The counter counts up and @@ -16258,9 +17204,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 677:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 678:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 679:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 272 - - 680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 681:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_LOCKLEVEL Lock Level 682:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ @@ -16275,6 +17218,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 691:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 692:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_CHANNEL Channel 693:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ + ARM GAS /tmp/ccEQxcUB.s page 288 + + 694:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_CHANNEL_CH1 TIM_CCER_CC1E /*!< Timer input/output channel 1 696:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_CHANNEL_CH1N TIM_CCER_CC1NE /*!< Timer complementary output ch @@ -16318,9 +17264,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 734:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_TOGGLE (TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) 735:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_FORCED_INACTIVE TIM_CCMR1_OC1M_2 736:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_FORCED_ACTIVE (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_0) - ARM GAS /tmp/ccwR4KB7.s page 273 - - 737:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_PWM1 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1) 738:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_PWM2 (TIM_CCMR1_OC1M_2 | TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1 739:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_RETRIG_OPM1 TIM_CCMR1_OC1M_3 @@ -16335,6 +17278,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 748:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 749:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_OCPOLARITY Output Configuration Polarity 750:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ + ARM GAS /tmp/ccEQxcUB.s page 289 + + 751:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 752:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCPOLARITY_HIGH 0x00000000U /*!< OCxactive high*/ 753:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCPOLARITY_LOW TIM_CCER_CC1P /*!< OCxactive low*/ @@ -16378,9 +17324,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 791:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ICPSC_DIV1 0x00000000U /*!< No prescaler, ca 792:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ICPSC_DIV2 (TIM_CCMR1_IC1PSC_0 << 16U) /*!< Capture is done 793:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ICPSC_DIV4 (TIM_CCMR1_IC1PSC_1 << 16U) /*!< Capture is done - ARM GAS /tmp/ccwR4KB7.s page 274 - - 794:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ICPSC_DIV8 (TIM_CCMR1_IC1PSC << 16U) /*!< Capture is done 795:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 796:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} @@ -16395,6 +17338,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 805:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV1_N8 ((TIM_CCMR1_IC1F_1 | TIM_CCMR1_IC1F_0) << 16U) 806:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV2_N6 (TIM_CCMR1_IC1F_2 << 16U) 807:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV2_N8 ((TIM_CCMR1_IC1F_2 | TIM_CCMR1_IC1F_0) << 16U) + ARM GAS /tmp/ccEQxcUB.s page 290 + + 808:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV4_N6 ((TIM_CCMR1_IC1F_2 | TIM_CCMR1_IC1F_1) << 16U) 809:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV4_N8 ((TIM_CCMR1_IC1F_2 | TIM_CCMR1_IC1F_1 | TIM_CCMR1_IC 810:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_IC_FILTER_FDIV8_N6 (TIM_CCMR1_IC1F_3 << 16U) @@ -16438,9 +17384,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 848:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 849:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 850:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 275 - - 851:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 852:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_TRGO Trigger Output 853:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ @@ -16455,6 +17398,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 862:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TRGO_OC4REF (TIM_CR2_MMS_2 | TIM_CR2_MMS_1 | TIM_CR2_MMS_0) /*!< 863:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 864:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} + ARM GAS /tmp/ccEQxcUB.s page 291 + + 865:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 866:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 867:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_TRGO2 Trigger Output 2 @@ -16498,9 +17444,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_ITR0 0x00000000U 906:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_ITR1 TIM_SMCR_TS_0 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_ITR2 TIM_SMCR_TS_1 - ARM GAS /tmp/ccwR4KB7.s page 276 - - 908:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_ITR3 (TIM_SMCR_TS_0 | TIM_SMCR_TS_1) 909:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_TI1F_ED TIM_SMCR_TS_2 910:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_TI1FP1 (TIM_SMCR_TS_2 | TIM_SMCR_TS_0) @@ -16515,6 +17458,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 919:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 920:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ETR_POLARITY_NONINVERTED 0x00000000U /*!< ETR is non-inverted, ac 921:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ETR_POLARITY_INVERTED TIM_SMCR_ETP /*!< ETR is inverted, active + ARM GAS /tmp/ccEQxcUB.s page 292 + + 922:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 923:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 924:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -16558,9 +17504,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 962:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 963:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 964:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_POLARITY_LOW 0x00000000U /*!< Break input BRK is ac - ARM GAS /tmp/ccwR4KB7.s page 277 - - 965:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_POLARITY_HIGH TIM_BDTR_BKP /*!< Break input BRK is ac 966:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 967:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} @@ -16575,6 +17518,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 976:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV1_N8 0x00030000U /*!< fSAMPLING=fCK_INT, N=8 */ 977:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV2_N6 0x00040000U /*!< fSAMPLING=fDTS/2, N=6 */ 978:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV2_N8 0x00050000U /*!< fSAMPLING=fDTS/2, N=8 */ + ARM GAS /tmp/ccEQxcUB.s page 293 + + 979:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV4_N6 0x00060000U /*!< fSAMPLING=fDTS/4, N=6 */ 980:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV4_N8 0x00070000U /*!< fSAMPLING=fDTS/4, N=8 */ 981:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK_FILTER_FDIV8_N6 0x00080000U /*!< fSAMPLING=fDTS/8, N=6 */ @@ -16618,9 +17564,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1019:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV32_N6 0x00E00000U /*!< fSAMPLING=fDTS/32, N=6 */ 1020:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV32_N8 0x00F00000U /*!< fSAMPLING=fDTS/32, N=8 */ 1021:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 278 - - 1022:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 1023:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1024:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -16635,6 +17578,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1033:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1034:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_OSSR OSSR 1035:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ + ARM GAS /tmp/ccEQxcUB.s page 294 + + 1036:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1037:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OSSR_DISABLE 0x00000000U /*!< When inactive, OCx/OCxN 1038:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OSSR_ENABLE TIM_BDTR_OSSR /*!< When inactive, OC/OCN o @@ -16678,9 +17624,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CR2 TIM_DCR_DBA_0 1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_SMCR TIM_DCR_DBA_1 1078:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_DIER (TIM_DCR_DBA_1 | TIM_DCR_DBA_0) - ARM GAS /tmp/ccwR4KB7.s page 279 - - 1079:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_SR TIM_DCR_DBA_2 1080:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_EGR (TIM_DCR_DBA_2 | TIM_DCR_DBA_0) 1081:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CCMR1 (TIM_DCR_DBA_2 | TIM_DCR_DBA_1) @@ -16695,6 +17638,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1090:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CCR3 (TIM_DCR_DBA_3 | TIM_DCR_DBA_2 | TIM_DCR_DBA_1 | TIM 1091:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CCR4 TIM_DCR_DBA_4 1092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_BDTR (TIM_DCR_DBA_4 | TIM_DCR_DBA_0) + ARM GAS /tmp/ccEQxcUB.s page 295 + + 1093:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_OR (TIM_DCR_DBA_4 | TIM_DCR_DBA_2) 1094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CCMR3 (TIM_DCR_DBA_4 | TIM_DCR_DBA_2 | TIM_DCR_DBA_0) 1095:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CCR5 (TIM_DCR_DBA_4 | TIM_DCR_DBA_2 | TIM_DCR_DBA_1) @@ -16738,9 +17684,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1133:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1134:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM2_ITR1_RMP_TIM8_TRGO TIM2_OR_RMP_MASK /*!< TIM2_ITR1 1135:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM2_ITR1_RMP_ETH_PTP (TIM2_OR_ITR1_RMP_0 | TIM2_OR_RMP_MASK) /*!< TIM2_ITR1 - ARM GAS /tmp/ccwR4KB7.s page 280 - - 1136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM2_ITR1_RMP_OTG_FS_SOF (TIM2_OR_ITR1_RMP_1 | TIM2_OR_RMP_MASK) /*!< TIM2_ITR1 1137:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM2_ITR1_RMP_OTG_HS_SOF (TIM2_OR_ITR1_RMP | TIM2_OR_RMP_MASK) /*!< TIM2_ITR1 1138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -16755,6 +17698,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1147:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM5_TI4_RMP_LSE (TIM5_OR_TI4_RMP_1 | TIM5_OR_RMP_MASK) /*!< TIM5 chan 1148:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TIM5_TI4_RMP_RTC (TIM5_OR_TI4_RMP | TIM5_OR_RMP_MASK) /*!< TIM5 chan 1149:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 296 + + 1150:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 1151:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1152:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -16798,9 +17744,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1190:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Register value 1191:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1192:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ReadReg(__INSTANCE__, __REG__) READ_REG((__INSTANCE__)->__REG__) - ARM GAS /tmp/ccwR4KB7.s page 281 - - 1193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1194:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 1195:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -16815,6 +17758,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1204:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1205:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define __LL_TIM_GETFLAG_UIFCPY(__CNT__) \ 1206:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** (READ_BIT((__CNT__), TIM_CNT_UIFCPY) >> TIM_CNT_UIFCPY_Pos) + ARM GAS /tmp/ccEQxcUB.s page 297 + + 1207:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1208:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1209:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief HELPER macro calculating DTG[0:7] in the TIMx_BDTR register to achieve the requested de @@ -16858,9 +17804,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1247:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __PSC__ prescaler 1248:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __FREQ__ output signal frequency (in Hz) 1249:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Auto-reload value (between Min_Data=0 and Max_Data=65535) - ARM GAS /tmp/ccwR4KB7.s page 282 - - 1250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1251:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define __LL_TIM_CALC_ARR(__TIMCLK__, __PSC__, __FREQ__) \ 1252:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** ((((__TIMCLK__)/((__PSC__) + 1U)) >= (__FREQ__)) ? (((__TIMCLK__)/((__FREQ__) * ((__PSC__) + 1U)) @@ -16875,6 +17818,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1261:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Compare value (between Min_Data=0 and Max_Data=65535) 1262:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1263:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define __LL_TIM_CALC_DELAY(__TIMCLK__, __PSC__, __DELAY__) \ + ARM GAS /tmp/ccEQxcUB.s page 298 + + 1264:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** ((uint32_t)(((uint64_t)(__TIMCLK__) * (uint64_t)(__DELAY__)) \ 1265:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** / ((uint64_t)1000000U * (uint64_t)((__PSC__) + 1U)))) 1266:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -16918,9 +17864,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1304:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EF_Time_Base Time Base configuration 1305:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 1306:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 283 - - 1307:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1308:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable timer counter. 1309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 CEN LL_TIM_EnableCounter @@ -16935,6 +17878,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1318:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1319:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Disable timer counter. 1320:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 CEN LL_TIM_DisableCounter + ARM GAS /tmp/ccEQxcUB.s page 299 + + 1321:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1322:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 1323:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -16978,9 +17924,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1361:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1362:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1363:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicates whether update event generation is enabled. - ARM GAS /tmp/ccwR4KB7.s page 284 - - 1364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 UDIS LL_TIM_IsEnabledUpdateEvent 1365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Inverted state of bit (0 or 1). @@ -16995,6 +17938,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1375:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Update event source set to LL_TIM_UPDATESOURCE_REGULAR: any of the following events 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * generate an update interrupt or DMA request if enabled: 1377:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * - Counter overflow/underflow + ARM GAS /tmp/ccEQxcUB.s page 300 + + 1378:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * - Setting the UG bit 1379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * - Update generation through the slave mode controller 1380:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Update event source set to LL_TIM_UPDATESOURCE_COUNTER: only counter @@ -17038,9 +17984,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1418:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->CR1, TIM_CR1_OPM, OnePulseMode); 1419:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1420:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 285 - - 1421:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1422:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get actual one pulse mode. 1423:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 OPM LL_TIM_GetOnePulseMode @@ -17055,6 +17998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1432:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1433:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1434:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 301 + + 1435:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the timer counter counting mode. 1436:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_COUNTER_MODE_SELECT_INSTANCE(TIMx) can be used to 1437:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * check whether or not the counter mode selection feature is supported @@ -17098,9 +18044,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1475:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t counter_mode; 1476:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1477:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** counter_mode = (uint32_t)(READ_BIT(TIMx->CR1, TIM_CR1_CMS)); - ARM GAS /tmp/ccwR4KB7.s page 286 - - 1478:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1479:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** if (counter_mode == 0U) 1480:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -17115,6 +18058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1489:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 ARPE LL_TIM_EnableARRPreload 1490:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1491:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 302 + + 1492:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1493:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_EnableARRPreload(TIM_TypeDef *TIMx) 1494:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -17128,23 +18074,23 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1502:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 1503:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_DisableARRPreload(TIM_TypeDef *TIMx) - 5058 .loc 5 1504 22 view .LVU1615 - 5059 .LBB480: + 5542 .loc 5 1504 22 view .LVU1752 + 5543 .LBB516: 1505:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->CR1, TIM_CR1_ARPE); - 5060 .loc 5 1506 3 view .LVU1616 - 5061 005e 4FF08043 mov r3, #1073741824 - 5062 0062 1A68 ldr r2, [r3] - 5063 0064 22F08002 bic r2, r2, #128 - 5064 0068 1A60 str r2, [r3] - 5065 .LVL486: - 5066 .loc 5 1506 3 is_stmt 0 view .LVU1617 - 5067 .LBE480: - 5068 .LBE479: -1442:Src/main.c **** LL_TIM_SetTriggerOutput(TIM2, LL_TIM_TRGO_RESET); - 5069 .loc 1 1442 3 is_stmt 1 view .LVU1618 - 5070 .LBB481: - 5071 .LBI481: + 5544 .loc 5 1506 3 view .LVU1753 + 5545 005e 4FF08043 mov r3, #1073741824 + 5546 0062 1A68 ldr r2, [r3] + 5547 0064 22F08002 bic r2, r2, #128 + 5548 0068 1A60 str r2, [r3] + 5549 .LVL548: + 5550 .loc 5 1506 3 is_stmt 0 view .LVU1754 + 5551 .LBE516: + 5552 .LBE515: +1538:Src/main.c **** LL_TIM_SetTriggerOutput(TIM2, LL_TIM_TRGO_RESET); + 5553 .loc 1 1538 3 is_stmt 1 view .LVU1755 + 5554 .LBB517: + 5555 .LBI517: 1507:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1508:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -17158,9 +18104,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1517:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->CR1, TIM_CR1_ARPE) == (TIM_CR1_ARPE)) ? 1UL : 0UL); 1518:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 287 - - 1520:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1521:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the division ratio between the timer clock and the sampling clock used by the dead 1522:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * (when supported) and the digital filters. @@ -17175,6 +18118,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1531:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV4 1532:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 1533:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 303 + + 1534:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetClockDivision(TIM_TypeDef *TIMx, uint32_t ClockDivision) 1535:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1536:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->CR1, TIM_CR1_CKD, ClockDivision); @@ -17218,9 +18164,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1574:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. 1575:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CNT CNT LL_TIM_GetCounter 1576:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance - ARM GAS /tmp/ccwR4KB7.s page 288 - - 1577:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Counter value (between Min_Data=0 and Max_Data=0xFFFF or 0xFFFFFFFF) 1578:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1579:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_GetCounter(const TIM_TypeDef *TIMx) @@ -17235,6 +18178,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1588:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Returned value can be one of the following values: 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_COUNTERDIRECTION_UP 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_COUNTERDIRECTION_DOWN + ARM GAS /tmp/ccEQxcUB.s page 304 + + 1591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_GetDirection(const TIM_TypeDef *TIMx) 1593:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -17278,9 +18224,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1631:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1632:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param AutoReload between Min_Data=0 and Max_Data=65535 1633:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 289 - - 1634:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1635:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetAutoReload(TIM_TypeDef *TIMx, uint32_t AutoReload) 1636:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -17295,6 +18238,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1645:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1646:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Auto-reload value 1647:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 305 + + 1648:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_GetAutoReload(const TIM_TypeDef *TIMx) 1649:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1650:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_REG(TIMx->ARR)); @@ -17338,9 +18284,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1688:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1689:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_EnableUIFRemap(TIM_TypeDef *TIMx) 1690:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccwR4KB7.s page 290 - - 1691:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** SET_BIT(TIMx->CR1, TIM_CR1_UIFREMAP); 1692:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1693:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -17355,6 +18298,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1702:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->CR1, TIM_CR1_UIFREMAP); 1703:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1704:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 306 + + 1705:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1706:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether update interrupt flag (UIF) copy is set. 1707:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Counter Counter value @@ -17398,9 +18344,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1745:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1746:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_CC_DisablePreload(TIM_TypeDef *TIMx) 1747:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccwR4KB7.s page 291 - - 1748:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->CR2, TIM_CR2_CCPC); 1749:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1750:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -17415,6 +18358,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1759:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->CR2, TIM_CR2_CCPC) == (TIM_CR2_CCPC)) ? 1UL : 0UL); 1760:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1761:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 307 + + 1762:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1763:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the updated source of the capture/compare control bits (CCxE, CCxNE and OCxM). 1764:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_COMMUTATION_EVENT_INSTANCE(TIMx) can be used to check @@ -17458,9 +18404,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1802:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_BIT(TIMx->CR2, TIM_CR2_CCDS)); 1803:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 1804:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 292 - - 1805:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 1806:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the lock level to freeze the 1807:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * configuration of several capture/compare parameters. @@ -17475,6 +18418,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1816:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_LOCKLEVEL_3 1817:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 1818:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 308 + + 1819:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_CC_SetLockLevel(TIM_TypeDef *TIMx, uint32_t LockLevel) 1820:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1821:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->BDTR, TIM_BDTR_LOCK, LockLevel); @@ -17518,9 +18464,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1859:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3E LL_TIM_CC_DisableChannel\n 1860:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3NE LL_TIM_CC_DisableChannel\n 1861:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC4E LL_TIM_CC_DisableChannel\n - ARM GAS /tmp/ccwR4KB7.s page 293 - - 1862:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC5E LL_TIM_CC_DisableChannel\n 1863:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC6E LL_TIM_CC_DisableChannel 1864:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance @@ -17535,6 +18478,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1873:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 1874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 1875:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 309 + + 1876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1877:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_CC_DisableChannel(TIM_TypeDef *TIMx, uint32_t Channels) 1878:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -17578,9 +18524,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 1917:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 294 - - 1919:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Configure an output channel. 1920:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCMR1 CC1S LL_TIM_OC_ConfigOutput\n 1921:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR1 CC2S LL_TIM_OC_ConfigOutput\n @@ -17595,6 +18538,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1930:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC5P LL_TIM_OC_ConfigOutput\n 1931:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC6P LL_TIM_OC_ConfigOutput\n 1932:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS1 LL_TIM_OC_ConfigOutput\n + ARM GAS /tmp/ccEQxcUB.s page 310 + + 1933:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS2 LL_TIM_OC_ConfigOutput\n 1934:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS3 LL_TIM_OC_ConfigOutput\n 1935:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS4 LL_TIM_OC_ConfigOutput\n @@ -17638,9 +18584,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 1974:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 1975:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 - ARM GAS /tmp/ccwR4KB7.s page 295 - - 1976:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 1977:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 1978:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 @@ -17655,6 +18598,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1987:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_PWM2 1988:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_RETRIG_OPM1 1989:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_RETRIG_OPM2 + ARM GAS /tmp/ccEQxcUB.s page 311 + + 1990:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_COMBINED_PWM1 1991:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_COMBINED_PWM2 1992:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_ASYMMETRIC_PWM1 @@ -17698,9 +18644,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2030:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_COMBINED_PWM1 2031:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_COMBINED_PWM2 2032:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_ASYMMETRIC_PWM1 - ARM GAS /tmp/ccwR4KB7.s page 296 - - 2033:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_ASYMMETRIC_PWM2 2034:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2035:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetMode(const TIM_TypeDef *TIMx, uint32_t Channel) @@ -17715,6 +18658,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2044:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCER CC1P LL_TIM_OC_SetPolarity\n 2045:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC1NP LL_TIM_OC_SetPolarity\n 2046:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2P LL_TIM_OC_SetPolarity\n + ARM GAS /tmp/ccEQxcUB.s page 312 + + 2047:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2NP LL_TIM_OC_SetPolarity\n 2048:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3P LL_TIM_OC_SetPolarity\n 2049:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3NP LL_TIM_OC_SetPolarity\n @@ -17758,9 +18704,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2087:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Channel This parameter can be one of the following values: 2088:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2089:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1N - ARM GAS /tmp/ccwR4KB7.s page 297 - - 2090:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2091:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2N 2092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 @@ -17775,6 +18718,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetPolarity(const TIM_TypeDef *TIMx, uint32_t Channel) 2102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint8_t iChannel = TIM_GET_CHANNEL_INDEX(Channel); + ARM GAS /tmp/ccEQxcUB.s page 313 + + 2104:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (READ_BIT(TIMx->CCER, (TIM_CCER_CC1P << SHIFT_TAB_CCxP[iChannel])) >> SHIFT_TAB_CCxP[iChan 2105:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2106:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -17818,9 +18764,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2145:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get the IDLE state of an output channel 2146:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR2 OIS1 LL_TIM_OC_GetIdleState\n - ARM GAS /tmp/ccwR4KB7.s page 298 - - 2147:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS2N LL_TIM_OC_GetIdleState\n 2148:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS2 LL_TIM_OC_GetIdleState\n 2149:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CR2 OIS2N LL_TIM_OC_GetIdleState\n @@ -17835,6 +18778,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1N 2159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2N + ARM GAS /tmp/ccEQxcUB.s page 314 + + 2161:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 2162:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3N 2163:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 @@ -17878,9 +18824,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2202:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2203:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 299 - - 2204:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Disable fast mode for the output channel. 2205:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCMR1 OC1FE LL_TIM_OC_DisableFast\n 2206:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR1 OC2FE LL_TIM_OC_DisableFast\n @@ -17895,6 +18838,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 2216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 2217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 + ARM GAS /tmp/ccEQxcUB.s page 315 + + 2218:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 2219:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 2220:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -17938,9 +18884,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2258:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR1 OC2PE LL_TIM_OC_EnablePreload\n 2259:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 OC3PE LL_TIM_OC_EnablePreload\n 2260:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 OC4PE LL_TIM_OC_EnablePreload\n - ARM GAS /tmp/ccwR4KB7.s page 300 - - 2261:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR3 OC5PE LL_TIM_OC_EnablePreload\n 2262:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR3 OC6PE LL_TIM_OC_EnablePreload 2263:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance @@ -17955,6 +18898,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_OC_EnablePreload(TIM_TypeDef *TIMx, uint32_t Channel) 2274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + ARM GAS /tmp/ccEQxcUB.s page 316 + + 2275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint8_t iChannel = TIM_GET_CHANNEL_INDEX(Channel); 2276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __IO uint32_t *pReg = (__IO uint32_t *)((uint32_t)((uint32_t)(&TIMx->CCMR1) + OFFSET_TAB_CCMRx[iC 2277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** SET_BIT(*pReg, (TIM_CCMR1_OC1PE << SHIFT_TAB_OCxx[iChannel])); @@ -17998,9 +18944,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2316:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2317:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 - ARM GAS /tmp/ccwR4KB7.s page 301 - - 2318:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 2319:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 2320:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 @@ -18015,6 +18958,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 317 + + 2332:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable clearing the output channel on an external event. 2333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note This function can only be used in Output compare and PWM modes. It does not work in Force 2334:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_OCXREF_CLEAR_INSTANCE(TIMx) can be used to check whether @@ -18058,9 +19004,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 2374:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 - ARM GAS /tmp/ccwR4KB7.s page 302 - - 2375:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 2376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 2377:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None @@ -18075,6 +19018,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicates clearing the output channel on an external event is enabled for the output ch 2388:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note This function enables clearing the output channel on an external event. + ARM GAS /tmp/ccEQxcUB.s page 318 + + 2389:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note This function can only be used in Output compare and PWM modes. It does not work in Force 2390:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_OCXREF_CLEAR_INSTANCE(TIMx) can be used to check whether 2391:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * or not a timer instance can clear the OCxREF signal on an external event. @@ -18118,9 +19064,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2429:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->BDTR, TIM_BDTR_DTG, DeadTime); 2430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 303 - - 2432:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2433:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set compare value for output channel 1 (TIMx_CCR1). 2434:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note In 32-bit timer implementations compare value can be between 0x00000000 and 0xFFFFFFFF. @@ -18135,6 +19078,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_OC_SetCompareCH1(TIM_TypeDef *TIMx, uint32_t CompareValue) 2445:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + ARM GAS /tmp/ccEQxcUB.s page 319 + + 2446:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** WRITE_REG(TIMx->CCR1, CompareValue); 2447:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2448:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -18178,9 +19124,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2486:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_32B_COUNTER_INSTANCE(TIMx) can be used to check 2487:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. 2488:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_CC4_INSTANCE(TIMx) can be used to check whether or not - ARM GAS /tmp/ccwR4KB7.s page 304 - - 2489:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * output channel 4 is supported by a timer instance. 2490:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCR4 CCR4 LL_TIM_OC_SetCompareCH4 2491:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance @@ -18195,6 +19138,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set compare value for output channel 5 (TIMx_CCR5). 2502:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_CC5_INSTANCE(TIMx) can be used to check whether or not + ARM GAS /tmp/ccEQxcUB.s page 320 + + 2503:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * output channel 5 is supported by a timer instance. 2504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCR5 CCR5 LL_TIM_OC_SetCompareCH5 2505:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance @@ -18238,9 +19184,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2543:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2544:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2545:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get compare value (TIMx_CCR2) set for output channel 2. - ARM GAS /tmp/ccwR4KB7.s page 305 - - 2546:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note In 32-bit timer implementations returned compare value can be between 0x00000000 and 0xFF 2547:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_32B_COUNTER_INSTANCE(TIMx) can be used to check 2548:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. @@ -18255,6 +19198,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_REG(TIMx->CCR2)); 2558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2559:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 321 + + 2560:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2561:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get compare value (TIMx_CCR3) set for output channel 3. 2562:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note In 32-bit timer implementations returned compare value can be between 0x00000000 and 0xFF @@ -18298,9 +19244,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetCompareCH5(const TIM_TypeDef *TIMx) 2601:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2602:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_BIT(TIMx->CCR5, TIM_CCR5_CCR5)); - ARM GAS /tmp/ccwR4KB7.s page 306 - - 2603:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2604:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2605:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -18315,6 +19258,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2614:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2615:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_REG(TIMx->CCR6)); 2616:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + ARM GAS /tmp/ccEQxcUB.s page 322 + + 2617:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2618:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2619:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Select on which reference signal the OC5REF is combined to. @@ -18358,9 +19304,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2657:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 IC4PSC LL_TIM_IC_Config\n 2658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 IC4F LL_TIM_IC_Config\n 2659:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC1P LL_TIM_IC_Config\n - ARM GAS /tmp/ccwR4KB7.s page 307 - - 2660:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC1NP LL_TIM_IC_Config\n 2661:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2P LL_TIM_IC_Config\n 2662:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2NP LL_TIM_IC_Config\n @@ -18375,6 +19318,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2671:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 2672:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 2673:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Configuration This parameter must be a combination of all the following values: + ARM GAS /tmp/ccEQxcUB.s page 323 + + 2674:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ACTIVEINPUT_DIRECTTI or @ref LL_TIM_ACTIVEINPUT_INDIRECTTI or @ref LL_ 2675:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ICPSC_DIV1 or ... or @ref LL_TIM_ICPSC_DIV8 2676:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1 or ... or @ref LL_TIM_IC_FILTER_FDIV32_N8 @@ -18418,9 +19364,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2714:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2715:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2716:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 308 - - 2717:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get the current active input. 2718:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCMR1 CC1S LL_TIM_IC_GetActiveInput\n 2719:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR1 CC2S LL_TIM_IC_GetActiveInput\n @@ -18435,6 +19378,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2728:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Returned value can be one of the following values: 2729:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ACTIVEINPUT_DIRECTTI 2730:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ACTIVEINPUT_INDIRECTTI + ARM GAS /tmp/ccEQxcUB.s page 324 + + 2731:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ACTIVEINPUT_TRC 2732:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2733:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IC_GetActiveInput(const TIM_TypeDef *TIMx, uint32_t Channel) @@ -18478,9 +19424,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2771:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 IC4PSC LL_TIM_IC_GetPrescaler 2772:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 2773:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Channel This parameter can be one of the following values: - ARM GAS /tmp/ccwR4KB7.s page 309 - - 2774:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2775:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2776:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 @@ -18495,6 +19438,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2785:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint8_t iChannel = TIM_GET_CHANNEL_INDEX(Channel); 2787:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** const __IO uint32_t *pReg = (__IO uint32_t *)((uint32_t)((uint32_t)(&TIMx->CCMR1) + OFFSET_TAB_CC + ARM GAS /tmp/ccEQxcUB.s page 325 + + 2788:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(*pReg, ((TIM_CCMR1_IC1PSC) << SHIFT_TAB_ICxx[iChannel])) >> SHIFT_TAB_ICxx[iCha 2789:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2790:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -18538,9 +19484,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2828:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2829:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2830:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get the input filter duration. - ARM GAS /tmp/ccwR4KB7.s page 310 - - 2831:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCMR1 IC1F LL_TIM_IC_GetFilter\n 2832:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR1 IC2F LL_TIM_IC_GetFilter\n 2833:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCMR2 IC3F LL_TIM_IC_GetFilter\n @@ -18555,6 +19498,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2842:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1 2843:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1_N2 2844:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1_N4 + ARM GAS /tmp/ccEQxcUB.s page 326 + + 2845:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1_N8 2846:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV2_N6 2847:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV2_N8 @@ -18598,9 +19544,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2885:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_POLARITY_BOTHEDGE 2886:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 2887:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 311 - - 2888:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_IC_SetPolarity(TIM_TypeDef *TIMx, uint32_t Channel, uint32_t ICPolarity 2889:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2890:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint8_t iChannel = TIM_GET_CHANNEL_INDEX(Channel); @@ -18615,6 +19558,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2899:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2P LL_TIM_IC_GetPolarity\n 2900:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2NP LL_TIM_IC_GetPolarity\n 2901:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3P LL_TIM_IC_GetPolarity\n + ARM GAS /tmp/ccEQxcUB.s page 327 + + 2902:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3NP LL_TIM_IC_GetPolarity\n 2903:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC4P LL_TIM_IC_GetPolarity\n 2904:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC4NP LL_TIM_IC_GetPolarity @@ -18658,9 +19604,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2942:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 2943:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2944:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_IC_DisableXORCombination(TIM_TypeDef *TIMx) - ARM GAS /tmp/ccwR4KB7.s page 312 - - 2945:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2946:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->CR2, TIM_CR2_TI1S); 2947:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -18675,6 +19618,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IC_IsEnabledXORCombination(const TIM_TypeDef *TIMx) 2958:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + ARM GAS /tmp/ccEQxcUB.s page 328 + + 2959:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->CR2, TIM_CR2_TI1S) == (TIM_CR2_TI1S)) ? 1UL : 0UL); 2960:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2961:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -18718,9 +19664,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2999:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_CC3_INSTANCE(TIMx) can be used to check whether or not 3000:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * input channel 3 is supported by a timer instance. 3001:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCR3 CCR3 LL_TIM_IC_GetCaptureCH3 - ARM GAS /tmp/ccwR4KB7.s page 313 - - 3002:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3003:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval CapturedValue (between Min_Data=0 and Max_Data=65535) 3004:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -18735,6 +19678,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_32B_COUNTER_INSTANCE(TIMx) can be used to check 3014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. 3015:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_CC4_INSTANCE(TIMx) can be used to check whether or not + ARM GAS /tmp/ccEQxcUB.s page 329 + + 3016:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * input channel 4 is supported by a timer instance. 3017:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCR4 CCR4 LL_TIM_IC_GetCaptureCH4 3018:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance @@ -18778,9 +19724,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3056:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3057:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->SMCR, TIM_SMCR_ECE); 3058:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - ARM GAS /tmp/ccwR4KB7.s page 314 - - 3059:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3060:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3061:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether external clock mode 2 is enabled. @@ -18795,6 +19738,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SMCR, TIM_SMCR_ECE) == (TIM_SMCR_ECE)) ? 1UL : 0UL); 3071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3072:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 330 + + 3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the clock source of the counter clock. 3075:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note when selected clock source is external clock mode 1, the timer input @@ -18815,32 +19761,29 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3090:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3091:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetClockSource(TIM_TypeDef *TIMx, uint32_t ClockSource) - 5072 .loc 5 3092 22 view .LVU1619 - 5073 .LBB482: + 5556 .loc 5 3092 22 view .LVU1756 + 5557 .LBB518: 3093:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->SMCR, TIM_SMCR_SMS | TIM_SMCR_ECE, ClockSource); - 5074 .loc 5 3094 3 view .LVU1620 - 5075 006a 9968 ldr r1, [r3, #8] - 5076 006c 0A4A ldr r2, .L278+16 - 5077 006e 0A40 ands r2, r2, r1 - 5078 0070 9A60 str r2, [r3, #8] - 5079 .LVL487: - 5080 .loc 5 3094 3 is_stmt 0 view .LVU1621 - 5081 .LBE482: - 5082 .LBE481: -1443:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM2); - 5083 .loc 1 1443 3 is_stmt 1 view .LVU1622 - 5084 .LBB483: - 5085 .LBI483: + 5558 .loc 5 3094 3 view .LVU1757 + 5559 006a 9968 ldr r1, [r3, #8] + 5560 006c 0A4A ldr r2, .L303+16 + 5561 006e 0A40 ands r2, r2, r1 + 5562 0070 9A60 str r2, [r3, #8] + 5563 .LVL549: + 5564 .loc 5 3094 3 is_stmt 0 view .LVU1758 + 5565 .LBE518: + 5566 .LBE517: +1539:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM2); + 5567 .loc 1 1539 3 is_stmt 1 view .LVU1759 + 5568 .LBB519: + 5569 .LBI519: 3095:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3096:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3097:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3098:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the encoder interface mode. 3099:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_ENCODER_INTERFACE_INSTANCE(TIMx) can be used to check 3100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports the encoder mode. - ARM GAS /tmp/ccwR4KB7.s page 315 - - 3101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SMCR SMS LL_TIM_SetEncoderMode 3102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param EncoderMode This parameter can be one of the following values: @@ -18855,6 +19798,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3112:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3113:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3114:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 331 + + 3115:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} 3116:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3117:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -18879,28 +19825,25 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3137:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetTriggerOutput(TIM_TypeDef *TIMx, uint32_t TimerSynchronization) - 5086 .loc 5 3138 22 view .LVU1623 - 5087 .LBB484: + 5570 .loc 5 3138 22 view .LVU1760 + 5571 .LBB520: 3139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->CR2, TIM_CR2_MMS, TimerSynchronization); - 5088 .loc 5 3140 3 view .LVU1624 - 5089 0072 5A68 ldr r2, [r3, #4] - 5090 0074 22F07002 bic r2, r2, #112 - 5091 0078 5A60 str r2, [r3, #4] - 5092 .LVL488: - 5093 .loc 5 3140 3 is_stmt 0 view .LVU1625 - 5094 .LBE484: - 5095 .LBE483: -1444:Src/main.c **** /* USER CODE BEGIN TIM2_Init 2 */ - 5096 .loc 1 1444 3 is_stmt 1 view .LVU1626 - 5097 .LBB485: - 5098 .LBI485: + 5572 .loc 5 3140 3 view .LVU1761 + 5573 0072 5A68 ldr r2, [r3, #4] + 5574 0074 22F07002 bic r2, r2, #112 + 5575 0078 5A60 str r2, [r3, #4] + 5576 .LVL550: + 5577 .loc 5 3140 3 is_stmt 0 view .LVU1762 + 5578 .LBE520: + 5579 .LBE519: +1540:Src/main.c **** /* USER CODE BEGIN TIM2_Init 2 */ + 5580 .loc 1 1540 3 is_stmt 1 view .LVU1763 + 5581 .LBB521: + 5582 .LBI521: 3141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3142:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3143:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 316 - - 3144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the trigger output 2 (TRGO2) used for ADC synchronization . 3145:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_TRGO2_INSTANCE(TIMx) can be used to check 3146:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance can be used for ADC synchronization. @@ -18915,6 +19858,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC2 3156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC3 3157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC4 + ARM GAS /tmp/ccEQxcUB.s page 332 + + 3158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC5 3159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC6 3160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO2_OC4_RISINGFALLING @@ -18958,9 +19904,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TriggerInput This parameter can be one of the following values: 3199:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TS_ITR0 3200:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TS_ITR1 - ARM GAS /tmp/ccwR4KB7.s page 317 - - 3201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TS_ITR2 3202:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TS_ITR3 3203:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TS_TI1F_ED @@ -18975,6 +19918,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 333 + + 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable the Master/Slave mode. 3216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_SLAVE_INSTANCE(TIMx) can be used to check whether or not 3217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * a timer instance can operate as a slave timer. @@ -18996,1055 +19942,1052 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3233:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3234:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_DisableMasterSlaveMode(TIM_TypeDef *TIMx) - 5099 .loc 5 3235 22 view .LVU1627 - 5100 .LBB486: + 5583 .loc 5 3235 22 view .LVU1764 + 5584 .LBB522: 3236:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3237:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->SMCR, TIM_SMCR_MSM); - 5101 .loc 5 3237 3 view .LVU1628 - 5102 007a 9A68 ldr r2, [r3, #8] - 5103 007c 22F08002 bic r2, r2, #128 - 5104 0080 9A60 str r2, [r3, #8] - 5105 .LVL489: - 5106 .loc 5 3237 3 is_stmt 0 view .LVU1629 - 5107 .LBE486: - 5108 .LBE485: -1449:Src/main.c **** - 5109 .loc 1 1449 1 view .LVU1630 - 5110 0082 06B0 add sp, sp, #24 - 5111 .LCFI52: - 5112 .cfi_def_cfa_offset 8 - 5113 @ sp needed - 5114 0084 10BD pop {r4, pc} - 5115 .L279: - 5116 0086 00BF .align 2 - 5117 .L278: - ARM GAS /tmp/ccwR4KB7.s page 318 + 5585 .loc 5 3237 3 view .LVU1765 + 5586 007a 9A68 ldr r2, [r3, #8] + 5587 007c 22F08002 bic r2, r2, #128 + 5588 0080 9A60 str r2, [r3, #8] + 5589 .LVL551: + 5590 .loc 5 3237 3 is_stmt 0 view .LVU1766 + 5591 .LBE522: + 5592 .LBE521: +1545:Src/main.c **** + 5593 .loc 1 1545 1 view .LVU1767 + 5594 0082 06B0 add sp, sp, #24 + 5595 .LCFI54: + 5596 .cfi_def_cfa_offset 8 + 5597 @ sp needed + 5598 0084 10BD pop {r4, pc} + 5599 .L304: + 5600 0086 00BF .align 2 + 5601 .L303: + 5602 0088 00380240 .word 1073887232 + 5603 008c 00ED00E0 .word -536810240 + 5604 0090 00E100E0 .word -536813312 + 5605 0094 40D10C00 .word 840000 + 5606 0098 F8BFFEFF .word -81928 + 5607 .cfi_endproc + 5608 .LFE1195: + 5610 .section .text.MX_TIM5_Init,"ax",%progbits + 5611 .align 1 + 5612 .syntax unified + 5613 .thumb + 5614 .thumb_func + 5616 MX_TIM5_Init: + 5617 .LFB1197: + ARM GAS /tmp/ccEQxcUB.s page 334 - 5118 0088 00380240 .word 1073887232 - 5119 008c 00ED00E0 .word -536810240 - 5120 0090 00E100E0 .word -536813312 - 5121 0094 40D10C00 .word 840000 - 5122 0098 F8BFFEFF .word -81928 - 5123 .cfi_endproc - 5124 .LFE1195: - 5126 .section .text.MX_TIM5_Init,"ax",%progbits - 5127 .align 1 - 5128 .syntax unified - 5129 .thumb - 5130 .thumb_func - 5132 MX_TIM5_Init: - 5133 .LFB1197: -1516:Src/main.c **** - 5134 .loc 1 1516 1 is_stmt 1 view -0 - 5135 .cfi_startproc - 5136 @ args = 0, pretend = 0, frame = 24 - 5137 @ frame_needed = 0, uses_anonymous_args = 0 - 5138 0000 10B5 push {r4, lr} - 5139 .LCFI53: - 5140 .cfi_def_cfa_offset 8 - 5141 .cfi_offset 4, -8 - 5142 .cfi_offset 14, -4 - 5143 0002 86B0 sub sp, sp, #24 - 5144 .LCFI54: - 5145 .cfi_def_cfa_offset 32 -1522:Src/main.c **** - 5146 .loc 1 1522 3 view .LVU1632 -1522:Src/main.c **** - 5147 .loc 1 1522 22 is_stmt 0 view .LVU1633 - 5148 0004 0024 movs r4, #0 - 5149 0006 0194 str r4, [sp, #4] - 5150 0008 0294 str r4, [sp, #8] - 5151 000a 0394 str r4, [sp, #12] - 5152 000c 0494 str r4, [sp, #16] - 5153 000e 0594 str r4, [sp, #20] -1525:Src/main.c **** - 5154 .loc 1 1525 3 is_stmt 1 view .LVU1634 - 5155 .LVL490: - 5156 .LBB487: - 5157 .LBI487: -1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 5158 .loc 3 1071 22 view .LVU1635 - 5159 .LBB488: -1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); - 5160 .loc 3 1073 3 view .LVU1636 -1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 5161 .loc 3 1074 3 view .LVU1637 - 5162 0010 1C4B ldr r3, .L282 - 5163 0012 1A6C ldr r2, [r3, #64] - 5164 0014 42F00802 orr r2, r2, #8 - 5165 0018 1A64 str r2, [r3, #64] -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5166 .loc 3 1076 3 view .LVU1638 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5167 .loc 3 1076 12 is_stmt 0 view .LVU1639 - ARM GAS /tmp/ccwR4KB7.s page 319 - - - 5168 001a 1B6C ldr r3, [r3, #64] - 5169 001c 03F00803 and r3, r3, #8 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5170 .loc 3 1076 10 view .LVU1640 - 5171 0020 0093 str r3, [sp] -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5172 .loc 3 1077 3 is_stmt 1 view .LVU1641 - 5173 0022 009B ldr r3, [sp] - 5174 .LVL491: -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5175 .loc 3 1077 3 is_stmt 0 view .LVU1642 - 5176 .LBE488: - 5177 .LBE487: -1528:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); - 5178 .loc 1 1528 3 is_stmt 1 view .LVU1643 - 5179 .LBB489: - 5180 .LBI489: -1884:Drivers/CMSIS/Include/core_cm7.h **** { - 5181 .loc 2 1884 26 view .LVU1644 - 5182 .LBB490: -1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5183 .loc 2 1886 3 view .LVU1645 -1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5184 .loc 2 1886 26 is_stmt 0 view .LVU1646 - 5185 0024 184B ldr r3, .L282+4 - 5186 0026 D868 ldr r0, [r3, #12] - 5187 .LBE490: - 5188 .LBE489: -1528:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); - 5189 .loc 1 1528 3 discriminator 1 view .LVU1647 - 5190 0028 2246 mov r2, r4 - 5191 002a 2146 mov r1, r4 - 5192 002c C0F30220 ubfx r0, r0, #8, #3 - 5193 0030 FFF7FEFF bl NVIC_EncodePriority - 5194 .LVL492: - 5195 .LBB491: - 5196 .LBI491: -2024:Drivers/CMSIS/Include/core_cm7.h **** { - 5197 .loc 2 2024 22 is_stmt 1 view .LVU1648 - 5198 .LBB492: -2026:Drivers/CMSIS/Include/core_cm7.h **** { - 5199 .loc 2 2026 3 view .LVU1649 -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5200 .loc 2 2028 5 view .LVU1650 -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5201 .loc 2 2028 49 is_stmt 0 view .LVU1651 - 5202 0034 0001 lsls r0, r0, #4 - 5203 .LVL493: -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5204 .loc 2 2028 49 view .LVU1652 - 5205 0036 C0B2 uxtb r0, r0 -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5206 .loc 2 2028 47 view .LVU1653 - 5207 0038 144B ldr r3, .L282+8 - 5208 003a 83F83203 strb r0, [r3, #818] - 5209 .LVL494: -2028:Drivers/CMSIS/Include/core_cm7.h **** } - ARM GAS /tmp/ccwR4KB7.s page 320 - - - 5210 .loc 2 2028 47 view .LVU1654 - 5211 .LBE492: - 5212 .LBE491: -1529:Src/main.c **** - 5213 .loc 1 1529 3 is_stmt 1 view .LVU1655 - 5214 .LBB493: - 5215 .LBI493: -1896:Drivers/CMSIS/Include/core_cm7.h **** { - 5216 .loc 2 1896 22 view .LVU1656 - 5217 .LBB494: -1898:Drivers/CMSIS/Include/core_cm7.h **** { - 5218 .loc 2 1898 3 view .LVU1657 -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5219 .loc 2 1900 5 view .LVU1658 -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5220 .loc 2 1900 43 is_stmt 0 view .LVU1659 - 5221 003e 4FF48022 mov r2, #262144 - 5222 0042 5A60 str r2, [r3, #4] - 5223 .LVL495: -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5224 .loc 2 1900 43 view .LVU1660 - 5225 .LBE494: - 5226 .LBE493: -1534:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5227 .loc 1 1534 3 is_stmt 1 view .LVU1661 -1534:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5228 .loc 1 1534 28 is_stmt 0 view .LVU1662 - 5229 0044 42F21073 movw r3, #10000 - 5230 0048 ADF80430 strh r3, [sp, #4] @ movhi -1535:Src/main.c **** TIM_InitStruct.Autoreload = 560; - 5231 .loc 1 1535 3 is_stmt 1 view .LVU1663 -1535:Src/main.c **** TIM_InitStruct.Autoreload = 560; - 5232 .loc 1 1535 30 is_stmt 0 view .LVU1664 - 5233 004c 0294 str r4, [sp, #8] -1536:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; - 5234 .loc 1 1536 3 is_stmt 1 view .LVU1665 -1536:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; - 5235 .loc 1 1536 29 is_stmt 0 view .LVU1666 - 5236 004e 4FF40C73 mov r3, #560 - 5237 0052 0393 str r3, [sp, #12] -1537:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); - 5238 .loc 1 1537 3 is_stmt 1 view .LVU1667 -1537:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); - 5239 .loc 1 1537 32 is_stmt 0 view .LVU1668 - 5240 0054 0494 str r4, [sp, #16] -1538:Src/main.c **** LL_TIM_DisableARRPreload(TIM5); - 5241 .loc 1 1538 3 is_stmt 1 view .LVU1669 - 5242 0056 0E4C ldr r4, .L282+12 - 5243 0058 01A9 add r1, sp, #4 - 5244 005a 2046 mov r0, r4 - 5245 005c FFF7FEFF bl LL_TIM_Init - 5246 .LVL496: -1539:Src/main.c **** LL_TIM_SetClockSource(TIM5, LL_TIM_CLOCKSOURCE_INTERNAL); - 5247 .loc 1 1539 3 view .LVU1670 - 5248 .LBB495: - 5249 .LBI495: -1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccwR4KB7.s page 321 - - - 5250 .loc 5 1504 22 view .LVU1671 - 5251 .LBB496: -1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5252 .loc 5 1506 3 view .LVU1672 - 5253 0060 2368 ldr r3, [r4] - 5254 0062 23F08003 bic r3, r3, #128 - 5255 0066 2360 str r3, [r4] - 5256 .LVL497: -1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5257 .loc 5 1506 3 is_stmt 0 view .LVU1673 - 5258 .LBE496: - 5259 .LBE495: -1540:Src/main.c **** LL_TIM_SetTriggerOutput(TIM5, LL_TIM_TRGO_RESET); - 5260 .loc 1 1540 3 is_stmt 1 view .LVU1674 - 5261 .LBB497: - 5262 .LBI497: -3092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5263 .loc 5 3092 22 view .LVU1675 - 5264 .LBB498: -3094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5265 .loc 5 3094 3 view .LVU1676 - 5266 0068 A268 ldr r2, [r4, #8] - 5267 006a 0A4B ldr r3, .L282+16 - 5268 006c 1340 ands r3, r3, r2 - 5269 006e A360 str r3, [r4, #8] - 5270 .LVL498: -3094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5271 .loc 5 3094 3 is_stmt 0 view .LVU1677 - 5272 .LBE498: - 5273 .LBE497: -1541:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM5); - 5274 .loc 1 1541 3 is_stmt 1 view .LVU1678 - 5275 .LBB499: - 5276 .LBI499: -3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5277 .loc 5 3138 22 view .LVU1679 - 5278 .LBB500: -3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5279 .loc 5 3140 3 view .LVU1680 - 5280 0070 6368 ldr r3, [r4, #4] - 5281 0072 23F07003 bic r3, r3, #112 - 5282 0076 6360 str r3, [r4, #4] - 5283 .LVL499: -3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5284 .loc 5 3140 3 is_stmt 0 view .LVU1681 - 5285 .LBE500: - 5286 .LBE499: -1542:Src/main.c **** /* USER CODE BEGIN TIM5_Init 2 */ - 5287 .loc 1 1542 3 is_stmt 1 view .LVU1682 - 5288 .LBB501: - 5289 .LBI501: -3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5290 .loc 5 3235 22 view .LVU1683 - 5291 .LBB502: - 5292 .loc 5 3237 3 view .LVU1684 - 5293 0078 A368 ldr r3, [r4, #8] - 5294 007a 23F08003 bic r3, r3, #128 - ARM GAS /tmp/ccwR4KB7.s page 322 - - - 5295 007e A360 str r3, [r4, #8] - 5296 .LVL500: - 5297 .loc 5 3237 3 is_stmt 0 view .LVU1685 - 5298 .LBE502: - 5299 .LBE501: -1547:Src/main.c **** - 5300 .loc 1 1547 1 view .LVU1686 - 5301 0080 06B0 add sp, sp, #24 - 5302 .LCFI55: - 5303 .cfi_def_cfa_offset 8 - 5304 @ sp needed - 5305 0082 10BD pop {r4, pc} - 5306 .L283: - 5307 .align 2 - 5308 .L282: - 5309 0084 00380240 .word 1073887232 - 5310 0088 00ED00E0 .word -536810240 - 5311 008c 00E100E0 .word -536813312 - 5312 0090 000C0040 .word 1073744896 - 5313 0094 F8BFFEFF .word -81928 - 5314 .cfi_endproc - 5315 .LFE1197: - 5317 .section .text.MX_TIM7_Init,"ax",%progbits - 5318 .align 1 - 5319 .syntax unified - 5320 .thumb - 5321 .thumb_func - 5323 MX_TIM7_Init: - 5324 .LFB1199: -1592:Src/main.c **** - 5325 .loc 1 1592 1 is_stmt 1 view -0 - 5326 .cfi_startproc - 5327 @ args = 0, pretend = 0, frame = 24 - 5328 @ frame_needed = 0, uses_anonymous_args = 0 - 5329 0000 10B5 push {r4, lr} - 5330 .LCFI56: - 5331 .cfi_def_cfa_offset 8 - 5332 .cfi_offset 4, -8 - 5333 .cfi_offset 14, -4 - 5334 0002 86B0 sub sp, sp, #24 - 5335 .LCFI57: - 5336 .cfi_def_cfa_offset 32 -1598:Src/main.c **** - 5337 .loc 1 1598 3 view .LVU1688 -1598:Src/main.c **** - 5338 .loc 1 1598 22 is_stmt 0 view .LVU1689 - 5339 0004 0024 movs r4, #0 - 5340 0006 0194 str r4, [sp, #4] - 5341 0008 0294 str r4, [sp, #8] - 5342 000a 0394 str r4, [sp, #12] - 5343 000c 0494 str r4, [sp, #16] - 5344 000e 0594 str r4, [sp, #20] -1601:Src/main.c **** - 5345 .loc 1 1601 3 is_stmt 1 view .LVU1690 - 5346 .LVL501: - 5347 .LBB503: - 5348 .LBI503: - ARM GAS /tmp/ccwR4KB7.s page 323 - - -1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 5349 .loc 3 1071 22 view .LVU1691 - 5350 .LBB504: -1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); - 5351 .loc 3 1073 3 view .LVU1692 -1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 5352 .loc 3 1074 3 view .LVU1693 - 5353 0010 1A4B ldr r3, .L286 - 5354 0012 1A6C ldr r2, [r3, #64] - 5355 0014 42F02002 orr r2, r2, #32 - 5356 0018 1A64 str r2, [r3, #64] -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5357 .loc 3 1076 3 view .LVU1694 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5358 .loc 3 1076 12 is_stmt 0 view .LVU1695 - 5359 001a 1B6C ldr r3, [r3, #64] - 5360 001c 03F02003 and r3, r3, #32 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5361 .loc 3 1076 10 view .LVU1696 - 5362 0020 0093 str r3, [sp] -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5363 .loc 3 1077 3 is_stmt 1 view .LVU1697 - 5364 0022 009B ldr r3, [sp] - 5365 .LVL502: -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5366 .loc 3 1077 3 is_stmt 0 view .LVU1698 - 5367 .LBE504: - 5368 .LBE503: -1604:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); - 5369 .loc 1 1604 3 is_stmt 1 view .LVU1699 - 5370 .LBB505: - 5371 .LBI505: -1884:Drivers/CMSIS/Include/core_cm7.h **** { - 5372 .loc 2 1884 26 view .LVU1700 - 5373 .LBB506: -1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5374 .loc 2 1886 3 view .LVU1701 -1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5375 .loc 2 1886 26 is_stmt 0 view .LVU1702 - 5376 0024 164B ldr r3, .L286+4 - 5377 0026 D868 ldr r0, [r3, #12] - 5378 .LBE506: - 5379 .LBE505: -1604:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); - 5380 .loc 1 1604 3 discriminator 1 view .LVU1703 - 5381 0028 2246 mov r2, r4 - 5382 002a 2146 mov r1, r4 - 5383 002c C0F30220 ubfx r0, r0, #8, #3 - 5384 0030 FFF7FEFF bl NVIC_EncodePriority - 5385 .LVL503: - 5386 .LBB507: - 5387 .LBI507: -2024:Drivers/CMSIS/Include/core_cm7.h **** { - 5388 .loc 2 2024 22 is_stmt 1 view .LVU1704 - 5389 .LBB508: -2026:Drivers/CMSIS/Include/core_cm7.h **** { - 5390 .loc 2 2026 3 view .LVU1705 - ARM GAS /tmp/ccwR4KB7.s page 324 - - -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5391 .loc 2 2028 5 view .LVU1706 -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5392 .loc 2 2028 49 is_stmt 0 view .LVU1707 - 5393 0034 0001 lsls r0, r0, #4 - 5394 .LVL504: -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5395 .loc 2 2028 49 view .LVU1708 - 5396 0036 C0B2 uxtb r0, r0 -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5397 .loc 2 2028 47 view .LVU1709 - 5398 0038 124B ldr r3, .L286+8 - 5399 003a 83F83703 strb r0, [r3, #823] - 5400 .LVL505: -2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5401 .loc 2 2028 47 view .LVU1710 - 5402 .LBE508: - 5403 .LBE507: -1605:Src/main.c **** - 5404 .loc 1 1605 3 is_stmt 1 view .LVU1711 - 5405 .LBB509: - 5406 .LBI509: -1896:Drivers/CMSIS/Include/core_cm7.h **** { - 5407 .loc 2 1896 22 view .LVU1712 - 5408 .LBB510: -1898:Drivers/CMSIS/Include/core_cm7.h **** { - 5409 .loc 2 1898 3 view .LVU1713 -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5410 .loc 2 1900 5 view .LVU1714 -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5411 .loc 2 1900 43 is_stmt 0 view .LVU1715 - 5412 003e 4FF40002 mov r2, #8388608 - 5413 0042 5A60 str r2, [r3, #4] - 5414 .LVL506: -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5415 .loc 2 1900 43 view .LVU1716 - 5416 .LBE510: - 5417 .LBE509: -1610:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5418 .loc 1 1610 3 is_stmt 1 view .LVU1717 -1610:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5419 .loc 1 1610 28 is_stmt 0 view .LVU1718 - 5420 0044 40F29733 movw r3, #919 - 5421 0048 ADF80430 strh r3, [sp, #4] @ movhi -1611:Src/main.c **** TIM_InitStruct.Autoreload = 99; - 5422 .loc 1 1611 3 is_stmt 1 view .LVU1719 -1611:Src/main.c **** TIM_InitStruct.Autoreload = 99; - 5423 .loc 1 1611 30 is_stmt 0 view .LVU1720 - 5424 004c 0294 str r4, [sp, #8] -1612:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); - 5425 .loc 1 1612 3 is_stmt 1 view .LVU1721 -1612:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); - 5426 .loc 1 1612 29 is_stmt 0 view .LVU1722 - 5427 004e 6323 movs r3, #99 - 5428 0050 0393 str r3, [sp, #12] -1613:Src/main.c **** LL_TIM_DisableARRPreload(TIM7); - 5429 .loc 1 1613 3 is_stmt 1 view .LVU1723 - ARM GAS /tmp/ccwR4KB7.s page 325 - - - 5430 0052 0D4C ldr r4, .L286+12 - 5431 0054 01A9 add r1, sp, #4 - 5432 0056 2046 mov r0, r4 - 5433 0058 FFF7FEFF bl LL_TIM_Init - 5434 .LVL507: -1614:Src/main.c **** LL_TIM_SetTriggerOutput(TIM7, LL_TIM_TRGO_ENABLE); - 5435 .loc 1 1614 3 view .LVU1724 - 5436 .LBB511: - 5437 .LBI511: -1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5438 .loc 5 1504 22 view .LVU1725 - 5439 .LBB512: -1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5440 .loc 5 1506 3 view .LVU1726 - 5441 005c 2368 ldr r3, [r4] - 5442 005e 23F08003 bic r3, r3, #128 - 5443 0062 2360 str r3, [r4] - 5444 .LVL508: -1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5445 .loc 5 1506 3 is_stmt 0 view .LVU1727 - 5446 .LBE512: - 5447 .LBE511: -1615:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM7); - 5448 .loc 1 1615 3 is_stmt 1 view .LVU1728 - 5449 .LBB513: - 5450 .LBI513: -3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5451 .loc 5 3138 22 view .LVU1729 - 5452 .LBB514: -3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5453 .loc 5 3140 3 view .LVU1730 - 5454 0064 6368 ldr r3, [r4, #4] - 5455 0066 23F07003 bic r3, r3, #112 - 5456 006a 43F01003 orr r3, r3, #16 - 5457 006e 6360 str r3, [r4, #4] - 5458 .LVL509: -3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5459 .loc 5 3140 3 is_stmt 0 view .LVU1731 - 5460 .LBE514: - 5461 .LBE513: -1616:Src/main.c **** /* USER CODE BEGIN TIM7_Init 2 */ - 5462 .loc 1 1616 3 is_stmt 1 view .LVU1732 - 5463 .LBB515: - 5464 .LBI515: -3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5465 .loc 5 3235 22 view .LVU1733 - 5466 .LBB516: - 5467 .loc 5 3237 3 view .LVU1734 - 5468 0070 A368 ldr r3, [r4, #8] - 5469 0072 23F08003 bic r3, r3, #128 - 5470 0076 A360 str r3, [r4, #8] - 5471 .LVL510: - 5472 .loc 5 3237 3 is_stmt 0 view .LVU1735 - 5473 .LBE516: - 5474 .LBE515: +1612:Src/main.c **** + 5618 .loc 1 1612 1 is_stmt 1 view -0 + 5619 .cfi_startproc + 5620 @ args = 0, pretend = 0, frame = 24 + 5621 @ frame_needed = 0, uses_anonymous_args = 0 + 5622 0000 10B5 push {r4, lr} + 5623 .LCFI55: + 5624 .cfi_def_cfa_offset 8 + 5625 .cfi_offset 4, -8 + 5626 .cfi_offset 14, -4 + 5627 0002 86B0 sub sp, sp, #24 + 5628 .LCFI56: + 5629 .cfi_def_cfa_offset 32 +1618:Src/main.c **** + 5630 .loc 1 1618 3 view .LVU1769 +1618:Src/main.c **** + 5631 .loc 1 1618 22 is_stmt 0 view .LVU1770 + 5632 0004 0024 movs r4, #0 + 5633 0006 0194 str r4, [sp, #4] + 5634 0008 0294 str r4, [sp, #8] + 5635 000a 0394 str r4, [sp, #12] + 5636 000c 0494 str r4, [sp, #16] + 5637 000e 0594 str r4, [sp, #20] 1621:Src/main.c **** - 5475 .loc 1 1621 1 view .LVU1736 - ARM GAS /tmp/ccwR4KB7.s page 326 - - - 5476 0078 06B0 add sp, sp, #24 - 5477 .LCFI58: - 5478 .cfi_def_cfa_offset 8 - 5479 @ sp needed - 5480 007a 10BD pop {r4, pc} - 5481 .L287: - 5482 .align 2 - 5483 .L286: - 5484 007c 00380240 .word 1073887232 - 5485 0080 00ED00E0 .word -536810240 - 5486 0084 00E100E0 .word -536813312 - 5487 0088 00140040 .word 1073746944 - 5488 .cfi_endproc - 5489 .LFE1199: - 5491 .section .text.MX_TIM6_Init,"ax",%progbits - 5492 .align 1 - 5493 .syntax unified - 5494 .thumb - 5495 .thumb_func - 5497 MX_TIM6_Init: - 5498 .LFB1198: -1555:Src/main.c **** - 5499 .loc 1 1555 1 is_stmt 1 view -0 - 5500 .cfi_startproc - 5501 @ args = 0, pretend = 0, frame = 24 - 5502 @ frame_needed = 0, uses_anonymous_args = 0 - 5503 0000 10B5 push {r4, lr} - 5504 .LCFI59: - 5505 .cfi_def_cfa_offset 8 - 5506 .cfi_offset 4, -8 - 5507 .cfi_offset 14, -4 - 5508 0002 86B0 sub sp, sp, #24 - 5509 .LCFI60: - 5510 .cfi_def_cfa_offset 32 -1561:Src/main.c **** - 5511 .loc 1 1561 3 view .LVU1738 -1561:Src/main.c **** - 5512 .loc 1 1561 22 is_stmt 0 view .LVU1739 - 5513 0004 0024 movs r4, #0 - 5514 0006 0194 str r4, [sp, #4] - 5515 0008 0294 str r4, [sp, #8] - 5516 000a 0394 str r4, [sp, #12] - 5517 000c 0494 str r4, [sp, #16] - 5518 000e 0594 str r4, [sp, #20] -1564:Src/main.c **** - 5519 .loc 1 1564 3 is_stmt 1 view .LVU1740 - 5520 .LVL511: - 5521 .LBB517: - 5522 .LBI517: + 5638 .loc 1 1621 3 is_stmt 1 view .LVU1771 + 5639 .LVL552: + 5640 .LBB523: + 5641 .LBI523: 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 5523 .loc 3 1071 22 view .LVU1741 - 5524 .LBB518: + 5642 .loc 3 1071 22 view .LVU1772 + 5643 .LBB524: 1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); - 5525 .loc 3 1073 3 view .LVU1742 + 5644 .loc 3 1073 3 view .LVU1773 1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 5526 .loc 3 1074 3 view .LVU1743 - 5527 0010 1A4B ldr r3, .L290 - ARM GAS /tmp/ccwR4KB7.s page 327 + 5645 .loc 3 1074 3 view .LVU1774 + 5646 0010 1C4B ldr r3, .L307 + 5647 0012 1A6C ldr r2, [r3, #64] + 5648 0014 42F00802 orr r2, r2, #8 + 5649 0018 1A64 str r2, [r3, #64] +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5650 .loc 3 1076 3 view .LVU1775 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5651 .loc 3 1076 12 is_stmt 0 view .LVU1776 + 5652 001a 1B6C ldr r3, [r3, #64] + 5653 001c 03F00803 and r3, r3, #8 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5654 .loc 3 1076 10 view .LVU1777 + 5655 0020 0093 str r3, [sp] +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 5656 .loc 3 1077 3 is_stmt 1 view .LVU1778 + 5657 0022 009B ldr r3, [sp] + 5658 .LVL553: +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 5659 .loc 3 1077 3 is_stmt 0 view .LVU1779 + 5660 .LBE524: + 5661 .LBE523: +1624:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); + ARM GAS /tmp/ccEQxcUB.s page 335 - 5528 0012 1A6C ldr r2, [r3, #64] - 5529 0014 42F01002 orr r2, r2, #16 - 5530 0018 1A64 str r2, [r3, #64] -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5531 .loc 3 1076 3 view .LVU1744 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5532 .loc 3 1076 12 is_stmt 0 view .LVU1745 - 5533 001a 1B6C ldr r3, [r3, #64] - 5534 001c 03F01003 and r3, r3, #16 -1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 5535 .loc 3 1076 10 view .LVU1746 - 5536 0020 0093 str r3, [sp] -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5537 .loc 3 1077 3 is_stmt 1 view .LVU1747 - 5538 0022 009B ldr r3, [sp] - 5539 .LVL512: -1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 5540 .loc 3 1077 3 is_stmt 0 view .LVU1748 - 5541 .LBE518: - 5542 .LBE517: -1567:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); - 5543 .loc 1 1567 3 is_stmt 1 view .LVU1749 - 5544 .LBB519: - 5545 .LBI519: + 5662 .loc 1 1624 3 is_stmt 1 view .LVU1780 + 5663 .LBB525: + 5664 .LBI525: 1884:Drivers/CMSIS/Include/core_cm7.h **** { - 5546 .loc 2 1884 26 view .LVU1750 - 5547 .LBB520: + 5665 .loc 2 1884 26 view .LVU1781 + 5666 .LBB526: 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5548 .loc 2 1886 3 view .LVU1751 + 5667 .loc 2 1886 3 view .LVU1782 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 5549 .loc 2 1886 26 is_stmt 0 view .LVU1752 - 5550 0024 164B ldr r3, .L290+4 - 5551 0026 D868 ldr r0, [r3, #12] - 5552 .LBE520: - 5553 .LBE519: -1567:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); - 5554 .loc 1 1567 3 discriminator 1 view .LVU1753 - 5555 0028 2246 mov r2, r4 - 5556 002a 2146 mov r1, r4 - 5557 002c C0F30220 ubfx r0, r0, #8, #3 - 5558 0030 FFF7FEFF bl NVIC_EncodePriority - 5559 .LVL513: - 5560 .LBB521: - 5561 .LBI521: + 5668 .loc 2 1886 26 is_stmt 0 view .LVU1783 + 5669 0024 184B ldr r3, .L307+4 + 5670 0026 D868 ldr r0, [r3, #12] + 5671 .LBE526: + 5672 .LBE525: +1624:Src/main.c **** NVIC_EnableIRQ(TIM5_IRQn); + 5673 .loc 1 1624 3 discriminator 1 view .LVU1784 + 5674 0028 2246 mov r2, r4 + 5675 002a 2146 mov r1, r4 + 5676 002c C0F30220 ubfx r0, r0, #8, #3 + 5677 0030 FFF7FEFF bl NVIC_EncodePriority + 5678 .LVL554: + 5679 .LBB527: + 5680 .LBI527: 2024:Drivers/CMSIS/Include/core_cm7.h **** { - 5562 .loc 2 2024 22 is_stmt 1 view .LVU1754 - 5563 .LBB522: + 5681 .loc 2 2024 22 is_stmt 1 view .LVU1785 + 5682 .LBB528: 2026:Drivers/CMSIS/Include/core_cm7.h **** { - 5564 .loc 2 2026 3 view .LVU1755 + 5683 .loc 2 2026 3 view .LVU1786 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5565 .loc 2 2028 5 view .LVU1756 + 5684 .loc 2 2028 5 view .LVU1787 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5566 .loc 2 2028 49 is_stmt 0 view .LVU1757 - 5567 0034 0001 lsls r0, r0, #4 - 5568 .LVL514: + 5685 .loc 2 2028 49 is_stmt 0 view .LVU1788 + 5686 0034 0001 lsls r0, r0, #4 + 5687 .LVL555: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5569 .loc 2 2028 49 view .LVU1758 - ARM GAS /tmp/ccwR4KB7.s page 328 - - - 5570 0036 C0B2 uxtb r0, r0 + 5688 .loc 2 2028 49 view .LVU1789 + 5689 0036 C0B2 uxtb r0, r0 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5571 .loc 2 2028 47 view .LVU1759 - 5572 0038 124B ldr r3, .L290+8 - 5573 003a 83F83603 strb r0, [r3, #822] - 5574 .LVL515: + 5690 .loc 2 2028 47 view .LVU1790 + 5691 0038 144B ldr r3, .L307+8 + 5692 003a 83F83203 strb r0, [r3, #818] + 5693 .LVL556: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 5575 .loc 2 2028 47 view .LVU1760 - 5576 .LBE522: - 5577 .LBE521: -1568:Src/main.c **** - 5578 .loc 1 1568 3 is_stmt 1 view .LVU1761 - 5579 .LBB523: - 5580 .LBI523: + 5694 .loc 2 2028 47 view .LVU1791 + 5695 .LBE528: + 5696 .LBE527: +1625:Src/main.c **** + 5697 .loc 1 1625 3 is_stmt 1 view .LVU1792 + 5698 .LBB529: + 5699 .LBI529: 1896:Drivers/CMSIS/Include/core_cm7.h **** { - 5581 .loc 2 1896 22 view .LVU1762 - 5582 .LBB524: + 5700 .loc 2 1896 22 view .LVU1793 + 5701 .LBB530: 1898:Drivers/CMSIS/Include/core_cm7.h **** { - 5583 .loc 2 1898 3 view .LVU1763 + 5702 .loc 2 1898 3 view .LVU1794 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5584 .loc 2 1900 5 view .LVU1764 -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5585 .loc 2 1900 43 is_stmt 0 view .LVU1765 - 5586 003e 4FF48002 mov r2, #4194304 - 5587 0042 5A60 str r2, [r3, #4] - 5588 .LVL516: -1900:Drivers/CMSIS/Include/core_cm7.h **** } - 5589 .loc 2 1900 43 view .LVU1766 - 5590 .LBE524: - 5591 .LBE523: -1573:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5592 .loc 1 1573 3 is_stmt 1 view .LVU1767 -1573:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; - 5593 .loc 1 1573 28 is_stmt 0 view .LVU1768 - 5594 0044 4BF2AF33 movw r3, #45999 - 5595 0048 ADF80430 strh r3, [sp, #4] @ movhi -1574:Src/main.c **** TIM_InitStruct.Autoreload = 19; - 5596 .loc 1 1574 3 is_stmt 1 view .LVU1769 -1574:Src/main.c **** TIM_InitStruct.Autoreload = 19; - 5597 .loc 1 1574 30 is_stmt 0 view .LVU1770 - 5598 004c 0294 str r4, [sp, #8] -1575:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); - 5599 .loc 1 1575 3 is_stmt 1 view .LVU1771 -1575:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); - 5600 .loc 1 1575 29 is_stmt 0 view .LVU1772 - 5601 004e 1323 movs r3, #19 - 5602 0050 0393 str r3, [sp, #12] -1576:Src/main.c **** LL_TIM_DisableARRPreload(TIM6); - 5603 .loc 1 1576 3 is_stmt 1 view .LVU1773 - 5604 0052 0D4C ldr r4, .L290+12 - 5605 0054 01A9 add r1, sp, #4 - 5606 0056 2046 mov r0, r4 - 5607 0058 FFF7FEFF bl LL_TIM_Init - 5608 .LVL517: -1577:Src/main.c **** LL_TIM_SetTriggerOutput(TIM6, LL_TIM_TRGO_ENABLE); - 5609 .loc 1 1577 3 view .LVU1774 - 5610 .LBB525: - ARM GAS /tmp/ccwR4KB7.s page 329 + 5703 .loc 2 1900 5 view .LVU1795 + ARM GAS /tmp/ccEQxcUB.s page 336 - 5611 .LBI525: +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 5704 .loc 2 1900 43 is_stmt 0 view .LVU1796 + 5705 003e 4FF48022 mov r2, #262144 + 5706 0042 5A60 str r2, [r3, #4] + 5707 .LVL557: +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 5708 .loc 2 1900 43 view .LVU1797 + 5709 .LBE530: + 5710 .LBE529: +1630:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5711 .loc 1 1630 3 is_stmt 1 view .LVU1798 +1630:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5712 .loc 1 1630 28 is_stmt 0 view .LVU1799 + 5713 0044 42F21073 movw r3, #10000 + 5714 0048 ADF80430 strh r3, [sp, #4] @ movhi +1631:Src/main.c **** TIM_InitStruct.Autoreload = 560; + 5715 .loc 1 1631 3 is_stmt 1 view .LVU1800 +1631:Src/main.c **** TIM_InitStruct.Autoreload = 560; + 5716 .loc 1 1631 30 is_stmt 0 view .LVU1801 + 5717 004c 0294 str r4, [sp, #8] +1632:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; + 5718 .loc 1 1632 3 is_stmt 1 view .LVU1802 +1632:Src/main.c **** TIM_InitStruct.ClockDivision = LL_TIM_CLOCKDIVISION_DIV1; + 5719 .loc 1 1632 29 is_stmt 0 view .LVU1803 + 5720 004e 4FF40C73 mov r3, #560 + 5721 0052 0393 str r3, [sp, #12] +1633:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); + 5722 .loc 1 1633 3 is_stmt 1 view .LVU1804 +1633:Src/main.c **** LL_TIM_Init(TIM5, &TIM_InitStruct); + 5723 .loc 1 1633 32 is_stmt 0 view .LVU1805 + 5724 0054 0494 str r4, [sp, #16] +1634:Src/main.c **** LL_TIM_DisableARRPreload(TIM5); + 5725 .loc 1 1634 3 is_stmt 1 view .LVU1806 + 5726 0056 0E4C ldr r4, .L307+12 + 5727 0058 01A9 add r1, sp, #4 + 5728 005a 2046 mov r0, r4 + 5729 005c FFF7FEFF bl LL_TIM_Init + 5730 .LVL558: +1635:Src/main.c **** LL_TIM_SetClockSource(TIM5, LL_TIM_CLOCKSOURCE_INTERNAL); + 5731 .loc 1 1635 3 view .LVU1807 + 5732 .LBB531: + 5733 .LBI531: 1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5612 .loc 5 1504 22 view .LVU1775 - 5613 .LBB526: + 5734 .loc 5 1504 22 view .LVU1808 + 5735 .LBB532: 1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5614 .loc 5 1506 3 view .LVU1776 - 5615 005c 2368 ldr r3, [r4] - 5616 005e 23F08003 bic r3, r3, #128 - 5617 0062 2360 str r3, [r4] - 5618 .LVL518: + 5736 .loc 5 1506 3 view .LVU1809 + 5737 0060 2368 ldr r3, [r4] + 5738 0062 23F08003 bic r3, r3, #128 + 5739 0066 2360 str r3, [r4] + 5740 .LVL559: 1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5619 .loc 5 1506 3 is_stmt 0 view .LVU1777 - 5620 .LBE526: - 5621 .LBE525: -1578:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM6); - 5622 .loc 1 1578 3 is_stmt 1 view .LVU1778 - 5623 .LBB527: - 5624 .LBI527: + 5741 .loc 5 1506 3 is_stmt 0 view .LVU1810 + 5742 .LBE532: + 5743 .LBE531: +1636:Src/main.c **** LL_TIM_SetTriggerOutput(TIM5, LL_TIM_TRGO_RESET); + 5744 .loc 1 1636 3 is_stmt 1 view .LVU1811 + ARM GAS /tmp/ccEQxcUB.s page 337 + + + 5745 .LBB533: + 5746 .LBI533: +3092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 5747 .loc 5 3092 22 view .LVU1812 + 5748 .LBB534: +3094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5749 .loc 5 3094 3 view .LVU1813 + 5750 0068 A268 ldr r2, [r4, #8] + 5751 006a 0A4B ldr r3, .L307+16 + 5752 006c 1340 ands r3, r3, r2 + 5753 006e A360 str r3, [r4, #8] + 5754 .LVL560: +3094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5755 .loc 5 3094 3 is_stmt 0 view .LVU1814 + 5756 .LBE534: + 5757 .LBE533: +1637:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM5); + 5758 .loc 1 1637 3 is_stmt 1 view .LVU1815 + 5759 .LBB535: + 5760 .LBI535: 3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5625 .loc 5 3138 22 view .LVU1779 - 5626 .LBB528: + 5761 .loc 5 3138 22 view .LVU1816 + 5762 .LBB536: 3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5627 .loc 5 3140 3 view .LVU1780 - 5628 0064 6368 ldr r3, [r4, #4] - 5629 0066 23F07003 bic r3, r3, #112 - 5630 006a 43F01003 orr r3, r3, #16 - 5631 006e 6360 str r3, [r4, #4] - 5632 .LVL519: + 5763 .loc 5 3140 3 view .LVU1817 + 5764 0070 6368 ldr r3, [r4, #4] + 5765 0072 23F07003 bic r3, r3, #112 + 5766 0076 6360 str r3, [r4, #4] + 5767 .LVL561: 3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5633 .loc 5 3140 3 is_stmt 0 view .LVU1781 - 5634 .LBE528: - 5635 .LBE527: -1579:Src/main.c **** /* USER CODE BEGIN TIM6_Init 2 */ - 5636 .loc 1 1579 3 is_stmt 1 view .LVU1782 - 5637 .LBB529: - 5638 .LBI529: + 5768 .loc 5 3140 3 is_stmt 0 view .LVU1818 + 5769 .LBE536: + 5770 .LBE535: +1638:Src/main.c **** /* USER CODE BEGIN TIM5_Init 2 */ + 5771 .loc 1 1638 3 is_stmt 1 view .LVU1819 + 5772 .LBB537: + 5773 .LBI537: 3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5639 .loc 5 3235 22 view .LVU1783 - 5640 .LBB530: - 5641 .loc 5 3237 3 view .LVU1784 - 5642 0070 A368 ldr r3, [r4, #8] - 5643 0072 23F08003 bic r3, r3, #128 - 5644 0076 A360 str r3, [r4, #8] - 5645 .LVL520: - 5646 .loc 5 3237 3 is_stmt 0 view .LVU1785 - 5647 .LBE530: - 5648 .LBE529: -1584:Src/main.c **** - 5649 .loc 1 1584 1 view .LVU1786 - 5650 0078 06B0 add sp, sp, #24 - 5651 .LCFI61: - 5652 .cfi_def_cfa_offset 8 - 5653 @ sp needed - 5654 007a 10BD pop {r4, pc} - 5655 .L291: - 5656 .align 2 - 5657 .L290: - ARM GAS /tmp/ccwR4KB7.s page 330 + 5774 .loc 5 3235 22 view .LVU1820 + 5775 .LBB538: + 5776 .loc 5 3237 3 view .LVU1821 + 5777 0078 A368 ldr r3, [r4, #8] + 5778 007a 23F08003 bic r3, r3, #128 + 5779 007e A360 str r3, [r4, #8] + 5780 .LVL562: + 5781 .loc 5 3237 3 is_stmt 0 view .LVU1822 + 5782 .LBE538: + 5783 .LBE537: +1643:Src/main.c **** + 5784 .loc 1 1643 1 view .LVU1823 + 5785 0080 06B0 add sp, sp, #24 + 5786 .LCFI57: + 5787 .cfi_def_cfa_offset 8 + 5788 @ sp needed + 5789 0082 10BD pop {r4, pc} + 5790 .L308: + 5791 .align 2 + ARM GAS /tmp/ccEQxcUB.s page 338 - 5658 007c 00380240 .word 1073887232 - 5659 0080 00ED00E0 .word -536810240 - 5660 0084 00E100E0 .word -536813312 - 5661 0088 00100040 .word 1073745920 - 5662 .cfi_endproc - 5663 .LFE1198: - 5665 .section .rodata.Init_params.str1.4,"aMS",%progbits,1 - 5666 .align 2 - 5667 .LC0: - 5668 0000 2F00 .ascii "/\000" - 5669 0002 0000 .align 2 - 5670 .LC1: - 5671 0004 434F4D4D .ascii "COMMAND.TXT\000" - 5671 414E442E - 5671 54585400 - 5672 .section .text.Init_params,"ax",%progbits - 5673 .align 1 - 5674 .syntax unified - 5675 .thumb - 5676 .thumb_func - 5678 Init_params: - 5679 .LFB1207: -2054:Src/main.c **** TO6 = 0; - 5680 .loc 1 2054 1 is_stmt 1 view -0 - 5681 .cfi_startproc - 5682 @ args = 0, pretend = 0, frame = 0 - 5683 @ frame_needed = 0, uses_anonymous_args = 0 - 5684 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 5685 .LCFI62: - 5686 .cfi_def_cfa_offset 24 - 5687 .cfi_offset 4, -24 - 5688 .cfi_offset 5, -20 - 5689 .cfi_offset 6, -16 - 5690 .cfi_offset 7, -12 - 5691 .cfi_offset 8, -8 - 5692 .cfi_offset 14, -4 -2055:Src/main.c **** TO7 = 0; - 5693 .loc 1 2055 2 view .LVU1788 -2055:Src/main.c **** TO7 = 0; - 5694 .loc 1 2055 6 is_stmt 0 view .LVU1789 - 5695 0004 0023 movs r3, #0 - 5696 0006 9F4A ldr r2, .L304 - 5697 0008 1360 str r3, [r2] -2056:Src/main.c **** TO7_before = 0; - 5698 .loc 1 2056 2 is_stmt 1 view .LVU1790 -2056:Src/main.c **** TO7_before = 0; - 5699 .loc 1 2056 6 is_stmt 0 view .LVU1791 - 5700 000a 9F4A ldr r2, .L304+4 - 5701 000c 1360 str r3, [r2] -2057:Src/main.c **** TO6_before = 0; - 5702 .loc 1 2057 2 is_stmt 1 view .LVU1792 -2057:Src/main.c **** TO6_before = 0; - 5703 .loc 1 2057 13 is_stmt 0 view .LVU1793 - 5704 000e 9F4A ldr r2, .L304+8 - 5705 0010 1360 str r3, [r2] -2058:Src/main.c **** TO6_uart = 0; - 5706 .loc 1 2058 2 is_stmt 1 view .LVU1794 - ARM GAS /tmp/ccwR4KB7.s page 331 + 5792 .L307: + 5793 0084 00380240 .word 1073887232 + 5794 0088 00ED00E0 .word -536810240 + 5795 008c 00E100E0 .word -536813312 + 5796 0090 000C0040 .word 1073744896 + 5797 0094 F8BFFEFF .word -81928 + 5798 .cfi_endproc + 5799 .LFE1197: + 5801 .section .text.MX_TIM7_Init,"ax",%progbits + 5802 .align 1 + 5803 .syntax unified + 5804 .thumb + 5805 .thumb_func + 5807 MX_TIM7_Init: + 5808 .LFB1199: +1688:Src/main.c **** + 5809 .loc 1 1688 1 is_stmt 1 view -0 + 5810 .cfi_startproc + 5811 @ args = 0, pretend = 0, frame = 24 + 5812 @ frame_needed = 0, uses_anonymous_args = 0 + 5813 0000 10B5 push {r4, lr} + 5814 .LCFI58: + 5815 .cfi_def_cfa_offset 8 + 5816 .cfi_offset 4, -8 + 5817 .cfi_offset 14, -4 + 5818 0002 86B0 sub sp, sp, #24 + 5819 .LCFI59: + 5820 .cfi_def_cfa_offset 32 +1694:Src/main.c **** + 5821 .loc 1 1694 3 view .LVU1825 +1694:Src/main.c **** + 5822 .loc 1 1694 22 is_stmt 0 view .LVU1826 + 5823 0004 0024 movs r4, #0 + 5824 0006 0194 str r4, [sp, #4] + 5825 0008 0294 str r4, [sp, #8] + 5826 000a 0394 str r4, [sp, #12] + 5827 000c 0494 str r4, [sp, #16] + 5828 000e 0594 str r4, [sp, #20] +1697:Src/main.c **** + 5829 .loc 1 1697 3 is_stmt 1 view .LVU1827 + 5830 .LVL563: + 5831 .LBB539: + 5832 .LBI539: +1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { + 5833 .loc 3 1071 22 view .LVU1828 + 5834 .LBB540: +1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); + 5835 .loc 3 1073 3 view .LVU1829 +1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ + 5836 .loc 3 1074 3 view .LVU1830 + 5837 0010 1A4B ldr r3, .L311 + 5838 0012 1A6C ldr r2, [r3, #64] + 5839 0014 42F02002 orr r2, r2, #32 + 5840 0018 1A64 str r2, [r3, #64] +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5841 .loc 3 1076 3 view .LVU1831 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + ARM GAS /tmp/ccEQxcUB.s page 339 -2058:Src/main.c **** TO6_uart = 0; - 5707 .loc 1 2058 13 is_stmt 0 view .LVU1795 - 5708 0012 9F4A ldr r2, .L304+12 - 5709 0014 1360 str r3, [r2] -2059:Src/main.c **** flg_tmt = 0; - 5710 .loc 1 2059 2 is_stmt 1 view .LVU1796 -2059:Src/main.c **** flg_tmt = 0; - 5711 .loc 1 2059 11 is_stmt 0 view .LVU1797 - 5712 0016 9F4A ldr r2, .L304+16 - 5713 0018 1360 str r3, [r2] -2060:Src/main.c **** UART_rec_incr = 0; - 5714 .loc 1 2060 2 is_stmt 1 view .LVU1798 -2060:Src/main.c **** UART_rec_incr = 0; - 5715 .loc 1 2060 10 is_stmt 0 view .LVU1799 - 5716 001a 9F4A ldr r2, .L304+20 - 5717 001c 1370 strb r3, [r2] -2061:Src/main.c **** fgoto = 0; - 5718 .loc 1 2061 2 is_stmt 1 view .LVU1800 -2061:Src/main.c **** fgoto = 0; - 5719 .loc 1 2061 16 is_stmt 0 view .LVU1801 - 5720 001e 9F4A ldr r2, .L304+24 - 5721 0020 1380 strh r3, [r2] @ movhi -2062:Src/main.c **** sizeoffile = 0; - 5722 .loc 1 2062 2 is_stmt 1 view .LVU1802 -2062:Src/main.c **** sizeoffile = 0; - 5723 .loc 1 2062 8 is_stmt 0 view .LVU1803 - 5724 0022 9F4A ldr r2, .L304+28 - 5725 0024 1360 str r3, [r2] -2063:Src/main.c **** u_tx_flg = 0; - 5726 .loc 1 2063 2 is_stmt 1 view .LVU1804 -2063:Src/main.c **** u_tx_flg = 0; - 5727 .loc 1 2063 13 is_stmt 0 view .LVU1805 - 5728 0026 9F4A ldr r2, .L304+32 - 5729 0028 1360 str r3, [r2] -2064:Src/main.c **** u_rx_flg = 0; - 5730 .loc 1 2064 2 is_stmt 1 view .LVU1806 -2064:Src/main.c **** u_rx_flg = 0; - 5731 .loc 1 2064 11 is_stmt 0 view .LVU1807 - 5732 002a 9F4A ldr r2, .L304+36 - 5733 002c 1370 strb r3, [r2] -2065:Src/main.c **** //State_Data[0]=0; - 5734 .loc 1 2065 2 is_stmt 1 view .LVU1808 -2065:Src/main.c **** //State_Data[0]=0; - 5735 .loc 1 2065 11 is_stmt 0 view .LVU1809 - 5736 002e 9F4A ldr r2, .L304+40 - 5737 0030 1370 strb r3, [r2] -2068:Src/main.c **** { - 5738 .loc 1 2068 2 is_stmt 1 view .LVU1810 - 5739 .LBB531: -2068:Src/main.c **** { - 5740 .loc 1 2068 7 view .LVU1811 - 5741 .LVL521: -2068:Src/main.c **** { - 5742 .loc 1 2068 2 is_stmt 0 view .LVU1812 - 5743 0032 05E0 b .L293 - 5744 .LVL522: - 5745 .L294: - ARM GAS /tmp/ccwR4KB7.s page 332 + 5842 .loc 3 1076 12 is_stmt 0 view .LVU1832 + 5843 001a 1B6C ldr r3, [r3, #64] + 5844 001c 03F02003 and r3, r3, #32 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 5845 .loc 3 1076 10 view .LVU1833 + 5846 0020 0093 str r3, [sp] +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 5847 .loc 3 1077 3 is_stmt 1 view .LVU1834 + 5848 0022 009B ldr r3, [sp] + 5849 .LVL564: +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 5850 .loc 3 1077 3 is_stmt 0 view .LVU1835 + 5851 .LBE540: + 5852 .LBE539: +1700:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); + 5853 .loc 1 1700 3 is_stmt 1 view .LVU1836 + 5854 .LBB541: + 5855 .LBI541: +1884:Drivers/CMSIS/Include/core_cm7.h **** { + 5856 .loc 2 1884 26 view .LVU1837 + 5857 .LBB542: +1886:Drivers/CMSIS/Include/core_cm7.h **** } + 5858 .loc 2 1886 3 view .LVU1838 +1886:Drivers/CMSIS/Include/core_cm7.h **** } + 5859 .loc 2 1886 26 is_stmt 0 view .LVU1839 + 5860 0024 164B ldr r3, .L311+4 + 5861 0026 D868 ldr r0, [r3, #12] + 5862 .LBE542: + 5863 .LBE541: +1700:Src/main.c **** NVIC_EnableIRQ(TIM7_IRQn); + 5864 .loc 1 1700 3 discriminator 1 view .LVU1840 + 5865 0028 2246 mov r2, r4 + 5866 002a 2146 mov r1, r4 + 5867 002c C0F30220 ubfx r0, r0, #8, #3 + 5868 0030 FFF7FEFF bl NVIC_EncodePriority + 5869 .LVL565: + 5870 .LBB543: + 5871 .LBI543: +2024:Drivers/CMSIS/Include/core_cm7.h **** { + 5872 .loc 2 2024 22 is_stmt 1 view .LVU1841 + 5873 .LBB544: +2026:Drivers/CMSIS/Include/core_cm7.h **** { + 5874 .loc 2 2026 3 view .LVU1842 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 5875 .loc 2 2028 5 view .LVU1843 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 5876 .loc 2 2028 49 is_stmt 0 view .LVU1844 + 5877 0034 0001 lsls r0, r0, #4 + 5878 .LVL566: +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 5879 .loc 2 2028 49 view .LVU1845 + 5880 0036 C0B2 uxtb r0, r0 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 5881 .loc 2 2028 47 view .LVU1846 + 5882 0038 124B ldr r3, .L311+8 + 5883 003a 83F83703 strb r0, [r3, #823] + 5884 .LVL567: + ARM GAS /tmp/ccEQxcUB.s page 340 -2070:Src/main.c **** } - 5746 .loc 1 2070 3 is_stmt 1 view .LVU1813 -2070:Src/main.c **** } - 5747 .loc 1 2070 16 is_stmt 0 view .LVU1814 - 5748 0034 9E4A ldr r2, .L304+44 - 5749 0036 0021 movs r1, #0 - 5750 0038 22F81310 strh r1, [r2, r3, lsl #1] @ movhi -2068:Src/main.c **** { - 5751 .loc 1 2068 31 is_stmt 1 discriminator 3 view .LVU1815 - 5752 003c 0133 adds r3, r3, #1 - 5753 .LVL523: -2068:Src/main.c **** { - 5754 .loc 1 2068 31 is_stmt 0 discriminator 3 view .LVU1816 - 5755 003e 9BB2 uxth r3, r3 - 5756 .LVL524: - 5757 .L293: -2068:Src/main.c **** { - 5758 .loc 1 2068 22 is_stmt 1 discriminator 1 view .LVU1817 - 5759 0040 0E2B cmp r3, #14 - 5760 0042 F7D9 bls .L294 - 5761 .LBE531: -2072:Src/main.c **** - 5762 .loc 1 2072 2 view .LVU1818 -2072:Src/main.c **** - 5763 .loc 1 2072 14 is_stmt 0 view .LVU1819 - 5764 0044 9A4B ldr r3, .L304+44 - 5765 .LVL525: -2072:Src/main.c **** - 5766 .loc 1 2072 14 view .LVU1820 - 5767 0046 41F21112 movw r2, #4369 - 5768 004a 1A80 strh r2, [r3] @ movhi -2075:Src/main.c **** Def_setup.LD1_EN = 0; - 5769 .loc 1 2075 2 is_stmt 1 view .LVU1821 -2075:Src/main.c **** Def_setup.LD1_EN = 0; - 5770 .loc 1 2075 21 is_stmt 0 view .LVU1822 - 5771 004c 994B ldr r3, .L304+48 - 5772 004e 0022 movs r2, #0 - 5773 0050 DA81 strh r2, [r3, #14] @ movhi -2076:Src/main.c **** Def_setup.LD2_EN = 0; - 5774 .loc 1 2076 2 is_stmt 1 view .LVU1823 -2076:Src/main.c **** Def_setup.LD2_EN = 0; - 5775 .loc 1 2076 19 is_stmt 0 view .LVU1824 - 5776 0052 DA70 strb r2, [r3, #3] -2077:Src/main.c **** Def_setup.MES_ID = 0; - 5777 .loc 1 2077 2 is_stmt 1 view .LVU1825 -2077:Src/main.c **** Def_setup.MES_ID = 0; - 5778 .loc 1 2077 19 is_stmt 0 view .LVU1826 - 5779 0054 1A71 strb r2, [r3, #4] -2078:Src/main.c **** Def_setup.PI1_RD = 0; - 5780 .loc 1 2078 2 is_stmt 1 view .LVU1827 -2078:Src/main.c **** Def_setup.PI1_RD = 0; - 5781 .loc 1 2078 19 is_stmt 0 view .LVU1828 - 5782 0056 1A82 strh r2, [r3, #16] @ movhi -2079:Src/main.c **** Def_setup.PI2_RD = 0; - 5783 .loc 1 2079 2 is_stmt 1 view .LVU1829 -2079:Src/main.c **** Def_setup.PI2_RD = 0; - 5784 .loc 1 2079 19 is_stmt 0 view .LVU1830 - ARM GAS /tmp/ccwR4KB7.s page 333 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 5885 .loc 2 2028 47 view .LVU1847 + 5886 .LBE544: + 5887 .LBE543: +1701:Src/main.c **** + 5888 .loc 1 1701 3 is_stmt 1 view .LVU1848 + 5889 .LBB545: + 5890 .LBI545: +1896:Drivers/CMSIS/Include/core_cm7.h **** { + 5891 .loc 2 1896 22 view .LVU1849 + 5892 .LBB546: +1898:Drivers/CMSIS/Include/core_cm7.h **** { + 5893 .loc 2 1898 3 view .LVU1850 +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 5894 .loc 2 1900 5 view .LVU1851 +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 5895 .loc 2 1900 43 is_stmt 0 view .LVU1852 + 5896 003e 4FF40002 mov r2, #8388608 + 5897 0042 5A60 str r2, [r3, #4] + 5898 .LVL568: +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 5899 .loc 2 1900 43 view .LVU1853 + 5900 .LBE546: + 5901 .LBE545: +1706:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5902 .loc 1 1706 3 is_stmt 1 view .LVU1854 +1706:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 5903 .loc 1 1706 28 is_stmt 0 view .LVU1855 + 5904 0044 40F29733 movw r3, #919 + 5905 0048 ADF80430 strh r3, [sp, #4] @ movhi +1707:Src/main.c **** TIM_InitStruct.Autoreload = 99; + 5906 .loc 1 1707 3 is_stmt 1 view .LVU1856 +1707:Src/main.c **** TIM_InitStruct.Autoreload = 99; + 5907 .loc 1 1707 30 is_stmt 0 view .LVU1857 + 5908 004c 0294 str r4, [sp, #8] +1708:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); + 5909 .loc 1 1708 3 is_stmt 1 view .LVU1858 +1708:Src/main.c **** LL_TIM_Init(TIM7, &TIM_InitStruct); + 5910 .loc 1 1708 29 is_stmt 0 view .LVU1859 + 5911 004e 6323 movs r3, #99 + 5912 0050 0393 str r3, [sp, #12] +1709:Src/main.c **** LL_TIM_DisableARRPreload(TIM7); + 5913 .loc 1 1709 3 is_stmt 1 view .LVU1860 + 5914 0052 0D4C ldr r4, .L311+12 + 5915 0054 01A9 add r1, sp, #4 + 5916 0056 2046 mov r0, r4 + 5917 0058 FFF7FEFF bl LL_TIM_Init + 5918 .LVL569: +1710:Src/main.c **** LL_TIM_SetTriggerOutput(TIM7, LL_TIM_TRGO_ENABLE); + 5919 .loc 1 1710 3 view .LVU1861 + 5920 .LBB547: + 5921 .LBI547: +1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 5922 .loc 5 1504 22 view .LVU1862 + 5923 .LBB548: +1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5924 .loc 5 1506 3 view .LVU1863 + ARM GAS /tmp/ccEQxcUB.s page 341 - 5785 0058 1A73 strb r2, [r3, #12] -2080:Src/main.c **** Def_setup.REF1_EN = 0; - 5786 .loc 1 2080 2 is_stmt 1 view .LVU1831 -2080:Src/main.c **** Def_setup.REF1_EN = 0; - 5787 .loc 1 2080 19 is_stmt 0 view .LVU1832 - 5788 005a 5A73 strb r2, [r3, #13] -2081:Src/main.c **** Def_setup.REF2_EN = 0; - 5789 .loc 1 2081 2 is_stmt 1 view .LVU1833 -2081:Src/main.c **** Def_setup.REF2_EN = 0; - 5790 .loc 1 2081 20 is_stmt 0 view .LVU1834 - 5791 005c 5A71 strb r2, [r3, #5] -2082:Src/main.c **** Def_setup.SD_EN = 0; - 5792 .loc 1 2082 2 is_stmt 1 view .LVU1835 -2082:Src/main.c **** Def_setup.SD_EN = 0; - 5793 .loc 1 2082 20 is_stmt 0 view .LVU1836 - 5794 005e 9A71 strb r2, [r3, #6] -2083:Src/main.c **** Def_setup.TEC1_EN = 0; - 5795 .loc 1 2083 2 is_stmt 1 view .LVU1837 -2083:Src/main.c **** Def_setup.TEC1_EN = 0; - 5796 .loc 1 2083 18 is_stmt 0 view .LVU1838 - 5797 0060 DA72 strb r2, [r3, #11] -2084:Src/main.c **** Def_setup.TEC2_EN = 0; - 5798 .loc 1 2084 2 is_stmt 1 view .LVU1839 -2084:Src/main.c **** Def_setup.TEC2_EN = 0; - 5799 .loc 1 2084 20 is_stmt 0 view .LVU1840 - 5800 0062 DA71 strb r2, [r3, #7] -2085:Src/main.c **** Def_setup.TS1_EN = 0; - 5801 .loc 1 2085 2 is_stmt 1 view .LVU1841 -2085:Src/main.c **** Def_setup.TS1_EN = 0; - 5802 .loc 1 2085 20 is_stmt 0 view .LVU1842 - 5803 0064 1A72 strb r2, [r3, #8] -2086:Src/main.c **** Def_setup.TS2_EN = 0; - 5804 .loc 1 2086 2 is_stmt 1 view .LVU1843 -2086:Src/main.c **** Def_setup.TS2_EN = 0; - 5805 .loc 1 2086 19 is_stmt 0 view .LVU1844 - 5806 0066 5A72 strb r2, [r3, #9] -2087:Src/main.c **** Def_setup.U5V1_EN = 0; - 5807 .loc 1 2087 2 is_stmt 1 view .LVU1845 -2087:Src/main.c **** Def_setup.U5V1_EN = 0; - 5808 .loc 1 2087 19 is_stmt 0 view .LVU1846 - 5809 0068 9A72 strb r2, [r3, #10] -2088:Src/main.c **** Def_setup.U5V2_EN = 0; - 5810 .loc 1 2088 2 is_stmt 1 view .LVU1847 -2088:Src/main.c **** Def_setup.U5V2_EN = 0; - 5811 .loc 1 2088 20 is_stmt 0 view .LVU1848 - 5812 006a 5A70 strb r2, [r3, #1] -2089:Src/main.c **** Def_setup.WORK_EN = 0; - 5813 .loc 1 2089 2 is_stmt 1 view .LVU1849 -2089:Src/main.c **** Def_setup.WORK_EN = 0; - 5814 .loc 1 2089 20 is_stmt 0 view .LVU1850 - 5815 006c 9A70 strb r2, [r3, #2] -2090:Src/main.c **** - 5816 .loc 1 2090 2 is_stmt 1 view .LVU1851 -2090:Src/main.c **** - 5817 .loc 1 2090 20 is_stmt 0 view .LVU1852 - 5818 006e 1A70 strb r2, [r3] -2092:Src/main.c **** LD2_def_setup.LD_TEMP = 0; - ARM GAS /tmp/ccwR4KB7.s page 334 + 5925 005c 2368 ldr r3, [r4] + 5926 005e 23F08003 bic r3, r3, #128 + 5927 0062 2360 str r3, [r4] + 5928 .LVL570: +1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5929 .loc 5 1506 3 is_stmt 0 view .LVU1864 + 5930 .LBE548: + 5931 .LBE547: +1711:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM7); + 5932 .loc 1 1711 3 is_stmt 1 view .LVU1865 + 5933 .LBB549: + 5934 .LBI549: +3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 5935 .loc 5 3138 22 view .LVU1866 + 5936 .LBB550: +3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5937 .loc 5 3140 3 view .LVU1867 + 5938 0064 6368 ldr r3, [r4, #4] + 5939 0066 23F07003 bic r3, r3, #112 + 5940 006a 43F01003 orr r3, r3, #16 + 5941 006e 6360 str r3, [r4, #4] + 5942 .LVL571: +3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 5943 .loc 5 3140 3 is_stmt 0 view .LVU1868 + 5944 .LBE550: + 5945 .LBE549: +1712:Src/main.c **** /* USER CODE BEGIN TIM7_Init 2 */ + 5946 .loc 1 1712 3 is_stmt 1 view .LVU1869 + 5947 .LBB551: + 5948 .LBI551: +3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 5949 .loc 5 3235 22 view .LVU1870 + 5950 .LBB552: + 5951 .loc 5 3237 3 view .LVU1871 + 5952 0070 A368 ldr r3, [r4, #8] + 5953 0072 23F08003 bic r3, r3, #128 + 5954 0076 A360 str r3, [r4, #8] + 5955 .LVL572: + 5956 .loc 5 3237 3 is_stmt 0 view .LVU1872 + 5957 .LBE552: + 5958 .LBE551: +1717:Src/main.c **** + 5959 .loc 1 1717 1 view .LVU1873 + 5960 0078 06B0 add sp, sp, #24 + 5961 .LCFI60: + 5962 .cfi_def_cfa_offset 8 + 5963 @ sp needed + 5964 007a 10BD pop {r4, pc} + 5965 .L312: + 5966 .align 2 + 5967 .L311: + 5968 007c 00380240 .word 1073887232 + 5969 0080 00ED00E0 .word -536810240 + 5970 0084 00E100E0 .word -536813312 + 5971 0088 00140040 .word 1073746944 + 5972 .cfi_endproc + 5973 .LFE1199: + ARM GAS /tmp/ccEQxcUB.s page 342 - 5819 .loc 1 2092 2 is_stmt 1 view .LVU1853 -2092:Src/main.c **** LD2_def_setup.LD_TEMP = 0; - 5820 .loc 1 2092 24 is_stmt 0 view .LVU1854 - 5821 0070 914D ldr r5, .L304+52 - 5822 0072 2A80 strh r2, [r5] @ movhi -2093:Src/main.c **** LD1_def_setup.P_coef_temp = 0; - 5823 .loc 1 2093 2 is_stmt 1 view .LVU1855 -2093:Src/main.c **** LD1_def_setup.P_coef_temp = 0; - 5824 .loc 1 2093 24 is_stmt 0 view .LVU1856 - 5825 0074 914C ldr r4, .L304+56 - 5826 0076 2280 strh r2, [r4] @ movhi -2094:Src/main.c **** LD2_def_setup.P_coef_temp = 0; - 5827 .loc 1 2094 2 is_stmt 1 view .LVU1857 -2094:Src/main.c **** LD2_def_setup.P_coef_temp = 0; - 5828 .loc 1 2094 28 is_stmt 0 view .LVU1858 - 5829 0078 0022 movs r2, #0 - 5830 007a 6A60 str r2, [r5, #4] @ float -2095:Src/main.c **** LD1_def_setup.I_coef_temp = 0; - 5831 .loc 1 2095 2 is_stmt 1 view .LVU1859 -2095:Src/main.c **** LD1_def_setup.I_coef_temp = 0; - 5832 .loc 1 2095 28 is_stmt 0 view .LVU1860 - 5833 007c 6260 str r2, [r4, #4] @ float -2096:Src/main.c **** LD2_def_setup.I_coef_temp = 0; - 5834 .loc 1 2096 2 is_stmt 1 view .LVU1861 -2096:Src/main.c **** LD2_def_setup.I_coef_temp = 0; - 5835 .loc 1 2096 28 is_stmt 0 view .LVU1862 - 5836 007e AA60 str r2, [r5, #8] @ float -2097:Src/main.c **** - 5837 .loc 1 2097 2 is_stmt 1 view .LVU1863 -2097:Src/main.c **** - 5838 .loc 1 2097 28 is_stmt 0 view .LVU1864 - 5839 0080 A260 str r2, [r4, #8] @ float -2100:Src/main.c **** LD1_curr_setup = LD1_def_setup; - 5840 .loc 1 2100 2 is_stmt 1 view .LVU1865 -2100:Src/main.c **** LD1_curr_setup = LD1_def_setup; - 5841 .loc 1 2100 13 is_stmt 0 view .LVU1866 - 5842 0082 8F4E ldr r6, .L304+60 - 5843 0084 9C46 mov ip, r3 - 5844 0086 BCE80F00 ldmia ip!, {r0, r1, r2, r3} - 5845 008a 0FC6 stmia r6!, {r0, r1, r2, r3} - 5846 008c DCF80030 ldr r3, [ip] - 5847 0090 3380 strh r3, [r6] @ movhi -2101:Src/main.c **** LD2_curr_setup = LD2_def_setup; - 5848 .loc 1 2101 2 is_stmt 1 view .LVU1867 -2101:Src/main.c **** LD2_curr_setup = LD2_def_setup; - 5849 .loc 1 2101 17 is_stmt 0 view .LVU1868 - 5850 0092 8C4E ldr r6, .L304+64 - 5851 0094 95E80F00 ldm r5, {r0, r1, r2, r3} - 5852 0098 86E80F00 stm r6, {r0, r1, r2, r3} -2102:Src/main.c **** - 5853 .loc 1 2102 2 is_stmt 1 view .LVU1869 -2102:Src/main.c **** - 5854 .loc 1 2102 17 is_stmt 0 view .LVU1870 - 5855 009c 8A4D ldr r5, .L304+68 - 5856 009e 94E80F00 ldm r4, {r0, r1, r2, r3} - 5857 00a2 85E80F00 stm r5, {r0, r1, r2, r3} -2107:Src/main.c **** LL_TIM_EnableCounter(TIM6); - ARM GAS /tmp/ccwR4KB7.s page 335 + 5975 .section .text.MX_TIM6_Init,"ax",%progbits + 5976 .align 1 + 5977 .syntax unified + 5978 .thumb + 5979 .thumb_func + 5981 MX_TIM6_Init: + 5982 .LFB1198: +1651:Src/main.c **** + 5983 .loc 1 1651 1 is_stmt 1 view -0 + 5984 .cfi_startproc + 5985 @ args = 0, pretend = 0, frame = 24 + 5986 @ frame_needed = 0, uses_anonymous_args = 0 + 5987 0000 10B5 push {r4, lr} + 5988 .LCFI61: + 5989 .cfi_def_cfa_offset 8 + 5990 .cfi_offset 4, -8 + 5991 .cfi_offset 14, -4 + 5992 0002 86B0 sub sp, sp, #24 + 5993 .LCFI62: + 5994 .cfi_def_cfa_offset 32 +1657:Src/main.c **** + 5995 .loc 1 1657 3 view .LVU1875 +1657:Src/main.c **** + 5996 .loc 1 1657 22 is_stmt 0 view .LVU1876 + 5997 0004 0024 movs r4, #0 + 5998 0006 0194 str r4, [sp, #4] + 5999 0008 0294 str r4, [sp, #8] + 6000 000a 0394 str r4, [sp, #12] + 6001 000c 0494 str r4, [sp, #16] + 6002 000e 0594 str r4, [sp, #20] +1660:Src/main.c **** + 6003 .loc 1 1660 3 is_stmt 1 view .LVU1877 + 6004 .LVL573: + 6005 .LBB553: + 6006 .LBI553: +1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { + 6007 .loc 3 1071 22 view .LVU1878 + 6008 .LBB554: +1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB1ENR, Periphs); + 6009 .loc 3 1073 3 view .LVU1879 +1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ + 6010 .loc 3 1074 3 view .LVU1880 + 6011 0010 1A4B ldr r3, .L315 + 6012 0012 1A6C ldr r2, [r3, #64] + 6013 0014 42F01002 orr r2, r2, #16 + 6014 0018 1A64 str r2, [r3, #64] +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 6015 .loc 3 1076 3 view .LVU1881 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 6016 .loc 3 1076 12 is_stmt 0 view .LVU1882 + 6017 001a 1B6C ldr r3, [r3, #64] + 6018 001c 03F01003 and r3, r3, #16 +1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; + 6019 .loc 3 1076 10 view .LVU1883 + 6020 0020 0093 str r3, [sp] +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 6021 .loc 3 1077 3 is_stmt 1 view .LVU1884 + ARM GAS /tmp/ccEQxcUB.s page 343 - 5858 .loc 1 2107 2 is_stmt 1 view .LVU1871 - 5859 .LVL526: - 5860 .LBB532: - 5861 .LBI532: + 6022 0022 009B ldr r3, [sp] + 6023 .LVL574: +1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } + 6024 .loc 3 1077 3 is_stmt 0 view .LVU1885 + 6025 .LBE554: + 6026 .LBE553: +1663:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); + 6027 .loc 1 1663 3 is_stmt 1 view .LVU1886 + 6028 .LBB555: + 6029 .LBI555: +1884:Drivers/CMSIS/Include/core_cm7.h **** { + 6030 .loc 2 1884 26 view .LVU1887 + 6031 .LBB556: +1886:Drivers/CMSIS/Include/core_cm7.h **** } + 6032 .loc 2 1886 3 view .LVU1888 +1886:Drivers/CMSIS/Include/core_cm7.h **** } + 6033 .loc 2 1886 26 is_stmt 0 view .LVU1889 + 6034 0024 164B ldr r3, .L315+4 + 6035 0026 D868 ldr r0, [r3, #12] + 6036 .LBE556: + 6037 .LBE555: +1663:Src/main.c **** NVIC_EnableIRQ(TIM6_DAC_IRQn); + 6038 .loc 1 1663 3 discriminator 1 view .LVU1890 + 6039 0028 2246 mov r2, r4 + 6040 002a 2146 mov r1, r4 + 6041 002c C0F30220 ubfx r0, r0, #8, #3 + 6042 0030 FFF7FEFF bl NVIC_EncodePriority + 6043 .LVL575: + 6044 .LBB557: + 6045 .LBI557: +2024:Drivers/CMSIS/Include/core_cm7.h **** { + 6046 .loc 2 2024 22 is_stmt 1 view .LVU1891 + 6047 .LBB558: +2026:Drivers/CMSIS/Include/core_cm7.h **** { + 6048 .loc 2 2026 3 view .LVU1892 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 6049 .loc 2 2028 5 view .LVU1893 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 6050 .loc 2 2028 49 is_stmt 0 view .LVU1894 + 6051 0034 0001 lsls r0, r0, #4 + 6052 .LVL576: +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 6053 .loc 2 2028 49 view .LVU1895 + 6054 0036 C0B2 uxtb r0, r0 +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 6055 .loc 2 2028 47 view .LVU1896 + 6056 0038 124B ldr r3, .L315+8 + 6057 003a 83F83603 strb r0, [r3, #822] + 6058 .LVL577: +2028:Drivers/CMSIS/Include/core_cm7.h **** } + 6059 .loc 2 2028 47 view .LVU1897 + 6060 .LBE558: + 6061 .LBE557: +1664:Src/main.c **** + 6062 .loc 1 1664 3 is_stmt 1 view .LVU1898 + 6063 .LBB559: + 6064 .LBI559: + ARM GAS /tmp/ccEQxcUB.s page 344 + + +1896:Drivers/CMSIS/Include/core_cm7.h **** { + 6065 .loc 2 1896 22 view .LVU1899 + 6066 .LBB560: +1898:Drivers/CMSIS/Include/core_cm7.h **** { + 6067 .loc 2 1898 3 view .LVU1900 +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 6068 .loc 2 1900 5 view .LVU1901 +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 6069 .loc 2 1900 43 is_stmt 0 view .LVU1902 + 6070 003e 4FF48002 mov r2, #4194304 + 6071 0042 5A60 str r2, [r3, #4] + 6072 .LVL578: +1900:Drivers/CMSIS/Include/core_cm7.h **** } + 6073 .loc 2 1900 43 view .LVU1903 + 6074 .LBE560: + 6075 .LBE559: +1669:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 6076 .loc 1 1669 3 is_stmt 1 view .LVU1904 +1669:Src/main.c **** TIM_InitStruct.CounterMode = LL_TIM_COUNTERMODE_UP; + 6077 .loc 1 1669 28 is_stmt 0 view .LVU1905 + 6078 0044 4BF2AF33 movw r3, #45999 + 6079 0048 ADF80430 strh r3, [sp, #4] @ movhi +1670:Src/main.c **** TIM_InitStruct.Autoreload = 19; + 6080 .loc 1 1670 3 is_stmt 1 view .LVU1906 +1670:Src/main.c **** TIM_InitStruct.Autoreload = 19; + 6081 .loc 1 1670 30 is_stmt 0 view .LVU1907 + 6082 004c 0294 str r4, [sp, #8] +1671:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); + 6083 .loc 1 1671 3 is_stmt 1 view .LVU1908 +1671:Src/main.c **** LL_TIM_Init(TIM6, &TIM_InitStruct); + 6084 .loc 1 1671 29 is_stmt 0 view .LVU1909 + 6085 004e 1323 movs r3, #19 + 6086 0050 0393 str r3, [sp, #12] +1672:Src/main.c **** LL_TIM_DisableARRPreload(TIM6); + 6087 .loc 1 1672 3 is_stmt 1 view .LVU1910 + 6088 0052 0D4C ldr r4, .L315+12 + 6089 0054 01A9 add r1, sp, #4 + 6090 0056 2046 mov r0, r4 + 6091 0058 FFF7FEFF bl LL_TIM_Init + 6092 .LVL579: +1673:Src/main.c **** LL_TIM_SetTriggerOutput(TIM6, LL_TIM_TRGO_ENABLE); + 6093 .loc 1 1673 3 view .LVU1911 + 6094 .LBB561: + 6095 .LBI561: +1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 6096 .loc 5 1504 22 view .LVU1912 + 6097 .LBB562: +1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 6098 .loc 5 1506 3 view .LVU1913 + 6099 005c 2368 ldr r3, [r4] + 6100 005e 23F08003 bic r3, r3, #128 + 6101 0062 2360 str r3, [r4] + 6102 .LVL580: +1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 6103 .loc 5 1506 3 is_stmt 0 view .LVU1914 + 6104 .LBE562: + 6105 .LBE561: + ARM GAS /tmp/ccEQxcUB.s page 345 + + +1674:Src/main.c **** LL_TIM_DisableMasterSlaveMode(TIM6); + 6106 .loc 1 1674 3 is_stmt 1 view .LVU1915 + 6107 .LBB563: + 6108 .LBI563: +3138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 6109 .loc 5 3138 22 view .LVU1916 + 6110 .LBB564: +3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 6111 .loc 5 3140 3 view .LVU1917 + 6112 0064 6368 ldr r3, [r4, #4] + 6113 0066 23F07003 bic r3, r3, #112 + 6114 006a 43F01003 orr r3, r3, #16 + 6115 006e 6360 str r3, [r4, #4] + 6116 .LVL581: +3140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } + 6117 .loc 5 3140 3 is_stmt 0 view .LVU1918 + 6118 .LBE564: + 6119 .LBE563: +1675:Src/main.c **** /* USER CODE BEGIN TIM6_Init 2 */ + 6120 .loc 1 1675 3 is_stmt 1 view .LVU1919 + 6121 .LBB565: + 6122 .LBI565: +3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + 6123 .loc 5 3235 22 view .LVU1920 + 6124 .LBB566: + 6125 .loc 5 3237 3 view .LVU1921 + 6126 0070 A368 ldr r3, [r4, #8] + 6127 0072 23F08003 bic r3, r3, #128 + 6128 0076 A360 str r3, [r4, #8] + 6129 .LVL582: + 6130 .loc 5 3237 3 is_stmt 0 view .LVU1922 + 6131 .LBE566: + 6132 .LBE565: +1680:Src/main.c **** + 6133 .loc 1 1680 1 view .LVU1923 + 6134 0078 06B0 add sp, sp, #24 + 6135 .LCFI63: + 6136 .cfi_def_cfa_offset 8 + 6137 @ sp needed + 6138 007a 10BD pop {r4, pc} + 6139 .L316: + 6140 .align 2 + 6141 .L315: + 6142 007c 00380240 .word 1073887232 + 6143 0080 00ED00E0 .word -536810240 + 6144 0084 00E100E0 .word -536813312 + 6145 0088 00100040 .word 1073745920 + 6146 .cfi_endproc + 6147 .LFE1198: + 6149 .section .rodata.Init_params.str1.4,"aMS",%progbits,1 + 6150 .align 2 + 6151 .LC0: + 6152 0000 2F00 .ascii "/\000" + 6153 0002 0000 .align 2 + 6154 .LC1: + 6155 0004 434F4D4D .ascii "COMMAND.TXT\000" + 6155 414E442E + ARM GAS /tmp/ccEQxcUB.s page 346 + + + 6155 54585400 + 6156 .section .text.Init_params,"ax",%progbits + 6157 .align 1 + 6158 .syntax unified + 6159 .thumb + 6160 .thumb_func + 6162 Init_params: + 6163 .LFB1208: +2229:Src/main.c **** TO6 = 0; + 6164 .loc 1 2229 1 is_stmt 1 view -0 + 6165 .cfi_startproc + 6166 @ args = 0, pretend = 0, frame = 0 + 6167 @ frame_needed = 0, uses_anonymous_args = 0 + 6168 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 6169 .LCFI64: + 6170 .cfi_def_cfa_offset 24 + 6171 .cfi_offset 4, -24 + 6172 .cfi_offset 5, -20 + 6173 .cfi_offset 6, -16 + 6174 .cfi_offset 7, -12 + 6175 .cfi_offset 8, -8 + 6176 .cfi_offset 14, -4 +2230:Src/main.c **** TO7 = 0; + 6177 .loc 1 2230 2 view .LVU1925 +2230:Src/main.c **** TO7 = 0; + 6178 .loc 1 2230 6 is_stmt 0 view .LVU1926 + 6179 0004 0023 movs r3, #0 + 6180 0006 9F4A ldr r2, .L329 + 6181 0008 1360 str r3, [r2] +2231:Src/main.c **** TO7_before = 0; + 6182 .loc 1 2231 2 is_stmt 1 view .LVU1927 +2231:Src/main.c **** TO7_before = 0; + 6183 .loc 1 2231 6 is_stmt 0 view .LVU1928 + 6184 000a 9F4A ldr r2, .L329+4 + 6185 000c 1360 str r3, [r2] +2232:Src/main.c **** TO6_before = 0; + 6186 .loc 1 2232 2 is_stmt 1 view .LVU1929 +2232:Src/main.c **** TO6_before = 0; + 6187 .loc 1 2232 13 is_stmt 0 view .LVU1930 + 6188 000e 9F4A ldr r2, .L329+8 + 6189 0010 1360 str r3, [r2] +2233:Src/main.c **** TO6_uart = 0; + 6190 .loc 1 2233 2 is_stmt 1 view .LVU1931 +2233:Src/main.c **** TO6_uart = 0; + 6191 .loc 1 2233 13 is_stmt 0 view .LVU1932 + 6192 0012 9F4A ldr r2, .L329+12 + 6193 0014 1360 str r3, [r2] +2234:Src/main.c **** flg_tmt = 0; + 6194 .loc 1 2234 2 is_stmt 1 view .LVU1933 +2234:Src/main.c **** flg_tmt = 0; + 6195 .loc 1 2234 11 is_stmt 0 view .LVU1934 + 6196 0016 9F4A ldr r2, .L329+16 + 6197 0018 1360 str r3, [r2] +2235:Src/main.c **** UART_rec_incr = 0; + 6198 .loc 1 2235 2 is_stmt 1 view .LVU1935 +2235:Src/main.c **** UART_rec_incr = 0; + 6199 .loc 1 2235 10 is_stmt 0 view .LVU1936 + ARM GAS /tmp/ccEQxcUB.s page 347 + + + 6200 001a 9F4A ldr r2, .L329+20 + 6201 001c 1370 strb r3, [r2] +2236:Src/main.c **** fgoto = 0; + 6202 .loc 1 2236 2 is_stmt 1 view .LVU1937 +2236:Src/main.c **** fgoto = 0; + 6203 .loc 1 2236 16 is_stmt 0 view .LVU1938 + 6204 001e 9F4A ldr r2, .L329+24 + 6205 0020 1380 strh r3, [r2] @ movhi +2237:Src/main.c **** sizeoffile = 0; + 6206 .loc 1 2237 2 is_stmt 1 view .LVU1939 +2237:Src/main.c **** sizeoffile = 0; + 6207 .loc 1 2237 8 is_stmt 0 view .LVU1940 + 6208 0022 9F4A ldr r2, .L329+28 + 6209 0024 1360 str r3, [r2] +2238:Src/main.c **** u_tx_flg = 0; + 6210 .loc 1 2238 2 is_stmt 1 view .LVU1941 +2238:Src/main.c **** u_tx_flg = 0; + 6211 .loc 1 2238 13 is_stmt 0 view .LVU1942 + 6212 0026 9F4A ldr r2, .L329+32 + 6213 0028 1360 str r3, [r2] +2239:Src/main.c **** u_rx_flg = 0; + 6214 .loc 1 2239 2 is_stmt 1 view .LVU1943 +2239:Src/main.c **** u_rx_flg = 0; + 6215 .loc 1 2239 11 is_stmt 0 view .LVU1944 + 6216 002a 9F4A ldr r2, .L329+36 + 6217 002c 1370 strb r3, [r2] +2240:Src/main.c **** //State_Data[0]=0; + 6218 .loc 1 2240 2 is_stmt 1 view .LVU1945 +2240:Src/main.c **** //State_Data[0]=0; + 6219 .loc 1 2240 11 is_stmt 0 view .LVU1946 + 6220 002e 9F4A ldr r2, .L329+40 + 6221 0030 1370 strb r3, [r2] +2243:Src/main.c **** { + 6222 .loc 1 2243 2 is_stmt 1 view .LVU1947 + 6223 .LBB567: +2243:Src/main.c **** { + 6224 .loc 1 2243 7 view .LVU1948 + 6225 .LVL583: +2243:Src/main.c **** { + 6226 .loc 1 2243 2 is_stmt 0 view .LVU1949 + 6227 0032 05E0 b .L318 + 6228 .LVL584: + 6229 .L319: +2245:Src/main.c **** } + 6230 .loc 1 2245 3 is_stmt 1 view .LVU1950 +2245:Src/main.c **** } + 6231 .loc 1 2245 16 is_stmt 0 view .LVU1951 + 6232 0034 9E4A ldr r2, .L329+44 + 6233 0036 0021 movs r1, #0 + 6234 0038 22F81310 strh r1, [r2, r3, lsl #1] @ movhi +2243:Src/main.c **** { + 6235 .loc 1 2243 31 is_stmt 1 discriminator 3 view .LVU1952 + 6236 003c 0133 adds r3, r3, #1 + 6237 .LVL585: +2243:Src/main.c **** { + 6238 .loc 1 2243 31 is_stmt 0 discriminator 3 view .LVU1953 + 6239 003e 9BB2 uxth r3, r3 + ARM GAS /tmp/ccEQxcUB.s page 348 + + + 6240 .LVL586: + 6241 .L318: +2243:Src/main.c **** { + 6242 .loc 1 2243 22 is_stmt 1 discriminator 1 view .LVU1954 + 6243 0040 0E2B cmp r3, #14 + 6244 0042 F7D9 bls .L319 + 6245 .LBE567: +2247:Src/main.c **** + 6246 .loc 1 2247 2 view .LVU1955 +2247:Src/main.c **** + 6247 .loc 1 2247 14 is_stmt 0 view .LVU1956 + 6248 0044 9A4B ldr r3, .L329+44 + 6249 .LVL587: +2247:Src/main.c **** + 6250 .loc 1 2247 14 view .LVU1957 + 6251 0046 41F21112 movw r2, #4369 + 6252 004a 1A80 strh r2, [r3] @ movhi +2250:Src/main.c **** Def_setup.LD1_EN = 0; + 6253 .loc 1 2250 2 is_stmt 1 view .LVU1958 +2250:Src/main.c **** Def_setup.LD1_EN = 0; + 6254 .loc 1 2250 21 is_stmt 0 view .LVU1959 + 6255 004c 994B ldr r3, .L329+48 + 6256 004e 0022 movs r2, #0 + 6257 0050 DA81 strh r2, [r3, #14] @ movhi +2251:Src/main.c **** Def_setup.LD2_EN = 0; + 6258 .loc 1 2251 2 is_stmt 1 view .LVU1960 +2251:Src/main.c **** Def_setup.LD2_EN = 0; + 6259 .loc 1 2251 19 is_stmt 0 view .LVU1961 + 6260 0052 DA70 strb r2, [r3, #3] +2252:Src/main.c **** Def_setup.MES_ID = 0; + 6261 .loc 1 2252 2 is_stmt 1 view .LVU1962 +2252:Src/main.c **** Def_setup.MES_ID = 0; + 6262 .loc 1 2252 19 is_stmt 0 view .LVU1963 + 6263 0054 1A71 strb r2, [r3, #4] +2253:Src/main.c **** Def_setup.PI1_RD = 0; + 6264 .loc 1 2253 2 is_stmt 1 view .LVU1964 +2253:Src/main.c **** Def_setup.PI1_RD = 0; + 6265 .loc 1 2253 19 is_stmt 0 view .LVU1965 + 6266 0056 1A82 strh r2, [r3, #16] @ movhi +2254:Src/main.c **** Def_setup.PI2_RD = 0; + 6267 .loc 1 2254 2 is_stmt 1 view .LVU1966 +2254:Src/main.c **** Def_setup.PI2_RD = 0; + 6268 .loc 1 2254 19 is_stmt 0 view .LVU1967 + 6269 0058 1A73 strb r2, [r3, #12] +2255:Src/main.c **** Def_setup.REF1_EN = 0; + 6270 .loc 1 2255 2 is_stmt 1 view .LVU1968 +2255:Src/main.c **** Def_setup.REF1_EN = 0; + 6271 .loc 1 2255 19 is_stmt 0 view .LVU1969 + 6272 005a 5A73 strb r2, [r3, #13] +2256:Src/main.c **** Def_setup.REF2_EN = 0; + 6273 .loc 1 2256 2 is_stmt 1 view .LVU1970 +2256:Src/main.c **** Def_setup.REF2_EN = 0; + 6274 .loc 1 2256 20 is_stmt 0 view .LVU1971 + 6275 005c 5A71 strb r2, [r3, #5] +2257:Src/main.c **** Def_setup.SD_EN = 0; + 6276 .loc 1 2257 2 is_stmt 1 view .LVU1972 +2257:Src/main.c **** Def_setup.SD_EN = 0; + ARM GAS /tmp/ccEQxcUB.s page 349 + + + 6277 .loc 1 2257 20 is_stmt 0 view .LVU1973 + 6278 005e 9A71 strb r2, [r3, #6] +2258:Src/main.c **** Def_setup.TEC1_EN = 0; + 6279 .loc 1 2258 2 is_stmt 1 view .LVU1974 +2258:Src/main.c **** Def_setup.TEC1_EN = 0; + 6280 .loc 1 2258 18 is_stmt 0 view .LVU1975 + 6281 0060 DA72 strb r2, [r3, #11] +2259:Src/main.c **** Def_setup.TEC2_EN = 0; + 6282 .loc 1 2259 2 is_stmt 1 view .LVU1976 +2259:Src/main.c **** Def_setup.TEC2_EN = 0; + 6283 .loc 1 2259 20 is_stmt 0 view .LVU1977 + 6284 0062 DA71 strb r2, [r3, #7] +2260:Src/main.c **** Def_setup.TS1_EN = 0; + 6285 .loc 1 2260 2 is_stmt 1 view .LVU1978 +2260:Src/main.c **** Def_setup.TS1_EN = 0; + 6286 .loc 1 2260 20 is_stmt 0 view .LVU1979 + 6287 0064 1A72 strb r2, [r3, #8] +2261:Src/main.c **** Def_setup.TS2_EN = 0; + 6288 .loc 1 2261 2 is_stmt 1 view .LVU1980 +2261:Src/main.c **** Def_setup.TS2_EN = 0; + 6289 .loc 1 2261 19 is_stmt 0 view .LVU1981 + 6290 0066 5A72 strb r2, [r3, #9] +2262:Src/main.c **** Def_setup.U5V1_EN = 0; + 6291 .loc 1 2262 2 is_stmt 1 view .LVU1982 +2262:Src/main.c **** Def_setup.U5V1_EN = 0; + 6292 .loc 1 2262 19 is_stmt 0 view .LVU1983 + 6293 0068 9A72 strb r2, [r3, #10] +2263:Src/main.c **** Def_setup.U5V2_EN = 0; + 6294 .loc 1 2263 2 is_stmt 1 view .LVU1984 +2263:Src/main.c **** Def_setup.U5V2_EN = 0; + 6295 .loc 1 2263 20 is_stmt 0 view .LVU1985 + 6296 006a 5A70 strb r2, [r3, #1] +2264:Src/main.c **** Def_setup.WORK_EN = 0; + 6297 .loc 1 2264 2 is_stmt 1 view .LVU1986 +2264:Src/main.c **** Def_setup.WORK_EN = 0; + 6298 .loc 1 2264 20 is_stmt 0 view .LVU1987 + 6299 006c 9A70 strb r2, [r3, #2] +2265:Src/main.c **** + 6300 .loc 1 2265 2 is_stmt 1 view .LVU1988 +2265:Src/main.c **** + 6301 .loc 1 2265 20 is_stmt 0 view .LVU1989 + 6302 006e 1A70 strb r2, [r3] +2267:Src/main.c **** LD2_def_setup.LD_TEMP = 0; + 6303 .loc 1 2267 2 is_stmt 1 view .LVU1990 +2267:Src/main.c **** LD2_def_setup.LD_TEMP = 0; + 6304 .loc 1 2267 24 is_stmt 0 view .LVU1991 + 6305 0070 914D ldr r5, .L329+52 + 6306 0072 2A80 strh r2, [r5] @ movhi +2268:Src/main.c **** LD1_def_setup.P_coef_temp = 0; + 6307 .loc 1 2268 2 is_stmt 1 view .LVU1992 +2268:Src/main.c **** LD1_def_setup.P_coef_temp = 0; + 6308 .loc 1 2268 24 is_stmt 0 view .LVU1993 + 6309 0074 914C ldr r4, .L329+56 + 6310 0076 2280 strh r2, [r4] @ movhi +2269:Src/main.c **** LD2_def_setup.P_coef_temp = 0; + 6311 .loc 1 2269 2 is_stmt 1 view .LVU1994 +2269:Src/main.c **** LD2_def_setup.P_coef_temp = 0; + ARM GAS /tmp/ccEQxcUB.s page 350 + + + 6312 .loc 1 2269 28 is_stmt 0 view .LVU1995 + 6313 0078 0022 movs r2, #0 + 6314 007a 6A60 str r2, [r5, #4] @ float +2270:Src/main.c **** LD1_def_setup.I_coef_temp = 0; + 6315 .loc 1 2270 2 is_stmt 1 view .LVU1996 +2270:Src/main.c **** LD1_def_setup.I_coef_temp = 0; + 6316 .loc 1 2270 28 is_stmt 0 view .LVU1997 + 6317 007c 6260 str r2, [r4, #4] @ float +2271:Src/main.c **** LD2_def_setup.I_coef_temp = 0; + 6318 .loc 1 2271 2 is_stmt 1 view .LVU1998 +2271:Src/main.c **** LD2_def_setup.I_coef_temp = 0; + 6319 .loc 1 2271 28 is_stmt 0 view .LVU1999 + 6320 007e AA60 str r2, [r5, #8] @ float +2272:Src/main.c **** + 6321 .loc 1 2272 2 is_stmt 1 view .LVU2000 +2272:Src/main.c **** + 6322 .loc 1 2272 28 is_stmt 0 view .LVU2001 + 6323 0080 A260 str r2, [r4, #8] @ float +2275:Src/main.c **** LD1_curr_setup = LD1_def_setup; + 6324 .loc 1 2275 2 is_stmt 1 view .LVU2002 +2275:Src/main.c **** LD1_curr_setup = LD1_def_setup; + 6325 .loc 1 2275 13 is_stmt 0 view .LVU2003 + 6326 0082 8F4E ldr r6, .L329+60 + 6327 0084 9C46 mov ip, r3 + 6328 0086 BCE80F00 ldmia ip!, {r0, r1, r2, r3} + 6329 008a 0FC6 stmia r6!, {r0, r1, r2, r3} + 6330 008c DCF80030 ldr r3, [ip] + 6331 0090 3380 strh r3, [r6] @ movhi +2276:Src/main.c **** LD2_curr_setup = LD2_def_setup; + 6332 .loc 1 2276 2 is_stmt 1 view .LVU2004 +2276:Src/main.c **** LD2_curr_setup = LD2_def_setup; + 6333 .loc 1 2276 17 is_stmt 0 view .LVU2005 + 6334 0092 8C4E ldr r6, .L329+64 + 6335 0094 95E80F00 ldm r5, {r0, r1, r2, r3} + 6336 0098 86E80F00 stm r6, {r0, r1, r2, r3} +2277:Src/main.c **** + 6337 .loc 1 2277 2 is_stmt 1 view .LVU2006 +2277:Src/main.c **** + 6338 .loc 1 2277 17 is_stmt 0 view .LVU2007 + 6339 009c 8A4D ldr r5, .L329+68 + 6340 009e 94E80F00 ldm r4, {r0, r1, r2, r3} + 6341 00a2 85E80F00 stm r5, {r0, r1, r2, r3} +2282:Src/main.c **** LL_TIM_EnableCounter(TIM6); + 6342 .loc 1 2282 2 is_stmt 1 view .LVU2008 + 6343 .LVL588: + 6344 .LBB568: + 6345 .LBI568: 3238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -20055,6 +20998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3245:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3246:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 3247:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 351 + + 3248:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsEnabledMasterSlaveMode(const TIM_TypeDef *TIMx) 3249:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SMCR, TIM_SMCR_MSM) == (TIM_SMCR_MSM)) ? 1UL : 0UL); @@ -20098,9 +21044,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3288:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ConfigETR(TIM_TypeDef *TIMx, uint32_t ETRPolarity, uint32_t ETRPrescale 3289:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t ETRFilter) 3290:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccwR4KB7.s page 336 - - 3291:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->SMCR, TIM_SMCR_ETP | TIM_SMCR_ETPS | TIM_SMCR_ETF, ETRPolarity | ETRPrescaler | 3292:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3293:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -20115,6 +21058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3302:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable the break function. 3303:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_BREAK_INSTANCE(TIMx) can be used to check whether or not 3304:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * a timer instance provides a break input. + ARM GAS /tmp/ccEQxcUB.s page 352 + + 3305:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll BDTR BKE LL_TIM_EnableBRK 3306:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3307:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None @@ -20158,9 +21104,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3345:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV4_N8 3346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV8_N6 3347:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV8_N8 - ARM GAS /tmp/ccwR4KB7.s page 337 - - 3348:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV16_N5 3349:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV16_N6 3350:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV16_N8 @@ -20175,6 +21118,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3359:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->BDTR, TIM_BDTR_BKP | TIM_BDTR_BKF, BreakPolarity | BreakFilter); 3360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3361:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 353 + + 3362:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3363:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable the break 2 function. 3364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_BKIN2_INSTANCE(TIMx) can be used to check whether or not @@ -20218,9 +21164,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3402:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV1_N8 3403:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV2_N6 3404:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV2_N8 - ARM GAS /tmp/ccwR4KB7.s page 338 - - 3405:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV4_N6 3406:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV4_N8 3407:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV8_N6 @@ -20235,6 +21178,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3416:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3417:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ConfigBRK2(TIM_TypeDef *TIMx, uint32_t Break2Polarity, uint32_t Break2F 3418:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { + ARM GAS /tmp/ccEQxcUB.s page 354 + + 3419:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->BDTR, TIM_BDTR_BK2P | TIM_BDTR_BK2F, Break2Polarity | Break2Filter); 3420:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3421:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -20278,9 +21224,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3459:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll BDTR AOE LL_TIM_DisableAutomaticOutput 3460:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3461:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 339 - - 3462:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3463:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_DisableAutomaticOutput(TIM_TypeDef *TIMx) 3464:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -20295,6 +21238,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3473:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3474:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 3475:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 355 + + 3476:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsEnabledAutomaticOutput(const TIM_TypeDef *TIMx) 3477:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3478:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->BDTR, TIM_BDTR_AOE) == (TIM_BDTR_AOE)) ? 1UL : 0UL); @@ -20338,9 +21284,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3516:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3517:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 3518:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 340 - - 3519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsEnabledAllOutputs(const TIM_TypeDef *TIMx) 3520:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3521:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->BDTR, TIM_BDTR_MOE) == (TIM_BDTR_MOE)) ? 1UL : 0UL); @@ -20355,6 +21298,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3530:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF1 BKDFBKE LL_TIM_EnableBreakInputSource\n 3531:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF2 BK2INE LL_TIM_EnableBreakInputSource\n 3532:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF2 BK2DFBKE LL_TIM_EnableBreakInputSource + ARM GAS /tmp/ccEQxcUB.s page 356 + + 3533:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3534:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param BreakInput This parameter can be one of the following values: 3535:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_INPUT_BKIN @@ -20398,9 +21344,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3573:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_BREAKSOURCE_INSTANCE(TIMx) can be used to check whether 3574:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * or not a timer instance allows for break input selection. 3575:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll AF1 BKINP LL_TIM_SetBreakInputSourcePolarity\n - ARM GAS /tmp/ccwR4KB7.s page 341 - - 3576:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF1 BKDFBKP LL_TIM_SetBreakInputSourcePolarity\n 3577:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF2 BK2INP LL_TIM_SetBreakInputSourcePolarity\n 3578:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * AF2 BK2DFBKP LL_TIM_SetBreakInputSourcePolarity @@ -20415,6 +21358,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BKIN_POLARITY_LOW 3588:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BKIN_POLARITY_HIGH 3589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 357 + + 3590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetBreakInputSourcePolarity(TIM_TypeDef *TIMx, uint32_t BreakInput, uin 3592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t Polarity) @@ -20458,9 +21404,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3630:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_BDTR 3631:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_OR 3632:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_CCMR3 - ARM GAS /tmp/ccwR4KB7.s page 342 - - 3633:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_CCR5 3634:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_CCR6 3635:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_BASEADDR_AF1 (*) @@ -20475,6 +21418,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3644:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_6TRANSFERS 3645:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_7TRANSFERS 3646:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_8TRANSFERS + ARM GAS /tmp/ccEQxcUB.s page 358 + + 3647:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_9TRANSFERS 3648:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_10TRANSFERS 3649:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_11TRANSFERS @@ -20518,9 +21464,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3687:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * ITR1_RMP can be one of the following values 3688:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM2_ITR1_RMP_TIM8_TRGO 3689:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM2_ITR1_RMP_ETH_PTP - ARM GAS /tmp/ccwR4KB7.s page 343 - - 3690:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM2_ITR1_RMP_OTG_FS_SOF 3691:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM2_ITR1_RMP_OTG_HS_SOF 3692:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @@ -20535,6 +21478,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3701:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * 3702:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM11_TI1_RMP_GPIO 3703:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM11_TI1_RMP_SPDIFRX + ARM GAS /tmp/ccEQxcUB.s page 359 + + 3704:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM11_TI1_RMP_HSE 3705:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM11_TI1_RMP_MCO1 3706:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @@ -20578,9 +21524,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3744:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Clear the Capture/Compare 1 interrupt flag (CC1F). 3745:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR CC1IF LL_TIM_ClearFlag_CC1 3746:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance - ARM GAS /tmp/ccwR4KB7.s page 344 - - 3747:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3748:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3749:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ClearFlag_CC1(TIM_TypeDef *TIMx) @@ -20595,6 +21538,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3758:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 3759:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3760:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsActiveFlag_CC1(const TIM_TypeDef *TIMx) + ARM GAS /tmp/ccEQxcUB.s page 360 + + 3761:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3762:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SR, TIM_SR_CC1IF) == (TIM_SR_CC1IF)) ? 1UL : 0UL); 3763:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -20638,9 +21584,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3801:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3802:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 3803:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 345 - - 3804:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsActiveFlag_CC3(const TIM_TypeDef *TIMx) 3805:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3806:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SR, TIM_SR_CC3IF) == (TIM_SR_CC3IF)) ? 1UL : 0UL); @@ -20655,6 +21598,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3815:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ClearFlag_CC4(TIM_TypeDef *TIMx) 3816:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3817:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** WRITE_REG(TIMx->SR, ~(TIM_SR_CC4IF)); + ARM GAS /tmp/ccEQxcUB.s page 361 + + 3818:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3819:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3820:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -20698,9 +21644,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3858:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3859:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ClearFlag_CC6(TIM_TypeDef *TIMx) 3860:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccwR4KB7.s page 346 - - 3861:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** WRITE_REG(TIMx->SR, ~(TIM_SR_CC6IF)); 3862:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3863:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -20715,6 +21658,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3872:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SR, TIM_SR_CC6IF) == (TIM_SR_CC6IF)) ? 1UL : 0UL); 3873:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** + ARM GAS /tmp/ccEQxcUB.s page 362 + + 3875:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Clear the commutation interrupt flag (COMIF). 3877:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR COMIF LL_TIM_ClearFlag_COM @@ -20758,9 +21704,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3915:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SR, TIM_SR_TIF) == (TIM_SR_TIF)) ? 1UL : 0UL); 3917:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - ARM GAS /tmp/ccwR4KB7.s page 347 - - 3918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3919:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3920:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Clear the break interrupt flag (BIF). @@ -20775,6 +21718,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3929:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3930:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3931:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether break interrupt flag (BIF) is set (break interrupt is pending). + ARM GAS /tmp/ccEQxcUB.s page 363 + + 3932:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR BIF LL_TIM_IsActiveFlag_BRK 3933:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3934:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). @@ -20818,9 +21764,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3972:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 3973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3974:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 348 - - 3975:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether Capture/Compare 1 over-capture interrupt flag (CC1OF) is set 3976:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * (Capture/Compare 1 interrupt is pending). 3977:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR CC1OF LL_TIM_IsActiveFlag_CC1OVR @@ -20835,6 +21778,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3986:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3987:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Clear the Capture/Compare 2 over-capture interrupt flag (CC2OF). 3988:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR CC2OF LL_TIM_ClearFlag_CC2OVR + ARM GAS /tmp/ccEQxcUB.s page 364 + + 3989:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3990:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3991:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -20878,9 +21824,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 4029:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SR, TIM_SR_CC3OF) == (TIM_SR_CC3OF)) ? 1UL : 0UL); 4030:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 4031:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccwR4KB7.s page 349 - - 4032:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 4033:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Clear the Capture/Compare 4 over-capture interrupt flag (CC4OF). 4034:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR CC4OF LL_TIM_ClearFlag_CC4OVR @@ -20895,6 +21838,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 4043:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 4044:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether Capture/Compare 4 over-capture interrupt flag (CC4OF) is set 4045:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * (Capture/Compare 4 over-capture interrupt is pending). + ARM GAS /tmp/ccEQxcUB.s page 365 + + 4046:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll SR CC4OF LL_TIM_IsActiveFlag_CC4OVR 4047:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 4048:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). @@ -20938,83 +21884,83 @@ ARM GAS /tmp/ccwR4KB7.s page 1 4086:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll DIER UIE LL_TIM_EnableIT_UPDATE 4087:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 4088:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 350 - - 4089:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 4090:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_EnableIT_UPDATE(TIM_TypeDef *TIMx) - 5862 .loc 5 4090 22 view .LVU1872 - 5863 .LBB533: + 6346 .loc 5 4090 22 view .LVU2009 + 6347 .LBB569: 4091:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 4092:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** SET_BIT(TIMx->DIER, TIM_DIER_UIE); - 5864 .loc 5 4092 3 view .LVU1873 - 5865 00a6 894B ldr r3, .L304+72 - 5866 00a8 DA68 ldr r2, [r3, #12] - 5867 00aa 42F00102 orr r2, r2, #1 - 5868 00ae DA60 str r2, [r3, #12] - 5869 .LVL527: - 5870 .loc 5 4092 3 is_stmt 0 view .LVU1874 - 5871 .LBE533: - 5872 .LBE532: -2108:Src/main.c **** LL_TIM_EnableIT_UPDATE(TIM7); - 5873 .loc 1 2108 2 is_stmt 1 view .LVU1875 - 5874 .LBB534: - 5875 .LBI534: + 6348 .loc 5 4092 3 view .LVU2010 + 6349 00a6 894B ldr r3, .L329+72 + 6350 00a8 DA68 ldr r2, [r3, #12] + 6351 00aa 42F00102 orr r2, r2, #1 + 6352 00ae DA60 str r2, [r3, #12] + 6353 .LVL589: + 6354 .loc 5 4092 3 is_stmt 0 view .LVU2011 + 6355 .LBE569: + ARM GAS /tmp/ccEQxcUB.s page 366 + + + 6356 .LBE568: +2283:Src/main.c **** LL_TIM_EnableIT_UPDATE(TIM7); + 6357 .loc 1 2283 2 is_stmt 1 view .LVU2012 + 6358 .LBB570: + 6359 .LBI570: 1313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5876 .loc 5 1313 22 view .LVU1876 - 5877 .LBB535: + 6360 .loc 5 1313 22 view .LVU2013 + 6361 .LBB571: 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5878 .loc 5 1315 3 view .LVU1877 - 5879 00b0 1A68 ldr r2, [r3] - 5880 00b2 42F00102 orr r2, r2, #1 - 5881 00b6 1A60 str r2, [r3] - 5882 .LVL528: + 6362 .loc 5 1315 3 view .LVU2014 + 6363 00b0 1A68 ldr r2, [r3] + 6364 00b2 42F00102 orr r2, r2, #1 + 6365 00b6 1A60 str r2, [r3] + 6366 .LVL590: 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5883 .loc 5 1315 3 is_stmt 0 view .LVU1878 - 5884 .LBE535: - 5885 .LBE534: -2109:Src/main.c **** LL_TIM_EnableCounter(TIM7); - 5886 .loc 1 2109 2 is_stmt 1 view .LVU1879 - 5887 .LBB536: - 5888 .LBI536: + 6367 .loc 5 1315 3 is_stmt 0 view .LVU2015 + 6368 .LBE571: + 6369 .LBE570: +2284:Src/main.c **** LL_TIM_EnableCounter(TIM7); + 6370 .loc 1 2284 2 is_stmt 1 view .LVU2016 + 6371 .LBB572: + 6372 .LBI572: 4090:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5889 .loc 5 4090 22 view .LVU1880 - 5890 .LBB537: - 5891 .loc 5 4092 3 view .LVU1881 - 5892 00b8 03F58063 add r3, r3, #1024 - 5893 00bc DA68 ldr r2, [r3, #12] - 5894 00be 42F00102 orr r2, r2, #1 - 5895 00c2 DA60 str r2, [r3, #12] - 5896 .LVL529: - 5897 .loc 5 4092 3 is_stmt 0 view .LVU1882 - 5898 .LBE537: - 5899 .LBE536: -2110:Src/main.c **** //HAL_TIM_Base_Start_IT(&htim6); - 5900 .loc 1 2110 2 is_stmt 1 view .LVU1883 - 5901 .LBB538: - 5902 .LBI538: + 6373 .loc 5 4090 22 view .LVU2017 + 6374 .LBB573: + 6375 .loc 5 4092 3 view .LVU2018 + 6376 00b8 03F58063 add r3, r3, #1024 + 6377 00bc DA68 ldr r2, [r3, #12] + 6378 00be 42F00102 orr r2, r2, #1 + 6379 00c2 DA60 str r2, [r3, #12] + 6380 .LVL591: + 6381 .loc 5 4092 3 is_stmt 0 view .LVU2019 + 6382 .LBE573: + 6383 .LBE572: +2285:Src/main.c **** //HAL_TIM_Base_Start_IT(&htim6); + 6384 .loc 1 2285 2 is_stmt 1 view .LVU2020 + 6385 .LBB574: + 6386 .LBI574: 1313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - 5903 .loc 5 1313 22 view .LVU1884 - 5904 .LBB539: + 6387 .loc 5 1313 22 view .LVU2021 + 6388 .LBB575: 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5905 .loc 5 1315 3 view .LVU1885 - ARM GAS /tmp/ccwR4KB7.s page 351 - - - 5906 00c4 1A68 ldr r2, [r3] - 5907 00c6 42F00102 orr r2, r2, #1 - 5908 00ca 1A60 str r2, [r3] - 5909 .LVL530: + 6389 .loc 5 1315 3 view .LVU2022 + 6390 00c4 1A68 ldr r2, [r3] + 6391 00c6 42F00102 orr r2, r2, #1 + 6392 00ca 1A60 str r2, [r3] + 6393 .LVL592: 1315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - 5910 .loc 5 1315 3 is_stmt 0 view .LVU1886 - 5911 .LBE539: - 5912 .LBE538: -2117:Src/main.c **** LL_DMA_ClearFlag_TC7(DMA2); - 5913 .loc 1 2117 3 is_stmt 1 view .LVU1887 - 5914 .LBB540: - 5915 .LBI540: - 5916 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" + 6394 .loc 5 1315 3 is_stmt 0 view .LVU2023 + 6395 .LBE575: + 6396 .LBE574: +2292:Src/main.c **** LL_DMA_ClearFlag_TC7(DMA2); + 6397 .loc 1 2292 3 is_stmt 1 view .LVU2024 + 6398 .LBB576: + 6399 .LBI576: + 6400 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 367 + + 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @file stm32f7xx_ll_dma.h 4:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @author MCD Application Team @@ -21058,9 +22004,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 42:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_Private_Variables DMA Private Variables 43:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 44:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 352 - - 45:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /* Array used to get the DMA stream register offset versus stream index LL_DMA_STREAM_x */ 46:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** static const uint8_t STREAM_OFFSET_TAB[] = 47:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -21075,6 +22018,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 56:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** }; 57:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 58:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 368 + + 59:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 60:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 61:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -21118,9 +22064,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 99:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This parameter can be a value of @ref DMA_LL_EC_MODE 100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @note The circular buffer mode cannot be used if the memory 101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** data transfer direction is configured on the selected - ARM GAS /tmp/ccwR4KB7.s page 353 - - 102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct 104:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -21135,6 +22078,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 113:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This parameter can be a value of @ref DMA_LL_EC_MEMORY 114:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 115:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct + ARM GAS /tmp/ccEQxcUB.s page 369 + + 116:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 117:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t PeriphOrM2MSrcDataSize; /*!< Specifies the Peripheral data size alignment or Source data 118:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** in case of memory to memory transfer direction. @@ -21178,9 +22124,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct 157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t MemBurst; /*!< Specifies the Burst transfer configuration for the memory t - ARM GAS /tmp/ccwR4KB7.s page 354 - - 159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** It specifies the amount of data to be transferred in a sing 160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** transaction. 161:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This parameter can be a value of @ref DMA_LL_EC_MBURST @@ -21195,6 +22138,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 170:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @note The burst mode is possible only if the address Increm 171:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 172:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct + ARM GAS /tmp/ccEQxcUB.s page 370 + + 173:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 174:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } LL_DMA_InitTypeDef; 175:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -21238,9 +22184,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_MODE_NORMAL 0x00000000U /*!< Normal Mode 214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_MODE_CIRCULAR DMA_SxCR_CIRC /*!< Circular Mode 215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_MODE_PFCTRL DMA_SxCR_PFCTRL /*!< Peripheral flow control mo - ARM GAS /tmp/ccwR4KB7.s page 355 - - 216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 218:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -21255,6 +22198,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 227:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 228:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 229:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_PERIPH PERIPH + ARM GAS /tmp/ccEQxcUB.s page 371 + + 230:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 231:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 232:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PERIPH_NOINCREMENT 0x00000000U /*!< Peripheral increment mode @@ -21298,9 +22244,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_OFFSETSIZE_PSIZE 0x00000000U /*!< Peripheral increment offse 271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_OFFSETSIZE_FIXEDTO4 DMA_SxCR_PINCOS /*!< Peripheral increment offse 272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 356 - - 273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -21315,6 +22258,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 284:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 285:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 286:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/ccEQxcUB.s page 372 + + 287:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_CHANNEL CHANNEL 288:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 289:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -21358,9 +22304,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PBURST_INC4 DMA_SxCR_PBURST_0 /*!< Peripheral b 328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PBURST_INC8 DMA_SxCR_PBURST_1 /*!< Peripheral b 329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PBURST_INC16 (DMA_SxCR_PBURST_0 | DMA_SxCR_PBURST_1) /*!< Peripheral b - ARM GAS /tmp/ccwR4KB7.s page 357 - - 330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 332:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -21375,6 +22318,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 341:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 342:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 343:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_FIFOSTATUS_0 FIFOSTATUS 0 + ARM GAS /tmp/ccEQxcUB.s page 373 + + 344:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 345:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 346:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_FIFOSTATUS_0_25 0x00000000U /*!< 0 < fifo_lev @@ -21418,9 +22364,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EM_WRITE_READ Common Write and read registers macros 386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ - ARM GAS /tmp/ccwR4KB7.s page 358 - - 387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 388:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 389:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Write a value in DMA register @@ -21435,6 +22378,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 398:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Read a value in DMA register 399:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __INSTANCE__ DMA Instance 400:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __REG__ Register to be read + ARM GAS /tmp/ccEQxcUB.s page 374 + + 401:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Register value 402:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 403:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__) @@ -21478,9 +22424,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 441:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 442:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Convert DMA Instance DMAx and LL_DMA_STREAM_y into DMAx_Streamy 443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __DMA_INSTANCE__ DMAx - ARM GAS /tmp/ccwR4KB7.s page 359 - - 444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __STREAM__ LL_DMA_STREAM_y 445:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval DMAx_Streamy 446:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -21495,6 +22438,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 455:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA2)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM 456:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA1)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM 457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA2)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM + ARM GAS /tmp/ccEQxcUB.s page 375 + + 458:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA1)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM 459:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA2)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM 460:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__DMA_INSTANCE__) == ((uint32_t)DMA1)) && ((uint32_t)(__STREAM__) == ((uint32_t)LL_DM @@ -21538,9 +22484,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 498:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** SET_BIT(((DMA_Stream_TypeDef *)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, DMA 500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - ARM GAS /tmp/ccwR4KB7.s page 360 - - 501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 502:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 503:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Disable DMA stream. @@ -21555,26 +22498,29 @@ ARM GAS /tmp/ccwR4KB7.s page 1 512:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 513:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 514:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 + ARM GAS /tmp/ccEQxcUB.s page 376 + + 515:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 516:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 517:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_DisableStream(DMA_TypeDef *DMAx, uint32_t Stream) - 5917 .loc 6 517 22 view .LVU1888 - 5918 .LBB541: + 6401 .loc 6 517 22 view .LVU2025 + 6402 .LBB577: 518:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** CLEAR_BIT(((DMA_Stream_TypeDef *)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D - 5919 .loc 6 519 3 view .LVU1889 - 5920 00cc 03F51433 add r3, r3, #151552 - 5921 00d0 D3F8B820 ldr r2, [r3, #184] - 5922 00d4 22F00102 bic r2, r2, #1 - 5923 00d8 C3F8B820 str r2, [r3, #184] - 5924 .LVL531: - 5925 .loc 6 519 3 is_stmt 0 view .LVU1890 - 5926 .LBE541: - 5927 .LBE540: -2118:Src/main.c **** LL_DMA_ClearFlag_TE7(DMA2); - 5928 .loc 1 2118 3 is_stmt 1 view .LVU1891 - 5929 .LBB542: - 5930 .LBI542: + 6403 .loc 6 519 3 view .LVU2026 + 6404 00cc 03F51433 add r3, r3, #151552 + 6405 00d0 D3F8B820 ldr r2, [r3, #184] + 6406 00d4 22F00102 bic r2, r2, #1 + 6407 00d8 C3F8B820 str r2, [r3, #184] + 6408 .LVL593: + 6409 .loc 6 519 3 is_stmt 0 view .LVU2027 + 6410 .LBE577: + 6411 .LBE576: +2293:Src/main.c **** LL_DMA_ClearFlag_TE7(DMA2); + 6412 .loc 1 2293 3 is_stmt 1 view .LVU2028 + 6413 .LBB578: + 6414 .LBI578: 520:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 521:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 522:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -21598,9 +22544,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 540:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 541:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 542:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 361 - - 543:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Configure all parameters linked to DMA transfer. 544:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR DIR LL_DMA_ConfigTransfer\n 545:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * CR CIRC LL_DMA_ConfigTransfer\n @@ -21615,6 +22558,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 + ARM GAS /tmp/ccEQxcUB.s page 377 + + 557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 559:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 @@ -21658,9 +22604,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 597:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_SetDataTransferDirection(DMA_TypeDef *DMAx, uint32_t Stream, uint32_t 599:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccwR4KB7.s page 362 - - 600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D 601:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 602:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -21675,6 +22618,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 611:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 612:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 613:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 + ARM GAS /tmp/ccEQxcUB.s page 378 + + 614:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 615:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 616:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: @@ -21718,9 +22664,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 654:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * CR PFCTRL LL_DMA_GetMode 655:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 656:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: - ARM GAS /tmp/ccwR4KB7.s page 363 - - 657:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 659:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 @@ -21735,6 +22678,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 668:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MODE_PFCTRL 669:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 670:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetMode(DMA_TypeDef *DMAx, uint32_t Stream) + ARM GAS /tmp/ccEQxcUB.s page 379 + + 671:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 672:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 673:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -21778,9 +22724,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 711:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: 712:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PERIPH_NOINCREMENT 713:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PERIPH_INCREMENT - ARM GAS /tmp/ccwR4KB7.s page 364 - - 714:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 715:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetPeriphIncMode(DMA_TypeDef *DMAx, uint32_t Stream) 716:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -21795,6 +22738,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 725:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 726:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 727:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 + ARM GAS /tmp/ccEQxcUB.s page 380 + + 728:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 729:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 730:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 @@ -21838,9 +22784,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 768:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 769:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 770:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 - ARM GAS /tmp/ccwR4KB7.s page 365 - - 771:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 772:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 773:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 @@ -21855,6 +22798,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 782:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 783:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 784:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_SetPeriphSize(DMA_TypeDef *DMAx, uint32_t Stream, uint32_t Size) + ARM GAS /tmp/ccEQxcUB.s page 381 + + 785:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D 787:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -21898,9 +22844,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 825:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Size This parameter can be one of the following values: 826:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MDATAALIGN_BYTE 827:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MDATAALIGN_HALFWORD - ARM GAS /tmp/ccwR4KB7.s page 366 - - 828:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MDATAALIGN_WORD 829:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 830:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -21915,6 +22858,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 840:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 841:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 + ARM GAS /tmp/ccEQxcUB.s page 382 + + 842:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 843:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 844:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 @@ -21958,9 +22904,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 882:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 883:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Peripheral increment offset size. 884:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR PINCOS LL_DMA_GetIncOffsetSize - ARM GAS /tmp/ccwR4KB7.s page 367 - - 885:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 886:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 887:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -21975,6 +22918,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 896:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_OFFSETSIZE_PSIZE 897:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_OFFSETSIZE_FIXEDTO4 898:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 383 + + 899:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetIncOffsetSize(DMA_TypeDef *DMAx, uint32_t Stream) 900:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 901:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- @@ -22018,9 +22964,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 939:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 940:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 941:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 - ARM GAS /tmp/ccwR4KB7.s page 368 - - 942:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: 943:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PRIORITY_LOW 944:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PRIORITY_MEDIUM @@ -22035,6 +22978,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 953:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 954:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set Number of data to transfer. 955:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll NDTR NDT LL_DMA_SetDataLength + ARM GAS /tmp/ccEQxcUB.s page 384 + + 956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note This action has no effect if 957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * stream is enabled. 958:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -22078,9 +23024,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 996:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 997:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 998:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 369 - - 999:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Select Channel number associated to the Stream. 1000:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR CHSEL LL_DMA_SetChannelSelection 1001:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -22095,6 +23038,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1010:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1011:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Channel This parameter can be one of the following values: 1012:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_0 + ARM GAS /tmp/ccEQxcUB.s page 385 + + 1013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_1 1014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_2 1015:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_3 @@ -22138,9 +23084,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1053:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_2 1054:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_3 1055:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_4 - ARM GAS /tmp/ccwR4KB7.s page 370 - - 1056:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_5 1057:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_6 1058:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_7 @@ -22155,6 +23098,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1067:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * 1068:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * (*) value not defined in all devices. 1069:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 386 + + 1070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetChannelSelection(DMA_TypeDef *DMAx, uint32_t Stream) 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1072:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- @@ -22198,9 +23144,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1111:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1112:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 - ARM GAS /tmp/ccwR4KB7.s page 371 - - 1113:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: 1114:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MBURST_SINGLE 1115:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MBURST_INC4 @@ -22215,6 +23158,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1124:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set Peripheral burst transfer configuration. 1126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR PBURST LL_DMA_SetPeriphBurstxfer + ARM GAS /tmp/ccEQxcUB.s page 387 + + 1127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1129:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -22258,9 +23204,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1168:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetPeriphBurstxfer(DMA_TypeDef *DMAx, uint32_t Stream) 1169:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccwR4KB7.s page 372 - - 1170:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 1171:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1172:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -22275,6 +23218,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1181:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 + ARM GAS /tmp/ccEQxcUB.s page 388 + + 1184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1186:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param CurrentMemory This parameter can be one of the following values: @@ -22318,9 +23264,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1225:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1226:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 - ARM GAS /tmp/ccwR4KB7.s page 373 - - 1227:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1228:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1229:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 @@ -22335,6 +23278,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Disable the double buffer mode. 1240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR DBM LL_DMA_DisableDoubleBufferMode + ARM GAS /tmp/ccEQxcUB.s page 389 + + 1241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1243:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -22378,9 +23324,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 1282:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1283:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** - ARM GAS /tmp/ccwR4KB7.s page 374 - - 1284:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1285:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Disable Fifo mode. 1286:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll FCR DMDIS LL_DMA_DisableFifoMode @@ -22395,6 +23338,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1295:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 390 + + 1298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_DisableFifoMode(DMA_TypeDef *DMAx, uint32_t Stream) 1300:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -22438,9 +23384,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_1_4 1339:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_1_2 1340:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_3_4 - ARM GAS /tmp/ccwR4KB7.s page 375 - - 1341:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_FULL 1342:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 1343:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -22455,6 +23398,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1352:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 + ARM GAS /tmp/ccEQxcUB.s page 391 + + 1355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1357:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 @@ -22498,9 +23444,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 1396:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1397:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ConfigFifo(DMA_TypeDef *DMAx, uint32_t Stream, uint32_t FifoMode, uint3 - ARM GAS /tmp/ccwR4KB7.s page 376 - - 1398:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1399:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->FCR, 1400:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -22515,6 +23458,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1409:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1410:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1411:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 + ARM GAS /tmp/ccEQxcUB.s page 392 + + 1412:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1414:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 @@ -22558,9 +23504,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1453:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1454:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 - ARM GAS /tmp/ccwR4KB7.s page 377 - - 1455:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1456:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param MemoryAddress Between 0 to 0xFFFFFFFF 1457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None @@ -22575,6 +23518,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1466:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll PAR PA LL_DMA_SetPeriphAddress 1467:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note Interface used for direction LL_DMA_DIRECTION_PERIPH_TO_MEMORY or LL_DMA_DIRECTION_MEMO 1468:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note This API must not be called when the DMA channel is enabled. + ARM GAS /tmp/ccEQxcUB.s page 393 + + 1469:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1471:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -22618,9 +23564,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get the Peripheral address. 1510:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll PAR PA LL_DMA_GetPeriphAddress 1511:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note Interface used for direction LL_DMA_DIRECTION_PERIPH_TO_MEMORY or LL_DMA_DIRECTION_MEMO - ARM GAS /tmp/ccwR4KB7.s page 378 - - 1512:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1513:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1514:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -22635,6 +23578,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1523:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1524:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetPeriphAddress(DMA_TypeDef* DMAx, uint32_t Stream) 1525:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { + ARM GAS /tmp/ccEQxcUB.s page 394 + + 1526:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_REG(((DMA_Stream_TypeDef *)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream]))) 1527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1528:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -22678,9 +23624,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1566:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1567:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param MemoryAddress Between 0 to 0xFFFFFFFF 1568:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 379 - - 1569:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1570:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_SetM2MDstAddress(DMA_TypeDef* DMAx, uint32_t Stream, uint32_t MemoryAdd 1571:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -22695,6 +23638,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1580:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 + ARM GAS /tmp/ccEQxcUB.s page 395 + + 1583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -22738,9 +23684,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1624:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1625:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 - ARM GAS /tmp/ccwR4KB7.s page 380 - - 1626:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1627:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1628:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 @@ -22755,6 +23698,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1637:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1638:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1639:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Memory 1 address (used in case of Double buffer mode). + ARM GAS /tmp/ccEQxcUB.s page 396 + + 1640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll M1AR M1A LL_DMA_GetMemory1Address 1641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: @@ -22798,9 +23744,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1681:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1682:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 381 - - 1683:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_HT1(DMA_TypeDef *DMAx) 1684:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1685:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_HTIF1)==(DMA_LISR_HTIF1)); @@ -22815,6 +23758,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1694:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_HT2(DMA_TypeDef *DMAx) 1695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1696:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_HTIF2)==(DMA_LISR_HTIF2)); + ARM GAS /tmp/ccEQxcUB.s page 397 + + 1697:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1698:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1699:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -22858,9 +23804,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1737:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1738:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_HT6(DMA_TypeDef *DMAx) 1739:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccwR4KB7.s page 382 - - 1740:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_HTIF6)==(DMA_HISR_HTIF6)); 1741:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1742:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -22875,6 +23818,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1751:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_HTIF7)==(DMA_HISR_HTIF7)); 1752:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1753:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/ccEQxcUB.s page 398 + + 1754:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1755:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 0 transfer complete flag. 1756:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR TCIF0 LL_DMA_IsActiveFlag_TC0 @@ -22918,9 +23864,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1794:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1795:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_TCIF3)==(DMA_LISR_TCIF3)); 1796:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - ARM GAS /tmp/ccwR4KB7.s page 383 - - 1797:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1798:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1799:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 4 transfer complete flag. @@ -22935,6 +23878,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1808:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1809:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1810:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 5 transfer complete flag. + ARM GAS /tmp/ccEQxcUB.s page 399 + + 1811:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR TCIF0 LL_DMA_IsActiveFlag_TC5 1812:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1813:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). @@ -22978,9 +23924,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1851:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1852:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1853:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 384 - - 1854:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 1 transfer error flag. 1855:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR TEIF1 LL_DMA_IsActiveFlag_TE1 1856:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -22995,6 +23938,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1865:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 2 transfer error flag. 1866:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR TEIF2 LL_DMA_IsActiveFlag_TE2 1867:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance + ARM GAS /tmp/ccEQxcUB.s page 400 + + 1868:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1869:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1870:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TE2(DMA_TypeDef *DMAx) @@ -23038,9 +23984,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1908:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1909:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 6 transfer error flag. 1910:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR TEIF6 LL_DMA_IsActiveFlag_TE6 - ARM GAS /tmp/ccwR4KB7.s page 385 - - 1911:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1912:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1913:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -23055,6 +23998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1922:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1923:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1924:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 401 + + 1925:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TE7(DMA_TypeDef *DMAx) 1926:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_TEIF7)==(DMA_HISR_TEIF7)); @@ -23098,9 +24044,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1965:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR DMEIF3 LL_DMA_IsActiveFlag_DME3 1966:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1967:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). - ARM GAS /tmp/ccwR4KB7.s page 386 - - 1968:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1969:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_DME3(DMA_TypeDef *DMAx) 1970:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -23115,6 +24058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1979:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1980:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_DME4(DMA_TypeDef *DMAx) 1981:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { + ARM GAS /tmp/ccEQxcUB.s page 402 + + 1982:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_DMEIF4)==(DMA_HISR_DMEIF4)); 1983:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1984:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -23158,9 +24104,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2022:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 2023:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2024:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_FE0(DMA_TypeDef *DMAx) - ARM GAS /tmp/ccwR4KB7.s page 387 - - 2025:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2026:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_FEIF0)==(DMA_LISR_FEIF0)); 2027:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -23175,6 +24118,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2036:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2037:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_FEIF1)==(DMA_LISR_FEIF1)); 2038:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + ARM GAS /tmp/ccEQxcUB.s page 403 + + 2039:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2041:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 2 FIFO error flag. @@ -23218,9 +24164,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2079:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_FE5(DMA_TypeDef *DMAx) 2080:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2081:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_FEIF5)==(DMA_HISR_FEIF5)); - ARM GAS /tmp/ccwR4KB7.s page 388 - - 2082:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2083:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2084:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -23235,6 +24178,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2093:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2095:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 404 + + 2096:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 7 FIFO error flag. 2097:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR FEIF7 LL_DMA_IsActiveFlag_FE7 2098:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -23278,9 +24224,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CHTIF2); 2137:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** - ARM GAS /tmp/ccwR4KB7.s page 389 - - 2139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 3 half transfer flag. 2141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LIFCR CHTIF3 LL_DMA_ClearFlag_HT3 @@ -23295,6 +24238,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2150:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2151:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 4 half transfer flag. 2152:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HIFCR CHTIF4 LL_DMA_ClearFlag_HT4 + ARM GAS /tmp/ccEQxcUB.s page 405 + + 2153:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2154:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -23338,9 +24284,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2194:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2195:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 0 transfer complete flag. - ARM GAS /tmp/ccwR4KB7.s page 390 - - 2196:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LIFCR CTCIF0 LL_DMA_ClearFlag_TC0 2197:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None @@ -23355,6 +24298,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2207:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LIFCR CTCIF1 LL_DMA_ClearFlag_TC1 2208:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2209:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 406 + + 2210:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2211:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TC1(DMA_TypeDef *DMAx) 2212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -23398,9 +24344,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 5 transfer complete flag. 2251:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HIFCR CTCIF5 LL_DMA_ClearFlag_TC5 2252:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccwR4KB7.s page 391 - - 2253:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2254:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TC5(DMA_TypeDef *DMAx) @@ -23415,6 +24358,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2264:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2265:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2266:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TC6(DMA_TypeDef *DMAx) + ARM GAS /tmp/ccEQxcUB.s page 407 + + 2267:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2268:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTCIF6); 2269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -23426,21 +24372,21 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TC7(DMA_TypeDef *DMAx) - 5931 .loc 6 2277 22 view .LVU1892 - 5932 .LBB543: + 6415 .loc 6 2277 22 view .LVU2029 + 6416 .LBB579: 2278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTCIF7); - 5933 .loc 6 2279 3 view .LVU1893 - 5934 00dc 4FF00062 mov r2, #134217728 - 5935 00e0 DA60 str r2, [r3, #12] - 5936 .LVL532: - 5937 .loc 6 2279 3 is_stmt 0 view .LVU1894 - 5938 .LBE543: - 5939 .LBE542: -2119:Src/main.c **** LL_USART_EnableDMAReq_TX(USART1); - 5940 .loc 1 2119 3 is_stmt 1 view .LVU1895 - 5941 .LBB544: - 5942 .LBI544: + 6417 .loc 6 2279 3 view .LVU2030 + 6418 00dc 4FF00062 mov r2, #134217728 + 6419 00e0 DA60 str r2, [r3, #12] + 6420 .LVL594: + 6421 .loc 6 2279 3 is_stmt 0 view .LVU2031 + 6422 .LBE579: + 6423 .LBE578: +2294:Src/main.c **** LL_USART_EnableDMAReq_TX(USART1); + 6424 .loc 1 2294 3 is_stmt 1 view .LVU2032 + 6425 .LBB580: + 6426 .LBI580: 2280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2282:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -23458,9 +24404,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2294:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 1 transfer error flag. 2295:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LIFCR CTEIF1 LL_DMA_ClearFlag_TE1 2296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccwR4KB7.s page 392 - - 2297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE1(DMA_TypeDef *DMAx) @@ -23475,6 +24418,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2308:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE2(DMA_TypeDef *DMAx) + ARM GAS /tmp/ccEQxcUB.s page 408 + + 2311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CTEIF2); 2313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -23518,9 +24464,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2351:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2352:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 393 - - 2354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE6(DMA_TypeDef *DMAx) 2355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTEIF6); @@ -23533,22 +24476,25 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2363:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE7(DMA_TypeDef *DMAx) - 5943 .loc 6 2365 22 view .LVU1896 - 5944 .LBB545: + 6427 .loc 6 2365 22 view .LVU2033 + 6428 .LBB581: + ARM GAS /tmp/ccEQxcUB.s page 409 + + 2366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTEIF7); - 5945 .loc 6 2367 3 view .LVU1897 - 5946 00e2 4FF00072 mov r2, #33554432 - 5947 00e6 DA60 str r2, [r3, #12] - 5948 .LVL533: - 5949 .loc 6 2367 3 is_stmt 0 view .LVU1898 - 5950 .LBE545: - 5951 .LBE544: -2120:Src/main.c **** LL_DMA_EnableIT_TC(DMA2, LL_DMA_STREAM_7); - 5952 .loc 1 2120 3 is_stmt 1 view .LVU1899 - 5953 .LBB546: - 5954 .LBI546: - 5955 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h" + 6429 .loc 6 2367 3 view .LVU2034 + 6430 00e2 4FF00072 mov r2, #33554432 + 6431 00e6 DA60 str r2, [r3, #12] + 6432 .LVL595: + 6433 .loc 6 2367 3 is_stmt 0 view .LVU2035 + 6434 .LBE581: + 6435 .LBE580: +2295:Src/main.c **** LL_DMA_EnableIT_TC(DMA2, LL_DMA_STREAM_7); + 6436 .loc 1 2295 3 is_stmt 1 view .LVU2036 + 6437 .LBB582: + 6438 .LBI582: + 6439 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @file stm32f7xx_ll_usart.h @@ -23578,9 +24524,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 27:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Includes ------------------------------------------------------------------*/ 28:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #include "stm32f7xx.h" 29:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 394 - - 30:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @addtogroup STM32F7xx_LL_Driver 31:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 32:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -23595,6 +24538,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 41:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Private types -------------------------------------------------------------*/ 42:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Private variables ---------------------------------------------------------*/ 43:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** + ARM GAS /tmp/ccEQxcUB.s page 410 + + 44:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Private constants ---------------------------------------------------------*/ 45:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_Private_Constants USART Private Constants 46:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ @@ -23638,9 +24584,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 84:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t StopBits; /*!< Specifies the number of stop bits transmitted. 85:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This parameter can be a value of @ref USART_LL_EC_STOPBI 86:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 395 - - 87:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This feature can be modified afterwards using unitary 88:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** function @ref LL_USART_SetStopBitsLength().*/ 89:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -23655,6 +24598,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 98:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 99:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This feature can be modified afterwards using unitary 100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** function @ref LL_USART_SetTransferDirection().*/ + ARM GAS /tmp/ccEQxcUB.s page 411 + + 101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t HardwareFlowControl; /*!< Specifies whether the hardware flow control mode is enab 103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This parameter can be a value of @ref USART_LL_EC_HWCONT @@ -23698,9 +24644,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 142:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t LastBitClockPulse; /*!< Specifies whether the clock pulse corresponding to the l 143:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** data bit (MSB) has to be output on the SCLK pin in synch - ARM GAS /tmp/ccwR4KB7.s page 396 - - 144:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This parameter can be a value of @ref USART_LL_EC_LASTCL 145:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 146:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** USART HW configuration can be modified afterwards using @@ -23715,6 +24658,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USE_FULL_LL_DRIVER */ 156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Exported constants --------------------------------------------------------*/ + ARM GAS /tmp/ccEQxcUB.s page 412 + + 158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_Exported_Constants USART Exported Constants 159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -23758,9 +24704,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_RXNE USART_ISR_RXNE /*!< Read data regist 199:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_TC USART_ISR_TC /*!< Transmission com 200:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_TXE USART_ISR_TXE /*!< Transmit data re - ARM GAS /tmp/ccwR4KB7.s page 397 - - 201:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_LBDF USART_ISR_LBDF /*!< LIN break detect 202:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_CTSIF USART_ISR_CTSIF /*!< CTS interrupt fl 203:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_CTS USART_ISR_CTS /*!< CTS flag */ @@ -23775,6 +24718,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_CR1_UESM) 213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_CR3_WUFIE) 214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_WUF USART_ISR_WUF /*!< Wakeup from Stop + ARM GAS /tmp/ccEQxcUB.s page 413 + + 215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR3_WUFIE */ 216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR1_UESM */ 217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_TEACK USART_ISR_TEACK /*!< Transmit enable @@ -23818,9 +24764,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EC_DIRECTION Communication Direction 256:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 257:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 398 - - 258:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_DIRECTION_NONE 0x00000000U /*!< Transmitter 259:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_DIRECTION_RX USART_CR1_RE /*!< Transmitter 260:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_DIRECTION_TX USART_CR1_TE /*!< Transmitter @@ -23835,6 +24778,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_PARITY_NONE 0x00000000U /*!< Parity co 270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_PARITY_EVEN USART_CR1_PCE /*!< Parity co 271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_PARITY_ODD (USART_CR1_PCE | USART_CR1_PS) /*!< Parity co + ARM GAS /tmp/ccEQxcUB.s page 414 + + 272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -23878,9 +24824,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 313:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /*USE_FULL_LL_DRIVER*/ - ARM GAS /tmp/ccwR4KB7.s page 399 - - 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 316:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EC_LASTCLKPULSE Last Clock Pulse 317:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ @@ -23895,6 +24838,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 326:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_PHASE_1EDGE 0x00000000U /*!< The first clock transiti + ARM GAS /tmp/ccEQxcUB.s page 415 + + 329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_PHASE_2EDGE USART_CR2_CPHA /*!< The second clock transit 330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} @@ -23938,9 +24884,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 371:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 400 - - 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EC_TXPIN_LEVEL TX Pin Active Level Inversion 373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 374:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -23955,6 +24898,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_BINARY_LOGIC_POSITIVE 0x00000000U /*!< Logical data from the da 385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_BINARY_LOGIC_NEGATIVE USART_CR2_DATAINV /*!< Logical data from the da + ARM GAS /tmp/ccEQxcUB.s page 416 + + 386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 388:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -23998,9 +24944,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 427:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 401 - - 429:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_CR1_UESM) 431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_CR3_WUS) @@ -24015,6 +24958,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 440:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 441:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 442:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR3_WUS */ + ARM GAS /tmp/ccEQxcUB.s page 417 + + 443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR1_UESM */ 444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EC_IRDA_POWER IrDA Power 445:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ @@ -24058,9 +25004,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 483:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 484:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Exported macro ------------------------------------------------------------*/ 485:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_Exported_Macros USART Exported Macros - ARM GAS /tmp/ccwR4KB7.s page 402 - - 486:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 487:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 488:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -24075,6 +25018,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 497:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param __VALUE__ Value to be written in the register 498:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 418 + + 500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_WriteReg(__INSTANCE__, __REG__, __VALUE__) WRITE_REG(__INSTANCE__->__REG__, (__VAL 501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 502:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -24118,9 +25064,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 540:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 541:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 542:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 403 - - 543:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 544:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Exported functions --------------------------------------------------------*/ 545:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -24135,6 +25078,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief USART Enable 556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 UE LL_USART_Enable + ARM GAS /tmp/ccEQxcUB.s page 419 + + 557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 559:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -24178,9 +25124,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 597:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 UESM LL_USART_EnableInStopMode 598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 599:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None - ARM GAS /tmp/ccwR4KB7.s page 404 - - 600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 601:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableInStopMode(USART_TypeDef *USARTx) 602:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -24195,6 +25138,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 611:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 UESM LL_USART_DisableInStopMode 612:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 613:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 420 + + 614:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 615:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableInStopMode(USART_TypeDef *USARTx) 616:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -24238,9 +25184,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 654:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 655:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_CLEAR_BIT(USARTx->CR3, USART_CR3_UCESM); 656:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 405 - - 657:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 659:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Indicate if USART clock is enabled in STOP Mode @@ -24255,6 +25198,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 668:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 669:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR3_UCESM */ 670:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR1_UESM*/ + ARM GAS /tmp/ccEQxcUB.s page 421 + + 671:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 672:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Receiver Enable (Receiver is enabled and begins searching for a start bit) 673:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 RE LL_USART_EnableDirectionRx @@ -24298,9 +25244,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 711:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 712:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_CLEAR_BIT(USARTx->CR1, USART_CR1_TE); 713:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 406 - - 714:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 715:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 716:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure simultaneously enabled/disabled states @@ -24315,6 +25258,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 725:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_DIRECTION_TX_RX 726:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 727:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 422 + + 728:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetTransferDirection(USART_TypeDef *USARTx, uint32_t TransferDirectio 729:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 730:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_MODIFY_REG(USARTx->CR1, USART_CR1_RE | USART_CR1_TE, TransferDirection); @@ -24358,9 +25304,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 768:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 769:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return Parity configuration (enabled/disabled and parity mode if enabled) 770:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 PS LL_USART_GetParity\n - ARM GAS /tmp/ccwR4KB7.s page 407 - - 771:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * CR1 PCE LL_USART_GetParity 772:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 773:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Returned value can be one of the following values: @@ -24375,6 +25318,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 782:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 783:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 784:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Set Receiver Wake Up method from Mute mode. + ARM GAS /tmp/ccEQxcUB.s page 423 + + 785:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 WAKE LL_USART_SetWakeUpMethod 786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 787:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param Method This parameter can be one of the following values: @@ -24418,9 +25364,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 825:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 826:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 827:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return Word length (i.e. nb of data bits, excluding start and stop bits) - ARM GAS /tmp/ccwR4KB7.s page 408 - - 828:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 M0 LL_USART_GetDataWidth\n 829:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * CR1 M1 LL_USART_GetDataWidth 830:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -24435,6 +25378,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 840:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 841:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 424 + + 842:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Allow switch between Mute Mode and Active mode 843:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 MME LL_USART_EnableMuteMode 844:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -24478,9 +25424,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 882:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 883:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetOverSampling(USART_TypeDef *USARTx, uint32_t OverSampling) 884:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 409 - - 885:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR1, USART_CR1_OVER8, OverSampling); 886:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 887:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -24495,6 +25438,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 896:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetOverSampling(const USART_TypeDef *USARTx) 897:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 898:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint32_t)(READ_BIT(USARTx->CR1, USART_CR1_OVER8)); + ARM GAS /tmp/ccEQxcUB.s page 425 + + 899:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 900:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 901:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -24538,9 +25484,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 939:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param ClockPhase This parameter can be one of the following values: 940:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PHASE_1EDGE 941:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PHASE_2EDGE - ARM GAS /tmp/ccwR4KB7.s page 410 - - 942:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 943:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 944:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetClockPhase(USART_TypeDef *USARTx, uint32_t ClockPhase) @@ -24555,6 +25498,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 953:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 CPHA LL_USART_GetClockPhase 954:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 955:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Returned value can be one of the following values: + ARM GAS /tmp/ccEQxcUB.s page 426 + + 956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PHASE_1EDGE 957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PHASE_2EDGE 958:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -24598,9 +25544,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 996:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure Clock signal format (Phase Polarity and choice about output of last bit clock 997:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_USART_INSTANCE(USARTx) can be used to check whether or not 998:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Synchronous mode is supported by the USARTx instance. - ARM GAS /tmp/ccwR4KB7.s page 411 - - 999:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Call of this function is equivalent to following function call sequence : 1000:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clock Phase configuration using @ref LL_USART_SetClockPhase() function 1001:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clock Polarity configuration using @ref LL_USART_SetClockPolarity() function @@ -24615,6 +25558,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1010:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param Polarity This parameter can be one of the following values: 1011:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_POLARITY_LOW 1012:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_POLARITY_HIGH + ARM GAS /tmp/ccEQxcUB.s page 427 + + 1013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param LBCPOutput This parameter can be one of the following values: 1014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_LASTCLKPULSE_NO_OUTPUT 1015:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_LASTCLKPULSE_OUTPUT @@ -24658,9 +25604,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1053:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 CLKEN LL_USART_IsEnabledSCLKOutput 1054:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1055:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). - ARM GAS /tmp/ccwR4KB7.s page 412 - - 1056:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1057:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledSCLKOutput(const USART_TypeDef *USARTx) 1058:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -24675,6 +25618,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1067:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_0_5 1068:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_1 1069:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_1_5 + ARM GAS /tmp/ccEQxcUB.s page 428 + + 1070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_2 1071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1072:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -24718,9 +25664,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PARITY_NONE 1111:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PARITY_EVEN 1112:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PARITY_ODD - ARM GAS /tmp/ccwR4KB7.s page 413 - - 1113:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param StopBits This parameter can be one of the following values: 1114:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_0_5 1115:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_STOPBITS_1 @@ -24735,6 +25678,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1124:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_STOP, StopBits); 1125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** + ARM GAS /tmp/ccEQxcUB.s page 429 + + 1127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure TX/RX pins swapping setting. 1129:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 SWAP LL_USART_SetTXRXSwap @@ -24778,9 +25724,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1168:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1169:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Retrieve RX pin active level logic configuration - ARM GAS /tmp/ccwR4KB7.s page 414 - - 1170:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 RXINV LL_USART_GetRXPinLevel 1171:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1172:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Returned value can be one of the following values: @@ -24795,6 +25738,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1181:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure TX pin active level logic 1183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 TXINV LL_USART_SetTXPinLevel + ARM GAS /tmp/ccEQxcUB.s page 430 + + 1184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param PinInvMethod This parameter can be one of the following values: 1186:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_TXPIN_LEVEL_STANDARD @@ -24838,9 +25784,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1225:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Retrieve Binary data configuration 1226:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 DATAINV LL_USART_GetBinaryDataLogic - ARM GAS /tmp/ccwR4KB7.s page 415 - - 1227:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1228:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Returned value can be one of the following values: 1229:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_BINARY_LOGIC_POSITIVE @@ -24855,6 +25798,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure transfer bit order (either Less or Most Significant Bit First) 1239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note MSB First means data is transmitted/received with the MSB first, following the start bi 1240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * LSB First means data is transmitted/received with data bit 0 first, following the start + ARM GAS /tmp/ccEQxcUB.s page 431 + + 1241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 MSBFIRST LL_USART_SetTransferBitOrder 1242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1243:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param BitOrder This parameter can be one of the following values: @@ -24898,9 +25844,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1282:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable Auto Baud-Rate Detection 1283:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_USART_AUTOBAUDRATE_DETECTION_INSTANCE(USARTx) can be used to check whether or - ARM GAS /tmp/ccwR4KB7.s page 416 - - 1284:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Auto Baud Rate detection feature is supported by the USARTx instance. 1285:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 ABREN LL_USART_DisableAutoBaudRate 1286:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -24915,6 +25858,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1295:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Indicate if Auto Baud-Rate Detection mechanism is enabled 1296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_USART_AUTOBAUDRATE_DETECTION_INSTANCE(USARTx) can be used to check whether or 1297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Auto Baud Rate detection feature is supported by the USARTx instance. + ARM GAS /tmp/ccEQxcUB.s page 432 + + 1298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 ABREN LL_USART_IsEnabledAutoBaud 1299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1300:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). @@ -24958,9 +25904,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1339:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint32_t)(READ_BIT(USARTx->CR2, USART_CR2_ABRMODE)); 1340:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 417 - - 1341:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1342:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1343:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable Receiver Timeout @@ -24975,6 +25918,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1352:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable Receiver Timeout + ARM GAS /tmp/ccEQxcUB.s page 433 + + 1355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 RTOEN LL_USART_DisableRxTimeout 1356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1357:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None @@ -25018,9 +25964,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param NodeAddress 4 or 7 bit Address of the USART node. 1396:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1397:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 418 - - 1398:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ConfigNodeAddress(USART_TypeDef *USARTx, uint32_t AddressLen, uint32_ 1399:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1400:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_ADD | USART_CR2_ADDM7, @@ -25035,6 +25978,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1409:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * only 8bits (b7-b0) of returned value are relevant (b31-b8 are not relevant) 1410:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 ADD LL_USART_GetNodeAddress 1411:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance + ARM GAS /tmp/ccEQxcUB.s page 434 + + 1412:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Address of the USART node (Value between Min_Data=0 and Max_Data=255) 1413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1414:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetNodeAddress(const USART_TypeDef *USARTx) @@ -25078,9 +26024,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1453:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableRTSHWFlowCtrl(USART_TypeDef *USARTx) 1454:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 419 - - 1455:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR3, USART_CR3_RTSE); 1456:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -25095,6 +26038,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1466:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableCTSHWFlowCtrl(USART_TypeDef *USARTx) 1467:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1468:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR3, USART_CR3_CTSE); + ARM GAS /tmp/ccEQxcUB.s page 435 + + 1469:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1471:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -25138,9 +26084,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1510:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Returned value can be one of the following values: 1511:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_HWCONTROL_NONE - ARM GAS /tmp/ccwR4KB7.s page 420 - - 1512:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_HWCONTROL_RTS 1513:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_HWCONTROL_CTS 1514:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_HWCONTROL_RTS_CTS @@ -25155,6 +26098,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1523:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 ONEBIT LL_USART_EnableOneBitSamp 1524:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1525:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None + ARM GAS /tmp/ccEQxcUB.s page 436 + + 1526:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableOneBitSamp(USART_TypeDef *USARTx) 1528:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -25198,9 +26144,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1566:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable Overrun detection 1567:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 OVRDIS LL_USART_DisableOverrunDetect 1568:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccwR4KB7.s page 421 - - 1569:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1570:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1571:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableOverrunDetect(USART_TypeDef *USARTx) @@ -25215,6 +26158,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1580:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 1581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledOverrunDetect(const USART_TypeDef *USARTx) + ARM GAS /tmp/ccEQxcUB.s page 437 + + 1583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR3, USART_CR3_OVRDIS) != USART_CR3_OVRDIS) ? 1UL : 0UL); 1585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -25258,9 +26204,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR1_UESM */ 1624:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1625:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure USART BRR register for achieving expected Baud Rate value. - ARM GAS /tmp/ccwR4KB7.s page 422 - - 1626:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Compute and set USARTDIV value in BRR Register (full BRR content) 1627:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * according to used Peripheral Clock, Oversampling mode, and expected Baud Rate values 1628:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Peripheral clock and Baud rate values provided as function parameters should be valid @@ -25275,6 +26218,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1637:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param BaudRate Baud Rate 1638:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1639:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 438 + + 1640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetBaudRate(USART_TypeDef *USARTx, uint32_t PeriphClk, uint32_t OverS 1641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t BaudRate) 1642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -25318,9 +26264,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1681:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Do not perform a division by 0 */ 1682:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 423 - - 1683:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** else if (OverSampling == LL_USART_OVERSAMPLING_8) 1684:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1685:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** usartdiv = (uint16_t)((usartdiv & 0xFFF0U) | ((usartdiv & 0x0007U) << 1U)) ; @@ -25335,6 +26278,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1694:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** brrresult = PeriphClk / usartdiv; 1696:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + ARM GAS /tmp/ccEQxcUB.s page 439 + + 1697:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1698:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (brrresult); 1699:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -25378,9 +26324,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1737:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Get Block Length value in reception 1738:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll RTOR BLEN LL_USART_GetBlockLength 1739:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccwR4KB7.s page 424 - - 1740:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Value between Min_Data=0x00 and Max_Data=0xFF 1741:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1742:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetBlockLength(const USART_TypeDef *USARTx) @@ -25395,6 +26338,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1751:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EF_Configuration_IRDA Configuration functions related to Irda feature 1752:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 1753:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 440 + + 1754:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1755:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1756:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable IrDA mode @@ -25438,9 +26384,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1794:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1795:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Configure IrDA Power Mode (Normal or Low Power) 1796:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_IRDA_INSTANCE(USARTx) can be used to check whether or not - ARM GAS /tmp/ccwR4KB7.s page 425 - - 1797:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * IrDA feature is supported by the USARTx instance. 1798:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 IRLP LL_USART_SetIrdaPowerMode 1799:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -25455,6 +26398,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1808:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1809:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1810:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 441 + + 1811:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Retrieve IrDA Power Mode configuration (Normal or Low Power) 1812:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_IRDA_INSTANCE(USARTx) can be used to check whether or not 1813:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * IrDA feature is supported by the USARTx instance. @@ -25498,9 +26444,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1851:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint32_t)(READ_BIT(USARTx->GTPR, USART_GTPR_PSC)); 1852:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1853:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 426 - - 1854:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1855:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 1856:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -25515,6 +26458,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1865:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Smartcard feature is supported by the USARTx instance. 1866:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 NACK LL_USART_EnableSmartcardNACK 1867:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance + ARM GAS /tmp/ccEQxcUB.s page 442 + + 1868:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1869:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1870:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableSmartcardNACK(USART_TypeDef *USARTx) @@ -25558,9 +26504,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1908:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1909:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableSmartcard(USART_TypeDef *USARTx) 1910:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 427 - - 1911:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR3, USART_CR3_SCEN); 1912:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1913:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -25575,6 +26518,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1922:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableSmartcard(USART_TypeDef *USARTx) 1923:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1924:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR3, USART_CR3_SCEN); + ARM GAS /tmp/ccEQxcUB.s page 443 + + 1925:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1926:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -25618,9 +26564,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1965:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Smartcard Auto-Retry Count value (Value between Min_Data=0 and Max_Data=7) 1966:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1967:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetSmartcardAutoRetryCount(const USART_TypeDef *USARTx) - ARM GAS /tmp/ccwR4KB7.s page 428 - - 1968:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1969:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint32_t)(READ_BIT(USARTx->CR3, USART_CR3_SCARCNT) >> USART_CR3_SCARCNT_Pos); 1970:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -25635,6 +26578,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1979:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param PrescalerValue Value between Min_Data=0 and Max_Data=31 1980:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1981:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 444 + + 1982:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetSmartcardPrescaler(USART_TypeDef *USARTx, uint32_t PrescalerValue) 1983:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1984:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->GTPR, USART_GTPR_PSC, (uint16_t)PrescalerValue); @@ -25678,9 +26624,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2022:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2023:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Smartcard Guard time value (Value between Min_Data=0x00 and Max_Data=0xFF) 2024:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 429 - - 2025:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetSmartcardGuardTime(const USART_TypeDef *USARTx) 2026:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2027:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint32_t)(READ_BIT(USARTx->GTPR, USART_GTPR_GT) >> USART_GTPR_GT_Pos); @@ -25695,6 +26638,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2036:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2037:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2038:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 445 + + 2039:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable Single Wire Half-Duplex mode 2040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_HALFDUPLEX_INSTANCE(USARTx) can be used to check whether or not 2041:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Half-Duplex mode is supported by the USARTx instance. @@ -25738,9 +26684,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2079:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2080:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2081:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EF_Configuration_LIN Configuration functions related to LIN feature - ARM GAS /tmp/ccwR4KB7.s page 430 - - 2082:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 2083:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2084:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -25755,6 +26698,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2093:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_LINBREAK_DETECT_11B 2094:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2095:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 446 + + 2096:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetLINBrkDetectionLen(USART_TypeDef *USARTx, uint32_t LINBDLength) 2097:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2098:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_LBDL, LINBDLength); @@ -25798,9 +26744,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2137:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableLIN(USART_TypeDef *USARTx) 2138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 431 - - 2139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR2, USART_CR2_LINEN); 2140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -25815,6 +26758,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2150:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledLIN(const USART_TypeDef *USARTx) 2151:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2152:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR2, USART_CR2_LINEN) == (USART_CR2_LINEN)) ? 1UL : 0UL); + ARM GAS /tmp/ccEQxcUB.s page 447 + + 2153:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2154:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -25858,9 +26804,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Driver Enable feature is supported by the USARTx instance. 2194:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 DEAT LL_USART_SetDEAssertionTime 2195:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccwR4KB7.s page 432 - - 2196:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param Time Value between Min_Data=0 and Max_Data=31 2197:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -25875,6 +26818,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2207:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Driver Enable feature is supported by the USARTx instance. 2208:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 DEAT LL_USART_GetDEAssertionTime 2209:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance + ARM GAS /tmp/ccEQxcUB.s page 448 + + 2210:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Time value expressed on 5 bits ([4:0] bits) : Value between Min_Data=0 and Max_Data=31 2211:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetDEAssertionTime(const USART_TypeDef *USARTx) @@ -25918,9 +26864,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2251:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledDEMode(const USART_TypeDef *USARTx) 2252:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 433 - - 2253:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR3, USART_CR3_DEM) == (USART_CR3_DEM)) ? 1UL : 0UL); 2254:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -25935,6 +26878,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2264:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_DE_POLARITY_LOW 2265:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2266:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 449 + + 2267:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetDESignalPolarity(USART_TypeDef *USARTx, uint32_t Polarity) 2268:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR3, USART_CR3_DEP, Polarity); @@ -25978,9 +26924,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2307:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear IREN in CR3 using @ref LL_USART_DisableIrda() function 2308:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear HDSEL in CR3 using @ref LL_USART_DisableHalfDuplex() function 2309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Other remaining configurations items related to Asynchronous Mode - ARM GAS /tmp/ccwR4KB7.s page 434 - - 2310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * (as Baud Rate, Word length, Parity, ...) should be set using 2311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * dedicated functions 2312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 LINEN LL_USART_ConfigAsyncMode\n @@ -25995,6 +26938,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2321:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2322:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* In Asynchronous mode, the following bits must be kept cleared: 2323:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - LINEN, CLKEN bits in the USART_CR2 register, + ARM GAS /tmp/ccEQxcUB.s page 450 + + 2324:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - SCEN, IREN and HDSEL bits in the USART_CR3 register. 2325:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2326:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR2, (USART_CR2_LINEN | USART_CR2_CLKEN)); @@ -26038,9 +26984,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR3, (USART_CR3_SCEN | USART_CR3_IREN | USART_CR3_HDSEL)); 2365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* set the UART/USART in Synchronous mode */ 2366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR2, USART_CR2_CLKEN); - ARM GAS /tmp/ccwR4KB7.s page 435 - - 2367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -26055,6 +26998,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2378:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * LIN feature is supported by the USARTx instance. 2379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Call of this function is equivalent to following function call sequence : 2380:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear CLKEN in CR2 using @ref LL_USART_DisableSCLKOutput() function + ARM GAS /tmp/ccEQxcUB.s page 451 + + 2381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear STOP in CR2 using @ref LL_USART_SetStopBitsLength() function 2382:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear SCEN in CR3 using @ref LL_USART_DisableSmartcard() function 2383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear IREN in CR3 using @ref LL_USART_DisableIrda() function @@ -26098,9 +27044,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2421:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear LINEN in CR2 using @ref LL_USART_DisableLIN() function 2422:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear CLKEN in CR2 using @ref LL_USART_DisableSCLKOutput() function 2423:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear SCEN in CR3 using @ref LL_USART_DisableSmartcard() function - ARM GAS /tmp/ccwR4KB7.s page 436 - - 2424:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear IREN in CR3 using @ref LL_USART_DisableIrda() function 2425:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Set HDSEL in CR3 using @ref LL_USART_EnableHalfDuplex() function 2426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Other remaining configurations items related to Half Duplex Mode @@ -26115,6 +27058,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2435:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2436:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2437:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ConfigHalfDuplexMode(USART_TypeDef *USARTx) + ARM GAS /tmp/ccEQxcUB.s page 452 + + 2438:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2439:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* In Half Duplex mode, the following bits must be kept cleared: 2440:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - LINEN and CLKEN bits in the USART_CR2 register, @@ -26158,9 +27104,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2478:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ConfigSmartcardMode(USART_TypeDef *USARTx) 2479:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2480:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* In Smartcard mode, the following bits must be kept cleared: - ARM GAS /tmp/ccwR4KB7.s page 437 - - 2481:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - LINEN bit in the USART_CR2 register, 2482:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - IREN and HDSEL bits in the USART_CR3 register. 2483:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -26175,6 +27118,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2492:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2493:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2494:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Perform basic configuration of USART for enabling use in Irda Mode + ARM GAS /tmp/ccEQxcUB.s page 453 + + 2495:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note In IRDA mode, the following bits must be kept cleared: 2496:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - LINEN bit in the USART_CR2 register, 2497:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - STOP and CLKEN bits in the USART_CR2 register, @@ -26218,9 +27164,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2535:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Perform basic configuration of USART for enabling use in Multi processor Mode 2536:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * (several USARTs connected in a network, one of the USARTs can be the master, 2537:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * its TX output connected to the RX inputs of the other slaves USARTs). - ARM GAS /tmp/ccwR4KB7.s page 438 - - 2538:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note In MultiProcessor mode, the following bits must be kept cleared: 2539:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - LINEN bit in the USART_CR2 register, 2540:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - CLKEN bit in the USART_CR2 register, @@ -26235,6 +27178,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2549:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear HDSEL in CR3 using @ref LL_USART_DisableHalfDuplex() function 2550:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Other remaining configurations items related to Multi processor Mode 2551:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * (as Baud Rate, Wake Up Method, Node address, ...) should be set using + ARM GAS /tmp/ccEQxcUB.s page 454 + + 2552:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * dedicated functions 2553:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 LINEN LL_USART_ConfigMultiProcessMode\n 2554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * CR2 CLKEN LL_USART_ConfigMultiProcessMode\n @@ -26278,9 +27224,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ISR FE LL_USART_IsActiveFlag_FE 2593:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2594:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). - ARM GAS /tmp/ccwR4KB7.s page 439 - - 2595:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2596:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_FE(const USART_TypeDef *USARTx) 2597:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { @@ -26295,6 +27238,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2606:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2607:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_NE(const USART_TypeDef *USARTx) 2608:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + ARM GAS /tmp/ccEQxcUB.s page 455 + + 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_NE) == (USART_ISR_NE)) ? 1UL : 0UL); 2610:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2611:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -26338,9 +27284,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2649:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2650:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2651:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_TC(const USART_TypeDef *USARTx) - ARM GAS /tmp/ccwR4KB7.s page 440 - - 2652:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_TC) == (USART_ISR_TC)) ? 1UL : 0UL); 2654:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -26355,6 +27298,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2663:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2664:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_TXE) == (USART_ISR_TXE)) ? 1UL : 0UL); 2665:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + ARM GAS /tmp/ccEQxcUB.s page 456 + + 2666:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2667:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2668:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART LIN Break Detection Flag is set or not @@ -26398,9 +27344,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2706:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2707:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Receiver Time Out Flag is set or not 2708:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ISR RTOF LL_USART_IsActiveFlag_RTO - ARM GAS /tmp/ccwR4KB7.s page 441 - - 2709:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2710:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2711:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -26415,6 +27358,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2720:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Smartcard feature is supported by the USARTx instance. 2721:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ISR EOBF LL_USART_IsActiveFlag_EOB 2722:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance + ARM GAS /tmp/ccEQxcUB.s page 457 + + 2723:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2724:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2725:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_EOB(const USART_TypeDef *USARTx) @@ -26458,9 +27404,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2763:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2764:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_BUSY) == (USART_ISR_BUSY)) ? 1UL : 0UL); 2765:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 442 - - 2766:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2767:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2768:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Character Match Flag is set or not @@ -26475,6 +27418,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2777:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2778:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2779:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Send Break Flag is set or not + ARM GAS /tmp/ccEQxcUB.s page 458 + + 2780:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ISR SBKF LL_USART_IsActiveFlag_SBK 2781:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2782:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). @@ -26518,9 +27464,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2820:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2821:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2822:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 443 - - 2823:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_TEACK(const USART_TypeDef *USARTx) 2824:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2825:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_TEACK) == (USART_ISR_TEACK)) ? 1UL : 0UL); @@ -26535,6 +27478,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2834:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2835:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_REACK(const USART_TypeDef *USARTx) 2836:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + ARM GAS /tmp/ccEQxcUB.s page 459 + + 2837:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_REACK) == (USART_ISR_REACK)) ? 1UL : 0UL); 2838:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -26578,9 +27524,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2877:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2878:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Clear Noise Error detected Flag 2879:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ICR NCF LL_USART_ClearFlag_NE - ARM GAS /tmp/ccwR4KB7.s page 444 - - 2880:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2881:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2882:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -26595,6 +27538,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2891:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2892:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2893:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 460 + + 2894:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ClearFlag_ORE(USART_TypeDef *USARTx) 2895:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2896:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** WRITE_REG(USARTx->ICR, USART_ICR_ORECF); @@ -26638,9 +27584,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2934:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2935:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2936:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Clear LIN Break Detection Flag - ARM GAS /tmp/ccwR4KB7.s page 445 - - 2937:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_LIN_INSTANCE(USARTx) can be used to check whether or not 2938:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * LIN feature is supported by the USARTx instance. 2939:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ICR LBDCF LL_USART_ClearFlag_LBD @@ -26655,6 +27598,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2948:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2949:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Clear CTS Interrupt Flag 2950:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_HWFLOW_INSTANCE(USARTx) can be used to check whether or not + ARM GAS /tmp/ccEQxcUB.s page 461 + + 2951:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Hardware Flow control feature is supported by the USARTx instance. 2952:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ICR CTSCF LL_USART_ClearFlag_nCTS 2953:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -26698,9 +27644,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2991:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ClearFlag_CM(USART_TypeDef *USARTx) 2992:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2993:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** WRITE_REG(USARTx->ICR, USART_ICR_CMCF); - ARM GAS /tmp/ccwR4KB7.s page 446 - - 2994:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2995:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2996:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_CR1_UESM) @@ -26715,6 +27658,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3005:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3006:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ClearFlag_WKUP(USART_TypeDef *USARTx) 3007:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + ARM GAS /tmp/ccEQxcUB.s page 462 + + 3008:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** WRITE_REG(USARTx->ICR, USART_ICR_WUCF); 3009:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3010:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -26758,9 +27704,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3048:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3049:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_TC(USART_TypeDef *USARTx) 3050:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 447 - - 3051:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_TCIE); 3052:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3053:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -26775,6 +27718,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3062:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_TXEIE); 3063:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3064:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** + ARM GAS /tmp/ccEQxcUB.s page 463 + + 3065:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 3066:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable Parity Error Interrupt 3067:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 PEIE LL_USART_EnableIT_PE @@ -26818,9 +27764,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3105:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3106:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_EOB(USART_TypeDef *USARTx) 3107:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccwR4KB7.s page 448 - - 3108:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_EOBIE); 3109:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -26835,6 +27778,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3119:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_LBD(USART_TypeDef *USARTx) 3120:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3121:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR2, USART_CR2_LBDIE); + ARM GAS /tmp/ccEQxcUB.s page 464 + + 3122:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3123:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3124:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -26878,9 +27824,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3162:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_WKUP(USART_TypeDef *USARTx) 3163:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3164:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR3, USART_CR3_WUFIE); - ARM GAS /tmp/ccwR4KB7.s page 449 - - 3165:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3166:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_CR3_WUFIE */ @@ -26895,6 +27838,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3176:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 3177:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3178:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 465 + + 3179:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_TCBGT(USART_TypeDef *USARTx) 3180:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3181:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR3, USART_CR3_TCBGTIE); @@ -26938,9 +27884,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3219:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable TX Empty Interrupt 3220:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 TXEIE LL_USART_DisableIT_TXE 3221:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccwR4KB7.s page 450 - - 3222:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3223:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableIT_TXE(USART_TypeDef *USARTx) @@ -26955,6 +27898,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3233:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3234:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3235:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_DisableIT_PE(USART_TypeDef *USARTx) + ARM GAS /tmp/ccEQxcUB.s page 466 + + 3236:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3237:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_CLEAR_BIT(USARTx->CR1, USART_CR1_PEIE); 3238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -26998,9 +27944,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable LIN Break Detection Interrupt 3277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_LIN_INSTANCE(USARTx) can be used to check whether or not 3278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * LIN feature is supported by the USARTx instance. - ARM GAS /tmp/ccwR4KB7.s page 451 - - 3279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 LBDIE LL_USART_DisableIT_LBD 3280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 3281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None @@ -27015,6 +27958,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3290:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note When set, Error Interrupt Enable Bit is enabling interrupt generation in case of a fram 3291:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * error, overrun error or noise flag (FE=1 or ORE=1 or NF=1 in the USARTx_ISR register). 3292:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * 0: Interrupt is inhibited + ARM GAS /tmp/ccEQxcUB.s page 467 + + 3293:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * 1: An interrupt is generated when FE=1 or ORE=1 or NF=1 in the USARTx_ISR register. 3294:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 EIE LL_USART_DisableIT_ERROR 3295:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -27058,9 +28004,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_TCBGT_SUPPORT) 3334:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Function available only on devices supporting Transmit Complete before Guard Time feature */ 3335:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 452 - - 3336:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable Smartcard Transmission Complete Before Guard Time Interrupt 3337:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_SMARTCARD_INSTANCE(USARTx) can be used to check whether or not 3338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Smartcard feature is supported by the USARTx instance. @@ -27075,6 +28018,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3347:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_TCBGT_SUPPORT */ 3348:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3349:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 468 + + 3350:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART IDLE Interrupt source is enabled or disabled. 3351:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 IDLEIE LL_USART_IsEnabledIT_IDLE 3352:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -27118,9 +28064,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3390:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR1, USART_CR1_TXEIE) == (USART_CR1_TXEIE)) ? 1U : 0U); 3391:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3392:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 453 - - 3393:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 3394:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Parity Error Interrupt is enabled or disabled. 3395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 PEIE LL_USART_IsEnabledIT_PE @@ -27135,6 +28078,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3404:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 3405:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Character Match Interrupt is enabled or disabled. 3406:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 CMIE LL_USART_IsEnabledIT_CM + ARM GAS /tmp/ccEQxcUB.s page 469 + + 3407:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 3408:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 3409:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -27178,9 +28124,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3447:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledIT_LBD(const USART_TypeDef *USARTx) 3448:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3449:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR2, USART_CR2_LBDIE) == (USART_CR2_LBDIE)) ? 1UL : 0UL); - ARM GAS /tmp/ccwR4KB7.s page 454 - - 3450:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3451:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -27195,6 +28138,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3461:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3462:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3463:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 470 + + 3464:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART CTS Interrupt is enabled or disabled. 3465:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_HWFLOW_INSTANCE(USARTx) can be used to check whether or not 3466:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Hardware Flow control feature is supported by the USARTx instance. @@ -27238,9 +28184,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3505:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR3, USART_CR3_TCBGTIE) == (USART_CR3_TCBGTIE)) ? 1UL : 0UL); 3506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccwR4KB7.s page 455 - - 3507:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_TCBGT_SUPPORT */ 3508:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -27255,6 +28198,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3518:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable DMA Mode for reception 3519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 DMAR LL_USART_EnableDMAReq_RX 3520:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance + ARM GAS /tmp/ccEQxcUB.s page 471 + + 3521:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3522:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3523:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableDMAReq_RX(USART_TypeDef *USARTx) @@ -27291,21 +28237,18 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableDMAReq_TX(USART_TypeDef *USARTx) - 5956 .loc 7 3556 22 view .LVU1900 - 5957 .L295: + 6440 .loc 7 3556 22 view .LVU2037 + 6441 .L320: 3557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR3, USART_CR3_DMAT); - 5958 .loc 7 3558 3 discriminator 1 view .LVU1901 - 5959 .LBB547: - 5960 .loc 7 3558 3 discriminator 1 view .LVU1902 - ARM GAS /tmp/ccwR4KB7.s page 456 - - - 5961 .loc 7 3558 3 discriminator 1 view .LVU1903 - 5962 .loc 7 3558 3 discriminator 1 view .LVU1904 - 5963 .LBB548: - 5964 .LBI548: - 5965 .file 8 "Drivers/CMSIS/Include/cmsis_gcc.h" + 6442 .loc 7 3558 3 discriminator 1 view .LVU2038 + 6443 .LBB583: + 6444 .loc 7 3558 3 discriminator 1 view .LVU2039 + 6445 .loc 7 3558 3 discriminator 1 view .LVU2040 + 6446 .loc 7 3558 3 discriminator 1 view .LVU2041 + 6447 .LBB584: + 6448 .LBI584: + 6449 .file 8 "Drivers/CMSIS/Include/cmsis_gcc.h" 1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//** 2:Drivers/CMSIS/Include/cmsis_gcc.h **** * @file cmsis_gcc.h 3:Drivers/CMSIS/Include/cmsis_gcc.h **** * @brief CMSIS compiler GCC header file @@ -27315,6 +28258,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 7:Drivers/CMSIS/Include/cmsis_gcc.h **** /* 8:Drivers/CMSIS/Include/cmsis_gcc.h **** * Copyright (c) 2009-2018 Arm Limited. All rights reserved. 9:Drivers/CMSIS/Include/cmsis_gcc.h **** * + ARM GAS /tmp/ccEQxcUB.s page 472 + + 10:Drivers/CMSIS/Include/cmsis_gcc.h **** * SPDX-License-Identifier: Apache-2.0 11:Drivers/CMSIS/Include/cmsis_gcc.h **** * 12:Drivers/CMSIS/Include/cmsis_gcc.h **** * Licensed under the Apache License, Version 2.0 (the License); you may @@ -27358,9 +28304,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 50:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __STATIC_FORCEINLINE __attribute__((always_inline)) static inline 51:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 52:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __NO_RETURN - ARM GAS /tmp/ccwR4KB7.s page 457 - - 53:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __NO_RETURN __attribute__((__noreturn__)) 54:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 55:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __USED @@ -27375,6 +28318,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 64:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_STRUCT 65:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_STRUCT struct __attribute__((packed, aligned(1))) 66:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif + ARM GAS /tmp/ccEQxcUB.s page 473 + + 67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_UNION 68:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_UNION union __attribute__((packed, aligned(1))) 69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif @@ -27418,9 +28364,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 107:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic pop 108:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32_READ(addr) (((const struct T_UINT32_READ *)(const void *)(add 109:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif - ARM GAS /tmp/ccwR4KB7.s page 458 - - 110:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __ALIGNED 111:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __ALIGNED(x) __attribute__((aligned(x))) 112:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif @@ -27435,6 +28378,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 121:Drivers/CMSIS/Include/cmsis_gcc.h **** @{ 122:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 123:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/ccEQxcUB.s page 474 + + 124:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 125:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable IRQ Interrupts 126:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables IRQ interrupts by clearing the I-bit in the CPSR. @@ -27478,9 +28424,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 164:Drivers/CMSIS/Include/cmsis_gcc.h **** \return non-secure Control Register value 165:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 166:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_CONTROL_NS(void) - ARM GAS /tmp/ccwR4KB7.s page 459 - - 167:Drivers/CMSIS/Include/cmsis_gcc.h **** { 168:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 169:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27495,6 +28438,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 178:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Writes the given value to the Control Register. 179:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] control Control Register value to set 180:Drivers/CMSIS/Include/cmsis_gcc.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 475 + + 181:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) 182:Drivers/CMSIS/Include/cmsis_gcc.h **** { 183:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); @@ -27538,9 +28484,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 221:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 222:Drivers/CMSIS/Include/cmsis_gcc.h **** 223:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, apsr" : "=r" (result) ); - ARM GAS /tmp/ccwR4KB7.s page 460 - - 224:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 225:Drivers/CMSIS/Include/cmsis_gcc.h **** } 226:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27555,6 +28498,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 235:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 236:Drivers/CMSIS/Include/cmsis_gcc.h **** 237:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, xpsr" : "=r" (result) ); + ARM GAS /tmp/ccEQxcUB.s page 476 + + 238:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 239:Drivers/CMSIS/Include/cmsis_gcc.h **** } 240:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27598,9 +28544,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 278:Drivers/CMSIS/Include/cmsis_gcc.h **** { 279:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR psp, %0" : : "r" (topOfProcStack) : ); 280:Drivers/CMSIS/Include/cmsis_gcc.h **** } - ARM GAS /tmp/ccwR4KB7.s page 461 - - 281:Drivers/CMSIS/Include/cmsis_gcc.h **** 282:Drivers/CMSIS/Include/cmsis_gcc.h **** 283:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) @@ -27615,6 +28558,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 292:Drivers/CMSIS/Include/cmsis_gcc.h **** } 293:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 294:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/ccEQxcUB.s page 477 + + 295:Drivers/CMSIS/Include/cmsis_gcc.h **** 296:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 297:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer @@ -27658,9 +28604,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 335:Drivers/CMSIS/Include/cmsis_gcc.h **** 336:Drivers/CMSIS/Include/cmsis_gcc.h **** 337:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) - ARM GAS /tmp/ccwR4KB7.s page 462 - - 338:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 339:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer (non-secure) 340:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Main Stack Pointer (MSP) when in secure state. @@ -27675,6 +28618,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 349:Drivers/CMSIS/Include/cmsis_gcc.h **** 350:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 351:Drivers/CMSIS/Include/cmsis_gcc.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 478 + + 352:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Stack Pointer (non-secure) 353:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. 354:Drivers/CMSIS/Include/cmsis_gcc.h **** \return SP Register value @@ -27718,9 +28664,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 392:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 393:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Priority Mask (non-secure) 394:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current state of the non-secure priority mask bit from the Priority Mask Reg - ARM GAS /tmp/ccwR4KB7.s page 463 - - 395:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Priority Mask value 396:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 397:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_PRIMASK_NS(void) @@ -27735,6 +28678,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 406:Drivers/CMSIS/Include/cmsis_gcc.h **** 407:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 408:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Priority Mask + ARM GAS /tmp/ccEQxcUB.s page 479 + + 409:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Priority Mask Register. 410:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] priMask Priority Mask 411:Drivers/CMSIS/Include/cmsis_gcc.h **** */ @@ -27778,9 +28724,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 449:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 450:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __disable_fault_irq(void) 451:Drivers/CMSIS/Include/cmsis_gcc.h **** { - ARM GAS /tmp/ccwR4KB7.s page 464 - - 452:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("cpsid f" : : : "memory"); 453:Drivers/CMSIS/Include/cmsis_gcc.h **** } 454:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27795,6 +28738,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 463:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 464:Drivers/CMSIS/Include/cmsis_gcc.h **** 465:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, basepri" : "=r" (result) ); + ARM GAS /tmp/ccEQxcUB.s page 480 + + 466:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 467:Drivers/CMSIS/Include/cmsis_gcc.h **** } 468:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27838,9 +28784,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 506:Drivers/CMSIS/Include/cmsis_gcc.h **** } 507:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 508:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccwR4KB7.s page 465 - - 509:Drivers/CMSIS/Include/cmsis_gcc.h **** 510:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 511:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Base Priority with condition @@ -27855,6 +28798,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 520:Drivers/CMSIS/Include/cmsis_gcc.h **** 521:Drivers/CMSIS/Include/cmsis_gcc.h **** 522:Drivers/CMSIS/Include/cmsis_gcc.h **** /** + ARM GAS /tmp/ccEQxcUB.s page 481 + + 523:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Fault Mask 524:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Fault Mask register. 525:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Fault Mask register value @@ -27898,9 +28844,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 563:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 564:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 565:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Fault Mask (non-secure) - ARM GAS /tmp/ccwR4KB7.s page 466 - - 566:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Fault Mask register when in secure state. 567:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] faultMask Fault Mask value to set 568:Drivers/CMSIS/Include/cmsis_gcc.h **** */ @@ -27915,6 +28858,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 577:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) ) */ 578:Drivers/CMSIS/Include/cmsis_gcc.h **** 579:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/ccEQxcUB.s page 482 + + 580:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ 581:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) 582:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -27958,9 +28904,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 620:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 621:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psplim_ns" : "=r" (result) ); 622:Drivers/CMSIS/Include/cmsis_gcc.h **** return result; - ARM GAS /tmp/ccwR4KB7.s page 467 - - 623:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 624:Drivers/CMSIS/Include/cmsis_gcc.h **** } 625:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif @@ -27975,6 +28918,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 634:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Process Stack Pointer Limit (PSPLIM). 635:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ProcStackPtrLimit Process Stack Pointer Limit value to set 636:Drivers/CMSIS/Include/cmsis_gcc.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 483 + + 637:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) 638:Drivers/CMSIS/Include/cmsis_gcc.h **** { 639:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ @@ -28018,9 +28964,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 677:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSPLIM Register value 678:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 679:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_MSPLIM(void) - ARM GAS /tmp/ccwR4KB7.s page 468 - - 680:Drivers/CMSIS/Include/cmsis_gcc.h **** { 681:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ 682:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) @@ -28035,6 +28978,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 691:Drivers/CMSIS/Include/cmsis_gcc.h **** 692:Drivers/CMSIS/Include/cmsis_gcc.h **** 693:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) + ARM GAS /tmp/ccEQxcUB.s page 484 + + 694:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 695:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer Limit (non-secure) 696:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure @@ -28078,9 +29024,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 734:Drivers/CMSIS/Include/cmsis_gcc.h **** } 735:Drivers/CMSIS/Include/cmsis_gcc.h **** 736:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccwR4KB7.s page 469 - - 737:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 738:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 739:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Main Stack Pointer Limit (non-secure) @@ -28095,6 +29038,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 748:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) 749:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI 750:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)MainStackPtrLimit; + ARM GAS /tmp/ccEQxcUB.s page 485 + + 751:Drivers/CMSIS/Include/cmsis_gcc.h **** #else 752:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); 753:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif @@ -28138,9 +29084,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 791:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 792:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_FPSCR(uint32_t fpscr) 793:Drivers/CMSIS/Include/cmsis_gcc.h **** { - ARM GAS /tmp/ccwR4KB7.s page 470 - - 794:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__FPU_PRESENT) && (__FPU_PRESENT == 1U)) && \ 795:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__FPU_USED ) && (__FPU_USED == 1U)) ) 796:Drivers/CMSIS/Include/cmsis_gcc.h **** #if __has_builtin(__builtin_arm_set_fpscr) @@ -28155,6 +29098,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 805:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)fpscr; 806:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 807:Drivers/CMSIS/Include/cmsis_gcc.h **** } + ARM GAS /tmp/ccEQxcUB.s page 486 + + 808:Drivers/CMSIS/Include/cmsis_gcc.h **** 809:Drivers/CMSIS/Include/cmsis_gcc.h **** 810:Drivers/CMSIS/Include/cmsis_gcc.h **** /*@} end of CMSIS_Core_RegAccFunctions */ @@ -28198,9 +29144,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 848:Drivers/CMSIS/Include/cmsis_gcc.h **** a low-power state until one of a number of events occurs. 849:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 850:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __WFE() __ASM volatile ("wfe") - ARM GAS /tmp/ccwR4KB7.s page 471 - - 851:Drivers/CMSIS/Include/cmsis_gcc.h **** 852:Drivers/CMSIS/Include/cmsis_gcc.h **** 853:Drivers/CMSIS/Include/cmsis_gcc.h **** /** @@ -28215,6 +29158,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 862:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Instruction Synchronization Barrier flushes the pipeline in the processor, 863:Drivers/CMSIS/Include/cmsis_gcc.h **** so that all instructions following the ISB are fetched from cache or memory, 864:Drivers/CMSIS/Include/cmsis_gcc.h **** after the instruction has been completed. + ARM GAS /tmp/ccEQxcUB.s page 487 + + 865:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 866:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __ISB(void) 867:Drivers/CMSIS/Include/cmsis_gcc.h **** { @@ -28258,9 +29204,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 905:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 906:Drivers/CMSIS/Include/cmsis_gcc.h **** 907:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("rev %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); - ARM GAS /tmp/ccwR4KB7.s page 472 - - 908:Drivers/CMSIS/Include/cmsis_gcc.h **** return result; 909:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 910:Drivers/CMSIS/Include/cmsis_gcc.h **** } @@ -28275,6 +29218,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 919:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __REV16(uint32_t value) 920:Drivers/CMSIS/Include/cmsis_gcc.h **** { 921:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; + ARM GAS /tmp/ccEQxcUB.s page 488 + + 922:Drivers/CMSIS/Include/cmsis_gcc.h **** 923:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("rev16 %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); 924:Drivers/CMSIS/Include/cmsis_gcc.h **** return result; @@ -28318,9 +29264,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 962:Drivers/CMSIS/Include/cmsis_gcc.h **** } 963:Drivers/CMSIS/Include/cmsis_gcc.h **** 964:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccwR4KB7.s page 473 - - 965:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 966:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Breakpoint 967:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Causes the processor to enter Debug state. @@ -28335,6 +29278,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 976:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Reverse bit order of value 977:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Reverses the bit order of the given value. 978:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] value Value to reverse + ARM GAS /tmp/ccEQxcUB.s page 489 + + 979:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Reversed value 980:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 981:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __RBIT(uint32_t value) @@ -28378,9 +29324,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1019:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief LDR Exclusive (8 bit) 1020:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Executes a exclusive LDR instruction for 8 bit value. 1021:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ptr Pointer to data - ARM GAS /tmp/ccwR4KB7.s page 474 - - 1022:Drivers/CMSIS/Include/cmsis_gcc.h **** \return value of type uint8_t at (*ptr) 1023:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1024:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint8_t __LDREXB(volatile uint8_t *addr) @@ -28395,6 +29338,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1033:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1034:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("ldrexb %0, [%1]" : "=r" (result) : "r" (addr) : "memory" ); 1035:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif + ARM GAS /tmp/ccEQxcUB.s page 490 + + 1036:Drivers/CMSIS/Include/cmsis_gcc.h **** return ((uint8_t) result); /* Add explicit type cast here */ 1037:Drivers/CMSIS/Include/cmsis_gcc.h **** } 1038:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -28428,37 +29374,37 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1066:Drivers/CMSIS/Include/cmsis_gcc.h **** \return value of type uint32_t at (*ptr) 1067:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1068:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __LDREXW(volatile uint32_t *addr) - 5966 .loc 8 1068 31 view .LVU1905 - 5967 .LBB549: + 6450 .loc 8 1068 31 view .LVU2042 + 6451 .LBB585: 1069:Drivers/CMSIS/Include/cmsis_gcc.h **** { 1070:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; - 5968 .loc 8 1070 5 view .LVU1906 + 6452 .loc 8 1070 5 view .LVU2043 1071:Drivers/CMSIS/Include/cmsis_gcc.h **** 1072:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("ldrex %0, %1" : "=r" (result) : "Q" (*addr) ); - 5969 .loc 8 1072 4 view .LVU1907 - 5970 00e8 794A ldr r2, .L304+76 - 5971 00ea 02F10803 add r3, r2, #8 - ARM GAS /tmp/ccwR4KB7.s page 475 - - - 5972 .syntax unified - 5973 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 5974 00ee 53E8003F ldrex r3, [r3] - 5975 @ 0 "" 2 - 5976 .LVL534: + 6453 .loc 8 1072 4 view .LVU2044 + 6454 00e8 794A ldr r2, .L329+76 + 6455 00ea 02F10803 add r3, r2, #8 + 6456 .syntax unified + 6457 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 6458 00ee 53E8003F ldrex r3, [r3] + 6459 @ 0 "" 2 + 6460 .LVL596: 1073:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 5977 .loc 8 1073 4 view .LVU1908 - 5978 .loc 8 1073 4 is_stmt 0 view .LVU1909 - 5979 .thumb - 5980 .syntax unified - 5981 .LBE549: - 5982 .LBE548: - 5983 .loc 7 3558 3 discriminator 1 view .LVU1910 - 5984 00f2 43F08003 orr r3, r3, #128 - 5985 .LVL535: - 5986 .loc 7 3558 3 is_stmt 1 discriminator 1 view .LVU1911 - 5987 .LBB550: - 5988 .LBI550: + 6461 .loc 8 1073 4 view .LVU2045 + 6462 .loc 8 1073 4 is_stmt 0 view .LVU2046 + 6463 .thumb + 6464 .syntax unified + 6465 .LBE585: + 6466 .LBE584: + 6467 .loc 7 3558 3 discriminator 1 view .LVU2047 + 6468 00f2 43F08003 orr r3, r3, #128 + ARM GAS /tmp/ccEQxcUB.s page 491 + + + 6469 .LVL597: + 6470 .loc 7 3558 3 is_stmt 1 discriminator 1 view .LVU2048 + 6471 .LBB586: + 6472 .LBI586: 1074:Drivers/CMSIS/Include/cmsis_gcc.h **** } 1075:Drivers/CMSIS/Include/cmsis_gcc.h **** 1076:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -28498,9 +29444,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1110:Drivers/CMSIS/Include/cmsis_gcc.h **** 1111:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 1112:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief STR Exclusive (32 bit) - ARM GAS /tmp/ccwR4KB7.s page 476 - - 1113:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Executes a exclusive STR instruction for 32 bit values. 1114:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] value Value to store 1115:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ptr Pointer to location @@ -28508,39 +29451,42 @@ ARM GAS /tmp/ccwR4KB7.s page 1 1117:Drivers/CMSIS/Include/cmsis_gcc.h **** \return 1 Function failed 1118:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1119:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __STREXW(uint32_t value, volatile uint32_t *addr) - 5989 .loc 8 1119 31 view .LVU1912 - 5990 .LBB551: + 6473 .loc 8 1119 31 view .LVU2049 + 6474 .LBB587: 1120:Drivers/CMSIS/Include/cmsis_gcc.h **** { 1121:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; - 5991 .loc 8 1121 4 view .LVU1913 + 6475 .loc 8 1121 4 view .LVU2050 1122:Drivers/CMSIS/Include/cmsis_gcc.h **** 1123:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("strex %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" (value) ); - 5992 .loc 8 1123 4 view .LVU1914 - 5993 00f6 0832 adds r2, r2, #8 - 5994 .syntax unified - 5995 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 5996 00f8 42E80031 strex r1, r3, [r2] - 5997 @ 0 "" 2 - 5998 .LVL536: + ARM GAS /tmp/ccEQxcUB.s page 492 + + + 6476 .loc 8 1123 4 view .LVU2051 + 6477 00f6 0832 adds r2, r2, #8 + 6478 .syntax unified + 6479 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 6480 00f8 42E80031 strex r1, r3, [r2] + 6481 @ 0 "" 2 + 6482 .LVL598: 1124:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 5999 .loc 8 1124 4 view .LVU1915 - 6000 .loc 8 1124 4 is_stmt 0 view .LVU1916 - 6001 .thumb - 6002 .syntax unified - 6003 .LBE551: - 6004 .LBE550: - 6005 .loc 7 3558 3 discriminator 1 view .LVU1917 - 6006 00fc 0029 cmp r1, #0 - 6007 00fe F3D1 bne .L295 - 6008 .LBE547: - 6009 .loc 7 3558 3 is_stmt 1 discriminator 2 view .LVU1918 - 6010 .LVL537: - 6011 .loc 7 3558 3 is_stmt 0 discriminator 2 view .LVU1919 - 6012 .LBE546: -2121:Src/main.c **** LL_DMA_EnableIT_TE(DMA2, LL_DMA_STREAM_7); - 6013 .loc 1 2121 3 is_stmt 1 view .LVU1920 - 6014 .LBB552: - 6015 .LBI552: + 6483 .loc 8 1124 4 view .LVU2052 + 6484 .loc 8 1124 4 is_stmt 0 view .LVU2053 + 6485 .thumb + 6486 .syntax unified + 6487 .LBE587: + 6488 .LBE586: + 6489 .loc 7 3558 3 discriminator 1 view .LVU2054 + 6490 00fc 0029 cmp r1, #0 + 6491 00fe F3D1 bne .L320 + 6492 .LBE583: + 6493 .loc 7 3558 3 is_stmt 1 discriminator 2 view .LVU2055 + 6494 .LVL599: + 6495 .loc 7 3558 3 is_stmt 0 discriminator 2 view .LVU2056 + 6496 .LBE582: +2296:Src/main.c **** LL_DMA_EnableIT_TE(DMA2, LL_DMA_STREAM_7); + 6497 .loc 1 2296 3 is_stmt 1 view .LVU2057 + 6498 .LBB588: + 6499 .LBI588: 2368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -28558,9 +29504,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2382:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 1 direct mode error flag. 2383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LIFCR CDMEIF1 LL_DMA_ClearFlag_DME1 2384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccwR4KB7.s page 477 - - 2385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_DME1(DMA_TypeDef *DMAx) @@ -28575,6 +29518,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2396:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2397:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2398:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_DME2(DMA_TypeDef *DMAx) + ARM GAS /tmp/ccEQxcUB.s page 493 + + 2399:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2400:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CDMEIF2); 2401:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -28618,9 +29564,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2439:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2440:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2441:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccwR4KB7.s page 478 - - 2442:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_DME6(DMA_TypeDef *DMAx) 2443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CDMEIF6); @@ -28635,6 +29578,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2453:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_DME7(DMA_TypeDef *DMAx) 2454:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2455:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CDMEIF7); + ARM GAS /tmp/ccEQxcUB.s page 494 + + 2456:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2457:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2458:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -28678,9 +29624,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2496:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2497:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_FE3(DMA_TypeDef *DMAx) 2498:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccwR4KB7.s page 479 - - 2499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CFEIF3); 2500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -28695,6 +29638,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2510:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CFEIF4); 2511:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2512:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/ccEQxcUB.s page 495 + + 2513:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2514:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 5 FIFO error flag. 2515:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HIFCR CFEIF5 LL_DMA_ClearFlag_FE5 @@ -28738,9 +29684,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2553:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Enable Half transfer interrupt. - ARM GAS /tmp/ccwR4KB7.s page 480 - - 2556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR HTIE LL_DMA_EnableIT_HT 2557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: @@ -28755,6 +29698,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2567:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2568:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2569:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_EnableIT_HT(DMA_TypeDef *DMAx, uint32_t Stream) + ARM GAS /tmp/ccEQxcUB.s page 496 + + 2570:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2571:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** SET_BIT(((DMA_Stream_TypeDef *)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, DMA 2572:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -28795,2924 +29741,3073 @@ ARM GAS /tmp/ccwR4KB7.s page 1 2607:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2608:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_EnableIT_TC(DMA_TypeDef *DMAx, uint32_t Stream) - 6016 .loc 6 2609 22 view .LVU1921 - 6017 .LBB553: + 6500 .loc 6 2609 22 view .LVU2058 + 6501 .LBB589: 2610:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccwR4KB7.s page 481 - - 2611:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** SET_BIT(((DMA_Stream_TypeDef *)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, DMA - 6018 .loc 6 2611 3 view .LVU1922 - 6019 0100 744B ldr r3, .L304+80 - 6020 0102 D3F8B820 ldr r2, [r3, #184] - 6021 0106 42F01002 orr r2, r2, #16 - 6022 010a C3F8B820 str r2, [r3, #184] - 6023 .LVL538: - 6024 .loc 6 2611 3 is_stmt 0 view .LVU1923 - 6025 .LBE553: - 6026 .LBE552: -2122:Src/main.c **** LL_DMA_ClearFlag_TC7(DMA2); - 6027 .loc 1 2122 3 is_stmt 1 view .LVU1924 - 6028 .LBB554: - 6029 .LBI554: + 6502 .loc 6 2611 3 view .LVU2059 + 6503 0100 744B ldr r3, .L329+80 + 6504 0102 D3F8B820 ldr r2, [r3, #184] + 6505 0106 42F01002 orr r2, r2, #16 + 6506 010a C3F8B820 str r2, [r3, #184] + 6507 .LVL600: + 6508 .loc 6 2611 3 is_stmt 0 view .LVU2060 + 6509 .LBE589: + 6510 .LBE588: +2297:Src/main.c **** LL_DMA_ClearFlag_TC7(DMA2); + 6511 .loc 1 2297 3 is_stmt 1 view .LVU2061 + 6512 .LBB590: + 6513 .LBI590: + ARM GAS /tmp/ccEQxcUB.s page 497 + + 2589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6030 .loc 6 2589 22 view .LVU1925 - 6031 .LBB555: + 6514 .loc 6 2589 22 view .LVU2062 + 6515 .LBB591: 2591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6032 .loc 6 2591 3 view .LVU1926 - 6033 010e D3F8B820 ldr r2, [r3, #184] - 6034 0112 42F00402 orr r2, r2, #4 - 6035 0116 C3F8B820 str r2, [r3, #184] - 6036 .LVL539: + 6516 .loc 6 2591 3 view .LVU2063 + 6517 010e D3F8B820 ldr r2, [r3, #184] + 6518 0112 42F00402 orr r2, r2, #4 + 6519 0116 C3F8B820 str r2, [r3, #184] + 6520 .LVL601: 2591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6037 .loc 6 2591 3 is_stmt 0 view .LVU1927 - 6038 .LBE555: - 6039 .LBE554: -2123:Src/main.c **** LL_DMA_ClearFlag_TE7(DMA2); - 6040 .loc 1 2123 3 is_stmt 1 view .LVU1928 - 6041 .LBB556: - 6042 .LBI556: + 6521 .loc 6 2591 3 is_stmt 0 view .LVU2064 + 6522 .LBE591: + 6523 .LBE590: +2298:Src/main.c **** LL_DMA_ClearFlag_TE7(DMA2); + 6524 .loc 1 2298 3 is_stmt 1 view .LVU2065 + 6525 .LBB592: + 6526 .LBI592: 2277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6043 .loc 6 2277 22 view .LVU1929 - 6044 .LBB557: + 6527 .loc 6 2277 22 view .LVU2066 + 6528 .LBB593: 2279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6045 .loc 6 2279 3 view .LVU1930 - 6046 011a 4FF00062 mov r2, #134217728 - 6047 011e DA60 str r2, [r3, #12] - 6048 .LVL540: + 6529 .loc 6 2279 3 view .LVU2067 + 6530 011a 4FF00062 mov r2, #134217728 + 6531 011e DA60 str r2, [r3, #12] + 6532 .LVL602: 2279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6049 .loc 6 2279 3 is_stmt 0 view .LVU1931 - 6050 .LBE557: - 6051 .LBE556: -2124:Src/main.c **** LL_DMA_ConfigAddresses(DMA2, LL_DMA_STREAM_7, (uint32_t)&UART_DATA, LL_USART_DMA_GetRegAddr(USART - 6052 .loc 1 2124 3 is_stmt 1 view .LVU1932 - 6053 .LBB558: - 6054 .LBI558: + 6533 .loc 6 2279 3 is_stmt 0 view .LVU2068 + 6534 .LBE593: + 6535 .LBE592: +2299:Src/main.c **** LL_DMA_ConfigAddresses(DMA2, LL_DMA_STREAM_7, (uint32_t)&UART_DATA, LL_USART_DMA_GetRegAddr(USART + 6536 .loc 1 2299 3 is_stmt 1 view .LVU2069 + 6537 .LBB594: + 6538 .LBI594: 2365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6055 .loc 6 2365 22 view .LVU1933 - 6056 .LBB559: + 6539 .loc 6 2365 22 view .LVU2070 + 6540 .LBB595: 2367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6057 .loc 6 2367 3 view .LVU1934 - 6058 0120 4FF00072 mov r2, #33554432 - 6059 0124 DA60 str r2, [r3, #12] - 6060 .LVL541: + 6541 .loc 6 2367 3 view .LVU2071 + 6542 0120 4FF00072 mov r2, #33554432 + 6543 0124 DA60 str r2, [r3, #12] + 6544 .LVL603: 2367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6061 .loc 6 2367 3 is_stmt 0 view .LVU1935 - ARM GAS /tmp/ccwR4KB7.s page 482 - - - 6062 .LBE559: - 6063 .LBE558: -2125:Src/main.c **** - 6064 .loc 1 2125 3 is_stmt 1 view .LVU1936 - 6065 0126 6C4A ldr r2, .L304+84 - 6066 .LVL542: - 6067 .LBB560: - 6068 .LBI560: + 6545 .loc 6 2367 3 is_stmt 0 view .LVU2072 + 6546 .LBE595: + 6547 .LBE594: +2300:Src/main.c **** + 6548 .loc 1 2300 3 is_stmt 1 view .LVU2073 + 6549 0126 6C4A ldr r2, .L329+84 + 6550 .LVL604: + 6551 .LBB596: + 6552 .LBI596: 621:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6069 .loc 6 621 26 view .LVU1937 - 6070 .LBB561: + 6553 .loc 6 621 26 view .LVU2074 + 6554 .LBB597: 623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6071 .loc 6 623 3 view .LVU1938 + 6555 .loc 6 623 3 view .LVU2075 623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6072 .loc 6 623 11 is_stmt 0 view .LVU1939 - 6073 0128 D3F8B830 ldr r3, [r3, #184] - 6074 012c 03F0C003 and r3, r3, #192 - 6075 .LVL543: + ARM GAS /tmp/ccEQxcUB.s page 498 + + + 6556 .loc 6 623 11 is_stmt 0 view .LVU2076 + 6557 0128 D3F8B830 ldr r3, [r3, #184] + 6558 012c 03F0C003 and r3, r3, #192 + 6559 .LVL605: 623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6076 .loc 6 623 11 view .LVU1940 - 6077 .LBE561: - 6078 .LBE560: - 6079 .LBB562: - 6080 .LBI562: + 6560 .loc 6 623 11 view .LVU2077 + 6561 .LBE597: + 6562 .LBE596: + 6563 .LBB598: + 6564 .LBI598: 1425:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6081 .loc 6 1425 22 is_stmt 1 view .LVU1941 - 6082 .LBB563: + 6565 .loc 6 1425 22 is_stmt 1 view .LVU2078 + 6566 .LBB599: 1428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6083 .loc 6 1428 3 view .LVU1942 + 6567 .loc 6 1428 3 view .LVU2079 1428:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 6084 .loc 6 1428 6 is_stmt 0 view .LVU1943 - 6085 0130 402B cmp r3, #64 - 6086 0132 7DD0 beq .L301 + 6568 .loc 6 1428 6 is_stmt 0 view .LVU2080 + 6569 0130 402B cmp r3, #64 + 6570 0132 7DD0 beq .L326 1436:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->M0AR - 6087 .loc 6 1436 5 is_stmt 1 view .LVU1944 - 6088 0134 674B ldr r3, .L304+80 - 6089 .LVL544: + 6571 .loc 6 1436 5 is_stmt 1 view .LVU2081 + 6572 0134 674B ldr r3, .L329+80 + 6573 .LVL606: 1436:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->M0AR - 6090 .loc 6 1436 5 is_stmt 0 view .LVU1945 - 6091 0136 C3F8C020 str r2, [r3, #192] + 6574 .loc 6 1436 5 is_stmt 0 view .LVU2082 + 6575 0136 C3F8C020 str r2, [r3, #192] 1437:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6092 .loc 6 1437 5 is_stmt 1 view .LVU1946 - 6093 013a 684A ldr r2, .L304+88 - 6094 013c C3F8C420 str r2, [r3, #196] - 6095 .L297: - 6096 .LVL545: + 6576 .loc 6 1437 5 is_stmt 1 view .LVU2083 + 6577 013a 684A ldr r2, .L329+88 + 6578 013c C3F8C420 str r2, [r3, #196] + 6579 .L322: + 6580 .LVL607: 1437:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6097 .loc 6 1437 5 is_stmt 0 view .LVU1947 - 6098 .LBE563: - 6099 .LBE562: -2130:Src/main.c **** SD_SLIDE = 0; - 6100 .loc 1 2130 2 is_stmt 1 view .LVU1948 -2130:Src/main.c **** SD_SLIDE = 0; - 6101 .loc 1 2130 10 is_stmt 0 view .LVU1949 - 6102 0140 0024 movs r4, #0 - 6103 0142 674B ldr r3, .L304+92 - 6104 0144 1C60 str r4, [r3] - ARM GAS /tmp/ccwR4KB7.s page 483 + 6581 .loc 6 1437 5 is_stmt 0 view .LVU2084 + 6582 .LBE599: + 6583 .LBE598: +2305:Src/main.c **** SD_SLIDE = 0; + 6584 .loc 1 2305 2 is_stmt 1 view .LVU2085 +2305:Src/main.c **** SD_SLIDE = 0; + 6585 .loc 1 2305 10 is_stmt 0 view .LVU2086 + 6586 0140 0024 movs r4, #0 + 6587 0142 674B ldr r3, .L329+92 + 6588 0144 1C60 str r4, [r3] +2306:Src/main.c **** //Reset all periphery + 6589 .loc 1 2306 2 is_stmt 1 view .LVU2087 +2306:Src/main.c **** //Reset all periphery + 6590 .loc 1 2306 11 is_stmt 0 view .LVU2088 + 6591 0146 674B ldr r3, .L329+96 + 6592 0148 1C60 str r4, [r3] +2308:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_RESET); + 6593 .loc 1 2308 2 is_stmt 1 view .LVU2089 + 6594 014a 674E ldr r6, .L329+100 + 6595 014c 2246 mov r2, r4 + 6596 014e 0821 movs r1, #8 + 6597 0150 3046 mov r0, r6 + 6598 0152 FFF7FEFF bl HAL_GPIO_WritePin + 6599 .LVL608: + ARM GAS /tmp/ccEQxcUB.s page 499 -2131:Src/main.c **** //Reset all periphery - 6105 .loc 1 2131 2 is_stmt 1 view .LVU1950 -2131:Src/main.c **** //Reset all periphery - 6106 .loc 1 2131 11 is_stmt 0 view .LVU1951 - 6107 0146 674B ldr r3, .L304+96 - 6108 0148 1C60 str r4, [r3] -2133:Src/main.c **** HAL_GPIO_WritePin(EN_5V2_GPIO_Port, EN_5V2_Pin, GPIO_PIN_RESET); - 6109 .loc 1 2133 2 is_stmt 1 view .LVU1952 - 6110 014a 674F ldr r7, .L304+100 - 6111 014c 2246 mov r2, r4 - 6112 014e 0821 movs r1, #8 - 6113 0150 3846 mov r0, r7 - 6114 0152 FFF7FEFF bl HAL_GPIO_WritePin - 6115 .LVL546: -2134:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_RESET); - 6116 .loc 1 2134 2 view .LVU1953 - 6117 0156 2246 mov r2, r4 - 6118 0158 0421 movs r1, #4 - 6119 015a 3846 mov r0, r7 - 6120 015c FFF7FEFF bl HAL_GPIO_WritePin - 6121 .LVL547: -2135:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_RESET); - 6122 .loc 1 2135 2 view .LVU1954 - 6123 0160 DFF8A881 ldr r8, .L304+136 - 6124 0164 2246 mov r2, r4 - 6125 0166 4FF48071 mov r1, #256 - 6126 016a 4046 mov r0, r8 - 6127 016c FFF7FEFF bl HAL_GPIO_WritePin - 6128 .LVL548: -2136:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_RESET); - 6129 .loc 1 2136 2 view .LVU1955 - 6130 0170 2246 mov r2, r4 - 6131 0172 1021 movs r1, #16 - 6132 0174 3846 mov r0, r7 - 6133 0176 FFF7FEFF bl HAL_GPIO_WritePin - 6134 .LVL549: -2137:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_RESET); - 6135 .loc 1 2137 2 view .LVU1956 - 6136 017a 5C4E ldr r6, .L304+104 - 6137 017c 2246 mov r2, r4 - 6138 017e 4FF48061 mov r1, #1024 - 6139 0182 3046 mov r0, r6 - 6140 0184 FFF7FEFF bl HAL_GPIO_WritePin - 6141 .LVL550: -2138:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_RESET); - 6142 .loc 1 2138 2 view .LVU1957 - 6143 0188 594D ldr r5, .L304+108 - 6144 018a 2246 mov r2, r4 - 6145 018c 0821 movs r1, #8 - 6146 018e 2846 mov r0, r5 - 6147 0190 FFF7FEFF bl HAL_GPIO_WritePin - 6148 .LVL551: -2139:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_RESET); - 6149 .loc 1 2139 2 view .LVU1958 - 6150 0194 2246 mov r2, r4 - 6151 0196 0121 movs r1, #1 - 6152 0198 2846 mov r0, r5 - ARM GAS /tmp/ccwR4KB7.s page 484 +2309:Src/main.c **** HAL_GPIO_WritePin(LD1_EN_GPIO_Port, LD1_EN_Pin, GPIO_PIN_RESET); + 6600 .loc 1 2309 2 view .LVU2090 + 6601 0156 2246 mov r2, r4 + 6602 0158 8021 movs r1, #128 + 6603 015a 3046 mov r0, r6 + 6604 015c FFF7FEFF bl HAL_GPIO_WritePin + 6605 .LVL609: +2310:Src/main.c **** HAL_GPIO_WritePin(LD2_EN_GPIO_Port, LD2_EN_Pin, GPIO_PIN_RESET); + 6606 .loc 1 2310 2 view .LVU2091 + 6607 0160 624F ldr r7, .L329+104 + 6608 0162 2246 mov r2, r4 + 6609 0164 4FF48071 mov r1, #256 + 6610 0168 3846 mov r0, r7 + 6611 016a FFF7FEFF bl HAL_GPIO_WritePin + 6612 .LVL610: +2311:Src/main.c **** HAL_GPIO_WritePin(REF0_EN_GPIO_Port, REF0_EN_Pin, GPIO_PIN_RESET); + 6613 .loc 1 2311 2 view .LVU2092 + 6614 016e 2246 mov r2, r4 + 6615 0170 1021 movs r1, #16 + 6616 0172 3046 mov r0, r6 + 6617 0174 FFF7FEFF bl HAL_GPIO_WritePin + 6618 .LVL611: +2312:Src/main.c **** HAL_GPIO_WritePin(REF2_ON_GPIO_Port, REF2_ON_Pin, GPIO_PIN_RESET); + 6619 .loc 1 2312 2 view .LVU2093 + 6620 0178 DFF89081 ldr r8, .L329+136 + 6621 017c 2246 mov r2, r4 + 6622 017e 4FF48061 mov r1, #1024 + 6623 0182 4046 mov r0, r8 + 6624 0184 FFF7FEFF bl HAL_GPIO_WritePin + 6625 .LVL612: +2313:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_RESET); + 6626 .loc 1 2313 2 view .LVU2094 + 6627 0188 594D ldr r5, .L329+108 + 6628 018a 2246 mov r2, r4 + 6629 018c 0821 movs r1, #8 + 6630 018e 2846 mov r0, r5 + 6631 0190 FFF7FEFF bl HAL_GPIO_WritePin + 6632 .LVL613: +2314:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_RESET); + 6633 .loc 1 2314 2 view .LVU2095 + 6634 0194 2246 mov r2, r4 + 6635 0196 0121 movs r1, #1 + 6636 0198 2846 mov r0, r5 + 6637 019a FFF7FEFF bl HAL_GPIO_WritePin + 6638 .LVL614: +2315:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); + 6639 .loc 1 2315 2 view .LVU2096 + 6640 019e 2246 mov r2, r4 + 6641 01a0 0221 movs r1, #2 + 6642 01a2 2846 mov r0, r5 + 6643 01a4 FFF7FEFF bl HAL_GPIO_WritePin + 6644 .LVL615: +2316:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); + 6645 .loc 1 2316 2 view .LVU2097 + 6646 01a8 2246 mov r2, r4 + 6647 01aa 4FF40061 mov r1, #2048 + 6648 01ae 4046 mov r0, r8 + ARM GAS /tmp/ccEQxcUB.s page 500 - 6153 019a FFF7FEFF bl HAL_GPIO_WritePin - 6154 .LVL552: -2140:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); - 6155 .loc 1 2140 2 view .LVU1959 - 6156 019e 2246 mov r2, r4 - 6157 01a0 0221 movs r1, #2 - 6158 01a2 2846 mov r0, r5 - 6159 01a4 FFF7FEFF bl HAL_GPIO_WritePin - 6160 .LVL553: -2141:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); - 6161 .loc 1 2141 2 view .LVU1960 - 6162 01a8 2246 mov r2, r4 - 6163 01aa 4FF40061 mov r1, #2048 - 6164 01ae 3046 mov r0, r6 - 6165 01b0 FFF7FEFF bl HAL_GPIO_WritePin - 6166 .LVL554: -2142:Src/main.c **** // for (uint16_t i = 0; i < SD_Length; i++) - 6167 .loc 1 2142 2 view .LVU1961 - 6168 01b4 2246 mov r2, r4 - 6169 01b6 2021 movs r1, #32 - 6170 01b8 3846 mov r0, r7 - 6171 01ba FFF7FEFF bl HAL_GPIO_WritePin - 6172 .LVL555: -2152:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET);//Enable SPI for MPhD2 ADC - 6173 .loc 1 2152 2 view .LVU1962 - 6174 01be 07F50067 add r7, r7, #2048 - 6175 01c2 0122 movs r2, #1 - 6176 01c4 4FF48061 mov r1, #1024 - 6177 01c8 3846 mov r0, r7 - 6178 01ca FFF7FEFF bl HAL_GPIO_WritePin - 6179 .LVL556: -2153:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); - 6180 .loc 1 2153 2 view .LVU1963 - 6181 01ce 494C ldr r4, .L304+112 - 6182 01d0 0122 movs r2, #1 - 6183 01d2 4021 movs r1, #64 - 6184 01d4 2046 mov r0, r4 - 6185 01d6 FFF7FEFF bl HAL_GPIO_WritePin - 6186 .LVL557: -2154:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); - 6187 .loc 1 2154 2 view .LVU1964 - 6188 01da 0122 movs r2, #1 - 6189 01dc 4FF48041 mov r1, #16384 - 6190 01e0 3846 mov r0, r7 - 6191 01e2 FFF7FEFF bl HAL_GPIO_WritePin - 6192 .LVL558: -2155:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET);//End operation with LDAC1 - 6193 .loc 1 2155 2 view .LVU1965 - 6194 01e6 0122 movs r2, #1 - 6195 01e8 4FF48041 mov r1, #16384 - 6196 01ec 2046 mov r0, r4 - 6197 01ee FFF7FEFF bl HAL_GPIO_WritePin - 6198 .LVL559: -2156:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 - 6199 .loc 1 2156 2 view .LVU1966 - 6200 01f2 0122 movs r2, #1 - 6201 01f4 4FF48041 mov r1, #16384 - ARM GAS /tmp/ccwR4KB7.s page 485 - - - 6202 01f8 3046 mov r0, r6 - 6203 01fa FFF7FEFF bl HAL_GPIO_WritePin - 6204 .LVL560: -2157:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 - 6205 .loc 1 2157 2 view .LVU1967 - 6206 01fe 0122 movs r2, #1 - 6207 0200 4021 movs r1, #64 - 6208 0202 2846 mov r0, r5 - 6209 0204 FFF7FEFF bl HAL_GPIO_WritePin - 6210 .LVL561: -2158:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 - 6211 .loc 1 2158 2 view .LVU1968 - 6212 0208 0122 movs r2, #1 - 6213 020a 4FF48051 mov r1, #4096 - 6214 020e 3046 mov r0, r6 - 6215 0210 FFF7FEFF bl HAL_GPIO_WritePin - 6216 .LVL562: -2159:Src/main.c **** - 6217 .loc 1 2159 2 view .LVU1969 - 6218 0214 0122 movs r2, #1 - 6219 0216 1021 movs r1, #16 - 6220 0218 2846 mov r0, r5 - 6221 021a FFF7FEFF bl HAL_GPIO_WritePin - 6222 .LVL563: -2163:Src/main.c **** { - 6223 .loc 1 2163 2 view .LVU1970 -2163:Src/main.c **** { - 6224 .loc 1 2163 6 is_stmt 0 view .LVU1971 - 6225 021e 0121 movs r1, #1 - 6226 0220 4046 mov r0, r8 - 6227 0222 FFF7FEFF bl HAL_GPIO_ReadPin - 6228 .LVL564: -2163:Src/main.c **** { - 6229 .loc 1 2163 5 discriminator 1 view .LVU1972 - 6230 0226 50B1 cbz r0, .L302 - 6231 .L298: -2194:Src/main.c **** } - 6232 .loc 1 2194 2 is_stmt 1 view .LVU1973 - 6233 0228 FFF7FEFF bl AD9102_Init - 6234 .LVL565: -2195:Src/main.c **** static void Decode_uart(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ - 6235 .loc 1 2195 1 is_stmt 0 view .LVU1974 - 6236 022c BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 6237 .LVL566: - 6238 .L301: - 6239 .LBB565: - 6240 .LBB564: -1430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->PAR, - 6241 .loc 6 1430 5 is_stmt 1 view .LVU1975 - 6242 0230 284B ldr r3, .L304+80 - 6243 .LVL567: -1430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->PAR, - 6244 .loc 6 1430 5 is_stmt 0 view .LVU1976 - 6245 0232 C3F8C420 str r2, [r3, #196] -1431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6246 .loc 6 1431 5 is_stmt 1 view .LVU1977 - 6247 0236 294A ldr r2, .L304+88 - ARM GAS /tmp/ccwR4KB7.s page 486 - - - 6248 0238 C3F8C020 str r2, [r3, #192] - 6249 023c 80E7 b .L297 - 6250 .LVL568: - 6251 .L302: -1431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 6252 .loc 6 1431 5 is_stmt 0 view .LVU1978 - 6253 .LBE564: - 6254 .LBE565: -2166:Src/main.c **** { - 6255 .loc 1 2166 3 is_stmt 1 view .LVU1979 -2166:Src/main.c **** { - 6256 .loc 1 2166 7 is_stmt 0 view .LVU1980 - 6257 023e 4FF48071 mov r1, #256 - 6258 0242 2846 mov r0, r5 - 6259 0244 FFF7FEFF bl HAL_GPIO_ReadPin - 6260 .LVL569: -2166:Src/main.c **** { - 6261 .loc 1 2166 6 discriminator 1 view .LVU1981 - 6262 0248 0028 cmp r0, #0 - 6263 024a EDD1 bne .L298 -2169:Src/main.c **** if (test == 0) //0 - suc - 6264 .loc 1 2169 4 is_stmt 1 view .LVU1982 -2169:Src/main.c **** if (test == 0) //0 - suc - 6265 .loc 1 2169 11 is_stmt 0 view .LVU1983 - 6266 024c 2A48 ldr r0, .L304+116 - 6267 024e FFF7FEFF bl Mount_SD - 6268 .LVL570: -2169:Src/main.c **** if (test == 0) //0 - suc - 6269 .loc 1 2169 9 discriminator 1 view .LVU1984 - 6270 0252 2A4B ldr r3, .L304+120 - 6271 0254 1860 str r0, [r3] -2170:Src/main.c **** { - 6272 .loc 1 2170 4 is_stmt 1 view .LVU1985 -2170:Src/main.c **** { - 6273 .loc 1 2170 7 is_stmt 0 view .LVU1986 - 6274 0256 18B1 cbz r0, .L303 - 6275 .L299: -2182:Src/main.c **** } - 6276 .loc 1 2182 4 is_stmt 1 view .LVU1987 -2182:Src/main.c **** } - 6277 .loc 1 2182 14 is_stmt 0 view .LVU1988 - 6278 0258 294B ldr r3, .L304+124 - 6279 025a 0122 movs r2, #1 - 6280 025c 1A70 strb r2, [r3] - 6281 025e E3E7 b .L298 - 6282 .L303: -2173:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 6283 .loc 1 2173 5 is_stmt 1 view .LVU1989 -2173:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 6284 .loc 1 2173 12 is_stmt 0 view .LVU1990 - 6285 0260 1E23 movs r3, #30 - 6286 0262 1A46 mov r2, r3 - 6287 0264 2749 ldr r1, .L304+128 - 6288 0266 2848 ldr r0, .L304+132 - 6289 0268 FFF7FEFF bl Seek_Read_File - 6290 .LVL571: -2173:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - ARM GAS /tmp/ccwR4KB7.s page 487 - - - 6291 .loc 1 2173 10 discriminator 1 view .LVU1991 - 6292 026c 234C ldr r4, .L304+120 - 6293 026e 2060 str r0, [r4] -2174:Src/main.c **** UART_rec_incr = 0; - 6294 .loc 1 2174 5 is_stmt 1 view .LVU1992 -2174:Src/main.c **** UART_rec_incr = 0; - 6295 .loc 1 2174 12 is_stmt 0 view .LVU1993 - 6296 0270 2148 ldr r0, .L304+116 - 6297 0272 FFF7FEFF bl Unmount_SD - 6298 .LVL572: -2174:Src/main.c **** UART_rec_incr = 0; - 6299 .loc 1 2174 10 discriminator 1 view .LVU1994 - 6300 0276 2060 str r0, [r4] -2175:Src/main.c **** flg_tmt = 0;//Reset the timeout flag - 6301 .loc 1 2175 5 is_stmt 1 view .LVU1995 -2175:Src/main.c **** flg_tmt = 0;//Reset the timeout flag - 6302 .loc 1 2175 19 is_stmt 0 view .LVU1996 - 6303 0278 0023 movs r3, #0 - 6304 027a 084A ldr r2, .L304+24 - 6305 027c 1380 strh r3, [r2] @ movhi -2176:Src/main.c **** } - 6306 .loc 1 2176 5 is_stmt 1 view .LVU1997 -2176:Src/main.c **** } - 6307 .loc 1 2176 13 is_stmt 0 view .LVU1998 - 6308 027e 064A ldr r2, .L304+20 - 6309 0280 1370 strb r3, [r2] - 6310 0282 E9E7 b .L299 - 6311 .L305: - 6312 .align 2 - 6313 .L304: - 6314 0284 00000000 .word TO6 - 6315 0288 00000000 .word TO7 - 6316 028c 00000000 .word TO7_before - 6317 0290 00000000 .word TO6_before - 6318 0294 00000000 .word TO6_uart - 6319 0298 00000000 .word flg_tmt - 6320 029c 00000000 .word UART_rec_incr - 6321 02a0 00000000 .word fgoto - 6322 02a4 00000000 .word sizeoffile - 6323 02a8 00000000 .word u_tx_flg - 6324 02ac 00000000 .word u_rx_flg - 6325 02b0 00000000 .word Long_Data - 6326 02b4 00000000 .word Def_setup - 6327 02b8 00000000 .word LD1_def_setup - 6328 02bc 00000000 .word LD2_def_setup - 6329 02c0 00000000 .word Curr_setup - 6330 02c4 00000000 .word LD1_curr_setup - 6331 02c8 00000000 .word LD2_curr_setup - 6332 02cc 00100040 .word 1073745920 - 6333 02d0 00100140 .word 1073811456 - 6334 02d4 00640240 .word 1073898496 - 6335 02d8 00000000 .word UART_DATA - 6336 02dc 28100140 .word 1073811496 - 6337 02e0 00000000 .word SD_SEEK - 6338 02e4 00000000 .word SD_SLIDE - 6339 02e8 00080240 .word 1073874944 - 6340 02ec 00040240 .word 1073873920 - ARM GAS /tmp/ccwR4KB7.s page 488 - - - 6341 02f0 00000240 .word 1073872896 - 6342 02f4 00140240 .word 1073878016 - 6343 02f8 00000000 .word .LC0 - 6344 02fc 00000000 .word test - 6345 0300 00000000 .word CPU_state - 6346 0304 00000000 .word COMMAND - 6347 0308 04000000 .word .LC1 - 6348 030c 000C0240 .word 1073875968 - 6349 .cfi_endproc - 6350 .LFE1207: - 6352 .section .text.Get_ADC,"ax",%progbits - 6353 .align 1 - 6354 .syntax unified - 6355 .thumb - 6356 .thumb_func - 6358 Get_ADC: - 6359 .LVL573: - 6360 .LFB1222: -3064:Src/main.c **** uint16_t OUT; - 6361 .loc 1 3064 1 is_stmt 1 view -0 - 6362 .cfi_startproc - 6363 @ args = 0, pretend = 0, frame = 0 - 6364 @ frame_needed = 0, uses_anonymous_args = 0 -3064:Src/main.c **** uint16_t OUT; - 6365 .loc 1 3064 1 is_stmt 0 view .LVU2000 - 6366 0000 10B5 push {r4, lr} - 6367 .LCFI63: - 6368 .cfi_def_cfa_offset 8 - 6369 .cfi_offset 4, -8 - 6370 .cfi_offset 14, -4 - 6371 0002 0024 movs r4, #0 -3065:Src/main.c **** switch (num) - 6372 .loc 1 3065 2 is_stmt 1 view .LVU2001 -3066:Src/main.c **** { - 6373 .loc 1 3066 2 view .LVU2002 - 6374 0004 0528 cmp r0, #5 - 6375 0006 2CD8 bhi .L315 - 6376 0008 DFE800F0 tbb [pc, r0] - 6377 .L309: - 6378 000c 03 .byte (.L314-.L309)/2 - 6379 000d 08 .byte (.L313-.L309)/2 - 6380 000e 12 .byte (.L312-.L309)/2 - 6381 000f 17 .byte (.L311-.L309)/2 - 6382 0010 1C .byte (.L310-.L309)/2 - 6383 0011 26 .byte (.L308-.L309)/2 - 6384 .p2align 1 - 6385 .L314: -3069:Src/main.c **** break; - 6386 .loc 1 3069 5 view .LVU2003 - 6387 0012 1548 ldr r0, .L317 - 6388 .LVL574: -3069:Src/main.c **** break; - 6389 .loc 1 3069 5 is_stmt 0 view .LVU2004 - 6390 0014 FFF7FEFF bl HAL_ADC_Start - 6391 .LVL575: -3070:Src/main.c **** case 1: - 6392 .loc 1 3070 4 is_stmt 1 view .LVU2005 - ARM GAS /tmp/ccwR4KB7.s page 489 - - - 6393 0018 2046 mov r0, r4 - 6394 .L307: - 6395 .LVL576: -3089:Src/main.c **** } - 6396 .loc 1 3089 2 view .LVU2006 -3090:Src/main.c **** - 6397 .loc 1 3090 1 is_stmt 0 view .LVU2007 - 6398 001a 10BD pop {r4, pc} - 6399 .LVL577: - 6400 .L313: -3072:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc - 6401 .loc 1 3072 5 is_stmt 1 view .LVU2008 - 6402 001c 124C ldr r4, .L317 - 6403 001e 6421 movs r1, #100 - 6404 0020 2046 mov r0, r4 - 6405 .LVL578: -3072:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc - 6406 .loc 1 3072 5 is_stmt 0 view .LVU2009 - 6407 0022 FFF7FEFF bl HAL_ADC_PollForConversion - 6408 .LVL579: -3073:Src/main.c **** break; - 6409 .loc 1 3073 9 is_stmt 1 view .LVU2010 -3073:Src/main.c **** break; - 6410 .loc 1 3073 15 is_stmt 0 view .LVU2011 - 6411 0026 2046 mov r0, r4 - 6412 0028 FFF7FEFF bl HAL_ADC_GetValue - 6413 .LVL580: -3073:Src/main.c **** break; - 6414 .loc 1 3073 13 discriminator 1 view .LVU2012 - 6415 002c 80B2 uxth r0, r0 - 6416 .LVL581: -3074:Src/main.c **** case 2: - 6417 .loc 1 3074 4 is_stmt 1 view .LVU2013 - 6418 002e F4E7 b .L307 - 6419 .LVL582: - 6420 .L312: -3076:Src/main.c **** break; - 6421 .loc 1 3076 5 view .LVU2014 - 6422 0030 0D48 ldr r0, .L317 - 6423 .LVL583: -3076:Src/main.c **** break; - 6424 .loc 1 3076 5 is_stmt 0 view .LVU2015 - 6425 0032 FFF7FEFF bl HAL_ADC_Stop - 6426 .LVL584: -3077:Src/main.c **** case 3: - 6427 .loc 1 3077 4 is_stmt 1 view .LVU2016 - 6428 0036 2046 mov r0, r4 - 6429 0038 EFE7 b .L307 - 6430 .LVL585: - 6431 .L311: -3079:Src/main.c **** break; - 6432 .loc 1 3079 5 view .LVU2017 - 6433 003a 0C48 ldr r0, .L317+4 - 6434 .LVL586: -3079:Src/main.c **** break; - 6435 .loc 1 3079 5 is_stmt 0 view .LVU2018 - 6436 003c FFF7FEFF bl HAL_ADC_Start - ARM GAS /tmp/ccwR4KB7.s page 490 - - - 6437 .LVL587: -3080:Src/main.c **** case 4: - 6438 .loc 1 3080 4 is_stmt 1 view .LVU2019 - 6439 0040 2046 mov r0, r4 - 6440 0042 EAE7 b .L307 - 6441 .LVL588: - 6442 .L310: -3082:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc - 6443 .loc 1 3082 5 view .LVU2020 - 6444 0044 094C ldr r4, .L317+4 - 6445 0046 6421 movs r1, #100 - 6446 0048 2046 mov r0, r4 - 6447 .LVL589: -3082:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc - 6448 .loc 1 3082 5 is_stmt 0 view .LVU2021 - 6449 004a FFF7FEFF bl HAL_ADC_PollForConversion - 6450 .LVL590: -3083:Src/main.c **** break; - 6451 .loc 1 3083 9 is_stmt 1 view .LVU2022 -3083:Src/main.c **** break; - 6452 .loc 1 3083 15 is_stmt 0 view .LVU2023 - 6453 004e 2046 mov r0, r4 - 6454 0050 FFF7FEFF bl HAL_ADC_GetValue - 6455 .LVL591: -3083:Src/main.c **** break; - 6456 .loc 1 3083 13 discriminator 1 view .LVU2024 - 6457 0054 80B2 uxth r0, r0 - 6458 .LVL592: -3084:Src/main.c **** case 5: - 6459 .loc 1 3084 4 is_stmt 1 view .LVU2025 - 6460 0056 E0E7 b .L307 - 6461 .LVL593: - 6462 .L308: -3086:Src/main.c **** break; - 6463 .loc 1 3086 9 view .LVU2026 - 6464 0058 0448 ldr r0, .L317+4 - 6465 .LVL594: -3086:Src/main.c **** break; - 6466 .loc 1 3086 9 is_stmt 0 view .LVU2027 - 6467 005a FFF7FEFF bl HAL_ADC_Stop - 6468 .LVL595: -3087:Src/main.c **** } - 6469 .loc 1 3087 4 is_stmt 1 view .LVU2028 - 6470 005e 2046 mov r0, r4 - 6471 0060 DBE7 b .L307 - 6472 .LVL596: - 6473 .L315: -3066:Src/main.c **** { - 6474 .loc 1 3066 2 is_stmt 0 view .LVU2029 - 6475 0062 2046 mov r0, r4 - 6476 .LVL597: -3066:Src/main.c **** { - 6477 .loc 1 3066 2 view .LVU2030 - 6478 0064 D9E7 b .L307 - 6479 .L318: - 6480 0066 00BF .align 2 - 6481 .L317: - ARM GAS /tmp/ccwR4KB7.s page 491 - - - 6482 0068 00000000 .word hadc1 - 6483 006c 00000000 .word hadc3 - 6484 .cfi_endproc - 6485 .LFE1222: - 6487 .section .text.Set_LTEC,"ax",%progbits - 6488 .align 1 - 6489 .global Set_LTEC - 6490 .syntax unified - 6491 .thumb - 6492 .thumb_func - 6494 Set_LTEC: - 6495 .LVL598: - 6496 .LFB1220: -2884:Src/main.c **** uint32_t tmp32; - 6497 .loc 1 2884 1 is_stmt 1 view -0 - 6498 .cfi_startproc - 6499 @ args = 0, pretend = 0, frame = 0 - 6500 @ frame_needed = 0, uses_anonymous_args = 0 -2885:Src/main.c **** - 6501 .loc 1 2885 2 view .LVU2032 -2889:Src/main.c **** { - 6502 .loc 1 2889 2 view .LVU2033 -2889:Src/main.c **** { - 6503 .loc 1 2889 5 is_stmt 0 view .LVU2034 - 6504 0000 0328 cmp r0, #3 - 6505 0002 18BF it ne - 6506 0004 0128 cmpne r0, #1 - 6507 0006 00F0A380 beq .L353 -2884:Src/main.c **** uint32_t tmp32; - 6508 .loc 1 2884 1 view .LVU2035 - 6509 000a 38B5 push {r3, r4, r5, lr} - 6510 .LCFI64: - 6511 .cfi_def_cfa_offset 16 - 6512 .cfi_offset 3, -16 - 6513 .cfi_offset 4, -12 - 6514 .cfi_offset 5, -8 - 6515 .cfi_offset 14, -4 - 6516 000c 0C46 mov r4, r1 -2895:Src/main.c **** { - 6517 .loc 1 2895 2 is_stmt 1 view .LVU2036 - 6518 000e 0138 subs r0, r0, #1 - 6519 .LVL599: -2895:Src/main.c **** { - 6520 .loc 1 2895 2 is_stmt 0 view .LVU2037 - 6521 0010 0328 cmp r0, #3 - 6522 0012 23D8 bhi .L321 - 6523 0014 DFE800F0 tbb [pc, r0] - 6524 .L323: - 6525 0018 02 .byte (.L326-.L323)/2 - 6526 0019 3B .byte (.L325-.L323)/2 - 6527 001a 5B .byte (.L324-.L323)/2 - 6528 001b 7C .byte (.L322-.L323)/2 - 6529 .p2align 1 - 6530 .L326: -2898:Src/main.c **** //tmp32=0; - 6531 .loc 1 2898 4 is_stmt 1 view .LVU2038 - 6532 001c 0022 movs r2, #0 - ARM GAS /tmp/ccwR4KB7.s page 492 - - - 6533 001e 4FF48041 mov r1, #16384 - 6534 .LVL600: -2898:Src/main.c **** //tmp32=0; - 6535 .loc 1 2898 4 is_stmt 0 view .LVU2039 - 6536 0022 4C48 ldr r0, .L356 - 6537 .LVL601: -2898:Src/main.c **** //tmp32=0; - 6538 .loc 1 2898 4 view .LVU2040 - 6539 0024 FFF7FEFF bl HAL_GPIO_WritePin - 6540 .LVL602: -2901:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6541 .loc 1 2901 4 is_stmt 1 view .LVU2041 -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6542 .loc 1 2902 4 view .LVU2042 -2901:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6543 .loc 1 2901 10 is_stmt 0 view .LVU2043 - 6544 0028 0022 movs r2, #0 - 6545 .LVL603: - 6546 .L327: -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6547 .loc 1 2902 42 is_stmt 1 discriminator 1 view .LVU2044 - 6548 .LBB566: - 6549 .LBI566: - 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6550 .loc 4 916 26 view .LVU2045 - 6551 .LBB567: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6552 .loc 4 918 3 view .LVU2046 - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6553 .loc 4 918 12 is_stmt 0 view .LVU2047 - 6554 002a 4B4B ldr r3, .L356+4 - 6555 002c 9B68 ldr r3, [r3, #8] - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6556 .loc 4 918 66 view .LVU2048 - 6557 002e 13F0020F tst r3, #2 - 6558 0032 04D1 bne .L328 - 6559 .LVL604: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6560 .loc 4 918 66 view .LVU2049 - 6561 .LBE567: - 6562 .LBE566: -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6563 .loc 1 2902 42 discriminator 2 view .LVU2050 - 6564 0034 B2F5FA7F cmp r2, #500 - 6565 0038 01D8 bhi .L328 -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6566 .loc 1 2902 59 is_stmt 1 discriminator 3 view .LVU2051 -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6567 .loc 1 2902 64 is_stmt 0 discriminator 3 view .LVU2052 - 6568 003a 0132 adds r2, r2, #1 - 6569 .LVL605: -2902:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6570 .loc 1 2902 64 discriminator 3 view .LVU2053 - 6571 003c F5E7 b .L327 - 6572 .L328: -2903:Src/main.c **** tmp32 = 0; - 6573 .loc 1 2903 4 is_stmt 1 view .LVU2054 - ARM GAS /tmp/ccwR4KB7.s page 493 - - - 6574 .LVL606: - 6575 .LBB568: - 6576 .LBI568: -1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6577 .loc 4 1373 22 view .LVU2055 - 6578 .LBB569: -1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 6579 .loc 4 1376 3 view .LVU2056 - 6580 .loc 4 1377 3 view .LVU2057 - 6581 .loc 4 1377 10 is_stmt 0 view .LVU2058 - 6582 003e 464B ldr r3, .L356+4 - 6583 0040 9C81 strh r4, [r3, #12] @ movhi - 6584 .LVL607: - 6585 .loc 4 1377 10 view .LVU2059 - 6586 .LBE569: - 6587 .LBE568: -2904:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6588 .loc 1 2904 4 is_stmt 1 view .LVU2060 -2905:Src/main.c **** (void) SPI2->DR; - 6589 .loc 1 2905 4 view .LVU2061 -2904:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6590 .loc 1 2904 10 is_stmt 0 view .LVU2062 - 6591 0042 0022 movs r2, #0 - 6592 .LVL608: - 6593 .L330: -2905:Src/main.c **** (void) SPI2->DR; - 6594 .loc 1 2905 43 is_stmt 1 discriminator 1 view .LVU2063 - 6595 .LBB570: - 6596 .LBI570: - 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6597 .loc 4 905 26 view .LVU2064 - 6598 .LBB571: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6599 .loc 4 907 3 view .LVU2065 - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6600 .loc 4 907 12 is_stmt 0 view .LVU2066 - 6601 0044 444B ldr r3, .L356+4 - 6602 0046 9B68 ldr r3, [r3, #8] - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6603 .loc 4 907 68 view .LVU2067 - 6604 0048 13F0010F tst r3, #1 - 6605 004c 04D1 bne .L331 - 6606 .LVL609: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6607 .loc 4 907 68 view .LVU2068 - 6608 .LBE571: - 6609 .LBE570: -2905:Src/main.c **** (void) SPI2->DR; - 6610 .loc 1 2905 43 discriminator 2 view .LVU2069 - 6611 004e B2F5FA7F cmp r2, #500 - 6612 0052 01D8 bhi .L331 -2905:Src/main.c **** (void) SPI2->DR; - 6613 .loc 1 2905 60 is_stmt 1 discriminator 3 view .LVU2070 -2905:Src/main.c **** (void) SPI2->DR; - 6614 .loc 1 2905 65 is_stmt 0 discriminator 3 view .LVU2071 - 6615 0054 0132 adds r2, r2, #1 - 6616 .LVL610: - ARM GAS /tmp/ccwR4KB7.s page 494 - - -2905:Src/main.c **** (void) SPI2->DR; - 6617 .loc 1 2905 65 discriminator 3 view .LVU2072 - 6618 0056 F5E7 b .L330 - 6619 .L331: -2906:Src/main.c **** break; - 6620 .loc 1 2906 4 is_stmt 1 view .LVU2073 - 6621 0058 3F4B ldr r3, .L356+4 - 6622 005a DB68 ldr r3, [r3, #12] -2907:Src/main.c **** case 2: - 6623 .loc 1 2907 3 view .LVU2074 - 6624 .LVL611: - 6625 .L321: -2943:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 - 6626 .loc 1 2943 2 view .LVU2075 - 6627 005c 3D4D ldr r5, .L356 - 6628 005e 0122 movs r2, #1 - 6629 0060 4FF48041 mov r1, #16384 - 6630 0064 2846 mov r0, r5 - 6631 0066 FFF7FEFF bl HAL_GPIO_WritePin - 6632 .LVL612: -2944:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 - 6633 .loc 1 2944 2 view .LVU2076 - 6634 006a 3C4C ldr r4, .L356+8 - 6635 .LVL613: -2944:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 - 6636 .loc 1 2944 2 is_stmt 0 view .LVU2077 - 6637 006c 0122 movs r2, #1 - 6638 006e 4021 movs r1, #64 - 6639 0070 2046 mov r0, r4 - 6640 0072 FFF7FEFF bl HAL_GPIO_WritePin - 6641 .LVL614: -2945:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 - 6642 .loc 1 2945 2 is_stmt 1 view .LVU2078 - 6643 0076 0122 movs r2, #1 - 6644 0078 4FF48051 mov r1, #4096 - 6645 007c 2846 mov r0, r5 - 6646 007e FFF7FEFF bl HAL_GPIO_WritePin - 6647 .LVL615: -2946:Src/main.c **** } - 6648 .loc 1 2946 2 view .LVU2079 - 6649 0082 0122 movs r2, #1 - 6650 0084 1021 movs r1, #16 - 6651 0086 2046 mov r0, r4 - 6652 0088 FFF7FEFF bl HAL_GPIO_WritePin - 6653 .LVL616: -2947:Src/main.c **** static uint16_t MPhD_T(uint8_t num) - 6654 .loc 1 2947 1 is_stmt 0 view .LVU2080 - 6655 008c 38BD pop {r3, r4, r5, pc} + 6649 01b0 FFF7FEFF bl HAL_GPIO_WritePin + 6650 .LVL616: +2317:Src/main.c **** // for (uint16_t i = 0; i < SD_Length; i++) + 6651 .loc 1 2317 2 view .LVU2098 + 6652 01b4 2246 mov r2, r4 + 6653 01b6 2021 movs r1, #32 + 6654 01b8 3046 mov r0, r6 + 6655 01ba FFF7FEFF bl HAL_GPIO_WritePin 6656 .LVL617: - 6657 .L325: -2910:Src/main.c **** //tmp32=0; - 6658 .loc 1 2910 4 is_stmt 1 view .LVU2081 - 6659 008e 0022 movs r2, #0 - 6660 0090 4021 movs r1, #64 - 6661 .LVL618: -2910:Src/main.c **** //tmp32=0; - 6662 .loc 1 2910 4 is_stmt 0 view .LVU2082 - ARM GAS /tmp/ccwR4KB7.s page 495 +2327:Src/main.c **** HAL_GPIO_WritePin(ADC_MPD2_CS_GPIO_Port, ADC_MPD2_CS_Pin, GPIO_PIN_SET);//Enable SPI for MPhD2 ADC + 6657 .loc 1 2327 2 view .LVU2099 + 6658 01be 06F50066 add r6, r6, #2048 + 6659 01c2 0122 movs r2, #1 + 6660 01c4 4FF48061 mov r1, #1024 + 6661 01c8 3046 mov r0, r6 + 6662 01ca FFF7FEFF bl HAL_GPIO_WritePin + 6663 .LVL618: +2328:Src/main.c **** HAL_GPIO_WritePin(SPI4_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); + 6664 .loc 1 2328 2 view .LVU2100 + 6665 01ce 494C ldr r4, .L329+112 + 6666 01d0 0122 movs r2, #1 + 6667 01d2 4021 movs r1, #64 + 6668 01d4 2046 mov r0, r4 + 6669 01d6 FFF7FEFF bl HAL_GPIO_WritePin + 6670 .LVL619: +2329:Src/main.c **** HAL_GPIO_WritePin(SPI5_CNV_GPIO_Port, SPI4_CNV_Pin, GPIO_PIN_SET); + 6671 .loc 1 2329 2 view .LVU2101 + 6672 01da 0122 movs r2, #1 + 6673 01dc 4FF48041 mov r1, #16384 + 6674 01e0 3046 mov r0, r6 + 6675 01e2 FFF7FEFF bl HAL_GPIO_WritePin + 6676 .LVL620: +2330:Src/main.c **** HAL_GPIO_WritePin(DAC_LD1_CS_GPIO_Port, DAC_LD1_CS_Pin, GPIO_PIN_SET);//End operation with LDAC1 + 6677 .loc 1 2330 2 view .LVU2102 + 6678 01e6 0122 movs r2, #1 + 6679 01e8 4FF48041 mov r1, #16384 + 6680 01ec 2046 mov r0, r4 + 6681 01ee FFF7FEFF bl HAL_GPIO_WritePin + 6682 .LVL621: +2331:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 + 6683 .loc 1 2331 2 view .LVU2103 + 6684 01f2 0122 movs r2, #1 + 6685 01f4 4FF48041 mov r1, #16384 + 6686 01f8 4046 mov r0, r8 + 6687 01fa FFF7FEFF bl HAL_GPIO_WritePin + 6688 .LVL622: +2332:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 + 6689 .loc 1 2332 2 view .LVU2104 + 6690 01fe 0122 movs r2, #1 + 6691 0200 4021 movs r1, #64 + 6692 0202 2846 mov r0, r5 + 6693 0204 FFF7FEFF bl HAL_GPIO_WritePin + 6694 .LVL623: +2333:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 + 6695 .loc 1 2333 2 view .LVU2105 + 6696 0208 0122 movs r2, #1 + 6697 020a 4FF48051 mov r1, #4096 + ARM GAS /tmp/ccEQxcUB.s page 501 - 6663 0092 3248 ldr r0, .L356+8 - 6664 0094 FFF7FEFF bl HAL_GPIO_WritePin - 6665 .LVL619: -2913:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6666 .loc 1 2913 4 is_stmt 1 view .LVU2083 -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6667 .loc 1 2914 4 view .LVU2084 -2913:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6668 .loc 1 2913 10 is_stmt 0 view .LVU2085 - 6669 0098 0022 movs r2, #0 - 6670 .LVL620: - 6671 .L333: -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6672 .loc 1 2914 42 is_stmt 1 discriminator 1 view .LVU2086 - 6673 .LBB572: - 6674 .LBI572: + 6698 020e 3846 mov r0, r7 + 6699 0210 FFF7FEFF bl HAL_GPIO_WritePin + 6700 .LVL624: +2334:Src/main.c **** + 6701 .loc 1 2334 2 view .LVU2106 + 6702 0214 0122 movs r2, #1 + 6703 0216 1021 movs r1, #16 + 6704 0218 2846 mov r0, r5 + 6705 021a FFF7FEFF bl HAL_GPIO_WritePin + 6706 .LVL625: +2338:Src/main.c **** { + 6707 .loc 1 2338 2 view .LVU2107 +2338:Src/main.c **** { + 6708 .loc 1 2338 6 is_stmt 0 view .LVU2108 + 6709 021e 0121 movs r1, #1 + 6710 0220 3846 mov r0, r7 + 6711 0222 FFF7FEFF bl HAL_GPIO_ReadPin + 6712 .LVL626: +2338:Src/main.c **** { + 6713 .loc 1 2338 5 discriminator 1 view .LVU2109 + 6714 0226 50B1 cbz r0, .L327 + 6715 .L323: +2369:Src/main.c **** } + 6716 .loc 1 2369 2 is_stmt 1 view .LVU2110 + 6717 0228 FFF7FEFF bl AD9102_Init + 6718 .LVL627: +2370:Src/main.c **** static void Decode_uart(uint16_t *Command, LDx_SetupTypeDef *LD1_curr_setup, LDx_SetupTypeDef *LD2_ + 6719 .loc 1 2370 1 is_stmt 0 view .LVU2111 + 6720 022c BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 6721 .LVL628: + 6722 .L326: + 6723 .LBB601: + 6724 .LBB600: +1430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->PAR, + 6725 .loc 6 1430 5 is_stmt 1 view .LVU2112 + 6726 0230 284B ldr r3, .L329+80 + 6727 .LVL629: +1430:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->PAR, + 6728 .loc 6 1430 5 is_stmt 0 view .LVU2113 + 6729 0232 C3F8C420 str r2, [r3, #196] +1431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + 6730 .loc 6 1431 5 is_stmt 1 view .LVU2114 + 6731 0236 294A ldr r2, .L329+88 + 6732 0238 C3F8C020 str r2, [r3, #192] + 6733 023c 80E7 b .L322 + 6734 .LVL630: + 6735 .L327: +1431:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + 6736 .loc 6 1431 5 is_stmt 0 view .LVU2115 + 6737 .LBE600: + 6738 .LBE601: +2341:Src/main.c **** { + 6739 .loc 1 2341 3 is_stmt 1 view .LVU2116 +2341:Src/main.c **** { + 6740 .loc 1 2341 7 is_stmt 0 view .LVU2117 + 6741 023e 4FF48071 mov r1, #256 + 6742 0242 2846 mov r0, r5 + ARM GAS /tmp/ccEQxcUB.s page 502 + + + 6743 0244 FFF7FEFF bl HAL_GPIO_ReadPin + 6744 .LVL631: +2341:Src/main.c **** { + 6745 .loc 1 2341 6 discriminator 1 view .LVU2118 + 6746 0248 0028 cmp r0, #0 + 6747 024a EDD1 bne .L323 +2344:Src/main.c **** if (test == 0) //0 - suc + 6748 .loc 1 2344 4 is_stmt 1 view .LVU2119 +2344:Src/main.c **** if (test == 0) //0 - suc + 6749 .loc 1 2344 11 is_stmt 0 view .LVU2120 + 6750 024c 2A48 ldr r0, .L329+116 + 6751 024e FFF7FEFF bl Mount_SD + 6752 .LVL632: +2344:Src/main.c **** if (test == 0) //0 - suc + 6753 .loc 1 2344 9 discriminator 1 view .LVU2121 + 6754 0252 2A4B ldr r3, .L329+120 + 6755 0254 1860 str r0, [r3] +2345:Src/main.c **** { + 6756 .loc 1 2345 4 is_stmt 1 view .LVU2122 +2345:Src/main.c **** { + 6757 .loc 1 2345 7 is_stmt 0 view .LVU2123 + 6758 0256 18B1 cbz r0, .L328 + 6759 .L324: +2357:Src/main.c **** } + 6760 .loc 1 2357 4 is_stmt 1 view .LVU2124 +2357:Src/main.c **** } + 6761 .loc 1 2357 14 is_stmt 0 view .LVU2125 + 6762 0258 294B ldr r3, .L329+124 + 6763 025a 0122 movs r2, #1 + 6764 025c 1A70 strb r2, [r3] + 6765 025e E3E7 b .L323 + 6766 .L328: +2348:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 6767 .loc 1 2348 5 is_stmt 1 view .LVU2126 +2348:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 6768 .loc 1 2348 12 is_stmt 0 view .LVU2127 + 6769 0260 1E23 movs r3, #30 + 6770 0262 1A46 mov r2, r3 + 6771 0264 2749 ldr r1, .L329+128 + 6772 0266 2848 ldr r0, .L329+132 + 6773 0268 FFF7FEFF bl Seek_Read_File + 6774 .LVL633: +2348:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 6775 .loc 1 2348 10 discriminator 1 view .LVU2128 + 6776 026c 234C ldr r4, .L329+120 + 6777 026e 2060 str r0, [r4] +2349:Src/main.c **** UART_rec_incr = 0; + 6778 .loc 1 2349 5 is_stmt 1 view .LVU2129 +2349:Src/main.c **** UART_rec_incr = 0; + 6779 .loc 1 2349 12 is_stmt 0 view .LVU2130 + 6780 0270 2148 ldr r0, .L329+116 + 6781 0272 FFF7FEFF bl Unmount_SD + 6782 .LVL634: +2349:Src/main.c **** UART_rec_incr = 0; + 6783 .loc 1 2349 10 discriminator 1 view .LVU2131 + 6784 0276 2060 str r0, [r4] +2350:Src/main.c **** flg_tmt = 0;//Reset the timeout flag + ARM GAS /tmp/ccEQxcUB.s page 503 + + + 6785 .loc 1 2350 5 is_stmt 1 view .LVU2132 +2350:Src/main.c **** flg_tmt = 0;//Reset the timeout flag + 6786 .loc 1 2350 19 is_stmt 0 view .LVU2133 + 6787 0278 0023 movs r3, #0 + 6788 027a 084A ldr r2, .L329+24 + 6789 027c 1380 strh r3, [r2] @ movhi +2351:Src/main.c **** } + 6790 .loc 1 2351 5 is_stmt 1 view .LVU2134 +2351:Src/main.c **** } + 6791 .loc 1 2351 13 is_stmt 0 view .LVU2135 + 6792 027e 064A ldr r2, .L329+20 + 6793 0280 1370 strb r3, [r2] + 6794 0282 E9E7 b .L324 + 6795 .L330: + 6796 .align 2 + 6797 .L329: + 6798 0284 00000000 .word TO6 + 6799 0288 00000000 .word TO7 + 6800 028c 00000000 .word TO7_before + 6801 0290 00000000 .word TO6_before + 6802 0294 00000000 .word TO6_uart + 6803 0298 00000000 .word flg_tmt + 6804 029c 00000000 .word UART_rec_incr + 6805 02a0 00000000 .word fgoto + 6806 02a4 00000000 .word sizeoffile + 6807 02a8 00000000 .word u_tx_flg + 6808 02ac 00000000 .word u_rx_flg + 6809 02b0 00000000 .word Long_Data + 6810 02b4 00000000 .word Def_setup + 6811 02b8 00000000 .word LD1_def_setup + 6812 02bc 00000000 .word LD2_def_setup + 6813 02c0 00000000 .word Curr_setup + 6814 02c4 00000000 .word LD1_curr_setup + 6815 02c8 00000000 .word LD2_curr_setup + 6816 02cc 00100040 .word 1073745920 + 6817 02d0 00100140 .word 1073811456 + 6818 02d4 00640240 .word 1073898496 + 6819 02d8 00000000 .word UART_DATA + 6820 02dc 28100140 .word 1073811496 + 6821 02e0 00000000 .word SD_SEEK + 6822 02e4 00000000 .word SD_SLIDE + 6823 02e8 00080240 .word 1073874944 + 6824 02ec 000C0240 .word 1073875968 + 6825 02f0 00000240 .word 1073872896 + 6826 02f4 00140240 .word 1073878016 + 6827 02f8 00000000 .word .LC0 + 6828 02fc 00000000 .word test + 6829 0300 00000000 .word CPU_state + 6830 0304 00000000 .word COMMAND + 6831 0308 04000000 .word .LC1 + 6832 030c 00040240 .word 1073873920 + 6833 .cfi_endproc + 6834 .LFE1208: + 6836 .section .text.DS1809_Pulse,"ax",%progbits + 6837 .align 1 + 6838 .syntax unified + 6839 .thumb + ARM GAS /tmp/ccEQxcUB.s page 504 + + + 6840 .thumb_func + 6842 DS1809_Pulse: + 6843 .LVL635: + 6844 .LFB1216: +2700:Src/main.c **** for (uint16_t i = 0; i < count; i++) + 6845 .loc 1 2700 1 is_stmt 1 view -0 + 6846 .cfi_startproc + 6847 @ args = 0, pretend = 0, frame = 0 + 6848 @ frame_needed = 0, uses_anonymous_args = 0 +2700:Src/main.c **** for (uint16_t i = 0; i < count; i++) + 6849 .loc 1 2700 1 is_stmt 0 view .LVU2137 + 6850 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 6851 .LCFI65: + 6852 .cfi_def_cfa_offset 24 + 6853 .cfi_offset 4, -24 + 6854 .cfi_offset 5, -20 + 6855 .cfi_offset 6, -16 + 6856 .cfi_offset 7, -12 + 6857 .cfi_offset 8, -8 + 6858 .cfi_offset 14, -4 + 6859 0004 0746 mov r7, r0 + 6860 0006 0E46 mov r6, r1 + 6861 0008 9046 mov r8, r2 + 6862 000a 1D46 mov r5, r3 +2701:Src/main.c **** { + 6863 .loc 1 2701 2 is_stmt 1 view .LVU2138 + 6864 .LBB602: +2701:Src/main.c **** { + 6865 .loc 1 2701 7 view .LVU2139 + 6866 .LVL636: +2701:Src/main.c **** { + 6867 .loc 1 2701 16 is_stmt 0 view .LVU2140 + 6868 000c 0024 movs r4, #0 +2701:Src/main.c **** { + 6869 .loc 1 2701 2 view .LVU2141 + 6870 000e 16E0 b .L332 + 6871 .LVL637: + 6872 .L340: +2705:Src/main.c **** } + 6873 .loc 1 2705 4 is_stmt 1 view .LVU2142 + 6874 0010 0022 movs r2, #0 + 6875 0012 0421 movs r1, #4 + 6876 0014 1448 ldr r0, .L343 + 6877 0016 FFF7FEFF bl HAL_GPIO_WritePin + 6878 .LVL638: + 6879 001a 14E0 b .L333 + 6880 .L341: +2709:Src/main.c **** } + 6881 .loc 1 2709 4 view .LVU2143 + 6882 001c 0022 movs r2, #0 + 6883 001e 0821 movs r1, #8 + 6884 0020 1148 ldr r0, .L343 + 6885 0022 FFF7FEFF bl HAL_GPIO_WritePin + 6886 .LVL639: + 6887 0026 10E0 b .L334 + 6888 .L342: +2714:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 505 + + + 6889 .loc 1 2714 4 view .LVU2144 + 6890 0028 0122 movs r2, #1 + 6891 002a 0421 movs r1, #4 + 6892 002c 0E48 ldr r0, .L343 + 6893 002e FFF7FEFF bl HAL_GPIO_WritePin + 6894 .LVL640: + 6895 0032 0FE0 b .L335 + 6896 .L336: +2720:Src/main.c **** } + 6897 .loc 1 2720 3 view .LVU2145 + 6898 0034 2846 mov r0, r5 + 6899 0036 FFF7FEFF bl HAL_Delay + 6900 .LVL641: +2701:Src/main.c **** { + 6901 .loc 1 2701 35 discriminator 2 view .LVU2146 + 6902 003a 0134 adds r4, r4, #1 + 6903 .LVL642: +2701:Src/main.c **** { + 6904 .loc 1 2701 35 is_stmt 0 discriminator 2 view .LVU2147 + 6905 003c A4B2 uxth r4, r4 + 6906 .LVL643: + 6907 .L332: +2701:Src/main.c **** { + 6908 .loc 1 2701 25 is_stmt 1 discriminator 1 view .LVU2148 + 6909 003e 4445 cmp r4, r8 + 6910 0040 10D2 bcs .L339 +2703:Src/main.c **** { + 6911 .loc 1 2703 3 view .LVU2149 +2703:Src/main.c **** { + 6912 .loc 1 2703 6 is_stmt 0 view .LVU2150 + 6913 0042 002F cmp r7, #0 + 6914 0044 E4D1 bne .L340 + 6915 .L333: +2707:Src/main.c **** { + 6916 .loc 1 2707 3 is_stmt 1 view .LVU2151 +2707:Src/main.c **** { + 6917 .loc 1 2707 6 is_stmt 0 view .LVU2152 + 6918 0046 002E cmp r6, #0 + 6919 0048 E8D1 bne .L341 + 6920 .L334: +2711:Src/main.c **** if (uc) + 6921 .loc 1 2711 3 is_stmt 1 view .LVU2153 + 6922 004a 2846 mov r0, r5 + 6923 004c FFF7FEFF bl HAL_Delay + 6924 .LVL644: +2712:Src/main.c **** { + 6925 .loc 1 2712 3 view .LVU2154 +2712:Src/main.c **** { + 6926 .loc 1 2712 6 is_stmt 0 view .LVU2155 + 6927 0050 002F cmp r7, #0 + 6928 0052 E9D1 bne .L342 + 6929 .L335: +2716:Src/main.c **** { + 6930 .loc 1 2716 3 is_stmt 1 view .LVU2156 +2716:Src/main.c **** { + 6931 .loc 1 2716 6 is_stmt 0 view .LVU2157 + 6932 0054 002E cmp r6, #0 + ARM GAS /tmp/ccEQxcUB.s page 506 + + + 6933 0056 EDD0 beq .L336 +2718:Src/main.c **** } + 6934 .loc 1 2718 4 is_stmt 1 view .LVU2158 + 6935 0058 0122 movs r2, #1 + 6936 005a 0821 movs r1, #8 + 6937 005c 0248 ldr r0, .L343 + 6938 005e FFF7FEFF bl HAL_GPIO_WritePin + 6939 .LVL645: + 6940 0062 E7E7 b .L336 + 6941 .L339: +2718:Src/main.c **** } + 6942 .loc 1 2718 4 is_stmt 0 view .LVU2159 + 6943 .LBE602: +2722:Src/main.c **** + 6944 .loc 1 2722 1 view .LVU2160 + 6945 0064 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 6946 .LVL646: + 6947 .L344: +2722:Src/main.c **** + 6948 .loc 1 2722 1 view .LVU2161 + 6949 .align 2 + 6950 .L343: + 6951 0068 00100240 .word 1073876992 + 6952 .cfi_endproc + 6953 .LFE1216: + 6955 .section .text.Get_ADC,"ax",%progbits + 6956 .align 1 + 6957 .syntax unified + 6958 .thumb + 6959 .thumb_func + 6961 Get_ADC: + 6962 .LVL647: + 6963 .LFB1227: +3362:Src/main.c **** uint16_t OUT; + 6964 .loc 1 3362 1 is_stmt 1 view -0 + 6965 .cfi_startproc + 6966 @ args = 0, pretend = 0, frame = 0 + 6967 @ frame_needed = 0, uses_anonymous_args = 0 +3362:Src/main.c **** uint16_t OUT; + 6968 .loc 1 3362 1 is_stmt 0 view .LVU2163 + 6969 0000 10B5 push {r4, lr} + 6970 .LCFI66: + 6971 .cfi_def_cfa_offset 8 + 6972 .cfi_offset 4, -8 + 6973 .cfi_offset 14, -4 + 6974 0002 0024 movs r4, #0 +3363:Src/main.c **** switch (num) + 6975 .loc 1 3363 2 is_stmt 1 view .LVU2164 +3364:Src/main.c **** { + 6976 .loc 1 3364 2 view .LVU2165 + 6977 0004 0528 cmp r0, #5 + 6978 0006 2CD8 bhi .L354 + 6979 0008 DFE800F0 tbb [pc, r0] + 6980 .L348: + 6981 000c 03 .byte (.L353-.L348)/2 + 6982 000d 08 .byte (.L352-.L348)/2 + 6983 000e 12 .byte (.L351-.L348)/2 + ARM GAS /tmp/ccEQxcUB.s page 507 + + + 6984 000f 17 .byte (.L350-.L348)/2 + 6985 0010 1C .byte (.L349-.L348)/2 + 6986 0011 26 .byte (.L347-.L348)/2 + 6987 .p2align 1 + 6988 .L353: +3367:Src/main.c **** break; + 6989 .loc 1 3367 5 view .LVU2166 + 6990 0012 1548 ldr r0, .L356 + 6991 .LVL648: +3367:Src/main.c **** break; + 6992 .loc 1 3367 5 is_stmt 0 view .LVU2167 + 6993 0014 FFF7FEFF bl HAL_ADC_Start + 6994 .LVL649: +3368:Src/main.c **** case 1: + 6995 .loc 1 3368 4 is_stmt 1 view .LVU2168 + 6996 0018 2046 mov r0, r4 + 6997 .L346: + 6998 .LVL650: +3387:Src/main.c **** } + 6999 .loc 1 3387 2 view .LVU2169 +3388:Src/main.c **** + 7000 .loc 1 3388 1 is_stmt 0 view .LVU2170 + 7001 001a 10BD pop {r4, pc} + 7002 .LVL651: + 7003 .L352: +3370:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc + 7004 .loc 1 3370 5 is_stmt 1 view .LVU2171 + 7005 001c 124C ldr r4, .L356 + 7006 001e 6421 movs r1, #100 + 7007 0020 2046 mov r0, r4 + 7008 .LVL652: +3370:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc1); // Get value adc + 7009 .loc 1 3370 5 is_stmt 0 view .LVU2172 + 7010 0022 FFF7FEFF bl HAL_ADC_PollForConversion + 7011 .LVL653: +3371:Src/main.c **** break; + 7012 .loc 1 3371 9 is_stmt 1 view .LVU2173 +3371:Src/main.c **** break; + 7013 .loc 1 3371 15 is_stmt 0 view .LVU2174 + 7014 0026 2046 mov r0, r4 + 7015 0028 FFF7FEFF bl HAL_ADC_GetValue + 7016 .LVL654: +3371:Src/main.c **** break; + 7017 .loc 1 3371 13 discriminator 1 view .LVU2175 + 7018 002c 80B2 uxth r0, r0 + 7019 .LVL655: +3372:Src/main.c **** case 2: + 7020 .loc 1 3372 4 is_stmt 1 view .LVU2176 + 7021 002e F4E7 b .L346 + 7022 .LVL656: + 7023 .L351: +3374:Src/main.c **** break; + 7024 .loc 1 3374 5 view .LVU2177 + 7025 0030 0D48 ldr r0, .L356 + 7026 .LVL657: +3374:Src/main.c **** break; + 7027 .loc 1 3374 5 is_stmt 0 view .LVU2178 + ARM GAS /tmp/ccEQxcUB.s page 508 + + + 7028 0032 FFF7FEFF bl HAL_ADC_Stop + 7029 .LVL658: +3375:Src/main.c **** case 3: + 7030 .loc 1 3375 4 is_stmt 1 view .LVU2179 + 7031 0036 2046 mov r0, r4 + 7032 0038 EFE7 b .L346 + 7033 .LVL659: + 7034 .L350: +3377:Src/main.c **** break; + 7035 .loc 1 3377 5 view .LVU2180 + 7036 003a 0C48 ldr r0, .L356+4 + 7037 .LVL660: +3377:Src/main.c **** break; + 7038 .loc 1 3377 5 is_stmt 0 view .LVU2181 + 7039 003c FFF7FEFF bl HAL_ADC_Start + 7040 .LVL661: +3378:Src/main.c **** case 4: + 7041 .loc 1 3378 4 is_stmt 1 view .LVU2182 + 7042 0040 2046 mov r0, r4 + 7043 0042 EAE7 b .L346 + 7044 .LVL662: + 7045 .L349: +3380:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc + 7046 .loc 1 3380 5 view .LVU2183 + 7047 0044 094C ldr r4, .L356+4 + 7048 0046 6421 movs r1, #100 + 7049 0048 2046 mov r0, r4 + 7050 .LVL663: +3380:Src/main.c **** OUT = HAL_ADC_GetValue(&hadc3); // Get value adc + 7051 .loc 1 3380 5 is_stmt 0 view .LVU2184 + 7052 004a FFF7FEFF bl HAL_ADC_PollForConversion + 7053 .LVL664: +3381:Src/main.c **** break; + 7054 .loc 1 3381 9 is_stmt 1 view .LVU2185 +3381:Src/main.c **** break; + 7055 .loc 1 3381 15 is_stmt 0 view .LVU2186 + 7056 004e 2046 mov r0, r4 + 7057 0050 FFF7FEFF bl HAL_ADC_GetValue + 7058 .LVL665: +3381:Src/main.c **** break; + 7059 .loc 1 3381 13 discriminator 1 view .LVU2187 + 7060 0054 80B2 uxth r0, r0 + 7061 .LVL666: +3382:Src/main.c **** case 5: + 7062 .loc 1 3382 4 is_stmt 1 view .LVU2188 + 7063 0056 E0E7 b .L346 + 7064 .LVL667: + 7065 .L347: +3384:Src/main.c **** break; + 7066 .loc 1 3384 9 view .LVU2189 + 7067 0058 0448 ldr r0, .L356+4 + 7068 .LVL668: +3384:Src/main.c **** break; + 7069 .loc 1 3384 9 is_stmt 0 view .LVU2190 + 7070 005a FFF7FEFF bl HAL_ADC_Stop + 7071 .LVL669: +3385:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 509 + + + 7072 .loc 1 3385 4 is_stmt 1 view .LVU2191 + 7073 005e 2046 mov r0, r4 + 7074 0060 DBE7 b .L346 + 7075 .LVL670: + 7076 .L354: +3364:Src/main.c **** { + 7077 .loc 1 3364 2 is_stmt 0 view .LVU2192 + 7078 0062 2046 mov r0, r4 + 7079 .LVL671: +3364:Src/main.c **** { + 7080 .loc 1 3364 2 view .LVU2193 + 7081 0064 D9E7 b .L346 + 7082 .L357: + 7083 0066 00BF .align 2 + 7084 .L356: + 7085 0068 00000000 .word hadc1 + 7086 006c 00000000 .word hadc3 + 7087 .cfi_endproc + 7088 .LFE1227: + 7090 .section .text.Set_LTEC,"ax",%progbits + 7091 .align 1 + 7092 .global Set_LTEC + 7093 .syntax unified + 7094 .thumb + 7095 .thumb_func + 7097 Set_LTEC: + 7098 .LVL672: + 7099 .LFB1225: +3184:Src/main.c **** uint32_t tmp32; + 7100 .loc 1 3184 1 is_stmt 1 view -0 + 7101 .cfi_startproc + 7102 @ args = 0, pretend = 0, frame = 0 + 7103 @ frame_needed = 0, uses_anonymous_args = 0 +3184:Src/main.c **** uint32_t tmp32; + 7104 .loc 1 3184 1 is_stmt 0 view .LVU2195 + 7105 0000 38B5 push {r3, r4, r5, lr} + 7106 .LCFI67: + 7107 .cfi_def_cfa_offset 16 + 7108 .cfi_offset 3, -16 + 7109 .cfi_offset 4, -12 + 7110 .cfi_offset 5, -8 + 7111 .cfi_offset 14, -4 + 7112 0002 0446 mov r4, r0 + 7113 0004 0D46 mov r5, r1 +3185:Src/main.c **** + 7114 .loc 1 3185 2 is_stmt 1 view .LVU2196 +3187:Src/main.c **** { + 7115 .loc 1 3187 2 view .LVU2197 +3187:Src/main.c **** { + 7116 .loc 1 3187 5 is_stmt 0 view .LVU2198 + 7117 0006 0328 cmp r0, #3 + 7118 0008 18BF it ne + 7119 000a 0128 cmpne r0, #1 + 7120 000c 06D0 beq .L392 + 7121 .LVL673: + 7122 .L359: +3193:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 510 + + + 7123 .loc 1 3193 2 is_stmt 1 view .LVU2199 + 7124 000e 013C subs r4, r4, #1 + 7125 .LVL674: +3193:Src/main.c **** { + 7126 .loc 1 3193 2 is_stmt 0 view .LVU2200 + 7127 0010 032C cmp r4, #3 + 7128 0012 2ED8 bhi .L360 + 7129 0014 DFE804F0 tbb [pc, r4] + 7130 .L362: + 7131 0018 0D .byte (.L365-.L362)/2 + 7132 0019 45 .byte (.L364-.L362)/2 + 7133 001a 65 .byte (.L363-.L362)/2 + 7134 001b 86 .byte (.L361-.L362)/2 + 7135 .LVL675: + 7136 .p2align 1 + 7137 .L392: +3189:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + 7138 .loc 1 3189 3 is_stmt 1 view .LVU2201 + 7139 001c 0121 movs r1, #1 + 7140 .LVL676: +3189:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + 7141 .loc 1 3189 3 is_stmt 0 view .LVU2202 + 7142 001e 0220 movs r0, #2 + 7143 .LVL677: +3189:Src/main.c **** HAL_GPIO_WritePin(AD9102_CS_GPIO_Port, AD9102_CS_Pin, GPIO_PIN_SET); + 7144 .loc 1 3189 3 view .LVU2203 + 7145 0020 FFF7FEFF bl SPI2_SetMode + 7146 .LVL678: +3190:Src/main.c **** } + 7147 .loc 1 3190 3 is_stmt 1 view .LVU2204 + 7148 0024 0122 movs r2, #1 + 7149 0026 4FF48051 mov r1, #4096 + 7150 002a 4E48 ldr r0, .L393 + 7151 002c FFF7FEFF bl HAL_GPIO_WritePin + 7152 .LVL679: + 7153 0030 EDE7 b .L359 + 7154 .LVL680: + 7155 .L365: +3196:Src/main.c **** //tmp32=0; + 7156 .loc 1 3196 4 view .LVU2205 + 7157 0032 0022 movs r2, #0 + 7158 0034 4FF48041 mov r1, #16384 + 7159 0038 4A48 ldr r0, .L393 + 7160 003a FFF7FEFF bl HAL_GPIO_WritePin + 7161 .LVL681: +3199:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7162 .loc 1 3199 4 view .LVU2206 +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7163 .loc 1 3200 4 view .LVU2207 +3199:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7164 .loc 1 3199 10 is_stmt 0 view .LVU2208 + 7165 003e 0022 movs r2, #0 + 7166 .LVL682: + 7167 .L366: +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7168 .loc 1 3200 42 is_stmt 1 discriminator 1 view .LVU2209 + 7169 .LBB603: + ARM GAS /tmp/ccEQxcUB.s page 511 + + + 7170 .LBI603: 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6675 .loc 4 916 26 view .LVU2087 - 6676 .LBB573: + 7171 .loc 4 916 26 view .LVU2210 + 7172 .LBB604: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6677 .loc 4 918 3 view .LVU2088 + 7173 .loc 4 918 3 view .LVU2211 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6678 .loc 4 918 12 is_stmt 0 view .LVU2089 - 6679 009a 314B ldr r3, .L356+12 - 6680 009c 9B68 ldr r3, [r3, #8] + 7174 .loc 4 918 12 is_stmt 0 view .LVU2212 + 7175 0040 494B ldr r3, .L393+4 + 7176 0042 9B68 ldr r3, [r3, #8] 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6681 .loc 4 918 66 view .LVU2090 - 6682 009e 13F0020F tst r3, #2 - 6683 00a2 04D1 bne .L334 - 6684 .LVL621: + 7177 .loc 4 918 66 view .LVU2213 + 7178 0044 13F0020F tst r3, #2 + 7179 0048 04D1 bne .L367 + 7180 .LVL683: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6685 .loc 4 918 66 view .LVU2091 - 6686 .LBE573: - 6687 .LBE572: -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6688 .loc 1 2914 42 discriminator 2 view .LVU2092 - 6689 00a4 B2F5FA7F cmp r2, #500 - 6690 00a8 01D8 bhi .L334 -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6691 .loc 1 2914 59 is_stmt 1 discriminator 3 view .LVU2093 -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6692 .loc 1 2914 64 is_stmt 0 discriminator 3 view .LVU2094 - 6693 00aa 0132 adds r2, r2, #1 - 6694 .LVL622: -2914:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6695 .loc 1 2914 64 discriminator 3 view .LVU2095 - 6696 00ac F5E7 b .L333 - 6697 .L334: -2915:Src/main.c **** tmp32 = 0; - 6698 .loc 1 2915 4 is_stmt 1 view .LVU2096 - 6699 .LVL623: - 6700 .LBB574: - 6701 .LBI574: + 7181 .loc 4 918 66 view .LVU2214 + 7182 .LBE604: + 7183 .LBE603: +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7184 .loc 1 3200 42 discriminator 2 view .LVU2215 + 7185 004a B2F5FA7F cmp r2, #500 + 7186 004e 01D8 bhi .L367 +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7187 .loc 1 3200 59 is_stmt 1 discriminator 3 view .LVU2216 +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7188 .loc 1 3200 64 is_stmt 0 discriminator 3 view .LVU2217 + 7189 0050 0132 adds r2, r2, #1 + 7190 .LVL684: +3200:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7191 .loc 1 3200 64 discriminator 3 view .LVU2218 + 7192 0052 F5E7 b .L366 + 7193 .L367: +3201:Src/main.c **** tmp32 = 0; + 7194 .loc 1 3201 4 is_stmt 1 view .LVU2219 + 7195 .LVL685: + 7196 .LBB605: + 7197 .LBI605: 1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6702 .loc 4 1373 22 view .LVU2097 - 6703 .LBB575: + 7198 .loc 4 1373 22 view .LVU2220 + 7199 .LBB606: 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - ARM GAS /tmp/ccwR4KB7.s page 496 + 7200 .loc 4 1376 3 view .LVU2221 + 7201 .loc 4 1377 3 view .LVU2222 + 7202 .loc 4 1377 10 is_stmt 0 view .LVU2223 + 7203 0054 444B ldr r3, .L393+4 + 7204 0056 9D81 strh r5, [r3, #12] @ movhi + 7205 .LVL686: + 7206 .loc 4 1377 10 view .LVU2224 + 7207 .LBE606: + 7208 .LBE605: +3202:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7209 .loc 1 3202 4 is_stmt 1 view .LVU2225 +3203:Src/main.c **** (void) SPI2->DR; + 7210 .loc 1 3203 4 view .LVU2226 +3202:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7211 .loc 1 3202 10 is_stmt 0 view .LVU2227 + ARM GAS /tmp/ccEQxcUB.s page 512 - 6704 .loc 4 1376 3 view .LVU2098 - 6705 .loc 4 1377 3 view .LVU2099 - 6706 .loc 4 1377 10 is_stmt 0 view .LVU2100 - 6707 00ae 2C4B ldr r3, .L356+12 - 6708 00b0 9C81 strh r4, [r3, #12] @ movhi - 6709 .LVL624: - 6710 .loc 4 1377 10 view .LVU2101 - 6711 .LBE575: - 6712 .LBE574: -2916:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6713 .loc 1 2916 4 is_stmt 1 view .LVU2102 -2917:Src/main.c **** (void) SPI6->DR; - 6714 .loc 1 2917 4 view .LVU2103 -2916:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6715 .loc 1 2916 10 is_stmt 0 view .LVU2104 - 6716 00b2 0022 movs r2, #0 - 6717 .LVL625: - 6718 .L336: -2917:Src/main.c **** (void) SPI6->DR; - 6719 .loc 1 2917 43 is_stmt 1 discriminator 1 view .LVU2105 - 6720 .LBB576: - 6721 .LBI576: + 7212 0058 0022 movs r2, #0 + 7213 .LVL687: + 7214 .L369: +3203:Src/main.c **** (void) SPI2->DR; + 7215 .loc 1 3203 43 is_stmt 1 discriminator 1 view .LVU2228 + 7216 .LBB607: + 7217 .LBI607: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6722 .loc 4 905 26 view .LVU2106 - 6723 .LBB577: + 7218 .loc 4 905 26 view .LVU2229 + 7219 .LBB608: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6724 .loc 4 907 3 view .LVU2107 + 7220 .loc 4 907 3 view .LVU2230 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6725 .loc 4 907 12 is_stmt 0 view .LVU2108 - 6726 00b4 2A4B ldr r3, .L356+12 - 6727 00b6 9B68 ldr r3, [r3, #8] + 7221 .loc 4 907 12 is_stmt 0 view .LVU2231 + 7222 005a 434B ldr r3, .L393+4 + 7223 005c 9B68 ldr r3, [r3, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6728 .loc 4 907 68 view .LVU2109 - 6729 00b8 13F0010F tst r3, #1 - 6730 00bc 04D1 bne .L337 - 6731 .LVL626: + 7224 .loc 4 907 68 view .LVU2232 + 7225 005e 13F0010F tst r3, #1 + 7226 0062 04D1 bne .L370 + 7227 .LVL688: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6732 .loc 4 907 68 view .LVU2110 - 6733 .LBE577: - 6734 .LBE576: -2917:Src/main.c **** (void) SPI6->DR; - 6735 .loc 1 2917 43 discriminator 2 view .LVU2111 - 6736 00be B2F5FA7F cmp r2, #500 - 6737 00c2 01D8 bhi .L337 -2917:Src/main.c **** (void) SPI6->DR; - 6738 .loc 1 2917 60 is_stmt 1 discriminator 3 view .LVU2112 -2917:Src/main.c **** (void) SPI6->DR; - 6739 .loc 1 2917 65 is_stmt 0 discriminator 3 view .LVU2113 - 6740 00c4 0132 adds r2, r2, #1 - 6741 .LVL627: -2917:Src/main.c **** (void) SPI6->DR; - 6742 .loc 1 2917 65 discriminator 3 view .LVU2114 - 6743 00c6 F5E7 b .L336 - 6744 .L337: -2918:Src/main.c **** break; - 6745 .loc 1 2918 4 is_stmt 1 view .LVU2115 - 6746 00c8 254B ldr r3, .L356+12 - ARM GAS /tmp/ccwR4KB7.s page 497 + 7228 .loc 4 907 68 view .LVU2233 + 7229 .LBE608: + 7230 .LBE607: +3203:Src/main.c **** (void) SPI2->DR; + 7231 .loc 1 3203 43 discriminator 2 view .LVU2234 + 7232 0064 B2F5FA7F cmp r2, #500 + 7233 0068 01D8 bhi .L370 +3203:Src/main.c **** (void) SPI2->DR; + 7234 .loc 1 3203 60 is_stmt 1 discriminator 3 view .LVU2235 +3203:Src/main.c **** (void) SPI2->DR; + 7235 .loc 1 3203 65 is_stmt 0 discriminator 3 view .LVU2236 + 7236 006a 0132 adds r2, r2, #1 + 7237 .LVL689: +3203:Src/main.c **** (void) SPI2->DR; + 7238 .loc 1 3203 65 discriminator 3 view .LVU2237 + 7239 006c F5E7 b .L369 + 7240 .L370: +3204:Src/main.c **** break; + 7241 .loc 1 3204 4 is_stmt 1 view .LVU2238 + 7242 006e 3E4B ldr r3, .L393+4 + 7243 0070 DB68 ldr r3, [r3, #12] +3205:Src/main.c **** case 2: + 7244 .loc 1 3205 3 view .LVU2239 + 7245 .LVL690: + 7246 .L360: +3241:Src/main.c **** HAL_GPIO_WritePin(DAC_LD2_CS_GPIO_Port, DAC_LD2_CS_Pin, GPIO_PIN_SET);//End operation with LDAC2 + 7247 .loc 1 3241 2 view .LVU2240 + 7248 0072 0122 movs r2, #1 + 7249 0074 4FF48041 mov r1, #16384 + 7250 0078 3A48 ldr r0, .L393 + 7251 007a FFF7FEFF bl HAL_GPIO_WritePin + 7252 .LVL691: +3242:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 + 7253 .loc 1 3242 2 view .LVU2241 + 7254 007e 3B4C ldr r4, .L393+8 + ARM GAS /tmp/ccEQxcUB.s page 513 - 6747 00ca DB68 ldr r3, [r3, #12] -2919:Src/main.c **** case 3: - 6748 .loc 1 2919 3 view .LVU2116 - 6749 00cc C6E7 b .L321 - 6750 .LVL628: - 6751 .L324: -2921:Src/main.c **** //tmp32=0; - 6752 .loc 1 2921 4 view .LVU2117 - 6753 00ce 0022 movs r2, #0 - 6754 00d0 4FF48051 mov r1, #4096 - 6755 .LVL629: -2921:Src/main.c **** //tmp32=0; - 6756 .loc 1 2921 4 is_stmt 0 view .LVU2118 - 6757 00d4 1F48 ldr r0, .L356 - 6758 00d6 FFF7FEFF bl HAL_GPIO_WritePin - 6759 .LVL630: -2924:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6760 .loc 1 2924 4 is_stmt 1 view .LVU2119 -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6761 .loc 1 2925 4 view .LVU2120 -2924:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6762 .loc 1 2924 10 is_stmt 0 view .LVU2121 - 6763 00da 0022 movs r2, #0 - 6764 .LVL631: - 6765 .L339: -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6766 .loc 1 2925 42 is_stmt 1 discriminator 1 view .LVU2122 - 6767 .LBB578: - 6768 .LBI578: + 7255 .LVL692: +3242:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC1_CS_GPIO_Port, DAC_TEC1_CS_Pin, GPIO_PIN_SET);//End operation with TEC1 + 7256 .loc 1 3242 2 is_stmt 0 view .LVU2242 + 7257 0080 0122 movs r2, #1 + 7258 0082 4021 movs r1, #64 + 7259 0084 2046 mov r0, r4 + 7260 0086 FFF7FEFF bl HAL_GPIO_WritePin + 7261 .LVL693: +3243:Src/main.c **** HAL_GPIO_WritePin(DAC_TEC2_CS_GPIO_Port, DAC_TEC2_CS_Pin, GPIO_PIN_SET);//End operation with TEC2 + 7262 .loc 1 3243 2 is_stmt 1 view .LVU2243 + 7263 008a 0122 movs r2, #1 + 7264 008c 4FF48051 mov r1, #4096 + 7265 0090 3748 ldr r0, .L393+12 + 7266 0092 FFF7FEFF bl HAL_GPIO_WritePin + 7267 .LVL694: +3244:Src/main.c **** } + 7268 .loc 1 3244 2 view .LVU2244 + 7269 0096 0122 movs r2, #1 + 7270 0098 1021 movs r1, #16 + 7271 009a 2046 mov r0, r4 + 7272 009c FFF7FEFF bl HAL_GPIO_WritePin + 7273 .LVL695: +3245:Src/main.c **** static uint16_t MPhD_T(uint8_t num) + 7274 .loc 1 3245 1 is_stmt 0 view .LVU2245 + 7275 00a0 38BD pop {r3, r4, r5, pc} + 7276 .LVL696: + 7277 .L364: +3208:Src/main.c **** //tmp32=0; + 7278 .loc 1 3208 4 is_stmt 1 view .LVU2246 + 7279 00a2 0022 movs r2, #0 + 7280 00a4 4021 movs r1, #64 + 7281 00a6 3148 ldr r0, .L393+8 + 7282 00a8 FFF7FEFF bl HAL_GPIO_WritePin + 7283 .LVL697: +3211:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7284 .loc 1 3211 4 view .LVU2247 +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7285 .loc 1 3212 4 view .LVU2248 +3211:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7286 .loc 1 3211 10 is_stmt 0 view .LVU2249 + 7287 00ac 0022 movs r2, #0 + 7288 .LVL698: + 7289 .L372: +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7290 .loc 1 3212 42 is_stmt 1 discriminator 1 view .LVU2250 + 7291 .LBB609: + 7292 .LBI609: 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6769 .loc 4 916 26 view .LVU2123 - 6770 .LBB579: + 7293 .loc 4 916 26 view .LVU2251 + 7294 .LBB610: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6771 .loc 4 918 3 view .LVU2124 + 7295 .loc 4 918 3 view .LVU2252 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6772 .loc 4 918 12 is_stmt 0 view .LVU2125 - 6773 00dc 1E4B ldr r3, .L356+4 - 6774 00de 9B68 ldr r3, [r3, #8] + 7296 .loc 4 918 12 is_stmt 0 view .LVU2253 + 7297 00ae 314B ldr r3, .L393+16 + 7298 00b0 9B68 ldr r3, [r3, #8] 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6775 .loc 4 918 66 view .LVU2126 - 6776 00e0 13F0020F tst r3, #2 - 6777 00e4 04D1 bne .L340 - 6778 .LVL632: - 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6779 .loc 4 918 66 view .LVU2127 - 6780 .LBE579: - 6781 .LBE578: -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6782 .loc 1 2925 42 discriminator 2 view .LVU2128 - 6783 00e6 B2F5FA7F cmp r2, #500 - 6784 00ea 01D8 bhi .L340 -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6785 .loc 1 2925 59 is_stmt 1 discriminator 3 view .LVU2129 -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6786 .loc 1 2925 64 is_stmt 0 discriminator 3 view .LVU2130 - 6787 00ec 0132 adds r2, r2, #1 - 6788 .LVL633: - ARM GAS /tmp/ccwR4KB7.s page 498 + ARM GAS /tmp/ccEQxcUB.s page 514 -2925:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC - 6789 .loc 1 2925 64 discriminator 3 view .LVU2131 - 6790 00ee F5E7 b .L339 - 6791 .L340: -2926:Src/main.c **** tmp32 = 0; - 6792 .loc 1 2926 4 is_stmt 1 view .LVU2132 - 6793 .LVL634: - 6794 .LBB580: - 6795 .LBI580: + 7299 .loc 4 918 66 view .LVU2254 + 7300 00b2 13F0020F tst r3, #2 + 7301 00b6 04D1 bne .L373 + 7302 .LVL699: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7303 .loc 4 918 66 view .LVU2255 + 7304 .LBE610: + 7305 .LBE609: +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7306 .loc 1 3212 42 discriminator 2 view .LVU2256 + 7307 00b8 B2F5FA7F cmp r2, #500 + 7308 00bc 01D8 bhi .L373 +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7309 .loc 1 3212 59 is_stmt 1 discriminator 3 view .LVU2257 +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7310 .loc 1 3212 64 is_stmt 0 discriminator 3 view .LVU2258 + 7311 00be 0132 adds r2, r2, #1 + 7312 .LVL700: +3212:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7313 .loc 1 3212 64 discriminator 3 view .LVU2259 + 7314 00c0 F5E7 b .L372 + 7315 .L373: +3213:Src/main.c **** tmp32 = 0; + 7316 .loc 1 3213 4 is_stmt 1 view .LVU2260 + 7317 .LVL701: + 7318 .LBB611: + 7319 .LBI611: 1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6796 .loc 4 1373 22 view .LVU2133 - 6797 .LBB581: + 7320 .loc 4 1373 22 view .LVU2261 + 7321 .LBB612: 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 6798 .loc 4 1376 3 view .LVU2134 - 6799 .loc 4 1377 3 view .LVU2135 - 6800 .loc 4 1377 10 is_stmt 0 view .LVU2136 - 6801 00f0 194B ldr r3, .L356+4 - 6802 00f2 9C81 strh r4, [r3, #12] @ movhi - 6803 .LVL635: - 6804 .loc 4 1377 10 view .LVU2137 - 6805 .LBE581: - 6806 .LBE580: -2927:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6807 .loc 1 2927 4 is_stmt 1 view .LVU2138 -2928:Src/main.c **** (void) SPI2->DR; - 6808 .loc 1 2928 4 view .LVU2139 -2927:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6809 .loc 1 2927 10 is_stmt 0 view .LVU2140 - 6810 00f4 0022 movs r2, #0 - 6811 .LVL636: - 6812 .L342: -2928:Src/main.c **** (void) SPI2->DR; - 6813 .loc 1 2928 43 is_stmt 1 discriminator 1 view .LVU2141 - 6814 .LBB582: - 6815 .LBI582: + 7322 .loc 4 1376 3 view .LVU2262 + 7323 .loc 4 1377 3 view .LVU2263 + 7324 .loc 4 1377 10 is_stmt 0 view .LVU2264 + 7325 00c2 2C4B ldr r3, .L393+16 + 7326 00c4 9D81 strh r5, [r3, #12] @ movhi + 7327 .LVL702: + 7328 .loc 4 1377 10 view .LVU2265 + 7329 .LBE612: + 7330 .LBE611: +3214:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7331 .loc 1 3214 4 is_stmt 1 view .LVU2266 +3215:Src/main.c **** (void) SPI6->DR; + 7332 .loc 1 3215 4 view .LVU2267 +3214:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7333 .loc 1 3214 10 is_stmt 0 view .LVU2268 + 7334 00c6 0022 movs r2, #0 + 7335 .LVL703: + 7336 .L375: +3215:Src/main.c **** (void) SPI6->DR; + 7337 .loc 1 3215 43 is_stmt 1 discriminator 1 view .LVU2269 + 7338 .LBB613: + 7339 .LBI613: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6816 .loc 4 905 26 view .LVU2142 - 6817 .LBB583: + 7340 .loc 4 905 26 view .LVU2270 + 7341 .LBB614: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6818 .loc 4 907 3 view .LVU2143 - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6819 .loc 4 907 12 is_stmt 0 view .LVU2144 - 6820 00f6 184B ldr r3, .L356+4 - 6821 00f8 9B68 ldr r3, [r3, #8] - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6822 .loc 4 907 68 view .LVU2145 - 6823 00fa 13F0010F tst r3, #1 - 6824 00fe 04D1 bne .L343 - 6825 .LVL637: - 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6826 .loc 4 907 68 view .LVU2146 - 6827 .LBE583: - 6828 .LBE582: -2928:Src/main.c **** (void) SPI2->DR; - 6829 .loc 1 2928 43 discriminator 2 view .LVU2147 - 6830 0100 B2F5FA7F cmp r2, #500 - 6831 0104 01D8 bhi .L343 - ARM GAS /tmp/ccwR4KB7.s page 499 + ARM GAS /tmp/ccEQxcUB.s page 515 + + + 7342 .loc 4 907 3 view .LVU2271 + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7343 .loc 4 907 12 is_stmt 0 view .LVU2272 + 7344 00c8 2A4B ldr r3, .L393+16 + 7345 00ca 9B68 ldr r3, [r3, #8] + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7346 .loc 4 907 68 view .LVU2273 + 7347 00cc 13F0010F tst r3, #1 + 7348 00d0 04D1 bne .L376 + 7349 .LVL704: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7350 .loc 4 907 68 view .LVU2274 + 7351 .LBE614: + 7352 .LBE613: +3215:Src/main.c **** (void) SPI6->DR; + 7353 .loc 1 3215 43 discriminator 2 view .LVU2275 + 7354 00d2 B2F5FA7F cmp r2, #500 + 7355 00d6 01D8 bhi .L376 +3215:Src/main.c **** (void) SPI6->DR; + 7356 .loc 1 3215 60 is_stmt 1 discriminator 3 view .LVU2276 +3215:Src/main.c **** (void) SPI6->DR; + 7357 .loc 1 3215 65 is_stmt 0 discriminator 3 view .LVU2277 + 7358 00d8 0132 adds r2, r2, #1 + 7359 .LVL705: +3215:Src/main.c **** (void) SPI6->DR; + 7360 .loc 1 3215 65 discriminator 3 view .LVU2278 + 7361 00da F5E7 b .L375 + 7362 .L376: +3216:Src/main.c **** break; + 7363 .loc 1 3216 4 is_stmt 1 view .LVU2279 + 7364 00dc 254B ldr r3, .L393+16 + 7365 00de DB68 ldr r3, [r3, #12] +3217:Src/main.c **** case 3: + 7366 .loc 1 3217 3 view .LVU2280 + 7367 00e0 C7E7 b .L360 + 7368 .LVL706: + 7369 .L363: +3219:Src/main.c **** //tmp32=0; + 7370 .loc 1 3219 4 view .LVU2281 + 7371 00e2 0022 movs r2, #0 + 7372 00e4 4FF48051 mov r1, #4096 + 7373 00e8 2148 ldr r0, .L393+12 + 7374 00ea FFF7FEFF bl HAL_GPIO_WritePin + 7375 .LVL707: +3222:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7376 .loc 1 3222 4 view .LVU2282 +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7377 .loc 1 3223 4 view .LVU2283 +3222:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7378 .loc 1 3222 10 is_stmt 0 view .LVU2284 + 7379 00ee 0022 movs r2, #0 + 7380 .LVL708: + 7381 .L378: +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7382 .loc 1 3223 42 is_stmt 1 discriminator 1 view .LVU2285 + 7383 .LBB615: + 7384 .LBI615: + ARM GAS /tmp/ccEQxcUB.s page 516 -2928:Src/main.c **** (void) SPI2->DR; - 6832 .loc 1 2928 60 is_stmt 1 discriminator 3 view .LVU2148 -2928:Src/main.c **** (void) SPI2->DR; - 6833 .loc 1 2928 65 is_stmt 0 discriminator 3 view .LVU2149 - 6834 0106 0132 adds r2, r2, #1 - 6835 .LVL638: -2928:Src/main.c **** (void) SPI2->DR; - 6836 .loc 1 2928 65 discriminator 3 view .LVU2150 - 6837 0108 F5E7 b .L342 - 6838 .L343: -2929:Src/main.c **** break; - 6839 .loc 1 2929 4 is_stmt 1 view .LVU2151 - 6840 010a 134B ldr r3, .L356+4 - 6841 010c DB68 ldr r3, [r3, #12] -2930:Src/main.c **** case 4: - 6842 .loc 1 2930 3 view .LVU2152 - 6843 010e A5E7 b .L321 - 6844 .LVL639: - 6845 .L322: -2932:Src/main.c **** //tmp32=0; - 6846 .loc 1 2932 4 view .LVU2153 - 6847 0110 0022 movs r2, #0 - 6848 0112 1021 movs r1, #16 - 6849 .LVL640: -2932:Src/main.c **** //tmp32=0; - 6850 .loc 1 2932 4 is_stmt 0 view .LVU2154 - 6851 0114 1148 ldr r0, .L356+8 - 6852 0116 FFF7FEFF bl HAL_GPIO_WritePin - 6853 .LVL641: -2935:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6854 .loc 1 2935 4 is_stmt 1 view .LVU2155 -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6855 .loc 1 2936 4 view .LVU2156 -2935:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi - 6856 .loc 1 2935 10 is_stmt 0 view .LVU2157 - 6857 011a 0022 movs r2, #0 - 6858 .LVL642: - 6859 .L345: -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6860 .loc 1 2936 42 is_stmt 1 discriminator 1 view .LVU2158 - 6861 .LBB584: - 6862 .LBI584: 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6863 .loc 4 916 26 view .LVU2159 - 6864 .LBB585: + 7385 .loc 4 916 26 view .LVU2286 + 7386 .LBB616: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6865 .loc 4 918 3 view .LVU2160 + 7387 .loc 4 918 3 view .LVU2287 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6866 .loc 4 918 12 is_stmt 0 view .LVU2161 - 6867 011c 104B ldr r3, .L356+12 - 6868 011e 9B68 ldr r3, [r3, #8] + 7388 .loc 4 918 12 is_stmt 0 view .LVU2288 + 7389 00f0 1D4B ldr r3, .L393+4 + 7390 00f2 9B68 ldr r3, [r3, #8] 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6869 .loc 4 918 66 view .LVU2162 - 6870 0120 13F0020F tst r3, #2 - 6871 0124 04D1 bne .L346 - 6872 .LVL643: + 7391 .loc 4 918 66 view .LVU2289 + 7392 00f4 13F0020F tst r3, #2 + 7393 00f8 04D1 bne .L379 + 7394 .LVL709: 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - ARM GAS /tmp/ccwR4KB7.s page 500 - - - 6873 .loc 4 918 66 view .LVU2163 - 6874 .LBE585: - 6875 .LBE584: -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6876 .loc 1 2936 42 discriminator 2 view .LVU2164 - 6877 0126 B2F5FA7F cmp r2, #500 - 6878 012a 01D8 bhi .L346 -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6879 .loc 1 2936 59 is_stmt 1 discriminator 3 view .LVU2165 -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6880 .loc 1 2936 64 is_stmt 0 discriminator 3 view .LVU2166 - 6881 012c 0132 adds r2, r2, #1 - 6882 .LVL644: -2936:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC - 6883 .loc 1 2936 64 discriminator 3 view .LVU2167 - 6884 012e F5E7 b .L345 - 6885 .L346: -2937:Src/main.c **** tmp32 = 0; - 6886 .loc 1 2937 4 is_stmt 1 view .LVU2168 - 6887 .LVL645: - 6888 .LBB586: - 6889 .LBI586: + 7395 .loc 4 918 66 view .LVU2290 + 7396 .LBE616: + 7397 .LBE615: +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7398 .loc 1 3223 42 discriminator 2 view .LVU2291 + 7399 00fa B2F5FA7F cmp r2, #500 + 7400 00fe 01D8 bhi .L379 +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7401 .loc 1 3223 59 is_stmt 1 discriminator 3 view .LVU2292 +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7402 .loc 1 3223 64 is_stmt 0 discriminator 3 view .LVU2293 + 7403 0100 0132 adds r2, r2, #1 + 7404 .LVL710: +3223:Src/main.c **** LL_SPI_TransmitData16(SPI2, DATA);//Transmit word to Laser1 DAC + 7405 .loc 1 3223 64 discriminator 3 view .LVU2294 + 7406 0102 F5E7 b .L378 + 7407 .L379: +3224:Src/main.c **** tmp32 = 0; + 7408 .loc 1 3224 4 is_stmt 1 view .LVU2295 + 7409 .LVL711: + 7410 .LBB617: + 7411 .LBI617: 1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6890 .loc 4 1373 22 view .LVU2169 - 6891 .LBB587: + 7412 .loc 4 1373 22 view .LVU2296 + 7413 .LBB618: 1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; - 6892 .loc 4 1376 3 view .LVU2170 - 6893 .loc 4 1377 3 view .LVU2171 - 6894 .loc 4 1377 10 is_stmt 0 view .LVU2172 - 6895 0130 0B4B ldr r3, .L356+12 - 6896 0132 9C81 strh r4, [r3, #12] @ movhi - 6897 .LVL646: - 6898 .loc 4 1377 10 view .LVU2173 - 6899 .LBE587: - 6900 .LBE586: -2938:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6901 .loc 1 2938 4 is_stmt 1 view .LVU2174 -2939:Src/main.c **** (void) SPI6->DR; - 6902 .loc 1 2939 4 view .LVU2175 -2938:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w - 6903 .loc 1 2938 10 is_stmt 0 view .LVU2176 - 6904 0134 0022 movs r2, #0 - 6905 .LVL647: - 6906 .L348: -2939:Src/main.c **** (void) SPI6->DR; - 6907 .loc 1 2939 43 is_stmt 1 discriminator 1 view .LVU2177 - 6908 .LBB588: - 6909 .LBI588: + 7414 .loc 4 1376 3 view .LVU2297 + 7415 .loc 4 1377 3 view .LVU2298 + 7416 .loc 4 1377 10 is_stmt 0 view .LVU2299 + 7417 0104 184B ldr r3, .L393+4 + 7418 0106 9D81 strh r5, [r3, #12] @ movhi + 7419 .LVL712: + 7420 .loc 4 1377 10 view .LVU2300 + 7421 .LBE618: + 7422 .LBE617: +3225:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7423 .loc 1 3225 4 is_stmt 1 view .LVU2301 +3226:Src/main.c **** (void) SPI2->DR; + 7424 .loc 1 3226 4 view .LVU2302 +3225:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI2))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7425 .loc 1 3225 10 is_stmt 0 view .LVU2303 + 7426 0108 0022 movs r2, #0 + ARM GAS /tmp/ccEQxcUB.s page 517 + + + 7427 .LVL713: + 7428 .L381: +3226:Src/main.c **** (void) SPI2->DR; + 7429 .loc 1 3226 43 is_stmt 1 discriminator 1 view .LVU2304 + 7430 .LBB619: + 7431 .LBI619: 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 6910 .loc 4 905 26 view .LVU2178 - 6911 .LBB589: + 7432 .loc 4 905 26 view .LVU2305 + 7433 .LBB620: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6912 .loc 4 907 3 view .LVU2179 + 7434 .loc 4 907 3 view .LVU2306 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6913 .loc 4 907 12 is_stmt 0 view .LVU2180 - 6914 0136 0A4B ldr r3, .L356+12 - 6915 0138 9B68 ldr r3, [r3, #8] - ARM GAS /tmp/ccwR4KB7.s page 501 - - + 7435 .loc 4 907 12 is_stmt 0 view .LVU2307 + 7436 010a 174B ldr r3, .L393+4 + 7437 010c 9B68 ldr r3, [r3, #8] 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6916 .loc 4 907 68 view .LVU2181 - 6917 013a 13F0010F tst r3, #1 - 6918 013e 04D1 bne .L349 - 6919 .LVL648: + 7438 .loc 4 907 68 view .LVU2308 + 7439 010e 13F0010F tst r3, #1 + 7440 0112 04D1 bne .L382 + 7441 .LVL714: 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 6920 .loc 4 907 68 view .LVU2182 - 6921 .LBE589: - 6922 .LBE588: -2939:Src/main.c **** (void) SPI6->DR; - 6923 .loc 1 2939 43 discriminator 2 view .LVU2183 - 6924 0140 B2F5FA7F cmp r2, #500 - 6925 0144 01D8 bhi .L349 -2939:Src/main.c **** (void) SPI6->DR; - 6926 .loc 1 2939 60 is_stmt 1 discriminator 3 view .LVU2184 -2939:Src/main.c **** (void) SPI6->DR; - 6927 .loc 1 2939 65 is_stmt 0 discriminator 3 view .LVU2185 - 6928 0146 0132 adds r2, r2, #1 - 6929 .LVL649: -2939:Src/main.c **** (void) SPI6->DR; - 6930 .loc 1 2939 65 discriminator 3 view .LVU2186 - 6931 0148 F5E7 b .L348 - 6932 .L349: -2940:Src/main.c **** break; - 6933 .loc 1 2940 4 is_stmt 1 view .LVU2187 - 6934 014a 054B ldr r3, .L356+12 - 6935 014c DB68 ldr r3, [r3, #12] -2941:Src/main.c **** } - 6936 .loc 1 2941 3 view .LVU2188 - 6937 014e 85E7 b .L321 - 6938 .LVL650: - 6939 .L353: - 6940 .LCFI65: - 6941 .cfi_def_cfa_offset 0 - 6942 .cfi_restore 3 - 6943 .cfi_restore 4 - 6944 .cfi_restore 5 - 6945 .cfi_restore 14 -2941:Src/main.c **** } - 6946 .loc 1 2941 3 is_stmt 0 view .LVU2189 - 6947 0150 7047 bx lr - 6948 .L357: - 6949 0152 00BF .align 2 - 6950 .L356: - 6951 0154 00040240 .word 1073873920 - 6952 0158 00380040 .word 1073756160 - 6953 015c 00000240 .word 1073872896 - 6954 0160 00540140 .word 1073828864 - 6955 .cfi_endproc - 6956 .LFE1220: - 6958 .section .text.Decode_uart,"ax",%progbits - 6959 .align 1 - 6960 .syntax unified - 6961 .thumb - 6962 .thumb_func - 6964 Decode_uart: - 6965 .LVL651: - ARM GAS /tmp/ccwR4KB7.s page 502 + 7442 .loc 4 907 68 view .LVU2309 + 7443 .LBE620: + 7444 .LBE619: +3226:Src/main.c **** (void) SPI2->DR; + 7445 .loc 1 3226 43 discriminator 2 view .LVU2310 + 7446 0114 B2F5FA7F cmp r2, #500 + 7447 0118 01D8 bhi .L382 +3226:Src/main.c **** (void) SPI2->DR; + 7448 .loc 1 3226 60 is_stmt 1 discriminator 3 view .LVU2311 +3226:Src/main.c **** (void) SPI2->DR; + 7449 .loc 1 3226 65 is_stmt 0 discriminator 3 view .LVU2312 + 7450 011a 0132 adds r2, r2, #1 + 7451 .LVL715: +3226:Src/main.c **** (void) SPI2->DR; + 7452 .loc 1 3226 65 discriminator 3 view .LVU2313 + 7453 011c F5E7 b .L381 + 7454 .L382: +3227:Src/main.c **** break; + 7455 .loc 1 3227 4 is_stmt 1 view .LVU2314 + 7456 011e 124B ldr r3, .L393+4 + 7457 0120 DB68 ldr r3, [r3, #12] +3228:Src/main.c **** case 4: + 7458 .loc 1 3228 3 view .LVU2315 + 7459 0122 A6E7 b .L360 + 7460 .LVL716: + 7461 .L361: +3230:Src/main.c **** //tmp32=0; + 7462 .loc 1 3230 4 view .LVU2316 + 7463 0124 0022 movs r2, #0 + 7464 0126 1021 movs r1, #16 + 7465 0128 1048 ldr r0, .L393+8 + 7466 012a FFF7FEFF bl HAL_GPIO_WritePin + 7467 .LVL717: +3233:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7468 .loc 1 3233 4 view .LVU2317 +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + ARM GAS /tmp/ccEQxcUB.s page 518 - 6966 .LFB1208: -2197:Src/main.c **** // uint8_t *temp1; - 6967 .loc 1 2197 1 is_stmt 1 view -0 - 6968 .cfi_startproc - 6969 @ args = 0, pretend = 0, frame = 0 - 6970 @ frame_needed = 0, uses_anonymous_args = 0 -2197:Src/main.c **** // uint8_t *temp1; - 6971 .loc 1 2197 1 is_stmt 0 view .LVU2191 - 6972 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr} - 6973 .LCFI66: - 6974 .cfi_def_cfa_offset 32 - 6975 .cfi_offset 3, -32 - 6976 .cfi_offset 4, -28 - 6977 .cfi_offset 5, -24 - 6978 .cfi_offset 6, -20 - 6979 .cfi_offset 7, -16 - 6980 .cfi_offset 8, -12 - 6981 .cfi_offset 9, -8 - 6982 .cfi_offset 14, -4 - 6983 0004 0546 mov r5, r0 - 6984 0006 0F46 mov r7, r1 - 6985 0008 1646 mov r6, r2 - 6986 000a 1C46 mov r4, r3 -2199:Src/main.c **** - 6987 .loc 1 2199 2 is_stmt 1 view .LVU2192 -2204:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& - 6988 .loc 1 2204 2 view .LVU2193 -2204:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& - 6989 .loc 1 2204 6 is_stmt 0 view .LVU2194 - 6990 000c AF4B ldr r3, .L382 - 6991 .LVL652: -2204:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& - 6992 .loc 1 2204 6 view .LVU2195 - 6993 000e 0022 movs r2, #0 - 6994 .LVL653: -2204:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& - 6995 .loc 1 2204 6 view .LVU2196 - 6996 0010 1A60 str r2, [r3] -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 6997 .loc 1 2205 2 is_stmt 1 view .LVU2197 -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 6998 .loc 1 2205 7 is_stmt 0 view .LVU2198 - 6999 0012 0121 movs r1, #1 - 7000 .LVL654: -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 7001 .loc 1 2205 7 view .LVU2199 - 7002 0014 AE48 ldr r0, .L382+4 - 7003 .LVL655: -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 7004 .loc 1 2205 7 view .LVU2200 - 7005 0016 FFF7FEFF bl HAL_GPIO_ReadPin - 7006 .LVL656: -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 7007 .loc 1 2205 5 discriminator 1 view .LVU2201 - 7008 001a 0028 cmp r0, #0 - 7009 001c 00F0D280 beq .L379 - 7010 .L359: - ARM GAS /tmp/ccwR4KB7.s page 503 + 7469 .loc 1 3234 4 view .LVU2318 +3233:Src/main.c **** while((!LL_SPI_IsActiveFlag_TXE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle wi + 7470 .loc 1 3233 10 is_stmt 0 view .LVU2319 + 7471 012e 0022 movs r2, #0 + 7472 .LVL718: + 7473 .L384: +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7474 .loc 1 3234 42 is_stmt 1 discriminator 1 view .LVU2320 + 7475 .LBB621: + 7476 .LBI621: + 916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 7477 .loc 4 916 26 view .LVU2321 + 7478 .LBB622: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7479 .loc 4 918 3 view .LVU2322 + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7480 .loc 4 918 12 is_stmt 0 view .LVU2323 + 7481 0130 104B ldr r3, .L393+16 + 7482 0132 9B68 ldr r3, [r3, #8] + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7483 .loc 4 918 66 view .LVU2324 + 7484 0134 13F0020F tst r3, #2 + 7485 0138 04D1 bne .L385 + 7486 .LVL719: + 918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7487 .loc 4 918 66 view .LVU2325 + 7488 .LBE622: + 7489 .LBE621: +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7490 .loc 1 3234 42 discriminator 2 view .LVU2326 + 7491 013a B2F5FA7F cmp r2, #500 + 7492 013e 01D8 bhi .L385 +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7493 .loc 1 3234 59 is_stmt 1 discriminator 3 view .LVU2327 +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7494 .loc 1 3234 64 is_stmt 0 discriminator 3 view .LVU2328 + 7495 0140 0132 adds r2, r2, #1 + 7496 .LVL720: +3234:Src/main.c **** LL_SPI_TransmitData16(SPI6, DATA);//Transmit word to Laser1 DAC + 7497 .loc 1 3234 64 discriminator 3 view .LVU2329 + 7498 0142 F5E7 b .L384 + 7499 .L385: +3235:Src/main.c **** tmp32 = 0; + 7500 .loc 1 3235 4 is_stmt 1 view .LVU2330 + 7501 .LVL721: + 7502 .LBB623: + 7503 .LBI623: +1373:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 7504 .loc 4 1373 22 view .LVU2331 + 7505 .LBB624: +1376:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** *spidr = TxData; + 7506 .loc 4 1376 3 view .LVU2332 + 7507 .loc 4 1377 3 view .LVU2333 + 7508 .loc 4 1377 10 is_stmt 0 view .LVU2334 + 7509 0144 0B4B ldr r3, .L393+16 + 7510 0146 9D81 strh r5, [r3, #12] @ movhi + 7511 .LVL722: + ARM GAS /tmp/ccEQxcUB.s page 519 -2220:Src/main.c **** Curr_setup->WORK_EN = ((uint8_t)((*temp2)>>0))&0x01; - 7011 .loc 1 2220 2 is_stmt 1 view .LVU2202 - 7012 .LVL657: -2221:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; - 7013 .loc 1 2221 2 view .LVU2203 -2221:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; - 7014 .loc 1 2221 36 is_stmt 0 view .LVU2204 - 7015 0020 2B88 ldrh r3, [r5] -2221:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; - 7016 .loc 1 2221 48 view .LVU2205 - 7017 0022 03F00103 and r3, r3, #1 -2221:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; - 7018 .loc 1 2221 22 view .LVU2206 - 7019 0026 2370 strb r3, [r4] -2222:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; - 7020 .loc 1 2222 2 is_stmt 1 view .LVU2207 -2222:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; - 7021 .loc 1 2222 36 is_stmt 0 view .LVU2208 - 7022 0028 2B88 ldrh r3, [r5] -2222:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; - 7023 .loc 1 2222 48 view .LVU2209 - 7024 002a C3F34003 ubfx r3, r3, #1, #1 -2222:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; - 7025 .loc 1 2222 22 view .LVU2210 - 7026 002e 6370 strb r3, [r4, #1] -2223:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; - 7027 .loc 1 2223 2 is_stmt 1 view .LVU2211 -2223:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; - 7028 .loc 1 2223 36 is_stmt 0 view .LVU2212 - 7029 0030 2B88 ldrh r3, [r5] -2223:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; - 7030 .loc 1 2223 48 view .LVU2213 - 7031 0032 C3F38003 ubfx r3, r3, #2, #1 -2223:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; - 7032 .loc 1 2223 22 view .LVU2214 - 7033 0036 A370 strb r3, [r4, #2] -2224:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; - 7034 .loc 1 2224 2 is_stmt 1 view .LVU2215 -2224:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; - 7035 .loc 1 2224 35 is_stmt 0 view .LVU2216 - 7036 0038 2B88 ldrh r3, [r5] -2224:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; - 7037 .loc 1 2224 47 view .LVU2217 - 7038 003a C3F3C003 ubfx r3, r3, #3, #1 -2224:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; - 7039 .loc 1 2224 21 view .LVU2218 - 7040 003e E370 strb r3, [r4, #3] -2225:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; - 7041 .loc 1 2225 2 is_stmt 1 view .LVU2219 -2225:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; - 7042 .loc 1 2225 35 is_stmt 0 view .LVU2220 - 7043 0040 2B88 ldrh r3, [r5] -2225:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; - 7044 .loc 1 2225 47 view .LVU2221 - 7045 0042 C3F30013 ubfx r3, r3, #4, #1 -2225:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; - 7046 .loc 1 2225 21 view .LVU2222 - ARM GAS /tmp/ccwR4KB7.s page 504 + 7512 .loc 4 1377 10 view .LVU2335 + 7513 .LBE624: + 7514 .LBE623: +3236:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7515 .loc 1 3236 4 is_stmt 1 view .LVU2336 +3237:Src/main.c **** (void) SPI6->DR; + 7516 .loc 1 3237 4 view .LVU2337 +3236:Src/main.c **** while((!LL_SPI_IsActiveFlag_RXNE(SPI6))&&(tmp32<=500)) {tmp32++;}//When trans. last data cycle w + 7517 .loc 1 3236 10 is_stmt 0 view .LVU2338 + 7518 0148 0022 movs r2, #0 + 7519 .LVL723: + 7520 .L387: +3237:Src/main.c **** (void) SPI6->DR; + 7521 .loc 1 3237 43 is_stmt 1 discriminator 1 view .LVU2339 + 7522 .LBB625: + 7523 .LBI625: + 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { + 7524 .loc 4 905 26 view .LVU2340 + 7525 .LBB626: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7526 .loc 4 907 3 view .LVU2341 + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7527 .loc 4 907 12 is_stmt 0 view .LVU2342 + 7528 014a 0A4B ldr r3, .L393+16 + 7529 014c 9B68 ldr r3, [r3, #8] + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7530 .loc 4 907 68 view .LVU2343 + 7531 014e 13F0010F tst r3, #1 + 7532 0152 04D1 bne .L388 + 7533 .LVL724: + 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } + 7534 .loc 4 907 68 view .LVU2344 + 7535 .LBE626: + 7536 .LBE625: +3237:Src/main.c **** (void) SPI6->DR; + 7537 .loc 1 3237 43 discriminator 2 view .LVU2345 + 7538 0154 B2F5FA7F cmp r2, #500 + 7539 0158 01D8 bhi .L388 +3237:Src/main.c **** (void) SPI6->DR; + 7540 .loc 1 3237 60 is_stmt 1 discriminator 3 view .LVU2346 +3237:Src/main.c **** (void) SPI6->DR; + 7541 .loc 1 3237 65 is_stmt 0 discriminator 3 view .LVU2347 + 7542 015a 0132 adds r2, r2, #1 + 7543 .LVL725: +3237:Src/main.c **** (void) SPI6->DR; + 7544 .loc 1 3237 65 discriminator 3 view .LVU2348 + 7545 015c F5E7 b .L387 + 7546 .L388: +3238:Src/main.c **** break; + 7547 .loc 1 3238 4 is_stmt 1 view .LVU2349 + 7548 015e 054B ldr r3, .L393+16 + 7549 0160 DB68 ldr r3, [r3, #12] +3239:Src/main.c **** } + 7550 .loc 1 3239 3 view .LVU2350 + 7551 0162 86E7 b .L360 + 7552 .L394: + 7553 .align 2 + ARM GAS /tmp/ccEQxcUB.s page 520 - 7047 0046 2371 strb r3, [r4, #4] -2226:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; - 7048 .loc 1 2226 2 is_stmt 1 view .LVU2223 -2226:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; - 7049 .loc 1 2226 36 is_stmt 0 view .LVU2224 - 7050 0048 2B88 ldrh r3, [r5] -2226:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; - 7051 .loc 1 2226 48 view .LVU2225 - 7052 004a C3F34013 ubfx r3, r3, #5, #1 -2226:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; - 7053 .loc 1 2226 22 view .LVU2226 - 7054 004e 6371 strb r3, [r4, #5] -2227:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; - 7055 .loc 1 2227 2 is_stmt 1 view .LVU2227 -2227:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; - 7056 .loc 1 2227 36 is_stmt 0 view .LVU2228 - 7057 0050 2B88 ldrh r3, [r5] -2227:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; - 7058 .loc 1 2227 48 view .LVU2229 - 7059 0052 C3F38013 ubfx r3, r3, #6, #1 -2227:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; - 7060 .loc 1 2227 22 view .LVU2230 - 7061 0056 A371 strb r3, [r4, #6] -2228:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; - 7062 .loc 1 2228 2 is_stmt 1 view .LVU2231 -2228:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; - 7063 .loc 1 2228 36 is_stmt 0 view .LVU2232 - 7064 0058 2B88 ldrh r3, [r5] -2228:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; - 7065 .loc 1 2228 48 view .LVU2233 - 7066 005a C3F3C013 ubfx r3, r3, #7, #1 -2228:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; - 7067 .loc 1 2228 22 view .LVU2234 - 7068 005e E371 strb r3, [r4, #7] -2229:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; - 7069 .loc 1 2229 2 is_stmt 1 view .LVU2235 -2229:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; - 7070 .loc 1 2229 36 is_stmt 0 view .LVU2236 - 7071 0060 2B88 ldrh r3, [r5] -2229:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; - 7072 .loc 1 2229 48 view .LVU2237 - 7073 0062 C3F30023 ubfx r3, r3, #8, #1 -2229:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; - 7074 .loc 1 2229 22 view .LVU2238 - 7075 0066 2372 strb r3, [r4, #8] -2230:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; - 7076 .loc 1 2230 2 is_stmt 1 view .LVU2239 -2230:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; - 7077 .loc 1 2230 35 is_stmt 0 view .LVU2240 - 7078 0068 2B88 ldrh r3, [r5] -2230:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; - 7079 .loc 1 2230 47 view .LVU2241 - 7080 006a C3F34023 ubfx r3, r3, #9, #1 -2230:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; - 7081 .loc 1 2230 21 view .LVU2242 - 7082 006e 6372 strb r3, [r4, #9] -2231:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; - ARM GAS /tmp/ccwR4KB7.s page 505 + 7554 .L393: + 7555 0164 00040240 .word 1073873920 + 7556 0168 00380040 .word 1073756160 + 7557 016c 00000240 .word 1073872896 + 7558 0170 000C0240 .word 1073875968 + 7559 0174 00540140 .word 1073828864 + 7560 .cfi_endproc + 7561 .LFE1225: + 7563 .section .text.Decode_uart,"ax",%progbits + 7564 .align 1 + 7565 .syntax unified + 7566 .thumb + 7567 .thumb_func + 7569 Decode_uart: + 7570 .LVL726: + 7571 .LFB1209: +2372:Src/main.c **** // uint8_t *temp1; + 7572 .loc 1 2372 1 view -0 + 7573 .cfi_startproc + 7574 @ args = 0, pretend = 0, frame = 0 + 7575 @ frame_needed = 0, uses_anonymous_args = 0 +2372:Src/main.c **** // uint8_t *temp1; + 7576 .loc 1 2372 1 is_stmt 0 view .LVU2352 + 7577 0000 2DE9F843 push {r3, r4, r5, r6, r7, r8, r9, lr} + 7578 .LCFI68: + 7579 .cfi_def_cfa_offset 32 + 7580 .cfi_offset 3, -32 + 7581 .cfi_offset 4, -28 + 7582 .cfi_offset 5, -24 + 7583 .cfi_offset 6, -20 + 7584 .cfi_offset 7, -16 + 7585 .cfi_offset 8, -12 + 7586 .cfi_offset 9, -8 + 7587 .cfi_offset 14, -4 + 7588 0004 0546 mov r5, r0 + 7589 0006 0F46 mov r7, r1 + 7590 0008 1646 mov r6, r2 + 7591 000a 1C46 mov r4, r3 +2374:Src/main.c **** + 7592 .loc 1 2374 2 is_stmt 1 view .LVU2353 +2379:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& + 7593 .loc 1 2379 2 view .LVU2354 +2379:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& + 7594 .loc 1 2379 6 is_stmt 0 view .LVU2355 + 7595 000c AF4B ldr r3, .L419 + 7596 .LVL727: +2379:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& + 7597 .loc 1 2379 6 view .LVU2356 + 7598 000e 0022 movs r2, #0 + 7599 .LVL728: +2379:Src/main.c **** if ((HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin) == GPIO_PIN_RESET)&& + 7600 .loc 1 2379 6 view .LVU2357 + 7601 0010 1A60 str r2, [r3] +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7602 .loc 1 2380 2 is_stmt 1 view .LVU2358 +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7603 .loc 1 2380 7 is_stmt 0 view .LVU2359 + ARM GAS /tmp/ccEQxcUB.s page 521 - 7083 .loc 1 2231 2 is_stmt 1 view .LVU2243 -2231:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; - 7084 .loc 1 2231 35 is_stmt 0 view .LVU2244 - 7085 0070 2B88 ldrh r3, [r5] -2231:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; - 7086 .loc 1 2231 48 view .LVU2245 - 7087 0072 C3F38023 ubfx r3, r3, #10, #1 -2231:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; - 7088 .loc 1 2231 21 view .LVU2246 - 7089 0076 A372 strb r3, [r4, #10] -2232:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; - 7090 .loc 1 2232 2 is_stmt 1 view .LVU2247 -2232:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; - 7091 .loc 1 2232 34 is_stmt 0 view .LVU2248 - 7092 0078 2B88 ldrh r3, [r5] -2232:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; - 7093 .loc 1 2232 47 view .LVU2249 - 7094 007a C3F3C023 ubfx r3, r3, #11, #1 -2232:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; - 7095 .loc 1 2232 20 view .LVU2250 - 7096 007e E372 strb r3, [r4, #11] -2233:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; - 7097 .loc 1 2233 2 is_stmt 1 view .LVU2251 -2233:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; - 7098 .loc 1 2233 35 is_stmt 0 view .LVU2252 - 7099 0080 2B88 ldrh r3, [r5] -2233:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; - 7100 .loc 1 2233 48 view .LVU2253 - 7101 0082 C3F30033 ubfx r3, r3, #12, #1 -2233:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; - 7102 .loc 1 2233 21 view .LVU2254 - 7103 0086 2373 strb r3, [r4, #12] -2234:Src/main.c **** - 7104 .loc 1 2234 2 is_stmt 1 view .LVU2255 -2234:Src/main.c **** - 7105 .loc 1 2234 35 is_stmt 0 view .LVU2256 - 7106 0088 2B88 ldrh r3, [r5] -2234:Src/main.c **** - 7107 .loc 1 2234 48 view .LVU2257 - 7108 008a C3F34033 ubfx r3, r3, #13, #1 -2234:Src/main.c **** - 7109 .loc 1 2234 21 view .LVU2258 - 7110 008e 6373 strb r3, [r4, #13] -2236:Src/main.c **** LD1_curr_setup->LD_TEMP = (uint16_t)(*temp2); - 7111 .loc 1 2236 2 is_stmt 1 view .LVU2259 - 7112 .LVL658: -2237:Src/main.c **** temp2++; - 7113 .loc 1 2237 2 view .LVU2260 -2237:Src/main.c **** temp2++; - 7114 .loc 1 2237 28 is_stmt 0 view .LVU2261 - 7115 0090 6B88 ldrh r3, [r5, #2] -2237:Src/main.c **** temp2++; - 7116 .loc 1 2237 26 view .LVU2262 - 7117 0092 3B80 strh r3, [r7] @ movhi -2238:Src/main.c **** LD2_curr_setup->LD_TEMP = (uint16_t)(*temp2); - 7118 .loc 1 2238 2 is_stmt 1 view .LVU2263 - 7119 .LVL659: - ARM GAS /tmp/ccwR4KB7.s page 506 + 7604 0012 0121 movs r1, #1 + 7605 .LVL729: +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7606 .loc 1 2380 7 view .LVU2360 + 7607 0014 AE48 ldr r0, .L419+4 + 7608 .LVL730: +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7609 .loc 1 2380 7 view .LVU2361 + 7610 0016 FFF7FEFF bl HAL_GPIO_ReadPin + 7611 .LVL731: +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7612 .loc 1 2380 5 discriminator 1 view .LVU2362 + 7613 001a 0028 cmp r0, #0 + 7614 001c 00F0D280 beq .L416 + 7615 .L396: +2395:Src/main.c **** Curr_setup->WORK_EN = ((uint8_t)((*temp2)>>0))&0x01; + 7616 .loc 1 2395 2 is_stmt 1 view .LVU2363 + 7617 .LVL732: +2396:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; + 7618 .loc 1 2396 2 view .LVU2364 +2396:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; + 7619 .loc 1 2396 36 is_stmt 0 view .LVU2365 + 7620 0020 2B88 ldrh r3, [r5] +2396:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; + 7621 .loc 1 2396 48 view .LVU2366 + 7622 0022 03F00103 and r3, r3, #1 +2396:Src/main.c **** Curr_setup->U5V1_EN = ((uint8_t)((*temp2)>>1))&0x01; + 7623 .loc 1 2396 22 view .LVU2367 + 7624 0026 2370 strb r3, [r4] +2397:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; + 7625 .loc 1 2397 2 is_stmt 1 view .LVU2368 +2397:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; + 7626 .loc 1 2397 36 is_stmt 0 view .LVU2369 + 7627 0028 2B88 ldrh r3, [r5] +2397:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; + 7628 .loc 1 2397 48 view .LVU2370 + 7629 002a C3F34003 ubfx r3, r3, #1, #1 +2397:Src/main.c **** Curr_setup->U5V2_EN = ((uint8_t)((*temp2)>>2))&0x01; + 7630 .loc 1 2397 22 view .LVU2371 + 7631 002e 6370 strb r3, [r4, #1] +2398:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; + 7632 .loc 1 2398 2 is_stmt 1 view .LVU2372 +2398:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; + 7633 .loc 1 2398 36 is_stmt 0 view .LVU2373 + 7634 0030 2B88 ldrh r3, [r5] +2398:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; + 7635 .loc 1 2398 48 view .LVU2374 + 7636 0032 C3F38003 ubfx r3, r3, #2, #1 +2398:Src/main.c **** Curr_setup->LD1_EN = ((uint8_t)((*temp2)>>3))&0x01; + 7637 .loc 1 2398 22 view .LVU2375 + 7638 0036 A370 strb r3, [r4, #2] +2399:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; + 7639 .loc 1 2399 2 is_stmt 1 view .LVU2376 +2399:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; + 7640 .loc 1 2399 35 is_stmt 0 view .LVU2377 + 7641 0038 2B88 ldrh r3, [r5] +2399:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; + ARM GAS /tmp/ccEQxcUB.s page 522 -2239:Src/main.c **** temp2++; - 7120 .loc 1 2239 2 view .LVU2264 -2239:Src/main.c **** temp2++; - 7121 .loc 1 2239 28 is_stmt 0 view .LVU2265 - 7122 0094 AB88 ldrh r3, [r5, #4] -2239:Src/main.c **** temp2++; - 7123 .loc 1 2239 26 view .LVU2266 - 7124 0096 3380 strh r3, [r6] @ movhi -2240:Src/main.c **** temp2++; - 7125 .loc 1 2240 2 is_stmt 1 view .LVU2267 - 7126 .LVL660: -2241:Src/main.c **** temp2++; - 7127 .loc 1 2241 2 view .LVU2268 -2242:Src/main.c **** Curr_setup->AVERAGES = (uint16_t)(*temp2); - 7128 .loc 1 2242 2 view .LVU2269 -2243:Src/main.c **** temp2++; - 7129 .loc 1 2243 2 view .LVU2270 -2243:Src/main.c **** temp2++; - 7130 .loc 1 2243 25 is_stmt 0 view .LVU2271 - 7131 0098 6B89 ldrh r3, [r5, #10] -2243:Src/main.c **** temp2++; - 7132 .loc 1 2243 23 view .LVU2272 - 7133 009a E381 strh r3, [r4, #14] @ movhi -2244:Src/main.c **** LD1_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint - 7134 .loc 1 2244 2 is_stmt 1 view .LVU2273 - 7135 .LVL661: -2245:Src/main.c **** temp2++; - 7136 .loc 1 2245 2 view .LVU2274 -2245:Src/main.c **** temp2++; - 7137 .loc 1 2245 51 is_stmt 0 view .LVU2275 - 7138 009c AB89 ldrh r3, [r5, #12] - 7139 009e 07EE903A vmov s15, r3 @ int -2245:Src/main.c **** temp2++; - 7140 .loc 1 2245 32 view .LVU2276 - 7141 00a2 F8EE677A vcvt.f32.u32 s15, s15 -2245:Src/main.c **** temp2++; - 7142 .loc 1 2245 59 view .LVU2277 - 7143 00a6 9FED8B7A vldr.32 s14, .L382+8 - 7144 00aa 67EE877A vmul.f32 s15, s15, s14 -2245:Src/main.c **** temp2++; - 7145 .loc 1 2245 30 view .LVU2278 - 7146 00ae C7ED017A vstr.32 s15, [r7, #4] -2246:Src/main.c **** LD1_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint - 7147 .loc 1 2246 2 is_stmt 1 view .LVU2279 - 7148 .LVL662: -2247:Src/main.c **** temp2++; - 7149 .loc 1 2247 2 view .LVU2280 -2247:Src/main.c **** temp2++; - 7150 .loc 1 2247 51 is_stmt 0 view .LVU2281 - 7151 00b2 EB89 ldrh r3, [r5, #14] - 7152 00b4 07EE903A vmov s15, r3 @ int -2247:Src/main.c **** temp2++; - 7153 .loc 1 2247 32 view .LVU2282 - 7154 00b8 F8EE677A vcvt.f32.u32 s15, s15 -2247:Src/main.c **** temp2++; - 7155 .loc 1 2247 59 view .LVU2283 - 7156 00bc 67EE877A vmul.f32 s15, s15, s14 - ARM GAS /tmp/ccwR4KB7.s page 507 + 7642 .loc 1 2399 47 view .LVU2378 + 7643 003a C3F3C003 ubfx r3, r3, #3, #1 +2399:Src/main.c **** Curr_setup->LD2_EN = ((uint8_t)((*temp2)>>4))&0x01; + 7644 .loc 1 2399 21 view .LVU2379 + 7645 003e E370 strb r3, [r4, #3] +2400:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; + 7646 .loc 1 2400 2 is_stmt 1 view .LVU2380 +2400:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; + 7647 .loc 1 2400 35 is_stmt 0 view .LVU2381 + 7648 0040 2B88 ldrh r3, [r5] +2400:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; + 7649 .loc 1 2400 47 view .LVU2382 + 7650 0042 C3F30013 ubfx r3, r3, #4, #1 +2400:Src/main.c **** Curr_setup->REF1_EN = ((uint8_t)((*temp2)>>5))&0x01; + 7651 .loc 1 2400 21 view .LVU2383 + 7652 0046 2371 strb r3, [r4, #4] +2401:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; + 7653 .loc 1 2401 2 is_stmt 1 view .LVU2384 +2401:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; + 7654 .loc 1 2401 36 is_stmt 0 view .LVU2385 + 7655 0048 2B88 ldrh r3, [r5] +2401:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; + 7656 .loc 1 2401 48 view .LVU2386 + 7657 004a C3F34013 ubfx r3, r3, #5, #1 +2401:Src/main.c **** Curr_setup->REF2_EN = ((uint8_t)((*temp2)>>6))&0x01; + 7658 .loc 1 2401 22 view .LVU2387 + 7659 004e 6371 strb r3, [r4, #5] +2402:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; + 7660 .loc 1 2402 2 is_stmt 1 view .LVU2388 +2402:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; + 7661 .loc 1 2402 36 is_stmt 0 view .LVU2389 + 7662 0050 2B88 ldrh r3, [r5] +2402:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; + 7663 .loc 1 2402 48 view .LVU2390 + 7664 0052 C3F38013 ubfx r3, r3, #6, #1 +2402:Src/main.c **** Curr_setup->TEC1_EN = ((uint8_t)((*temp2)>>7))&0x01; + 7665 .loc 1 2402 22 view .LVU2391 + 7666 0056 A371 strb r3, [r4, #6] +2403:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; + 7667 .loc 1 2403 2 is_stmt 1 view .LVU2392 +2403:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; + 7668 .loc 1 2403 36 is_stmt 0 view .LVU2393 + 7669 0058 2B88 ldrh r3, [r5] +2403:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; + 7670 .loc 1 2403 48 view .LVU2394 + 7671 005a C3F3C013 ubfx r3, r3, #7, #1 +2403:Src/main.c **** Curr_setup->TEC2_EN = ((uint8_t)((*temp2)>>8))&0x01; + 7672 .loc 1 2403 22 view .LVU2395 + 7673 005e E371 strb r3, [r4, #7] +2404:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; + 7674 .loc 1 2404 2 is_stmt 1 view .LVU2396 +2404:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; + 7675 .loc 1 2404 36 is_stmt 0 view .LVU2397 + 7676 0060 2B88 ldrh r3, [r5] +2404:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; + 7677 .loc 1 2404 48 view .LVU2398 + 7678 0062 C3F30023 ubfx r3, r3, #8, #1 + ARM GAS /tmp/ccEQxcUB.s page 523 -2247:Src/main.c **** temp2++; - 7157 .loc 1 2247 30 view .LVU2284 - 7158 00c0 C7ED027A vstr.32 s15, [r7, #8] -2248:Src/main.c **** LD2_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint - 7159 .loc 1 2248 2 is_stmt 1 view .LVU2285 - 7160 .LVL663: -2249:Src/main.c **** temp2++; - 7161 .loc 1 2249 2 view .LVU2286 -2249:Src/main.c **** temp2++; - 7162 .loc 1 2249 51 is_stmt 0 view .LVU2287 - 7163 00c4 2B8A ldrh r3, [r5, #16] - 7164 00c6 07EE903A vmov s15, r3 @ int -2249:Src/main.c **** temp2++; - 7165 .loc 1 2249 32 view .LVU2288 - 7166 00ca F8EE677A vcvt.f32.u32 s15, s15 -2249:Src/main.c **** temp2++; - 7167 .loc 1 2249 59 view .LVU2289 - 7168 00ce 67EE877A vmul.f32 s15, s15, s14 -2249:Src/main.c **** temp2++; - 7169 .loc 1 2249 30 view .LVU2290 - 7170 00d2 C6ED017A vstr.32 s15, [r6, #4] -2250:Src/main.c **** LD2_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint - 7171 .loc 1 2250 2 is_stmt 1 view .LVU2291 - 7172 .LVL664: -2251:Src/main.c **** temp2++; - 7173 .loc 1 2251 2 view .LVU2292 -2251:Src/main.c **** temp2++; - 7174 .loc 1 2251 51 is_stmt 0 view .LVU2293 - 7175 00d6 6B8A ldrh r3, [r5, #18] - 7176 00d8 07EE903A vmov s15, r3 @ int -2251:Src/main.c **** temp2++; - 7177 .loc 1 2251 32 view .LVU2294 - 7178 00dc F8EE677A vcvt.f32.u32 s15, s15 -2251:Src/main.c **** temp2++; - 7179 .loc 1 2251 59 view .LVU2295 - 7180 00e0 67EE877A vmul.f32 s15, s15, s14 -2251:Src/main.c **** temp2++; - 7181 .loc 1 2251 30 view .LVU2296 - 7182 00e4 C6ED027A vstr.32 s15, [r6, #8] -2252:Src/main.c **** Long_Data[13] = (uint16_t)(*temp2);//Message ID - 7183 .loc 1 2252 2 is_stmt 1 view .LVU2297 - 7184 .LVL665: -2253:Src/main.c **** temp2++; - 7185 .loc 1 2253 2 view .LVU2298 -2253:Src/main.c **** temp2++; - 7186 .loc 1 2253 18 is_stmt 0 view .LVU2299 - 7187 00e8 AA8A ldrh r2, [r5, #20] -2253:Src/main.c **** temp2++; - 7188 .loc 1 2253 16 view .LVU2300 - 7189 00ea 7B4B ldr r3, .L382+12 - 7190 00ec 5A83 strh r2, [r3, #26] @ movhi -2254:Src/main.c **** LD1_curr_setup->CURRENT = (uint16_t)(*temp2); - 7191 .loc 1 2254 2 is_stmt 1 view .LVU2301 - 7192 .LVL666: -2255:Src/main.c **** temp2++; - 7193 .loc 1 2255 2 view .LVU2302 -2255:Src/main.c **** temp2++; - ARM GAS /tmp/ccwR4KB7.s page 508 +2404:Src/main.c **** Curr_setup->TS1_EN = ((uint8_t)((*temp2)>>9))&0x01; + 7679 .loc 1 2404 22 view .LVU2399 + 7680 0066 2372 strb r3, [r4, #8] +2405:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; + 7681 .loc 1 2405 2 is_stmt 1 view .LVU2400 +2405:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; + 7682 .loc 1 2405 35 is_stmt 0 view .LVU2401 + 7683 0068 2B88 ldrh r3, [r5] +2405:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; + 7684 .loc 1 2405 47 view .LVU2402 + 7685 006a C3F34023 ubfx r3, r3, #9, #1 +2405:Src/main.c **** Curr_setup->TS2_EN = ((uint8_t)((*temp2)>>10))&0x01; + 7686 .loc 1 2405 21 view .LVU2403 + 7687 006e 6372 strb r3, [r4, #9] +2406:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; + 7688 .loc 1 2406 2 is_stmt 1 view .LVU2404 +2406:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; + 7689 .loc 1 2406 35 is_stmt 0 view .LVU2405 + 7690 0070 2B88 ldrh r3, [r5] +2406:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; + 7691 .loc 1 2406 48 view .LVU2406 + 7692 0072 C3F38023 ubfx r3, r3, #10, #1 +2406:Src/main.c **** Curr_setup->SD_EN = ((uint8_t)((*temp2)>>11))&0x01; + 7693 .loc 1 2406 21 view .LVU2407 + 7694 0076 A372 strb r3, [r4, #10] +2407:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; + 7695 .loc 1 2407 2 is_stmt 1 view .LVU2408 +2407:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; + 7696 .loc 1 2407 34 is_stmt 0 view .LVU2409 + 7697 0078 2B88 ldrh r3, [r5] +2407:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; + 7698 .loc 1 2407 47 view .LVU2410 + 7699 007a C3F3C023 ubfx r3, r3, #11, #1 +2407:Src/main.c **** Curr_setup->PI1_RD = ((uint8_t)((*temp2)>>12))&0x01; + 7700 .loc 1 2407 20 view .LVU2411 + 7701 007e E372 strb r3, [r4, #11] +2408:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; + 7702 .loc 1 2408 2 is_stmt 1 view .LVU2412 +2408:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; + 7703 .loc 1 2408 35 is_stmt 0 view .LVU2413 + 7704 0080 2B88 ldrh r3, [r5] +2408:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; + 7705 .loc 1 2408 48 view .LVU2414 + 7706 0082 C3F30033 ubfx r3, r3, #12, #1 +2408:Src/main.c **** Curr_setup->PI2_RD = ((uint8_t)((*temp2)>>13))&0x01; + 7707 .loc 1 2408 21 view .LVU2415 + 7708 0086 2373 strb r3, [r4, #12] +2409:Src/main.c **** + 7709 .loc 1 2409 2 is_stmt 1 view .LVU2416 +2409:Src/main.c **** + 7710 .loc 1 2409 35 is_stmt 0 view .LVU2417 + 7711 0088 2B88 ldrh r3, [r5] +2409:Src/main.c **** + 7712 .loc 1 2409 48 view .LVU2418 + 7713 008a C3F34033 ubfx r3, r3, #13, #1 +2409:Src/main.c **** + 7714 .loc 1 2409 21 view .LVU2419 + ARM GAS /tmp/ccEQxcUB.s page 524 - 7194 .loc 1 2255 28 is_stmt 0 view .LVU2303 - 7195 00ee EB8A ldrh r3, [r5, #22] -2255:Src/main.c **** temp2++; - 7196 .loc 1 2255 26 view .LVU2304 - 7197 00f0 BB81 strh r3, [r7, #12] @ movhi -2256:Src/main.c **** LD2_curr_setup->CURRENT = (uint16_t)(*temp2); - 7198 .loc 1 2256 2 is_stmt 1 view .LVU2305 - 7199 .LVL667: -2257:Src/main.c **** temp2++; - 7200 .loc 1 2257 2 view .LVU2306 -2257:Src/main.c **** temp2++; - 7201 .loc 1 2257 28 is_stmt 0 view .LVU2307 - 7202 00f2 2B8B ldrh r3, [r5, #24] -2257:Src/main.c **** temp2++; - 7203 .loc 1 2257 26 view .LVU2308 - 7204 00f4 B381 strh r3, [r6, #12] @ movhi -2258:Src/main.c **** - 7205 .loc 1 2258 2 is_stmt 1 view .LVU2309 - 7206 .LVL668: -2260:Src/main.c **** { - 7207 .loc 1 2260 2 view .LVU2310 -2260:Src/main.c **** { - 7208 .loc 1 2260 16 is_stmt 0 view .LVU2311 - 7209 00f6 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 -2260:Src/main.c **** { - 7210 .loc 1 2260 5 view .LVU2312 - 7211 00f8 002B cmp r3, #0 - 7212 00fa 00F09580 beq .L360 -2262:Src/main.c **** } - 7213 .loc 1 2262 3 is_stmt 1 view .LVU2313 - 7214 00fe 0122 movs r2, #1 - 7215 0100 0821 movs r1, #8 - 7216 0102 7648 ldr r0, .L382+16 - 7217 0104 FFF7FEFF bl HAL_GPIO_WritePin - 7218 .LVL669: - 7219 .L361: -2269:Src/main.c **** { - 7220 .loc 1 2269 2 view .LVU2314 -2269:Src/main.c **** { - 7221 .loc 1 2269 16 is_stmt 0 view .LVU2315 - 7222 0108 A378 ldrb r3, [r4, #2] @ zero_extendqisi2 -2269:Src/main.c **** { - 7223 .loc 1 2269 5 view .LVU2316 - 7224 010a 002B cmp r3, #0 - 7225 010c 00F09280 beq .L362 -2271:Src/main.c **** } - 7226 .loc 1 2271 3 is_stmt 1 view .LVU2317 - 7227 0110 0122 movs r2, #1 - 7228 0112 0421 movs r1, #4 - 7229 0114 7148 ldr r0, .L382+16 - 7230 0116 FFF7FEFF bl HAL_GPIO_WritePin - 7231 .LVL670: - 7232 .L363: -2278:Src/main.c **** { - 7233 .loc 1 2278 2 view .LVU2318 -2278:Src/main.c **** { - 7234 .loc 1 2278 16 is_stmt 0 view .LVU2319 - ARM GAS /tmp/ccwR4KB7.s page 509 + 7715 008e 6373 strb r3, [r4, #13] +2411:Src/main.c **** LD1_curr_setup->LD_TEMP = (uint16_t)(*temp2); + 7716 .loc 1 2411 2 is_stmt 1 view .LVU2420 + 7717 .LVL733: +2412:Src/main.c **** temp2++; + 7718 .loc 1 2412 2 view .LVU2421 +2412:Src/main.c **** temp2++; + 7719 .loc 1 2412 28 is_stmt 0 view .LVU2422 + 7720 0090 6B88 ldrh r3, [r5, #2] +2412:Src/main.c **** temp2++; + 7721 .loc 1 2412 26 view .LVU2423 + 7722 0092 3B80 strh r3, [r7] @ movhi +2413:Src/main.c **** LD2_curr_setup->LD_TEMP = (uint16_t)(*temp2); + 7723 .loc 1 2413 2 is_stmt 1 view .LVU2424 + 7724 .LVL734: +2414:Src/main.c **** temp2++; + 7725 .loc 1 2414 2 view .LVU2425 +2414:Src/main.c **** temp2++; + 7726 .loc 1 2414 28 is_stmt 0 view .LVU2426 + 7727 0094 AB88 ldrh r3, [r5, #4] +2414:Src/main.c **** temp2++; + 7728 .loc 1 2414 26 view .LVU2427 + 7729 0096 3380 strh r3, [r6] @ movhi +2415:Src/main.c **** temp2++; + 7730 .loc 1 2415 2 is_stmt 1 view .LVU2428 + 7731 .LVL735: +2416:Src/main.c **** temp2++; + 7732 .loc 1 2416 2 view .LVU2429 +2417:Src/main.c **** Curr_setup->AVERAGES = (uint16_t)(*temp2); + 7733 .loc 1 2417 2 view .LVU2430 +2418:Src/main.c **** temp2++; + 7734 .loc 1 2418 2 view .LVU2431 +2418:Src/main.c **** temp2++; + 7735 .loc 1 2418 25 is_stmt 0 view .LVU2432 + 7736 0098 6B89 ldrh r3, [r5, #10] +2418:Src/main.c **** temp2++; + 7737 .loc 1 2418 23 view .LVU2433 + 7738 009a E381 strh r3, [r4, #14] @ movhi +2419:Src/main.c **** LD1_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint + 7739 .loc 1 2419 2 is_stmt 1 view .LVU2434 + 7740 .LVL736: +2420:Src/main.c **** temp2++; + 7741 .loc 1 2420 2 view .LVU2435 +2420:Src/main.c **** temp2++; + 7742 .loc 1 2420 51 is_stmt 0 view .LVU2436 + 7743 009c AB89 ldrh r3, [r5, #12] + 7744 009e 07EE903A vmov s15, r3 @ int +2420:Src/main.c **** temp2++; + 7745 .loc 1 2420 32 view .LVU2437 + 7746 00a2 F8EE677A vcvt.f32.u32 s15, s15 +2420:Src/main.c **** temp2++; + 7747 .loc 1 2420 59 view .LVU2438 + 7748 00a6 9FED8B7A vldr.32 s14, .L419+8 + 7749 00aa 67EE877A vmul.f32 s15, s15, s14 +2420:Src/main.c **** temp2++; + 7750 .loc 1 2420 30 view .LVU2439 + 7751 00ae C7ED017A vstr.32 s15, [r7, #4] + ARM GAS /tmp/ccEQxcUB.s page 525 - 7235 011a E378 ldrb r3, [r4, #3] @ zero_extendqisi2 -2278:Src/main.c **** { - 7236 .loc 1 2278 5 view .LVU2320 - 7237 011c 002B cmp r3, #0 - 7238 011e 00F08F80 beq .L364 -2280:Src/main.c **** //LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC - 7239 .loc 1 2280 3 is_stmt 1 view .LVU2321 - 7240 0122 0122 movs r2, #1 - 7241 0124 4FF48071 mov r1, #256 - 7242 0128 6948 ldr r0, .L382+4 - 7243 012a FFF7FEFF bl HAL_GPIO_WritePin - 7244 .LVL671: - 7245 .L365: -2289:Src/main.c **** { - 7246 .loc 1 2289 2 view .LVU2322 -2289:Src/main.c **** { - 7247 .loc 1 2289 16 is_stmt 0 view .LVU2323 - 7248 012e 2379 ldrb r3, [r4, #4] @ zero_extendqisi2 -2289:Src/main.c **** { - 7249 .loc 1 2289 5 view .LVU2324 - 7250 0130 002B cmp r3, #0 - 7251 0132 00F08C80 beq .L366 -2291:Src/main.c **** //LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC - 7252 .loc 1 2291 3 is_stmt 1 view .LVU2325 - 7253 0136 0122 movs r2, #1 - 7254 0138 1021 movs r1, #16 - 7255 013a 6848 ldr r0, .L382+16 - 7256 013c FFF7FEFF bl HAL_GPIO_WritePin - 7257 .LVL672: - 7258 .L367: -2300:Src/main.c **** { - 7259 .loc 1 2300 2 view .LVU2326 -2300:Src/main.c **** { - 7260 .loc 1 2300 16 is_stmt 0 view .LVU2327 - 7261 0140 6379 ldrb r3, [r4, #5] @ zero_extendqisi2 -2300:Src/main.c **** { - 7262 .loc 1 2300 5 view .LVU2328 - 7263 0142 002B cmp r3, #0 - 7264 0144 00F08980 beq .L368 -2302:Src/main.c **** } - 7265 .loc 1 2302 3 is_stmt 1 view .LVU2329 - 7266 0148 0122 movs r2, #1 - 7267 014a 4FF48061 mov r1, #1024 - 7268 014e 6448 ldr r0, .L382+20 - 7269 0150 FFF7FEFF bl HAL_GPIO_WritePin - 7270 .LVL673: - 7271 .L369: -2309:Src/main.c **** { - 7272 .loc 1 2309 2 view .LVU2330 -2309:Src/main.c **** { - 7273 .loc 1 2309 16 is_stmt 0 view .LVU2331 - 7274 0154 A379 ldrb r3, [r4, #6] @ zero_extendqisi2 -2309:Src/main.c **** { - 7275 .loc 1 2309 5 view .LVU2332 - 7276 0156 002B cmp r3, #0 - 7277 0158 00F08680 beq .L370 -2311:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 510 +2421:Src/main.c **** LD1_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint + 7752 .loc 1 2421 2 is_stmt 1 view .LVU2440 + 7753 .LVL737: +2422:Src/main.c **** temp2++; + 7754 .loc 1 2422 2 view .LVU2441 +2422:Src/main.c **** temp2++; + 7755 .loc 1 2422 51 is_stmt 0 view .LVU2442 + 7756 00b2 EB89 ldrh r3, [r5, #14] + 7757 00b4 07EE903A vmov s15, r3 @ int +2422:Src/main.c **** temp2++; + 7758 .loc 1 2422 32 view .LVU2443 + 7759 00b8 F8EE677A vcvt.f32.u32 s15, s15 +2422:Src/main.c **** temp2++; + 7760 .loc 1 2422 59 view .LVU2444 + 7761 00bc 67EE877A vmul.f32 s15, s15, s14 +2422:Src/main.c **** temp2++; + 7762 .loc 1 2422 30 view .LVU2445 + 7763 00c0 C7ED027A vstr.32 s15, [r7, #8] +2423:Src/main.c **** LD2_curr_setup->P_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint + 7764 .loc 1 2423 2 is_stmt 1 view .LVU2446 + 7765 .LVL738: +2424:Src/main.c **** temp2++; + 7766 .loc 1 2424 2 view .LVU2447 +2424:Src/main.c **** temp2++; + 7767 .loc 1 2424 51 is_stmt 0 view .LVU2448 + 7768 00c4 2B8A ldrh r3, [r5, #16] + 7769 00c6 07EE903A vmov s15, r3 @ int +2424:Src/main.c **** temp2++; + 7770 .loc 1 2424 32 view .LVU2449 + 7771 00ca F8EE677A vcvt.f32.u32 s15, s15 +2424:Src/main.c **** temp2++; + 7772 .loc 1 2424 59 view .LVU2450 + 7773 00ce 67EE877A vmul.f32 s15, s15, s14 +2424:Src/main.c **** temp2++; + 7774 .loc 1 2424 30 view .LVU2451 + 7775 00d2 C6ED017A vstr.32 s15, [r6, #4] +2425:Src/main.c **** LD2_curr_setup->I_coef_temp = (float)((uint16_t)(*temp2))/((float)(256));//(float)(1/(float)((uint + 7776 .loc 1 2425 2 is_stmt 1 view .LVU2452 + 7777 .LVL739: +2426:Src/main.c **** temp2++; + 7778 .loc 1 2426 2 view .LVU2453 +2426:Src/main.c **** temp2++; + 7779 .loc 1 2426 51 is_stmt 0 view .LVU2454 + 7780 00d6 6B8A ldrh r3, [r5, #18] + 7781 00d8 07EE903A vmov s15, r3 @ int +2426:Src/main.c **** temp2++; + 7782 .loc 1 2426 32 view .LVU2455 + 7783 00dc F8EE677A vcvt.f32.u32 s15, s15 +2426:Src/main.c **** temp2++; + 7784 .loc 1 2426 59 view .LVU2456 + 7785 00e0 67EE877A vmul.f32 s15, s15, s14 +2426:Src/main.c **** temp2++; + 7786 .loc 1 2426 30 view .LVU2457 + 7787 00e4 C6ED027A vstr.32 s15, [r6, #8] +2427:Src/main.c **** Long_Data[13] = (uint16_t)(*temp2);//Message ID + 7788 .loc 1 2427 2 is_stmt 1 view .LVU2458 + 7789 .LVL740: + ARM GAS /tmp/ccEQxcUB.s page 526 - 7278 .loc 1 2311 3 is_stmt 1 view .LVU2333 - 7279 015c 0122 movs r2, #1 - 7280 015e 0821 movs r1, #8 - 7281 0160 6048 ldr r0, .L382+24 - 7282 0162 FFF7FEFF bl HAL_GPIO_WritePin - 7283 .LVL674: - 7284 .L371: -2318:Src/main.c **** { - 7285 .loc 1 2318 2 view .LVU2334 -2318:Src/main.c **** { - 7286 .loc 1 2318 17 is_stmt 0 view .LVU2335 - 7287 0166 637A ldrb r3, [r4, #9] @ zero_extendqisi2 -2318:Src/main.c **** { - 7288 .loc 1 2318 5 view .LVU2336 - 7289 0168 1BB1 cbz r3, .L372 -2318:Src/main.c **** { - 7290 .loc 1 2318 39 discriminator 1 view .LVU2337 - 7291 016a E379 ldrb r3, [r4, #7] @ zero_extendqisi2 -2318:Src/main.c **** { - 7292 .loc 1 2318 26 discriminator 1 view .LVU2338 - 7293 016c 002B cmp r3, #0 - 7294 016e 40F08180 bne .L380 - 7295 .L372: -2327:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); - 7296 .loc 1 2327 3 is_stmt 1 view .LVU2339 - 7297 0172 0022 movs r2, #0 - 7298 0174 0121 movs r1, #1 - 7299 0176 5B48 ldr r0, .L382+24 - 7300 0178 FFF7FEFF bl HAL_GPIO_WritePin - 7301 .LVL675: -2328:Src/main.c **** } - 7302 .loc 1 2328 3 view .LVU2340 - 7303 017c 0022 movs r2, #0 - 7304 017e 4FF40061 mov r1, #2048 - 7305 0182 5748 ldr r0, .L382+20 - 7306 0184 FFF7FEFF bl HAL_GPIO_WritePin - 7307 .LVL676: - 7308 .L373: -2331:Src/main.c **** { - 7309 .loc 1 2331 2 view .LVU2341 -2331:Src/main.c **** { - 7310 .loc 1 2331 17 is_stmt 0 view .LVU2342 - 7311 0188 A37A ldrb r3, [r4, #10] @ zero_extendqisi2 -2331:Src/main.c **** { - 7312 .loc 1 2331 5 view .LVU2343 - 7313 018a 1BB1 cbz r3, .L374 -2331:Src/main.c **** { - 7314 .loc 1 2331 39 discriminator 1 view .LVU2344 - 7315 018c 237A ldrb r3, [r4, #8] @ zero_extendqisi2 -2331:Src/main.c **** { - 7316 .loc 1 2331 26 discriminator 1 view .LVU2345 - 7317 018e 002B cmp r3, #0 - 7318 0190 40F08680 bne .L381 - 7319 .L374: -2340:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); - 7320 .loc 1 2340 3 is_stmt 1 view .LVU2346 - 7321 0194 0022 movs r2, #0 - ARM GAS /tmp/ccwR4KB7.s page 511 +2428:Src/main.c **** temp2++; + 7790 .loc 1 2428 2 view .LVU2459 +2428:Src/main.c **** temp2++; + 7791 .loc 1 2428 18 is_stmt 0 view .LVU2460 + 7792 00e8 AA8A ldrh r2, [r5, #20] +2428:Src/main.c **** temp2++; + 7793 .loc 1 2428 16 view .LVU2461 + 7794 00ea 7B4B ldr r3, .L419+12 + 7795 00ec 5A83 strh r2, [r3, #26] @ movhi +2429:Src/main.c **** LD1_curr_setup->CURRENT = (uint16_t)(*temp2); + 7796 .loc 1 2429 2 is_stmt 1 view .LVU2462 + 7797 .LVL741: +2430:Src/main.c **** temp2++; + 7798 .loc 1 2430 2 view .LVU2463 +2430:Src/main.c **** temp2++; + 7799 .loc 1 2430 28 is_stmt 0 view .LVU2464 + 7800 00ee EB8A ldrh r3, [r5, #22] +2430:Src/main.c **** temp2++; + 7801 .loc 1 2430 26 view .LVU2465 + 7802 00f0 BB81 strh r3, [r7, #12] @ movhi +2431:Src/main.c **** LD2_curr_setup->CURRENT = (uint16_t)(*temp2); + 7803 .loc 1 2431 2 is_stmt 1 view .LVU2466 + 7804 .LVL742: +2432:Src/main.c **** temp2++; + 7805 .loc 1 2432 2 view .LVU2467 +2432:Src/main.c **** temp2++; + 7806 .loc 1 2432 28 is_stmt 0 view .LVU2468 + 7807 00f2 2B8B ldrh r3, [r5, #24] +2432:Src/main.c **** temp2++; + 7808 .loc 1 2432 26 view .LVU2469 + 7809 00f4 B381 strh r3, [r6, #12] @ movhi +2433:Src/main.c **** + 7810 .loc 1 2433 2 is_stmt 1 view .LVU2470 + 7811 .LVL743: +2435:Src/main.c **** { + 7812 .loc 1 2435 2 view .LVU2471 +2435:Src/main.c **** { + 7813 .loc 1 2435 16 is_stmt 0 view .LVU2472 + 7814 00f6 6378 ldrb r3, [r4, #1] @ zero_extendqisi2 +2435:Src/main.c **** { + 7815 .loc 1 2435 5 view .LVU2473 + 7816 00f8 002B cmp r3, #0 + 7817 00fa 00F09580 beq .L397 +2437:Src/main.c **** } + 7818 .loc 1 2437 3 is_stmt 1 view .LVU2474 + 7819 00fe 0122 movs r2, #1 + 7820 0100 0821 movs r1, #8 + 7821 0102 7648 ldr r0, .L419+16 + 7822 0104 FFF7FEFF bl HAL_GPIO_WritePin + 7823 .LVL744: + 7824 .L398: +2444:Src/main.c **** { + 7825 .loc 1 2444 2 view .LVU2475 +2444:Src/main.c **** { + 7826 .loc 1 2444 16 is_stmt 0 view .LVU2476 + 7827 0108 A378 ldrb r3, [r4, #2] @ zero_extendqisi2 +2444:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 527 - 7322 0196 0221 movs r1, #2 - 7323 0198 5248 ldr r0, .L382+24 - 7324 019a FFF7FEFF bl HAL_GPIO_WritePin - 7325 .LVL677: -2341:Src/main.c **** } - 7326 .loc 1 2341 3 view .LVU2347 - 7327 019e 0022 movs r2, #0 - 7328 01a0 2021 movs r1, #32 - 7329 01a2 4E48 ldr r0, .L382+16 - 7330 01a4 FFF7FEFF bl HAL_GPIO_WritePin - 7331 .LVL678: - 7332 .L375: -2344:Src/main.c **** { - 7333 .loc 1 2344 2 view .LVU2348 -2344:Src/main.c **** { - 7334 .loc 1 2344 16 is_stmt 0 view .LVU2349 - 7335 01a8 237B ldrb r3, [r4, #12] @ zero_extendqisi2 -2344:Src/main.c **** { - 7336 .loc 1 2344 5 view .LVU2350 - 7337 01aa 1BB9 cbnz r3, .L376 -2346:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; - 7338 .loc 1 2346 3 is_stmt 1 view .LVU2351 -2346:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; - 7339 .loc 1 2346 31 is_stmt 0 view .LVU2352 - 7340 01ac 4E4B ldr r3, .L382+28 - 7341 01ae 7B60 str r3, [r7, #4] @ float -2347:Src/main.c **** } - 7342 .loc 1 2347 3 is_stmt 1 view .LVU2353 -2347:Src/main.c **** } - 7343 .loc 1 2347 31 is_stmt 0 view .LVU2354 - 7344 01b0 4E4B ldr r3, .L382+32 - 7345 01b2 BB60 str r3, [r7, #8] @ float - 7346 .L376: -2350:Src/main.c **** { - 7347 .loc 1 2350 2 is_stmt 1 view .LVU2355 -2350:Src/main.c **** { - 7348 .loc 1 2350 16 is_stmt 0 view .LVU2356 - 7349 01b4 637B ldrb r3, [r4, #13] @ zero_extendqisi2 -2350:Src/main.c **** { - 7350 .loc 1 2350 5 view .LVU2357 - 7351 01b6 1BB9 cbnz r3, .L358 -2352:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; - 7352 .loc 1 2352 3 is_stmt 1 view .LVU2358 -2352:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; - 7353 .loc 1 2352 31 is_stmt 0 view .LVU2359 - 7354 01b8 4B4B ldr r3, .L382+28 - 7355 01ba 7360 str r3, [r6, #4] @ float -2353:Src/main.c **** } - 7356 .loc 1 2353 3 is_stmt 1 view .LVU2360 -2353:Src/main.c **** } - 7357 .loc 1 2353 31 is_stmt 0 view .LVU2361 - 7358 01bc 4B4B ldr r3, .L382+32 - 7359 01be B360 str r3, [r6, #8] @ float - 7360 .L358: -2355:Src/main.c **** - 7361 .loc 1 2355 1 view .LVU2362 - 7362 01c0 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc} - ARM GAS /tmp/ccwR4KB7.s page 512 + 7828 .loc 1 2444 5 view .LVU2477 + 7829 010a 002B cmp r3, #0 + 7830 010c 00F09280 beq .L399 +2446:Src/main.c **** } + 7831 .loc 1 2446 3 is_stmt 1 view .LVU2478 + 7832 0110 0122 movs r2, #1 + 7833 0112 8021 movs r1, #128 + 7834 0114 7148 ldr r0, .L419+16 + 7835 0116 FFF7FEFF bl HAL_GPIO_WritePin + 7836 .LVL745: + 7837 .L400: +2453:Src/main.c **** { + 7838 .loc 1 2453 2 view .LVU2479 +2453:Src/main.c **** { + 7839 .loc 1 2453 16 is_stmt 0 view .LVU2480 + 7840 011a E378 ldrb r3, [r4, #3] @ zero_extendqisi2 +2453:Src/main.c **** { + 7841 .loc 1 2453 5 view .LVU2481 + 7842 011c 002B cmp r3, #0 + 7843 011e 00F08F80 beq .L401 +2455:Src/main.c **** //LL_SPI_Enable(SPI2);//Enable SPI for Laser1 DAC + 7844 .loc 1 2455 3 is_stmt 1 view .LVU2482 + 7845 0122 0122 movs r2, #1 + 7846 0124 4FF48071 mov r1, #256 + 7847 0128 6948 ldr r0, .L419+4 + 7848 012a FFF7FEFF bl HAL_GPIO_WritePin + 7849 .LVL746: + 7850 .L402: +2464:Src/main.c **** { + 7851 .loc 1 2464 2 view .LVU2483 +2464:Src/main.c **** { + 7852 .loc 1 2464 16 is_stmt 0 view .LVU2484 + 7853 012e 2379 ldrb r3, [r4, #4] @ zero_extendqisi2 +2464:Src/main.c **** { + 7854 .loc 1 2464 5 view .LVU2485 + 7855 0130 002B cmp r3, #0 + 7856 0132 00F08C80 beq .L403 +2466:Src/main.c **** //LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC + 7857 .loc 1 2466 3 is_stmt 1 view .LVU2486 + 7858 0136 0122 movs r2, #1 + 7859 0138 1021 movs r1, #16 + 7860 013a 6848 ldr r0, .L419+16 + 7861 013c FFF7FEFF bl HAL_GPIO_WritePin + 7862 .LVL747: + 7863 .L404: +2475:Src/main.c **** { + 7864 .loc 1 2475 2 view .LVU2487 +2475:Src/main.c **** { + 7865 .loc 1 2475 16 is_stmt 0 view .LVU2488 + 7866 0140 6379 ldrb r3, [r4, #5] @ zero_extendqisi2 +2475:Src/main.c **** { + 7867 .loc 1 2475 5 view .LVU2489 + 7868 0142 002B cmp r3, #0 + 7869 0144 00F08980 beq .L405 +2477:Src/main.c **** } + 7870 .loc 1 2477 3 is_stmt 1 view .LVU2490 + 7871 0148 0122 movs r2, #1 + ARM GAS /tmp/ccEQxcUB.s page 528 - 7363 .LVL679: - 7364 .L379: -2206:Src/main.c **** { - 7365 .loc 1 2206 6 view .LVU2363 - 7366 01c4 4FF48071 mov r1, #256 - 7367 01c8 4648 ldr r0, .L382+24 - 7368 01ca FFF7FEFF bl HAL_GPIO_ReadPin - 7369 .LVL680: -2205:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u - 7370 .loc 1 2205 78 discriminator 1 view .LVU2364 - 7371 01ce 0128 cmp r0, #1 - 7372 01d0 7FF426AF bne .L359 -2208:Src/main.c **** if (test == 0) //0 - suc - 7373 .loc 1 2208 3 is_stmt 1 view .LVU2365 -2208:Src/main.c **** if (test == 0) //0 - suc - 7374 .loc 1 2208 10 is_stmt 0 view .LVU2366 - 7375 01d4 4648 ldr r0, .L382+36 - 7376 01d6 FFF7FEFF bl Mount_SD - 7377 .LVL681: -2208:Src/main.c **** if (test == 0) //0 - suc - 7378 .loc 1 2208 8 discriminator 1 view .LVU2367 - 7379 01da 3C4B ldr r3, .L382 - 7380 01dc 1860 str r0, [r3] -2209:Src/main.c **** { - 7381 .loc 1 2209 3 is_stmt 1 view .LVU2368 -2209:Src/main.c **** { - 7382 .loc 1 2209 6 is_stmt 0 view .LVU2369 - 7383 01de 0028 cmp r0, #0 - 7384 01e0 7FF41EAF bne .L359 -2212:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ - 7385 .loc 1 2212 4 is_stmt 1 view .LVU2370 -2212:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ - 7386 .loc 1 2212 11 is_stmt 0 view .LVU2371 - 7387 01e4 DFF80C91 ldr r9, .L382+40 - 7388 01e8 4846 mov r0, r9 - 7389 01ea FFF7FEFF bl Remove_File - 7390 .LVL682: -2212:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ - 7391 .loc 1 2212 9 discriminator 1 view .LVU2372 - 7392 01ee DFF8DC80 ldr r8, .L382 - 7393 01f2 C8F80000 str r0, [r8] -2213:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7394 .loc 1 2213 4 is_stmt 1 view .LVU2373 -2213:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7395 .loc 1 2213 11 is_stmt 0 view .LVU2374 - 7396 01f6 4846 mov r0, r9 - 7397 01f8 FFF7FEFF bl Create_File - 7398 .LVL683: -2213:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7399 .loc 1 2213 9 discriminator 1 view .LVU2375 - 7400 01fc C8F80000 str r0, [r8] -2214:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7401 .loc 1 2214 4 is_stmt 1 view .LVU2376 -2214:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7402 .loc 1 2214 11 is_stmt 0 view .LVU2377 - 7403 0200 1E22 movs r2, #30 - 7404 0202 2946 mov r1, r5 - ARM GAS /tmp/ccwR4KB7.s page 513 + 7872 014a 4FF48061 mov r1, #1024 + 7873 014e 6448 ldr r0, .L419+20 + 7874 0150 FFF7FEFF bl HAL_GPIO_WritePin + 7875 .LVL748: + 7876 .L406: +2484:Src/main.c **** { + 7877 .loc 1 2484 2 view .LVU2491 +2484:Src/main.c **** { + 7878 .loc 1 2484 16 is_stmt 0 view .LVU2492 + 7879 0154 A379 ldrb r3, [r4, #6] @ zero_extendqisi2 +2484:Src/main.c **** { + 7880 .loc 1 2484 5 view .LVU2493 + 7881 0156 002B cmp r3, #0 + 7882 0158 00F08680 beq .L407 +2486:Src/main.c **** } + 7883 .loc 1 2486 3 is_stmt 1 view .LVU2494 + 7884 015c 0122 movs r2, #1 + 7885 015e 0821 movs r1, #8 + 7886 0160 6048 ldr r0, .L419+24 + 7887 0162 FFF7FEFF bl HAL_GPIO_WritePin + 7888 .LVL749: + 7889 .L408: +2493:Src/main.c **** { + 7890 .loc 1 2493 2 view .LVU2495 +2493:Src/main.c **** { + 7891 .loc 1 2493 17 is_stmt 0 view .LVU2496 + 7892 0166 637A ldrb r3, [r4, #9] @ zero_extendqisi2 +2493:Src/main.c **** { + 7893 .loc 1 2493 5 view .LVU2497 + 7894 0168 1BB1 cbz r3, .L409 +2493:Src/main.c **** { + 7895 .loc 1 2493 39 discriminator 1 view .LVU2498 + 7896 016a E379 ldrb r3, [r4, #7] @ zero_extendqisi2 +2493:Src/main.c **** { + 7897 .loc 1 2493 26 discriminator 1 view .LVU2499 + 7898 016c 002B cmp r3, #0 + 7899 016e 40F08180 bne .L417 + 7900 .L409: +2502:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_RESET); + 7901 .loc 1 2502 3 is_stmt 1 view .LVU2500 + 7902 0172 0022 movs r2, #0 + 7903 0174 0121 movs r1, #1 + 7904 0176 5B48 ldr r0, .L419+24 + 7905 0178 FFF7FEFF bl HAL_GPIO_WritePin + 7906 .LVL750: +2503:Src/main.c **** } + 7907 .loc 1 2503 3 view .LVU2501 + 7908 017c 0022 movs r2, #0 + 7909 017e 4FF40061 mov r1, #2048 + 7910 0182 5748 ldr r0, .L419+20 + 7911 0184 FFF7FEFF bl HAL_GPIO_WritePin + 7912 .LVL751: + 7913 .L410: +2506:Src/main.c **** { + 7914 .loc 1 2506 2 view .LVU2502 +2506:Src/main.c **** { + 7915 .loc 1 2506 17 is_stmt 0 view .LVU2503 + ARM GAS /tmp/ccEQxcUB.s page 529 - 7405 0204 4846 mov r0, r9 - 7406 0206 FFF7FEFF bl Write_File_byte - 7407 .LVL684: -2214:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); - 7408 .loc 1 2214 9 discriminator 1 view .LVU2378 - 7409 020a C8F80000 str r0, [r8] -2215:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 7410 .loc 1 2215 4 is_stmt 1 view .LVU2379 -2215:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 7411 .loc 1 2215 11 is_stmt 0 view .LVU2380 - 7412 020e 1E22 movs r2, #30 - 7413 0210 2946 mov r1, r5 - 7414 0212 4846 mov r0, r9 - 7415 0214 FFF7FEFF bl Update_File_byte - 7416 .LVL685: -2215:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 7417 .loc 1 2215 9 discriminator 1 view .LVU2381 - 7418 0218 C8F80000 str r0, [r8] -2216:Src/main.c **** } - 7419 .loc 1 2216 4 is_stmt 1 view .LVU2382 -2216:Src/main.c **** } - 7420 .loc 1 2216 11 is_stmt 0 view .LVU2383 - 7421 021c 3448 ldr r0, .L382+36 - 7422 021e FFF7FEFF bl Unmount_SD - 7423 .LVL686: -2216:Src/main.c **** } - 7424 .loc 1 2216 9 discriminator 1 view .LVU2384 - 7425 0222 C8F80000 str r0, [r8] - 7426 0226 FBE6 b .L359 - 7427 .LVL687: - 7428 .L360: -2266:Src/main.c **** } - 7429 .loc 1 2266 3 is_stmt 1 view .LVU2385 - 7430 0228 0022 movs r2, #0 - 7431 022a 0821 movs r1, #8 - 7432 022c 2B48 ldr r0, .L382+16 - 7433 022e FFF7FEFF bl HAL_GPIO_WritePin - 7434 .LVL688: - 7435 0232 69E7 b .L361 - 7436 .L362: -2275:Src/main.c **** } - 7437 .loc 1 2275 3 view .LVU2386 - 7438 0234 0022 movs r2, #0 - 7439 0236 0421 movs r1, #4 - 7440 0238 2848 ldr r0, .L382+16 - 7441 023a FFF7FEFF bl HAL_GPIO_WritePin - 7442 .LVL689: - 7443 023e 6CE7 b .L363 - 7444 .L364: -2285:Src/main.c **** //LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC - 7445 .loc 1 2285 3 view .LVU2387 - 7446 0240 0022 movs r2, #0 - 7447 0242 4FF48071 mov r1, #256 - 7448 0246 2248 ldr r0, .L382+4 - 7449 0248 FFF7FEFF bl HAL_GPIO_WritePin - 7450 .LVL690: - 7451 024c 6FE7 b .L365 - ARM GAS /tmp/ccwR4KB7.s page 514 + 7916 0188 A37A ldrb r3, [r4, #10] @ zero_extendqisi2 +2506:Src/main.c **** { + 7917 .loc 1 2506 5 view .LVU2504 + 7918 018a 1BB1 cbz r3, .L411 +2506:Src/main.c **** { + 7919 .loc 1 2506 39 discriminator 1 view .LVU2505 + 7920 018c 237A ldrb r3, [r4, #8] @ zero_extendqisi2 +2506:Src/main.c **** { + 7921 .loc 1 2506 26 discriminator 1 view .LVU2506 + 7922 018e 002B cmp r3, #0 + 7923 0190 40F08680 bne .L418 + 7924 .L411: +2515:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_RESET); + 7925 .loc 1 2515 3 is_stmt 1 view .LVU2507 + 7926 0194 0022 movs r2, #0 + 7927 0196 0221 movs r1, #2 + 7928 0198 5248 ldr r0, .L419+24 + 7929 019a FFF7FEFF bl HAL_GPIO_WritePin + 7930 .LVL752: +2516:Src/main.c **** } + 7931 .loc 1 2516 3 view .LVU2508 + 7932 019e 0022 movs r2, #0 + 7933 01a0 2021 movs r1, #32 + 7934 01a2 4E48 ldr r0, .L419+16 + 7935 01a4 FFF7FEFF bl HAL_GPIO_WritePin + 7936 .LVL753: + 7937 .L412: +2519:Src/main.c **** { + 7938 .loc 1 2519 2 view .LVU2509 +2519:Src/main.c **** { + 7939 .loc 1 2519 16 is_stmt 0 view .LVU2510 + 7940 01a8 237B ldrb r3, [r4, #12] @ zero_extendqisi2 +2519:Src/main.c **** { + 7941 .loc 1 2519 5 view .LVU2511 + 7942 01aa 1BB9 cbnz r3, .L413 +2521:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; + 7943 .loc 1 2521 3 is_stmt 1 view .LVU2512 +2521:Src/main.c **** LD1_curr_setup->I_coef_temp = 0.01; + 7944 .loc 1 2521 31 is_stmt 0 view .LVU2513 + 7945 01ac 4E4B ldr r3, .L419+28 + 7946 01ae 7B60 str r3, [r7, #4] @ float +2522:Src/main.c **** } + 7947 .loc 1 2522 3 is_stmt 1 view .LVU2514 +2522:Src/main.c **** } + 7948 .loc 1 2522 31 is_stmt 0 view .LVU2515 + 7949 01b0 4E4B ldr r3, .L419+32 + 7950 01b2 BB60 str r3, [r7, #8] @ float + 7951 .L413: +2525:Src/main.c **** { + 7952 .loc 1 2525 2 is_stmt 1 view .LVU2516 +2525:Src/main.c **** { + 7953 .loc 1 2525 16 is_stmt 0 view .LVU2517 + 7954 01b4 637B ldrb r3, [r4, #13] @ zero_extendqisi2 +2525:Src/main.c **** { + 7955 .loc 1 2525 5 view .LVU2518 + 7956 01b6 1BB9 cbnz r3, .L395 +2527:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; + ARM GAS /tmp/ccEQxcUB.s page 530 - 7452 .L366: -2296:Src/main.c **** //LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC - 7453 .loc 1 2296 3 view .LVU2388 - 7454 024e 0022 movs r2, #0 - 7455 0250 1021 movs r1, #16 - 7456 0252 2248 ldr r0, .L382+16 - 7457 0254 FFF7FEFF bl HAL_GPIO_WritePin - 7458 .LVL691: - 7459 0258 72E7 b .L367 - 7460 .L368: -2306:Src/main.c **** } - 7461 .loc 1 2306 3 view .LVU2389 - 7462 025a 0022 movs r2, #0 - 7463 025c 4FF48061 mov r1, #1024 - 7464 0260 1F48 ldr r0, .L382+20 - 7465 0262 FFF7FEFF bl HAL_GPIO_WritePin - 7466 .LVL692: - 7467 0266 75E7 b .L369 - 7468 .L370: -2315:Src/main.c **** } - 7469 .loc 1 2315 3 view .LVU2390 - 7470 0268 0022 movs r2, #0 - 7471 026a 0821 movs r1, #8 - 7472 026c 1D48 ldr r0, .L382+24 - 7473 026e FFF7FEFF bl HAL_GPIO_WritePin - 7474 .LVL693: - 7475 0272 78E7 b .L371 - 7476 .L380: -2320:Src/main.c **** Set_LTEC(3,32767); - 7477 .loc 1 2320 3 view .LVU2391 - 7478 0274 47F6FF71 movw r1, #32767 - 7479 0278 0320 movs r0, #3 - 7480 027a FFF7FEFF bl Set_LTEC - 7481 .LVL694: -2321:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_SET); - 7482 .loc 1 2321 3 view .LVU2392 - 7483 027e 47F6FF71 movw r1, #32767 - 7484 0282 0320 movs r0, #3 - 7485 0284 FFF7FEFF bl Set_LTEC - 7486 .LVL695: -2322:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_SET); - 7487 .loc 1 2322 3 view .LVU2393 - 7488 0288 0122 movs r2, #1 - 7489 028a 4FF40061 mov r1, #2048 - 7490 028e 1448 ldr r0, .L382+20 - 7491 0290 FFF7FEFF bl HAL_GPIO_WritePin - 7492 .LVL696: -2323:Src/main.c **** } - 7493 .loc 1 2323 3 view .LVU2394 - 7494 0294 0122 movs r2, #1 - 7495 0296 1146 mov r1, r2 - 7496 0298 1248 ldr r0, .L382+24 - 7497 029a FFF7FEFF bl HAL_GPIO_WritePin - 7498 .LVL697: - 7499 029e 73E7 b .L373 - 7500 .L381: -2333:Src/main.c **** Set_LTEC(4,32767); - ARM GAS /tmp/ccwR4KB7.s page 515 + 7957 .loc 1 2527 3 is_stmt 1 view .LVU2519 +2527:Src/main.c **** LD2_curr_setup->I_coef_temp = 0.01; + 7958 .loc 1 2527 31 is_stmt 0 view .LVU2520 + 7959 01b8 4B4B ldr r3, .L419+28 + 7960 01ba 7360 str r3, [r6, #4] @ float +2528:Src/main.c **** } + 7961 .loc 1 2528 3 is_stmt 1 view .LVU2521 +2528:Src/main.c **** } + 7962 .loc 1 2528 31 is_stmt 0 view .LVU2522 + 7963 01bc 4B4B ldr r3, .L419+32 + 7964 01be B360 str r3, [r6, #8] @ float + 7965 .L395: +2530:Src/main.c **** + 7966 .loc 1 2530 1 view .LVU2523 + 7967 01c0 BDE8F883 pop {r3, r4, r5, r6, r7, r8, r9, pc} + 7968 .LVL754: + 7969 .L416: +2381:Src/main.c **** { + 7970 .loc 1 2381 6 view .LVU2524 + 7971 01c4 4FF48071 mov r1, #256 + 7972 01c8 4648 ldr r0, .L419+24 + 7973 01ca FFF7FEFF bl HAL_GPIO_ReadPin + 7974 .LVL755: +2380:Src/main.c **** (HAL_GPIO_ReadPin(USB_FLAG_GPIO_Port, USB_FLAG_Pin) == GPIO_PIN_SET))//if exist sd && connect u + 7975 .loc 1 2380 78 discriminator 1 view .LVU2525 + 7976 01ce 0128 cmp r0, #1 + 7977 01d0 7FF426AF bne .L396 +2383:Src/main.c **** if (test == 0) //0 - suc + 7978 .loc 1 2383 3 is_stmt 1 view .LVU2526 +2383:Src/main.c **** if (test == 0) //0 - suc + 7979 .loc 1 2383 10 is_stmt 0 view .LVU2527 + 7980 01d4 4648 ldr r0, .L419+36 + 7981 01d6 FFF7FEFF bl Mount_SD + 7982 .LVL756: +2383:Src/main.c **** if (test == 0) //0 - suc + 7983 .loc 1 2383 8 discriminator 1 view .LVU2528 + 7984 01da 3C4B ldr r3, .L419 + 7985 01dc 1860 str r0, [r3] +2384:Src/main.c **** { + 7986 .loc 1 2384 3 is_stmt 1 view .LVU2529 +2384:Src/main.c **** { + 7987 .loc 1 2384 6 is_stmt 0 view .LVU2530 + 7988 01de 0028 cmp r0, #0 + 7989 01e0 7FF41EAF bne .L396 +2387:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ + 7990 .loc 1 2387 4 is_stmt 1 view .LVU2531 +2387:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ + 7991 .loc 1 2387 11 is_stmt 0 view .LVU2532 + 7992 01e4 DFF80C91 ldr r9, .L419+40 + 7993 01e8 4846 mov r0, r9 + 7994 01ea FFF7FEFF bl Remove_File + 7995 .LVL757: +2387:Src/main.c **** test = Create_File("COMMAND.TXT"); // 0 -succ + 7996 .loc 1 2387 9 discriminator 1 view .LVU2533 + 7997 01ee DFF8DC80 ldr r8, .L419 + 7998 01f2 C8F80000 str r0, [r8] +2388:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + ARM GAS /tmp/ccEQxcUB.s page 531 - 7501 .loc 1 2333 3 view .LVU2395 - 7502 02a0 47F6FF71 movw r1, #32767 - 7503 02a4 0420 movs r0, #4 - 7504 02a6 FFF7FEFF bl Set_LTEC - 7505 .LVL698: -2334:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_SET); - 7506 .loc 1 2334 3 view .LVU2396 - 7507 02aa 47F6FF71 movw r1, #32767 - 7508 02ae 0420 movs r0, #4 - 7509 02b0 FFF7FEFF bl Set_LTEC - 7510 .LVL699: -2335:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_SET); - 7511 .loc 1 2335 3 view .LVU2397 - 7512 02b4 0122 movs r2, #1 - 7513 02b6 2021 movs r1, #32 - 7514 02b8 0848 ldr r0, .L382+16 - 7515 02ba FFF7FEFF bl HAL_GPIO_WritePin - 7516 .LVL700: -2336:Src/main.c **** } - 7517 .loc 1 2336 3 view .LVU2398 - 7518 02be 0122 movs r2, #1 - 7519 02c0 0221 movs r1, #2 - 7520 02c2 0848 ldr r0, .L382+24 - 7521 02c4 FFF7FEFF bl HAL_GPIO_WritePin - 7522 .LVL701: - 7523 02c8 6EE7 b .L375 - 7524 .L383: - 7525 02ca 00BF .align 2 - 7526 .L382: - 7527 02cc 00000000 .word test - 7528 02d0 000C0240 .word 1073875968 - 7529 02d4 0000803B .word 998244352 - 7530 02d8 00000000 .word Long_Data - 7531 02dc 00080240 .word 1073874944 - 7532 02e0 00040240 .word 1073873920 - 7533 02e4 00000240 .word 1073872896 - 7534 02e8 00002041 .word 1092616192 - 7535 02ec 0AD7233C .word 1008981770 - 7536 02f0 00000000 .word .LC0 - 7537 02f4 04000000 .word .LC1 - 7538 .cfi_endproc - 7539 .LFE1208: - 7541 .section .text.Advanced_Controller_Temp,"ax",%progbits - 7542 .align 1 - 7543 .global Advanced_Controller_Temp - 7544 .syntax unified - 7545 .thumb - 7546 .thumb_func - 7548 Advanced_Controller_Temp: - 7549 .LVL702: - 7550 .LFB1223: -3093:Src/main.c **** // Main idea: - 7551 .loc 1 3093 1 view -0 - 7552 .cfi_startproc - 7553 @ args = 0, pretend = 0, frame = 0 - 7554 @ frame_needed = 0, uses_anonymous_args = 0 - 7555 @ link register save eliminated. - ARM GAS /tmp/ccwR4KB7.s page 516 + 7999 .loc 1 2388 4 is_stmt 1 view .LVU2534 +2388:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + 8000 .loc 1 2388 11 is_stmt 0 view .LVU2535 + 8001 01f6 4846 mov r0, r9 + 8002 01f8 FFF7FEFF bl Create_File + 8003 .LVL758: +2388:Src/main.c **** test = Write_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + 8004 .loc 1 2388 9 discriminator 1 view .LVU2536 + 8005 01fc C8F80000 str r0, [r8] +2389:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + 8006 .loc 1 2389 4 is_stmt 1 view .LVU2537 +2389:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + 8007 .loc 1 2389 11 is_stmt 0 view .LVU2538 + 8008 0200 1E22 movs r2, #30 + 8009 0202 2946 mov r1, r5 + 8010 0204 4846 mov r0, r9 + 8011 0206 FFF7FEFF bl Write_File_byte + 8012 .LVL759: +2389:Src/main.c **** test = Update_File_byte("COMMAND.TXT", (uint8_t *)Command, CL_8); + 8013 .loc 1 2389 9 discriminator 1 view .LVU2539 + 8014 020a C8F80000 str r0, [r8] +2390:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8015 .loc 1 2390 4 is_stmt 1 view .LVU2540 +2390:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8016 .loc 1 2390 11 is_stmt 0 view .LVU2541 + 8017 020e 1E22 movs r2, #30 + 8018 0210 2946 mov r1, r5 + 8019 0212 4846 mov r0, r9 + 8020 0214 FFF7FEFF bl Update_File_byte + 8021 .LVL760: +2390:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8022 .loc 1 2390 9 discriminator 1 view .LVU2542 + 8023 0218 C8F80000 str r0, [r8] +2391:Src/main.c **** } + 8024 .loc 1 2391 4 is_stmt 1 view .LVU2543 +2391:Src/main.c **** } + 8025 .loc 1 2391 11 is_stmt 0 view .LVU2544 + 8026 021c 3448 ldr r0, .L419+36 + 8027 021e FFF7FEFF bl Unmount_SD + 8028 .LVL761: +2391:Src/main.c **** } + 8029 .loc 1 2391 9 discriminator 1 view .LVU2545 + 8030 0222 C8F80000 str r0, [r8] + 8031 0226 FBE6 b .L396 + 8032 .LVL762: + 8033 .L397: +2441:Src/main.c **** } + 8034 .loc 1 2441 3 is_stmt 1 view .LVU2546 + 8035 0228 0022 movs r2, #0 + 8036 022a 0821 movs r1, #8 + 8037 022c 2B48 ldr r0, .L419+16 + 8038 022e FFF7FEFF bl HAL_GPIO_WritePin + 8039 .LVL763: + 8040 0232 69E7 b .L398 + 8041 .L399: +2450:Src/main.c **** } + 8042 .loc 1 2450 3 view .LVU2547 + ARM GAS /tmp/ccEQxcUB.s page 532 -3093:Src/main.c **** // Main idea: - 7556 .loc 1 3093 1 is_stmt 0 view .LVU2400 - 7557 0000 30B4 push {r4, r5} - 7558 .LCFI67: - 7559 .cfi_def_cfa_offset 8 - 7560 .cfi_offset 4, -8 - 7561 .cfi_offset 5, -4 -3111:Src/main.c **** float P_coef_current;//, I_coef_current; - 7562 .loc 1 3111 2 is_stmt 1 view .LVU2401 -3112:Src/main.c **** float e_integral; - 7563 .loc 1 3112 2 view .LVU2402 -3113:Src/main.c **** int x_output; - 7564 .loc 1 3113 2 view .LVU2403 -3114:Src/main.c **** - 7565 .loc 1 3114 2 view .LVU2404 -3116:Src/main.c **** - 7566 .loc 1 3116 2 view .LVU2405 -3116:Src/main.c **** - 7567 .loc 1 3116 28 is_stmt 0 view .LVU2406 - 7568 0002 0B88 ldrh r3, [r1] -3116:Src/main.c **** - 7569 .loc 1 3116 65 view .LVU2407 - 7570 0004 0488 ldrh r4, [r0] -3116:Src/main.c **** - 7571 .loc 1 3116 8 view .LVU2408 - 7572 0006 1B1B subs r3, r3, r4 - 7573 .LVL703: -3118:Src/main.c **** - 7574 .loc 1 3118 2 is_stmt 1 view .LVU2409 -3118:Src/main.c **** - 7575 .loc 1 3118 13 is_stmt 0 view .LVU2410 - 7576 0008 D1ED017A vldr.32 s15, [r1, #4] - 7577 .LVL704: -3120:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 - 7578 .loc 1 3120 2 is_stmt 1 view .LVU2411 -3120:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 - 7579 .loc 1 3120 20 is_stmt 0 view .LVU2412 - 7580 000c 03F6B73C addw ip, r3, #2999 -3120:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 - 7581 .loc 1 3120 4 view .LVU2413 - 7582 0010 41F26E74 movw r4, #5998 - 7583 0014 A445 cmp ip, r4 - 7584 0016 18D8 bhi .L385 -3121:Src/main.c **** } - 7585 .loc 1 3121 3 is_stmt 1 view .LVU2414 -3121:Src/main.c **** } - 7586 .loc 1 3121 31 is_stmt 0 view .LVU2415 - 7587 0018 90ED027A vldr.32 s14, [r0, #8] -3121:Src/main.c **** } - 7588 .loc 1 3121 47 view .LVU2416 - 7589 001c 06EE903A vmov s13, r3 @ int - 7590 0020 F8EEE66A vcvt.f32.s32 s13, s13 -3121:Src/main.c **** } - 7591 .loc 1 3121 45 view .LVU2417 - 7592 0024 27EE267A vmul.f32 s14, s14, s13 -3121:Src/main.c **** } - 7593 .loc 1 3121 76 view .LVU2418 - ARM GAS /tmp/ccwR4KB7.s page 517 + 8043 0234 0022 movs r2, #0 + 8044 0236 8021 movs r1, #128 + 8045 0238 2848 ldr r0, .L419+16 + 8046 023a FFF7FEFF bl HAL_GPIO_WritePin + 8047 .LVL764: + 8048 023e 6CE7 b .L400 + 8049 .L401: +2460:Src/main.c **** //LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC + 8050 .loc 1 2460 3 view .LVU2548 + 8051 0240 0022 movs r2, #0 + 8052 0242 4FF48071 mov r1, #256 + 8053 0246 2248 ldr r0, .L419+4 + 8054 0248 FFF7FEFF bl HAL_GPIO_WritePin + 8055 .LVL765: + 8056 024c 6FE7 b .L402 + 8057 .L403: +2471:Src/main.c **** //LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC + 8058 .loc 1 2471 3 view .LVU2549 + 8059 024e 0022 movs r2, #0 + 8060 0250 1021 movs r1, #16 + 8061 0252 2248 ldr r0, .L419+16 + 8062 0254 FFF7FEFF bl HAL_GPIO_WritePin + 8063 .LVL766: + 8064 0258 72E7 b .L404 + 8065 .L405: +2481:Src/main.c **** } + 8066 .loc 1 2481 3 view .LVU2550 + 8067 025a 0022 movs r2, #0 + 8068 025c 4FF48061 mov r1, #1024 + 8069 0260 1F48 ldr r0, .L419+20 + 8070 0262 FFF7FEFF bl HAL_GPIO_WritePin + 8071 .LVL767: + 8072 0266 75E7 b .L406 + 8073 .L407: +2490:Src/main.c **** } + 8074 .loc 1 2490 3 view .LVU2551 + 8075 0268 0022 movs r2, #0 + 8076 026a 0821 movs r1, #8 + 8077 026c 1D48 ldr r0, .L419+24 + 8078 026e FFF7FEFF bl HAL_GPIO_WritePin + 8079 .LVL768: + 8080 0272 78E7 b .L408 + 8081 .L417: +2495:Src/main.c **** Set_LTEC(3,32767); + 8082 .loc 1 2495 3 view .LVU2552 + 8083 0274 47F6FF71 movw r1, #32767 + 8084 0278 0320 movs r0, #3 + 8085 027a FFF7FEFF bl Set_LTEC + 8086 .LVL769: +2496:Src/main.c **** HAL_GPIO_WritePin(TEC1_PD_GPIO_Port, TEC1_PD_Pin, GPIO_PIN_SET); + 8087 .loc 1 2496 3 view .LVU2553 + 8088 027e 47F6FF71 movw r1, #32767 + 8089 0282 0320 movs r0, #3 + 8090 0284 FFF7FEFF bl Set_LTEC + 8091 .LVL770: +2497:Src/main.c **** HAL_GPIO_WritePin(TECEN1_GPIO_Port, TECEN1_Pin, GPIO_PIN_SET); + 8092 .loc 1 2497 3 view .LVU2554 + ARM GAS /tmp/ccEQxcUB.s page 533 - 7594 0028 284C ldr r4, .L395 - 7595 002a 2468 ldr r4, [r4] - 7596 002c 284D ldr r5, .L395+4 - 7597 002e 2D68 ldr r5, [r5] - 7598 0030 641B subs r4, r4, r5 -3121:Src/main.c **** } - 7599 .loc 1 3121 64 view .LVU2419 - 7600 0032 06EE904A vmov s13, r4 @ int - 7601 0036 F8EE666A vcvt.f32.u32 s13, s13 -3121:Src/main.c **** } - 7602 .loc 1 3121 62 view .LVU2420 - 7603 003a 27EE267A vmul.f32 s14, s14, s13 -3121:Src/main.c **** } - 7604 .loc 1 3121 87 view .LVU2421 - 7605 003e 9FED256A vldr.32 s12, .L395+8 - 7606 0042 C7EE066A vdiv.f32 s13, s14, s12 -3121:Src/main.c **** } - 7607 .loc 1 3121 14 view .LVU2422 - 7608 0046 77EEA67A vadd.f32 s15, s15, s13 - 7609 .LVL705: - 7610 .L385: -3123:Src/main.c **** - 7611 .loc 1 3123 2 is_stmt 1 view .LVU2423 -3123:Src/main.c **** - 7612 .loc 1 3123 17 is_stmt 0 view .LVU2424 - 7613 004a D0ED016A vldr.32 s13, [r0, #4] - 7614 .LVL706: -3125:Src/main.c **** e_integral = 32000; - 7615 .loc 1 3125 2 is_stmt 1 view .LVU2425 -3125:Src/main.c **** e_integral = 32000; - 7616 .loc 1 3125 5 is_stmt 0 view .LVU2426 - 7617 004e 9FED227A vldr.32 s14, .L395+12 - 7618 0052 F4EEC77A vcmpe.f32 s15, s14 - 7619 0056 F1EE10FA vmrs APSR_nzcv, FPSCR - 7620 005a 09DC bgt .L389 -3128:Src/main.c **** e_integral = -32000; - 7621 .loc 1 3128 7 is_stmt 1 view .LVU2427 -3128:Src/main.c **** e_integral = -32000; - 7622 .loc 1 3128 10 is_stmt 0 view .LVU2428 - 7623 005c 9FED1F7A vldr.32 s14, .L395+16 - 7624 0060 F4EEC77A vcmpe.f32 s15, s14 - 7625 0064 F1EE10FA vmrs APSR_nzcv, FPSCR - 7626 0068 04D5 bpl .L386 -3129:Src/main.c **** } - 7627 .loc 1 3129 15 view .LVU2429 - 7628 006a DFED1C7A vldr.32 s15, .L395+16 - 7629 .LVL707: -3129:Src/main.c **** } - 7630 .loc 1 3129 15 view .LVU2430 - 7631 006e 01E0 b .L386 - 7632 .LVL708: - 7633 .L389: -3126:Src/main.c **** } - 7634 .loc 1 3126 15 view .LVU2431 - 7635 0070 DFED197A vldr.32 s15, .L395+12 - 7636 .LVL709: - 7637 .L386: - ARM GAS /tmp/ccwR4KB7.s page 518 + 8093 0288 0122 movs r2, #1 + 8094 028a 4FF40061 mov r1, #2048 + 8095 028e 1448 ldr r0, .L419+20 + 8096 0290 FFF7FEFF bl HAL_GPIO_WritePin + 8097 .LVL771: +2498:Src/main.c **** } + 8098 .loc 1 2498 3 view .LVU2555 + 8099 0294 0122 movs r2, #1 + 8100 0296 1146 mov r1, r2 + 8101 0298 1248 ldr r0, .L419+24 + 8102 029a FFF7FEFF bl HAL_GPIO_WritePin + 8103 .LVL772: + 8104 029e 73E7 b .L410 + 8105 .L418: +2508:Src/main.c **** Set_LTEC(4,32767); + 8106 .loc 1 2508 3 view .LVU2556 + 8107 02a0 47F6FF71 movw r1, #32767 + 8108 02a4 0420 movs r0, #4 + 8109 02a6 FFF7FEFF bl Set_LTEC + 8110 .LVL773: +2509:Src/main.c **** HAL_GPIO_WritePin(TEC2_PD_GPIO_Port, TEC2_PD_Pin, GPIO_PIN_SET); + 8111 .loc 1 2509 3 view .LVU2557 + 8112 02aa 47F6FF71 movw r1, #32767 + 8113 02ae 0420 movs r0, #4 + 8114 02b0 FFF7FEFF bl Set_LTEC + 8115 .LVL774: +2510:Src/main.c **** HAL_GPIO_WritePin(TECEN2_GPIO_Port, TECEN2_Pin, GPIO_PIN_SET); + 8116 .loc 1 2510 3 view .LVU2558 + 8117 02b4 0122 movs r2, #1 + 8118 02b6 2021 movs r1, #32 + 8119 02b8 0848 ldr r0, .L419+16 + 8120 02ba FFF7FEFF bl HAL_GPIO_WritePin + 8121 .LVL775: +2511:Src/main.c **** } + 8122 .loc 1 2511 3 view .LVU2559 + 8123 02be 0122 movs r2, #1 + 8124 02c0 0221 movs r1, #2 + 8125 02c2 0848 ldr r0, .L419+24 + 8126 02c4 FFF7FEFF bl HAL_GPIO_WritePin + 8127 .LVL776: + 8128 02c8 6EE7 b .L412 + 8129 .L420: + 8130 02ca 00BF .align 2 + 8131 .L419: + 8132 02cc 00000000 .word test + 8133 02d0 000C0240 .word 1073875968 + 8134 02d4 0000803B .word 998244352 + 8135 02d8 00000000 .word Long_Data + 8136 02dc 00080240 .word 1073874944 + 8137 02e0 00040240 .word 1073873920 + 8138 02e4 00000240 .word 1073872896 + 8139 02e8 00002041 .word 1092616192 + 8140 02ec 0AD7233C .word 1008981770 + 8141 02f0 00000000 .word .LC0 + 8142 02f4 04000000 .word .LC1 + 8143 .cfi_endproc + 8144 .LFE1209: + ARM GAS /tmp/ccEQxcUB.s page 534 -3131:Src/main.c **** - 7638 .loc 1 3131 2 is_stmt 1 view .LVU2432 -3131:Src/main.c **** - 7639 .loc 1 3131 26 is_stmt 0 view .LVU2433 - 7640 0074 C1ED017A vstr.32 s15, [r1, #4] -3133:Src/main.c **** - 7641 .loc 1 3133 2 is_stmt 1 view .LVU2434 -3133:Src/main.c **** - 7642 .loc 1 3133 36 is_stmt 0 view .LVU2435 - 7643 0078 07EE103A vmov s14, r3 @ int - 7644 007c B8EEC77A vcvt.f32.s32 s14, s14 - 7645 0080 27EE267A vmul.f32 s14, s14, s13 -3133:Src/main.c **** - 7646 .loc 1 3133 19 view .LVU2436 - 7647 0084 DFED166A vldr.32 s13, .L395+20 - 7648 .LVL710: -3133:Src/main.c **** - 7649 .loc 1 3133 19 view .LVU2437 - 7650 0088 37EE267A vadd.f32 s14, s14, s13 -3133:Src/main.c **** - 7651 .loc 1 3133 46 view .LVU2438 - 7652 008c FDEEE77A vcvt.s32.f32 s15, s15 - 7653 .LVL711: -3133:Src/main.c **** - 7654 .loc 1 3133 44 view .LVU2439 - 7655 0090 F8EEE77A vcvt.f32.s32 s15, s15 - 7656 0094 77EE877A vadd.f32 s15, s15, s14 -3133:Src/main.c **** - 7657 .loc 1 3133 11 view .LVU2440 - 7658 0098 FDEEE77A vcvt.s32.f32 s15, s15 - 7659 009c 17EE900A vmov r0, s15 @ int - 7660 .LVL712: -3135:Src/main.c **** x_output = 8800; - 7661 .loc 1 3135 2 is_stmt 1 view .LVU2441 -3135:Src/main.c **** x_output = 8800; - 7662 .loc 1 3135 4 is_stmt 0 view .LVU2442 - 7663 00a0 B0F57A7F cmp r0, #1000 - 7664 00a4 06DB blt .L391 -3138:Src/main.c **** x_output = 56800; - 7665 .loc 1 3138 7 is_stmt 1 view .LVU2443 -3138:Src/main.c **** x_output = 56800; - 7666 .loc 1 3138 9 is_stmt 0 view .LVU2444 - 7667 00a6 4DF6E053 movw r3, #56800 - 7668 .LVL713: -3138:Src/main.c **** x_output = 56800; - 7669 .loc 1 3138 9 view .LVU2445 - 7670 00aa 9842 cmp r0, r3 - 7671 00ac 04DD ble .L387 -3139:Src/main.c **** } - 7672 .loc 1 3139 12 view .LVU2446 - 7673 00ae 4DF6E050 movw r0, #56800 - 7674 .LVL714: -3139:Src/main.c **** } - 7675 .loc 1 3139 12 view .LVU2447 - 7676 00b2 01E0 b .L387 - 7677 .LVL715: - 7678 .L391: - ARM GAS /tmp/ccwR4KB7.s page 519 + 8146 .section .text.Advanced_Controller_Temp,"ax",%progbits + 8147 .align 1 + 8148 .global Advanced_Controller_Temp + 8149 .syntax unified + 8150 .thumb + 8151 .thumb_func + 8153 Advanced_Controller_Temp: + 8154 .LVL777: + 8155 .LFB1228: +3391:Src/main.c **** // Main idea: + 8156 .loc 1 3391 1 view -0 + 8157 .cfi_startproc + 8158 @ args = 0, pretend = 0, frame = 0 + 8159 @ frame_needed = 0, uses_anonymous_args = 0 + 8160 @ link register save eliminated. +3391:Src/main.c **** // Main idea: + 8161 .loc 1 3391 1 is_stmt 0 view .LVU2561 + 8162 0000 30B4 push {r4, r5} + 8163 .LCFI69: + 8164 .cfi_def_cfa_offset 8 + 8165 .cfi_offset 4, -8 + 8166 .cfi_offset 5, -4 +3409:Src/main.c **** float P_coef_current;//, I_coef_current; + 8167 .loc 1 3409 2 is_stmt 1 view .LVU2562 +3410:Src/main.c **** float e_integral; + 8168 .loc 1 3410 2 view .LVU2563 +3411:Src/main.c **** int x_output; + 8169 .loc 1 3411 2 view .LVU2564 +3412:Src/main.c **** + 8170 .loc 1 3412 2 view .LVU2565 +3414:Src/main.c **** + 8171 .loc 1 3414 2 view .LVU2566 +3414:Src/main.c **** + 8172 .loc 1 3414 28 is_stmt 0 view .LVU2567 + 8173 0002 0B88 ldrh r3, [r1] +3414:Src/main.c **** + 8174 .loc 1 3414 65 view .LVU2568 + 8175 0004 0488 ldrh r4, [r0] +3414:Src/main.c **** + 8176 .loc 1 3414 8 view .LVU2569 + 8177 0006 1B1B subs r3, r3, r4 + 8178 .LVL778: +3416:Src/main.c **** + 8179 .loc 1 3416 2 is_stmt 1 view .LVU2570 +3416:Src/main.c **** + 8180 .loc 1 3416 13 is_stmt 0 view .LVU2571 + 8181 0008 D1ED017A vldr.32 s15, [r1, #4] + 8182 .LVL779: +3418:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 + 8183 .loc 1 3418 2 is_stmt 1 view .LVU2572 +3418:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 + 8184 .loc 1 3418 20 is_stmt 0 view .LVU2573 + 8185 000c 03F6B73C addw ip, r3, #2999 +3418:Src/main.c **** e_integral += LDx_curr_setup->I_coef_temp * (float)(e_pid) * (float)(TO7 - TO7_PID) / (float) 100 + 8186 .loc 1 3418 4 view .LVU2574 + 8187 0010 41F26E74 movw r4, #5998 + 8188 0014 A445 cmp ip, r4 + ARM GAS /tmp/ccEQxcUB.s page 535 -3136:Src/main.c **** } - 7679 .loc 1 3136 12 view .LVU2448 - 7680 00b4 42F26020 movw r0, #8800 - 7681 .LVL716: - 7682 .L387: -3142:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser - 7683 .loc 1 3142 2 is_stmt 1 view .LVU2449 -3142:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser - 7684 .loc 1 3142 5 is_stmt 0 view .LVU2450 - 7685 00b8 022A cmp r2, #2 - 7686 00ba 02D0 beq .L394 - 7687 .LVL717: - 7688 .L388: -3145:Src/main.c **** } - 7689 .loc 1 3145 2 is_stmt 1 view .LVU2451 -3146:Src/main.c **** - 7690 .loc 1 3146 1 is_stmt 0 view .LVU2452 - 7691 00bc 80B2 uxth r0, r0 - 7692 .LVL718: -3146:Src/main.c **** - 7693 .loc 1 3146 1 view .LVU2453 - 7694 00be 30BC pop {r4, r5} - 7695 .LCFI68: - 7696 .cfi_remember_state - 7697 .cfi_restore 5 - 7698 .cfi_restore 4 - 7699 .cfi_def_cfa_offset 0 - 7700 00c0 7047 bx lr - 7701 .LVL719: - 7702 .L394: - 7703 .LCFI69: - 7704 .cfi_restore_state -3143:Src/main.c **** - 7705 .loc 1 3143 3 is_stmt 1 view .LVU2454 -3143:Src/main.c **** - 7706 .loc 1 3143 11 is_stmt 0 view .LVU2455 - 7707 00c2 024B ldr r3, .L395 - 7708 00c4 1A68 ldr r2, [r3] - 7709 .LVL720: -3143:Src/main.c **** - 7710 .loc 1 3143 11 view .LVU2456 - 7711 00c6 024B ldr r3, .L395+4 - 7712 00c8 1A60 str r2, [r3] - 7713 00ca F7E7 b .L388 - 7714 .L396: - 7715 .align 2 - 7716 .L395: - 7717 00cc 00000000 .word TO7 - 7718 00d0 00000000 .word TO7_PID - 7719 00d4 0000C842 .word 1120403456 - 7720 00d8 0000FA46 .word 1190789120 - 7721 00dc 0000FAC6 .word -956694528 - 7722 00e0 00000047 .word 1191182336 - 7723 .cfi_endproc - 7724 .LFE1223: - 7726 .section .text.CalculateChecksum,"ax",%progbits - 7727 .align 1 - ARM GAS /tmp/ccwR4KB7.s page 520 + 8189 0016 18D8 bhi .L422 +3419:Src/main.c **** } + 8190 .loc 1 3419 3 is_stmt 1 view .LVU2575 +3419:Src/main.c **** } + 8191 .loc 1 3419 31 is_stmt 0 view .LVU2576 + 8192 0018 90ED027A vldr.32 s14, [r0, #8] +3419:Src/main.c **** } + 8193 .loc 1 3419 47 view .LVU2577 + 8194 001c 06EE903A vmov s13, r3 @ int + 8195 0020 F8EEE66A vcvt.f32.s32 s13, s13 +3419:Src/main.c **** } + 8196 .loc 1 3419 45 view .LVU2578 + 8197 0024 27EE267A vmul.f32 s14, s14, s13 +3419:Src/main.c **** } + 8198 .loc 1 3419 76 view .LVU2579 + 8199 0028 284C ldr r4, .L432 + 8200 002a 2468 ldr r4, [r4] + 8201 002c 284D ldr r5, .L432+4 + 8202 002e 2D68 ldr r5, [r5] + 8203 0030 641B subs r4, r4, r5 +3419:Src/main.c **** } + 8204 .loc 1 3419 64 view .LVU2580 + 8205 0032 06EE904A vmov s13, r4 @ int + 8206 0036 F8EE666A vcvt.f32.u32 s13, s13 +3419:Src/main.c **** } + 8207 .loc 1 3419 62 view .LVU2581 + 8208 003a 27EE267A vmul.f32 s14, s14, s13 +3419:Src/main.c **** } + 8209 .loc 1 3419 87 view .LVU2582 + 8210 003e 9FED256A vldr.32 s12, .L432+8 + 8211 0042 C7EE066A vdiv.f32 s13, s14, s12 +3419:Src/main.c **** } + 8212 .loc 1 3419 14 view .LVU2583 + 8213 0046 77EEA67A vadd.f32 s15, s15, s13 + 8214 .LVL780: + 8215 .L422: +3421:Src/main.c **** + 8216 .loc 1 3421 2 is_stmt 1 view .LVU2584 +3421:Src/main.c **** + 8217 .loc 1 3421 17 is_stmt 0 view .LVU2585 + 8218 004a D0ED016A vldr.32 s13, [r0, #4] + 8219 .LVL781: +3423:Src/main.c **** e_integral = 32000; + 8220 .loc 1 3423 2 is_stmt 1 view .LVU2586 +3423:Src/main.c **** e_integral = 32000; + 8221 .loc 1 3423 5 is_stmt 0 view .LVU2587 + 8222 004e 9FED227A vldr.32 s14, .L432+12 + 8223 0052 F4EEC77A vcmpe.f32 s15, s14 + 8224 0056 F1EE10FA vmrs APSR_nzcv, FPSCR + 8225 005a 09DC bgt .L426 +3426:Src/main.c **** e_integral = -32000; + 8226 .loc 1 3426 7 is_stmt 1 view .LVU2588 +3426:Src/main.c **** e_integral = -32000; + 8227 .loc 1 3426 10 is_stmt 0 view .LVU2589 + 8228 005c 9FED1F7A vldr.32 s14, .L432+16 + 8229 0060 F4EEC77A vcmpe.f32 s15, s14 + 8230 0064 F1EE10FA vmrs APSR_nzcv, FPSCR + ARM GAS /tmp/ccEQxcUB.s page 536 - 7728 .global CalculateChecksum - 7729 .syntax unified - 7730 .thumb - 7731 .thumb_func - 7733 CalculateChecksum: - 7734 .LVL721: - 7735 .LFB1226: -3209:Src/main.c **** short i; - 7736 .loc 1 3209 1 is_stmt 1 view -0 - 7737 .cfi_startproc - 7738 @ args = 0, pretend = 0, frame = 0 - 7739 @ frame_needed = 0, uses_anonymous_args = 0 - 7740 @ link register save eliminated. -3209:Src/main.c **** short i; - 7741 .loc 1 3209 1 is_stmt 0 view .LVU2458 - 7742 0000 8446 mov ip, r0 -3210:Src/main.c **** uint16_t cs = *pbuff; - 7743 .loc 1 3210 2 is_stmt 1 view .LVU2459 -3211:Src/main.c **** - 7744 .loc 1 3211 2 view .LVU2460 -3211:Src/main.c **** - 7745 .loc 1 3211 11 is_stmt 0 view .LVU2461 - 7746 0002 0088 ldrh r0, [r0] - 7747 .LVL722: -3213:Src/main.c **** { - 7748 .loc 1 3213 3 is_stmt 1 view .LVU2462 -3213:Src/main.c **** { - 7749 .loc 1 3213 9 is_stmt 0 view .LVU2463 - 7750 0004 0123 movs r3, #1 -3213:Src/main.c **** { - 7751 .loc 1 3213 3 view .LVU2464 - 7752 0006 04E0 b .L398 - 7753 .LVL723: - 7754 .L399: -3215:Src/main.c **** } - 7755 .loc 1 3215 3 is_stmt 1 view .LVU2465 -3215:Src/main.c **** } - 7756 .loc 1 3215 9 is_stmt 0 view .LVU2466 - 7757 0008 3CF81320 ldrh r2, [ip, r3, lsl #1] -3215:Src/main.c **** } - 7758 .loc 1 3215 6 view .LVU2467 - 7759 000c 5040 eors r0, r0, r2 - 7760 .LVL724: -3213:Src/main.c **** { - 7761 .loc 1 3213 24 is_stmt 1 discriminator 3 view .LVU2468 - 7762 000e 0133 adds r3, r3, #1 - 7763 .LVL725: -3213:Src/main.c **** { - 7764 .loc 1 3213 24 is_stmt 0 discriminator 3 view .LVU2469 - 7765 0010 1BB2 sxth r3, r3 - 7766 .LVL726: - 7767 .L398: -3213:Src/main.c **** { - 7768 .loc 1 3213 16 is_stmt 1 discriminator 1 view .LVU2470 - 7769 0012 8B42 cmp r3, r1 - 7770 0014 F8DB blt .L399 -3217:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 521 + 8231 0068 04D5 bpl .L423 +3427:Src/main.c **** } + 8232 .loc 1 3427 15 view .LVU2590 + 8233 006a DFED1C7A vldr.32 s15, .L432+16 + 8234 .LVL782: +3427:Src/main.c **** } + 8235 .loc 1 3427 15 view .LVU2591 + 8236 006e 01E0 b .L423 + 8237 .LVL783: + 8238 .L426: +3424:Src/main.c **** } + 8239 .loc 1 3424 15 view .LVU2592 + 8240 0070 DFED197A vldr.32 s15, .L432+12 + 8241 .LVL784: + 8242 .L423: +3429:Src/main.c **** + 8243 .loc 1 3429 2 is_stmt 1 view .LVU2593 +3429:Src/main.c **** + 8244 .loc 1 3429 26 is_stmt 0 view .LVU2594 + 8245 0074 C1ED017A vstr.32 s15, [r1, #4] +3431:Src/main.c **** + 8246 .loc 1 3431 2 is_stmt 1 view .LVU2595 +3431:Src/main.c **** + 8247 .loc 1 3431 36 is_stmt 0 view .LVU2596 + 8248 0078 07EE103A vmov s14, r3 @ int + 8249 007c B8EEC77A vcvt.f32.s32 s14, s14 + 8250 0080 27EE267A vmul.f32 s14, s14, s13 +3431:Src/main.c **** + 8251 .loc 1 3431 19 view .LVU2597 + 8252 0084 DFED166A vldr.32 s13, .L432+20 + 8253 .LVL785: +3431:Src/main.c **** + 8254 .loc 1 3431 19 view .LVU2598 + 8255 0088 37EE267A vadd.f32 s14, s14, s13 +3431:Src/main.c **** + 8256 .loc 1 3431 46 view .LVU2599 + 8257 008c FDEEE77A vcvt.s32.f32 s15, s15 + 8258 .LVL786: +3431:Src/main.c **** + 8259 .loc 1 3431 44 view .LVU2600 + 8260 0090 F8EEE77A vcvt.f32.s32 s15, s15 + 8261 0094 77EE877A vadd.f32 s15, s15, s14 +3431:Src/main.c **** + 8262 .loc 1 3431 11 view .LVU2601 + 8263 0098 FDEEE77A vcvt.s32.f32 s15, s15 + 8264 009c 17EE900A vmov r0, s15 @ int + 8265 .LVL787: +3433:Src/main.c **** x_output = 8800; + 8266 .loc 1 3433 2 is_stmt 1 view .LVU2602 +3433:Src/main.c **** x_output = 8800; + 8267 .loc 1 3433 4 is_stmt 0 view .LVU2603 + 8268 00a0 B0F57A7F cmp r0, #1000 + 8269 00a4 06DB blt .L428 +3436:Src/main.c **** x_output = 56800; + 8270 .loc 1 3436 7 is_stmt 1 view .LVU2604 +3436:Src/main.c **** x_output = 56800; + 8271 .loc 1 3436 9 is_stmt 0 view .LVU2605 + ARM GAS /tmp/ccEQxcUB.s page 537 - 7771 .loc 1 3217 2 view .LVU2471 -3218:Src/main.c **** - 7772 .loc 1 3218 1 is_stmt 0 view .LVU2472 - 7773 0016 7047 bx lr - 7774 .cfi_endproc - 7775 .LFE1226: - 7777 .section .text.CheckChecksum,"ax",%progbits - 7778 .align 1 - 7779 .global CheckChecksum - 7780 .syntax unified - 7781 .thumb - 7782 .thumb_func - 7784 CheckChecksum: - 7785 .LVL727: - 7786 .LFB1225: -3188:Src/main.c **** uint16_t cl_ind; - 7787 .loc 1 3188 1 is_stmt 1 view -0 - 7788 .cfi_startproc - 7789 @ args = 0, pretend = 0, frame = 0 - 7790 @ frame_needed = 0, uses_anonymous_args = 0 -3188:Src/main.c **** uint16_t cl_ind; - 7791 .loc 1 3188 1 is_stmt 0 view .LVU2474 - 7792 0000 10B5 push {r4, lr} - 7793 .LCFI70: - 7794 .cfi_def_cfa_offset 8 - 7795 .cfi_offset 4, -8 - 7796 .cfi_offset 14, -4 -3189:Src/main.c **** - 7797 .loc 1 3189 3 is_stmt 1 view .LVU2475 -3191:Src/main.c **** { - 7798 .loc 1 3191 3 view .LVU2476 - 7799 0002 0E4B ldr r3, .L406 - 7800 0004 1B88 ldrh r3, [r3] - 7801 0006 41F21112 movw r2, #4369 - 7802 000a 9342 cmp r3, r2 - 7803 000c 05D0 beq .L403 - 7804 000e 47F27772 movw r2, #30583 - 7805 0012 9342 cmp r3, r2 - 7806 0014 0FD1 bne .L404 - 7807 0016 0E24 movs r4, #14 - 7808 0018 00E0 b .L401 - 7809 .L403: -3197:Src/main.c **** break; - 7810 .loc 1 3197 14 is_stmt 0 view .LVU2477 - 7811 001a 0D24 movs r4, #13 - 7812 .L401: - 7813 .LVL728: -3201:Src/main.c **** } - 7814 .loc 1 3201 5 is_stmt 1 view .LVU2478 -3204:Src/main.c **** - 7815 .loc 1 3204 3 view .LVU2479 -3204:Src/main.c **** - 7816 .loc 1 3204 15 is_stmt 0 view .LVU2480 - 7817 001c 2146 mov r1, r4 - 7818 001e FFF7FEFF bl CalculateChecksum - 7819 .LVL729: -3204:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 522 + 8272 00a6 4DF6E053 movw r3, #56800 + 8273 .LVL788: +3436:Src/main.c **** x_output = 56800; + 8274 .loc 1 3436 9 view .LVU2606 + 8275 00aa 9842 cmp r0, r3 + 8276 00ac 04DD ble .L424 +3437:Src/main.c **** } + 8277 .loc 1 3437 12 view .LVU2607 + 8278 00ae 4DF6E050 movw r0, #56800 + 8279 .LVL789: +3437:Src/main.c **** } + 8280 .loc 1 3437 12 view .LVU2608 + 8281 00b2 01E0 b .L424 + 8282 .LVL790: + 8283 .L428: +3434:Src/main.c **** } + 8284 .loc 1 3434 12 view .LVU2609 + 8285 00b4 42F26020 movw r0, #8800 + 8286 .LVL791: + 8287 .L424: +3440:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser + 8288 .loc 1 3440 2 is_stmt 1 view .LVU2610 +3440:Src/main.c **** TO7_PID = TO7;//Save current time only on 2nd laser + 8289 .loc 1 3440 5 is_stmt 0 view .LVU2611 + 8290 00b8 022A cmp r2, #2 + 8291 00ba 02D0 beq .L431 + 8292 .LVL792: + 8293 .L425: +3443:Src/main.c **** } + 8294 .loc 1 3443 2 is_stmt 1 view .LVU2612 +3444:Src/main.c **** + 8295 .loc 1 3444 1 is_stmt 0 view .LVU2613 + 8296 00bc 80B2 uxth r0, r0 + 8297 .LVL793: +3444:Src/main.c **** + 8298 .loc 1 3444 1 view .LVU2614 + 8299 00be 30BC pop {r4, r5} + 8300 .LCFI70: + 8301 .cfi_remember_state + 8302 .cfi_restore 5 + 8303 .cfi_restore 4 + 8304 .cfi_def_cfa_offset 0 + 8305 00c0 7047 bx lr + 8306 .LVL794: + 8307 .L431: + 8308 .LCFI71: + 8309 .cfi_restore_state +3441:Src/main.c **** + 8310 .loc 1 3441 3 is_stmt 1 view .LVU2615 +3441:Src/main.c **** + 8311 .loc 1 3441 11 is_stmt 0 view .LVU2616 + 8312 00c2 024B ldr r3, .L432 + 8313 00c4 1A68 ldr r2, [r3] + 8314 .LVL795: +3441:Src/main.c **** + 8315 .loc 1 3441 11 view .LVU2617 + 8316 00c6 024B ldr r3, .L432+4 + ARM GAS /tmp/ccEQxcUB.s page 538 - 7820 .loc 1 3204 13 discriminator 1 view .LVU2481 - 7821 0022 074B ldr r3, .L406+4 - 7822 0024 1880 strh r0, [r3] @ movhi -3206:Src/main.c **** } - 7823 .loc 1 3206 3 is_stmt 1 view .LVU2482 -3206:Src/main.c **** } - 7824 .loc 1 3206 32 is_stmt 0 view .LVU2483 - 7825 0026 074B ldr r3, .L406+8 - 7826 0028 33F81430 ldrh r3, [r3, r4, lsl #1] -3206:Src/main.c **** } - 7827 .loc 1 3206 46 view .LVU2484 - 7828 002c 9842 cmp r0, r3 - 7829 002e 14BF ite ne - 7830 0030 0020 movne r0, #0 - 7831 0032 0120 moveq r0, #1 - 7832 .LVL730: - 7833 .L402: -3207:Src/main.c **** uint16_t CalculateChecksum(uint16_t *pbuff, uint16_t len) - 7834 .loc 1 3207 1 view .LVU2485 - 7835 0034 10BD pop {r4, pc} - 7836 .LVL731: - 7837 .L404: -3191:Src/main.c **** { - 7838 .loc 1 3191 3 view .LVU2486 - 7839 0036 0020 movs r0, #0 - 7840 .LVL732: -3191:Src/main.c **** { - 7841 .loc 1 3191 3 view .LVU2487 - 7842 0038 FCE7 b .L402 - 7843 .L407: - 7844 003a 00BF .align 2 - 7845 .L406: - 7846 003c 00000000 .word UART_header - 7847 0040 00000000 .word CS_result - 7848 0044 00000000 .word COMMAND - 7849 .cfi_endproc - 7850 .LFE1225: - 7852 .section .rodata.SD_SAVE.str1.4,"aMS",%progbits,1 - 7853 .align 2 - 7854 .LC2: - 7855 0000 46494C45 .ascii "FILE1.TXT\000" - 7855 312E5458 - 7855 5400 - 7856 .section .text.SD_SAVE,"ax",%progbits - 7857 .align 1 - 7858 .global SD_SAVE - 7859 .syntax unified - 7860 .thumb - 7861 .thumb_func - 7863 SD_SAVE: - 7864 .LVL733: - 7865 .LFB1227: -3247:Src/main.c **** int test=0; - 7866 .loc 1 3247 1 is_stmt 1 view -0 - 7867 .cfi_startproc - 7868 @ args = 0, pretend = 0, frame = 0 - 7869 @ frame_needed = 0, uses_anonymous_args = 0 - ARM GAS /tmp/ccwR4KB7.s page 523 + 8317 00c8 1A60 str r2, [r3] + 8318 00ca F7E7 b .L425 + 8319 .L433: + 8320 .align 2 + 8321 .L432: + 8322 00cc 00000000 .word TO7 + 8323 00d0 00000000 .word TO7_PID + 8324 00d4 0000C842 .word 1120403456 + 8325 00d8 0000FA46 .word 1190789120 + 8326 00dc 0000FAC6 .word -956694528 + 8327 00e0 00000047 .word 1191182336 + 8328 .cfi_endproc + 8329 .LFE1228: + 8331 .section .text.CalculateChecksum,"ax",%progbits + 8332 .align 1 + 8333 .global CalculateChecksum + 8334 .syntax unified + 8335 .thumb + 8336 .thumb_func + 8338 CalculateChecksum: + 8339 .LVL796: + 8340 .LFB1231: +3507:Src/main.c **** short i; + 8341 .loc 1 3507 1 is_stmt 1 view -0 + 8342 .cfi_startproc + 8343 @ args = 0, pretend = 0, frame = 0 + 8344 @ frame_needed = 0, uses_anonymous_args = 0 + 8345 @ link register save eliminated. +3507:Src/main.c **** short i; + 8346 .loc 1 3507 1 is_stmt 0 view .LVU2619 + 8347 0000 8446 mov ip, r0 +3508:Src/main.c **** uint16_t cs = *pbuff; + 8348 .loc 1 3508 2 is_stmt 1 view .LVU2620 +3509:Src/main.c **** + 8349 .loc 1 3509 2 view .LVU2621 +3509:Src/main.c **** + 8350 .loc 1 3509 11 is_stmt 0 view .LVU2622 + 8351 0002 0088 ldrh r0, [r0] + 8352 .LVL797: +3511:Src/main.c **** { + 8353 .loc 1 3511 3 is_stmt 1 view .LVU2623 +3511:Src/main.c **** { + 8354 .loc 1 3511 9 is_stmt 0 view .LVU2624 + 8355 0004 0123 movs r3, #1 +3511:Src/main.c **** { + 8356 .loc 1 3511 3 view .LVU2625 + 8357 0006 04E0 b .L435 + 8358 .LVL798: + 8359 .L436: +3513:Src/main.c **** } + 8360 .loc 1 3513 3 is_stmt 1 view .LVU2626 +3513:Src/main.c **** } + 8361 .loc 1 3513 9 is_stmt 0 view .LVU2627 + 8362 0008 3CF81320 ldrh r2, [ip, r3, lsl #1] +3513:Src/main.c **** } + 8363 .loc 1 3513 6 view .LVU2628 + 8364 000c 5040 eors r0, r0, r2 + ARM GAS /tmp/ccEQxcUB.s page 539 -3247:Src/main.c **** int test=0; - 7870 .loc 1 3247 1 is_stmt 0 view .LVU2489 - 7871 0000 10B5 push {r4, lr} - 7872 .LCFI71: - 7873 .cfi_def_cfa_offset 8 - 7874 .cfi_offset 4, -8 - 7875 .cfi_offset 14, -4 - 7876 0002 0446 mov r4, r0 -3248:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) - 7877 .loc 1 3248 2 is_stmt 1 view .LVU2490 - 7878 .LVL734: -3249:Src/main.c **** { - 7879 .loc 1 3249 2 view .LVU2491 -3249:Src/main.c **** { - 7880 .loc 1 3249 6 is_stmt 0 view .LVU2492 - 7881 0004 0121 movs r1, #1 - 7882 0006 0A48 ldr r0, .L415 - 7883 .LVL735: -3249:Src/main.c **** { - 7884 .loc 1 3249 6 view .LVU2493 - 7885 0008 FFF7FEFF bl HAL_GPIO_ReadPin - 7886 .LVL736: -3249:Src/main.c **** { - 7887 .loc 1 3249 5 discriminator 1 view .LVU2494 - 7888 000c 08B1 cbz r0, .L413 -3266:Src/main.c **** } - 7889 .loc 1 3266 10 view .LVU2495 - 7890 000e 0120 movs r0, #1 - 7891 .LVL737: - 7892 .L408: -3268:Src/main.c **** - 7893 .loc 1 3268 1 view .LVU2496 - 7894 0010 10BD pop {r4, pc} - 7895 .LVL738: - 7896 .L413: -3251:Src/main.c **** if (test == 0) //0 - suc - 7897 .loc 1 3251 3 is_stmt 1 view .LVU2497 -3251:Src/main.c **** if (test == 0) //0 - suc - 7898 .loc 1 3251 10 is_stmt 0 view .LVU2498 - 7899 0012 0848 ldr r0, .L415+4 - 7900 0014 FFF7FEFF bl Mount_SD - 7901 .LVL739: -3252:Src/main.c **** { - 7902 .loc 1 3252 3 is_stmt 1 view .LVU2499 -3252:Src/main.c **** { - 7903 .loc 1 3252 6 is_stmt 0 view .LVU2500 - 7904 0018 08B1 cbz r0, .L414 -3261:Src/main.c **** } - 7905 .loc 1 3261 11 view .LVU2501 - 7906 001a 0120 movs r0, #1 - 7907 .LVL740: -3261:Src/main.c **** } - 7908 .loc 1 3261 11 view .LVU2502 - 7909 001c F8E7 b .L408 - 7910 .LVL741: - 7911 .L414: -3255:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - ARM GAS /tmp/ccwR4KB7.s page 524 + 8365 .LVL799: +3511:Src/main.c **** { + 8366 .loc 1 3511 24 is_stmt 1 discriminator 3 view .LVU2629 + 8367 000e 0133 adds r3, r3, #1 + 8368 .LVL800: +3511:Src/main.c **** { + 8369 .loc 1 3511 24 is_stmt 0 discriminator 3 view .LVU2630 + 8370 0010 1BB2 sxth r3, r3 + 8371 .LVL801: + 8372 .L435: +3511:Src/main.c **** { + 8373 .loc 1 3511 16 is_stmt 1 discriminator 1 view .LVU2631 + 8374 0012 8B42 cmp r3, r1 + 8375 0014 F8DB blt .L436 +3515:Src/main.c **** } + 8376 .loc 1 3515 2 view .LVU2632 +3516:Src/main.c **** + 8377 .loc 1 3516 1 is_stmt 0 view .LVU2633 + 8378 0016 7047 bx lr + 8379 .cfi_endproc + 8380 .LFE1231: + 8382 .section .text.CheckChecksum,"ax",%progbits + 8383 .align 1 + 8384 .global CheckChecksum + 8385 .syntax unified + 8386 .thumb + 8387 .thumb_func + 8389 CheckChecksum: + 8390 .LVL802: + 8391 .LFB1230: +3486:Src/main.c **** uint16_t cl_ind; + 8392 .loc 1 3486 1 is_stmt 1 view -0 + 8393 .cfi_startproc + 8394 @ args = 0, pretend = 0, frame = 0 + 8395 @ frame_needed = 0, uses_anonymous_args = 0 +3486:Src/main.c **** uint16_t cl_ind; + 8396 .loc 1 3486 1 is_stmt 0 view .LVU2635 + 8397 0000 10B5 push {r4, lr} + 8398 .LCFI72: + 8399 .cfi_def_cfa_offset 8 + 8400 .cfi_offset 4, -8 + 8401 .cfi_offset 14, -4 +3487:Src/main.c **** + 8402 .loc 1 3487 3 is_stmt 1 view .LVU2636 +3489:Src/main.c **** { + 8403 .loc 1 3489 3 view .LVU2637 + 8404 0002 0E4B ldr r3, .L443 + 8405 0004 1B88 ldrh r3, [r3] + 8406 0006 41F21112 movw r2, #4369 + 8407 000a 9342 cmp r3, r2 + 8408 000c 05D0 beq .L440 + 8409 000e 47F27772 movw r2, #30583 + 8410 0012 9342 cmp r3, r2 + 8411 0014 0FD1 bne .L441 + 8412 0016 0E24 movs r4, #14 + 8413 0018 00E0 b .L438 + 8414 .L440: + ARM GAS /tmp/ccEQxcUB.s page 540 - 7912 .loc 1 3255 4 is_stmt 1 view .LVU2503 -3255:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 7913 .loc 1 3255 11 is_stmt 0 view .LVU2504 - 7914 001e 1E22 movs r2, #30 - 7915 0020 2146 mov r1, r4 - 7916 0022 0548 ldr r0, .L415+8 - 7917 .LVL742: -3255:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 7918 .loc 1 3255 11 view .LVU2505 - 7919 0024 FFF7FEFF bl Update_File_byte - 7920 .LVL743: -3256:Src/main.c **** return test; - 7921 .loc 1 3256 4 is_stmt 1 view .LVU2506 -3256:Src/main.c **** return test; - 7922 .loc 1 3256 11 is_stmt 0 view .LVU2507 - 7923 0028 0248 ldr r0, .L415+4 - 7924 002a FFF7FEFF bl Unmount_SD - 7925 .LVL744: -3257:Src/main.c **** } - 7926 .loc 1 3257 4 is_stmt 1 view .LVU2508 -3257:Src/main.c **** } - 7927 .loc 1 3257 11 is_stmt 0 view .LVU2509 - 7928 002e EFE7 b .L408 - 7929 .L416: - 7930 .align 2 - 7931 .L415: - 7932 0030 000C0240 .word 1073875968 - 7933 0034 00000000 .word .LC0 - 7934 0038 00000000 .word .LC2 - 7935 .cfi_endproc - 7936 .LFE1227: - 7938 .section .text.SD_READ,"ax",%progbits - 7939 .align 1 - 7940 .global SD_READ - 7941 .syntax unified - 7942 .thumb - 7943 .thumb_func - 7945 SD_READ: - 7946 .LVL745: - 7947 .LFB1228: -3278:Src/main.c **** int test=0; - 7948 .loc 1 3278 1 is_stmt 1 view -0 - 7949 .cfi_startproc - 7950 @ args = 0, pretend = 0, frame = 0 - 7951 @ frame_needed = 0, uses_anonymous_args = 0 -3278:Src/main.c **** int test=0; - 7952 .loc 1 3278 1 is_stmt 0 view .LVU2511 - 7953 0000 38B5 push {r3, r4, r5, lr} - 7954 .LCFI72: - 7955 .cfi_def_cfa_offset 16 - 7956 .cfi_offset 3, -16 - 7957 .cfi_offset 4, -12 - 7958 .cfi_offset 5, -8 - 7959 .cfi_offset 14, -4 - 7960 0002 0446 mov r4, r0 -3279:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) - 7961 .loc 1 3279 2 is_stmt 1 view .LVU2512 - ARM GAS /tmp/ccwR4KB7.s page 525 +3495:Src/main.c **** break; + 8415 .loc 1 3495 14 is_stmt 0 view .LVU2638 + 8416 001a 0D24 movs r4, #13 + 8417 .L438: + 8418 .LVL803: +3499:Src/main.c **** } + 8419 .loc 1 3499 5 is_stmt 1 view .LVU2639 +3502:Src/main.c **** + 8420 .loc 1 3502 3 view .LVU2640 +3502:Src/main.c **** + 8421 .loc 1 3502 15 is_stmt 0 view .LVU2641 + 8422 001c 2146 mov r1, r4 + 8423 001e FFF7FEFF bl CalculateChecksum + 8424 .LVL804: +3502:Src/main.c **** + 8425 .loc 1 3502 13 discriminator 1 view .LVU2642 + 8426 0022 074B ldr r3, .L443+4 + 8427 0024 1880 strh r0, [r3] @ movhi +3504:Src/main.c **** } + 8428 .loc 1 3504 3 is_stmt 1 view .LVU2643 +3504:Src/main.c **** } + 8429 .loc 1 3504 32 is_stmt 0 view .LVU2644 + 8430 0026 074B ldr r3, .L443+8 + 8431 0028 33F81430 ldrh r3, [r3, r4, lsl #1] +3504:Src/main.c **** } + 8432 .loc 1 3504 46 view .LVU2645 + 8433 002c 9842 cmp r0, r3 + 8434 002e 14BF ite ne + 8435 0030 0020 movne r0, #0 + 8436 0032 0120 moveq r0, #1 + 8437 .LVL805: + 8438 .L439: +3505:Src/main.c **** uint16_t CalculateChecksum(uint16_t *pbuff, uint16_t len) + 8439 .loc 1 3505 1 view .LVU2646 + 8440 0034 10BD pop {r4, pc} + 8441 .LVL806: + 8442 .L441: +3489:Src/main.c **** { + 8443 .loc 1 3489 3 view .LVU2647 + 8444 0036 0020 movs r0, #0 + 8445 .LVL807: +3489:Src/main.c **** { + 8446 .loc 1 3489 3 view .LVU2648 + 8447 0038 FCE7 b .L439 + 8448 .L444: + 8449 003a 00BF .align 2 + 8450 .L443: + 8451 003c 00000000 .word UART_header + 8452 0040 00000000 .word CS_result + 8453 0044 00000000 .word COMMAND + 8454 .cfi_endproc + 8455 .LFE1230: + 8457 .section .rodata.SD_SAVE.str1.4,"aMS",%progbits,1 + 8458 .align 2 + 8459 .LC2: + 8460 0000 46494C45 .ascii "FILE1.TXT\000" + 8460 312E5458 + ARM GAS /tmp/ccEQxcUB.s page 541 - 7962 .LVL746: -3280:Src/main.c **** { - 7963 .loc 1 3280 2 view .LVU2513 -3280:Src/main.c **** { - 7964 .loc 1 3280 6 is_stmt 0 view .LVU2514 - 7965 0004 0121 movs r1, #1 - 7966 0006 0D48 ldr r0, .L424 - 7967 .LVL747: -3280:Src/main.c **** { - 7968 .loc 1 3280 6 view .LVU2515 - 7969 0008 FFF7FEFF bl HAL_GPIO_ReadPin - 7970 .LVL748: -3280:Src/main.c **** { - 7971 .loc 1 3280 5 discriminator 1 view .LVU2516 - 7972 000c 08B1 cbz r0, .L422 -3298:Src/main.c **** } - 7973 .loc 1 3298 10 view .LVU2517 - 7974 000e 0120 movs r0, #1 - 7975 .LVL749: - 7976 .L417: -3314:Src/main.c **** - 7977 .loc 1 3314 1 view .LVU2518 - 7978 0010 38BD pop {r3, r4, r5, pc} - 7979 .LVL750: - 7980 .L422: -3282:Src/main.c **** if (test == 0) //0 - suc - 7981 .loc 1 3282 3 is_stmt 1 view .LVU2519 -3282:Src/main.c **** if (test == 0) //0 - suc - 7982 .loc 1 3282 10 is_stmt 0 view .LVU2520 - 7983 0012 0B48 ldr r0, .L424+4 - 7984 0014 FFF7FEFF bl Mount_SD - 7985 .LVL751: -3283:Src/main.c **** { - 7986 .loc 1 3283 3 is_stmt 1 view .LVU2521 -3283:Src/main.c **** { - 7987 .loc 1 3283 6 is_stmt 0 view .LVU2522 - 7988 0018 08B1 cbz r0, .L423 -3293:Src/main.c **** } - 7989 .loc 1 3293 11 view .LVU2523 - 7990 001a 0120 movs r0, #1 - 7991 .LVL752: -3293:Src/main.c **** } - 7992 .loc 1 3293 11 view .LVU2524 - 7993 001c F8E7 b .L417 - 7994 .LVL753: - 7995 .L423: -3286:Src/main.c **** fgoto+=DL_8; - 7996 .loc 1 3286 4 is_stmt 1 view .LVU2525 -3286:Src/main.c **** fgoto+=DL_8; - 7997 .loc 1 3286 11 is_stmt 0 view .LVU2526 - 7998 001e 094D ldr r5, .L424+8 - 7999 0020 2B68 ldr r3, [r5] - 8000 0022 1E22 movs r2, #30 - 8001 0024 2146 mov r1, r4 - 8002 0026 0848 ldr r0, .L424+12 - 8003 .LVL754: -3286:Src/main.c **** fgoto+=DL_8; - ARM GAS /tmp/ccwR4KB7.s page 526 + 8460 5400 + 8461 .section .text.SD_SAVE,"ax",%progbits + 8462 .align 1 + 8463 .global SD_SAVE + 8464 .syntax unified + 8465 .thumb + 8466 .thumb_func + 8468 SD_SAVE: + 8469 .LVL808: + 8470 .LFB1232: +3545:Src/main.c **** int test=0; + 8471 .loc 1 3545 1 is_stmt 1 view -0 + 8472 .cfi_startproc + 8473 @ args = 0, pretend = 0, frame = 0 + 8474 @ frame_needed = 0, uses_anonymous_args = 0 +3545:Src/main.c **** int test=0; + 8475 .loc 1 3545 1 is_stmt 0 view .LVU2650 + 8476 0000 10B5 push {r4, lr} + 8477 .LCFI73: + 8478 .cfi_def_cfa_offset 8 + 8479 .cfi_offset 4, -8 + 8480 .cfi_offset 14, -4 + 8481 0002 0446 mov r4, r0 +3546:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) + 8482 .loc 1 3546 2 is_stmt 1 view .LVU2651 + 8483 .LVL809: +3547:Src/main.c **** { + 8484 .loc 1 3547 2 view .LVU2652 +3547:Src/main.c **** { + 8485 .loc 1 3547 6 is_stmt 0 view .LVU2653 + 8486 0004 0121 movs r1, #1 + 8487 0006 0A48 ldr r0, .L452 + 8488 .LVL810: +3547:Src/main.c **** { + 8489 .loc 1 3547 6 view .LVU2654 + 8490 0008 FFF7FEFF bl HAL_GPIO_ReadPin + 8491 .LVL811: +3547:Src/main.c **** { + 8492 .loc 1 3547 5 discriminator 1 view .LVU2655 + 8493 000c 08B1 cbz r0, .L450 +3564:Src/main.c **** } + 8494 .loc 1 3564 10 view .LVU2656 + 8495 000e 0120 movs r0, #1 + 8496 .LVL812: + 8497 .L445: +3566:Src/main.c **** + 8498 .loc 1 3566 1 view .LVU2657 + 8499 0010 10BD pop {r4, pc} + 8500 .LVL813: + 8501 .L450: +3549:Src/main.c **** if (test == 0) //0 - suc + 8502 .loc 1 3549 3 is_stmt 1 view .LVU2658 +3549:Src/main.c **** if (test == 0) //0 - suc + 8503 .loc 1 3549 10 is_stmt 0 view .LVU2659 + 8504 0012 0848 ldr r0, .L452+4 + 8505 0014 FFF7FEFF bl Mount_SD + 8506 .LVL814: + ARM GAS /tmp/ccEQxcUB.s page 542 - 8004 .loc 1 3286 11 view .LVU2527 - 8005 0028 FFF7FEFF bl Seek_Read_File - 8006 .LVL755: -3287:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 8007 .loc 1 3287 4 is_stmt 1 view .LVU2528 -3287:Src/main.c **** test = Unmount_SD("/"); // 0 - succ - 8008 .loc 1 3287 9 is_stmt 0 view .LVU2529 - 8009 002c 2B68 ldr r3, [r5] - 8010 002e 1E33 adds r3, r3, #30 - 8011 0030 2B60 str r3, [r5] -3288:Src/main.c **** return test; - 8012 .loc 1 3288 4 is_stmt 1 view .LVU2530 -3288:Src/main.c **** return test; - 8013 .loc 1 3288 11 is_stmt 0 view .LVU2531 - 8014 0032 0348 ldr r0, .L424+4 - 8015 0034 FFF7FEFF bl Unmount_SD - 8016 .LVL756: -3289:Src/main.c **** } - 8017 .loc 1 3289 4 is_stmt 1 view .LVU2532 -3289:Src/main.c **** } - 8018 .loc 1 3289 11 is_stmt 0 view .LVU2533 - 8019 0038 EAE7 b .L417 - 8020 .L425: - 8021 003a 00BF .align 2 - 8022 .L424: - 8023 003c 000C0240 .word 1073875968 - 8024 0040 00000000 .word .LC0 - 8025 0044 00000000 .word fgoto - 8026 0048 00000000 .word .LC2 - 8027 .cfi_endproc - 8028 .LFE1228: - 8030 .section .text.SD_REMOVE,"ax",%progbits - 8031 .align 1 - 8032 .global SD_REMOVE - 8033 .syntax unified - 8034 .thumb - 8035 .thumb_func - 8037 SD_REMOVE: - 8038 .LFB1229: -3317:Src/main.c **** int test=0; - 8039 .loc 1 3317 1 is_stmt 1 view -0 - 8040 .cfi_startproc - 8041 @ args = 0, pretend = 0, frame = 0 - 8042 @ frame_needed = 0, uses_anonymous_args = 0 - 8043 0000 10B5 push {r4, lr} - 8044 .LCFI73: - 8045 .cfi_def_cfa_offset 8 - 8046 .cfi_offset 4, -8 - 8047 .cfi_offset 14, -4 -3318:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) - 8048 .loc 1 3318 2 view .LVU2535 - 8049 .LVL757: -3319:Src/main.c **** { - 8050 .loc 1 3319 2 view .LVU2536 -3319:Src/main.c **** { - 8051 .loc 1 3319 6 is_stmt 0 view .LVU2537 - 8052 0002 0121 movs r1, #1 - ARM GAS /tmp/ccwR4KB7.s page 527 +3550:Src/main.c **** { + 8507 .loc 1 3550 3 is_stmt 1 view .LVU2660 +3550:Src/main.c **** { + 8508 .loc 1 3550 6 is_stmt 0 view .LVU2661 + 8509 0018 08B1 cbz r0, .L451 +3559:Src/main.c **** } + 8510 .loc 1 3559 11 view .LVU2662 + 8511 001a 0120 movs r0, #1 + 8512 .LVL815: +3559:Src/main.c **** } + 8513 .loc 1 3559 11 view .LVU2663 + 8514 001c F8E7 b .L445 + 8515 .LVL816: + 8516 .L451: +3553:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8517 .loc 1 3553 4 is_stmt 1 view .LVU2664 +3553:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8518 .loc 1 3553 11 is_stmt 0 view .LVU2665 + 8519 001e 1E22 movs r2, #30 + 8520 0020 2146 mov r1, r4 + 8521 0022 0548 ldr r0, .L452+8 + 8522 .LVL817: +3553:Src/main.c **** test = Unmount_SD("/"); // 0 - succ + 8523 .loc 1 3553 11 view .LVU2666 + 8524 0024 FFF7FEFF bl Update_File_byte + 8525 .LVL818: +3554:Src/main.c **** return test; + 8526 .loc 1 3554 4 is_stmt 1 view .LVU2667 +3554:Src/main.c **** return test; + 8527 .loc 1 3554 11 is_stmt 0 view .LVU2668 + 8528 0028 0248 ldr r0, .L452+4 + 8529 002a FFF7FEFF bl Unmount_SD + 8530 .LVL819: +3555:Src/main.c **** } + 8531 .loc 1 3555 4 is_stmt 1 view .LVU2669 +3555:Src/main.c **** } + 8532 .loc 1 3555 11 is_stmt 0 view .LVU2670 + 8533 002e EFE7 b .L445 + 8534 .L453: + 8535 .align 2 + 8536 .L452: + 8537 0030 000C0240 .word 1073875968 + 8538 0034 00000000 .word .LC0 + 8539 0038 00000000 .word .LC2 + 8540 .cfi_endproc + 8541 .LFE1232: + 8543 .section .text.SD_READ,"ax",%progbits + 8544 .align 1 + 8545 .global SD_READ + 8546 .syntax unified + 8547 .thumb + 8548 .thumb_func + 8550 SD_READ: + 8551 .LVL820: + 8552 .LFB1233: +3576:Src/main.c **** int test=0; + 8553 .loc 1 3576 1 is_stmt 1 view -0 + ARM GAS /tmp/ccEQxcUB.s page 543 - 8053 0004 0B48 ldr r0, .L433 - 8054 0006 FFF7FEFF bl HAL_GPIO_ReadPin - 8055 .LVL758: -3319:Src/main.c **** { - 8056 .loc 1 3319 5 discriminator 1 view .LVU2538 - 8057 000a 08B1 cbz r0, .L431 -3337:Src/main.c **** } - 8058 .loc 1 3337 10 view .LVU2539 - 8059 000c 0120 movs r0, #1 - 8060 .LVL759: - 8061 .L426: -3339:Src/main.c **** - 8062 .loc 1 3339 1 view .LVU2540 - 8063 000e 10BD pop {r4, pc} - 8064 .LVL760: - 8065 .L431: -3321:Src/main.c **** if (test==FR_OK) - 8066 .loc 1 3321 3 is_stmt 1 view .LVU2541 -3321:Src/main.c **** if (test==FR_OK) - 8067 .loc 1 3321 10 is_stmt 0 view .LVU2542 - 8068 0010 0948 ldr r0, .L433+4 - 8069 0012 FFF7FEFF bl Mount_SD - 8070 .LVL761: -3322:Src/main.c **** { - 8071 .loc 1 3322 3 is_stmt 1 view .LVU2543 -3322:Src/main.c **** { - 8072 .loc 1 3322 6 is_stmt 0 view .LVU2544 - 8073 0016 08B1 cbz r0, .L432 -3332:Src/main.c **** } - 8074 .loc 1 3332 11 view .LVU2545 - 8075 0018 0120 movs r0, #1 - 8076 .LVL762: -3332:Src/main.c **** } - 8077 .loc 1 3332 11 view .LVU2546 - 8078 001a F8E7 b .L426 - 8079 .LVL763: - 8080 .L432: -3324:Src/main.c **** test = Create_File("FILE1.TXT"); // 0 -suc - 8081 .loc 1 3324 4 is_stmt 1 view .LVU2547 -3324:Src/main.c **** test = Create_File("FILE1.TXT"); // 0 -suc - 8082 .loc 1 3324 11 is_stmt 0 view .LVU2548 - 8083 001c 074C ldr r4, .L433+8 - 8084 001e 2046 mov r0, r4 - 8085 .LVL764: -3324:Src/main.c **** test = Create_File("FILE1.TXT"); // 0 -suc - 8086 .loc 1 3324 11 view .LVU2549 - 8087 0020 FFF7FEFF bl Remove_File - 8088 .LVL765: -3325:Src/main.c **** //test = Write_File ("FILE1.TXT", "____OSGG main borad information. Program made by Kazakov Vikt - 8089 .loc 1 3325 4 is_stmt 1 view .LVU2550 -3325:Src/main.c **** //test = Write_File ("FILE1.TXT", "____OSGG main borad information. Program made by Kazakov Vikt - 8090 .loc 1 3325 11 is_stmt 0 view .LVU2551 - 8091 0024 2046 mov r0, r4 - 8092 0026 FFF7FEFF bl Create_File - 8093 .LVL766: -3327:Src/main.c **** return test; - 8094 .loc 1 3327 4 is_stmt 1 view .LVU2552 - ARM GAS /tmp/ccwR4KB7.s page 528 + 8554 .cfi_startproc + 8555 @ args = 0, pretend = 0, frame = 0 + 8556 @ frame_needed = 0, uses_anonymous_args = 0 +3576:Src/main.c **** int test=0; + 8557 .loc 1 3576 1 is_stmt 0 view .LVU2672 + 8558 0000 38B5 push {r3, r4, r5, lr} + 8559 .LCFI74: + 8560 .cfi_def_cfa_offset 16 + 8561 .cfi_offset 3, -16 + 8562 .cfi_offset 4, -12 + 8563 .cfi_offset 5, -8 + 8564 .cfi_offset 14, -4 + 8565 0002 0446 mov r4, r0 +3577:Src/main.c **** if (HAL_GPIO_ReadPin(SDMMC1_EN_GPIO_Port, SDMMC1_EN_Pin)==GPIO_PIN_RESET) + 8566 .loc 1 3577 2 is_stmt 1 view .LVU2673 + 8567 .LVL821: +3578:Src/main.c **** { + 8568 .loc 1 3578 2 view .LVU2674 +3578:Src/main.c **** { + 8569 .loc 1 3578 6 is_stmt 0 view .LVU2675 + 8570 0004 0121 movs r1, #1 + 8571 0006 0D48 ldr r0, .L461 + 8572 .LVL822: +3578:Src/main.c **** { + 8573 .loc 1 3578 6 view .LVU2676 + 8574 0008 FFF7FEFF bl HAL_GPIO_ReadPin + 8575 .LVL823: +3578:Src/main.c **** { + 8576 .loc 1 3578 5 discriminator 1 view .LVU2677 + 8577 000c 08B1 cbz r0, .L459 +3596:Src/main.c **** } + 8578 .loc 1 3596 10 view .LVU2678 + 8579 000e 0120 movs r0, #1 + 8580 .LVL824: + 8581 .L454: +3612:Src/main.c **** + 8582 .loc 1 3612 1 view .LVU2679 + 8583 0010 38BD pop {r3, r4, r5, pc} + 8584 .LVL825: + 8585 .L459: +3580:Src/main.c **** if (test == 0) //0 - suc + 8586 .loc 1 3580 3 is_stmt 1 view .LVU2680 +3580:Src/main.c **** if (test == 0) //0 - suc + 8587 .loc 1 3580 10 is_stmt 0 view .LVU2681 + 8588 0012 0B48 ldr r0, .L461+4 + 8589 0014 FFF7FEFF bl Mount_SD + 8590 .LVL826: +3581:Src/main.c **** { + 8591 .loc 1 3581 3 is_stmt 1 view .LVU2682 +3581:Src/main.c **** { + 8592 .loc 1 3581 6 is_stmt 0 view .LVU2683 + 8593 0018 08B1 cbz r0, .L460 +3591:Src/main.c **** } + 8594 .loc 1 3591 11 view .LVU2684 + 8595 001a 0120 movs r0, #1 + 8596 .LVL827: +3591:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 544 -3327:Src/main.c **** return test; - 8095 .loc 1 3327 11 is_stmt 0 view .LVU2553 - 8096 002a 0348 ldr r0, .L433+4 - 8097 002c FFF7FEFF bl Unmount_SD - 8098 .LVL767: -3328:Src/main.c **** } - 8099 .loc 1 3328 4 is_stmt 1 view .LVU2554 -3328:Src/main.c **** } - 8100 .loc 1 3328 11 is_stmt 0 view .LVU2555 - 8101 0030 EDE7 b .L426 - 8102 .L434: - 8103 0032 00BF .align 2 - 8104 .L433: - 8105 0034 000C0240 .word 1073875968 - 8106 0038 00000000 .word .LC0 - 8107 003c 00000000 .word .LC2 - 8108 .cfi_endproc - 8109 .LFE1229: - 8111 .section .text.USART_TX,"ax",%progbits - 8112 .align 1 - 8113 .global USART_TX - 8114 .syntax unified - 8115 .thumb - 8116 .thumb_func - 8118 USART_TX: - 8119 .LVL768: - 8120 .LFB1230: -3343:Src/main.c **** uint16_t ind = 0; - 8121 .loc 1 3343 1 is_stmt 1 view -0 - 8122 .cfi_startproc - 8123 @ args = 0, pretend = 0, frame = 0 - 8124 @ frame_needed = 0, uses_anonymous_args = 0 - 8125 @ link register save eliminated. -3343:Src/main.c **** uint16_t ind = 0; - 8126 .loc 1 3343 1 is_stmt 0 view .LVU2557 - 8127 0000 8C46 mov ip, r1 -3344:Src/main.c **** while (indCR3, USART_CR3_DMAT); 3570:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3571:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -31738,9 +32836,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccwR4KB7.s page 530 - - 3584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable DMA Disabling on Reception Error 3585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 DDRE LL_USART_EnableDMADeactOnRxErr 3586:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -31783,6 +32878,9 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_DMA_REG_DATA_RECEIVE 3624:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Address of data register 3625:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ + ARM GAS /tmp/ccEQxcUB.s page 549 + + 3626:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_DMA_GetRegAddr(const USART_TypeDef *USARTx, uint32_t Direction) 3627:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3628:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t data_reg_addr; @@ -31798,9 +32896,6 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3638:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** data_reg_addr = (uint32_t) &(USARTx->RDR); 3639:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccwR4KB7.s page 531 - - 3641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return data_reg_addr; 3642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3643:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -31842,6305 +32937,6960 @@ ARM GAS /tmp/ccwR4KB7.s page 1 3679:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 3680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3681:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_TransmitData8(USART_TypeDef *USARTx, uint8_t Value) - 8167 .loc 7 3681 22 view .LVU2572 - 8168 .LBB593: + 8772 .loc 7 3681 22 view .LVU2733 + ARM GAS /tmp/ccEQxcUB.s page 550 + + + 8773 .LBB630: 3682:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3683:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** USARTx->TDR = Value; - 8169 .loc 7 3683 3 view .LVU2573 - 8170 .loc 7 3683 15 is_stmt 0 view .LVU2574 - 8171 0018 034B ldr r3, .L440 - 8172 001a 9962 str r1, [r3, #40] - 8173 .LVL774: - 8174 .loc 7 3683 15 view .LVU2575 - 8175 .LBE593: - 8176 .LBE592: -3349:Src/main.c **** } - 8177 .loc 1 3349 5 is_stmt 1 view .LVU2576 -3349:Src/main.c **** } - 8178 .loc 1 3349 8 is_stmt 0 view .LVU2577 - ARM GAS /tmp/ccwR4KB7.s page 532 + 8774 .loc 7 3683 3 view .LVU2734 + 8775 .loc 7 3683 15 is_stmt 0 view .LVU2735 + 8776 0018 034B ldr r3, .L477 + 8777 001a 9962 str r1, [r3, #40] + 8778 .LVL849: + 8779 .loc 7 3683 15 view .LVU2736 + 8780 .LBE630: + 8781 .LBE629: +3647:Src/main.c **** } + 8782 .loc 1 3647 5 is_stmt 1 view .LVU2737 +3647:Src/main.c **** } + 8783 .loc 1 3647 8 is_stmt 0 view .LVU2738 + 8784 001c 0132 adds r2, r2, #1 + 8785 .LVL850: +3647:Src/main.c **** } + 8786 .loc 1 3647 8 view .LVU2739 + 8787 001e 92B2 uxth r2, r2 + 8788 .LVL851: + 8789 .L473: +3643:Src/main.c **** { + 8790 .loc 1 3643 13 is_stmt 1 view .LVU2740 + 8791 0020 6245 cmp r2, ip + 8792 0022 F1D3 bcc .L475 +3649:Src/main.c **** + 8793 .loc 1 3649 1 is_stmt 0 view .LVU2741 + 8794 0024 7047 bx lr + 8795 .L478: + 8796 0026 00BF .align 2 + 8797 .L477: + 8798 0028 00100140 .word 1073811456 + 8799 .cfi_endproc + 8800 .LFE1235: + 8802 .section .text.USART_TX_DMA,"ax",%progbits + 8803 .align 1 + 8804 .global USART_TX_DMA + 8805 .syntax unified + 8806 .thumb + 8807 .thumb_func + 8809 USART_TX_DMA: + 8810 .LFB1236: +3652:Src/main.c **** while (u_tx_flg) {}//Wait until previous transfer not complete. u_tx_flg is resetting in DMA inter + 8811 .loc 1 3652 1 is_stmt 1 view -0 + 8812 .cfi_startproc + 8813 @ args = 0, pretend = 0, frame = 0 + 8814 @ frame_needed = 0, uses_anonymous_args = 0 + 8815 @ link register save eliminated. + 8816 .LVL852: + 8817 .L480: +3653:Src/main.c **** LL_DMA_DisableStream(DMA2, LL_DMA_STREAM_7); + 8818 .loc 1 3653 20 discriminator 1 view .LVU2743 +3653:Src/main.c **** LL_DMA_DisableStream(DMA2, LL_DMA_STREAM_7); + 8819 .loc 1 3653 9 discriminator 1 view .LVU2744 + 8820 0000 0D4B ldr r3, .L481 + 8821 0002 1B78 ldrb r3, [r3] @ zero_extendqisi2 + ARM GAS /tmp/ccEQxcUB.s page 551 - 8179 001c 0132 adds r2, r2, #1 - 8180 .LVL775: -3349:Src/main.c **** } - 8181 .loc 1 3349 8 view .LVU2578 - 8182 001e 92B2 uxth r2, r2 - 8183 .LVL776: - 8184 .L436: -3345:Src/main.c **** { - 8185 .loc 1 3345 13 is_stmt 1 view .LVU2579 - 8186 0020 6245 cmp r2, ip - 8187 0022 F1D3 bcc .L438 -3351:Src/main.c **** - 8188 .loc 1 3351 1 is_stmt 0 view .LVU2580 - 8189 0024 7047 bx lr - 8190 .L441: - 8191 0026 00BF .align 2 - 8192 .L440: - 8193 0028 00100140 .word 1073811456 - 8194 .cfi_endproc - 8195 .LFE1230: - 8197 .section .text.USART_TX_DMA,"ax",%progbits - 8198 .align 1 - 8199 .global USART_TX_DMA - 8200 .syntax unified - 8201 .thumb - 8202 .thumb_func - 8204 USART_TX_DMA: - 8205 .LFB1231: -3354:Src/main.c **** while (u_tx_flg) {}//Wait until previous transfer not complete. u_tx_flg is resetting in DMA inter - 8206 .loc 1 3354 1 is_stmt 1 view -0 - 8207 .cfi_startproc - 8208 @ args = 0, pretend = 0, frame = 0 - 8209 @ frame_needed = 0, uses_anonymous_args = 0 - 8210 @ link register save eliminated. - 8211 .LVL777: - 8212 .L443: -3355:Src/main.c **** LL_DMA_DisableStream(DMA2, LL_DMA_STREAM_7); - 8213 .loc 1 3355 20 discriminator 1 view .LVU2582 -3355:Src/main.c **** LL_DMA_DisableStream(DMA2, LL_DMA_STREAM_7); - 8214 .loc 1 3355 9 discriminator 1 view .LVU2583 - 8215 0000 0D4B ldr r3, .L444 - 8216 0002 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 8217 0004 002B cmp r3, #0 - 8218 0006 FBD1 bne .L443 -3356:Src/main.c **** LL_DMA_SetDataLength(DMA2, LL_DMA_STREAM_7, sz); - 8219 .loc 1 3356 2 view .LVU2584 - 8220 .LVL778: - 8221 .LBB594: - 8222 .LBI594: + 8822 0004 002B cmp r3, #0 + 8823 0006 FBD1 bne .L480 +3654:Src/main.c **** LL_DMA_SetDataLength(DMA2, LL_DMA_STREAM_7, sz); + 8824 .loc 1 3654 2 view .LVU2745 + 8825 .LVL853: + 8826 .LBB631: + 8827 .LBI631: 517:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8223 .loc 6 517 22 view .LVU2585 - 8224 .LBB595: + 8828 .loc 6 517 22 view .LVU2746 + 8829 .LBB632: 519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8225 .loc 6 519 3 view .LVU2586 - 8226 0008 0C4B ldr r3, .L444+4 - 8227 000a D3F8B820 ldr r2, [r3, #184] - 8228 000e 22F00102 bic r2, r2, #1 - ARM GAS /tmp/ccwR4KB7.s page 533 - - - 8229 0012 C3F8B820 str r2, [r3, #184] - 8230 .LVL779: + 8830 .loc 6 519 3 view .LVU2747 + 8831 0008 0C4B ldr r3, .L481+4 + 8832 000a D3F8B820 ldr r2, [r3, #184] + 8833 000e 22F00102 bic r2, r2, #1 + 8834 0012 C3F8B820 str r2, [r3, #184] + 8835 .LVL854: 519:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8231 .loc 6 519 3 is_stmt 0 view .LVU2587 - 8232 .LBE595: - 8233 .LBE594: -3357:Src/main.c **** LL_DMA_EnableStream(DMA2, LL_DMA_STREAM_7); - 8234 .loc 1 3357 3 is_stmt 1 view .LVU2588 - 8235 .LBB596: - 8236 .LBI596: + 8836 .loc 6 519 3 is_stmt 0 view .LVU2748 + 8837 .LBE632: + 8838 .LBE631: +3655:Src/main.c **** LL_DMA_EnableStream(DMA2, LL_DMA_STREAM_7); + 8839 .loc 1 3655 3 is_stmt 1 view .LVU2749 + 8840 .LBB633: + 8841 .LBI633: 971:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8237 .loc 6 971 22 view .LVU2589 - 8238 .LBB597: + 8842 .loc 6 971 22 view .LVU2750 + 8843 .LBB634: 973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8239 .loc 6 973 3 view .LVU2590 - 8240 0016 D3F8BC20 ldr r2, [r3, #188] - 8241 001a 6FF30F02 bfc r2, #0, #16 - 8242 001e 1043 orrs r0, r0, r2 - 8243 .LVL780: + 8844 .loc 6 973 3 view .LVU2751 + 8845 0016 D3F8BC20 ldr r2, [r3, #188] + 8846 001a 6FF30F02 bfc r2, #0, #16 + 8847 001e 1043 orrs r0, r0, r2 + 8848 .LVL855: 973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8244 .loc 6 973 3 is_stmt 0 view .LVU2591 - 8245 0020 C3F8BC00 str r0, [r3, #188] - 8246 .LVL781: + 8849 .loc 6 973 3 is_stmt 0 view .LVU2752 + 8850 0020 C3F8BC00 str r0, [r3, #188] + 8851 .LVL856: 973:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8247 .loc 6 973 3 view .LVU2592 - 8248 .LBE597: - 8249 .LBE596: -3358:Src/main.c **** u_tx_flg = 1;//indicate that transfer begin - 8250 .loc 1 3358 3 is_stmt 1 view .LVU2593 - 8251 .LBB598: - 8252 .LBI598: + 8852 .loc 6 973 3 view .LVU2753 + 8853 .LBE634: + 8854 .LBE633: +3656:Src/main.c **** u_tx_flg = 1;//indicate that transfer begin + 8855 .loc 1 3656 3 is_stmt 1 view .LVU2754 + 8856 .LBB635: + 8857 .LBI635: 497:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8253 .loc 6 497 22 view .LVU2594 - 8254 .LBB599: + 8858 .loc 6 497 22 view .LVU2755 + 8859 .LBB636: 499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8255 .loc 6 499 3 view .LVU2595 - 8256 0024 D3F8B820 ldr r2, [r3, #184] - 8257 0028 42F00102 orr r2, r2, #1 - 8258 002c C3F8B820 str r2, [r3, #184] - 8259 .LVL782: + 8860 .loc 6 499 3 view .LVU2756 + 8861 0024 D3F8B820 ldr r2, [r3, #184] + 8862 0028 42F00102 orr r2, r2, #1 + 8863 002c C3F8B820 str r2, [r3, #184] + 8864 .LVL857: 499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8260 .loc 6 499 3 is_stmt 0 view .LVU2596 - 8261 .LBE599: - 8262 .LBE598: -3359:Src/main.c **** } - 8263 .loc 1 3359 2 is_stmt 1 view .LVU2597 -3359:Src/main.c **** } - 8264 .loc 1 3359 11 is_stmt 0 view .LVU2598 - 8265 0030 014B ldr r3, .L444 - 8266 0032 0122 movs r2, #1 - 8267 0034 1A70 strb r2, [r3] -3360:Src/main.c **** - 8268 .loc 1 3360 1 view .LVU2599 - 8269 0036 7047 bx lr - 8270 .L445: - 8271 .align 2 - 8272 .L444: - ARM GAS /tmp/ccwR4KB7.s page 534 + 8865 .loc 6 499 3 is_stmt 0 view .LVU2757 + ARM GAS /tmp/ccEQxcUB.s page 552 - 8273 0038 00000000 .word u_tx_flg - 8274 003c 00640240 .word 1073898496 - 8275 .cfi_endproc - 8276 .LFE1231: - 8278 .section .text.Error_Handler,"ax",%progbits - 8279 .align 1 - 8280 .global Error_Handler - 8281 .syntax unified - 8282 .thumb - 8283 .thumb_func - 8285 Error_Handler: - 8286 .LFB1233: -3368:Src/main.c **** //------------------------------------------------------- -3369:Src/main.c **** /* USER CODE END 4 */ -3370:Src/main.c **** -3371:Src/main.c **** /** -3372:Src/main.c **** * @brief This function is executed in case of error occurrence. -3373:Src/main.c **** * @retval None -3374:Src/main.c **** */ -3375:Src/main.c **** void Error_Handler(void) -3376:Src/main.c **** { - 8287 .loc 1 3376 1 is_stmt 1 view -0 - 8288 .cfi_startproc - 8289 @ Volatile: function does not return. - 8290 @ args = 0, pretend = 0, frame = 0 - 8291 @ frame_needed = 0, uses_anonymous_args = 0 - 8292 @ link register save eliminated. -3377:Src/main.c **** /* USER CODE BEGIN Error_Handler_Debug */ -3378:Src/main.c **** /* User can add his own implementation to report the HAL error return state */ -3379:Src/main.c **** __disable_irq(); - 8293 .loc 1 3379 3 view .LVU2601 - 8294 .LBB600: - 8295 .LBI600: + 8866 .LBE636: + 8867 .LBE635: +3657:Src/main.c **** } + 8868 .loc 1 3657 2 is_stmt 1 view .LVU2758 +3657:Src/main.c **** } + 8869 .loc 1 3657 11 is_stmt 0 view .LVU2759 + 8870 0030 014B ldr r3, .L481 + 8871 0032 0122 movs r2, #1 + 8872 0034 1A70 strb r2, [r3] +3658:Src/main.c **** + 8873 .loc 1 3658 1 view .LVU2760 + 8874 0036 7047 bx lr + 8875 .L482: + 8876 .align 2 + 8877 .L481: + 8878 0038 00000000 .word u_tx_flg + 8879 003c 00640240 .word 1073898496 + 8880 .cfi_endproc + 8881 .LFE1236: + 8883 .section .text.Error_Handler,"ax",%progbits + 8884 .align 1 + 8885 .global Error_Handler + 8886 .syntax unified + 8887 .thumb + 8888 .thumb_func + 8890 Error_Handler: + 8891 .LFB1238: +3666:Src/main.c **** //------------------------------------------------------- +3667:Src/main.c **** /* USER CODE END 4 */ +3668:Src/main.c **** +3669:Src/main.c **** /** +3670:Src/main.c **** * @brief This function is executed in case of error occurrence. +3671:Src/main.c **** * @retval None +3672:Src/main.c **** */ +3673:Src/main.c **** void Error_Handler(void) +3674:Src/main.c **** { + 8892 .loc 1 3674 1 is_stmt 1 view -0 + 8893 .cfi_startproc + 8894 @ Volatile: function does not return. + 8895 @ args = 0, pretend = 0, frame = 0 + 8896 @ frame_needed = 0, uses_anonymous_args = 0 + 8897 @ link register save eliminated. +3675:Src/main.c **** /* USER CODE BEGIN Error_Handler_Debug */ +3676:Src/main.c **** /* User can add his own implementation to report the HAL error return state */ +3677:Src/main.c **** __disable_irq(); + 8898 .loc 1 3677 3 view .LVU2762 + 8899 .LBB637: + 8900 .LBI637: 140:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 8296 .loc 8 140 27 view .LVU2602 - 8297 .LBB601: + 8901 .loc 8 140 27 view .LVU2763 + 8902 .LBB638: 142:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 8298 .loc 8 142 3 view .LVU2603 - 8299 .syntax unified - 8300 @ 142 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 8301 0000 72B6 cpsid i - 8302 @ 0 "" 2 - 8303 .thumb - 8304 .syntax unified - 8305 .L447: - 8306 .LBE601: - 8307 .LBE600: -3380:Src/main.c **** while (1) - 8308 .loc 1 3380 3 view .LVU2604 -3381:Src/main.c **** { -3382:Src/main.c **** } - 8309 .loc 1 3382 3 view .LVU2605 -3380:Src/main.c **** while (1) - 8310 .loc 1 3380 9 view .LVU2606 - 8311 0002 FEE7 b .L447 - 8312 .cfi_endproc - 8313 .LFE1233: - ARM GAS /tmp/ccwR4KB7.s page 535 + 8903 .loc 8 142 3 view .LVU2764 + 8904 .syntax unified + 8905 @ 142 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 8906 0000 72B6 cpsid i + 8907 @ 0 "" 2 + ARM GAS /tmp/ccEQxcUB.s page 553 - 8315 .section .text.MX_ADC1_Init,"ax",%progbits - 8316 .align 1 - 8317 .syntax unified - 8318 .thumb - 8319 .thumb_func - 8321 MX_ADC1_Init: - 8322 .LFB1188: - 989:Src/main.c **** - 8323 .loc 1 989 1 view -0 - 8324 .cfi_startproc - 8325 @ args = 0, pretend = 0, frame = 16 - 8326 @ frame_needed = 0, uses_anonymous_args = 0 - 8327 0000 00B5 push {lr} - 8328 .LCFI74: - 8329 .cfi_def_cfa_offset 4 - 8330 .cfi_offset 14, -4 - 8331 0002 85B0 sub sp, sp, #20 - 8332 .LCFI75: - 8333 .cfi_def_cfa_offset 24 - 995:Src/main.c **** - 8334 .loc 1 995 3 view .LVU2608 - 995:Src/main.c **** - 8335 .loc 1 995 26 is_stmt 0 view .LVU2609 - 8336 0004 0023 movs r3, #0 - 8337 0006 0093 str r3, [sp] - 8338 0008 0193 str r3, [sp, #4] - 8339 000a 0293 str r3, [sp, #8] - 8340 000c 0393 str r3, [sp, #12] -1003:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; - 8341 .loc 1 1003 3 is_stmt 1 view .LVU2610 -1003:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; - 8342 .loc 1 1003 18 is_stmt 0 view .LVU2611 - 8343 000e 2B48 ldr r0, .L462 - 8344 0010 2B4A ldr r2, .L462+4 - 8345 0012 0260 str r2, [r0] -1004:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; - 8346 .loc 1 1004 3 is_stmt 1 view .LVU2612 -1004:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; - 8347 .loc 1 1004 29 is_stmt 0 view .LVU2613 - 8348 0014 4FF44032 mov r2, #196608 - 8349 0018 4260 str r2, [r0, #4] -1005:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; - 8350 .loc 1 1005 3 is_stmt 1 view .LVU2614 -1005:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; - 8351 .loc 1 1005 25 is_stmt 0 view .LVU2615 - 8352 001a 8360 str r3, [r0, #8] -1006:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; - 8353 .loc 1 1006 3 is_stmt 1 view .LVU2616 -1006:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; - 8354 .loc 1 1006 27 is_stmt 0 view .LVU2617 - 8355 001c 0122 movs r2, #1 - 8356 001e 0261 str r2, [r0, #16] -1007:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; - 8357 .loc 1 1007 3 is_stmt 1 view .LVU2618 -1007:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; - 8358 .loc 1 1007 33 is_stmt 0 view .LVU2619 - 8359 0020 8361 str r3, [r0, #24] - ARM GAS /tmp/ccwR4KB7.s page 536 + 8908 .thumb + 8909 .syntax unified + 8910 .L484: + 8911 .LBE638: + 8912 .LBE637: +3678:Src/main.c **** while (1) + 8913 .loc 1 3678 3 view .LVU2765 +3679:Src/main.c **** { +3680:Src/main.c **** } + 8914 .loc 1 3680 3 view .LVU2766 +3678:Src/main.c **** while (1) + 8915 .loc 1 3678 9 view .LVU2767 + 8916 0002 FEE7 b .L484 + 8917 .cfi_endproc + 8918 .LFE1238: + 8920 .section .text.MX_ADC1_Init,"ax",%progbits + 8921 .align 1 + 8922 .syntax unified + 8923 .thumb + 8924 .thumb_func + 8926 MX_ADC1_Init: + 8927 .LFB1188: +1085:Src/main.c **** + 8928 .loc 1 1085 1 view -0 + 8929 .cfi_startproc + 8930 @ args = 0, pretend = 0, frame = 16 + 8931 @ frame_needed = 0, uses_anonymous_args = 0 + 8932 0000 00B5 push {lr} + 8933 .LCFI76: + 8934 .cfi_def_cfa_offset 4 + 8935 .cfi_offset 14, -4 + 8936 0002 85B0 sub sp, sp, #20 + 8937 .LCFI77: + 8938 .cfi_def_cfa_offset 24 +1091:Src/main.c **** + 8939 .loc 1 1091 3 view .LVU2769 +1091:Src/main.c **** + 8940 .loc 1 1091 26 is_stmt 0 view .LVU2770 + 8941 0004 0023 movs r3, #0 + 8942 0006 0093 str r3, [sp] + 8943 0008 0193 str r3, [sp, #4] + 8944 000a 0293 str r3, [sp, #8] + 8945 000c 0393 str r3, [sp, #12] +1099:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; + 8946 .loc 1 1099 3 is_stmt 1 view .LVU2771 +1099:Src/main.c **** hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; + 8947 .loc 1 1099 18 is_stmt 0 view .LVU2772 + 8948 000e 2B48 ldr r0, .L499 + 8949 0010 2B4A ldr r2, .L499+4 + 8950 0012 0260 str r2, [r0] +1100:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; + 8951 .loc 1 1100 3 is_stmt 1 view .LVU2773 +1100:Src/main.c **** hadc1.Init.Resolution = ADC_RESOLUTION_12B; + 8952 .loc 1 1100 29 is_stmt 0 view .LVU2774 + 8953 0014 4FF44032 mov r2, #196608 + 8954 0018 4260 str r2, [r0, #4] +1101:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; + ARM GAS /tmp/ccEQxcUB.s page 554 -1008:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; - 8360 .loc 1 1008 3 is_stmt 1 view .LVU2620 -1008:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; - 8361 .loc 1 1008 36 is_stmt 0 view .LVU2621 - 8362 0022 80F82030 strb r3, [r0, #32] -1009:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; - 8363 .loc 1 1009 3 is_stmt 1 view .LVU2622 -1009:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; - 8364 .loc 1 1009 35 is_stmt 0 view .LVU2623 - 8365 0026 C362 str r3, [r0, #44] -1010:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; - 8366 .loc 1 1010 3 is_stmt 1 view .LVU2624 -1010:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; - 8367 .loc 1 1010 31 is_stmt 0 view .LVU2625 - 8368 0028 2649 ldr r1, .L462+8 - 8369 002a 8162 str r1, [r0, #40] -1011:Src/main.c **** hadc1.Init.NbrOfConversion = 5; - 8370 .loc 1 1011 3 is_stmt 1 view .LVU2626 -1011:Src/main.c **** hadc1.Init.NbrOfConversion = 5; - 8371 .loc 1 1011 24 is_stmt 0 view .LVU2627 - 8372 002c C360 str r3, [r0, #12] -1012:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; - 8373 .loc 1 1012 3 is_stmt 1 view .LVU2628 -1012:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; - 8374 .loc 1 1012 30 is_stmt 0 view .LVU2629 - 8375 002e 0521 movs r1, #5 - 8376 0030 C161 str r1, [r0, #28] -1013:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; - 8377 .loc 1 1013 3 is_stmt 1 view .LVU2630 -1013:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; - 8378 .loc 1 1013 36 is_stmt 0 view .LVU2631 - 8379 0032 80F83030 strb r3, [r0, #48] -1014:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) - 8380 .loc 1 1014 3 is_stmt 1 view .LVU2632 -1014:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) - 8381 .loc 1 1014 27 is_stmt 0 view .LVU2633 - 8382 0036 4261 str r2, [r0, #20] -1015:Src/main.c **** { - 8383 .loc 1 1015 3 is_stmt 1 view .LVU2634 -1015:Src/main.c **** { - 8384 .loc 1 1015 7 is_stmt 0 view .LVU2635 - 8385 0038 FFF7FEFF bl HAL_ADC_Init - 8386 .LVL783: -1015:Src/main.c **** { - 8387 .loc 1 1015 6 discriminator 1 view .LVU2636 - 8388 003c 0028 cmp r0, #0 - 8389 003e 31D1 bne .L456 -1022:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; - 8390 .loc 1 1022 3 is_stmt 1 view .LVU2637 -1022:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; - 8391 .loc 1 1022 19 is_stmt 0 view .LVU2638 - 8392 0040 0923 movs r3, #9 - 8393 0042 0093 str r3, [sp] -1023:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; - 8394 .loc 1 1023 3 is_stmt 1 view .LVU2639 -1023:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; - 8395 .loc 1 1023 16 is_stmt 0 view .LVU2640 - ARM GAS /tmp/ccwR4KB7.s page 537 + 8955 .loc 1 1101 3 is_stmt 1 view .LVU2775 +1101:Src/main.c **** hadc1.Init.ScanConvMode = ADC_SCAN_ENABLE; + 8956 .loc 1 1101 25 is_stmt 0 view .LVU2776 + 8957 001a 8360 str r3, [r0, #8] +1102:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; + 8958 .loc 1 1102 3 is_stmt 1 view .LVU2777 +1102:Src/main.c **** hadc1.Init.ContinuousConvMode = DISABLE; + 8959 .loc 1 1102 27 is_stmt 0 view .LVU2778 + 8960 001c 0122 movs r2, #1 + 8961 001e 0261 str r2, [r0, #16] +1103:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; + 8962 .loc 1 1103 3 is_stmt 1 view .LVU2779 +1103:Src/main.c **** hadc1.Init.DiscontinuousConvMode = DISABLE; + 8963 .loc 1 1103 33 is_stmt 0 view .LVU2780 + 8964 0020 8361 str r3, [r0, #24] +1104:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; + 8965 .loc 1 1104 3 is_stmt 1 view .LVU2781 +1104:Src/main.c **** hadc1.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; + 8966 .loc 1 1104 36 is_stmt 0 view .LVU2782 + 8967 0022 80F82030 strb r3, [r0, #32] +1105:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; + 8968 .loc 1 1105 3 is_stmt 1 view .LVU2783 +1105:Src/main.c **** hadc1.Init.ExternalTrigConv = ADC_SOFTWARE_START; + 8969 .loc 1 1105 35 is_stmt 0 view .LVU2784 + 8970 0026 C362 str r3, [r0, #44] +1106:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; + 8971 .loc 1 1106 3 is_stmt 1 view .LVU2785 +1106:Src/main.c **** hadc1.Init.DataAlign = ADC_DATAALIGN_RIGHT; + 8972 .loc 1 1106 31 is_stmt 0 view .LVU2786 + 8973 0028 2649 ldr r1, .L499+8 + 8974 002a 8162 str r1, [r0, #40] +1107:Src/main.c **** hadc1.Init.NbrOfConversion = 5; + 8975 .loc 1 1107 3 is_stmt 1 view .LVU2787 +1107:Src/main.c **** hadc1.Init.NbrOfConversion = 5; + 8976 .loc 1 1107 24 is_stmt 0 view .LVU2788 + 8977 002c C360 str r3, [r0, #12] +1108:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; + 8978 .loc 1 1108 3 is_stmt 1 view .LVU2789 +1108:Src/main.c **** hadc1.Init.DMAContinuousRequests = DISABLE; + 8979 .loc 1 1108 30 is_stmt 0 view .LVU2790 + 8980 002e 0521 movs r1, #5 + 8981 0030 C161 str r1, [r0, #28] +1109:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; + 8982 .loc 1 1109 3 is_stmt 1 view .LVU2791 +1109:Src/main.c **** hadc1.Init.EOCSelection = ADC_EOC_SINGLE_CONV; + 8983 .loc 1 1109 36 is_stmt 0 view .LVU2792 + 8984 0032 80F83030 strb r3, [r0, #48] +1110:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) + 8985 .loc 1 1110 3 is_stmt 1 view .LVU2793 +1110:Src/main.c **** if (HAL_ADC_Init(&hadc1) != HAL_OK) + 8986 .loc 1 1110 27 is_stmt 0 view .LVU2794 + 8987 0036 4261 str r2, [r0, #20] +1111:Src/main.c **** { + 8988 .loc 1 1111 3 is_stmt 1 view .LVU2795 +1111:Src/main.c **** { + 8989 .loc 1 1111 7 is_stmt 0 view .LVU2796 + 8990 0038 FFF7FEFF bl HAL_ADC_Init + ARM GAS /tmp/ccEQxcUB.s page 555 - 8396 0044 0123 movs r3, #1 - 8397 0046 0193 str r3, [sp, #4] -1024:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8398 .loc 1 1024 3 is_stmt 1 view .LVU2641 -1024:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8399 .loc 1 1024 24 is_stmt 0 view .LVU2642 - 8400 0048 0723 movs r3, #7 - 8401 004a 0293 str r3, [sp, #8] -1025:Src/main.c **** { - 8402 .loc 1 1025 3 is_stmt 1 view .LVU2643 -1025:Src/main.c **** { - 8403 .loc 1 1025 7 is_stmt 0 view .LVU2644 - 8404 004c 6946 mov r1, sp - 8405 004e 1B48 ldr r0, .L462 - 8406 0050 FFF7FEFF bl HAL_ADC_ConfigChannel - 8407 .LVL784: -1025:Src/main.c **** { - 8408 .loc 1 1025 6 discriminator 1 view .LVU2645 - 8409 0054 40BB cbnz r0, .L457 -1032:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; - 8410 .loc 1 1032 3 is_stmt 1 view .LVU2646 -1032:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; - 8411 .loc 1 1032 19 is_stmt 0 view .LVU2647 - 8412 0056 0823 movs r3, #8 - 8413 0058 0093 str r3, [sp] -1033:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8414 .loc 1 1033 3 is_stmt 1 view .LVU2648 -1033:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8415 .loc 1 1033 16 is_stmt 0 view .LVU2649 - 8416 005a 0223 movs r3, #2 - 8417 005c 0193 str r3, [sp, #4] -1034:Src/main.c **** { - 8418 .loc 1 1034 3 is_stmt 1 view .LVU2650 -1034:Src/main.c **** { - 8419 .loc 1 1034 7 is_stmt 0 view .LVU2651 - 8420 005e 6946 mov r1, sp - 8421 0060 1648 ldr r0, .L462 - 8422 0062 FFF7FEFF bl HAL_ADC_ConfigChannel - 8423 .LVL785: -1034:Src/main.c **** { - 8424 .loc 1 1034 6 discriminator 1 view .LVU2652 - 8425 0066 08BB cbnz r0, .L458 -1041:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; - 8426 .loc 1 1041 3 is_stmt 1 view .LVU2653 -1041:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; - 8427 .loc 1 1041 19 is_stmt 0 view .LVU2654 - 8428 0068 0223 movs r3, #2 - 8429 006a 0093 str r3, [sp] -1042:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8430 .loc 1 1042 3 is_stmt 1 view .LVU2655 -1042:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8431 .loc 1 1042 16 is_stmt 0 view .LVU2656 - 8432 006c 0323 movs r3, #3 - 8433 006e 0193 str r3, [sp, #4] -1043:Src/main.c **** { - 8434 .loc 1 1043 3 is_stmt 1 view .LVU2657 -1043:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 538 + 8991 .LVL858: +1111:Src/main.c **** { + 8992 .loc 1 1111 6 discriminator 1 view .LVU2797 + 8993 003c 0028 cmp r0, #0 + 8994 003e 31D1 bne .L493 +1118:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; + 8995 .loc 1 1118 3 is_stmt 1 view .LVU2798 +1118:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; + 8996 .loc 1 1118 19 is_stmt 0 view .LVU2799 + 8997 0040 0923 movs r3, #9 + 8998 0042 0093 str r3, [sp] +1119:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; + 8999 .loc 1 1119 3 is_stmt 1 view .LVU2800 +1119:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; + 9000 .loc 1 1119 16 is_stmt 0 view .LVU2801 + 9001 0044 0123 movs r3, #1 + 9002 0046 0193 str r3, [sp, #4] +1120:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9003 .loc 1 1120 3 is_stmt 1 view .LVU2802 +1120:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9004 .loc 1 1120 24 is_stmt 0 view .LVU2803 + 9005 0048 0723 movs r3, #7 + 9006 004a 0293 str r3, [sp, #8] +1121:Src/main.c **** { + 9007 .loc 1 1121 3 is_stmt 1 view .LVU2804 +1121:Src/main.c **** { + 9008 .loc 1 1121 7 is_stmt 0 view .LVU2805 + 9009 004c 6946 mov r1, sp + 9010 004e 1B48 ldr r0, .L499 + 9011 0050 FFF7FEFF bl HAL_ADC_ConfigChannel + 9012 .LVL859: +1121:Src/main.c **** { + 9013 .loc 1 1121 6 discriminator 1 view .LVU2806 + 9014 0054 40BB cbnz r0, .L494 +1128:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; + 9015 .loc 1 1128 3 is_stmt 1 view .LVU2807 +1128:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_2; + 9016 .loc 1 1128 19 is_stmt 0 view .LVU2808 + 9017 0056 0823 movs r3, #8 + 9018 0058 0093 str r3, [sp] +1129:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9019 .loc 1 1129 3 is_stmt 1 view .LVU2809 +1129:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9020 .loc 1 1129 16 is_stmt 0 view .LVU2810 + 9021 005a 0223 movs r3, #2 + 9022 005c 0193 str r3, [sp, #4] +1130:Src/main.c **** { + 9023 .loc 1 1130 3 is_stmt 1 view .LVU2811 +1130:Src/main.c **** { + 9024 .loc 1 1130 7 is_stmt 0 view .LVU2812 + 9025 005e 6946 mov r1, sp + 9026 0060 1648 ldr r0, .L499 + 9027 0062 FFF7FEFF bl HAL_ADC_ConfigChannel + 9028 .LVL860: +1130:Src/main.c **** { + 9029 .loc 1 1130 6 discriminator 1 view .LVU2813 + 9030 0066 08BB cbnz r0, .L495 + ARM GAS /tmp/ccEQxcUB.s page 556 - 8435 .loc 1 1043 7 is_stmt 0 view .LVU2658 - 8436 0070 6946 mov r1, sp - 8437 0072 1248 ldr r0, .L462 - 8438 0074 FFF7FEFF bl HAL_ADC_ConfigChannel - 8439 .LVL786: -1043:Src/main.c **** { - 8440 .loc 1 1043 6 discriminator 1 view .LVU2659 - 8441 0078 D0B9 cbnz r0, .L459 -1050:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; - 8442 .loc 1 1050 3 is_stmt 1 view .LVU2660 -1050:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; - 8443 .loc 1 1050 19 is_stmt 0 view .LVU2661 - 8444 007a 0A23 movs r3, #10 - 8445 007c 0093 str r3, [sp] -1051:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8446 .loc 1 1051 3 is_stmt 1 view .LVU2662 -1051:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8447 .loc 1 1051 16 is_stmt 0 view .LVU2663 - 8448 007e 0423 movs r3, #4 - 8449 0080 0193 str r3, [sp, #4] -1052:Src/main.c **** { - 8450 .loc 1 1052 3 is_stmt 1 view .LVU2664 -1052:Src/main.c **** { - 8451 .loc 1 1052 7 is_stmt 0 view .LVU2665 - 8452 0082 6946 mov r1, sp - 8453 0084 0D48 ldr r0, .L462 - 8454 0086 FFF7FEFF bl HAL_ADC_ConfigChannel - 8455 .LVL787: -1052:Src/main.c **** { - 8456 .loc 1 1052 6 discriminator 1 view .LVU2666 - 8457 008a 98B9 cbnz r0, .L460 -1059:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; - 8458 .loc 1 1059 3 is_stmt 1 view .LVU2667 -1059:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; - 8459 .loc 1 1059 19 is_stmt 0 view .LVU2668 - 8460 008c 0B23 movs r3, #11 - 8461 008e 0093 str r3, [sp] -1060:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8462 .loc 1 1060 3 is_stmt 1 view .LVU2669 -1060:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) - 8463 .loc 1 1060 16 is_stmt 0 view .LVU2670 - 8464 0090 0523 movs r3, #5 - 8465 0092 0193 str r3, [sp, #4] -1061:Src/main.c **** { - 8466 .loc 1 1061 3 is_stmt 1 view .LVU2671 -1061:Src/main.c **** { - 8467 .loc 1 1061 7 is_stmt 0 view .LVU2672 - 8468 0094 6946 mov r1, sp - 8469 0096 0948 ldr r0, .L462 - 8470 0098 FFF7FEFF bl HAL_ADC_ConfigChannel - 8471 .LVL788: -1061:Src/main.c **** { - 8472 .loc 1 1061 6 discriminator 1 view .LVU2673 - 8473 009c 60B9 cbnz r0, .L461 -1069:Src/main.c **** - 8474 .loc 1 1069 1 view .LVU2674 - 8475 009e 05B0 add sp, sp, #20 - ARM GAS /tmp/ccwR4KB7.s page 539 +1137:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; + 9031 .loc 1 1137 3 is_stmt 1 view .LVU2814 +1137:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_3; + 9032 .loc 1 1137 19 is_stmt 0 view .LVU2815 + 9033 0068 0223 movs r3, #2 + 9034 006a 0093 str r3, [sp] +1138:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9035 .loc 1 1138 3 is_stmt 1 view .LVU2816 +1138:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9036 .loc 1 1138 16 is_stmt 0 view .LVU2817 + 9037 006c 0323 movs r3, #3 + 9038 006e 0193 str r3, [sp, #4] +1139:Src/main.c **** { + 9039 .loc 1 1139 3 is_stmt 1 view .LVU2818 +1139:Src/main.c **** { + 9040 .loc 1 1139 7 is_stmt 0 view .LVU2819 + 9041 0070 6946 mov r1, sp + 9042 0072 1248 ldr r0, .L499 + 9043 0074 FFF7FEFF bl HAL_ADC_ConfigChannel + 9044 .LVL861: +1139:Src/main.c **** { + 9045 .loc 1 1139 6 discriminator 1 view .LVU2820 + 9046 0078 D0B9 cbnz r0, .L496 +1146:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; + 9047 .loc 1 1146 3 is_stmt 1 view .LVU2821 +1146:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_4; + 9048 .loc 1 1146 19 is_stmt 0 view .LVU2822 + 9049 007a 0A23 movs r3, #10 + 9050 007c 0093 str r3, [sp] +1147:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9051 .loc 1 1147 3 is_stmt 1 view .LVU2823 +1147:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9052 .loc 1 1147 16 is_stmt 0 view .LVU2824 + 9053 007e 0423 movs r3, #4 + 9054 0080 0193 str r3, [sp, #4] +1148:Src/main.c **** { + 9055 .loc 1 1148 3 is_stmt 1 view .LVU2825 +1148:Src/main.c **** { + 9056 .loc 1 1148 7 is_stmt 0 view .LVU2826 + 9057 0082 6946 mov r1, sp + 9058 0084 0D48 ldr r0, .L499 + 9059 0086 FFF7FEFF bl HAL_ADC_ConfigChannel + 9060 .LVL862: +1148:Src/main.c **** { + 9061 .loc 1 1148 6 discriminator 1 view .LVU2827 + 9062 008a 98B9 cbnz r0, .L497 +1155:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; + 9063 .loc 1 1155 3 is_stmt 1 view .LVU2828 +1155:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_5; + 9064 .loc 1 1155 19 is_stmt 0 view .LVU2829 + 9065 008c 0B23 movs r3, #11 + 9066 008e 0093 str r3, [sp] +1156:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9067 .loc 1 1156 3 is_stmt 1 view .LVU2830 +1156:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK) + 9068 .loc 1 1156 16 is_stmt 0 view .LVU2831 + 9069 0090 0523 movs r3, #5 + ARM GAS /tmp/ccEQxcUB.s page 557 - 8476 .LCFI76: - 8477 .cfi_remember_state - 8478 .cfi_def_cfa_offset 4 - 8479 @ sp needed - 8480 00a0 5DF804FB ldr pc, [sp], #4 - 8481 .L456: - 8482 .LCFI77: - 8483 .cfi_restore_state -1017:Src/main.c **** } - 8484 .loc 1 1017 5 is_stmt 1 view .LVU2675 - 8485 00a4 FFF7FEFF bl Error_Handler - 8486 .LVL789: - 8487 .L457: -1027:Src/main.c **** } - 8488 .loc 1 1027 5 view .LVU2676 - 8489 00a8 FFF7FEFF bl Error_Handler - 8490 .LVL790: - 8491 .L458: -1036:Src/main.c **** } - 8492 .loc 1 1036 5 view .LVU2677 - 8493 00ac FFF7FEFF bl Error_Handler - 8494 .LVL791: - 8495 .L459: -1045:Src/main.c **** } - 8496 .loc 1 1045 5 view .LVU2678 - 8497 00b0 FFF7FEFF bl Error_Handler - 8498 .LVL792: - 8499 .L460: -1054:Src/main.c **** } - 8500 .loc 1 1054 5 view .LVU2679 - 8501 00b4 FFF7FEFF bl Error_Handler - 8502 .LVL793: - 8503 .L461: -1063:Src/main.c **** } - 8504 .loc 1 1063 5 view .LVU2680 - 8505 00b8 FFF7FEFF bl Error_Handler - 8506 .LVL794: - 8507 .L463: - 8508 .align 2 - 8509 .L462: - 8510 00bc 00000000 .word hadc1 - 8511 00c0 00200140 .word 1073815552 - 8512 00c4 0100000F .word 251658241 - 8513 .cfi_endproc - 8514 .LFE1188: - 8516 .section .text.MX_ADC3_Init,"ax",%progbits - 8517 .align 1 - 8518 .syntax unified - 8519 .thumb - 8520 .thumb_func - 8522 MX_ADC3_Init: - 8523 .LFB1189: -1077:Src/main.c **** - 8524 .loc 1 1077 1 view -0 - 8525 .cfi_startproc - 8526 @ args = 0, pretend = 0, frame = 16 - 8527 @ frame_needed = 0, uses_anonymous_args = 0 - ARM GAS /tmp/ccwR4KB7.s page 540 + 9070 0092 0193 str r3, [sp, #4] +1157:Src/main.c **** { + 9071 .loc 1 1157 3 is_stmt 1 view .LVU2832 +1157:Src/main.c **** { + 9072 .loc 1 1157 7 is_stmt 0 view .LVU2833 + 9073 0094 6946 mov r1, sp + 9074 0096 0948 ldr r0, .L499 + 9075 0098 FFF7FEFF bl HAL_ADC_ConfigChannel + 9076 .LVL863: +1157:Src/main.c **** { + 9077 .loc 1 1157 6 discriminator 1 view .LVU2834 + 9078 009c 60B9 cbnz r0, .L498 +1165:Src/main.c **** + 9079 .loc 1 1165 1 view .LVU2835 + 9080 009e 05B0 add sp, sp, #20 + 9081 .LCFI78: + 9082 .cfi_remember_state + 9083 .cfi_def_cfa_offset 4 + 9084 @ sp needed + 9085 00a0 5DF804FB ldr pc, [sp], #4 + 9086 .L493: + 9087 .LCFI79: + 9088 .cfi_restore_state +1113:Src/main.c **** } + 9089 .loc 1 1113 5 is_stmt 1 view .LVU2836 + 9090 00a4 FFF7FEFF bl Error_Handler + 9091 .LVL864: + 9092 .L494: +1123:Src/main.c **** } + 9093 .loc 1 1123 5 view .LVU2837 + 9094 00a8 FFF7FEFF bl Error_Handler + 9095 .LVL865: + 9096 .L495: +1132:Src/main.c **** } + 9097 .loc 1 1132 5 view .LVU2838 + 9098 00ac FFF7FEFF bl Error_Handler + 9099 .LVL866: + 9100 .L496: +1141:Src/main.c **** } + 9101 .loc 1 1141 5 view .LVU2839 + 9102 00b0 FFF7FEFF bl Error_Handler + 9103 .LVL867: + 9104 .L497: +1150:Src/main.c **** } + 9105 .loc 1 1150 5 view .LVU2840 + 9106 00b4 FFF7FEFF bl Error_Handler + 9107 .LVL868: + 9108 .L498: +1159:Src/main.c **** } + 9109 .loc 1 1159 5 view .LVU2841 + 9110 00b8 FFF7FEFF bl Error_Handler + 9111 .LVL869: + 9112 .L500: + 9113 .align 2 + 9114 .L499: + 9115 00bc 00000000 .word hadc1 + 9116 00c0 00200140 .word 1073815552 + ARM GAS /tmp/ccEQxcUB.s page 558 - 8528 0000 00B5 push {lr} - 8529 .LCFI78: - 8530 .cfi_def_cfa_offset 4 - 8531 .cfi_offset 14, -4 - 8532 0002 85B0 sub sp, sp, #20 - 8533 .LCFI79: - 8534 .cfi_def_cfa_offset 24 -1083:Src/main.c **** - 8535 .loc 1 1083 3 view .LVU2682 -1083:Src/main.c **** - 8536 .loc 1 1083 26 is_stmt 0 view .LVU2683 - 8537 0004 0023 movs r3, #0 - 8538 0006 0093 str r3, [sp] - 8539 0008 0193 str r3, [sp, #4] - 8540 000a 0293 str r3, [sp, #8] - 8541 000c 0393 str r3, [sp, #12] -1091:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; - 8542 .loc 1 1091 3 is_stmt 1 view .LVU2684 -1091:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; - 8543 .loc 1 1091 18 is_stmt 0 view .LVU2685 - 8544 000e 1448 ldr r0, .L470 - 8545 0010 144A ldr r2, .L470+4 - 8546 0012 0260 str r2, [r0] -1092:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; - 8547 .loc 1 1092 3 is_stmt 1 view .LVU2686 -1092:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; - 8548 .loc 1 1092 29 is_stmt 0 view .LVU2687 - 8549 0014 4FF44032 mov r2, #196608 - 8550 0018 4260 str r2, [r0, #4] -1093:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; - 8551 .loc 1 1093 3 is_stmt 1 view .LVU2688 -1093:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; - 8552 .loc 1 1093 25 is_stmt 0 view .LVU2689 - 8553 001a 8360 str r3, [r0, #8] -1094:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; - 8554 .loc 1 1094 3 is_stmt 1 view .LVU2690 -1094:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; - 8555 .loc 1 1094 27 is_stmt 0 view .LVU2691 - 8556 001c 0361 str r3, [r0, #16] -1095:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; - 8557 .loc 1 1095 3 is_stmt 1 view .LVU2692 -1095:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; - 8558 .loc 1 1095 33 is_stmt 0 view .LVU2693 - 8559 001e 8361 str r3, [r0, #24] -1096:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; - 8560 .loc 1 1096 3 is_stmt 1 view .LVU2694 -1096:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; - 8561 .loc 1 1096 36 is_stmt 0 view .LVU2695 - 8562 0020 80F82030 strb r3, [r0, #32] -1097:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; - 8563 .loc 1 1097 3 is_stmt 1 view .LVU2696 -1097:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; - 8564 .loc 1 1097 35 is_stmt 0 view .LVU2697 - 8565 0024 C362 str r3, [r0, #44] -1098:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; - 8566 .loc 1 1098 3 is_stmt 1 view .LVU2698 -1098:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; - ARM GAS /tmp/ccwR4KB7.s page 541 + 9117 00c4 0100000F .word 251658241 + 9118 .cfi_endproc + 9119 .LFE1188: + 9121 .section .text.MX_ADC3_Init,"ax",%progbits + 9122 .align 1 + 9123 .syntax unified + 9124 .thumb + 9125 .thumb_func + 9127 MX_ADC3_Init: + 9128 .LFB1189: +1173:Src/main.c **** + 9129 .loc 1 1173 1 view -0 + 9130 .cfi_startproc + 9131 @ args = 0, pretend = 0, frame = 16 + 9132 @ frame_needed = 0, uses_anonymous_args = 0 + 9133 0000 00B5 push {lr} + 9134 .LCFI80: + 9135 .cfi_def_cfa_offset 4 + 9136 .cfi_offset 14, -4 + 9137 0002 85B0 sub sp, sp, #20 + 9138 .LCFI81: + 9139 .cfi_def_cfa_offset 24 +1179:Src/main.c **** + 9140 .loc 1 1179 3 view .LVU2843 +1179:Src/main.c **** + 9141 .loc 1 1179 26 is_stmt 0 view .LVU2844 + 9142 0004 0023 movs r3, #0 + 9143 0006 0093 str r3, [sp] + 9144 0008 0193 str r3, [sp, #4] + 9145 000a 0293 str r3, [sp, #8] + 9146 000c 0393 str r3, [sp, #12] +1187:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; + 9147 .loc 1 1187 3 is_stmt 1 view .LVU2845 +1187:Src/main.c **** hadc3.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV8; + 9148 .loc 1 1187 18 is_stmt 0 view .LVU2846 + 9149 000e 1448 ldr r0, .L507 + 9150 0010 144A ldr r2, .L507+4 + 9151 0012 0260 str r2, [r0] +1188:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; + 9152 .loc 1 1188 3 is_stmt 1 view .LVU2847 +1188:Src/main.c **** hadc3.Init.Resolution = ADC_RESOLUTION_12B; + 9153 .loc 1 1188 29 is_stmt 0 view .LVU2848 + 9154 0014 4FF44032 mov r2, #196608 + 9155 0018 4260 str r2, [r0, #4] +1189:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; + 9156 .loc 1 1189 3 is_stmt 1 view .LVU2849 +1189:Src/main.c **** hadc3.Init.ScanConvMode = ADC_SCAN_DISABLE; + 9157 .loc 1 1189 25 is_stmt 0 view .LVU2850 + 9158 001a 8360 str r3, [r0, #8] +1190:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; + 9159 .loc 1 1190 3 is_stmt 1 view .LVU2851 +1190:Src/main.c **** hadc3.Init.ContinuousConvMode = DISABLE; + 9160 .loc 1 1190 27 is_stmt 0 view .LVU2852 + 9161 001c 0361 str r3, [r0, #16] +1191:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; + 9162 .loc 1 1191 3 is_stmt 1 view .LVU2853 +1191:Src/main.c **** hadc3.Init.DiscontinuousConvMode = DISABLE; + ARM GAS /tmp/ccEQxcUB.s page 559 - 8567 .loc 1 1098 31 is_stmt 0 view .LVU2699 - 8568 0026 104A ldr r2, .L470+8 - 8569 0028 8262 str r2, [r0, #40] -1099:Src/main.c **** hadc3.Init.NbrOfConversion = 1; - 8570 .loc 1 1099 3 is_stmt 1 view .LVU2700 -1099:Src/main.c **** hadc3.Init.NbrOfConversion = 1; - 8571 .loc 1 1099 24 is_stmt 0 view .LVU2701 - 8572 002a C360 str r3, [r0, #12] -1100:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; - 8573 .loc 1 1100 3 is_stmt 1 view .LVU2702 -1100:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; - 8574 .loc 1 1100 30 is_stmt 0 view .LVU2703 - 8575 002c 0122 movs r2, #1 - 8576 002e C261 str r2, [r0, #28] -1101:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; - 8577 .loc 1 1101 3 is_stmt 1 view .LVU2704 -1101:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; - 8578 .loc 1 1101 36 is_stmt 0 view .LVU2705 - 8579 0030 80F83030 strb r3, [r0, #48] -1102:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) - 8580 .loc 1 1102 3 is_stmt 1 view .LVU2706 -1102:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) - 8581 .loc 1 1102 27 is_stmt 0 view .LVU2707 - 8582 0034 4261 str r2, [r0, #20] -1103:Src/main.c **** { - 8583 .loc 1 1103 3 is_stmt 1 view .LVU2708 -1103:Src/main.c **** { - 8584 .loc 1 1103 7 is_stmt 0 view .LVU2709 - 8585 0036 FFF7FEFF bl HAL_ADC_Init - 8586 .LVL795: -1103:Src/main.c **** { - 8587 .loc 1 1103 6 discriminator 1 view .LVU2710 - 8588 003a 68B9 cbnz r0, .L468 -1110:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; - 8589 .loc 1 1110 3 is_stmt 1 view .LVU2711 -1110:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; - 8590 .loc 1 1110 19 is_stmt 0 view .LVU2712 - 8591 003c 0F23 movs r3, #15 - 8592 003e 0093 str r3, [sp] -1111:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; - 8593 .loc 1 1111 3 is_stmt 1 view .LVU2713 -1111:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; - 8594 .loc 1 1111 16 is_stmt 0 view .LVU2714 - 8595 0040 0123 movs r3, #1 - 8596 0042 0193 str r3, [sp, #4] -1112:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) - 8597 .loc 1 1112 3 is_stmt 1 view .LVU2715 -1112:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) - 8598 .loc 1 1112 24 is_stmt 0 view .LVU2716 - 8599 0044 0723 movs r3, #7 - 8600 0046 0293 str r3, [sp, #8] -1113:Src/main.c **** { - 8601 .loc 1 1113 3 is_stmt 1 view .LVU2717 -1113:Src/main.c **** { - 8602 .loc 1 1113 7 is_stmt 0 view .LVU2718 - 8603 0048 6946 mov r1, sp - 8604 004a 0548 ldr r0, .L470 - ARM GAS /tmp/ccwR4KB7.s page 542 + 9163 .loc 1 1191 33 is_stmt 0 view .LVU2854 + 9164 001e 8361 str r3, [r0, #24] +1192:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; + 9165 .loc 1 1192 3 is_stmt 1 view .LVU2855 +1192:Src/main.c **** hadc3.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; + 9166 .loc 1 1192 36 is_stmt 0 view .LVU2856 + 9167 0020 80F82030 strb r3, [r0, #32] +1193:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; + 9168 .loc 1 1193 3 is_stmt 1 view .LVU2857 +1193:Src/main.c **** hadc3.Init.ExternalTrigConv = ADC_SOFTWARE_START; + 9169 .loc 1 1193 35 is_stmt 0 view .LVU2858 + 9170 0024 C362 str r3, [r0, #44] +1194:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; + 9171 .loc 1 1194 3 is_stmt 1 view .LVU2859 +1194:Src/main.c **** hadc3.Init.DataAlign = ADC_DATAALIGN_RIGHT; + 9172 .loc 1 1194 31 is_stmt 0 view .LVU2860 + 9173 0026 104A ldr r2, .L507+8 + 9174 0028 8262 str r2, [r0, #40] +1195:Src/main.c **** hadc3.Init.NbrOfConversion = 1; + 9175 .loc 1 1195 3 is_stmt 1 view .LVU2861 +1195:Src/main.c **** hadc3.Init.NbrOfConversion = 1; + 9176 .loc 1 1195 24 is_stmt 0 view .LVU2862 + 9177 002a C360 str r3, [r0, #12] +1196:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; + 9178 .loc 1 1196 3 is_stmt 1 view .LVU2863 +1196:Src/main.c **** hadc3.Init.DMAContinuousRequests = DISABLE; + 9179 .loc 1 1196 30 is_stmt 0 view .LVU2864 + 9180 002c 0122 movs r2, #1 + 9181 002e C261 str r2, [r0, #28] +1197:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; + 9182 .loc 1 1197 3 is_stmt 1 view .LVU2865 +1197:Src/main.c **** hadc3.Init.EOCSelection = ADC_EOC_SINGLE_CONV; + 9183 .loc 1 1197 36 is_stmt 0 view .LVU2866 + 9184 0030 80F83030 strb r3, [r0, #48] +1198:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) + 9185 .loc 1 1198 3 is_stmt 1 view .LVU2867 +1198:Src/main.c **** if (HAL_ADC_Init(&hadc3) != HAL_OK) + 9186 .loc 1 1198 27 is_stmt 0 view .LVU2868 + 9187 0034 4261 str r2, [r0, #20] +1199:Src/main.c **** { + 9188 .loc 1 1199 3 is_stmt 1 view .LVU2869 +1199:Src/main.c **** { + 9189 .loc 1 1199 7 is_stmt 0 view .LVU2870 + 9190 0036 FFF7FEFF bl HAL_ADC_Init + 9191 .LVL870: +1199:Src/main.c **** { + 9192 .loc 1 1199 6 discriminator 1 view .LVU2871 + 9193 003a 68B9 cbnz r0, .L505 +1206:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; + 9194 .loc 1 1206 3 is_stmt 1 view .LVU2872 +1206:Src/main.c **** sConfig.Rank = ADC_REGULAR_RANK_1; + 9195 .loc 1 1206 19 is_stmt 0 view .LVU2873 + 9196 003c 0F23 movs r3, #15 + 9197 003e 0093 str r3, [sp] +1207:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; + 9198 .loc 1 1207 3 is_stmt 1 view .LVU2874 +1207:Src/main.c **** sConfig.SamplingTime = ADC_SAMPLETIME_480CYCLES; + ARM GAS /tmp/ccEQxcUB.s page 560 - 8605 004c FFF7FEFF bl HAL_ADC_ConfigChannel - 8606 .LVL796: -1113:Src/main.c **** { - 8607 .loc 1 1113 6 discriminator 1 view .LVU2719 - 8608 0050 20B9 cbnz r0, .L469 -1121:Src/main.c **** - 8609 .loc 1 1121 1 view .LVU2720 - 8610 0052 05B0 add sp, sp, #20 - 8611 .LCFI80: - 8612 .cfi_remember_state - 8613 .cfi_def_cfa_offset 4 - 8614 @ sp needed - 8615 0054 5DF804FB ldr pc, [sp], #4 - 8616 .L468: - 8617 .LCFI81: - 8618 .cfi_restore_state -1105:Src/main.c **** } - 8619 .loc 1 1105 5 is_stmt 1 view .LVU2721 - 8620 0058 FFF7FEFF bl Error_Handler - 8621 .LVL797: - 8622 .L469: -1115:Src/main.c **** } - 8623 .loc 1 1115 5 view .LVU2722 - 8624 005c FFF7FEFF bl Error_Handler - 8625 .LVL798: - 8626 .L471: - 8627 .align 2 - 8628 .L470: - 8629 0060 00000000 .word hadc3 - 8630 0064 00220140 .word 1073816064 - 8631 0068 0100000F .word 251658241 - 8632 .cfi_endproc - 8633 .LFE1189: - 8635 .section .text.MX_USART1_UART_Init,"ax",%progbits - 8636 .align 1 - 8637 .syntax unified - 8638 .thumb - 8639 .thumb_func - 8641 MX_USART1_UART_Init: - 8642 .LFB1204: -1788:Src/main.c **** - 8643 .loc 1 1788 1 view -0 - 8644 .cfi_startproc - 8645 @ args = 0, pretend = 0, frame = 208 - 8646 @ frame_needed = 0, uses_anonymous_args = 0 - 8647 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} - 8648 .LCFI82: - 8649 .cfi_def_cfa_offset 24 - 8650 .cfi_offset 4, -24 - 8651 .cfi_offset 5, -20 - 8652 .cfi_offset 6, -16 - 8653 .cfi_offset 7, -12 - 8654 .cfi_offset 8, -8 - 8655 .cfi_offset 14, -4 - 8656 0004 B4B0 sub sp, sp, #208 - 8657 .LCFI83: - 8658 .cfi_def_cfa_offset 232 - ARM GAS /tmp/ccwR4KB7.s page 543 + 9199 .loc 1 1207 16 is_stmt 0 view .LVU2875 + 9200 0040 0123 movs r3, #1 + 9201 0042 0193 str r3, [sp, #4] +1208:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) + 9202 .loc 1 1208 3 is_stmt 1 view .LVU2876 +1208:Src/main.c **** if (HAL_ADC_ConfigChannel(&hadc3, &sConfig) != HAL_OK) + 9203 .loc 1 1208 24 is_stmt 0 view .LVU2877 + 9204 0044 0723 movs r3, #7 + 9205 0046 0293 str r3, [sp, #8] +1209:Src/main.c **** { + 9206 .loc 1 1209 3 is_stmt 1 view .LVU2878 +1209:Src/main.c **** { + 9207 .loc 1 1209 7 is_stmt 0 view .LVU2879 + 9208 0048 6946 mov r1, sp + 9209 004a 0548 ldr r0, .L507 + 9210 004c FFF7FEFF bl HAL_ADC_ConfigChannel + 9211 .LVL871: +1209:Src/main.c **** { + 9212 .loc 1 1209 6 discriminator 1 view .LVU2880 + 9213 0050 20B9 cbnz r0, .L506 +1217:Src/main.c **** + 9214 .loc 1 1217 1 view .LVU2881 + 9215 0052 05B0 add sp, sp, #20 + 9216 .LCFI82: + 9217 .cfi_remember_state + 9218 .cfi_def_cfa_offset 4 + 9219 @ sp needed + 9220 0054 5DF804FB ldr pc, [sp], #4 + 9221 .L505: + 9222 .LCFI83: + 9223 .cfi_restore_state +1201:Src/main.c **** } + 9224 .loc 1 1201 5 is_stmt 1 view .LVU2882 + 9225 0058 FFF7FEFF bl Error_Handler + 9226 .LVL872: + 9227 .L506: +1211:Src/main.c **** } + 9228 .loc 1 1211 5 view .LVU2883 + 9229 005c FFF7FEFF bl Error_Handler + 9230 .LVL873: + 9231 .L508: + 9232 .align 2 + 9233 .L507: + 9234 0060 00000000 .word hadc3 + 9235 0064 00220140 .word 1073816064 + 9236 0068 0100000F .word 251658241 + 9237 .cfi_endproc + 9238 .LFE1189: + 9240 .section .text.MX_USART1_UART_Init,"ax",%progbits + 9241 .align 1 + 9242 .syntax unified + 9243 .thumb + 9244 .thumb_func + 9246 MX_USART1_UART_Init: + 9247 .LFB1205: +1953:Src/main.c **** + 9248 .loc 1 1953 1 view -0 + ARM GAS /tmp/ccEQxcUB.s page 561 -1794:Src/main.c **** - 8659 .loc 1 1794 3 view .LVU2724 -1794:Src/main.c **** - 8660 .loc 1 1794 24 is_stmt 0 view .LVU2725 - 8661 0006 0021 movs r1, #0 - 8662 0008 2D91 str r1, [sp, #180] - 8663 000a 2E91 str r1, [sp, #184] - 8664 000c 2F91 str r1, [sp, #188] - 8665 000e 3091 str r1, [sp, #192] - 8666 0010 3191 str r1, [sp, #196] - 8667 0012 3291 str r1, [sp, #200] - 8668 0014 3391 str r1, [sp, #204] -1796:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; - 8669 .loc 1 1796 3 is_stmt 1 view .LVU2726 -1796:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; - 8670 .loc 1 1796 23 is_stmt 0 view .LVU2727 - 8671 0016 2791 str r1, [sp, #156] - 8672 0018 2891 str r1, [sp, #160] - 8673 001a 2991 str r1, [sp, #164] - 8674 001c 2A91 str r1, [sp, #168] - 8675 001e 2B91 str r1, [sp, #172] - 8676 0020 2C91 str r1, [sp, #176] -1797:Src/main.c **** - 8677 .loc 1 1797 3 is_stmt 1 view .LVU2728 -1797:Src/main.c **** - 8678 .loc 1 1797 28 is_stmt 0 view .LVU2729 - 8679 0022 9022 movs r2, #144 - 8680 0024 03A8 add r0, sp, #12 - 8681 0026 FFF7FEFF bl memset - 8682 .LVL799: -1801:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; - 8683 .loc 1 1801 3 is_stmt 1 view .LVU2730 -1801:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; - 8684 .loc 1 1801 44 is_stmt 0 view .LVU2731 - 8685 002a 4023 movs r3, #64 - 8686 002c 0393 str r3, [sp, #12] -1802:Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) - 8687 .loc 1 1802 3 is_stmt 1 view .LVU2732 -1803:Src/main.c **** { - 8688 .loc 1 1803 3 view .LVU2733 -1803:Src/main.c **** { - 8689 .loc 1 1803 7 is_stmt 0 view .LVU2734 - 8690 002e 03A8 add r0, sp, #12 - 8691 0030 FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig - 8692 .LVL800: -1803:Src/main.c **** { - 8693 .loc 1 1803 6 discriminator 1 view .LVU2735 - 8694 0034 0028 cmp r0, #0 - 8695 0036 40F09E80 bne .L475 -1809:Src/main.c **** - 8696 .loc 1 1809 3 is_stmt 1 view .LVU2736 - 8697 .LVL801: - 8698 .LBB602: - 8699 .LBI602: + 9249 .cfi_startproc + 9250 @ args = 0, pretend = 0, frame = 208 + 9251 @ frame_needed = 0, uses_anonymous_args = 0 + 9252 0000 2DE9F041 push {r4, r5, r6, r7, r8, lr} + 9253 .LCFI84: + 9254 .cfi_def_cfa_offset 24 + 9255 .cfi_offset 4, -24 + 9256 .cfi_offset 5, -20 + 9257 .cfi_offset 6, -16 + 9258 .cfi_offset 7, -12 + 9259 .cfi_offset 8, -8 + 9260 .cfi_offset 14, -4 + 9261 0004 B4B0 sub sp, sp, #208 + 9262 .LCFI85: + 9263 .cfi_def_cfa_offset 232 +1959:Src/main.c **** + 9264 .loc 1 1959 3 view .LVU2885 +1959:Src/main.c **** + 9265 .loc 1 1959 24 is_stmt 0 view .LVU2886 + 9266 0006 0021 movs r1, #0 + 9267 0008 2D91 str r1, [sp, #180] + 9268 000a 2E91 str r1, [sp, #184] + 9269 000c 2F91 str r1, [sp, #188] + 9270 000e 3091 str r1, [sp, #192] + 9271 0010 3191 str r1, [sp, #196] + 9272 0012 3291 str r1, [sp, #200] + 9273 0014 3391 str r1, [sp, #204] +1961:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; + 9274 .loc 1 1961 3 is_stmt 1 view .LVU2887 +1961:Src/main.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; + 9275 .loc 1 1961 23 is_stmt 0 view .LVU2888 + 9276 0016 2791 str r1, [sp, #156] + 9277 0018 2891 str r1, [sp, #160] + 9278 001a 2991 str r1, [sp, #164] + 9279 001c 2A91 str r1, [sp, #168] + 9280 001e 2B91 str r1, [sp, #172] + 9281 0020 2C91 str r1, [sp, #176] +1962:Src/main.c **** + 9282 .loc 1 1962 3 is_stmt 1 view .LVU2889 +1962:Src/main.c **** + 9283 .loc 1 1962 28 is_stmt 0 view .LVU2890 + 9284 0022 9022 movs r2, #144 + 9285 0024 03A8 add r0, sp, #12 + 9286 0026 FFF7FEFF bl memset + 9287 .LVL874: +1966:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; + 9288 .loc 1 1966 3 is_stmt 1 view .LVU2891 +1966:Src/main.c **** PeriphClkInitStruct.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; + 9289 .loc 1 1966 44 is_stmt 0 view .LVU2892 + 9290 002a 4023 movs r3, #64 + 9291 002c 0393 str r3, [sp, #12] +1967:Src/main.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) + 9292 .loc 1 1967 3 is_stmt 1 view .LVU2893 +1968:Src/main.c **** { + 9293 .loc 1 1968 3 view .LVU2894 +1968:Src/main.c **** { + 9294 .loc 1 1968 7 is_stmt 0 view .LVU2895 + ARM GAS /tmp/ccEQxcUB.s page 562 + + + 9295 002e 03A8 add r0, sp, #12 + 9296 0030 FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig + 9297 .LVL875: +1968:Src/main.c **** { + 9298 .loc 1 1968 6 discriminator 1 view .LVU2896 + 9299 0034 0028 cmp r0, #0 + 9300 0036 40F09E80 bne .L512 +1974:Src/main.c **** + 9301 .loc 1 1974 3 is_stmt 1 view .LVU2897 + 9302 .LVL876: + 9303 .LBB639: + 9304 .LBI639: 1587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 8700 .loc 3 1587 22 view .LVU2737 - 8701 .LBB603: - ARM GAS /tmp/ccwR4KB7.s page 544 - - + 9305 .loc 3 1587 22 view .LVU2898 + 9306 .LBB640: 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->APB2ENR, Periphs); - 8702 .loc 3 1589 3 view .LVU2738 + 9307 .loc 3 1589 3 view .LVU2899 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 8703 .loc 3 1590 3 view .LVU2739 - 8704 003a 504B ldr r3, .L476 - 8705 003c 5A6C ldr r2, [r3, #68] - 8706 003e 42F01002 orr r2, r2, #16 - 8707 0042 5A64 str r2, [r3, #68] + 9308 .loc 3 1590 3 view .LVU2900 + 9309 003a 504B ldr r3, .L513 + 9310 003c 5A6C ldr r2, [r3, #68] + 9311 003e 42F01002 orr r2, r2, #16 + 9312 0042 5A64 str r2, [r3, #68] 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8708 .loc 3 1592 3 view .LVU2740 + 9313 .loc 3 1592 3 view .LVU2901 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8709 .loc 3 1592 12 is_stmt 0 view .LVU2741 - 8710 0044 5A6C ldr r2, [r3, #68] - 8711 0046 02F01002 and r2, r2, #16 + 9314 .loc 3 1592 12 is_stmt 0 view .LVU2902 + 9315 0044 5A6C ldr r2, [r3, #68] + 9316 0046 02F01002 and r2, r2, #16 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8712 .loc 3 1592 10 view .LVU2742 - 8713 004a 0292 str r2, [sp, #8] - 8714 .loc 3 1593 3 is_stmt 1 view .LVU2743 - 8715 004c 029A ldr r2, [sp, #8] - 8716 .LVL802: - 8717 .loc 3 1593 3 is_stmt 0 view .LVU2744 - 8718 .LBE603: - 8719 .LBE602: -1811:Src/main.c **** /**USART1 GPIO Configuration - 8720 .loc 1 1811 3 is_stmt 1 view .LVU2745 - 8721 .LBB604: - 8722 .LBI604: + 9317 .loc 3 1592 10 view .LVU2903 + 9318 004a 0292 str r2, [sp, #8] + 9319 .loc 3 1593 3 is_stmt 1 view .LVU2904 + 9320 004c 029A ldr r2, [sp, #8] + 9321 .LVL877: + 9322 .loc 3 1593 3 is_stmt 0 view .LVU2905 + 9323 .LBE640: + 9324 .LBE639: +1976:Src/main.c **** /**USART1 GPIO Configuration + 9325 .loc 1 1976 3 is_stmt 1 view .LVU2906 + 9326 .LBB641: + 9327 .LBI641: 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** { - 8723 .loc 3 309 22 view .LVU2746 - 8724 .LBB605: + 9328 .loc 3 309 22 view .LVU2907 + 9329 .LBB642: 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** SET_BIT(RCC->AHB1ENR, Periphs); - 8725 .loc 3 311 3 view .LVU2747 + 9330 .loc 3 311 3 view .LVU2908 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** /* Delay after an RCC peripheral clock enabling */ - 8726 .loc 3 312 3 view .LVU2748 - 8727 004e 1A6B ldr r2, [r3, #48] - 8728 0050 42F00102 orr r2, r2, #1 - 8729 0054 1A63 str r2, [r3, #48] + 9331 .loc 3 312 3 view .LVU2909 + 9332 004e 1A6B ldr r2, [r3, #48] + 9333 0050 42F00102 orr r2, r2, #1 + 9334 0054 1A63 str r2, [r3, #48] 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8730 .loc 3 314 3 view .LVU2749 + 9335 .loc 3 314 3 view .LVU2910 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8731 .loc 3 314 12 is_stmt 0 view .LVU2750 - 8732 0056 1B6B ldr r3, [r3, #48] - 8733 0058 03F00103 and r3, r3, #1 + 9336 .loc 3 314 12 is_stmt 0 view .LVU2911 + 9337 0056 1B6B ldr r3, [r3, #48] + ARM GAS /tmp/ccEQxcUB.s page 563 + + + 9338 0058 03F00103 and r3, r3, #1 314:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** (void)tmpreg; - 8734 .loc 3 314 10 view .LVU2751 - 8735 005c 0193 str r3, [sp, #4] + 9339 .loc 3 314 10 view .LVU2912 + 9340 005c 0193 str r3, [sp, #4] 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 8736 .loc 3 315 3 is_stmt 1 view .LVU2752 - 8737 005e 019B ldr r3, [sp, #4] - 8738 .LVL803: + 9341 .loc 3 315 3 is_stmt 1 view .LVU2913 + 9342 005e 019B ldr r3, [sp, #4] + 9343 .LVL878: 315:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_bus.h **** } - 8739 .loc 3 315 3 is_stmt 0 view .LVU2753 - 8740 .LBE605: - 8741 .LBE604: -1816:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 8742 .loc 1 1816 3 is_stmt 1 view .LVU2754 -1816:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - ARM GAS /tmp/ccwR4KB7.s page 545 + 9344 .loc 3 315 3 is_stmt 0 view .LVU2914 + 9345 .LBE642: + 9346 .LBE641: +1981:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 9347 .loc 1 1981 3 is_stmt 1 view .LVU2915 +1981:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 9348 .loc 1 1981 23 is_stmt 0 view .LVU2916 + 9349 0060 4FF40073 mov r3, #512 + 9350 0064 2793 str r3, [sp, #156] +1982:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 9351 .loc 1 1982 3 is_stmt 1 view .LVU2917 +1982:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 9352 .loc 1 1982 24 is_stmt 0 view .LVU2918 + 9353 0066 4FF00208 mov r8, #2 + 9354 006a CDF8A080 str r8, [sp, #160] +1983:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 9355 .loc 1 1983 3 is_stmt 1 view .LVU2919 +1983:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 9356 .loc 1 1983 25 is_stmt 0 view .LVU2920 + 9357 006e 0327 movs r7, #3 + 9358 0070 2997 str r7, [sp, #164] +1984:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 9359 .loc 1 1984 3 is_stmt 1 view .LVU2921 +1984:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 9360 .loc 1 1984 30 is_stmt 0 view .LVU2922 + 9361 0072 0024 movs r4, #0 + 9362 0074 2A94 str r4, [sp, #168] +1985:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; + 9363 .loc 1 1985 3 is_stmt 1 view .LVU2923 +1985:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; + 9364 .loc 1 1985 24 is_stmt 0 view .LVU2924 + 9365 0076 2B94 str r4, [sp, #172] +1986:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 9366 .loc 1 1986 3 is_stmt 1 view .LVU2925 +1986:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 9367 .loc 1 1986 29 is_stmt 0 view .LVU2926 + 9368 0078 0726 movs r6, #7 + 9369 007a 2C96 str r6, [sp, #176] +1987:Src/main.c **** + 9370 .loc 1 1987 3 is_stmt 1 view .LVU2927 + 9371 007c 404D ldr r5, .L513+4 + 9372 007e 27A9 add r1, sp, #156 + 9373 0080 2846 mov r0, r5 + 9374 0082 FFF7FEFF bl LL_GPIO_Init + 9375 .LVL879: +1989:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + 9376 .loc 1 1989 3 view .LVU2928 +1989:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; + ARM GAS /tmp/ccEQxcUB.s page 564 - 8743 .loc 1 1816 23 is_stmt 0 view .LVU2755 - 8744 0060 4FF40073 mov r3, #512 - 8745 0064 2793 str r3, [sp, #156] -1817:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 8746 .loc 1 1817 3 is_stmt 1 view .LVU2756 -1817:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 8747 .loc 1 1817 24 is_stmt 0 view .LVU2757 - 8748 0066 4FF00208 mov r8, #2 - 8749 006a CDF8A080 str r8, [sp, #160] -1818:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 8750 .loc 1 1818 3 is_stmt 1 view .LVU2758 -1818:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 8751 .loc 1 1818 25 is_stmt 0 view .LVU2759 - 8752 006e 0327 movs r7, #3 - 8753 0070 2997 str r7, [sp, #164] -1819:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 8754 .loc 1 1819 3 is_stmt 1 view .LVU2760 -1819:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 8755 .loc 1 1819 30 is_stmt 0 view .LVU2761 - 8756 0072 0024 movs r4, #0 - 8757 0074 2A94 str r4, [sp, #168] -1820:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; - 8758 .loc 1 1820 3 is_stmt 1 view .LVU2762 -1820:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; - 8759 .loc 1 1820 24 is_stmt 0 view .LVU2763 - 8760 0076 2B94 str r4, [sp, #172] -1821:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 8761 .loc 1 1821 3 is_stmt 1 view .LVU2764 -1821:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 8762 .loc 1 1821 29 is_stmt 0 view .LVU2765 - 8763 0078 0726 movs r6, #7 - 8764 007a 2C96 str r6, [sp, #176] -1822:Src/main.c **** - 8765 .loc 1 1822 3 is_stmt 1 view .LVU2766 - 8766 007c 404D ldr r5, .L476+4 - 8767 007e 27A9 add r1, sp, #156 - 8768 0080 2846 mov r0, r5 - 8769 0082 FFF7FEFF bl LL_GPIO_Init - 8770 .LVL804: -1824:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 8771 .loc 1 1824 3 view .LVU2767 -1824:Src/main.c **** GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE; - 8772 .loc 1 1824 23 is_stmt 0 view .LVU2768 - 8773 0086 4FF48063 mov r3, #1024 - 8774 008a 2793 str r3, [sp, #156] -1825:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 8775 .loc 1 1825 3 is_stmt 1 view .LVU2769 -1825:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; - 8776 .loc 1 1825 24 is_stmt 0 view .LVU2770 - 8777 008c CDF8A080 str r8, [sp, #160] -1826:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 8778 .loc 1 1826 3 is_stmt 1 view .LVU2771 -1826:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; - 8779 .loc 1 1826 25 is_stmt 0 view .LVU2772 - 8780 0090 2997 str r7, [sp, #164] -1827:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 8781 .loc 1 1827 3 is_stmt 1 view .LVU2773 - ARM GAS /tmp/ccwR4KB7.s page 546 - - -1827:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; - 8782 .loc 1 1827 30 is_stmt 0 view .LVU2774 - 8783 0092 2A94 str r4, [sp, #168] -1828:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; - 8784 .loc 1 1828 3 is_stmt 1 view .LVU2775 -1828:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; - 8785 .loc 1 1828 24 is_stmt 0 view .LVU2776 - 8786 0094 2B94 str r4, [sp, #172] -1829:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 8787 .loc 1 1829 3 is_stmt 1 view .LVU2777 -1829:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); - 8788 .loc 1 1829 29 is_stmt 0 view .LVU2778 - 8789 0096 2C96 str r6, [sp, #176] -1830:Src/main.c **** - 8790 .loc 1 1830 3 is_stmt 1 view .LVU2779 - 8791 0098 27A9 add r1, sp, #156 - 8792 009a 2846 mov r0, r5 - 8793 009c FFF7FEFF bl LL_GPIO_Init - 8794 .LVL805: -1835:Src/main.c **** - 8795 .loc 1 1835 3 view .LVU2780 - 8796 .LBB606: - 8797 .LBI606: + 9377 .loc 1 1989 23 is_stmt 0 view .LVU2929 + 9378 0086 4FF48063 mov r3, #1024 + 9379 008a 2793 str r3, [sp, #156] +1990:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 9380 .loc 1 1990 3 is_stmt 1 view .LVU2930 +1990:Src/main.c **** GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_VERY_HIGH; + 9381 .loc 1 1990 24 is_stmt 0 view .LVU2931 + 9382 008c CDF8A080 str r8, [sp, #160] +1991:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 9383 .loc 1 1991 3 is_stmt 1 view .LVU2932 +1991:Src/main.c **** GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_PUSHPULL; + 9384 .loc 1 1991 25 is_stmt 0 view .LVU2933 + 9385 0090 2997 str r7, [sp, #164] +1992:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 9386 .loc 1 1992 3 is_stmt 1 view .LVU2934 +1992:Src/main.c **** GPIO_InitStruct.Pull = LL_GPIO_PULL_NO; + 9387 .loc 1 1992 30 is_stmt 0 view .LVU2935 + 9388 0092 2A94 str r4, [sp, #168] +1993:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; + 9389 .loc 1 1993 3 is_stmt 1 view .LVU2936 +1993:Src/main.c **** GPIO_InitStruct.Alternate = LL_GPIO_AF_7; + 9390 .loc 1 1993 24 is_stmt 0 view .LVU2937 + 9391 0094 2B94 str r4, [sp, #172] +1994:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 9392 .loc 1 1994 3 is_stmt 1 view .LVU2938 +1994:Src/main.c **** LL_GPIO_Init(GPIOA, &GPIO_InitStruct); + 9393 .loc 1 1994 29 is_stmt 0 view .LVU2939 + 9394 0096 2C96 str r6, [sp, #176] +1995:Src/main.c **** + 9395 .loc 1 1995 3 is_stmt 1 view .LVU2940 + 9396 0098 27A9 add r1, sp, #156 + 9397 009a 2846 mov r0, r5 + 9398 009c FFF7FEFF bl LL_GPIO_Init + 9399 .LVL880: +2000:Src/main.c **** + 9400 .loc 1 2000 3 view .LVU2941 + 9401 .LBB643: + 9402 .LBI643: 1032:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8798 .loc 6 1032 22 view .LVU2781 - 8799 .LBB607: + 9403 .loc 6 1032 22 view .LVU2942 + 9404 .LBB644: 1034:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8800 .loc 6 1034 3 view .LVU2782 - 8801 00a0 384B ldr r3, .L476+8 - 8802 00a2 D3F8B820 ldr r2, [r3, #184] - 8803 00a6 22F0F052 bic r2, r2, #503316480 - 8804 00aa 42F00062 orr r2, r2, #134217728 - 8805 00ae C3F8B820 str r2, [r3, #184] - 8806 .LVL806: + 9405 .loc 6 1034 3 view .LVU2943 + 9406 00a0 384B ldr r3, .L513+8 + 9407 00a2 D3F8B820 ldr r2, [r3, #184] + 9408 00a6 22F0F052 bic r2, r2, #503316480 + 9409 00aa 42F00062 orr r2, r2, #134217728 + 9410 00ae C3F8B820 str r2, [r3, #184] + 9411 .LVL881: 1034:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8807 .loc 6 1034 3 is_stmt 0 view .LVU2783 - 8808 .LBE607: - 8809 .LBE606: -1837:Src/main.c **** - 8810 .loc 1 1837 3 is_stmt 1 view .LVU2784 - 8811 .LBB608: - 8812 .LBI608: + 9412 .loc 6 1034 3 is_stmt 0 view .LVU2944 + 9413 .LBE644: + 9414 .LBE643: +2002:Src/main.c **** + 9415 .loc 1 2002 3 is_stmt 1 view .LVU2945 + 9416 .LBB645: + 9417 .LBI645: + ARM GAS /tmp/ccEQxcUB.s page 565 + + 598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8813 .loc 6 598 22 view .LVU2785 - 8814 .LBB609: + 9418 .loc 6 598 22 view .LVU2946 + 9419 .LBB646: 600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8815 .loc 6 600 3 view .LVU2786 - 8816 00b2 D3F8B820 ldr r2, [r3, #184] - 8817 00b6 22F0C002 bic r2, r2, #192 - 8818 00ba 42F04002 orr r2, r2, #64 - 8819 00be C3F8B820 str r2, [r3, #184] - 8820 .LVL807: + 9420 .loc 6 600 3 view .LVU2947 + 9421 00b2 D3F8B820 ldr r2, [r3, #184] + 9422 00b6 22F0C002 bic r2, r2, #192 + 9423 00ba 42F04002 orr r2, r2, #64 + 9424 00be C3F8B820 str r2, [r3, #184] + 9425 .LVL882: 600:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8821 .loc 6 600 3 is_stmt 0 view .LVU2787 - 8822 .LBE609: - 8823 .LBE608: -1839:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 547 - - - 8824 .loc 1 1839 3 is_stmt 1 view .LVU2788 - 8825 .LBB610: - 8826 .LBI610: + 9426 .loc 6 600 3 is_stmt 0 view .LVU2948 + 9427 .LBE646: + 9428 .LBE645: +2004:Src/main.c **** + 9429 .loc 1 2004 3 is_stmt 1 view .LVU2949 + 9430 .LBB647: + 9431 .LBI647: 924:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8827 .loc 6 924 22 view .LVU2789 - 8828 .LBB611: + 9432 .loc 6 924 22 view .LVU2950 + 9433 .LBB648: 926:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8829 .loc 6 926 3 view .LVU2790 - 8830 00c2 D3F8B820 ldr r2, [r3, #184] - 8831 00c6 42F44032 orr r2, r2, #196608 - 8832 00ca C3F8B820 str r2, [r3, #184] - 8833 .LVL808: + 9434 .loc 6 926 3 view .LVU2951 + 9435 00c2 D3F8B820 ldr r2, [r3, #184] + 9436 00c6 42F44032 orr r2, r2, #196608 + 9437 00ca C3F8B820 str r2, [r3, #184] + 9438 .LVL883: 926:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8834 .loc 6 926 3 is_stmt 0 view .LVU2791 - 8835 .LBE611: - 8836 .LBE610: -1841:Src/main.c **** - 8837 .loc 1 1841 3 is_stmt 1 view .LVU2792 - 8838 .LBB612: - 8839 .LBI612: + 9439 .loc 6 926 3 is_stmt 0 view .LVU2952 + 9440 .LBE648: + 9441 .LBE647: +2006:Src/main.c **** + 9442 .loc 1 2006 3 is_stmt 1 view .LVU2953 + 9443 .LBB649: + 9444 .LBI649: 646:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8840 .loc 6 646 22 view .LVU2793 - 8841 .LBB613: + 9445 .loc 6 646 22 view .LVU2954 + 9446 .LBB650: 648:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8842 .loc 6 648 3 view .LVU2794 - 8843 00ce D3F8B820 ldr r2, [r3, #184] - 8844 00d2 22F49072 bic r2, r2, #288 - 8845 00d6 C3F8B820 str r2, [r3, #184] - 8846 .LVL809: + 9447 .loc 6 648 3 view .LVU2955 + 9448 00ce D3F8B820 ldr r2, [r3, #184] + 9449 00d2 22F49072 bic r2, r2, #288 + 9450 00d6 C3F8B820 str r2, [r3, #184] + 9451 .LVL884: 648:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8847 .loc 6 648 3 is_stmt 0 view .LVU2795 - 8848 .LBE613: - 8849 .LBE612: -1843:Src/main.c **** - 8850 .loc 1 1843 3 is_stmt 1 view .LVU2796 - 8851 .LBB614: - 8852 .LBI614: + 9452 .loc 6 648 3 is_stmt 0 view .LVU2956 + 9453 .LBE650: + 9454 .LBE649: +2008:Src/main.c **** + 9455 .loc 1 2008 3 is_stmt 1 view .LVU2957 + 9456 .LBB651: + 9457 .LBI651: 693:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8853 .loc 6 693 22 view .LVU2797 - 8854 .LBB615: + 9458 .loc 6 693 22 view .LVU2958 + 9459 .LBB652: 695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8855 .loc 6 695 3 view .LVU2798 - 8856 00da D3F8B820 ldr r2, [r3, #184] - 8857 00de 22F40072 bic r2, r2, #512 - 8858 00e2 C3F8B820 str r2, [r3, #184] - 8859 .LVL810: + 9460 .loc 6 695 3 view .LVU2959 + ARM GAS /tmp/ccEQxcUB.s page 566 + + + 9461 00da D3F8B820 ldr r2, [r3, #184] + 9462 00de 22F40072 bic r2, r2, #512 + 9463 00e2 C3F8B820 str r2, [r3, #184] + 9464 .LVL885: 695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8860 .loc 6 695 3 is_stmt 0 view .LVU2799 - 8861 .LBE615: - 8862 .LBE614: -1845:Src/main.c **** - 8863 .loc 1 1845 3 is_stmt 1 view .LVU2800 - 8864 .LBB616: - 8865 .LBI616: + 9465 .loc 6 695 3 is_stmt 0 view .LVU2960 + 9466 .LBE652: + 9467 .LBE651: +2010:Src/main.c **** + 9468 .loc 1 2010 3 is_stmt 1 view .LVU2961 + 9469 .LBB653: + 9470 .LBI653: 738:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8866 .loc 6 738 22 view .LVU2801 - 8867 .LBB617: - ARM GAS /tmp/ccwR4KB7.s page 548 - - + 9471 .loc 6 738 22 view .LVU2962 + 9472 .LBB654: 740:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8868 .loc 6 740 3 view .LVU2802 - 8869 00e6 D3F8B820 ldr r2, [r3, #184] - 8870 00ea 42F48062 orr r2, r2, #1024 - 8871 00ee C3F8B820 str r2, [r3, #184] - 8872 .LVL811: + 9473 .loc 6 740 3 view .LVU2963 + 9474 00e6 D3F8B820 ldr r2, [r3, #184] + 9475 00ea 42F48062 orr r2, r2, #1024 + 9476 00ee C3F8B820 str r2, [r3, #184] + 9477 .LVL886: 740:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8873 .loc 6 740 3 is_stmt 0 view .LVU2803 - 8874 .LBE617: - 8875 .LBE616: -1847:Src/main.c **** - 8876 .loc 1 1847 3 is_stmt 1 view .LVU2804 - 8877 .LBB618: - 8878 .LBI618: + 9478 .loc 6 740 3 is_stmt 0 view .LVU2964 + 9479 .LBE654: + 9480 .LBE653: +2012:Src/main.c **** + 9481 .loc 1 2012 3 is_stmt 1 view .LVU2965 + 9482 .LBB655: + 9483 .LBI655: 784:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8879 .loc 6 784 22 view .LVU2805 - 8880 .LBB619: + 9484 .loc 6 784 22 view .LVU2966 + 9485 .LBB656: 786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8881 .loc 6 786 3 view .LVU2806 - 8882 00f2 D3F8B820 ldr r2, [r3, #184] - 8883 00f6 22F4C052 bic r2, r2, #6144 - 8884 00fa C3F8B820 str r2, [r3, #184] - 8885 .LVL812: + 9486 .loc 6 786 3 view .LVU2967 + 9487 00f2 D3F8B820 ldr r2, [r3, #184] + 9488 00f6 22F4C052 bic r2, r2, #6144 + 9489 00fa C3F8B820 str r2, [r3, #184] + 9490 .LVL887: 786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8886 .loc 6 786 3 is_stmt 0 view .LVU2807 - 8887 .LBE619: - 8888 .LBE618: -1849:Src/main.c **** - 8889 .loc 1 1849 3 is_stmt 1 view .LVU2808 - 8890 .LBB620: - 8891 .LBI620: + 9491 .loc 6 786 3 is_stmt 0 view .LVU2968 + 9492 .LBE656: + 9493 .LBE655: +2014:Src/main.c **** + 9494 .loc 1 2014 3 is_stmt 1 view .LVU2969 + 9495 .LBB657: + 9496 .LBI657: 831:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8892 .loc 6 831 22 view .LVU2809 - 8893 .LBB621: + 9497 .loc 6 831 22 view .LVU2970 + 9498 .LBB658: 833:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8894 .loc 6 833 3 view .LVU2810 - 8895 00fe D3F8B820 ldr r2, [r3, #184] - 8896 0102 22F4C042 bic r2, r2, #24576 - 8897 0106 C3F8B820 str r2, [r3, #184] - 8898 .LVL813: + 9499 .loc 6 833 3 view .LVU2971 + 9500 00fe D3F8B820 ldr r2, [r3, #184] + 9501 0102 22F4C042 bic r2, r2, #24576 + 9502 0106 C3F8B820 str r2, [r3, #184] + 9503 .LVL888: 833:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8899 .loc 6 833 3 is_stmt 0 view .LVU2811 - 8900 .LBE621: - 8901 .LBE620: -1851:Src/main.c **** - 8902 .loc 1 1851 3 is_stmt 1 view .LVU2812 - 8903 .LBB622: - 8904 .LBI622: + 9504 .loc 6 833 3 is_stmt 0 view .LVU2972 + ARM GAS /tmp/ccEQxcUB.s page 567 + + + 9505 .LBE658: + 9506 .LBE657: +2016:Src/main.c **** + 9507 .loc 1 2016 3 is_stmt 1 view .LVU2973 + 9508 .LBB659: + 9509 .LBI659: 1299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 8905 .loc 6 1299 22 view .LVU2813 - 8906 .LBB623: + 9510 .loc 6 1299 22 view .LVU2974 + 9511 .LBB660: 1301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8907 .loc 6 1301 3 view .LVU2814 - 8908 010a D3F8CC20 ldr r2, [r3, #204] - 8909 010e 22F00402 bic r2, r2, #4 - 8910 0112 C3F8CC20 str r2, [r3, #204] - 8911 .LVL814: - ARM GAS /tmp/ccwR4KB7.s page 549 - - + 9512 .loc 6 1301 3 view .LVU2975 + 9513 010a D3F8CC20 ldr r2, [r3, #204] + 9514 010e 22F00402 bic r2, r2, #4 + 9515 0112 C3F8CC20 str r2, [r3, #204] + 9516 .LVL889: 1301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 8912 .loc 6 1301 3 is_stmt 0 view .LVU2815 - 8913 .LBE623: - 8914 .LBE622: -1854:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); - 8915 .loc 1 1854 3 is_stmt 1 view .LVU2816 - 8916 .LBB624: - 8917 .LBI624: + 9517 .loc 6 1301 3 is_stmt 0 view .LVU2976 + 9518 .LBE660: + 9519 .LBE659: +2019:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); + 9520 .loc 1 2019 3 is_stmt 1 view .LVU2977 + 9521 .LBB661: + 9522 .LBI661: 1884:Drivers/CMSIS/Include/core_cm7.h **** { - 8918 .loc 2 1884 26 view .LVU2817 - 8919 .LBB625: + 9523 .loc 2 1884 26 view .LVU2978 + 9524 .LBB662: 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 8920 .loc 2 1886 3 view .LVU2818 + 9525 .loc 2 1886 3 view .LVU2979 1886:Drivers/CMSIS/Include/core_cm7.h **** } - 8921 .loc 2 1886 26 is_stmt 0 view .LVU2819 - 8922 0116 1C4B ldr r3, .L476+12 - 8923 0118 D868 ldr r0, [r3, #12] - 8924 .LBE625: - 8925 .LBE624: -1854:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); - 8926 .loc 1 1854 3 discriminator 1 view .LVU2820 - 8927 011a 2246 mov r2, r4 - 8928 011c 2146 mov r1, r4 - 8929 011e C0F30220 ubfx r0, r0, #8, #3 - 8930 0122 FFF7FEFF bl NVIC_EncodePriority - 8931 .LVL815: - 8932 .LBB626: - 8933 .LBI626: + 9526 .loc 2 1886 26 is_stmt 0 view .LVU2980 + 9527 0116 1C4B ldr r3, .L513+12 + 9528 0118 D868 ldr r0, [r3, #12] + 9529 .LBE662: + 9530 .LBE661: +2019:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn); + 9531 .loc 1 2019 3 discriminator 1 view .LVU2981 + 9532 011a 2246 mov r2, r4 + 9533 011c 2146 mov r1, r4 + 9534 011e C0F30220 ubfx r0, r0, #8, #3 + 9535 0122 FFF7FEFF bl NVIC_EncodePriority + 9536 .LVL890: + 9537 .LBB663: + 9538 .LBI663: 2024:Drivers/CMSIS/Include/core_cm7.h **** { - 8934 .loc 2 2024 22 is_stmt 1 view .LVU2821 - 8935 .LBB627: + 9539 .loc 2 2024 22 is_stmt 1 view .LVU2982 + 9540 .LBB664: 2026:Drivers/CMSIS/Include/core_cm7.h **** { - 8936 .loc 2 2026 3 view .LVU2822 + 9541 .loc 2 2026 3 view .LVU2983 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 8937 .loc 2 2028 5 view .LVU2823 + 9542 .loc 2 2028 5 view .LVU2984 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 8938 .loc 2 2028 49 is_stmt 0 view .LVU2824 - 8939 0126 0001 lsls r0, r0, #4 - 8940 .LVL816: + 9543 .loc 2 2028 49 is_stmt 0 view .LVU2985 + 9544 0126 0001 lsls r0, r0, #4 + 9545 .LVL891: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 8941 .loc 2 2028 49 view .LVU2825 - 8942 0128 C0B2 uxtb r0, r0 + 9546 .loc 2 2028 49 view .LVU2986 + 9547 0128 C0B2 uxtb r0, r0 + ARM GAS /tmp/ccEQxcUB.s page 568 + + 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 8943 .loc 2 2028 47 view .LVU2826 - 8944 012a 184B ldr r3, .L476+16 - 8945 012c 83F82503 strb r0, [r3, #805] - 8946 .LVL817: + 9548 .loc 2 2028 47 view .LVU2987 + 9549 012a 184B ldr r3, .L513+16 + 9550 012c 83F82503 strb r0, [r3, #805] + 9551 .LVL892: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 8947 .loc 2 2028 47 view .LVU2827 - 8948 .LBE627: - 8949 .LBE626: -1855:Src/main.c **** - 8950 .loc 1 1855 3 is_stmt 1 view .LVU2828 - 8951 .LBB628: - 8952 .LBI628: + 9552 .loc 2 2028 47 view .LVU2988 + 9553 .LBE664: + 9554 .LBE663: +2020:Src/main.c **** + 9555 .loc 1 2020 3 is_stmt 1 view .LVU2989 + 9556 .LBB665: + 9557 .LBI665: 1896:Drivers/CMSIS/Include/core_cm7.h **** { - 8953 .loc 2 1896 22 view .LVU2829 - ARM GAS /tmp/ccwR4KB7.s page 550 - - - 8954 .LBB629: + 9558 .loc 2 1896 22 view .LVU2990 + 9559 .LBB666: 1898:Drivers/CMSIS/Include/core_cm7.h **** { - 8955 .loc 2 1898 3 view .LVU2830 + 9560 .loc 2 1898 3 view .LVU2991 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 8956 .loc 2 1900 5 view .LVU2831 + 9561 .loc 2 1900 5 view .LVU2992 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 8957 .loc 2 1900 43 is_stmt 0 view .LVU2832 - 8958 0130 2022 movs r2, #32 - 8959 0132 5A60 str r2, [r3, #4] - 8960 .LVL818: + 9562 .loc 2 1900 43 is_stmt 0 view .LVU2993 + 9563 0130 2022 movs r2, #32 + 9564 0132 5A60 str r2, [r3, #4] + 9565 .LVL893: 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 8961 .loc 2 1900 43 view .LVU2833 - 8962 .LBE629: - 8963 .LBE628: -1860:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; - 8964 .loc 1 1860 3 is_stmt 1 view .LVU2834 -1860:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; - 8965 .loc 1 1860 29 is_stmt 0 view .LVU2835 - 8966 0134 4FF4E133 mov r3, #115200 - 8967 0138 2D93 str r3, [sp, #180] -1861:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; - 8968 .loc 1 1861 3 is_stmt 1 view .LVU2836 -1861:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; - 8969 .loc 1 1861 30 is_stmt 0 view .LVU2837 - 8970 013a 2E94 str r4, [sp, #184] -1862:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; - 8971 .loc 1 1862 3 is_stmt 1 view .LVU2838 -1862:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; - 8972 .loc 1 1862 29 is_stmt 0 view .LVU2839 - 8973 013c 2F94 str r4, [sp, #188] -1863:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; - 8974 .loc 1 1863 3 is_stmt 1 view .LVU2840 -1863:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; - 8975 .loc 1 1863 27 is_stmt 0 view .LVU2841 - 8976 013e 3094 str r4, [sp, #192] -1864:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; - 8977 .loc 1 1864 3 is_stmt 1 view .LVU2842 -1864:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; - 8978 .loc 1 1864 38 is_stmt 0 view .LVU2843 - 8979 0140 0C23 movs r3, #12 - 8980 0142 3193 str r3, [sp, #196] -1865:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; - 8981 .loc 1 1865 3 is_stmt 1 view .LVU2844 -1865:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; - 8982 .loc 1 1865 40 is_stmt 0 view .LVU2845 - 8983 0144 3294 str r4, [sp, #200] -1866:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); - 8984 .loc 1 1866 3 is_stmt 1 view .LVU2846 -1866:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); - 8985 .loc 1 1866 33 is_stmt 0 view .LVU2847 - 8986 0146 3394 str r4, [sp, #204] -1867:Src/main.c **** LL_USART_ConfigAsyncMode(USART1); - 8987 .loc 1 1867 3 is_stmt 1 view .LVU2848 - 8988 0148 04F18044 add r4, r4, #1073741824 - 8989 014c 04F58834 add r4, r4, #69632 - 8990 0150 2DA9 add r1, sp, #180 - 8991 0152 2046 mov r0, r4 - ARM GAS /tmp/ccwR4KB7.s page 551 + 9566 .loc 2 1900 43 view .LVU2994 + 9567 .LBE666: + 9568 .LBE665: +2025:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; + 9569 .loc 1 2025 3 is_stmt 1 view .LVU2995 +2025:Src/main.c **** USART_InitStruct.DataWidth = LL_USART_DATAWIDTH_8B; + 9570 .loc 1 2025 29 is_stmt 0 view .LVU2996 + 9571 0134 4FF4E133 mov r3, #115200 + 9572 0138 2D93 str r3, [sp, #180] +2026:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; + 9573 .loc 1 2026 3 is_stmt 1 view .LVU2997 +2026:Src/main.c **** USART_InitStruct.StopBits = LL_USART_STOPBITS_1; + 9574 .loc 1 2026 30 is_stmt 0 view .LVU2998 + 9575 013a 2E94 str r4, [sp, #184] +2027:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; + 9576 .loc 1 2027 3 is_stmt 1 view .LVU2999 +2027:Src/main.c **** USART_InitStruct.Parity = LL_USART_PARITY_NONE; + 9577 .loc 1 2027 29 is_stmt 0 view .LVU3000 + 9578 013c 2F94 str r4, [sp, #188] +2028:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; + 9579 .loc 1 2028 3 is_stmt 1 view .LVU3001 +2028:Src/main.c **** USART_InitStruct.TransferDirection = LL_USART_DIRECTION_TX_RX; + 9580 .loc 1 2028 27 is_stmt 0 view .LVU3002 + 9581 013e 3094 str r4, [sp, #192] +2029:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; + 9582 .loc 1 2029 3 is_stmt 1 view .LVU3003 +2029:Src/main.c **** USART_InitStruct.HardwareFlowControl = LL_USART_HWCONTROL_NONE; + 9583 .loc 1 2029 38 is_stmt 0 view .LVU3004 + 9584 0140 0C23 movs r3, #12 + 9585 0142 3193 str r3, [sp, #196] +2030:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; + ARM GAS /tmp/ccEQxcUB.s page 569 - 8992 0154 FFF7FEFF bl LL_USART_Init - 8993 .LVL819: -1868:Src/main.c **** LL_USART_Enable(USART1); - 8994 .loc 1 1868 3 view .LVU2849 - 8995 .LBB630: - 8996 .LBI630: + 9586 .loc 1 2030 3 is_stmt 1 view .LVU3005 +2030:Src/main.c **** USART_InitStruct.OverSampling = LL_USART_OVERSAMPLING_16; + 9587 .loc 1 2030 40 is_stmt 0 view .LVU3006 + 9588 0144 3294 str r4, [sp, #200] +2031:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); + 9589 .loc 1 2031 3 is_stmt 1 view .LVU3007 +2031:Src/main.c **** LL_USART_Init(USART1, &USART_InitStruct); + 9590 .loc 1 2031 33 is_stmt 0 view .LVU3008 + 9591 0146 3394 str r4, [sp, #204] +2032:Src/main.c **** LL_USART_ConfigAsyncMode(USART1); + 9592 .loc 1 2032 3 is_stmt 1 view .LVU3009 + 9593 0148 04F18044 add r4, r4, #1073741824 + 9594 014c 04F58834 add r4, r4, #69632 + 9595 0150 2DA9 add r1, sp, #180 + 9596 0152 2046 mov r0, r4 + 9597 0154 FFF7FEFF bl LL_USART_Init + 9598 .LVL894: +2033:Src/main.c **** LL_USART_Enable(USART1); + 9599 .loc 1 2033 3 view .LVU3010 + 9600 .LBB667: + 9601 .LBI667: 2320:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 8997 .loc 7 2320 22 view .LVU2850 - 8998 .LBB631: + 9602 .loc 7 2320 22 view .LVU3011 + 9603 .LBB668: 2326:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR3, (USART_CR3_SCEN | USART_CR3_IREN | USART_CR3_HDSEL)); - 8999 .loc 7 2326 3 view .LVU2851 - 9000 0158 6368 ldr r3, [r4, #4] - 9001 015a 23F49043 bic r3, r3, #18432 - 9002 015e 6360 str r3, [r4, #4] + 9604 .loc 7 2326 3 view .LVU3012 + 9605 0158 6368 ldr r3, [r4, #4] + 9606 015a 23F49043 bic r3, r3, #18432 + 9607 015e 6360 str r3, [r4, #4] 2327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9003 .loc 7 2327 3 view .LVU2852 - 9004 0160 A368 ldr r3, [r4, #8] - 9005 0162 23F02A03 bic r3, r3, #42 - 9006 0166 A360 str r3, [r4, #8] - 9007 .LVL820: + 9608 .loc 7 2327 3 view .LVU3013 + 9609 0160 A368 ldr r3, [r4, #8] + 9610 0162 23F02A03 bic r3, r3, #42 + 9611 0166 A360 str r3, [r4, #8] + 9612 .LVL895: 2327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9008 .loc 7 2327 3 is_stmt 0 view .LVU2853 - 9009 .LBE631: - 9010 .LBE630: -1869:Src/main.c **** /* USER CODE BEGIN USART1_Init 2 */ - 9011 .loc 1 1869 3 is_stmt 1 view .LVU2854 - 9012 .LBB632: - 9013 .LBI632: + 9613 .loc 7 2327 3 is_stmt 0 view .LVU3014 + 9614 .LBE668: + 9615 .LBE667: +2034:Src/main.c **** /* USER CODE BEGIN USART1_Init 2 */ + 9616 .loc 1 2034 3 is_stmt 1 view .LVU3015 + 9617 .LBB669: + 9618 .LBI669: 560:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 9014 .loc 7 560 22 view .LVU2855 - 9015 .LBB633: + 9619 .loc 7 560 22 view .LVU3016 + 9620 .LBB670: 562:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9016 .loc 7 562 3 view .LVU2856 - 9017 0168 2368 ldr r3, [r4] - 9018 016a 43F00103 orr r3, r3, #1 - 9019 016e 2360 str r3, [r4] - 9020 .LVL821: + 9621 .loc 7 562 3 view .LVU3017 + 9622 0168 2368 ldr r3, [r4] + 9623 016a 43F00103 orr r3, r3, #1 + 9624 016e 2360 str r3, [r4] + 9625 .LVL896: 562:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9021 .loc 7 562 3 is_stmt 0 view .LVU2857 - 9022 .LBE633: - 9023 .LBE632: -1874:Src/main.c **** - 9024 .loc 1 1874 1 view .LVU2858 - 9025 0170 34B0 add sp, sp, #208 - 9026 .LCFI84: - 9027 .cfi_remember_state - 9028 .cfi_def_cfa_offset 24 - 9029 @ sp needed - 9030 0172 BDE8F081 pop {r4, r5, r6, r7, r8, pc} - 9031 .L475: - 9032 .LCFI85: - 9033 .cfi_restore_state -1805:Src/main.c **** } - 9034 .loc 1 1805 5 is_stmt 1 view .LVU2859 - 9035 0176 FFF7FEFF bl Error_Handler - 9036 .LVL822: - 9037 .L477: - ARM GAS /tmp/ccwR4KB7.s page 552 + 9626 .loc 7 562 3 is_stmt 0 view .LVU3018 + 9627 .LBE670: + 9628 .LBE669: +2039:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 570 - 9038 017a 00BF .align 2 - 9039 .L476: - 9040 017c 00380240 .word 1073887232 - 9041 0180 00000240 .word 1073872896 - 9042 0184 00640240 .word 1073898496 - 9043 0188 00ED00E0 .word -536810240 - 9044 018c 00E100E0 .word -536813312 - 9045 .cfi_endproc - 9046 .LFE1204: - 9048 .section .text.MX_TIM10_Init,"ax",%progbits - 9049 .align 1 - 9050 .syntax unified - 9051 .thumb - 9052 .thumb_func - 9054 MX_TIM10_Init: - 9055 .LFB1201: -1676:Src/main.c **** - 9056 .loc 1 1676 1 view -0 - 9057 .cfi_startproc - 9058 @ args = 0, pretend = 0, frame = 0 - 9059 @ frame_needed = 0, uses_anonymous_args = 0 - 9060 0000 08B5 push {r3, lr} - 9061 .LCFI86: - 9062 .cfi_def_cfa_offset 8 - 9063 .cfi_offset 3, -8 - 9064 .cfi_offset 14, -4 -1685:Src/main.c **** htim10.Init.Prescaler = 183; - 9065 .loc 1 1685 3 view .LVU2861 -1685:Src/main.c **** htim10.Init.Prescaler = 183; - 9066 .loc 1 1685 19 is_stmt 0 view .LVU2862 - 9067 0002 0848 ldr r0, .L482 - 9068 0004 084B ldr r3, .L482+4 - 9069 0006 0360 str r3, [r0] -1686:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; - 9070 .loc 1 1686 3 is_stmt 1 view .LVU2863 -1686:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; - 9071 .loc 1 1686 25 is_stmt 0 view .LVU2864 - 9072 0008 B723 movs r3, #183 - 9073 000a 4360 str r3, [r0, #4] -1687:Src/main.c **** htim10.Init.Period = 9; - 9074 .loc 1 1687 3 is_stmt 1 view .LVU2865 -1687:Src/main.c **** htim10.Init.Period = 9; - 9075 .loc 1 1687 27 is_stmt 0 view .LVU2866 - 9076 000c 0023 movs r3, #0 - 9077 000e 8360 str r3, [r0, #8] -1688:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9078 .loc 1 1688 3 is_stmt 1 view .LVU2867 -1688:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9079 .loc 1 1688 22 is_stmt 0 view .LVU2868 - 9080 0010 0922 movs r2, #9 - 9081 0012 C260 str r2, [r0, #12] -1689:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9082 .loc 1 1689 3 is_stmt 1 view .LVU2869 -1689:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9083 .loc 1 1689 29 is_stmt 0 view .LVU2870 - 9084 0014 0361 str r3, [r0, #16] -1690:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) - ARM GAS /tmp/ccwR4KB7.s page 553 + 9629 .loc 1 2039 1 view .LVU3019 + 9630 0170 34B0 add sp, sp, #208 + 9631 .LCFI86: + 9632 .cfi_remember_state + 9633 .cfi_def_cfa_offset 24 + 9634 @ sp needed + 9635 0172 BDE8F081 pop {r4, r5, r6, r7, r8, pc} + 9636 .L512: + 9637 .LCFI87: + 9638 .cfi_restore_state +1970:Src/main.c **** } + 9639 .loc 1 1970 5 is_stmt 1 view .LVU3020 + 9640 0176 FFF7FEFF bl Error_Handler + 9641 .LVL897: + 9642 .L514: + 9643 017a 00BF .align 2 + 9644 .L513: + 9645 017c 00380240 .word 1073887232 + 9646 0180 00000240 .word 1073872896 + 9647 0184 00640240 .word 1073898496 + 9648 0188 00ED00E0 .word -536810240 + 9649 018c 00E100E0 .word -536813312 + 9650 .cfi_endproc + 9651 .LFE1205: + 9653 .section .text.MX_TIM10_Init,"ax",%progbits + 9654 .align 1 + 9655 .syntax unified + 9656 .thumb + 9657 .thumb_func + 9659 MX_TIM10_Init: + 9660 .LFB1201: +1772:Src/main.c **** + 9661 .loc 1 1772 1 view -0 + 9662 .cfi_startproc + 9663 @ args = 0, pretend = 0, frame = 0 + 9664 @ frame_needed = 0, uses_anonymous_args = 0 + 9665 0000 08B5 push {r3, lr} + 9666 .LCFI88: + 9667 .cfi_def_cfa_offset 8 + 9668 .cfi_offset 3, -8 + 9669 .cfi_offset 14, -4 +1781:Src/main.c **** htim10.Init.Prescaler = 183; + 9670 .loc 1 1781 3 view .LVU3022 +1781:Src/main.c **** htim10.Init.Prescaler = 183; + 9671 .loc 1 1781 19 is_stmt 0 view .LVU3023 + 9672 0002 0848 ldr r0, .L519 + 9673 0004 084B ldr r3, .L519+4 + 9674 0006 0360 str r3, [r0] +1782:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; + 9675 .loc 1 1782 3 is_stmt 1 view .LVU3024 +1782:Src/main.c **** htim10.Init.CounterMode = TIM_COUNTERMODE_UP; + 9676 .loc 1 1782 25 is_stmt 0 view .LVU3025 + 9677 0008 B723 movs r3, #183 + 9678 000a 4360 str r3, [r0, #4] +1783:Src/main.c **** htim10.Init.Period = 9; + 9679 .loc 1 1783 3 is_stmt 1 view .LVU3026 +1783:Src/main.c **** htim10.Init.Period = 9; + ARM GAS /tmp/ccEQxcUB.s page 571 - 9085 .loc 1 1690 3 is_stmt 1 view .LVU2871 -1690:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) - 9086 .loc 1 1690 33 is_stmt 0 view .LVU2872 - 9087 0016 8361 str r3, [r0, #24] -1691:Src/main.c **** { - 9088 .loc 1 1691 3 is_stmt 1 view .LVU2873 -1691:Src/main.c **** { - 9089 .loc 1 1691 7 is_stmt 0 view .LVU2874 - 9090 0018 FFF7FEFF bl HAL_TIM_Base_Init - 9091 .LVL823: -1691:Src/main.c **** { - 9092 .loc 1 1691 6 discriminator 1 view .LVU2875 - 9093 001c 00B9 cbnz r0, .L481 -1699:Src/main.c **** - 9094 .loc 1 1699 1 view .LVU2876 - 9095 001e 08BD pop {r3, pc} - 9096 .L481: -1693:Src/main.c **** } - 9097 .loc 1 1693 5 is_stmt 1 view .LVU2877 - 9098 0020 FFF7FEFF bl Error_Handler - 9099 .LVL824: - 9100 .L483: - 9101 .align 2 - 9102 .L482: - 9103 0024 00000000 .word htim10 - 9104 0028 00440140 .word 1073824768 - 9105 .cfi_endproc - 9106 .LFE1201: - 9108 .section .text.MX_UART8_Init,"ax",%progbits - 9109 .align 1 - 9110 .syntax unified - 9111 .thumb - 9112 .thumb_func - 9114 MX_UART8_Init: - 9115 .LFB1203: -1753:Src/main.c **** - 9116 .loc 1 1753 1 view -0 - 9117 .cfi_startproc - 9118 @ args = 0, pretend = 0, frame = 0 - 9119 @ frame_needed = 0, uses_anonymous_args = 0 - 9120 0000 08B5 push {r3, lr} - 9121 .LCFI87: - 9122 .cfi_def_cfa_offset 8 - 9123 .cfi_offset 3, -8 - 9124 .cfi_offset 14, -4 -1762:Src/main.c **** huart8.Init.BaudRate = 115200; - 9125 .loc 1 1762 3 view .LVU2879 -1762:Src/main.c **** huart8.Init.BaudRate = 115200; - 9126 .loc 1 1762 19 is_stmt 0 view .LVU2880 - 9127 0002 0B48 ldr r0, .L488 - 9128 0004 0B4B ldr r3, .L488+4 - 9129 0006 0360 str r3, [r0] -1763:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; - 9130 .loc 1 1763 3 is_stmt 1 view .LVU2881 -1763:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; - 9131 .loc 1 1763 24 is_stmt 0 view .LVU2882 - 9132 0008 4FF4E133 mov r3, #115200 - ARM GAS /tmp/ccwR4KB7.s page 554 + 9680 .loc 1 1783 27 is_stmt 0 view .LVU3027 + 9681 000c 0023 movs r3, #0 + 9682 000e 8360 str r3, [r0, #8] +1784:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9683 .loc 1 1784 3 is_stmt 1 view .LVU3028 +1784:Src/main.c **** htim10.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9684 .loc 1 1784 22 is_stmt 0 view .LVU3029 + 9685 0010 0922 movs r2, #9 + 9686 0012 C260 str r2, [r0, #12] +1785:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 9687 .loc 1 1785 3 is_stmt 1 view .LVU3030 +1785:Src/main.c **** htim10.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 9688 .loc 1 1785 29 is_stmt 0 view .LVU3031 + 9689 0014 0361 str r3, [r0, #16] +1786:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) + 9690 .loc 1 1786 3 is_stmt 1 view .LVU3032 +1786:Src/main.c **** if (HAL_TIM_Base_Init(&htim10) != HAL_OK) + 9691 .loc 1 1786 33 is_stmt 0 view .LVU3033 + 9692 0016 8361 str r3, [r0, #24] +1787:Src/main.c **** { + 9693 .loc 1 1787 3 is_stmt 1 view .LVU3034 +1787:Src/main.c **** { + 9694 .loc 1 1787 7 is_stmt 0 view .LVU3035 + 9695 0018 FFF7FEFF bl HAL_TIM_Base_Init + 9696 .LVL898: +1787:Src/main.c **** { + 9697 .loc 1 1787 6 discriminator 1 view .LVU3036 + 9698 001c 00B9 cbnz r0, .L518 +1795:Src/main.c **** + 9699 .loc 1 1795 1 view .LVU3037 + 9700 001e 08BD pop {r3, pc} + 9701 .L518: +1789:Src/main.c **** } + 9702 .loc 1 1789 5 is_stmt 1 view .LVU3038 + 9703 0020 FFF7FEFF bl Error_Handler + 9704 .LVL899: + 9705 .L520: + 9706 .align 2 + 9707 .L519: + 9708 0024 00000000 .word htim10 + 9709 0028 00440140 .word 1073824768 + 9710 .cfi_endproc + 9711 .LFE1201: + 9713 .section .text.MX_UART8_Init,"ax",%progbits + 9714 .align 1 + 9715 .syntax unified + 9716 .thumb + 9717 .thumb_func + 9719 MX_UART8_Init: + 9720 .LFB1204: +1918:Src/main.c **** + 9721 .loc 1 1918 1 view -0 + 9722 .cfi_startproc + 9723 @ args = 0, pretend = 0, frame = 0 + 9724 @ frame_needed = 0, uses_anonymous_args = 0 + 9725 0000 08B5 push {r3, lr} + 9726 .LCFI89: + ARM GAS /tmp/ccEQxcUB.s page 572 - 9133 000c 4360 str r3, [r0, #4] -1764:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; - 9134 .loc 1 1764 3 is_stmt 1 view .LVU2883 -1764:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; - 9135 .loc 1 1764 26 is_stmt 0 view .LVU2884 - 9136 000e 0023 movs r3, #0 - 9137 0010 8360 str r3, [r0, #8] -1765:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; - 9138 .loc 1 1765 3 is_stmt 1 view .LVU2885 -1765:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; - 9139 .loc 1 1765 24 is_stmt 0 view .LVU2886 - 9140 0012 C360 str r3, [r0, #12] -1766:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; - 9141 .loc 1 1766 3 is_stmt 1 view .LVU2887 -1766:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; - 9142 .loc 1 1766 22 is_stmt 0 view .LVU2888 - 9143 0014 0361 str r3, [r0, #16] -1767:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; - 9144 .loc 1 1767 3 is_stmt 1 view .LVU2889 -1767:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; - 9145 .loc 1 1767 20 is_stmt 0 view .LVU2890 - 9146 0016 0C22 movs r2, #12 - 9147 0018 4261 str r2, [r0, #20] -1768:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; - 9148 .loc 1 1768 3 is_stmt 1 view .LVU2891 -1768:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; - 9149 .loc 1 1768 25 is_stmt 0 view .LVU2892 - 9150 001a 8361 str r3, [r0, #24] -1769:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; - 9151 .loc 1 1769 3 is_stmt 1 view .LVU2893 -1769:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; - 9152 .loc 1 1769 28 is_stmt 0 view .LVU2894 - 9153 001c C361 str r3, [r0, #28] -1770:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; - 9154 .loc 1 1770 3 is_stmt 1 view .LVU2895 -1770:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; - 9155 .loc 1 1770 30 is_stmt 0 view .LVU2896 - 9156 001e 0362 str r3, [r0, #32] -1771:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) - 9157 .loc 1 1771 3 is_stmt 1 view .LVU2897 -1771:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) - 9158 .loc 1 1771 38 is_stmt 0 view .LVU2898 - 9159 0020 4362 str r3, [r0, #36] -1772:Src/main.c **** { - 9160 .loc 1 1772 3 is_stmt 1 view .LVU2899 -1772:Src/main.c **** { - 9161 .loc 1 1772 7 is_stmt 0 view .LVU2900 - 9162 0022 FFF7FEFF bl HAL_UART_Init - 9163 .LVL825: -1772:Src/main.c **** { - 9164 .loc 1 1772 6 discriminator 1 view .LVU2901 - 9165 0026 00B9 cbnz r0, .L487 -1780:Src/main.c **** - 9166 .loc 1 1780 1 view .LVU2902 - 9167 0028 08BD pop {r3, pc} - 9168 .L487: -1774:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 555 + 9727 .cfi_def_cfa_offset 8 + 9728 .cfi_offset 3, -8 + 9729 .cfi_offset 14, -4 +1927:Src/main.c **** huart8.Init.BaudRate = 115200; + 9730 .loc 1 1927 3 view .LVU3040 +1927:Src/main.c **** huart8.Init.BaudRate = 115200; + 9731 .loc 1 1927 19 is_stmt 0 view .LVU3041 + 9732 0002 0B48 ldr r0, .L525 + 9733 0004 0B4B ldr r3, .L525+4 + 9734 0006 0360 str r3, [r0] +1928:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; + 9735 .loc 1 1928 3 is_stmt 1 view .LVU3042 +1928:Src/main.c **** huart8.Init.WordLength = UART_WORDLENGTH_8B; + 9736 .loc 1 1928 24 is_stmt 0 view .LVU3043 + 9737 0008 4FF4E133 mov r3, #115200 + 9738 000c 4360 str r3, [r0, #4] +1929:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; + 9739 .loc 1 1929 3 is_stmt 1 view .LVU3044 +1929:Src/main.c **** huart8.Init.StopBits = UART_STOPBITS_1; + 9740 .loc 1 1929 26 is_stmt 0 view .LVU3045 + 9741 000e 0023 movs r3, #0 + 9742 0010 8360 str r3, [r0, #8] +1930:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; + 9743 .loc 1 1930 3 is_stmt 1 view .LVU3046 +1930:Src/main.c **** huart8.Init.Parity = UART_PARITY_NONE; + 9744 .loc 1 1930 24 is_stmt 0 view .LVU3047 + 9745 0012 C360 str r3, [r0, #12] +1931:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; + 9746 .loc 1 1931 3 is_stmt 1 view .LVU3048 +1931:Src/main.c **** huart8.Init.Mode = UART_MODE_TX_RX; + 9747 .loc 1 1931 22 is_stmt 0 view .LVU3049 + 9748 0014 0361 str r3, [r0, #16] +1932:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; + 9749 .loc 1 1932 3 is_stmt 1 view .LVU3050 +1932:Src/main.c **** huart8.Init.HwFlowCtl = UART_HWCONTROL_NONE; + 9750 .loc 1 1932 20 is_stmt 0 view .LVU3051 + 9751 0016 0C22 movs r2, #12 + 9752 0018 4261 str r2, [r0, #20] +1933:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; + 9753 .loc 1 1933 3 is_stmt 1 view .LVU3052 +1933:Src/main.c **** huart8.Init.OverSampling = UART_OVERSAMPLING_16; + 9754 .loc 1 1933 25 is_stmt 0 view .LVU3053 + 9755 001a 8361 str r3, [r0, #24] +1934:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; + 9756 .loc 1 1934 3 is_stmt 1 view .LVU3054 +1934:Src/main.c **** huart8.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE; + 9757 .loc 1 1934 28 is_stmt 0 view .LVU3055 + 9758 001c C361 str r3, [r0, #28] +1935:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; + 9759 .loc 1 1935 3 is_stmt 1 view .LVU3056 +1935:Src/main.c **** huart8.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT; + 9760 .loc 1 1935 30 is_stmt 0 view .LVU3057 + 9761 001e 0362 str r3, [r0, #32] +1936:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) + 9762 .loc 1 1936 3 is_stmt 1 view .LVU3058 +1936:Src/main.c **** if (HAL_UART_Init(&huart8) != HAL_OK) + 9763 .loc 1 1936 38 is_stmt 0 view .LVU3059 + ARM GAS /tmp/ccEQxcUB.s page 573 - 9169 .loc 1 1774 5 is_stmt 1 view .LVU2903 - 9170 002a FFF7FEFF bl Error_Handler - 9171 .LVL826: - 9172 .L489: - 9173 002e 00BF .align 2 - 9174 .L488: - 9175 0030 00000000 .word huart8 - 9176 0034 007C0040 .word 1073773568 - 9177 .cfi_endproc - 9178 .LFE1203: - 9180 .section .text.MX_TIM8_Init,"ax",%progbits - 9181 .align 1 - 9182 .syntax unified - 9183 .thumb - 9184 .thumb_func - 9186 MX_TIM8_Init: - 9187 .LFB1200: -1629:Src/main.c **** - 9188 .loc 1 1629 1 view -0 - 9189 .cfi_startproc - 9190 @ args = 0, pretend = 0, frame = 32 - 9191 @ frame_needed = 0, uses_anonymous_args = 0 - 9192 0000 00B5 push {lr} - 9193 .LCFI88: - 9194 .cfi_def_cfa_offset 4 - 9195 .cfi_offset 14, -4 - 9196 0002 89B0 sub sp, sp, #36 - 9197 .LCFI89: - 9198 .cfi_def_cfa_offset 40 -1635:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; - 9199 .loc 1 1635 3 view .LVU2905 -1635:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; - 9200 .loc 1 1635 26 is_stmt 0 view .LVU2906 - 9201 0004 0023 movs r3, #0 - 9202 0006 0493 str r3, [sp, #16] - 9203 0008 0593 str r3, [sp, #20] - 9204 000a 0693 str r3, [sp, #24] - 9205 000c 0793 str r3, [sp, #28] -1636:Src/main.c **** - 9206 .loc 1 1636 3 is_stmt 1 view .LVU2907 -1636:Src/main.c **** - 9207 .loc 1 1636 27 is_stmt 0 view .LVU2908 - 9208 000e 0193 str r3, [sp, #4] - 9209 0010 0293 str r3, [sp, #8] - 9210 0012 0393 str r3, [sp, #12] -1641:Src/main.c **** htim8.Init.Prescaler = 0; - 9211 .loc 1 1641 3 is_stmt 1 view .LVU2909 -1641:Src/main.c **** htim8.Init.Prescaler = 0; - 9212 .loc 1 1641 18 is_stmt 0 view .LVU2910 - 9213 0014 1348 ldr r0, .L498 - 9214 0016 144A ldr r2, .L498+4 - 9215 0018 0260 str r2, [r0] -1642:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; - 9216 .loc 1 1642 3 is_stmt 1 view .LVU2911 -1642:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; - 9217 .loc 1 1642 24 is_stmt 0 view .LVU2912 - 9218 001a 4360 str r3, [r0, #4] - ARM GAS /tmp/ccwR4KB7.s page 556 + 9764 0020 4362 str r3, [r0, #36] +1937:Src/main.c **** { + 9765 .loc 1 1937 3 is_stmt 1 view .LVU3060 +1937:Src/main.c **** { + 9766 .loc 1 1937 7 is_stmt 0 view .LVU3061 + 9767 0022 FFF7FEFF bl HAL_UART_Init + 9768 .LVL900: +1937:Src/main.c **** { + 9769 .loc 1 1937 6 discriminator 1 view .LVU3062 + 9770 0026 00B9 cbnz r0, .L524 +1945:Src/main.c **** + 9771 .loc 1 1945 1 view .LVU3063 + 9772 0028 08BD pop {r3, pc} + 9773 .L524: +1939:Src/main.c **** } + 9774 .loc 1 1939 5 is_stmt 1 view .LVU3064 + 9775 002a FFF7FEFF bl Error_Handler + 9776 .LVL901: + 9777 .L526: + 9778 002e 00BF .align 2 + 9779 .L525: + 9780 0030 00000000 .word huart8 + 9781 0034 007C0040 .word 1073773568 + 9782 .cfi_endproc + 9783 .LFE1204: + 9785 .section .text.MX_TIM8_Init,"ax",%progbits + 9786 .align 1 + 9787 .syntax unified + 9788 .thumb + 9789 .thumb_func + 9791 MX_TIM8_Init: + 9792 .LFB1200: +1725:Src/main.c **** + 9793 .loc 1 1725 1 view -0 + 9794 .cfi_startproc + 9795 @ args = 0, pretend = 0, frame = 32 + 9796 @ frame_needed = 0, uses_anonymous_args = 0 + 9797 0000 00B5 push {lr} + 9798 .LCFI90: + 9799 .cfi_def_cfa_offset 4 + 9800 .cfi_offset 14, -4 + 9801 0002 89B0 sub sp, sp, #36 + 9802 .LCFI91: + 9803 .cfi_def_cfa_offset 40 +1731:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; + 9804 .loc 1 1731 3 view .LVU3066 +1731:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; + 9805 .loc 1 1731 26 is_stmt 0 view .LVU3067 + 9806 0004 0023 movs r3, #0 + 9807 0006 0493 str r3, [sp, #16] + 9808 0008 0593 str r3, [sp, #20] + 9809 000a 0693 str r3, [sp, #24] + 9810 000c 0793 str r3, [sp, #28] +1732:Src/main.c **** + 9811 .loc 1 1732 3 is_stmt 1 view .LVU3068 +1732:Src/main.c **** + 9812 .loc 1 1732 27 is_stmt 0 view .LVU3069 + ARM GAS /tmp/ccEQxcUB.s page 574 -1643:Src/main.c **** htim8.Init.Period = 91; - 9219 .loc 1 1643 3 is_stmt 1 view .LVU2913 -1643:Src/main.c **** htim8.Init.Period = 91; - 9220 .loc 1 1643 26 is_stmt 0 view .LVU2914 - 9221 001c 8360 str r3, [r0, #8] -1644:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9222 .loc 1 1644 3 is_stmt 1 view .LVU2915 -1644:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9223 .loc 1 1644 21 is_stmt 0 view .LVU2916 - 9224 001e 5B22 movs r2, #91 - 9225 0020 C260 str r2, [r0, #12] -1645:Src/main.c **** htim8.Init.RepetitionCounter = 0; - 9226 .loc 1 1645 3 is_stmt 1 view .LVU2917 -1645:Src/main.c **** htim8.Init.RepetitionCounter = 0; - 9227 .loc 1 1645 28 is_stmt 0 view .LVU2918 - 9228 0022 0361 str r3, [r0, #16] -1646:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9229 .loc 1 1646 3 is_stmt 1 view .LVU2919 -1646:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9230 .loc 1 1646 32 is_stmt 0 view .LVU2920 - 9231 0024 4361 str r3, [r0, #20] -1647:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) - 9232 .loc 1 1647 3 is_stmt 1 view .LVU2921 -1647:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) - 9233 .loc 1 1647 32 is_stmt 0 view .LVU2922 - 9234 0026 8361 str r3, [r0, #24] -1648:Src/main.c **** { - 9235 .loc 1 1648 3 is_stmt 1 view .LVU2923 -1648:Src/main.c **** { - 9236 .loc 1 1648 7 is_stmt 0 view .LVU2924 - 9237 0028 FFF7FEFF bl HAL_TIM_Base_Init - 9238 .LVL827: -1648:Src/main.c **** { - 9239 .loc 1 1648 6 discriminator 1 view .LVU2925 - 9240 002c 98B9 cbnz r0, .L495 -1652:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) - 9241 .loc 1 1652 3 is_stmt 1 view .LVU2926 -1652:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) - 9242 .loc 1 1652 34 is_stmt 0 view .LVU2927 - 9243 002e 4FF48053 mov r3, #4096 - 9244 0032 0493 str r3, [sp, #16] -1653:Src/main.c **** { - 9245 .loc 1 1653 3 is_stmt 1 view .LVU2928 -1653:Src/main.c **** { - 9246 .loc 1 1653 7 is_stmt 0 view .LVU2929 - 9247 0034 04A9 add r1, sp, #16 - 9248 0036 0B48 ldr r0, .L498 - 9249 0038 FFF7FEFF bl HAL_TIM_ConfigClockSource - 9250 .LVL828: -1653:Src/main.c **** { - 9251 .loc 1 1653 6 discriminator 1 view .LVU2930 - 9252 003c 68B9 cbnz r0, .L496 -1657:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; - 9253 .loc 1 1657 3 is_stmt 1 view .LVU2931 -1657:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; - 9254 .loc 1 1657 37 is_stmt 0 view .LVU2932 - 9255 003e 0023 movs r3, #0 - ARM GAS /tmp/ccwR4KB7.s page 557 + 9813 000e 0193 str r3, [sp, #4] + 9814 0010 0293 str r3, [sp, #8] + 9815 0012 0393 str r3, [sp, #12] +1737:Src/main.c **** htim8.Init.Prescaler = 0; + 9816 .loc 1 1737 3 is_stmt 1 view .LVU3070 +1737:Src/main.c **** htim8.Init.Prescaler = 0; + 9817 .loc 1 1737 18 is_stmt 0 view .LVU3071 + 9818 0014 1348 ldr r0, .L535 + 9819 0016 144A ldr r2, .L535+4 + 9820 0018 0260 str r2, [r0] +1738:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; + 9821 .loc 1 1738 3 is_stmt 1 view .LVU3072 +1738:Src/main.c **** htim8.Init.CounterMode = TIM_COUNTERMODE_UP; + 9822 .loc 1 1738 24 is_stmt 0 view .LVU3073 + 9823 001a 4360 str r3, [r0, #4] +1739:Src/main.c **** htim8.Init.Period = 91; + 9824 .loc 1 1739 3 is_stmt 1 view .LVU3074 +1739:Src/main.c **** htim8.Init.Period = 91; + 9825 .loc 1 1739 26 is_stmt 0 view .LVU3075 + 9826 001c 8360 str r3, [r0, #8] +1740:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9827 .loc 1 1740 3 is_stmt 1 view .LVU3076 +1740:Src/main.c **** htim8.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9828 .loc 1 1740 21 is_stmt 0 view .LVU3077 + 9829 001e 5B22 movs r2, #91 + 9830 0020 C260 str r2, [r0, #12] +1741:Src/main.c **** htim8.Init.RepetitionCounter = 0; + 9831 .loc 1 1741 3 is_stmt 1 view .LVU3078 +1741:Src/main.c **** htim8.Init.RepetitionCounter = 0; + 9832 .loc 1 1741 28 is_stmt 0 view .LVU3079 + 9833 0022 0361 str r3, [r0, #16] +1742:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 9834 .loc 1 1742 3 is_stmt 1 view .LVU3080 +1742:Src/main.c **** htim8.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 9835 .loc 1 1742 32 is_stmt 0 view .LVU3081 + 9836 0024 4361 str r3, [r0, #20] +1743:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) + 9837 .loc 1 1743 3 is_stmt 1 view .LVU3082 +1743:Src/main.c **** if (HAL_TIM_Base_Init(&htim8) != HAL_OK) + 9838 .loc 1 1743 32 is_stmt 0 view .LVU3083 + 9839 0026 8361 str r3, [r0, #24] +1744:Src/main.c **** { + 9840 .loc 1 1744 3 is_stmt 1 view .LVU3084 +1744:Src/main.c **** { + 9841 .loc 1 1744 7 is_stmt 0 view .LVU3085 + 9842 0028 FFF7FEFF bl HAL_TIM_Base_Init + 9843 .LVL902: +1744:Src/main.c **** { + 9844 .loc 1 1744 6 discriminator 1 view .LVU3086 + 9845 002c 98B9 cbnz r0, .L532 +1748:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) + 9846 .loc 1 1748 3 is_stmt 1 view .LVU3087 +1748:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim8, &sClockSourceConfig) != HAL_OK) + 9847 .loc 1 1748 34 is_stmt 0 view .LVU3088 + 9848 002e 4FF48053 mov r3, #4096 + 9849 0032 0493 str r3, [sp, #16] +1749:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 575 - 9256 0040 0193 str r3, [sp, #4] -1658:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - 9257 .loc 1 1658 3 is_stmt 1 view .LVU2933 -1658:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - 9258 .loc 1 1658 38 is_stmt 0 view .LVU2934 - 9259 0042 0293 str r3, [sp, #8] -1659:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) - 9260 .loc 1 1659 3 is_stmt 1 view .LVU2935 -1659:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) - 9261 .loc 1 1659 33 is_stmt 0 view .LVU2936 - 9262 0044 0393 str r3, [sp, #12] -1660:Src/main.c **** { - 9263 .loc 1 1660 3 is_stmt 1 view .LVU2937 -1660:Src/main.c **** { - 9264 .loc 1 1660 7 is_stmt 0 view .LVU2938 - 9265 0046 01A9 add r1, sp, #4 - 9266 0048 0648 ldr r0, .L498 - 9267 004a FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization - 9268 .LVL829: -1660:Src/main.c **** { - 9269 .loc 1 1660 6 discriminator 1 view .LVU2939 - 9270 004e 30B9 cbnz r0, .L497 -1668:Src/main.c **** - 9271 .loc 1 1668 1 view .LVU2940 - 9272 0050 09B0 add sp, sp, #36 - 9273 .LCFI90: - 9274 .cfi_remember_state - 9275 .cfi_def_cfa_offset 4 - 9276 @ sp needed - 9277 0052 5DF804FB ldr pc, [sp], #4 - 9278 .L495: - 9279 .LCFI91: - 9280 .cfi_restore_state -1650:Src/main.c **** } - 9281 .loc 1 1650 5 is_stmt 1 view .LVU2941 - 9282 0056 FFF7FEFF bl Error_Handler - 9283 .LVL830: - 9284 .L496: -1655:Src/main.c **** } - 9285 .loc 1 1655 5 view .LVU2942 - 9286 005a FFF7FEFF bl Error_Handler - 9287 .LVL831: - 9288 .L497: -1662:Src/main.c **** } - 9289 .loc 1 1662 5 view .LVU2943 - 9290 005e FFF7FEFF bl Error_Handler - 9291 .LVL832: - 9292 .L499: - 9293 0062 00BF .align 2 - 9294 .L498: - 9295 0064 00000000 .word htim8 - 9296 0068 00040140 .word 1073808384 - 9297 .cfi_endproc - 9298 .LFE1200: - 9300 .section .text.MX_TIM11_Init,"ax",%progbits - 9301 .align 1 - 9302 .syntax unified - ARM GAS /tmp/ccwR4KB7.s page 558 + 9850 .loc 1 1749 3 is_stmt 1 view .LVU3089 +1749:Src/main.c **** { + 9851 .loc 1 1749 7 is_stmt 0 view .LVU3090 + 9852 0034 04A9 add r1, sp, #16 + 9853 0036 0B48 ldr r0, .L535 + 9854 0038 FFF7FEFF bl HAL_TIM_ConfigClockSource + 9855 .LVL903: +1749:Src/main.c **** { + 9856 .loc 1 1749 6 discriminator 1 view .LVU3091 + 9857 003c 68B9 cbnz r0, .L533 +1753:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; + 9858 .loc 1 1753 3 is_stmt 1 view .LVU3092 +1753:Src/main.c **** sMasterConfig.MasterOutputTrigger2 = TIM_TRGO2_RESET; + 9859 .loc 1 1753 37 is_stmt 0 view .LVU3093 + 9860 003e 0023 movs r3, #0 + 9861 0040 0193 str r3, [sp, #4] +1754:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + 9862 .loc 1 1754 3 is_stmt 1 view .LVU3094 +1754:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + 9863 .loc 1 1754 38 is_stmt 0 view .LVU3095 + 9864 0042 0293 str r3, [sp, #8] +1755:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) + 9865 .loc 1 1755 3 is_stmt 1 view .LVU3096 +1755:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim8, &sMasterConfig) != HAL_OK) + 9866 .loc 1 1755 33 is_stmt 0 view .LVU3097 + 9867 0044 0393 str r3, [sp, #12] +1756:Src/main.c **** { + 9868 .loc 1 1756 3 is_stmt 1 view .LVU3098 +1756:Src/main.c **** { + 9869 .loc 1 1756 7 is_stmt 0 view .LVU3099 + 9870 0046 01A9 add r1, sp, #4 + 9871 0048 0648 ldr r0, .L535 + 9872 004a FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization + 9873 .LVL904: +1756:Src/main.c **** { + 9874 .loc 1 1756 6 discriminator 1 view .LVU3100 + 9875 004e 30B9 cbnz r0, .L534 +1764:Src/main.c **** + 9876 .loc 1 1764 1 view .LVU3101 + 9877 0050 09B0 add sp, sp, #36 + 9878 .LCFI92: + 9879 .cfi_remember_state + 9880 .cfi_def_cfa_offset 4 + 9881 @ sp needed + 9882 0052 5DF804FB ldr pc, [sp], #4 + 9883 .L532: + 9884 .LCFI93: + 9885 .cfi_restore_state +1746:Src/main.c **** } + 9886 .loc 1 1746 5 is_stmt 1 view .LVU3102 + 9887 0056 FFF7FEFF bl Error_Handler + 9888 .LVL905: + 9889 .L533: +1751:Src/main.c **** } + 9890 .loc 1 1751 5 view .LVU3103 + 9891 005a FFF7FEFF bl Error_Handler + 9892 .LVL906: + ARM GAS /tmp/ccEQxcUB.s page 576 - 9303 .thumb - 9304 .thumb_func - 9306 MX_TIM11_Init: - 9307 .LFB1202: -1707:Src/main.c **** - 9308 .loc 1 1707 1 view -0 - 9309 .cfi_startproc - 9310 @ args = 0, pretend = 0, frame = 32 - 9311 @ frame_needed = 0, uses_anonymous_args = 0 - 9312 0000 00B5 push {lr} - 9313 .LCFI92: - 9314 .cfi_def_cfa_offset 4 - 9315 .cfi_offset 14, -4 - 9316 0002 89B0 sub sp, sp, #36 - 9317 .LCFI93: - 9318 .cfi_def_cfa_offset 40 -1713:Src/main.c **** - 9319 .loc 1 1713 3 view .LVU2945 -1713:Src/main.c **** - 9320 .loc 1 1713 22 is_stmt 0 view .LVU2946 - 9321 0004 0023 movs r3, #0 - 9322 0006 0193 str r3, [sp, #4] - 9323 0008 0293 str r3, [sp, #8] - 9324 000a 0393 str r3, [sp, #12] - 9325 000c 0493 str r3, [sp, #16] - 9326 000e 0593 str r3, [sp, #20] - 9327 0010 0693 str r3, [sp, #24] - 9328 0012 0793 str r3, [sp, #28] -1718:Src/main.c **** htim11.Init.Prescaler = 1; - 9329 .loc 1 1718 3 is_stmt 1 view .LVU2947 -1718:Src/main.c **** htim11.Init.Prescaler = 1; - 9330 .loc 1 1718 19 is_stmt 0 view .LVU2948 - 9331 0014 1448 ldr r0, .L508 - 9332 0016 154A ldr r2, .L508+4 - 9333 0018 0260 str r2, [r0] -1719:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; - 9334 .loc 1 1719 3 is_stmt 1 view .LVU2949 -1719:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; - 9335 .loc 1 1719 25 is_stmt 0 view .LVU2950 - 9336 001a 0122 movs r2, #1 - 9337 001c 4260 str r2, [r0, #4] -1720:Src/main.c **** htim11.Init.Period = 91; - 9338 .loc 1 1720 3 is_stmt 1 view .LVU2951 -1720:Src/main.c **** htim11.Init.Period = 91; - 9339 .loc 1 1720 27 is_stmt 0 view .LVU2952 - 9340 001e 8360 str r3, [r0, #8] -1721:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9341 .loc 1 1721 3 is_stmt 1 view .LVU2953 -1721:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9342 .loc 1 1721 22 is_stmt 0 view .LVU2954 - 9343 0020 5B22 movs r2, #91 - 9344 0022 C260 str r2, [r0, #12] -1722:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; - 9345 .loc 1 1722 3 is_stmt 1 view .LVU2955 -1722:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; - 9346 .loc 1 1722 29 is_stmt 0 view .LVU2956 - 9347 0024 0361 str r3, [r0, #16] - ARM GAS /tmp/ccwR4KB7.s page 559 + 9893 .L534: +1758:Src/main.c **** } + 9894 .loc 1 1758 5 view .LVU3104 + 9895 005e FFF7FEFF bl Error_Handler + 9896 .LVL907: + 9897 .L536: + 9898 0062 00BF .align 2 + 9899 .L535: + 9900 0064 00000000 .word htim8 + 9901 0068 00040140 .word 1073808384 + 9902 .cfi_endproc + 9903 .LFE1200: + 9905 .section .text.MX_TIM11_Init,"ax",%progbits + 9906 .align 1 + 9907 .syntax unified + 9908 .thumb + 9909 .thumb_func + 9911 MX_TIM11_Init: + 9912 .LFB1202: +1803:Src/main.c **** + 9913 .loc 1 1803 1 view -0 + 9914 .cfi_startproc + 9915 @ args = 0, pretend = 0, frame = 32 + 9916 @ frame_needed = 0, uses_anonymous_args = 0 + 9917 0000 00B5 push {lr} + 9918 .LCFI94: + 9919 .cfi_def_cfa_offset 4 + 9920 .cfi_offset 14, -4 + 9921 0002 89B0 sub sp, sp, #36 + 9922 .LCFI95: + 9923 .cfi_def_cfa_offset 40 +1809:Src/main.c **** + 9924 .loc 1 1809 3 view .LVU3106 +1809:Src/main.c **** + 9925 .loc 1 1809 22 is_stmt 0 view .LVU3107 + 9926 0004 0023 movs r3, #0 + 9927 0006 0193 str r3, [sp, #4] + 9928 0008 0293 str r3, [sp, #8] + 9929 000a 0393 str r3, [sp, #12] + 9930 000c 0493 str r3, [sp, #16] + 9931 000e 0593 str r3, [sp, #20] + 9932 0010 0693 str r3, [sp, #24] + 9933 0012 0793 str r3, [sp, #28] +1814:Src/main.c **** htim11.Init.Prescaler = 1; + 9934 .loc 1 1814 3 is_stmt 1 view .LVU3108 +1814:Src/main.c **** htim11.Init.Prescaler = 1; + 9935 .loc 1 1814 19 is_stmt 0 view .LVU3109 + 9936 0014 1448 ldr r0, .L545 + 9937 0016 154A ldr r2, .L545+4 + 9938 0018 0260 str r2, [r0] +1815:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; + 9939 .loc 1 1815 3 is_stmt 1 view .LVU3110 +1815:Src/main.c **** htim11.Init.CounterMode = TIM_COUNTERMODE_UP; + 9940 .loc 1 1815 25 is_stmt 0 view .LVU3111 + 9941 001a 0122 movs r2, #1 + 9942 001c 4260 str r2, [r0, #4] +1816:Src/main.c **** htim11.Init.Period = 91; + ARM GAS /tmp/ccEQxcUB.s page 577 -1723:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) - 9348 .loc 1 1723 3 is_stmt 1 view .LVU2957 -1723:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) - 9349 .loc 1 1723 33 is_stmt 0 view .LVU2958 - 9350 0026 8023 movs r3, #128 - 9351 0028 8361 str r3, [r0, #24] -1724:Src/main.c **** { - 9352 .loc 1 1724 3 is_stmt 1 view .LVU2959 -1724:Src/main.c **** { - 9353 .loc 1 1724 7 is_stmt 0 view .LVU2960 - 9354 002a FFF7FEFF bl HAL_TIM_Base_Init - 9355 .LVL833: -1724:Src/main.c **** { - 9356 .loc 1 1724 6 discriminator 1 view .LVU2961 - 9357 002e A8B9 cbnz r0, .L505 -1728:Src/main.c **** { - 9358 .loc 1 1728 3 is_stmt 1 view .LVU2962 -1728:Src/main.c **** { - 9359 .loc 1 1728 7 is_stmt 0 view .LVU2963 - 9360 0030 0D48 ldr r0, .L508 - 9361 0032 FFF7FEFF bl HAL_TIM_PWM_Init - 9362 .LVL834: -1728:Src/main.c **** { - 9363 .loc 1 1728 6 discriminator 1 view .LVU2964 - 9364 0036 98B9 cbnz r0, .L506 -1732:Src/main.c **** sConfigOC.Pulse = 91; - 9365 .loc 1 1732 3 is_stmt 1 view .LVU2965 -1732:Src/main.c **** sConfigOC.Pulse = 91; - 9366 .loc 1 1732 20 is_stmt 0 view .LVU2966 - 9367 0038 6023 movs r3, #96 - 9368 003a 0193 str r3, [sp, #4] -1733:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - 9369 .loc 1 1733 3 is_stmt 1 view .LVU2967 -1733:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - 9370 .loc 1 1733 19 is_stmt 0 view .LVU2968 - 9371 003c 5B23 movs r3, #91 - 9372 003e 0293 str r3, [sp, #8] -1734:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - 9373 .loc 1 1734 3 is_stmt 1 view .LVU2969 -1734:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - 9374 .loc 1 1734 24 is_stmt 0 view .LVU2970 - 9375 0040 0022 movs r2, #0 - 9376 0042 0392 str r2, [sp, #12] -1735:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) - 9377 .loc 1 1735 3 is_stmt 1 view .LVU2971 -1735:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) - 9378 .loc 1 1735 24 is_stmt 0 view .LVU2972 - 9379 0044 0592 str r2, [sp, #20] -1736:Src/main.c **** { - 9380 .loc 1 1736 3 is_stmt 1 view .LVU2973 -1736:Src/main.c **** { - 9381 .loc 1 1736 7 is_stmt 0 view .LVU2974 - 9382 0046 01A9 add r1, sp, #4 - 9383 0048 0748 ldr r0, .L508 - 9384 004a FFF7FEFF bl HAL_TIM_PWM_ConfigChannel - 9385 .LVL835: -1736:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 560 + 9943 .loc 1 1816 3 is_stmt 1 view .LVU3112 +1816:Src/main.c **** htim11.Init.Period = 91; + 9944 .loc 1 1816 27 is_stmt 0 view .LVU3113 + 9945 001e 8360 str r3, [r0, #8] +1817:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9946 .loc 1 1817 3 is_stmt 1 view .LVU3114 +1817:Src/main.c **** htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 9947 .loc 1 1817 22 is_stmt 0 view .LVU3115 + 9948 0020 5B22 movs r2, #91 + 9949 0022 C260 str r2, [r0, #12] +1818:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; + 9950 .loc 1 1818 3 is_stmt 1 view .LVU3116 +1818:Src/main.c **** htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; + 9951 .loc 1 1818 29 is_stmt 0 view .LVU3117 + 9952 0024 0361 str r3, [r0, #16] +1819:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) + 9953 .loc 1 1819 3 is_stmt 1 view .LVU3118 +1819:Src/main.c **** if (HAL_TIM_Base_Init(&htim11) != HAL_OK) + 9954 .loc 1 1819 33 is_stmt 0 view .LVU3119 + 9955 0026 8023 movs r3, #128 + 9956 0028 8361 str r3, [r0, #24] +1820:Src/main.c **** { + 9957 .loc 1 1820 3 is_stmt 1 view .LVU3120 +1820:Src/main.c **** { + 9958 .loc 1 1820 7 is_stmt 0 view .LVU3121 + 9959 002a FFF7FEFF bl HAL_TIM_Base_Init + 9960 .LVL908: +1820:Src/main.c **** { + 9961 .loc 1 1820 6 discriminator 1 view .LVU3122 + 9962 002e A8B9 cbnz r0, .L542 +1824:Src/main.c **** { + 9963 .loc 1 1824 3 is_stmt 1 view .LVU3123 +1824:Src/main.c **** { + 9964 .loc 1 1824 7 is_stmt 0 view .LVU3124 + 9965 0030 0D48 ldr r0, .L545 + 9966 0032 FFF7FEFF bl HAL_TIM_PWM_Init + 9967 .LVL909: +1824:Src/main.c **** { + 9968 .loc 1 1824 6 discriminator 1 view .LVU3125 + 9969 0036 98B9 cbnz r0, .L543 +1828:Src/main.c **** sConfigOC.Pulse = 91; + 9970 .loc 1 1828 3 is_stmt 1 view .LVU3126 +1828:Src/main.c **** sConfigOC.Pulse = 91; + 9971 .loc 1 1828 20 is_stmt 0 view .LVU3127 + 9972 0038 6023 movs r3, #96 + 9973 003a 0193 str r3, [sp, #4] +1829:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 9974 .loc 1 1829 3 is_stmt 1 view .LVU3128 +1829:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 9975 .loc 1 1829 19 is_stmt 0 view .LVU3129 + 9976 003c 5B23 movs r3, #91 + 9977 003e 0293 str r3, [sp, #8] +1830:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 9978 .loc 1 1830 3 is_stmt 1 view .LVU3130 +1830:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 9979 .loc 1 1830 24 is_stmt 0 view .LVU3131 + 9980 0040 0022 movs r2, #0 + ARM GAS /tmp/ccEQxcUB.s page 578 - 9386 .loc 1 1736 6 discriminator 1 view .LVU2975 - 9387 004e 48B9 cbnz r0, .L507 -1743:Src/main.c **** - 9388 .loc 1 1743 3 is_stmt 1 view .LVU2976 - 9389 0050 0548 ldr r0, .L508 - 9390 0052 FFF7FEFF bl HAL_TIM_MspPostInit - 9391 .LVL836: -1745:Src/main.c **** - 9392 .loc 1 1745 1 is_stmt 0 view .LVU2977 - 9393 0056 09B0 add sp, sp, #36 - 9394 .LCFI94: - 9395 .cfi_remember_state - 9396 .cfi_def_cfa_offset 4 - 9397 @ sp needed - 9398 0058 5DF804FB ldr pc, [sp], #4 - 9399 .L505: - 9400 .LCFI95: - 9401 .cfi_restore_state -1726:Src/main.c **** } - 9402 .loc 1 1726 5 is_stmt 1 view .LVU2978 - 9403 005c FFF7FEFF bl Error_Handler - 9404 .LVL837: - 9405 .L506: -1730:Src/main.c **** } - 9406 .loc 1 1730 5 view .LVU2979 - 9407 0060 FFF7FEFF bl Error_Handler - 9408 .LVL838: - 9409 .L507: -1738:Src/main.c **** } - 9410 .loc 1 1738 5 view .LVU2980 - 9411 0064 FFF7FEFF bl Error_Handler - 9412 .LVL839: - 9413 .L509: - 9414 .align 2 - 9415 .L508: - 9416 0068 00000000 .word htim11 - 9417 006c 00480140 .word 1073825792 - 9418 .cfi_endproc - 9419 .LFE1202: - 9421 .section .text.MX_TIM4_Init,"ax",%progbits - 9422 .align 1 - 9423 .syntax unified - 9424 .thumb - 9425 .thumb_func - 9427 MX_TIM4_Init: - 9428 .LFB1196: -1457:Src/main.c **** - 9429 .loc 1 1457 1 view -0 - 9430 .cfi_startproc - 9431 @ args = 0, pretend = 0, frame = 56 - 9432 @ frame_needed = 0, uses_anonymous_args = 0 - 9433 0000 00B5 push {lr} - 9434 .LCFI96: - 9435 .cfi_def_cfa_offset 4 - 9436 .cfi_offset 14, -4 - 9437 0002 8FB0 sub sp, sp, #60 - 9438 .LCFI97: - ARM GAS /tmp/ccwR4KB7.s page 561 - - - 9439 .cfi_def_cfa_offset 64 -1463:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; - 9440 .loc 1 1463 3 view .LVU2982 -1463:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; - 9441 .loc 1 1463 26 is_stmt 0 view .LVU2983 - 9442 0004 0023 movs r3, #0 - 9443 0006 0A93 str r3, [sp, #40] - 9444 0008 0B93 str r3, [sp, #44] - 9445 000a 0C93 str r3, [sp, #48] - 9446 000c 0D93 str r3, [sp, #52] -1464:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; - 9447 .loc 1 1464 3 is_stmt 1 view .LVU2984 -1464:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; - 9448 .loc 1 1464 27 is_stmt 0 view .LVU2985 - 9449 000e 0793 str r3, [sp, #28] - 9450 0010 0893 str r3, [sp, #32] - 9451 0012 0993 str r3, [sp, #36] -1465:Src/main.c **** - 9452 .loc 1 1465 3 is_stmt 1 view .LVU2986 -1465:Src/main.c **** - 9453 .loc 1 1465 22 is_stmt 0 view .LVU2987 - 9454 0014 0093 str r3, [sp] - 9455 0016 0193 str r3, [sp, #4] - 9456 0018 0293 str r3, [sp, #8] - 9457 001a 0393 str r3, [sp, #12] - 9458 001c 0493 str r3, [sp, #16] - 9459 001e 0593 str r3, [sp, #20] - 9460 0020 0693 str r3, [sp, #24] -1470:Src/main.c **** htim4.Init.Prescaler = 0; - 9461 .loc 1 1470 3 is_stmt 1 view .LVU2988 -1470:Src/main.c **** htim4.Init.Prescaler = 0; - 9462 .loc 1 1470 18 is_stmt 0 view .LVU2989 - 9463 0022 1E48 ldr r0, .L522 - 9464 0024 1E4A ldr r2, .L522+4 - 9465 0026 0260 str r2, [r0] -1471:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; - 9466 .loc 1 1471 3 is_stmt 1 view .LVU2990 -1471:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; - 9467 .loc 1 1471 24 is_stmt 0 view .LVU2991 - 9468 0028 4360 str r3, [r0, #4] -1472:Src/main.c **** htim4.Init.Period = 45; - 9469 .loc 1 1472 3 is_stmt 1 view .LVU2992 -1472:Src/main.c **** htim4.Init.Period = 45; - 9470 .loc 1 1472 26 is_stmt 0 view .LVU2993 - 9471 002a 8360 str r3, [r0, #8] -1473:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9472 .loc 1 1473 3 is_stmt 1 view .LVU2994 -1473:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; - 9473 .loc 1 1473 21 is_stmt 0 view .LVU2995 - 9474 002c 2D22 movs r2, #45 - 9475 002e C260 str r2, [r0, #12] -1474:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9476 .loc 1 1474 3 is_stmt 1 view .LVU2996 -1474:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; - 9477 .loc 1 1474 28 is_stmt 0 view .LVU2997 - 9478 0030 0361 str r3, [r0, #16] -1475:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) - ARM GAS /tmp/ccwR4KB7.s page 562 - - - 9479 .loc 1 1475 3 is_stmt 1 view .LVU2998 -1475:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) - 9480 .loc 1 1475 32 is_stmt 0 view .LVU2999 - 9481 0032 8361 str r3, [r0, #24] -1476:Src/main.c **** { - 9482 .loc 1 1476 3 is_stmt 1 view .LVU3000 -1476:Src/main.c **** { - 9483 .loc 1 1476 7 is_stmt 0 view .LVU3001 - 9484 0034 FFF7FEFF bl HAL_TIM_Base_Init - 9485 .LVL840: -1476:Src/main.c **** { - 9486 .loc 1 1476 6 discriminator 1 view .LVU3002 - 9487 0038 30BB cbnz r0, .L517 -1480:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) - 9488 .loc 1 1480 3 is_stmt 1 view .LVU3003 -1480:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) - 9489 .loc 1 1480 34 is_stmt 0 view .LVU3004 - 9490 003a 4FF48053 mov r3, #4096 - 9491 003e 0A93 str r3, [sp, #40] -1481:Src/main.c **** { - 9492 .loc 1 1481 3 is_stmt 1 view .LVU3005 -1481:Src/main.c **** { - 9493 .loc 1 1481 7 is_stmt 0 view .LVU3006 - 9494 0040 0AA9 add r1, sp, #40 - 9495 0042 1648 ldr r0, .L522 - 9496 0044 FFF7FEFF bl HAL_TIM_ConfigClockSource - 9497 .LVL841: -1481:Src/main.c **** { - 9498 .loc 1 1481 6 discriminator 1 view .LVU3007 - 9499 0048 00BB cbnz r0, .L518 -1485:Src/main.c **** { - 9500 .loc 1 1485 3 is_stmt 1 view .LVU3008 -1485:Src/main.c **** { - 9501 .loc 1 1485 7 is_stmt 0 view .LVU3009 - 9502 004a 1448 ldr r0, .L522 - 9503 004c FFF7FEFF bl HAL_TIM_PWM_Init - 9504 .LVL842: -1485:Src/main.c **** { - 9505 .loc 1 1485 6 discriminator 1 view .LVU3010 - 9506 0050 F0B9 cbnz r0, .L519 -1489:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - 9507 .loc 1 1489 3 is_stmt 1 view .LVU3011 -1489:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; - 9508 .loc 1 1489 37 is_stmt 0 view .LVU3012 - 9509 0052 0023 movs r3, #0 - 9510 0054 0793 str r3, [sp, #28] -1490:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) - 9511 .loc 1 1490 3 is_stmt 1 view .LVU3013 -1490:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) - 9512 .loc 1 1490 33 is_stmt 0 view .LVU3014 - 9513 0056 0993 str r3, [sp, #36] -1491:Src/main.c **** { - 9514 .loc 1 1491 3 is_stmt 1 view .LVU3015 -1491:Src/main.c **** { - 9515 .loc 1 1491 7 is_stmt 0 view .LVU3016 - 9516 0058 07A9 add r1, sp, #28 - 9517 005a 1048 ldr r0, .L522 - ARM GAS /tmp/ccwR4KB7.s page 563 - - - 9518 005c FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization - 9519 .LVL843: -1491:Src/main.c **** { - 9520 .loc 1 1491 6 discriminator 1 view .LVU3017 - 9521 0060 C0B9 cbnz r0, .L520 -1495:Src/main.c **** sConfigOC.Pulse = 22; - 9522 .loc 1 1495 3 is_stmt 1 view .LVU3018 -1495:Src/main.c **** sConfigOC.Pulse = 22; - 9523 .loc 1 1495 20 is_stmt 0 view .LVU3019 - 9524 0062 6023 movs r3, #96 - 9525 0064 0093 str r3, [sp] -1496:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - 9526 .loc 1 1496 3 is_stmt 1 view .LVU3020 -1496:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; - 9527 .loc 1 1496 19 is_stmt 0 view .LVU3021 - 9528 0066 1623 movs r3, #22 - 9529 0068 0193 str r3, [sp, #4] -1497:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - 9530 .loc 1 1497 3 is_stmt 1 view .LVU3022 -1497:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; - 9531 .loc 1 1497 24 is_stmt 0 view .LVU3023 - 9532 006a 0023 movs r3, #0 - 9533 006c 0293 str r3, [sp, #8] -1498:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) - 9534 .loc 1 1498 3 is_stmt 1 view .LVU3024 -1498:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) - 9535 .loc 1 1498 24 is_stmt 0 view .LVU3025 - 9536 006e 0493 str r3, [sp, #16] -1499:Src/main.c **** { - 9537 .loc 1 1499 3 is_stmt 1 view .LVU3026 -1499:Src/main.c **** { - 9538 .loc 1 1499 7 is_stmt 0 view .LVU3027 - 9539 0070 0822 movs r2, #8 - 9540 0072 6946 mov r1, sp - 9541 0074 0948 ldr r0, .L522 - 9542 0076 FFF7FEFF bl HAL_TIM_PWM_ConfigChannel - 9543 .LVL844: -1499:Src/main.c **** { - 9544 .loc 1 1499 6 discriminator 1 view .LVU3028 - 9545 007a 68B9 cbnz r0, .L521 -1506:Src/main.c **** - 9546 .loc 1 1506 3 is_stmt 1 view .LVU3029 - 9547 007c 0748 ldr r0, .L522 - 9548 007e FFF7FEFF bl HAL_TIM_MspPostInit - 9549 .LVL845: -1508:Src/main.c **** - 9550 .loc 1 1508 1 is_stmt 0 view .LVU3030 - 9551 0082 0FB0 add sp, sp, #60 - 9552 .LCFI98: - 9553 .cfi_remember_state - 9554 .cfi_def_cfa_offset 4 - 9555 @ sp needed - 9556 0084 5DF804FB ldr pc, [sp], #4 - 9557 .L517: - 9558 .LCFI99: - 9559 .cfi_restore_state -1478:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 564 - - - 9560 .loc 1 1478 5 is_stmt 1 view .LVU3031 - 9561 0088 FFF7FEFF bl Error_Handler - 9562 .LVL846: - 9563 .L518: -1483:Src/main.c **** } - 9564 .loc 1 1483 5 view .LVU3032 - 9565 008c FFF7FEFF bl Error_Handler - 9566 .LVL847: - 9567 .L519: -1487:Src/main.c **** } - 9568 .loc 1 1487 5 view .LVU3033 - 9569 0090 FFF7FEFF bl Error_Handler - 9570 .LVL848: - 9571 .L520: -1493:Src/main.c **** } - 9572 .loc 1 1493 5 view .LVU3034 - 9573 0094 FFF7FEFF bl Error_Handler - 9574 .LVL849: - 9575 .L521: -1501:Src/main.c **** } - 9576 .loc 1 1501 5 view .LVU3035 - 9577 0098 FFF7FEFF bl Error_Handler - 9578 .LVL850: - 9579 .L523: - 9580 .align 2 - 9581 .L522: - 9582 009c 00000000 .word htim4 - 9583 00a0 00080040 .word 1073743872 - 9584 .cfi_endproc - 9585 .LFE1196: - 9587 .section .text.SystemClock_Config,"ax",%progbits - 9588 .align 1 - 9589 .global SystemClock_Config - 9590 .syntax unified - 9591 .thumb - 9592 .thumb_func - 9594 SystemClock_Config: - 9595 .LFB1187: - 935:Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0}; - 9596 .loc 1 935 1 view -0 - 9597 .cfi_startproc - 9598 @ args = 0, pretend = 0, frame = 80 - 9599 @ frame_needed = 0, uses_anonymous_args = 0 - 9600 0000 00B5 push {lr} - 9601 .LCFI100: - 9602 .cfi_def_cfa_offset 4 - 9603 .cfi_offset 14, -4 - 9604 0002 95B0 sub sp, sp, #84 - 9605 .LCFI101: - 9606 .cfi_def_cfa_offset 88 - 936:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - 9607 .loc 1 936 3 view .LVU3037 - 936:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; - 9608 .loc 1 936 22 is_stmt 0 view .LVU3038 - 9609 0004 3422 movs r2, #52 - 9610 0006 0021 movs r1, #0 - 9611 0008 07A8 add r0, sp, #28 - ARM GAS /tmp/ccwR4KB7.s page 565 - - - 9612 000a FFF7FEFF bl memset - 9613 .LVL851: - 937:Src/main.c **** - 9614 .loc 1 937 3 is_stmt 1 view .LVU3039 - 937:Src/main.c **** - 9615 .loc 1 937 22 is_stmt 0 view .LVU3040 - 9616 000e 0023 movs r3, #0 - 9617 0010 0293 str r3, [sp, #8] - 9618 0012 0393 str r3, [sp, #12] - 9619 0014 0493 str r3, [sp, #16] - 9620 0016 0593 str r3, [sp, #20] - 9621 0018 0693 str r3, [sp, #24] - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9622 .loc 1 941 3 is_stmt 1 view .LVU3041 - 9623 .LBB634: - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9624 .loc 1 941 3 view .LVU3042 - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9625 .loc 1 941 3 view .LVU3043 - 9626 001a 244B ldr r3, .L532 - 9627 001c 1A6C ldr r2, [r3, #64] - 9628 001e 42F08052 orr r2, r2, #268435456 - 9629 0022 1A64 str r2, [r3, #64] - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9630 .loc 1 941 3 view .LVU3044 - 9631 0024 1B6C ldr r3, [r3, #64] - 9632 0026 03F08053 and r3, r3, #268435456 - 9633 002a 0093 str r3, [sp] - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9634 .loc 1 941 3 view .LVU3045 - 9635 002c 009B ldr r3, [sp] - 9636 .LBE634: - 941:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); - 9637 .loc 1 941 3 view .LVU3046 - 942:Src/main.c **** - 9638 .loc 1 942 3 view .LVU3047 - 9639 .LBB635: - 942:Src/main.c **** - 9640 .loc 1 942 3 view .LVU3048 - 942:Src/main.c **** - 9641 .loc 1 942 3 view .LVU3049 - 9642 002e 204B ldr r3, .L532+4 - 9643 0030 1A68 ldr r2, [r3] - 9644 0032 42F44042 orr r2, r2, #49152 - 9645 0036 1A60 str r2, [r3] - 942:Src/main.c **** - 9646 .loc 1 942 3 view .LVU3050 - 9647 0038 1B68 ldr r3, [r3] - 9648 003a 03F44043 and r3, r3, #49152 - 9649 003e 0193 str r3, [sp, #4] - 942:Src/main.c **** - 9650 .loc 1 942 3 view .LVU3051 - 9651 0040 019B ldr r3, [sp, #4] - 9652 .LBE635: - 942:Src/main.c **** - 9653 .loc 1 942 3 view .LVU3052 - 947:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; - ARM GAS /tmp/ccwR4KB7.s page 566 - - - 9654 .loc 1 947 3 view .LVU3053 - 947:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; - 9655 .loc 1 947 36 is_stmt 0 view .LVU3054 - 9656 0042 0123 movs r3, #1 - 9657 0044 0793 str r3, [sp, #28] - 948:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - 9658 .loc 1 948 3 is_stmt 1 view .LVU3055 - 948:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - 9659 .loc 1 948 30 is_stmt 0 view .LVU3056 - 9660 0046 4FF48033 mov r3, #65536 - 9661 004a 0893 str r3, [sp, #32] - 949:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; - 9662 .loc 1 949 3 is_stmt 1 view .LVU3057 - 949:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; - 9663 .loc 1 949 34 is_stmt 0 view .LVU3058 - 9664 004c 0223 movs r3, #2 - 9665 004e 0D93 str r3, [sp, #52] - 950:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; - 9666 .loc 1 950 3 is_stmt 1 view .LVU3059 - 950:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; - 9667 .loc 1 950 35 is_stmt 0 view .LVU3060 - 9668 0050 4FF48002 mov r2, #4194304 - 9669 0054 0E92 str r2, [sp, #56] - 951:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; - 9670 .loc 1 951 3 is_stmt 1 view .LVU3061 - 951:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; - 9671 .loc 1 951 30 is_stmt 0 view .LVU3062 - 9672 0056 1922 movs r2, #25 - 9673 0058 0F92 str r2, [sp, #60] - 952:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; - 9674 .loc 1 952 3 is_stmt 1 view .LVU3063 - 952:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; - 9675 .loc 1 952 30 is_stmt 0 view .LVU3064 - 9676 005a 4FF4B872 mov r2, #368 - 9677 005e 1092 str r2, [sp, #64] - 953:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; - 9678 .loc 1 953 3 is_stmt 1 view .LVU3065 - 953:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; - 9679 .loc 1 953 30 is_stmt 0 view .LVU3066 - 9680 0060 1193 str r3, [sp, #68] - 954:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; - 9681 .loc 1 954 3 is_stmt 1 view .LVU3067 - 954:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; - 9682 .loc 1 954 30 is_stmt 0 view .LVU3068 - 9683 0062 0822 movs r2, #8 - 9684 0064 1292 str r2, [sp, #72] - 955:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - 9685 .loc 1 955 3 is_stmt 1 view .LVU3069 - 955:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) - 9686 .loc 1 955 30 is_stmt 0 view .LVU3070 - 9687 0066 1393 str r3, [sp, #76] - 956:Src/main.c **** { - 9688 .loc 1 956 3 is_stmt 1 view .LVU3071 - 956:Src/main.c **** { - 9689 .loc 1 956 7 is_stmt 0 view .LVU3072 - 9690 0068 07A8 add r0, sp, #28 - 9691 006a FFF7FEFF bl HAL_RCC_OscConfig - ARM GAS /tmp/ccwR4KB7.s page 567 - - - 9692 .LVL852: - 956:Src/main.c **** { - 9693 .loc 1 956 6 discriminator 1 view .LVU3073 - 9694 006e B0B9 cbnz r0, .L529 - 963:Src/main.c **** { - 9695 .loc 1 963 3 is_stmt 1 view .LVU3074 - 963:Src/main.c **** { - 9696 .loc 1 963 7 is_stmt 0 view .LVU3075 - 9697 0070 FFF7FEFF bl HAL_PWREx_EnableOverDrive - 9698 .LVL853: - 963:Src/main.c **** { - 9699 .loc 1 963 6 discriminator 1 view .LVU3076 - 9700 0074 A8B9 cbnz r0, .L530 - 970:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; - 9701 .loc 1 970 3 is_stmt 1 view .LVU3077 - 970:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; - 9702 .loc 1 970 31 is_stmt 0 view .LVU3078 - 9703 0076 0F23 movs r3, #15 - 9704 0078 0293 str r3, [sp, #8] - 972:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - 9705 .loc 1 972 3 is_stmt 1 view .LVU3079 - 972:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; - 9706 .loc 1 972 34 is_stmt 0 view .LVU3080 - 9707 007a 0223 movs r3, #2 - 9708 007c 0393 str r3, [sp, #12] - 973:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; - 9709 .loc 1 973 3 is_stmt 1 view .LVU3081 - 973:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; - 9710 .loc 1 973 35 is_stmt 0 view .LVU3082 - 9711 007e 0023 movs r3, #0 - 9712 0080 0493 str r3, [sp, #16] - 974:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; - 9713 .loc 1 974 3 is_stmt 1 view .LVU3083 - 974:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; - 9714 .loc 1 974 36 is_stmt 0 view .LVU3084 - 9715 0082 4FF4A053 mov r3, #5120 - 9716 0086 0593 str r3, [sp, #20] - 975:Src/main.c **** - 9717 .loc 1 975 3 is_stmt 1 view .LVU3085 - 975:Src/main.c **** - 9718 .loc 1 975 36 is_stmt 0 view .LVU3086 - 9719 0088 4FF48053 mov r3, #4096 - 9720 008c 0693 str r3, [sp, #24] - 977:Src/main.c **** { - 9721 .loc 1 977 3 is_stmt 1 view .LVU3087 - 977:Src/main.c **** { - 9722 .loc 1 977 7 is_stmt 0 view .LVU3088 - 9723 008e 0621 movs r1, #6 - 9724 0090 02A8 add r0, sp, #8 - 9725 0092 FFF7FEFF bl HAL_RCC_ClockConfig - 9726 .LVL854: - 977:Src/main.c **** { - 9727 .loc 1 977 6 discriminator 1 view .LVU3089 - 9728 0096 30B9 cbnz r0, .L531 - 981:Src/main.c **** - 9729 .loc 1 981 1 view .LVU3090 - 9730 0098 15B0 add sp, sp, #84 - ARM GAS /tmp/ccwR4KB7.s page 568 - - - 9731 .LCFI102: - 9732 .cfi_remember_state - 9733 .cfi_def_cfa_offset 4 - 9734 @ sp needed - 9735 009a 5DF804FB ldr pc, [sp], #4 - 9736 .L529: - 9737 .LCFI103: - 9738 .cfi_restore_state - 958:Src/main.c **** } - 9739 .loc 1 958 5 is_stmt 1 view .LVU3091 - 9740 009e FFF7FEFF bl Error_Handler - 9741 .LVL855: - 9742 .L530: - 965:Src/main.c **** } - 9743 .loc 1 965 5 view .LVU3092 - 9744 00a2 FFF7FEFF bl Error_Handler - 9745 .LVL856: - 9746 .L531: - 979:Src/main.c **** } - 9747 .loc 1 979 5 view .LVU3093 - 9748 00a6 FFF7FEFF bl Error_Handler - 9749 .LVL857: - 9750 .L533: - 9751 00aa 00BF .align 2 - 9752 .L532: - 9753 00ac 00380240 .word 1073887232 - 9754 00b0 00700040 .word 1073770496 - 9755 .cfi_endproc - 9756 .LFE1187: - 9758 .section .text.main,"ax",%progbits - 9759 .align 1 - 9760 .global main - 9761 .syntax unified - 9762 .thumb - 9763 .thumb_func - 9765 main: - 9766 .LFB1186: - 236:Src/main.c **** - 9767 .loc 1 236 1 view -0 - 9768 .cfi_startproc - 9769 @ args = 0, pretend = 0, frame = 8 - 9770 @ frame_needed = 0, uses_anonymous_args = 0 - 9771 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} - 9772 .LCFI104: - 9773 .cfi_def_cfa_offset 28 - 9774 .cfi_offset 4, -28 - 9775 .cfi_offset 5, -24 - 9776 .cfi_offset 6, -20 - 9777 .cfi_offset 7, -16 - 9778 .cfi_offset 8, -12 - 9779 .cfi_offset 9, -8 - 9780 .cfi_offset 14, -4 - 9781 0004 85B0 sub sp, sp, #20 - 9782 .LCFI105: - 9783 .cfi_def_cfa_offset 48 - 239:Src/main.c **** /* USER CODE END 1 */ - 9784 .loc 1 239 2 view .LVU3095 - ARM GAS /tmp/ccwR4KB7.s page 569 - - - 245:Src/main.c **** - 9785 .loc 1 245 3 view .LVU3096 - 9786 0006 FFF7FEFF bl HAL_Init - 9787 .LVL858: - 252:Src/main.c **** - 9788 .loc 1 252 3 view .LVU3097 - 9789 000a FFF7FEFF bl SystemClock_Config - 9790 .LVL859: - 259:Src/main.c **** MX_DMA_Init(); - 9791 .loc 1 259 3 view .LVU3098 - 9792 000e FFF7FEFF bl MX_GPIO_Init - 9793 .LVL860: - 260:Src/main.c **** MX_SPI4_Init(); - 9794 .loc 1 260 3 view .LVU3099 - 9795 0012 FFF7FEFF bl MX_DMA_Init - 9796 .LVL861: - 261:Src/main.c **** MX_FATFS_Init(); - 9797 .loc 1 261 3 view .LVU3100 - 9798 0016 FFF7FEFF bl MX_SPI4_Init - 9799 .LVL862: - 262:Src/main.c **** MX_TIM2_Init(); - 9800 .loc 1 262 3 view .LVU3101 - 9801 001a FFF7FEFF bl MX_FATFS_Init - 9802 .LVL863: - 263:Src/main.c **** MX_TIM5_Init(); - 9803 .loc 1 263 3 view .LVU3102 - 9804 001e FFF7FEFF bl MX_TIM2_Init - 9805 .LVL864: - 264:Src/main.c **** MX_ADC1_Init(); - 9806 .loc 1 264 3 view .LVU3103 - 9807 0022 FFF7FEFF bl MX_TIM5_Init - 9808 .LVL865: - 265:Src/main.c **** MX_ADC3_Init(); - 9809 .loc 1 265 3 view .LVU3104 - 9810 0026 FFF7FEFF bl MX_ADC1_Init - 9811 .LVL866: - 266:Src/main.c **** MX_SPI2_Init(); - 9812 .loc 1 266 3 view .LVU3105 - 9813 002a FFF7FEFF bl MX_ADC3_Init - 9814 .LVL867: - 267:Src/main.c **** MX_SPI5_Init(); - 9815 .loc 1 267 3 view .LVU3106 - 9816 002e FFF7FEFF bl MX_SPI2_Init - 9817 .LVL868: - 268:Src/main.c **** MX_SPI6_Init(); - 9818 .loc 1 268 3 view .LVU3107 - 9819 0032 FFF7FEFF bl MX_SPI5_Init - 9820 .LVL869: - 269:Src/main.c **** MX_USART1_UART_Init(); - 9821 .loc 1 269 3 view .LVU3108 - 9822 0036 FFF7FEFF bl MX_SPI6_Init - 9823 .LVL870: - 270:Src/main.c **** MX_SDMMC1_SD_Init(); - 9824 .loc 1 270 3 view .LVU3109 - 9825 003a FFF7FEFF bl MX_USART1_UART_Init - 9826 .LVL871: - 271:Src/main.c **** MX_TIM7_Init(); - ARM GAS /tmp/ccwR4KB7.s page 570 - - - 9827 .loc 1 271 3 view .LVU3110 - 9828 003e FFF7FEFF bl MX_SDMMC1_SD_Init - 9829 .LVL872: - 272:Src/main.c **** MX_TIM6_Init(); - 9830 .loc 1 272 3 view .LVU3111 - 9831 0042 FFF7FEFF bl MX_TIM7_Init - 9832 .LVL873: - 273:Src/main.c **** MX_TIM10_Init(); - 9833 .loc 1 273 3 view .LVU3112 - 9834 0046 FFF7FEFF bl MX_TIM6_Init - 9835 .LVL874: - 274:Src/main.c **** MX_UART8_Init(); - 9836 .loc 1 274 3 view .LVU3113 - 9837 004a FFF7FEFF bl MX_TIM10_Init - 9838 .LVL875: - 275:Src/main.c **** MX_TIM8_Init(); - 9839 .loc 1 275 3 view .LVU3114 - 9840 004e FFF7FEFF bl MX_UART8_Init - 9841 .LVL876: - 276:Src/main.c **** MX_TIM11_Init(); - 9842 .loc 1 276 3 view .LVU3115 - 9843 0052 FFF7FEFF bl MX_TIM8_Init - 9844 .LVL877: - 277:Src/main.c **** MX_TIM4_Init(); - 9845 .loc 1 277 3 view .LVU3116 - 9846 0056 FFF7FEFF bl MX_TIM11_Init - 9847 .LVL878: - 278:Src/main.c **** /* USER CODE BEGIN 2 */ - 9848 .loc 1 278 3 view .LVU3117 - 9849 005a FFF7FEFF bl MX_TIM4_Init - 9850 .LVL879: - 280:Src/main.c **** //HAL_TIM_Base_Start(&htim11); - 9851 .loc 1 280 2 view .LVU3118 - 9852 005e FFF7FEFF bl Init_params - 9853 .LVL880: - 291:Src/main.c **** - 9854 .loc 1 291 2 view .LVU3119 - 291:Src/main.c **** - 9855 .loc 1 291 14 is_stmt 0 view .LVU3120 - 9856 0062 854A ldr r2, .L612 - 9857 0064 3523 movs r3, #53 - 9858 0066 D362 str r3, [r2, #44] - 293:Src/main.c **** - 9859 .loc 1 293 2 is_stmt 1 view .LVU3121 - 293:Src/main.c **** - 9860 .loc 1 293 23 is_stmt 0 view .LVU3122 - 9861 0068 D36A ldr r3, [r2, #44] - 293:Src/main.c **** - 9862 .loc 1 293 30 view .LVU3123 - 9863 006a 0133 adds r3, r3, #1 - 293:Src/main.c **** - 9864 .loc 1 293 33 view .LVU3124 - 9865 006c 5B08 lsrs r3, r3, #1 - 293:Src/main.c **** - 9866 .loc 1 293 36 view .LVU3125 - 9867 006e 013B subs r3, r3, #1 - 293:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 571 - - - 9868 .loc 1 293 15 view .LVU3126 - 9869 0070 D363 str r3, [r2, #60] - 298:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 9870 .loc 1 298 2 is_stmt 1 view .LVU3127 - 298:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 9871 .loc 1 298 23 is_stmt 0 view .LVU3128 - 9872 0072 D36A ldr r3, [r2, #44] - 298:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 9873 .loc 1 298 36 view .LVU3129 - 9874 0074 9B00 lsls r3, r3, #2 - 9875 0076 0333 adds r3, r3, #3 - 298:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; - 9876 .loc 1 298 15 view .LVU3130 - 9877 0078 02F5A032 add r2, r2, #81920 - 9878 007c D362 str r3, [r2, #44] - 299:Src/main.c **** - 9879 .loc 1 299 2 is_stmt 1 view .LVU3131 - 299:Src/main.c **** - 9880 .loc 1 299 25 is_stmt 0 view .LVU3132 - 9881 007e D36A ldr r3, [r2, #44] - 299:Src/main.c **** - 9882 .loc 1 299 32 view .LVU3133 - 9883 0080 0133 adds r3, r3, #1 - 299:Src/main.c **** - 9884 .loc 1 299 35 view .LVU3134 - 9885 0082 5B08 lsrs r3, r3, #1 - 299:Src/main.c **** - 9886 .loc 1 299 38 view .LVU3135 - 9887 0084 013B subs r3, r3, #1 - 299:Src/main.c **** - 9888 .loc 1 299 16 view .LVU3136 - 9889 0086 5363 str r3, [r2, #52] - 9890 0088 4CE0 b .L535 - 9891 .L602: - 313:Src/main.c **** { - 9892 .loc 1 313 85 discriminator 1 view .LVU3137 - 9893 008a 7C4B ldr r3, .L612+4 - 9894 008c 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 313:Src/main.c **** { - 9895 .loc 1 313 73 discriminator 1 view .LVU3138 - 9896 008e 002B cmp r3, #0 - 9897 0090 4FD1 bne .L536 - 9898 .L537: - 9899 .LBB636: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9900 .loc 7 3073 3 is_stmt 1 discriminator 1 view .LVU3139 - 9901 .LBB637: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9902 .loc 7 3073 3 discriminator 1 view .LVU3140 -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9903 .loc 7 3073 3 discriminator 1 view .LVU3141 -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9904 .loc 7 3073 3 discriminator 1 view .LVU3142 - 9905 .LVL881: - 9906 .LBB638: - 9907 .LBI638: -1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { - ARM GAS /tmp/ccwR4KB7.s page 572 - - - 9908 .loc 8 1068 31 view .LVU3143 - 9909 .LBB639: -1070:Drivers/CMSIS/Include/cmsis_gcc.h **** - 9910 .loc 8 1070 5 view .LVU3144 -1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 9911 .loc 8 1072 4 view .LVU3145 - 9912 0092 7B4A ldr r2, .L612+8 - 9913 .syntax unified - 9914 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 9915 0094 52E8003F ldrex r3, [r2] - 9916 @ 0 "" 2 - 9917 .LVL882: -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 9918 .loc 8 1073 4 view .LVU3146 -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 9919 .loc 8 1073 4 is_stmt 0 view .LVU3147 - 9920 .thumb - 9921 .syntax unified - 9922 .LBE639: - 9923 .LBE638: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9924 .loc 7 3073 3 discriminator 1 view .LVU3148 - 9925 0098 43F48073 orr r3, r3, #256 - 9926 .LVL883: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9927 .loc 7 3073 3 is_stmt 1 discriminator 1 view .LVU3149 - 9928 .LBB640: - 9929 .LBI640: -1119:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 9930 .loc 8 1119 31 view .LVU3150 - 9931 .LBB641: -1121:Drivers/CMSIS/Include/cmsis_gcc.h **** - 9932 .loc 8 1121 4 view .LVU3151 -1123:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 9933 .loc 8 1123 4 view .LVU3152 - 9934 .syntax unified - 9935 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 9936 009c 42E80031 strex r1, r3, [r2] - 9937 @ 0 "" 2 - 9938 .LVL884: - 9939 .loc 8 1124 4 view .LVU3153 - 9940 .loc 8 1124 4 is_stmt 0 view .LVU3154 - 9941 .thumb - 9942 .syntax unified - 9943 .LBE641: - 9944 .LBE640: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9945 .loc 7 3073 3 discriminator 1 view .LVU3155 - 9946 00a0 0029 cmp r1, #0 - 9947 00a2 F6D1 bne .L537 - 9948 .LVL885: - 9949 .L538: -3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9950 .loc 7 3073 3 discriminator 1 view .LVU3156 - 9951 .LBE637: - 9952 .LBE636: - 9953 .LBB642: - ARM GAS /tmp/ccwR4KB7.s page 573 - - -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9954 .loc 7 3040 3 is_stmt 1 discriminator 1 view .LVU3157 - 9955 .LBB643: -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9956 .loc 7 3040 3 discriminator 1 view .LVU3158 -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9957 .loc 7 3040 3 discriminator 1 view .LVU3159 -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9958 .loc 7 3040 3 discriminator 1 view .LVU3160 - 9959 .LBB644: - 9960 .LBI644: -1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 9961 .loc 8 1068 31 view .LVU3161 - 9962 .LBB645: -1070:Drivers/CMSIS/Include/cmsis_gcc.h **** - 9963 .loc 8 1070 5 view .LVU3162 -1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 9964 .loc 8 1072 4 view .LVU3163 - 9965 00a4 764A ldr r2, .L612+8 - 9966 .syntax unified - 9967 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 9968 00a6 52E8003F ldrex r3, [r2] - 9969 @ 0 "" 2 - 9970 .LVL886: -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 9971 .loc 8 1073 4 view .LVU3164 -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 9972 .loc 8 1073 4 is_stmt 0 view .LVU3165 - 9973 .thumb - 9974 .syntax unified - 9975 .LBE645: - 9976 .LBE644: -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9977 .loc 7 3040 3 discriminator 1 view .LVU3166 - 9978 00aa 43F02003 orr r3, r3, #32 - 9979 .LVL887: -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9980 .loc 7 3040 3 is_stmt 1 discriminator 1 view .LVU3167 - 9981 .LBB646: - 9982 .LBI646: -1119:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 9983 .loc 8 1119 31 view .LVU3168 - 9984 .LBB647: -1121:Drivers/CMSIS/Include/cmsis_gcc.h **** - 9985 .loc 8 1121 4 view .LVU3169 -1123:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 9986 .loc 8 1123 4 view .LVU3170 - 9987 .syntax unified - 9988 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 9989 00ae 42E80031 strex r1, r3, [r2] - 9990 @ 0 "" 2 - 9991 .LVL888: - 9992 .loc 8 1124 4 view .LVU3171 - 9993 .loc 8 1124 4 is_stmt 0 view .LVU3172 - 9994 .thumb - 9995 .syntax unified - 9996 .LBE647: - ARM GAS /tmp/ccwR4KB7.s page 574 - - - 9997 .LBE646: -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 9998 .loc 7 3040 3 discriminator 1 view .LVU3173 - 9999 00b2 0029 cmp r1, #0 - 10000 00b4 F6D1 bne .L538 - 10001 .LVL889: - 10002 .L539: -3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10003 .loc 7 3040 3 discriminator 1 view .LVU3174 - 10004 .LBE643: - 10005 .LBE642: - 10006 .LBB648: -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10007 .loc 7 3136 3 is_stmt 1 discriminator 1 view .LVU3175 - 10008 .LBB649: -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10009 .loc 7 3136 3 discriminator 1 view .LVU3176 -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10010 .loc 7 3136 3 discriminator 1 view .LVU3177 -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10011 .loc 7 3136 3 discriminator 1 view .LVU3178 - 10012 .LBB650: - 10013 .LBI650: -1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 10014 .loc 8 1068 31 view .LVU3179 - 10015 .LBB651: -1070:Drivers/CMSIS/Include/cmsis_gcc.h **** - 10016 .loc 8 1070 5 view .LVU3180 -1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 10017 .loc 8 1072 4 view .LVU3181 - 10018 00b6 724A ldr r2, .L612+8 - 10019 00b8 02F10803 add r3, r2, #8 - 10020 .syntax unified - 10021 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 10022 00bc 53E8003F ldrex r3, [r3] - 10023 @ 0 "" 2 - 10024 .LVL890: -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 10025 .loc 8 1073 4 view .LVU3182 -1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } - 10026 .loc 8 1073 4 is_stmt 0 view .LVU3183 - 10027 .thumb + 9981 0042 0392 str r2, [sp, #12] +1831:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + 9982 .loc 1 1831 3 is_stmt 1 view .LVU3132 +1831:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim11, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + 9983 .loc 1 1831 24 is_stmt 0 view .LVU3133 + 9984 0044 0592 str r2, [sp, #20] +1832:Src/main.c **** { + 9985 .loc 1 1832 3 is_stmt 1 view .LVU3134 +1832:Src/main.c **** { + 9986 .loc 1 1832 7 is_stmt 0 view .LVU3135 + 9987 0046 01A9 add r1, sp, #4 + 9988 0048 0748 ldr r0, .L545 + 9989 004a FFF7FEFF bl HAL_TIM_PWM_ConfigChannel + 9990 .LVL910: +1832:Src/main.c **** { + 9991 .loc 1 1832 6 discriminator 1 view .LVU3136 + 9992 004e 48B9 cbnz r0, .L544 +1839:Src/main.c **** + 9993 .loc 1 1839 3 is_stmt 1 view .LVU3137 + 9994 0050 0548 ldr r0, .L545 + 9995 0052 FFF7FEFF bl HAL_TIM_MspPostInit + 9996 .LVL911: +1841:Src/main.c **** + 9997 .loc 1 1841 1 is_stmt 0 view .LVU3138 + 9998 0056 09B0 add sp, sp, #36 + 9999 .LCFI96: + 10000 .cfi_remember_state + 10001 .cfi_def_cfa_offset 4 + 10002 @ sp needed + 10003 0058 5DF804FB ldr pc, [sp], #4 + 10004 .L542: + 10005 .LCFI97: + 10006 .cfi_restore_state +1822:Src/main.c **** } + 10007 .loc 1 1822 5 is_stmt 1 view .LVU3139 + 10008 005c FFF7FEFF bl Error_Handler + 10009 .LVL912: + 10010 .L543: +1826:Src/main.c **** } + 10011 .loc 1 1826 5 view .LVU3140 + 10012 0060 FFF7FEFF bl Error_Handler + 10013 .LVL913: + 10014 .L544: +1834:Src/main.c **** } + 10015 .loc 1 1834 5 view .LVU3141 + 10016 0064 FFF7FEFF bl Error_Handler + 10017 .LVL914: + 10018 .L546: + 10019 .align 2 + 10020 .L545: + 10021 0068 00000000 .word htim11 + 10022 006c 00480140 .word 1073825792 + 10023 .cfi_endproc + 10024 .LFE1202: + 10026 .section .text.MX_TIM4_Init,"ax",%progbits + 10027 .align 1 10028 .syntax unified - 10029 .LBE651: - 10030 .LBE650: -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10031 .loc 7 3136 3 discriminator 1 view .LVU3184 - 10032 00c0 43F00103 orr r3, r3, #1 - 10033 .LVL891: -3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10034 .loc 7 3136 3 is_stmt 1 discriminator 1 view .LVU3185 - 10035 .LBB652: - 10036 .LBI652: + ARM GAS /tmp/ccEQxcUB.s page 579 + + + 10029 .thumb + 10030 .thumb_func + 10032 MX_TIM4_Init: + 10033 .LFB1196: +1553:Src/main.c **** + 10034 .loc 1 1553 1 view -0 + 10035 .cfi_startproc + 10036 @ args = 0, pretend = 0, frame = 56 + 10037 @ frame_needed = 0, uses_anonymous_args = 0 + 10038 0000 00B5 push {lr} + 10039 .LCFI98: + 10040 .cfi_def_cfa_offset 4 + 10041 .cfi_offset 14, -4 + 10042 0002 8FB0 sub sp, sp, #60 + 10043 .LCFI99: + 10044 .cfi_def_cfa_offset 64 +1559:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; + 10045 .loc 1 1559 3 view .LVU3143 +1559:Src/main.c **** TIM_MasterConfigTypeDef sMasterConfig = {0}; + 10046 .loc 1 1559 26 is_stmt 0 view .LVU3144 + 10047 0004 0023 movs r3, #0 + 10048 0006 0A93 str r3, [sp, #40] + 10049 0008 0B93 str r3, [sp, #44] + 10050 000a 0C93 str r3, [sp, #48] + 10051 000c 0D93 str r3, [sp, #52] +1560:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; + 10052 .loc 1 1560 3 is_stmt 1 view .LVU3145 +1560:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; + 10053 .loc 1 1560 27 is_stmt 0 view .LVU3146 + 10054 000e 0793 str r3, [sp, #28] + 10055 0010 0893 str r3, [sp, #32] + 10056 0012 0993 str r3, [sp, #36] +1561:Src/main.c **** + 10057 .loc 1 1561 3 is_stmt 1 view .LVU3147 +1561:Src/main.c **** + 10058 .loc 1 1561 22 is_stmt 0 view .LVU3148 + 10059 0014 0093 str r3, [sp] + 10060 0016 0193 str r3, [sp, #4] + 10061 0018 0293 str r3, [sp, #8] + 10062 001a 0393 str r3, [sp, #12] + 10063 001c 0493 str r3, [sp, #16] + 10064 001e 0593 str r3, [sp, #20] + 10065 0020 0693 str r3, [sp, #24] +1566:Src/main.c **** htim4.Init.Prescaler = 0; + 10066 .loc 1 1566 3 is_stmt 1 view .LVU3149 +1566:Src/main.c **** htim4.Init.Prescaler = 0; + 10067 .loc 1 1566 18 is_stmt 0 view .LVU3150 + 10068 0022 1E48 ldr r0, .L559 + 10069 0024 1E4A ldr r2, .L559+4 + 10070 0026 0260 str r2, [r0] +1567:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; + 10071 .loc 1 1567 3 is_stmt 1 view .LVU3151 +1567:Src/main.c **** htim4.Init.CounterMode = TIM_COUNTERMODE_UP; + 10072 .loc 1 1567 24 is_stmt 0 view .LVU3152 + 10073 0028 4360 str r3, [r0, #4] +1568:Src/main.c **** htim4.Init.Period = 45; + 10074 .loc 1 1568 3 is_stmt 1 view .LVU3153 + ARM GAS /tmp/ccEQxcUB.s page 580 + + +1568:Src/main.c **** htim4.Init.Period = 45; + 10075 .loc 1 1568 26 is_stmt 0 view .LVU3154 + 10076 002a 8360 str r3, [r0, #8] +1569:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 10077 .loc 1 1569 3 is_stmt 1 view .LVU3155 +1569:Src/main.c **** htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 10078 .loc 1 1569 21 is_stmt 0 view .LVU3156 + 10079 002c 2D22 movs r2, #45 + 10080 002e C260 str r2, [r0, #12] +1570:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 10081 .loc 1 1570 3 is_stmt 1 view .LVU3157 +1570:Src/main.c **** htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 10082 .loc 1 1570 28 is_stmt 0 view .LVU3158 + 10083 0030 0361 str r3, [r0, #16] +1571:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) + 10084 .loc 1 1571 3 is_stmt 1 view .LVU3159 +1571:Src/main.c **** if (HAL_TIM_Base_Init(&htim4) != HAL_OK) + 10085 .loc 1 1571 32 is_stmt 0 view .LVU3160 + 10086 0032 8361 str r3, [r0, #24] +1572:Src/main.c **** { + 10087 .loc 1 1572 3 is_stmt 1 view .LVU3161 +1572:Src/main.c **** { + 10088 .loc 1 1572 7 is_stmt 0 view .LVU3162 + 10089 0034 FFF7FEFF bl HAL_TIM_Base_Init + 10090 .LVL915: +1572:Src/main.c **** { + 10091 .loc 1 1572 6 discriminator 1 view .LVU3163 + 10092 0038 30BB cbnz r0, .L554 +1576:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) + 10093 .loc 1 1576 3 is_stmt 1 view .LVU3164 +1576:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim4, &sClockSourceConfig) != HAL_OK) + 10094 .loc 1 1576 34 is_stmt 0 view .LVU3165 + 10095 003a 4FF48053 mov r3, #4096 + 10096 003e 0A93 str r3, [sp, #40] +1577:Src/main.c **** { + 10097 .loc 1 1577 3 is_stmt 1 view .LVU3166 +1577:Src/main.c **** { + 10098 .loc 1 1577 7 is_stmt 0 view .LVU3167 + 10099 0040 0AA9 add r1, sp, #40 + 10100 0042 1648 ldr r0, .L559 + 10101 0044 FFF7FEFF bl HAL_TIM_ConfigClockSource + 10102 .LVL916: +1577:Src/main.c **** { + 10103 .loc 1 1577 6 discriminator 1 view .LVU3168 + 10104 0048 00BB cbnz r0, .L555 +1581:Src/main.c **** { + 10105 .loc 1 1581 3 is_stmt 1 view .LVU3169 +1581:Src/main.c **** { + 10106 .loc 1 1581 7 is_stmt 0 view .LVU3170 + 10107 004a 1448 ldr r0, .L559 + 10108 004c FFF7FEFF bl HAL_TIM_PWM_Init + 10109 .LVL917: +1581:Src/main.c **** { + 10110 .loc 1 1581 6 discriminator 1 view .LVU3171 + 10111 0050 F0B9 cbnz r0, .L556 +1585:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + 10112 .loc 1 1585 3 is_stmt 1 view .LVU3172 + ARM GAS /tmp/ccEQxcUB.s page 581 + + +1585:Src/main.c **** sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE; + 10113 .loc 1 1585 37 is_stmt 0 view .LVU3173 + 10114 0052 0023 movs r3, #0 + 10115 0054 0793 str r3, [sp, #28] +1586:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) + 10116 .loc 1 1586 3 is_stmt 1 view .LVU3174 +1586:Src/main.c **** if (HAL_TIMEx_MasterConfigSynchronization(&htim4, &sMasterConfig) != HAL_OK) + 10117 .loc 1 1586 33 is_stmt 0 view .LVU3175 + 10118 0056 0993 str r3, [sp, #36] +1587:Src/main.c **** { + 10119 .loc 1 1587 3 is_stmt 1 view .LVU3176 +1587:Src/main.c **** { + 10120 .loc 1 1587 7 is_stmt 0 view .LVU3177 + 10121 0058 07A9 add r1, sp, #28 + 10122 005a 1048 ldr r0, .L559 + 10123 005c FFF7FEFF bl HAL_TIMEx_MasterConfigSynchronization + 10124 .LVL918: +1587:Src/main.c **** { + 10125 .loc 1 1587 6 discriminator 1 view .LVU3178 + 10126 0060 C0B9 cbnz r0, .L557 +1591:Src/main.c **** sConfigOC.Pulse = 22; + 10127 .loc 1 1591 3 is_stmt 1 view .LVU3179 +1591:Src/main.c **** sConfigOC.Pulse = 22; + 10128 .loc 1 1591 20 is_stmt 0 view .LVU3180 + 10129 0062 6023 movs r3, #96 + 10130 0064 0093 str r3, [sp] +1592:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 10131 .loc 1 1592 3 is_stmt 1 view .LVU3181 +1592:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 10132 .loc 1 1592 19 is_stmt 0 view .LVU3182 + 10133 0066 1623 movs r3, #22 + 10134 0068 0193 str r3, [sp, #4] +1593:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 10135 .loc 1 1593 3 is_stmt 1 view .LVU3183 +1593:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 10136 .loc 1 1593 24 is_stmt 0 view .LVU3184 + 10137 006a 0023 movs r3, #0 + 10138 006c 0293 str r3, [sp, #8] +1594:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) + 10139 .loc 1 1594 3 is_stmt 1 view .LVU3185 +1594:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim4, &sConfigOC, TIM_CHANNEL_3) != HAL_OK) + 10140 .loc 1 1594 24 is_stmt 0 view .LVU3186 + 10141 006e 0493 str r3, [sp, #16] +1595:Src/main.c **** { + 10142 .loc 1 1595 3 is_stmt 1 view .LVU3187 +1595:Src/main.c **** { + 10143 .loc 1 1595 7 is_stmt 0 view .LVU3188 + 10144 0070 0822 movs r2, #8 + 10145 0072 6946 mov r1, sp + 10146 0074 0948 ldr r0, .L559 + 10147 0076 FFF7FEFF bl HAL_TIM_PWM_ConfigChannel + 10148 .LVL919: +1595:Src/main.c **** { + 10149 .loc 1 1595 6 discriminator 1 view .LVU3189 + 10150 007a 68B9 cbnz r0, .L558 +1602:Src/main.c **** + 10151 .loc 1 1602 3 is_stmt 1 view .LVU3190 + ARM GAS /tmp/ccEQxcUB.s page 582 + + + 10152 007c 0748 ldr r0, .L559 + 10153 007e FFF7FEFF bl HAL_TIM_MspPostInit + 10154 .LVL920: +1604:Src/main.c **** + 10155 .loc 1 1604 1 is_stmt 0 view .LVU3191 + 10156 0082 0FB0 add sp, sp, #60 + 10157 .LCFI100: + 10158 .cfi_remember_state + 10159 .cfi_def_cfa_offset 4 + 10160 @ sp needed + 10161 0084 5DF804FB ldr pc, [sp], #4 + 10162 .L554: + 10163 .LCFI101: + 10164 .cfi_restore_state +1574:Src/main.c **** } + 10165 .loc 1 1574 5 is_stmt 1 view .LVU3192 + 10166 0088 FFF7FEFF bl Error_Handler + 10167 .LVL921: + 10168 .L555: +1579:Src/main.c **** } + 10169 .loc 1 1579 5 view .LVU3193 + 10170 008c FFF7FEFF bl Error_Handler + 10171 .LVL922: + 10172 .L556: +1583:Src/main.c **** } + 10173 .loc 1 1583 5 view .LVU3194 + 10174 0090 FFF7FEFF bl Error_Handler + 10175 .LVL923: + 10176 .L557: +1589:Src/main.c **** } + 10177 .loc 1 1589 5 view .LVU3195 + 10178 0094 FFF7FEFF bl Error_Handler + 10179 .LVL924: + 10180 .L558: +1597:Src/main.c **** } + 10181 .loc 1 1597 5 view .LVU3196 + 10182 0098 FFF7FEFF bl Error_Handler + 10183 .LVL925: + 10184 .L560: + 10185 .align 2 + 10186 .L559: + 10187 009c 00000000 .word htim4 + 10188 00a0 00080040 .word 1073743872 + 10189 .cfi_endproc + 10190 .LFE1196: + 10192 .section .text.MX_TIM1_Init,"ax",%progbits + 10193 .align 1 + 10194 .syntax unified + 10195 .thumb + 10196 .thumb_func + 10198 MX_TIM1_Init: + 10199 .LFB1203: +1849:Src/main.c **** + 10200 .loc 1 1849 1 view -0 + 10201 .cfi_startproc + 10202 @ args = 0, pretend = 0, frame = 88 + 10203 @ frame_needed = 0, uses_anonymous_args = 0 + ARM GAS /tmp/ccEQxcUB.s page 583 + + + 10204 0000 10B5 push {r4, lr} + 10205 .LCFI102: + 10206 .cfi_def_cfa_offset 8 + 10207 .cfi_offset 4, -8 + 10208 .cfi_offset 14, -4 + 10209 0002 96B0 sub sp, sp, #88 + 10210 .LCFI103: + 10211 .cfi_def_cfa_offset 96 +1855:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; + 10212 .loc 1 1855 3 view .LVU3198 +1855:Src/main.c **** TIM_OC_InitTypeDef sConfigOC = {0}; + 10213 .loc 1 1855 26 is_stmt 0 view .LVU3199 + 10214 0004 0024 movs r4, #0 + 10215 0006 1294 str r4, [sp, #72] + 10216 0008 1394 str r4, [sp, #76] + 10217 000a 1494 str r4, [sp, #80] + 10218 000c 1594 str r4, [sp, #84] +1856:Src/main.c **** TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; + 10219 .loc 1 1856 3 is_stmt 1 view .LVU3200 +1856:Src/main.c **** TIM_BreakDeadTimeConfigTypeDef sBreakDeadTimeConfig = {0}; + 10220 .loc 1 1856 22 is_stmt 0 view .LVU3201 + 10221 000e 0B94 str r4, [sp, #44] + 10222 0010 0C94 str r4, [sp, #48] + 10223 0012 0D94 str r4, [sp, #52] + 10224 0014 0E94 str r4, [sp, #56] + 10225 0016 0F94 str r4, [sp, #60] + 10226 0018 1094 str r4, [sp, #64] + 10227 001a 1194 str r4, [sp, #68] +1857:Src/main.c **** + 10228 .loc 1 1857 3 is_stmt 1 view .LVU3202 +1857:Src/main.c **** + 10229 .loc 1 1857 34 is_stmt 0 view .LVU3203 + 10230 001c 2C22 movs r2, #44 + 10231 001e 2146 mov r1, r4 + 10232 0020 6846 mov r0, sp + 10233 0022 FFF7FEFF bl memset + 10234 .LVL926: +1862:Src/main.c **** htim1.Init.Prescaler = 0; + 10235 .loc 1 1862 3 is_stmt 1 view .LVU3204 +1862:Src/main.c **** htim1.Init.Prescaler = 0; + 10236 .loc 1 1862 18 is_stmt 0 view .LVU3205 + 10237 0026 2548 ldr r0, .L573 + 10238 0028 254B ldr r3, .L573+4 + 10239 002a 0360 str r3, [r0] +1863:Src/main.c **** htim1.Init.CounterMode = TIM_COUNTERMODE_UP; + 10240 .loc 1 1863 3 is_stmt 1 view .LVU3206 +1863:Src/main.c **** htim1.Init.CounterMode = TIM_COUNTERMODE_UP; + 10241 .loc 1 1863 24 is_stmt 0 view .LVU3207 + 10242 002c 4460 str r4, [r0, #4] +1864:Src/main.c **** htim1.Init.Period = 8; + 10243 .loc 1 1864 3 is_stmt 1 view .LVU3208 +1864:Src/main.c **** htim1.Init.Period = 8; + 10244 .loc 1 1864 26 is_stmt 0 view .LVU3209 + 10245 002e 8460 str r4, [r0, #8] +1865:Src/main.c **** htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + 10246 .loc 1 1865 3 is_stmt 1 view .LVU3210 +1865:Src/main.c **** htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; + ARM GAS /tmp/ccEQxcUB.s page 584 + + + 10247 .loc 1 1865 21 is_stmt 0 view .LVU3211 + 10248 0030 0823 movs r3, #8 + 10249 0032 C360 str r3, [r0, #12] +1866:Src/main.c **** htim1.Init.RepetitionCounter = 0; + 10250 .loc 1 1866 3 is_stmt 1 view .LVU3212 +1866:Src/main.c **** htim1.Init.RepetitionCounter = 0; + 10251 .loc 1 1866 28 is_stmt 0 view .LVU3213 + 10252 0034 0461 str r4, [r0, #16] +1867:Src/main.c **** htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 10253 .loc 1 1867 3 is_stmt 1 view .LVU3214 +1867:Src/main.c **** htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; + 10254 .loc 1 1867 32 is_stmt 0 view .LVU3215 + 10255 0036 4461 str r4, [r0, #20] +1868:Src/main.c **** if (HAL_TIM_Base_Init(&htim1) != HAL_OK) + 10256 .loc 1 1868 3 is_stmt 1 view .LVU3216 +1868:Src/main.c **** if (HAL_TIM_Base_Init(&htim1) != HAL_OK) + 10257 .loc 1 1868 32 is_stmt 0 view .LVU3217 + 10258 0038 8461 str r4, [r0, #24] +1869:Src/main.c **** { + 10259 .loc 1 1869 3 is_stmt 1 view .LVU3218 +1869:Src/main.c **** { + 10260 .loc 1 1869 7 is_stmt 0 view .LVU3219 + 10261 003a FFF7FEFF bl HAL_TIM_Base_Init + 10262 .LVL927: +1869:Src/main.c **** { + 10263 .loc 1 1869 6 discriminator 1 view .LVU3220 + 10264 003e 0028 cmp r0, #0 + 10265 0040 32D1 bne .L568 +1873:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK) + 10266 .loc 1 1873 3 is_stmt 1 view .LVU3221 +1873:Src/main.c **** if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK) + 10267 .loc 1 1873 34 is_stmt 0 view .LVU3222 + 10268 0042 4FF48053 mov r3, #4096 + 10269 0046 1293 str r3, [sp, #72] +1874:Src/main.c **** { + 10270 .loc 1 1874 3 is_stmt 1 view .LVU3223 +1874:Src/main.c **** { + 10271 .loc 1 1874 7 is_stmt 0 view .LVU3224 + 10272 0048 12A9 add r1, sp, #72 + 10273 004a 1C48 ldr r0, .L573 + 10274 004c FFF7FEFF bl HAL_TIM_ConfigClockSource + 10275 .LVL928: +1874:Src/main.c **** { + 10276 .loc 1 1874 6 discriminator 1 view .LVU3225 + 10277 0050 0028 cmp r0, #0 + 10278 0052 2BD1 bne .L569 +1878:Src/main.c **** { + 10279 .loc 1 1878 3 is_stmt 1 view .LVU3226 +1878:Src/main.c **** { + 10280 .loc 1 1878 7 is_stmt 0 view .LVU3227 + 10281 0054 1948 ldr r0, .L573 + 10282 0056 FFF7FEFF bl HAL_TIM_PWM_Init + 10283 .LVL929: +1878:Src/main.c **** { + 10284 .loc 1 1878 6 discriminator 1 view .LVU3228 + 10285 005a 48BB cbnz r0, .L570 +1882:Src/main.c **** sConfigOC.Pulse = 4; + ARM GAS /tmp/ccEQxcUB.s page 585 + + + 10286 .loc 1 1882 3 is_stmt 1 view .LVU3229 +1882:Src/main.c **** sConfigOC.Pulse = 4; + 10287 .loc 1 1882 20 is_stmt 0 view .LVU3230 + 10288 005c 6023 movs r3, #96 + 10289 005e 0B93 str r3, [sp, #44] +1883:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 10290 .loc 1 1883 3 is_stmt 1 view .LVU3231 +1883:Src/main.c **** sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH; + 10291 .loc 1 1883 19 is_stmt 0 view .LVU3232 + 10292 0060 0423 movs r3, #4 + 10293 0062 0C93 str r3, [sp, #48] +1884:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 10294 .loc 1 1884 3 is_stmt 1 view .LVU3233 +1884:Src/main.c **** sConfigOC.OCFastMode = TIM_OCFAST_DISABLE; + 10295 .loc 1 1884 24 is_stmt 0 view .LVU3234 + 10296 0064 0022 movs r2, #0 + 10297 0066 0D92 str r2, [sp, #52] +1885:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + 10298 .loc 1 1885 3 is_stmt 1 view .LVU3235 +1885:Src/main.c **** if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_1) != HAL_OK) + 10299 .loc 1 1885 24 is_stmt 0 view .LVU3236 + 10300 0068 0F92 str r2, [sp, #60] +1886:Src/main.c **** { + 10301 .loc 1 1886 3 is_stmt 1 view .LVU3237 +1886:Src/main.c **** { + 10302 .loc 1 1886 7 is_stmt 0 view .LVU3238 + 10303 006a 0BA9 add r1, sp, #44 + 10304 006c 1348 ldr r0, .L573 + 10305 006e FFF7FEFF bl HAL_TIM_PWM_ConfigChannel + 10306 .LVL930: +1886:Src/main.c **** { + 10307 .loc 1 1886 6 discriminator 1 view .LVU3239 + 10308 0072 F8B9 cbnz r0, .L571 +1890:Src/main.c **** sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; + 10309 .loc 1 1890 3 is_stmt 1 view .LVU3240 +1890:Src/main.c **** sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_DISABLE; + 10310 .loc 1 1890 40 is_stmt 0 view .LVU3241 + 10311 0074 0023 movs r3, #0 + 10312 0076 0093 str r3, [sp] +1891:Src/main.c **** sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; + 10313 .loc 1 1891 3 is_stmt 1 view .LVU3242 +1891:Src/main.c **** sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_OFF; + 10314 .loc 1 1891 41 is_stmt 0 view .LVU3243 + 10315 0078 0193 str r3, [sp, #4] +1892:Src/main.c **** sBreakDeadTimeConfig.DeadTime = 0; + 10316 .loc 1 1892 3 is_stmt 1 view .LVU3244 +1892:Src/main.c **** sBreakDeadTimeConfig.DeadTime = 0; + 10317 .loc 1 1892 34 is_stmt 0 view .LVU3245 + 10318 007a 0293 str r3, [sp, #8] +1893:Src/main.c **** sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; + 10319 .loc 1 1893 3 is_stmt 1 view .LVU3246 +1893:Src/main.c **** sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE; + 10320 .loc 1 1893 33 is_stmt 0 view .LVU3247 + 10321 007c 0393 str r3, [sp, #12] +1894:Src/main.c **** sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; + 10322 .loc 1 1894 3 is_stmt 1 view .LVU3248 +1894:Src/main.c **** sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH; + ARM GAS /tmp/ccEQxcUB.s page 586 + + + 10323 .loc 1 1894 35 is_stmt 0 view .LVU3249 + 10324 007e 0493 str r3, [sp, #16] +1895:Src/main.c **** sBreakDeadTimeConfig.BreakFilter = 0; + 10325 .loc 1 1895 3 is_stmt 1 view .LVU3250 +1895:Src/main.c **** sBreakDeadTimeConfig.BreakFilter = 0; + 10326 .loc 1 1895 38 is_stmt 0 view .LVU3251 + 10327 0080 4FF40052 mov r2, #8192 + 10328 0084 0592 str r2, [sp, #20] +1896:Src/main.c **** sBreakDeadTimeConfig.Break2State = TIM_BREAK2_DISABLE; + 10329 .loc 1 1896 3 is_stmt 1 view .LVU3252 +1896:Src/main.c **** sBreakDeadTimeConfig.Break2State = TIM_BREAK2_DISABLE; + 10330 .loc 1 1896 36 is_stmt 0 view .LVU3253 + 10331 0086 0693 str r3, [sp, #24] +1897:Src/main.c **** sBreakDeadTimeConfig.Break2Polarity = TIM_BREAK2POLARITY_HIGH; + 10332 .loc 1 1897 3 is_stmt 1 view .LVU3254 +1897:Src/main.c **** sBreakDeadTimeConfig.Break2Polarity = TIM_BREAK2POLARITY_HIGH; + 10333 .loc 1 1897 36 is_stmt 0 view .LVU3255 + 10334 0088 0793 str r3, [sp, #28] +1898:Src/main.c **** sBreakDeadTimeConfig.Break2Filter = 0; + 10335 .loc 1 1898 3 is_stmt 1 view .LVU3256 +1898:Src/main.c **** sBreakDeadTimeConfig.Break2Filter = 0; + 10336 .loc 1 1898 39 is_stmt 0 view .LVU3257 + 10337 008a 4FF00072 mov r2, #33554432 + 10338 008e 0892 str r2, [sp, #32] +1899:Src/main.c **** sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; + 10339 .loc 1 1899 3 is_stmt 1 view .LVU3258 +1899:Src/main.c **** sBreakDeadTimeConfig.AutomaticOutput = TIM_AUTOMATICOUTPUT_DISABLE; + 10340 .loc 1 1899 37 is_stmt 0 view .LVU3259 + 10341 0090 0993 str r3, [sp, #36] +1900:Src/main.c **** if (HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig) != HAL_OK) + 10342 .loc 1 1900 3 is_stmt 1 view .LVU3260 +1900:Src/main.c **** if (HAL_TIMEx_ConfigBreakDeadTime(&htim1, &sBreakDeadTimeConfig) != HAL_OK) + 10343 .loc 1 1900 40 is_stmt 0 view .LVU3261 + 10344 0092 0A93 str r3, [sp, #40] +1901:Src/main.c **** { + 10345 .loc 1 1901 3 is_stmt 1 view .LVU3262 +1901:Src/main.c **** { + 10346 .loc 1 1901 7 is_stmt 0 view .LVU3263 + 10347 0094 6946 mov r1, sp + 10348 0096 0948 ldr r0, .L573 + 10349 0098 FFF7FEFF bl HAL_TIMEx_ConfigBreakDeadTime + 10350 .LVL931: +1901:Src/main.c **** { + 10351 .loc 1 1901 6 discriminator 1 view .LVU3264 + 10352 009c 60B9 cbnz r0, .L572 +1908:Src/main.c **** + 10353 .loc 1 1908 3 is_stmt 1 view .LVU3265 + 10354 009e 0748 ldr r0, .L573 + 10355 00a0 FFF7FEFF bl HAL_TIM_MspPostInit + 10356 .LVL932: +1910:Src/main.c **** + 10357 .loc 1 1910 1 is_stmt 0 view .LVU3266 + 10358 00a4 16B0 add sp, sp, #88 + 10359 .LCFI104: + 10360 .cfi_remember_state + 10361 .cfi_def_cfa_offset 8 + 10362 @ sp needed + ARM GAS /tmp/ccEQxcUB.s page 587 + + + 10363 00a6 10BD pop {r4, pc} + 10364 .L568: + 10365 .LCFI105: + 10366 .cfi_restore_state +1871:Src/main.c **** } + 10367 .loc 1 1871 5 is_stmt 1 view .LVU3267 + 10368 00a8 FFF7FEFF bl Error_Handler + 10369 .LVL933: + 10370 .L569: +1876:Src/main.c **** } + 10371 .loc 1 1876 5 view .LVU3268 + 10372 00ac FFF7FEFF bl Error_Handler + 10373 .LVL934: + 10374 .L570: +1880:Src/main.c **** } + 10375 .loc 1 1880 5 view .LVU3269 + 10376 00b0 FFF7FEFF bl Error_Handler + 10377 .LVL935: + 10378 .L571: +1888:Src/main.c **** } + 10379 .loc 1 1888 5 view .LVU3270 + 10380 00b4 FFF7FEFF bl Error_Handler + 10381 .LVL936: + 10382 .L572: +1903:Src/main.c **** } + 10383 .loc 1 1903 5 view .LVU3271 + 10384 00b8 FFF7FEFF bl Error_Handler + 10385 .LVL937: + 10386 .L574: + 10387 .align 2 + 10388 .L573: + 10389 00bc 00000000 .word htim1 + 10390 00c0 00000140 .word 1073807360 + 10391 .cfi_endproc + 10392 .LFE1203: + 10394 .section .text.SystemClock_Config,"ax",%progbits + 10395 .align 1 + 10396 .global SystemClock_Config + 10397 .syntax unified + 10398 .thumb + 10399 .thumb_func + 10401 SystemClock_Config: + 10402 .LFB1187: +1031:Src/main.c **** RCC_OscInitTypeDef RCC_OscInitStruct = {0}; + 10403 .loc 1 1031 1 view -0 + 10404 .cfi_startproc + 10405 @ args = 0, pretend = 0, frame = 80 + 10406 @ frame_needed = 0, uses_anonymous_args = 0 + 10407 0000 00B5 push {lr} + 10408 .LCFI106: + 10409 .cfi_def_cfa_offset 4 + 10410 .cfi_offset 14, -4 + 10411 0002 95B0 sub sp, sp, #84 + 10412 .LCFI107: + 10413 .cfi_def_cfa_offset 88 +1032:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + 10414 .loc 1 1032 3 view .LVU3273 + ARM GAS /tmp/ccEQxcUB.s page 588 + + +1032:Src/main.c **** RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; + 10415 .loc 1 1032 22 is_stmt 0 view .LVU3274 + 10416 0004 3422 movs r2, #52 + 10417 0006 0021 movs r1, #0 + 10418 0008 07A8 add r0, sp, #28 + 10419 000a FFF7FEFF bl memset + 10420 .LVL938: +1033:Src/main.c **** + 10421 .loc 1 1033 3 is_stmt 1 view .LVU3275 +1033:Src/main.c **** + 10422 .loc 1 1033 22 is_stmt 0 view .LVU3276 + 10423 000e 0023 movs r3, #0 + 10424 0010 0293 str r3, [sp, #8] + 10425 0012 0393 str r3, [sp, #12] + 10426 0014 0493 str r3, [sp, #16] + 10427 0016 0593 str r3, [sp, #20] + 10428 0018 0693 str r3, [sp, #24] +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10429 .loc 1 1037 3 is_stmt 1 view .LVU3277 + 10430 .LBB671: +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10431 .loc 1 1037 3 view .LVU3278 +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10432 .loc 1 1037 3 view .LVU3279 + 10433 001a 244B ldr r3, .L583 + 10434 001c 1A6C ldr r2, [r3, #64] + 10435 001e 42F08052 orr r2, r2, #268435456 + 10436 0022 1A64 str r2, [r3, #64] +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10437 .loc 1 1037 3 view .LVU3280 + 10438 0024 1B6C ldr r3, [r3, #64] + 10439 0026 03F08053 and r3, r3, #268435456 + 10440 002a 0093 str r3, [sp] +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10441 .loc 1 1037 3 view .LVU3281 + 10442 002c 009B ldr r3, [sp] + 10443 .LBE671: +1037:Src/main.c **** __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1); + 10444 .loc 1 1037 3 view .LVU3282 +1038:Src/main.c **** + 10445 .loc 1 1038 3 view .LVU3283 + 10446 .LBB672: +1038:Src/main.c **** + 10447 .loc 1 1038 3 view .LVU3284 +1038:Src/main.c **** + 10448 .loc 1 1038 3 view .LVU3285 + 10449 002e 204B ldr r3, .L583+4 + 10450 0030 1A68 ldr r2, [r3] + 10451 0032 42F44042 orr r2, r2, #49152 + 10452 0036 1A60 str r2, [r3] +1038:Src/main.c **** + 10453 .loc 1 1038 3 view .LVU3286 + 10454 0038 1B68 ldr r3, [r3] + 10455 003a 03F44043 and r3, r3, #49152 + 10456 003e 0193 str r3, [sp, #4] +1038:Src/main.c **** + 10457 .loc 1 1038 3 view .LVU3287 + ARM GAS /tmp/ccEQxcUB.s page 589 + + + 10458 0040 019B ldr r3, [sp, #4] + 10459 .LBE672: +1038:Src/main.c **** + 10460 .loc 1 1038 3 view .LVU3288 +1043:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; + 10461 .loc 1 1043 3 view .LVU3289 +1043:Src/main.c **** RCC_OscInitStruct.HSEState = RCC_HSE_ON; + 10462 .loc 1 1043 36 is_stmt 0 view .LVU3290 + 10463 0042 0123 movs r3, #1 + 10464 0044 0793 str r3, [sp, #28] +1044:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + 10465 .loc 1 1044 3 is_stmt 1 view .LVU3291 +1044:Src/main.c **** RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; + 10466 .loc 1 1044 30 is_stmt 0 view .LVU3292 + 10467 0046 4FF48033 mov r3, #65536 + 10468 004a 0893 str r3, [sp, #32] +1045:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + 10469 .loc 1 1045 3 is_stmt 1 view .LVU3293 +1045:Src/main.c **** RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + 10470 .loc 1 1045 34 is_stmt 0 view .LVU3294 + 10471 004c 0223 movs r3, #2 + 10472 004e 0D93 str r3, [sp, #52] +1046:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; + 10473 .loc 1 1046 3 is_stmt 1 view .LVU3295 +1046:Src/main.c **** RCC_OscInitStruct.PLL.PLLM = 25; + 10474 .loc 1 1046 35 is_stmt 0 view .LVU3296 + 10475 0050 4FF48002 mov r2, #4194304 + 10476 0054 0E92 str r2, [sp, #56] +1047:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; + 10477 .loc 1 1047 3 is_stmt 1 view .LVU3297 +1047:Src/main.c **** RCC_OscInitStruct.PLL.PLLN = 368; + 10478 .loc 1 1047 30 is_stmt 0 view .LVU3298 + 10479 0056 1922 movs r2, #25 + 10480 0058 0F92 str r2, [sp, #60] +1048:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; + 10481 .loc 1 1048 3 is_stmt 1 view .LVU3299 +1048:Src/main.c **** RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2; + 10482 .loc 1 1048 30 is_stmt 0 view .LVU3300 + 10483 005a 4FF4B872 mov r2, #368 + 10484 005e 1092 str r2, [sp, #64] +1049:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; + 10485 .loc 1 1049 3 is_stmt 1 view .LVU3301 +1049:Src/main.c **** RCC_OscInitStruct.PLL.PLLQ = 8; + 10486 .loc 1 1049 30 is_stmt 0 view .LVU3302 + 10487 0060 1193 str r3, [sp, #68] +1050:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; + 10488 .loc 1 1050 3 is_stmt 1 view .LVU3303 +1050:Src/main.c **** RCC_OscInitStruct.PLL.PLLR = 2; + 10489 .loc 1 1050 30 is_stmt 0 view .LVU3304 + 10490 0062 0822 movs r2, #8 + 10491 0064 1292 str r2, [sp, #72] +1051:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + 10492 .loc 1 1051 3 is_stmt 1 view .LVU3305 +1051:Src/main.c **** if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) + 10493 .loc 1 1051 30 is_stmt 0 view .LVU3306 + 10494 0066 1393 str r3, [sp, #76] +1052:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 590 + + + 10495 .loc 1 1052 3 is_stmt 1 view .LVU3307 +1052:Src/main.c **** { + 10496 .loc 1 1052 7 is_stmt 0 view .LVU3308 + 10497 0068 07A8 add r0, sp, #28 + 10498 006a FFF7FEFF bl HAL_RCC_OscConfig + 10499 .LVL939: +1052:Src/main.c **** { + 10500 .loc 1 1052 6 discriminator 1 view .LVU3309 + 10501 006e B0B9 cbnz r0, .L580 +1059:Src/main.c **** { + 10502 .loc 1 1059 3 is_stmt 1 view .LVU3310 +1059:Src/main.c **** { + 10503 .loc 1 1059 7 is_stmt 0 view .LVU3311 + 10504 0070 FFF7FEFF bl HAL_PWREx_EnableOverDrive + 10505 .LVL940: +1059:Src/main.c **** { + 10506 .loc 1 1059 6 discriminator 1 view .LVU3312 + 10507 0074 A8B9 cbnz r0, .L581 +1066:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; + 10508 .loc 1 1066 3 is_stmt 1 view .LVU3313 +1066:Src/main.c **** |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; + 10509 .loc 1 1066 31 is_stmt 0 view .LVU3314 + 10510 0076 0F23 movs r3, #15 + 10511 0078 0293 str r3, [sp, #8] +1068:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + 10512 .loc 1 1068 3 is_stmt 1 view .LVU3315 +1068:Src/main.c **** RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; + 10513 .loc 1 1068 34 is_stmt 0 view .LVU3316 + 10514 007a 0223 movs r3, #2 + 10515 007c 0393 str r3, [sp, #12] +1069:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; + 10516 .loc 1 1069 3 is_stmt 1 view .LVU3317 +1069:Src/main.c **** RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4; + 10517 .loc 1 1069 35 is_stmt 0 view .LVU3318 + 10518 007e 0023 movs r3, #0 + 10519 0080 0493 str r3, [sp, #16] +1070:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; + 10520 .loc 1 1070 3 is_stmt 1 view .LVU3319 +1070:Src/main.c **** RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV2; + 10521 .loc 1 1070 36 is_stmt 0 view .LVU3320 + 10522 0082 4FF4A053 mov r3, #5120 + 10523 0086 0593 str r3, [sp, #20] +1071:Src/main.c **** + 10524 .loc 1 1071 3 is_stmt 1 view .LVU3321 +1071:Src/main.c **** + 10525 .loc 1 1071 36 is_stmt 0 view .LVU3322 + 10526 0088 4FF48053 mov r3, #4096 + 10527 008c 0693 str r3, [sp, #24] +1073:Src/main.c **** { + 10528 .loc 1 1073 3 is_stmt 1 view .LVU3323 +1073:Src/main.c **** { + 10529 .loc 1 1073 7 is_stmt 0 view .LVU3324 + 10530 008e 0621 movs r1, #6 + 10531 0090 02A8 add r0, sp, #8 + 10532 0092 FFF7FEFF bl HAL_RCC_ClockConfig + 10533 .LVL941: +1073:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 591 + + + 10534 .loc 1 1073 6 discriminator 1 view .LVU3325 + 10535 0096 30B9 cbnz r0, .L582 +1077:Src/main.c **** + 10536 .loc 1 1077 1 view .LVU3326 + 10537 0098 15B0 add sp, sp, #84 + 10538 .LCFI108: + 10539 .cfi_remember_state + 10540 .cfi_def_cfa_offset 4 + 10541 @ sp needed + 10542 009a 5DF804FB ldr pc, [sp], #4 + 10543 .L580: + 10544 .LCFI109: + 10545 .cfi_restore_state +1054:Src/main.c **** } + 10546 .loc 1 1054 5 is_stmt 1 view .LVU3327 + 10547 009e FFF7FEFF bl Error_Handler + 10548 .LVL942: + 10549 .L581: +1061:Src/main.c **** } + 10550 .loc 1 1061 5 view .LVU3328 + 10551 00a2 FFF7FEFF bl Error_Handler + 10552 .LVL943: + 10553 .L582: +1075:Src/main.c **** } + 10554 .loc 1 1075 5 view .LVU3329 + 10555 00a6 FFF7FEFF bl Error_Handler + 10556 .LVL944: + 10557 .L584: + 10558 00aa 00BF .align 2 + 10559 .L583: + 10560 00ac 00380240 .word 1073887232 + 10561 00b0 00700040 .word 1073770496 + 10562 .cfi_endproc + 10563 .LFE1187: + 10565 .section .text.main,"ax",%progbits + 10566 .align 1 + 10567 .global main + 10568 .syntax unified + 10569 .thumb + 10570 .thumb_func + 10572 main: + 10573 .LFB1186: + 250:Src/main.c **** + 10574 .loc 1 250 1 view -0 + 10575 .cfi_startproc + 10576 @ args = 0, pretend = 0, frame = 8 + 10577 @ frame_needed = 0, uses_anonymous_args = 0 + 10578 0000 2DE9F043 push {r4, r5, r6, r7, r8, r9, lr} + 10579 .LCFI110: + 10580 .cfi_def_cfa_offset 28 + 10581 .cfi_offset 4, -28 + 10582 .cfi_offset 5, -24 + 10583 .cfi_offset 6, -20 + 10584 .cfi_offset 7, -16 + 10585 .cfi_offset 8, -12 + 10586 .cfi_offset 9, -8 + 10587 .cfi_offset 14, -4 + ARM GAS /tmp/ccEQxcUB.s page 592 + + + 10588 0004 85B0 sub sp, sp, #20 + 10589 .LCFI111: + 10590 .cfi_def_cfa_offset 48 + 253:Src/main.c **** /* USER CODE END 1 */ + 10591 .loc 1 253 2 view .LVU3331 + 259:Src/main.c **** + 10592 .loc 1 259 3 view .LVU3332 + 10593 0006 FFF7FEFF bl HAL_Init + 10594 .LVL945: + 266:Src/main.c **** + 10595 .loc 1 266 3 view .LVU3333 + 10596 000a FFF7FEFF bl SystemClock_Config + 10597 .LVL946: + 273:Src/main.c **** MX_DMA_Init(); + 10598 .loc 1 273 3 view .LVU3334 + 10599 000e FFF7FEFF bl MX_GPIO_Init + 10600 .LVL947: + 274:Src/main.c **** MX_SPI4_Init(); + 10601 .loc 1 274 3 view .LVU3335 + 10602 0012 FFF7FEFF bl MX_DMA_Init + 10603 .LVL948: + 275:Src/main.c **** MX_FATFS_Init(); + 10604 .loc 1 275 3 view .LVU3336 + 10605 0016 FFF7FEFF bl MX_SPI4_Init + 10606 .LVL949: + 276:Src/main.c **** MX_TIM2_Init(); + 10607 .loc 1 276 3 view .LVU3337 + 10608 001a FFF7FEFF bl MX_FATFS_Init + 10609 .LVL950: + 277:Src/main.c **** MX_TIM5_Init(); + 10610 .loc 1 277 3 view .LVU3338 + 10611 001e FFF7FEFF bl MX_TIM2_Init + 10612 .LVL951: + 278:Src/main.c **** MX_ADC1_Init(); + 10613 .loc 1 278 3 view .LVU3339 + 10614 0022 FFF7FEFF bl MX_TIM5_Init + 10615 .LVL952: + 279:Src/main.c **** MX_ADC3_Init(); + 10616 .loc 1 279 3 view .LVU3340 + 10617 0026 FFF7FEFF bl MX_ADC1_Init + 10618 .LVL953: + 280:Src/main.c **** MX_SPI2_Init(); + 10619 .loc 1 280 3 view .LVU3341 + 10620 002a FFF7FEFF bl MX_ADC3_Init + 10621 .LVL954: + 281:Src/main.c **** MX_SPI5_Init(); + 10622 .loc 1 281 3 view .LVU3342 + 10623 002e FFF7FEFF bl MX_SPI2_Init + 10624 .LVL955: + 282:Src/main.c **** MX_SPI6_Init(); + 10625 .loc 1 282 3 view .LVU3343 + 10626 0032 FFF7FEFF bl MX_SPI5_Init + 10627 .LVL956: + 283:Src/main.c **** MX_USART1_UART_Init(); + 10628 .loc 1 283 3 view .LVU3344 + 10629 0036 FFF7FEFF bl MX_SPI6_Init + 10630 .LVL957: + ARM GAS /tmp/ccEQxcUB.s page 593 + + + 284:Src/main.c **** MX_SDMMC1_SD_Init(); + 10631 .loc 1 284 3 view .LVU3345 + 10632 003a FFF7FEFF bl MX_USART1_UART_Init + 10633 .LVL958: + 285:Src/main.c **** MX_TIM7_Init(); + 10634 .loc 1 285 3 view .LVU3346 + 10635 003e FFF7FEFF bl MX_SDMMC1_SD_Init + 10636 .LVL959: + 286:Src/main.c **** MX_TIM6_Init(); + 10637 .loc 1 286 3 view .LVU3347 + 10638 0042 FFF7FEFF bl MX_TIM7_Init + 10639 .LVL960: + 287:Src/main.c **** MX_TIM10_Init(); + 10640 .loc 1 287 3 view .LVU3348 + 10641 0046 FFF7FEFF bl MX_TIM6_Init + 10642 .LVL961: + 288:Src/main.c **** MX_UART8_Init(); + 10643 .loc 1 288 3 view .LVU3349 + 10644 004a FFF7FEFF bl MX_TIM10_Init + 10645 .LVL962: + 289:Src/main.c **** MX_TIM8_Init(); + 10646 .loc 1 289 3 view .LVU3350 + 10647 004e FFF7FEFF bl MX_UART8_Init + 10648 .LVL963: + 290:Src/main.c **** MX_TIM11_Init(); + 10649 .loc 1 290 3 view .LVU3351 + 10650 0052 FFF7FEFF bl MX_TIM8_Init + 10651 .LVL964: + 291:Src/main.c **** MX_TIM4_Init(); + 10652 .loc 1 291 3 view .LVU3352 + 10653 0056 FFF7FEFF bl MX_TIM11_Init + 10654 .LVL965: + 292:Src/main.c **** MX_TIM1_Init(); + 10655 .loc 1 292 3 view .LVU3353 + 10656 005a FFF7FEFF bl MX_TIM4_Init + 10657 .LVL966: + 293:Src/main.c **** /* USER CODE BEGIN 2 */ + 10658 .loc 1 293 3 view .LVU3354 + 10659 005e FFF7FEFF bl MX_TIM1_Init + 10660 .LVL967: + 295:Src/main.c **** //HAL_TIM_Base_Start(&htim11); + 10661 .loc 1 295 2 view .LVU3355 + 10662 0062 FFF7FEFF bl Init_params + 10663 .LVL968: + 306:Src/main.c **** + 10664 .loc 1 306 2 view .LVU3356 + 306:Src/main.c **** + 10665 .loc 1 306 14 is_stmt 0 view .LVU3357 + 10666 0066 894A ldr r2, .L679 + 10667 0068 3523 movs r3, #53 + 10668 006a D362 str r3, [r2, #44] + 308:Src/main.c **** + 10669 .loc 1 308 2 is_stmt 1 view .LVU3358 + 308:Src/main.c **** + 10670 .loc 1 308 23 is_stmt 0 view .LVU3359 + 10671 006c D36A ldr r3, [r2, #44] + 308:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 594 + + + 10672 .loc 1 308 30 view .LVU3360 + 10673 006e 0133 adds r3, r3, #1 + 308:Src/main.c **** + 10674 .loc 1 308 33 view .LVU3361 + 10675 0070 5B08 lsrs r3, r3, #1 + 308:Src/main.c **** + 10676 .loc 1 308 36 view .LVU3362 + 10677 0072 013B subs r3, r3, #1 + 308:Src/main.c **** + 10678 .loc 1 308 15 view .LVU3363 + 10679 0074 D363 str r3, [r2, #60] + 313:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + 10680 .loc 1 313 2 is_stmt 1 view .LVU3364 + 313:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + 10681 .loc 1 313 23 is_stmt 0 view .LVU3365 + 10682 0076 D36A ldr r3, [r2, #44] + 313:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + 10683 .loc 1 313 36 view .LVU3366 + 10684 0078 9B00 lsls r3, r3, #2 + 10685 007a 0333 adds r3, r3, #3 + 313:Src/main.c **** TIM11 -> CCR1 = (TIM11 -> ARR +1)/2 - 1; + 10686 .loc 1 313 15 view .LVU3367 + 10687 007c 02F5A032 add r2, r2, #81920 + 10688 0080 D362 str r3, [r2, #44] + 314:Src/main.c **** + 10689 .loc 1 314 2 is_stmt 1 view .LVU3368 + 314:Src/main.c **** + 10690 .loc 1 314 25 is_stmt 0 view .LVU3369 + 10691 0082 D36A ldr r3, [r2, #44] + 314:Src/main.c **** + 10692 .loc 1 314 32 view .LVU3370 + 10693 0084 0133 adds r3, r3, #1 + 314:Src/main.c **** + 10694 .loc 1 314 35 view .LVU3371 + 10695 0086 5B08 lsrs r3, r3, #1 + 314:Src/main.c **** + 10696 .loc 1 314 38 view .LVU3372 + 10697 0088 013B subs r3, r3, #1 + 314:Src/main.c **** + 10698 .loc 1 314 16 view .LVU3373 + 10699 008a 5363 str r3, [r2, #52] + 318:Src/main.c **** + 10700 .loc 1 318 2 is_stmt 1 view .LVU3374 + 10701 008c 0021 movs r1, #0 + 10702 008e 8048 ldr r0, .L679+4 + 10703 0090 FFF7FEFF bl HAL_TIM_PWM_Start + 10704 .LVL969: + 10705 0094 4CE0 b .L586 + 10706 .L668: + 332:Src/main.c **** { + 10707 .loc 1 332 85 is_stmt 0 discriminator 1 view .LVU3375 + 10708 0096 7F4B ldr r3, .L679+8 + 10709 0098 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 332:Src/main.c **** { + 10710 .loc 1 332 73 discriminator 1 view .LVU3376 + 10711 009a 002B cmp r3, #0 + 10712 009c 4FD1 bne .L587 + ARM GAS /tmp/ccEQxcUB.s page 595 + + + 10713 .L588: + 10714 .LBB673: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10715 .loc 7 3073 3 is_stmt 1 discriminator 1 view .LVU3377 + 10716 .LBB674: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10717 .loc 7 3073 3 discriminator 1 view .LVU3378 +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10718 .loc 7 3073 3 discriminator 1 view .LVU3379 +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10719 .loc 7 3073 3 discriminator 1 view .LVU3380 + 10720 .LVL970: + 10721 .LBB675: + 10722 .LBI675: +1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { + 10723 .loc 8 1068 31 view .LVU3381 + 10724 .LBB676: +1070:Drivers/CMSIS/Include/cmsis_gcc.h **** + 10725 .loc 8 1070 5 view .LVU3382 +1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); + 10726 .loc 8 1072 4 view .LVU3383 + 10727 009e 7E4A ldr r2, .L679+12 + 10728 .syntax unified + 10729 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10730 00a0 52E8003F ldrex r3, [r2] + 10731 @ 0 "" 2 + 10732 .LVL971: +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10733 .loc 8 1073 4 view .LVU3384 +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10734 .loc 8 1073 4 is_stmt 0 view .LVU3385 + 10735 .thumb + 10736 .syntax unified + 10737 .LBE676: + 10738 .LBE675: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10739 .loc 7 3073 3 discriminator 1 view .LVU3386 + 10740 00a4 43F48073 orr r3, r3, #256 + 10741 .LVL972: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10742 .loc 7 3073 3 is_stmt 1 discriminator 1 view .LVU3387 + 10743 .LBB677: + 10744 .LBI677: 1119:Drivers/CMSIS/Include/cmsis_gcc.h **** { - 10037 .loc 8 1119 31 view .LVU3186 - 10038 .LBB653: + 10745 .loc 8 1119 31 view .LVU3388 + 10746 .LBB678: 1121:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccwR4KB7.s page 575 - - - 10039 .loc 8 1121 4 view .LVU3187 + 10747 .loc 8 1121 4 view .LVU3389 1123:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 10040 .loc 8 1123 4 view .LVU3188 - 10041 00c4 0832 adds r2, r2, #8 - 10042 .syntax unified - 10043 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 10044 00c6 42E80031 strex r1, r3, [r2] - 10045 @ 0 "" 2 - 10046 .LVL892: - 10047 .loc 8 1124 4 view .LVU3189 - 10048 .loc 8 1124 4 is_stmt 0 view .LVU3190 - 10049 .thumb - 10050 .syntax unified - 10051 .LBE653: - 10052 .LBE652: + 10748 .loc 8 1123 4 view .LVU3390 + 10749 .syntax unified + 10750 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10751 00a8 42E80031 strex r1, r3, [r2] + 10752 @ 0 "" 2 + 10753 .LVL973: + 10754 .loc 8 1124 4 view .LVU3391 + 10755 .loc 8 1124 4 is_stmt 0 view .LVU3392 + ARM GAS /tmp/ccEQxcUB.s page 596 + + + 10756 .thumb + 10757 .syntax unified + 10758 .LBE678: + 10759 .LBE677: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10760 .loc 7 3073 3 discriminator 1 view .LVU3393 + 10761 00ac 0029 cmp r1, #0 + 10762 00ae F6D1 bne .L588 + 10763 .LVL974: + 10764 .L589: +3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10765 .loc 7 3073 3 discriminator 1 view .LVU3394 + 10766 .LBE674: + 10767 .LBE673: + 10768 .LBB679: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10769 .loc 7 3040 3 is_stmt 1 discriminator 1 view .LVU3395 + 10770 .LBB680: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10771 .loc 7 3040 3 discriminator 1 view .LVU3396 +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10772 .loc 7 3040 3 discriminator 1 view .LVU3397 +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10773 .loc 7 3040 3 discriminator 1 view .LVU3398 + 10774 .LBB681: + 10775 .LBI681: +1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { + 10776 .loc 8 1068 31 view .LVU3399 + 10777 .LBB682: +1070:Drivers/CMSIS/Include/cmsis_gcc.h **** + 10778 .loc 8 1070 5 view .LVU3400 +1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); + 10779 .loc 8 1072 4 view .LVU3401 + 10780 00b0 794A ldr r2, .L679+12 + 10781 .syntax unified + 10782 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10783 00b2 52E8003F ldrex r3, [r2] + 10784 @ 0 "" 2 + 10785 .LVL975: +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10786 .loc 8 1073 4 view .LVU3402 +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10787 .loc 8 1073 4 is_stmt 0 view .LVU3403 + 10788 .thumb + 10789 .syntax unified + 10790 .LBE682: + 10791 .LBE681: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10792 .loc 7 3040 3 discriminator 1 view .LVU3404 + 10793 00b6 43F02003 orr r3, r3, #32 + 10794 .LVL976: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10795 .loc 7 3040 3 is_stmt 1 discriminator 1 view .LVU3405 + 10796 .LBB683: + 10797 .LBI683: +1119:Drivers/CMSIS/Include/cmsis_gcc.h **** { + 10798 .loc 8 1119 31 view .LVU3406 + ARM GAS /tmp/ccEQxcUB.s page 597 + + + 10799 .LBB684: +1121:Drivers/CMSIS/Include/cmsis_gcc.h **** + 10800 .loc 8 1121 4 view .LVU3407 +1123:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); + 10801 .loc 8 1123 4 view .LVU3408 + 10802 .syntax unified + 10803 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10804 00ba 42E80031 strex r1, r3, [r2] + 10805 @ 0 "" 2 + 10806 .LVL977: + 10807 .loc 8 1124 4 view .LVU3409 + 10808 .loc 8 1124 4 is_stmt 0 view .LVU3410 + 10809 .thumb + 10810 .syntax unified + 10811 .LBE684: + 10812 .LBE683: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10813 .loc 7 3040 3 discriminator 1 view .LVU3411 + 10814 00be 0029 cmp r1, #0 + 10815 00c0 F6D1 bne .L589 + 10816 .LVL978: + 10817 .L590: +3040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10818 .loc 7 3040 3 discriminator 1 view .LVU3412 + 10819 .LBE680: + 10820 .LBE679: + 10821 .LBB685: 3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10053 .loc 7 3136 3 discriminator 1 view .LVU3191 - 10054 00ca 0029 cmp r1, #0 - 10055 00cc F3D1 bne .L539 - 10056 .LBE649: + 10822 .loc 7 3136 3 is_stmt 1 discriminator 1 view .LVU3413 + 10823 .LBB686: 3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10057 .loc 7 3136 3 is_stmt 1 discriminator 2 view .LVU3192 - 10058 .LVL893: + 10824 .loc 7 3136 3 discriminator 1 view .LVU3414 3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 10059 .loc 7 3136 3 is_stmt 0 discriminator 2 view .LVU3193 - 10060 .LBE648: - 319:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn);//In other case you have FE error flag... - 10061 .loc 1 319 4 is_stmt 1 view .LVU3194 - 10062 .LBB654: - 10063 .LBI654: + 10825 .loc 7 3136 3 discriminator 1 view .LVU3415 +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10826 .loc 7 3136 3 discriminator 1 view .LVU3416 + 10827 .LBB687: + 10828 .LBI687: +1068:Drivers/CMSIS/Include/cmsis_gcc.h **** { + 10829 .loc 8 1068 31 view .LVU3417 + 10830 .LBB688: +1070:Drivers/CMSIS/Include/cmsis_gcc.h **** + 10831 .loc 8 1070 5 view .LVU3418 +1072:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); + 10832 .loc 8 1072 4 view .LVU3419 + 10833 00c2 754A ldr r2, .L679+12 + 10834 00c4 02F10803 add r3, r2, #8 + 10835 .syntax unified + 10836 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10837 00c8 53E8003F ldrex r3, [r3] + 10838 @ 0 "" 2 + 10839 .LVL979: +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10840 .loc 8 1073 4 view .LVU3420 +1073:Drivers/CMSIS/Include/cmsis_gcc.h **** } + 10841 .loc 8 1073 4 is_stmt 0 view .LVU3421 + 10842 .thumb + ARM GAS /tmp/ccEQxcUB.s page 598 + + + 10843 .syntax unified + 10844 .LBE688: + 10845 .LBE687: +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10846 .loc 7 3136 3 discriminator 1 view .LVU3422 + 10847 00cc 43F00103 orr r3, r3, #1 + 10848 .LVL980: +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10849 .loc 7 3136 3 is_stmt 1 discriminator 1 view .LVU3423 + 10850 .LBB689: + 10851 .LBI689: +1119:Drivers/CMSIS/Include/cmsis_gcc.h **** { + 10852 .loc 8 1119 31 view .LVU3424 + 10853 .LBB690: +1121:Drivers/CMSIS/Include/cmsis_gcc.h **** + 10854 .loc 8 1121 4 view .LVU3425 +1123:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); + 10855 .loc 8 1123 4 view .LVU3426 + 10856 00d0 0832 adds r2, r2, #8 + 10857 .syntax unified + 10858 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 10859 00d2 42E80031 strex r1, r3, [r2] + 10860 @ 0 "" 2 + 10861 .LVL981: + 10862 .loc 8 1124 4 view .LVU3427 + 10863 .loc 8 1124 4 is_stmt 0 view .LVU3428 + 10864 .thumb + 10865 .syntax unified + 10866 .LBE690: + 10867 .LBE689: +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10868 .loc 7 3136 3 discriminator 1 view .LVU3429 + 10869 00d6 0029 cmp r1, #0 + 10870 00d8 F3D1 bne .L590 + 10871 .LBE686: +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10872 .loc 7 3136 3 is_stmt 1 discriminator 2 view .LVU3430 + 10873 .LVL982: +3136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 10874 .loc 7 3136 3 is_stmt 0 discriminator 2 view .LVU3431 + 10875 .LBE685: + 338:Src/main.c **** NVIC_EnableIRQ(USART1_IRQn);//In other case you have FE error flag... + 10876 .loc 1 338 4 is_stmt 1 view .LVU3432 + 10877 .LBB691: + 10878 .LBI691: 2024:Drivers/CMSIS/Include/core_cm7.h **** { - 10064 .loc 2 2024 22 view .LVU3195 - 10065 .LBB655: + 10879 .loc 2 2024 22 view .LVU3433 + 10880 .LBB692: 2026:Drivers/CMSIS/Include/core_cm7.h **** { - 10066 .loc 2 2026 3 view .LVU3196 + 10881 .loc 2 2026 3 view .LVU3434 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 10067 .loc 2 2028 5 view .LVU3197 + 10882 .loc 2 2028 5 view .LVU3435 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 10068 .loc 2 2028 47 is_stmt 0 view .LVU3198 - 10069 00ce 6D4B ldr r3, .L612+12 - 10070 00d0 0022 movs r2, #0 - 10071 00d2 83F82523 strb r2, [r3, #805] - 10072 .LVL894: + 10883 .loc 2 2028 47 is_stmt 0 view .LVU3436 + 10884 00da 704B ldr r3, .L679+16 + 10885 00dc 0022 movs r2, #0 + 10886 00de 83F82523 strb r2, [r3, #805] + ARM GAS /tmp/ccEQxcUB.s page 599 + + + 10887 .LVL983: 2028:Drivers/CMSIS/Include/core_cm7.h **** } - 10073 .loc 2 2028 47 view .LVU3199 - 10074 .LBE655: - 10075 .LBE654: - 320:Src/main.c **** u_rx_flg = 1; - 10076 .loc 1 320 4 is_stmt 1 view .LVU3200 - 10077 .LBB656: - 10078 .LBI656: + 10888 .loc 2 2028 47 view .LVU3437 + 10889 .LBE692: + 10890 .LBE691: + 339:Src/main.c **** u_rx_flg = 1; + 10891 .loc 1 339 4 is_stmt 1 view .LVU3438 + 10892 .LBB693: + 10893 .LBI693: 1896:Drivers/CMSIS/Include/core_cm7.h **** { - 10079 .loc 2 1896 22 view .LVU3201 - 10080 .LBB657: + 10894 .loc 2 1896 22 view .LVU3439 + 10895 .LBB694: 1898:Drivers/CMSIS/Include/core_cm7.h **** { - 10081 .loc 2 1898 3 view .LVU3202 + 10896 .loc 2 1898 3 view .LVU3440 1900:Drivers/CMSIS/Include/core_cm7.h **** } - ARM GAS /tmp/ccwR4KB7.s page 576 - - - 10082 .loc 2 1900 5 view .LVU3203 + 10897 .loc 2 1900 5 view .LVU3441 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 10083 .loc 2 1900 43 is_stmt 0 view .LVU3204 - 10084 00d6 2022 movs r2, #32 - 10085 00d8 5A60 str r2, [r3, #4] - 10086 .LVL895: + 10898 .loc 2 1900 43 is_stmt 0 view .LVU3442 + 10899 00e2 2022 movs r2, #32 + 10900 00e4 5A60 str r2, [r3, #4] + 10901 .LVL984: 1900:Drivers/CMSIS/Include/core_cm7.h **** } - 10087 .loc 2 1900 43 view .LVU3205 - 10088 .LBE657: - 10089 .LBE656: - 321:Src/main.c **** } - 10090 .loc 1 321 4 is_stmt 1 view .LVU3206 - 321:Src/main.c **** } - 10091 .loc 1 321 13 is_stmt 0 view .LVU3207 - 10092 00da 684B ldr r3, .L612+4 - 10093 00dc 0122 movs r2, #1 - 10094 00de 1A70 strb r2, [r3] - 10095 00e0 27E0 b .L536 - 10096 .L552: - 331:Src/main.c **** task.current_param = task.min_param; - 10097 .loc 1 331 6 is_stmt 1 view .LVU3208 - 331:Src/main.c **** task.current_param = task.min_param; - 10098 .loc 1 331 20 is_stmt 0 view .LVU3209 - 10099 00e2 694B ldr r3, .L612+16 - 10100 00e4 0022 movs r2, #0 - 10101 00e6 1A70 strb r2, [r3] - 332:Src/main.c **** Stop_TIM10(); - 10102 .loc 1 332 6 is_stmt 1 view .LVU3210 - 332:Src/main.c **** Stop_TIM10(); - 10103 .loc 1 332 31 is_stmt 0 view .LVU3211 - 10104 00e8 684B ldr r3, .L612+20 - 10105 00ea 5A68 ldr r2, [r3, #4] @ float - 332:Src/main.c **** Stop_TIM10(); - 10106 .loc 1 332 25 view .LVU3212 - 10107 00ec 1A61 str r2, [r3, #16] @ float - 333:Src/main.c **** break; - 10108 .loc 1 333 6 is_stmt 1 view .LVU3213 - 10109 00ee FFF7FEFF bl Stop_TIM10 - 10110 .LVL896: - 334:Src/main.c **** case DECODE_ENABLE://1 - Decode rec. message - 10111 .loc 1 334 5 view .LVU3214 - 10112 .L540: - 874:Src/main.c **** { - 10113 .loc 1 874 3 view .LVU3215 - 10114 00f2 674B ldr r3, .L612+24 - 10115 00f4 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 10116 00f6 022B cmp r3, #2 - 10117 00f8 00F08184 beq .L587 - 10118 00fc 032B cmp r3, #3 - 10119 00fe 00F0B484 beq .L598 - 10120 0102 012B cmp r3, #1 - 10121 0104 09D1 bne .L589 - 877:Src/main.c **** //HAL_UART_Transmit(&huart1, State_Data, 2, 10); - 10122 .loc 1 877 5 view .LVU3216 - 10123 0106 634C ldr r4, .L612+28 - 10124 0108 0221 movs r1, #2 - 10125 010a 2046 mov r0, r4 - ARM GAS /tmp/ccwR4KB7.s page 577 + 10902 .loc 2 1900 43 view .LVU3443 + 10903 .LBE694: + 10904 .LBE693: + 340:Src/main.c **** } + 10905 .loc 1 340 4 is_stmt 1 view .LVU3444 + 340:Src/main.c **** } + 10906 .loc 1 340 13 is_stmt 0 view .LVU3445 + 10907 00e6 6B4B ldr r3, .L679+8 + 10908 00e8 0122 movs r2, #1 + 10909 00ea 1A70 strb r2, [r3] + 10910 00ec 27E0 b .L587 + 10911 .L605: + 350:Src/main.c **** task.current_param = task.min_param; + 10912 .loc 1 350 6 is_stmt 1 view .LVU3446 + 350:Src/main.c **** task.current_param = task.min_param; + 10913 .loc 1 350 20 is_stmt 0 view .LVU3447 + 10914 00ee 6C4B ldr r3, .L679+20 + 10915 00f0 0022 movs r2, #0 + 10916 00f2 1A70 strb r2, [r3] + 351:Src/main.c **** Stop_TIM10(); + 10917 .loc 1 351 6 is_stmt 1 view .LVU3448 + 351:Src/main.c **** Stop_TIM10(); + 10918 .loc 1 351 31 is_stmt 0 view .LVU3449 + 10919 00f4 6B4B ldr r3, .L679+24 + 10920 00f6 5A68 ldr r2, [r3, #4] @ float + 351:Src/main.c **** Stop_TIM10(); + 10921 .loc 1 351 25 view .LVU3450 + 10922 00f8 1A61 str r2, [r3, #16] @ float + 352:Src/main.c **** break; + 10923 .loc 1 352 6 is_stmt 1 view .LVU3451 + 10924 00fa FFF7FEFF bl Stop_TIM10 + 10925 .LVL985: + 353:Src/main.c **** case DECODE_ENABLE://1 - Decode rec. message + 10926 .loc 1 353 5 view .LVU3452 + 10927 .L591: + ARM GAS /tmp/ccEQxcUB.s page 600 - 10126 010c FFF7FEFF bl USART_TX - 10127 .LVL897: - 879:Src/main.c **** State_Data[1]=0;//All OK! - 10128 .loc 1 879 5 view .LVU3217 - 879:Src/main.c **** State_Data[1]=0;//All OK! - 10129 .loc 1 879 18 is_stmt 0 view .LVU3218 - 10130 0110 0023 movs r3, #0 - 10131 0112 2370 strb r3, [r4] - 880:Src/main.c **** UART_transmission_request = NO_MESS; - 10132 .loc 1 880 5 is_stmt 1 view .LVU3219 - 880:Src/main.c **** UART_transmission_request = NO_MESS; - 10133 .loc 1 880 18 is_stmt 0 view .LVU3220 - 10134 0114 6370 strb r3, [r4, #1] - 881:Src/main.c **** break; - 10135 .loc 1 881 5 is_stmt 1 view .LVU3221 - 881:Src/main.c **** break; - 10136 .loc 1 881 31 is_stmt 0 view .LVU3222 - 10137 0116 5E4A ldr r2, .L612+24 - 10138 0118 1370 strb r3, [r2] - 882:Src/main.c **** case MESS_02://Transmith packet - 10139 .loc 1 882 4 is_stmt 1 view .LVU3223 - 10140 .L589: - 916:Src/main.c **** { - 10141 .loc 1 916 5 view .LVU3224 - 916:Src/main.c **** { - 10142 .loc 1 916 17 is_stmt 0 view .LVU3225 - 10143 011a 5F4B ldr r3, .L612+32 - 10144 011c 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 916:Src/main.c **** { - 10145 .loc 1 916 8 view .LVU3226 - 10146 011e 012B cmp r3, #1 - 10147 0120 00F0A584 beq .L601 - 10148 .L535: - 311:Src/main.c **** { - 10149 .loc 1 311 3 is_stmt 1 view .LVU3227 - 313:Src/main.c **** { - 10150 .loc 1 313 3 view .LVU3228 - 313:Src/main.c **** { - 10151 .loc 1 313 8 is_stmt 0 view .LVU3229 - 10152 0124 4FF48071 mov r1, #256 - 10153 0128 5C48 ldr r0, .L612+36 - 10154 012a FFF7FEFF bl HAL_GPIO_ReadPin - 10155 .LVL898: - 313:Src/main.c **** { - 10156 .loc 1 313 6 discriminator 1 view .LVU3230 - 10157 012e 0128 cmp r0, #1 - 10158 0130 ABD0 beq .L602 - 10159 .L536: - 328:Src/main.c **** { - 10160 .loc 1 328 4 is_stmt 1 view .LVU3231 - 10161 0132 5B4B ldr r3, .L612+40 - 10162 0134 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 10163 0136 0A2B cmp r3, #10 - 10164 0138 DBD8 bhi .L540 - 10165 013a 01A2 adr r2, .L542 - 10166 013c 52F823F0 ldr pc, [r2, r3, lsl #2] - 10167 .p2align 2 - ARM GAS /tmp/ccwR4KB7.s page 578 + 970:Src/main.c **** { + 10928 .loc 1 970 3 view .LVU3453 + 10929 00fe 6A4B ldr r3, .L679+28 + 10930 0100 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 10931 0102 022B cmp r3, #2 + 10932 0104 00F0F384 beq .L648 + 10933 0108 032B cmp r3, #3 + 10934 010a 00F02685 beq .L664 + 10935 010e 012B cmp r3, #1 + 10936 0110 09D1 bne .L650 + 973:Src/main.c **** //HAL_UART_Transmit(&huart1, State_Data, 2, 10); + 10937 .loc 1 973 5 view .LVU3454 + 10938 0112 664C ldr r4, .L679+32 + 10939 0114 0221 movs r1, #2 + 10940 0116 2046 mov r0, r4 + 10941 0118 FFF7FEFF bl USART_TX + 10942 .LVL986: + 975:Src/main.c **** State_Data[1]=0;//All OK! + 10943 .loc 1 975 5 view .LVU3455 + 975:Src/main.c **** State_Data[1]=0;//All OK! + 10944 .loc 1 975 18 is_stmt 0 view .LVU3456 + 10945 011c 0023 movs r3, #0 + 10946 011e 2370 strb r3, [r4] + 976:Src/main.c **** UART_transmission_request = NO_MESS; + 10947 .loc 1 976 5 is_stmt 1 view .LVU3457 + 976:Src/main.c **** UART_transmission_request = NO_MESS; + 10948 .loc 1 976 18 is_stmt 0 view .LVU3458 + 10949 0120 6370 strb r3, [r4, #1] + 977:Src/main.c **** break; + 10950 .loc 1 977 5 is_stmt 1 view .LVU3459 + 977:Src/main.c **** break; + 10951 .loc 1 977 31 is_stmt 0 view .LVU3460 + 10952 0122 614A ldr r2, .L679+28 + 10953 0124 1370 strb r3, [r2] + 978:Src/main.c **** case MESS_02://Transmith packet + 10954 .loc 1 978 4 is_stmt 1 view .LVU3461 + 10955 .L650: +1012:Src/main.c **** { + 10956 .loc 1 1012 5 view .LVU3462 +1012:Src/main.c **** { + 10957 .loc 1 1012 17 is_stmt 0 view .LVU3463 + 10958 0126 624B ldr r3, .L679+36 + 10959 0128 1B78 ldrb r3, [r3] @ zero_extendqisi2 +1012:Src/main.c **** { + 10960 .loc 1 1012 8 view .LVU3464 + 10961 012a 012B cmp r3, #1 + 10962 012c 00F01785 beq .L667 + 10963 .L586: + 330:Src/main.c **** { + 10964 .loc 1 330 3 is_stmt 1 view .LVU3465 + 332:Src/main.c **** { + 10965 .loc 1 332 3 view .LVU3466 + 332:Src/main.c **** { + 10966 .loc 1 332 8 is_stmt 0 view .LVU3467 + 10967 0130 4FF48071 mov r1, #256 + 10968 0134 5F48 ldr r0, .L679+40 + 10969 0136 FFF7FEFF bl HAL_GPIO_ReadPin + ARM GAS /tmp/ccEQxcUB.s page 601 - 10168 .L542: - 10169 0140 E3000000 .word .L552+1 - 10170 0144 6D010000 .word .L551+1 - 10171 0148 D7010000 .word .L550+1 - 10172 014c 0D020000 .word .L549+1 - 10173 0150 3D020000 .word .L548+1 - 10174 0154 4D020000 .word .L547+1 - 10175 0158 69020000 .word .L546+1 - 10176 015c CD020000 .word .L545+1 - 10177 0160 F9040000 .word .L544+1 - 10178 0164 8D050000 .word .L543+1 - 10179 0168 21040000 .word .L541+1 - 10180 .p2align 1 - 10181 .L551: - 336:Src/main.c **** if (CheckChecksum(COMMAND)) - 10182 .loc 1 336 6 view .LVU3232 - 336:Src/main.c **** if (CheckChecksum(COMMAND)) - 10183 .loc 1 336 18 is_stmt 0 view .LVU3233 - 10184 016c 4D4C ldr r4, .L612+44 - 10185 016e 0D21 movs r1, #13 - 10186 0170 2046 mov r0, r4 - 10187 0172 FFF7FEFF bl CalculateChecksum - 10188 .LVL899: - 336:Src/main.c **** if (CheckChecksum(COMMAND)) - 10189 .loc 1 336 16 discriminator 1 view .LVU3234 - 10190 0176 4C4B ldr r3, .L612+48 - 10191 0178 1880 strh r0, [r3] @ movhi - 337:Src/main.c **** { - 10192 .loc 1 337 6 is_stmt 1 view .LVU3235 - 337:Src/main.c **** { - 10193 .loc 1 337 10 is_stmt 0 view .LVU3236 - 10194 017a 2046 mov r0, r4 - 10195 017c FFF7FEFF bl CheckChecksum - 10196 .LVL900: - 337:Src/main.c **** { - 10197 .loc 1 337 9 discriminator 1 view .LVU3237 - 10198 0180 70B9 cbnz r0, .L603 - 350:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10199 .loc 1 350 7 is_stmt 1 view .LVU3238 - 350:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10200 .loc 1 350 17 is_stmt 0 view .LVU3239 - 10201 0182 444A ldr r2, .L612+28 - 10202 0184 1378 ldrb r3, [r2] @ zero_extendqisi2 - 350:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10203 .loc 1 350 21 view .LVU3240 - 10204 0186 43F00403 orr r3, r3, #4 - 10205 018a 1370 strb r3, [r2] - 351:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10206 .loc 1 351 7 is_stmt 1 view .LVU3241 - 351:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10207 .loc 1 351 17 is_stmt 0 view .LVU3242 - 10208 018c 444B ldr r3, .L612+40 - 10209 018e 0222 movs r2, #2 - 10210 0190 1A70 strb r2, [r3] - 352:Src/main.c **** } - 10211 .loc 1 352 7 is_stmt 1 view .LVU3243 - 352:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 579 + 10970 .LVL987: + 332:Src/main.c **** { + 10971 .loc 1 332 6 discriminator 1 view .LVU3468 + 10972 013a 0128 cmp r0, #1 + 10973 013c ABD0 beq .L668 + 10974 .L587: + 347:Src/main.c **** { + 10975 .loc 1 347 4 is_stmt 1 view .LVU3469 + 10976 013e 5E4B ldr r3, .L679+44 + 10977 0140 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 10978 0142 0C2B cmp r3, #12 + 10979 0144 DBD8 bhi .L591 + 10980 0146 01A2 adr r2, .L593 + 10981 0148 52F823F0 ldr pc, [r2, r3, lsl #2] + 10982 .p2align 2 + 10983 .L593: + 10984 014c EF000000 .word .L605+1 + 10985 0150 81010000 .word .L604+1 + 10986 0154 EB010000 .word .L603+1 + 10987 0158 21020000 .word .L602+1 + 10988 015c 51020000 .word .L601+1 + 10989 0160 61020000 .word .L600+1 + 10990 0164 7D020000 .word .L599+1 + 10991 0168 E5020000 .word .L598+1 + 10992 016c 1B060000 .word .L597+1 + 10993 0170 61060000 .word .L596+1 + 10994 0174 39040000 .word .L595+1 + 10995 0178 15050000 .word .L594+1 + 10996 017c 65050000 .word .L592+1 + 10997 .p2align 1 + 10998 .L604: + 355:Src/main.c **** if (CheckChecksum(COMMAND)) + 10999 .loc 1 355 6 view .LVU3470 + 355:Src/main.c **** if (CheckChecksum(COMMAND)) + 11000 .loc 1 355 18 is_stmt 0 view .LVU3471 + 11001 0180 4E4C ldr r4, .L679+48 + 11002 0182 0D21 movs r1, #13 + 11003 0184 2046 mov r0, r4 + 11004 0186 FFF7FEFF bl CalculateChecksum + 11005 .LVL988: + 355:Src/main.c **** if (CheckChecksum(COMMAND)) + 11006 .loc 1 355 16 discriminator 1 view .LVU3472 + 11007 018a 4D4B ldr r3, .L679+52 + 11008 018c 1880 strh r0, [r3] @ movhi + 356:Src/main.c **** { + 11009 .loc 1 356 6 is_stmt 1 view .LVU3473 + 356:Src/main.c **** { + 11010 .loc 1 356 10 is_stmt 0 view .LVU3474 + 11011 018e 2046 mov r0, r4 + 11012 0190 FFF7FEFF bl CheckChecksum + 11013 .LVL989: + 356:Src/main.c **** { + 11014 .loc 1 356 9 discriminator 1 view .LVU3475 + 11015 0194 70B9 cbnz r0, .L669 + 369:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 11016 .loc 1 369 7 is_stmt 1 view .LVU3476 + 369:Src/main.c **** CPU_state = DEFAULT_ENABLE; + ARM GAS /tmp/ccEQxcUB.s page 602 - 10212 .loc 1 352 21 is_stmt 0 view .LVU3244 - 10213 0192 3D4B ldr r3, .L612+16 - 10214 0194 0022 movs r2, #0 - 10215 0196 1A70 strb r2, [r3] - 10216 .L554: - 354:Src/main.c **** break; - 10217 .loc 1 354 6 is_stmt 1 view .LVU3245 - 354:Src/main.c **** break; - 10218 .loc 1 354 32 is_stmt 0 view .LVU3246 - 10219 0198 3D4B ldr r3, .L612+24 - 10220 019a 0122 movs r2, #1 - 10221 019c 1A70 strb r2, [r3] - 355:Src/main.c **** case DEFAULT_ENABLE://2 - Go to HALT - 10222 .loc 1 355 5 is_stmt 1 view .LVU3247 - 10223 019e A8E7 b .L540 - 10224 .L603: - 339:Src/main.c **** LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC & TEC2 - 10225 .loc 1 339 7 view .LVU3248 - 10226 .LVL901: - 10227 .LBB658: - 10228 .LBI658: + 11017 .loc 1 369 17 is_stmt 0 view .LVU3477 + 11018 0196 454A ldr r2, .L679+32 + 11019 0198 1378 ldrb r3, [r2] @ zero_extendqisi2 + 369:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 11020 .loc 1 369 21 view .LVU3478 + 11021 019a 43F00403 orr r3, r3, #4 + 11022 019e 1370 strb r3, [r2] + 370:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 11023 .loc 1 370 7 is_stmt 1 view .LVU3479 + 370:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 11024 .loc 1 370 17 is_stmt 0 view .LVU3480 + 11025 01a0 454B ldr r3, .L679+44 + 11026 01a2 0222 movs r2, #2 + 11027 01a4 1A70 strb r2, [r3] + 371:Src/main.c **** } + 11028 .loc 1 371 7 is_stmt 1 view .LVU3481 + 371:Src/main.c **** } + 11029 .loc 1 371 21 is_stmt 0 view .LVU3482 + 11030 01a6 3E4B ldr r3, .L679+20 + 11031 01a8 0022 movs r2, #0 + 11032 01aa 1A70 strb r2, [r3] + 11033 .L607: + 373:Src/main.c **** break; + 11034 .loc 1 373 6 is_stmt 1 view .LVU3483 + 373:Src/main.c **** break; + 11035 .loc 1 373 32 is_stmt 0 view .LVU3484 + 11036 01ac 3E4B ldr r3, .L679+28 + 11037 01ae 0122 movs r2, #1 + 11038 01b0 1A70 strb r2, [r3] + 374:Src/main.c **** case DEFAULT_ENABLE://2 - Go to HALT + 11039 .loc 1 374 5 is_stmt 1 view .LVU3485 + 11040 01b2 A4E7 b .L591 + 11041 .L669: + 358:Src/main.c **** LL_SPI_Enable(SPI6);//Enable SPI for Laser2 DAC & TEC2 + 11042 .loc 1 358 7 view .LVU3486 + 11043 .LVL990: + 11044 .LBB695: + 11045 .LBI695: 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 10229 .loc 4 358 22 view .LVU3249 - 10230 .LBB659: + 11046 .loc 4 358 22 view .LVU3487 + 11047 .LBB696: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10231 .loc 4 360 3 view .LVU3250 - 10232 01a0 424A ldr r2, .L612+52 - 10233 01a2 1368 ldr r3, [r2] - 10234 01a4 43F04003 orr r3, r3, #64 - 10235 01a8 1360 str r3, [r2] - 10236 .LVL902: + 11048 .loc 4 360 3 view .LVU3488 + 11049 01b4 434A ldr r2, .L679+56 + 11050 01b6 1368 ldr r3, [r2] + 11051 01b8 43F04003 orr r3, r3, #64 + 11052 01bc 1360 str r3, [r2] + 11053 .LVL991: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10237 .loc 4 360 3 is_stmt 0 view .LVU3251 - 10238 .LBE659: - 10239 .LBE658: - 340:Src/main.c **** Decode_uart(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); - 10240 .loc 1 340 7 is_stmt 1 view .LVU3252 - 10241 .LBB660: - 10242 .LBI660: + 11054 .loc 4 360 3 is_stmt 0 view .LVU3489 + 11055 .LBE696: + 11056 .LBE695: + 359:Src/main.c **** Decode_uart(COMMAND, &LD1_curr_setup, &LD2_curr_setup, &Curr_setup); + 11057 .loc 1 359 7 is_stmt 1 view .LVU3490 + 11058 .LBB697: + 11059 .LBI697: 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 10243 .loc 4 358 22 view .LVU3253 - 10244 .LBB661: + ARM GAS /tmp/ccEQxcUB.s page 603 + + + 11060 .loc 4 358 22 view .LVU3491 + 11061 .LBB698: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10245 .loc 4 360 3 view .LVU3254 - 10246 01aa 02F58E32 add r2, r2, #72704 - 10247 01ae 1368 ldr r3, [r2] - 10248 01b0 43F04003 orr r3, r3, #64 - 10249 01b4 1360 str r3, [r2] - 10250 .LVL903: + 11062 .loc 4 360 3 view .LVU3492 + 11063 01be 02F58E32 add r2, r2, #72704 + 11064 01c2 1368 ldr r3, [r2] + 11065 01c4 43F04003 orr r3, r3, #64 + 11066 01c8 1360 str r3, [r2] + 11067 .LVL992: 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10251 .loc 4 360 3 is_stmt 0 view .LVU3255 - 10252 .LBE661: - 10253 .LBE660: - 341:Src/main.c **** TO6_before = TO6; - 10254 .loc 1 341 7 is_stmt 1 view .LVU3256 - 10255 01b6 3E4B ldr r3, .L612+56 - 10256 01b8 3E4A ldr r2, .L612+60 - ARM GAS /tmp/ccwR4KB7.s page 580 + 11068 .loc 4 360 3 is_stmt 0 view .LVU3493 + 11069 .LBE698: + 11070 .LBE697: + 360:Src/main.c **** TO6_before = TO6; + 11071 .loc 1 360 7 is_stmt 1 view .LVU3494 + 11072 01ca 3F4B ldr r3, .L679+60 + 11073 01cc 3F4A ldr r2, .L679+64 + 11074 01ce 4049 ldr r1, .L679+68 + 11075 01d0 2046 mov r0, r4 + 11076 01d2 FFF7FEFF bl Decode_uart + 11077 .LVL993: + 361:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; + 11078 .loc 1 361 7 view .LVU3495 + 361:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; + 11079 .loc 1 361 18 is_stmt 0 view .LVU3496 + 11080 01d6 3F4B ldr r3, .L679+72 + 11081 01d8 1A68 ldr r2, [r3] + 11082 01da 3F4B ldr r3, .L679+76 + 11083 01dc 1A60 str r2, [r3] + 364:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle + 11084 .loc 1 364 7 is_stmt 1 view .LVU3497 + 364:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle + 11085 .loc 1 364 17 is_stmt 0 view .LVU3498 + 11086 01de 0723 movs r3, #7 + 11087 01e0 354A ldr r2, .L679+44 + 11088 01e2 1370 strb r3, [r2] + 365:Src/main.c **** } + 11089 .loc 1 365 7 is_stmt 1 view .LVU3499 + 365:Src/main.c **** } + 11090 .loc 1 365 21 is_stmt 0 view .LVU3500 + 11091 01e4 2E4A ldr r2, .L679+20 + 11092 01e6 1370 strb r3, [r2] + 11093 01e8 E0E7 b .L607 + 11094 .L603: + 377:Src/main.c **** Stop_TIM10(); + 11095 .loc 1 377 6 is_stmt 1 view .LVU3501 + 377:Src/main.c **** Stop_TIM10(); + 11096 .loc 1 377 31 is_stmt 0 view .LVU3502 + 11097 01ea 2E4B ldr r3, .L679+24 + 11098 01ec 5A68 ldr r2, [r3, #4] @ float + 377:Src/main.c **** Stop_TIM10(); + 11099 .loc 1 377 25 view .LVU3503 + 11100 01ee 1A61 str r2, [r3, #16] @ float + 378:Src/main.c **** Init_params(); + 11101 .loc 1 378 6 is_stmt 1 view .LVU3504 + 11102 01f0 FFF7FEFF bl Stop_TIM10 + 11103 .LVL994: + ARM GAS /tmp/ccEQxcUB.s page 604 - 10257 01ba 3F49 ldr r1, .L612+64 - 10258 01bc 2046 mov r0, r4 - 10259 01be FFF7FEFF bl Decode_uart - 10260 .LVL904: - 342:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; - 10261 .loc 1 342 7 view .LVU3257 - 342:Src/main.c **** //LD1_param.LD_TEMP_Before = LD1_param.LD_TEMP; - 10262 .loc 1 342 18 is_stmt 0 view .LVU3258 - 10263 01c2 3E4B ldr r3, .L612+68 - 10264 01c4 1A68 ldr r2, [r3] - 10265 01c6 3E4B ldr r3, .L612+72 - 10266 01c8 1A60 str r2, [r3] - 345:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle - 10267 .loc 1 345 7 is_stmt 1 view .LVU3259 - 345:Src/main.c **** CPU_state_old = WORK_ENABLE;//Save main current cycle - 10268 .loc 1 345 17 is_stmt 0 view .LVU3260 - 10269 01ca 0723 movs r3, #7 - 10270 01cc 344A ldr r2, .L612+40 - 10271 01ce 1370 strb r3, [r2] - 346:Src/main.c **** } - 10272 .loc 1 346 7 is_stmt 1 view .LVU3261 - 346:Src/main.c **** } - 10273 .loc 1 346 21 is_stmt 0 view .LVU3262 - 10274 01d0 2D4A ldr r2, .L612+16 - 10275 01d2 1370 strb r3, [r2] - 10276 01d4 E0E7 b .L554 - 10277 .L550: - 358:Src/main.c **** Stop_TIM10(); - 10278 .loc 1 358 6 is_stmt 1 view .LVU3263 - 358:Src/main.c **** Stop_TIM10(); - 10279 .loc 1 358 31 is_stmt 0 view .LVU3264 - 10280 01d6 2D4B ldr r3, .L612+20 - 10281 01d8 5A68 ldr r2, [r3, #4] @ float - 358:Src/main.c **** Stop_TIM10(); - 10282 .loc 1 358 25 view .LVU3265 - 10283 01da 1A61 str r2, [r3, #16] @ float - 359:Src/main.c **** Init_params(); - 10284 .loc 1 359 6 is_stmt 1 view .LVU3266 - 10285 01dc FFF7FEFF bl Stop_TIM10 - 10286 .LVL905: - 360:Src/main.c **** LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC & TEC1 - 10287 .loc 1 360 6 view .LVU3267 - 10288 01e0 FFF7FEFF bl Init_params - 10289 .LVL906: - 361:Src/main.c **** LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC & TEC2 - 10290 .loc 1 361 6 view .LVU3268 - 10291 .LBB662: - 10292 .LBI662: + 379:Src/main.c **** LL_SPI_Disable(SPI2);//Disable SPI for Laser1 DAC & TEC1 + 11104 .loc 1 379 6 view .LVU3505 + 11105 01f4 FFF7FEFF bl Init_params + 11106 .LVL995: + 380:Src/main.c **** LL_SPI_Disable(SPI6);//Disable SPI for Laser2 DAC & TEC2 + 11107 .loc 1 380 6 view .LVU3506 + 11108 .LBB699: + 11109 .LBI699: 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 10293 .loc 4 370 22 view .LVU3269 - 10294 .LBB663: + 11110 .loc 4 370 22 view .LVU3507 + 11111 .LBB700: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10295 .loc 4 372 3 view .LVU3270 - 10296 01e4 314A ldr r2, .L612+52 - 10297 01e6 1368 ldr r3, [r2] - 10298 01e8 23F04003 bic r3, r3, #64 - 10299 01ec 1360 str r3, [r2] - ARM GAS /tmp/ccwR4KB7.s page 581 - - - 10300 .LVL907: + 11112 .loc 4 372 3 view .LVU3508 + 11113 01f8 324A ldr r2, .L679+56 + 11114 01fa 1368 ldr r3, [r2] + 11115 01fc 23F04003 bic r3, r3, #64 + 11116 0200 1360 str r3, [r2] + 11117 .LVL996: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10301 .loc 4 372 3 is_stmt 0 view .LVU3271 - 10302 .LBE663: - 10303 .LBE662: - 362:Src/main.c **** CPU_state = HALT; - 10304 .loc 1 362 6 is_stmt 1 view .LVU3272 - 10305 .LBB664: - 10306 .LBI664: + 11118 .loc 4 372 3 is_stmt 0 view .LVU3509 + 11119 .LBE700: + 11120 .LBE699: + 381:Src/main.c **** CPU_state = HALT; + 11121 .loc 1 381 6 is_stmt 1 view .LVU3510 + 11122 .LBB701: + 11123 .LBI701: 370:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** { - 10307 .loc 4 370 22 view .LVU3273 - 10308 .LBB665: + 11124 .loc 4 370 22 view .LVU3511 + 11125 .LBB702: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10309 .loc 4 372 3 view .LVU3274 - 10310 01ee 02F58E32 add r2, r2, #72704 - 10311 01f2 1368 ldr r3, [r2] - 10312 01f4 23F04003 bic r3, r3, #64 - 10313 01f8 1360 str r3, [r2] - 10314 .LVL908: + 11126 .loc 4 372 3 view .LVU3512 + 11127 0202 02F58E32 add r2, r2, #72704 + 11128 0206 1368 ldr r3, [r2] + 11129 0208 23F04003 bic r3, r3, #64 + 11130 020c 1360 str r3, [r2] + 11131 .LVL997: 372:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_spi.h **** } - 10315 .loc 4 372 3 is_stmt 0 view .LVU3275 - 10316 .LBE665: - 10317 .LBE664: - 363:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10318 .loc 1 363 6 is_stmt 1 view .LVU3276 - 363:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10319 .loc 1 363 16 is_stmt 0 view .LVU3277 - 10320 01fa 0023 movs r3, #0 - 10321 01fc 284A ldr r2, .L612+40 - 10322 01fe 1370 strb r3, [r2] - 364:Src/main.c **** UART_transmission_request = MESS_01; - 10323 .loc 1 364 6 is_stmt 1 view .LVU3278 - 364:Src/main.c **** UART_transmission_request = MESS_01; - 10324 .loc 1 364 20 is_stmt 0 view .LVU3279 - 10325 0200 214A ldr r2, .L612+16 - 10326 0202 1370 strb r3, [r2] - 365:Src/main.c **** break; - 10327 .loc 1 365 6 is_stmt 1 view .LVU3280 - 365:Src/main.c **** break; - 10328 .loc 1 365 32 is_stmt 0 view .LVU3281 - 10329 0204 224B ldr r3, .L612+24 - 10330 0206 0122 movs r2, #1 - 10331 0208 1A70 strb r2, [r3] - 366:Src/main.c **** case TRANS_S_ENABLE://3 - Transmith saved packet Before this operation must to be defaulting! - 10332 .loc 1 366 5 is_stmt 1 view .LVU3282 - 10333 020a 72E7 b .L540 - 10334 .L549: - 368:Src/main.c **** State_Data[0]|=temp16&0xff; - 10335 .loc 1 368 6 view .LVU3283 - 368:Src/main.c **** State_Data[0]|=temp16&0xff; - 10336 .loc 1 368 15 is_stmt 0 view .LVU3284 - 10337 020c 2D48 ldr r0, .L612+76 - 10338 020e FFF7FEFF bl SD_READ - 10339 .LVL909: - 368:Src/main.c **** State_Data[0]|=temp16&0xff; - 10340 .loc 1 368 13 discriminator 1 view .LVU3285 - 10341 0212 82B2 uxth r2, r0 - ARM GAS /tmp/ccwR4KB7.s page 582 + 11132 .loc 4 372 3 is_stmt 0 view .LVU3513 + 11133 .LBE702: + 11134 .LBE701: + 382:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 11135 .loc 1 382 6 is_stmt 1 view .LVU3514 + 382:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 11136 .loc 1 382 16 is_stmt 0 view .LVU3515 + 11137 020e 0023 movs r3, #0 + 11138 0210 294A ldr r2, .L679+44 + 11139 0212 1370 strb r3, [r2] + 383:Src/main.c **** UART_transmission_request = MESS_01; + 11140 .loc 1 383 6 is_stmt 1 view .LVU3516 + 383:Src/main.c **** UART_transmission_request = MESS_01; + 11141 .loc 1 383 20 is_stmt 0 view .LVU3517 + 11142 0214 224A ldr r2, .L679+20 + 11143 0216 1370 strb r3, [r2] + 384:Src/main.c **** break; + 11144 .loc 1 384 6 is_stmt 1 view .LVU3518 + 384:Src/main.c **** break; + 11145 .loc 1 384 32 is_stmt 0 view .LVU3519 + ARM GAS /tmp/ccEQxcUB.s page 605 - 10342 0214 2C4B ldr r3, .L612+80 - 10343 0216 1A80 strh r2, [r3] @ movhi - 369:Src/main.c **** if (temp16==0) - 10344 .loc 1 369 6 is_stmt 1 view .LVU3286 - 369:Src/main.c **** if (temp16==0) - 10345 .loc 1 369 16 is_stmt 0 view .LVU3287 - 10346 0218 1E49 ldr r1, .L612+28 - 10347 021a 0B78 ldrb r3, [r1] @ zero_extendqisi2 - 369:Src/main.c **** if (temp16==0) - 10348 .loc 1 369 19 view .LVU3288 - 10349 021c 0343 orrs r3, r3, r0 - 10350 021e 0B70 strb r3, [r1] - 370:Src/main.c **** { - 10351 .loc 1 370 6 is_stmt 1 view .LVU3289 - 370:Src/main.c **** { - 10352 .loc 1 370 9 is_stmt 0 view .LVU3290 - 10353 0220 42B9 cbnz r2, .L555 - 372:Src/main.c **** } - 10354 .loc 1 372 7 is_stmt 1 view .LVU3291 - 372:Src/main.c **** } - 10355 .loc 1 372 33 is_stmt 0 view .LVU3292 - 10356 0222 1B4B ldr r3, .L612+24 - 10357 0224 0322 movs r2, #3 - 10358 0226 1A70 strb r2, [r3] - 10359 .L556: - 378:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10360 .loc 1 378 6 is_stmt 1 view .LVU3293 - 378:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10361 .loc 1 378 20 is_stmt 0 view .LVU3294 - 10362 0228 0023 movs r3, #0 - 10363 022a 174A ldr r2, .L612+16 - 10364 022c 1370 strb r3, [r2] - 379:Src/main.c **** break; - 10365 .loc 1 379 6 is_stmt 1 view .LVU3295 - 379:Src/main.c **** break; - 10366 .loc 1 379 16 is_stmt 0 view .LVU3296 - 10367 022e 1C4A ldr r2, .L612+40 - 10368 0230 1370 strb r3, [r2] - 380:Src/main.c **** case TRANS_ENABLE://4 - Transmith current packet - 10369 .loc 1 380 5 is_stmt 1 view .LVU3297 - 10370 0232 5EE7 b .L540 - 10371 .L555: - 376:Src/main.c **** } - 10372 .loc 1 376 7 view .LVU3298 - 376:Src/main.c **** } - 10373 .loc 1 376 33 is_stmt 0 view .LVU3299 - 10374 0234 164B ldr r3, .L612+24 - 10375 0236 0122 movs r2, #1 - 10376 0238 1A70 strb r2, [r3] - 10377 023a F5E7 b .L556 - 10378 .L548: - 382:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10379 .loc 1 382 6 is_stmt 1 view .LVU3300 - 382:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10380 .loc 1 382 32 is_stmt 0 view .LVU3301 - 10381 023c 144B ldr r3, .L612+24 - 10382 023e 0222 movs r2, #2 - ARM GAS /tmp/ccwR4KB7.s page 583 + 11146 0218 234B ldr r3, .L679+28 + 11147 021a 0122 movs r2, #1 + 11148 021c 1A70 strb r2, [r3] + 385:Src/main.c **** case TRANS_S_ENABLE://3 - Transmith saved packet Before this operation must to be defaulting! + 11149 .loc 1 385 5 is_stmt 1 view .LVU3520 + 11150 021e 6EE7 b .L591 + 11151 .L602: + 387:Src/main.c **** State_Data[0]|=temp16&0xff; + 11152 .loc 1 387 6 view .LVU3521 + 387:Src/main.c **** State_Data[0]|=temp16&0xff; + 11153 .loc 1 387 15 is_stmt 0 view .LVU3522 + 11154 0220 2E48 ldr r0, .L679+80 + 11155 0222 FFF7FEFF bl SD_READ + 11156 .LVL998: + 387:Src/main.c **** State_Data[0]|=temp16&0xff; + 11157 .loc 1 387 13 discriminator 1 view .LVU3523 + 11158 0226 82B2 uxth r2, r0 + 11159 0228 2D4B ldr r3, .L679+84 + 11160 022a 1A80 strh r2, [r3] @ movhi + 388:Src/main.c **** if (temp16==0) + 11161 .loc 1 388 6 is_stmt 1 view .LVU3524 + 388:Src/main.c **** if (temp16==0) + 11162 .loc 1 388 16 is_stmt 0 view .LVU3525 + 11163 022c 1F49 ldr r1, .L679+32 + 11164 022e 0B78 ldrb r3, [r1] @ zero_extendqisi2 + 388:Src/main.c **** if (temp16==0) + 11165 .loc 1 388 19 view .LVU3526 + 11166 0230 0343 orrs r3, r3, r0 + 11167 0232 0B70 strb r3, [r1] + 389:Src/main.c **** { + 11168 .loc 1 389 6 is_stmt 1 view .LVU3527 + 389:Src/main.c **** { + 11169 .loc 1 389 9 is_stmt 0 view .LVU3528 + 11170 0234 42B9 cbnz r2, .L608 + 391:Src/main.c **** } + 11171 .loc 1 391 7 is_stmt 1 view .LVU3529 + 391:Src/main.c **** } + 11172 .loc 1 391 33 is_stmt 0 view .LVU3530 + 11173 0236 1C4B ldr r3, .L679+28 + 11174 0238 0322 movs r2, #3 + 11175 023a 1A70 strb r2, [r3] + 11176 .L609: + 397:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11177 .loc 1 397 6 is_stmt 1 view .LVU3531 + 397:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11178 .loc 1 397 20 is_stmt 0 view .LVU3532 + 11179 023c 0023 movs r3, #0 + 11180 023e 184A ldr r2, .L679+20 + 11181 0240 1370 strb r3, [r2] + 398:Src/main.c **** break; + 11182 .loc 1 398 6 is_stmt 1 view .LVU3533 + 398:Src/main.c **** break; + 11183 .loc 1 398 16 is_stmt 0 view .LVU3534 + 11184 0242 1D4A ldr r2, .L679+44 + 11185 0244 1370 strb r3, [r2] + 399:Src/main.c **** case TRANS_ENABLE://4 - Transmith current packet + 11186 .loc 1 399 5 is_stmt 1 view .LVU3535 + ARM GAS /tmp/ccEQxcUB.s page 606 - 10383 0240 1A70 strb r2, [r3] - 383:Src/main.c **** break; - 10384 .loc 1 383 6 is_stmt 1 view .LVU3302 - 383:Src/main.c **** break; - 10385 .loc 1 383 16 is_stmt 0 view .LVU3303 - 10386 0242 114B ldr r3, .L612+16 - 10387 0244 1A78 ldrb r2, [r3] @ zero_extendqisi2 - 10388 0246 164B ldr r3, .L612+40 - 10389 0248 1A70 strb r2, [r3] - 384:Src/main.c **** case REMOVE_FILE://5 - Remove file from SD - 10390 .loc 1 384 5 is_stmt 1 view .LVU3304 - 10391 024a 52E7 b .L540 - 10392 .L547: - 386:Src/main.c **** UART_transmission_request = MESS_01; - 10393 .loc 1 386 6 view .LVU3305 - 386:Src/main.c **** UART_transmission_request = MESS_01; - 10394 .loc 1 386 21 is_stmt 0 view .LVU3306 - 10395 024c FFF7FEFF bl SD_REMOVE - 10396 .LVL910: - 386:Src/main.c **** UART_transmission_request = MESS_01; - 10397 .loc 1 386 16 discriminator 1 view .LVU3307 - 10398 0250 104A ldr r2, .L612+28 - 10399 0252 1378 ldrb r3, [r2] @ zero_extendqisi2 - 386:Src/main.c **** UART_transmission_request = MESS_01; - 10400 .loc 1 386 19 discriminator 1 view .LVU3308 - 10401 0254 0343 orrs r3, r3, r0 - 10402 0256 1370 strb r3, [r2] - 387:Src/main.c **** CPU_state = CPU_state_old; - 10403 .loc 1 387 6 is_stmt 1 view .LVU3309 - 387:Src/main.c **** CPU_state = CPU_state_old; - 10404 .loc 1 387 32 is_stmt 0 view .LVU3310 - 10405 0258 0D4B ldr r3, .L612+24 - 10406 025a 0122 movs r2, #1 - 10407 025c 1A70 strb r2, [r3] - 388:Src/main.c **** break; - 10408 .loc 1 388 6 is_stmt 1 view .LVU3311 - 388:Src/main.c **** break; - 10409 .loc 1 388 16 is_stmt 0 view .LVU3312 - 10410 025e 0A4B ldr r3, .L612+16 - 10411 0260 1A78 ldrb r2, [r3] @ zero_extendqisi2 - 10412 0262 0F4B ldr r3, .L612+40 - 10413 0264 1A70 strb r2, [r3] - 389:Src/main.c **** case STATE://6 - Transmith state message - 10414 .loc 1 389 5 is_stmt 1 view .LVU3313 - 10415 0266 44E7 b .L540 - 10416 .L546: - 391:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10417 .loc 1 391 6 view .LVU3314 - 391:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle - 10418 .loc 1 391 32 is_stmt 0 view .LVU3315 - 10419 0268 094B ldr r3, .L612+24 - 10420 026a 0122 movs r2, #1 - 10421 026c 1A70 strb r2, [r3] - 392:Src/main.c **** break; - 10422 .loc 1 392 6 is_stmt 1 view .LVU3316 - 392:Src/main.c **** break; - 10423 .loc 1 392 16 is_stmt 0 view .LVU3317 - ARM GAS /tmp/ccwR4KB7.s page 584 + 11187 0246 5AE7 b .L591 + 11188 .L608: + 395:Src/main.c **** } + 11189 .loc 1 395 7 view .LVU3536 + 395:Src/main.c **** } + 11190 .loc 1 395 33 is_stmt 0 view .LVU3537 + 11191 0248 174B ldr r3, .L679+28 + 11192 024a 0122 movs r2, #1 + 11193 024c 1A70 strb r2, [r3] + 11194 024e F5E7 b .L609 + 11195 .L601: + 401:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11196 .loc 1 401 6 is_stmt 1 view .LVU3538 + 401:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11197 .loc 1 401 32 is_stmt 0 view .LVU3539 + 11198 0250 154B ldr r3, .L679+28 + 11199 0252 0222 movs r2, #2 + 11200 0254 1A70 strb r2, [r3] + 402:Src/main.c **** break; + 11201 .loc 1 402 6 is_stmt 1 view .LVU3540 + 402:Src/main.c **** break; + 11202 .loc 1 402 16 is_stmt 0 view .LVU3541 + 11203 0256 124B ldr r3, .L679+20 + 11204 0258 1A78 ldrb r2, [r3] @ zero_extendqisi2 + 11205 025a 174B ldr r3, .L679+44 + 11206 025c 1A70 strb r2, [r3] + 403:Src/main.c **** case REMOVE_FILE://5 - Remove file from SD + 11207 .loc 1 403 5 is_stmt 1 view .LVU3542 + 11208 025e 4EE7 b .L591 + 11209 .L600: + 405:Src/main.c **** UART_transmission_request = MESS_01; + 11210 .loc 1 405 6 view .LVU3543 + 405:Src/main.c **** UART_transmission_request = MESS_01; + 11211 .loc 1 405 21 is_stmt 0 view .LVU3544 + 11212 0260 FFF7FEFF bl SD_REMOVE + 11213 .LVL999: + 405:Src/main.c **** UART_transmission_request = MESS_01; + 11214 .loc 1 405 16 discriminator 1 view .LVU3545 + 11215 0264 114A ldr r2, .L679+32 + 11216 0266 1378 ldrb r3, [r2] @ zero_extendqisi2 + 405:Src/main.c **** UART_transmission_request = MESS_01; + 11217 .loc 1 405 19 discriminator 1 view .LVU3546 + 11218 0268 0343 orrs r3, r3, r0 + 11219 026a 1370 strb r3, [r2] + 406:Src/main.c **** CPU_state = CPU_state_old; + 11220 .loc 1 406 6 is_stmt 1 view .LVU3547 + 406:Src/main.c **** CPU_state = CPU_state_old; + 11221 .loc 1 406 32 is_stmt 0 view .LVU3548 + 11222 026c 0E4B ldr r3, .L679+28 + 11223 026e 0122 movs r2, #1 + 11224 0270 1A70 strb r2, [r3] + 407:Src/main.c **** break; + 11225 .loc 1 407 6 is_stmt 1 view .LVU3549 + 407:Src/main.c **** break; + 11226 .loc 1 407 16 is_stmt 0 view .LVU3550 + 11227 0272 0B4B ldr r3, .L679+20 + 11228 0274 1A78 ldrb r2, [r3] @ zero_extendqisi2 + ARM GAS /tmp/ccEQxcUB.s page 607 - 10424 026e 064B ldr r3, .L612+16 - 10425 0270 1A78 ldrb r2, [r3] @ zero_extendqisi2 - 10426 0272 0B4B ldr r3, .L612+40 - 10427 0274 1A70 strb r2, [r3] - 393:Src/main.c **** case WORK_ENABLE://7 - Main work cycle - 10428 .loc 1 393 5 is_stmt 1 view .LVU3318 - 10429 0276 3CE7 b .L540 - 10430 .L613: - 10431 .align 2 - 10432 .L612: - 10433 0278 00080040 .word 1073743872 - 10434 027c 00000000 .word u_rx_flg - 10435 0280 00100140 .word 1073811456 - 10436 0284 00E100E0 .word -536813312 - 10437 0288 00000000 .word CPU_state_old - 10438 028c 00000000 .word task - 10439 0290 00000000 .word UART_transmission_request - 10440 0294 00000000 .word State_Data - 10441 0298 00000000 .word flg_tmt - 10442 029c 00000240 .word 1073872896 - 10443 02a0 00000000 .word CPU_state - 10444 02a4 00000000 .word COMMAND - 10445 02a8 00000000 .word CS_result - 10446 02ac 00380040 .word 1073756160 - 10447 02b0 00000000 .word Curr_setup - 10448 02b4 00000000 .word LD2_curr_setup - 10449 02b8 00000000 .word LD1_curr_setup - 10450 02bc 00000000 .word TO6 - 10451 02c0 00000000 .word TO6_before - 10452 02c4 00000000 .word Long_Data - 10453 02c8 00000000 .word temp16 - 10454 .L545: - 395:Src/main.c **** Stop_TIM10(); - 10455 .loc 1 395 6 view .LVU3319 - 395:Src/main.c **** Stop_TIM10(); - 10456 .loc 1 395 31 is_stmt 0 view .LVU3320 - 10457 02cc 9C4B ldr r3, .L614 - 10458 02ce 5A68 ldr r2, [r3, #4] @ float - 395:Src/main.c **** Stop_TIM10(); - 10459 .loc 1 395 25 view .LVU3321 - 10460 02d0 1A61 str r2, [r3, #16] @ float - 396:Src/main.c **** if (TO7>TO7_before)//Main work cycle go with the timer 7 (1000 us or 1 kHz) - 10461 .loc 1 396 6 is_stmt 1 view .LVU3322 - 10462 02d2 FFF7FEFF bl Stop_TIM10 - 10463 .LVL911: - 397:Src/main.c **** { - 10464 .loc 1 397 6 view .LVU3323 - 397:Src/main.c **** { - 10465 .loc 1 397 13 is_stmt 0 view .LVU3324 - 10466 02d6 9B4B ldr r3, .L614+4 - 10467 02d8 1B68 ldr r3, [r3] - 10468 02da 9B4A ldr r2, .L614+8 - 10469 02dc 1268 ldr r2, [r2] - 397:Src/main.c **** { - 10470 .loc 1 397 9 view .LVU3325 - 10471 02de 9342 cmp r3, r2 - 10472 02e0 7FF607AF bls .L540 - ARM GAS /tmp/ccwR4KB7.s page 585 + 11229 0276 104B ldr r3, .L679+44 + 11230 0278 1A70 strb r2, [r3] + 408:Src/main.c **** case STATE://6 - Transmith state message + 11231 .loc 1 408 5 is_stmt 1 view .LVU3551 + 11232 027a 40E7 b .L591 + 11233 .L599: + 410:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11234 .loc 1 410 6 view .LVU3552 + 410:Src/main.c **** CPU_state = CPU_state_old;//Return to main current cycle + 11235 .loc 1 410 32 is_stmt 0 view .LVU3553 + 11236 027c 0A4B ldr r3, .L679+28 + 11237 027e 0122 movs r2, #1 + 11238 0280 1A70 strb r2, [r3] + 411:Src/main.c **** break; + 11239 .loc 1 411 6 is_stmt 1 view .LVU3554 + 411:Src/main.c **** break; + 11240 .loc 1 411 16 is_stmt 0 view .LVU3555 + 11241 0282 074B ldr r3, .L679+20 + 11242 0284 1A78 ldrb r2, [r3] @ zero_extendqisi2 + 11243 0286 0C4B ldr r3, .L679+44 + 11244 0288 1A70 strb r2, [r3] + 412:Src/main.c **** case WORK_ENABLE://7 - Main work cycle + 11245 .loc 1 412 5 is_stmt 1 view .LVU3556 + 11246 028a 38E7 b .L591 + 11247 .L680: + 11248 .align 2 + 11249 .L679: + 11250 028c 00080040 .word 1073743872 + 11251 0290 00000000 .word htim1 + 11252 0294 00000000 .word u_rx_flg + 11253 0298 00100140 .word 1073811456 + 11254 029c 00E100E0 .word -536813312 + 11255 02a0 00000000 .word CPU_state_old + 11256 02a4 00000000 .word task + 11257 02a8 00000000 .word UART_transmission_request + 11258 02ac 00000000 .word State_Data + 11259 02b0 00000000 .word flg_tmt + 11260 02b4 00000240 .word 1073872896 + 11261 02b8 00000000 .word CPU_state + 11262 02bc 00000000 .word COMMAND + 11263 02c0 00000000 .word CS_result + 11264 02c4 00380040 .word 1073756160 + 11265 02c8 00000000 .word Curr_setup + 11266 02cc 00000000 .word LD2_curr_setup + 11267 02d0 00000000 .word LD1_curr_setup + 11268 02d4 00000000 .word TO6 + 11269 02d8 00000000 .word TO6_before + 11270 02dc 00000000 .word Long_Data + 11271 02e0 00000000 .word temp16 + 11272 .L598: + 414:Src/main.c **** Stop_TIM10(); + 11273 .loc 1 414 6 view .LVU3557 + 414:Src/main.c **** Stop_TIM10(); + 11274 .loc 1 414 31 is_stmt 0 view .LVU3558 + 11275 02e4 B24B ldr r3, .L681 + 11276 02e6 5A68 ldr r2, [r3, #4] @ float + 414:Src/main.c **** Stop_TIM10(); + ARM GAS /tmp/ccEQxcUB.s page 608 - 399:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 10473 .loc 1 399 7 is_stmt 1 view .LVU3326 - 399:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 10474 .loc 1 399 18 is_stmt 0 view .LVU3327 - 10475 02e4 984A ldr r2, .L614+8 - 10476 02e6 1360 str r3, [r2] - 400:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 10477 .loc 1 400 7 is_stmt 1 view .LVU3328 - 400:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 10478 .loc 1 400 25 is_stmt 0 view .LVU3329 - 10479 02e8 0120 movs r0, #1 - 10480 02ea FFF7FEFF bl MPhD_T - 10481 .LVL912: - 400:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 10482 .loc 1 400 23 discriminator 1 view .LVU3330 - 10483 02ee 974F ldr r7, .L614+12 - 10484 02f0 3881 strh r0, [r7, #8] @ movhi - 401:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10485 .loc 1 401 7 is_stmt 1 view .LVU3331 - 401:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10486 .loc 1 401 25 is_stmt 0 view .LVU3332 - 10487 02f2 0120 movs r0, #1 - 10488 02f4 FFF7FEFF bl MPhD_T - 10489 .LVL913: - 401:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10490 .loc 1 401 23 discriminator 1 view .LVU3333 - 10491 02f8 3881 strh r0, [r7, #8] @ movhi - 402:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10492 .loc 1 402 7 is_stmt 1 view .LVU3334 - 402:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10493 .loc 1 402 25 is_stmt 0 view .LVU3335 - 10494 02fa 0220 movs r0, #2 - 10495 02fc FFF7FEFF bl MPhD_T - 10496 .LVL914: - 402:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 10497 .loc 1 402 23 discriminator 1 view .LVU3336 - 10498 0300 934E ldr r6, .L614+16 - 10499 0302 3081 strh r0, [r6, #8] @ movhi - 403:Src/main.c **** - 10500 .loc 1 403 7 is_stmt 1 view .LVU3337 - 403:Src/main.c **** - 10501 .loc 1 403 25 is_stmt 0 view .LVU3338 - 10502 0304 0220 movs r0, #2 - 10503 0306 FFF7FEFF bl MPhD_T - 10504 .LVL915: - 403:Src/main.c **** - 10505 .loc 1 403 23 discriminator 1 view .LVU3339 - 10506 030a 3081 strh r0, [r6, #8] @ movhi - 406:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); - 10507 .loc 1 406 7 is_stmt 1 view .LVU3340 - 406:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); - 10508 .loc 1 406 14 is_stmt 0 view .LVU3341 - 10509 030c 0320 movs r0, #3 - 10510 030e FFF7FEFF bl MPhD_T - 10511 .LVL916: - 407:Src/main.c **** (void) MPhD_T(4); - 10512 .loc 1 407 7 is_stmt 1 view .LVU3342 - ARM GAS /tmp/ccwR4KB7.s page 586 + 11277 .loc 1 414 25 view .LVU3559 + 11278 02e8 1A61 str r2, [r3, #16] @ float + 415:Src/main.c **** if (TO7>TO7_before)//Main work cycle go with the timer 7 (1000 us or 1 kHz) + 11279 .loc 1 415 6 is_stmt 1 view .LVU3560 + 11280 02ea FFF7FEFF bl Stop_TIM10 + 11281 .LVL1000: + 416:Src/main.c **** { + 11282 .loc 1 416 6 view .LVU3561 + 416:Src/main.c **** { + 11283 .loc 1 416 13 is_stmt 0 view .LVU3562 + 11284 02ee B14B ldr r3, .L681+4 + 11285 02f0 1B68 ldr r3, [r3] + 11286 02f2 B14A ldr r2, .L681+8 + 11287 02f4 1268 ldr r2, [r2] + 416:Src/main.c **** { + 11288 .loc 1 416 9 view .LVU3563 + 11289 02f6 9342 cmp r3, r2 + 11290 02f8 7FF601AF bls .L591 + 418:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 11291 .loc 1 418 7 is_stmt 1 view .LVU3564 + 418:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 11292 .loc 1 418 18 is_stmt 0 view .LVU3565 + 11293 02fc AE4A ldr r2, .L681+8 + 11294 02fe 1360 str r3, [r2] + 419:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 11295 .loc 1 419 7 is_stmt 1 view .LVU3566 + 419:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 11296 .loc 1 419 25 is_stmt 0 view .LVU3567 + 11297 0300 0120 movs r0, #1 + 11298 0302 FFF7FEFF bl MPhD_T + 11299 .LVL1001: + 419:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 11300 .loc 1 419 23 discriminator 1 view .LVU3568 + 11301 0306 AD4F ldr r7, .L681+12 + 11302 0308 3881 strh r0, [r7, #8] @ movhi + 420:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11303 .loc 1 420 7 is_stmt 1 view .LVU3569 + 420:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11304 .loc 1 420 25 is_stmt 0 view .LVU3570 + 11305 030a 0120 movs r0, #1 + 11306 030c FFF7FEFF bl MPhD_T + 11307 .LVL1002: + 420:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11308 .loc 1 420 23 discriminator 1 view .LVU3571 + 11309 0310 3881 strh r0, [r7, #8] @ movhi + 421:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11310 .loc 1 421 7 is_stmt 1 view .LVU3572 + 421:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11311 .loc 1 421 25 is_stmt 0 view .LVU3573 + 11312 0312 0220 movs r0, #2 + 11313 0314 FFF7FEFF bl MPhD_T + 11314 .LVL1003: + 421:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 11315 .loc 1 421 23 discriminator 1 view .LVU3574 + 11316 0318 A94E ldr r6, .L681+16 + 11317 031a 3081 strh r0, [r6, #8] @ movhi + 422:Src/main.c **** + ARM GAS /tmp/ccEQxcUB.s page 609 - 407:Src/main.c **** (void) MPhD_T(4); - 10513 .loc 1 407 32 is_stmt 0 view .LVU3343 - 10514 0312 0320 movs r0, #3 - 10515 0314 FFF7FEFF bl MPhD_T - 10516 .LVL917: - 407:Src/main.c **** (void) MPhD_T(4); - 10517 .loc 1 407 30 discriminator 1 view .LVU3344 - 10518 0318 3880 strh r0, [r7] @ movhi - 408:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); - 10519 .loc 1 408 7 is_stmt 1 view .LVU3345 - 408:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); - 10520 .loc 1 408 14 is_stmt 0 view .LVU3346 - 10521 031a 0420 movs r0, #4 - 10522 031c FFF7FEFF bl MPhD_T - 10523 .LVL918: - 409:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 10524 .loc 1 409 7 is_stmt 1 view .LVU3347 - 409:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 10525 .loc 1 409 32 is_stmt 0 view .LVU3348 - 10526 0320 0420 movs r0, #4 - 10527 0322 FFF7FEFF bl MPhD_T - 10528 .LVL919: - 409:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 10529 .loc 1 409 30 discriminator 1 view .LVU3349 - 10530 0326 3080 strh r0, [r6] @ movhi - 410:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 - 10531 .loc 1 410 7 is_stmt 1 view .LVU3350 - 410:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 - 10532 .loc 1 410 14 is_stmt 0 view .LVU3351 - 10533 0328 DFF85882 ldr r8, .L614+68 - 10534 032c 0122 movs r2, #1 - 10535 032e 3946 mov r1, r7 - 10536 0330 4046 mov r0, r8 - 10537 0332 FFF7FEFF bl PID_Controller_Temp - 10538 .LVL920: - 10539 0336 0146 mov r1, r0 - 410:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 - 10540 .loc 1 410 13 discriminator 1 view .LVU3352 - 10541 0338 864D ldr r5, .L614+20 - 10542 033a 2880 strh r0, [r5] @ movhi - 411:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 10543 .loc 1 411 7 is_stmt 1 view .LVU3353 - 10544 033c 0320 movs r0, #3 - 10545 033e FFF7FEFF bl Set_LTEC - 10546 .LVL921: - 412:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 - 10547 .loc 1 412 7 view .LVU3354 - 412:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 - 10548 .loc 1 412 14 is_stmt 0 view .LVU3355 - 10549 0342 DFF83C92 ldr r9, .L614+64 - 10550 0346 0222 movs r2, #2 - 10551 0348 3146 mov r1, r6 - 10552 034a 4846 mov r0, r9 - 10553 034c FFF7FEFF bl PID_Controller_Temp - 10554 .LVL922: - 10555 0350 0146 mov r1, r0 - 412:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 - ARM GAS /tmp/ccwR4KB7.s page 587 + 11318 .loc 1 422 7 is_stmt 1 view .LVU3575 + 422:Src/main.c **** + 11319 .loc 1 422 25 is_stmt 0 view .LVU3576 + 11320 031c 0220 movs r0, #2 + 11321 031e FFF7FEFF bl MPhD_T + 11322 .LVL1004: + 422:Src/main.c **** + 11323 .loc 1 422 23 discriminator 1 view .LVU3577 + 11324 0322 3081 strh r0, [r6, #8] @ movhi + 425:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); + 11325 .loc 1 425 7 is_stmt 1 view .LVU3578 + 425:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(3); + 11326 .loc 1 425 14 is_stmt 0 view .LVU3579 + 11327 0324 0320 movs r0, #3 + 11328 0326 FFF7FEFF bl MPhD_T + 11329 .LVL1005: + 426:Src/main.c **** (void) MPhD_T(4); + 11330 .loc 1 426 7 is_stmt 1 view .LVU3580 + 426:Src/main.c **** (void) MPhD_T(4); + 11331 .loc 1 426 32 is_stmt 0 view .LVU3581 + 11332 032a 0320 movs r0, #3 + 11333 032c FFF7FEFF bl MPhD_T + 11334 .LVL1006: + 426:Src/main.c **** (void) MPhD_T(4); + 11335 .loc 1 426 30 discriminator 1 view .LVU3582 + 11336 0330 3880 strh r0, [r7] @ movhi + 427:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); + 11337 .loc 1 427 7 is_stmt 1 view .LVU3583 + 427:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(4); + 11338 .loc 1 427 14 is_stmt 0 view .LVU3584 + 11339 0332 0420 movs r0, #4 + 11340 0334 FFF7FEFF bl MPhD_T + 11341 .LVL1007: + 428:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 11342 .loc 1 428 7 is_stmt 1 view .LVU3585 + 428:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 11343 .loc 1 428 32 is_stmt 0 view .LVU3586 + 11344 0338 0420 movs r0, #4 + 11345 033a FFF7FEFF bl MPhD_T + 11346 .LVL1008: + 428:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 11347 .loc 1 428 30 discriminator 1 view .LVU3587 + 11348 033e 3080 strh r0, [r6] @ movhi + 429:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 + 11349 .loc 1 429 7 is_stmt 1 view .LVU3588 + 429:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 + 11350 .loc 1 429 14 is_stmt 0 view .LVU3589 + 11351 0340 DFF8AC82 ldr r8, .L681+64 + 11352 0344 0122 movs r2, #1 + 11353 0346 3946 mov r1, r7 + 11354 0348 4046 mov r0, r8 + 11355 034a FFF7FEFF bl PID_Controller_Temp + 11356 .LVL1009: + 11357 034e 0146 mov r1, r0 + 429:Src/main.c **** Set_LTEC(3, temp16);//Drive Laser TEC 1 + 11358 .loc 1 429 13 discriminator 1 view .LVU3590 + 11359 0350 9C4D ldr r5, .L681+20 + ARM GAS /tmp/ccEQxcUB.s page 610 - 10556 .loc 1 412 13 discriminator 1 view .LVU3356 - 10557 0352 2880 strh r0, [r5] @ movhi - 413:Src/main.c **** - 10558 .loc 1 413 7 is_stmt 1 view .LVU3357 - 10559 0354 0420 movs r0, #4 - 10560 0356 FFF7FEFF bl Set_LTEC - 10561 .LVL923: - 415:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 10562 .loc 1 415 7 view .LVU3358 - 415:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 10563 .loc 1 415 31 is_stmt 0 view .LVU3359 - 10564 035a 3B89 ldrh r3, [r7, #8] - 415:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 10565 .loc 1 415 20 view .LVU3360 - 10566 035c 7E4C ldr r4, .L614+24 - 10567 035e 6380 strh r3, [r4, #2] @ movhi - 416:Src/main.c **** - 10568 .loc 1 416 7 is_stmt 1 view .LVU3361 - 416:Src/main.c **** - 10569 .loc 1 416 31 is_stmt 0 view .LVU3362 - 10570 0360 3389 ldrh r3, [r6, #8] - 416:Src/main.c **** - 10571 .loc 1 416 20 view .LVU3363 - 10572 0362 A380 strh r3, [r4, #4] @ movhi - 418:Src/main.c **** Set_LTEC(2,LD2_curr_setup.CURRENT);//Drive Laser diode 2 - 10573 .loc 1 418 7 is_stmt 1 view .LVU3364 - 10574 0364 B8F80C10 ldrh r1, [r8, #12] - 10575 0368 0120 movs r0, #1 - 10576 036a FFF7FEFF bl Set_LTEC - 10577 .LVL924: - 419:Src/main.c **** - 10578 .loc 1 419 7 view .LVU3365 - 10579 036e B9F80C10 ldrh r1, [r9, #12] - 10580 0372 0220 movs r0, #2 - 10581 0374 FFF7FEFF bl Set_LTEC - 10582 .LVL925: - 423:Src/main.c **** temp16 = Get_ADC(1); - 10583 .loc 1 423 7 view .LVU3366 - 423:Src/main.c **** temp16 = Get_ADC(1); - 10584 .loc 1 423 16 is_stmt 0 view .LVU3367 - 10585 0378 0020 movs r0, #0 - 10586 037a FFF7FEFF bl Get_ADC - 10587 .LVL926: - 423:Src/main.c **** temp16 = Get_ADC(1); - 10588 .loc 1 423 14 discriminator 1 view .LVU3368 - 10589 037e 2880 strh r0, [r5] @ movhi - 424:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain - 10590 .loc 1 424 7 is_stmt 1 view .LVU3369 - 424:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain - 10591 .loc 1 424 16 is_stmt 0 view .LVU3370 - 10592 0380 0120 movs r0, #1 - 10593 0382 FFF7FEFF bl Get_ADC - 10594 .LVL927: - 424:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain - 10595 .loc 1 424 14 discriminator 1 view .LVU3371 - 10596 0386 2880 strh r0, [r5] @ movhi - 425:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 588 + 11360 0352 2880 strh r0, [r5] @ movhi + 430:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 11361 .loc 1 430 7 is_stmt 1 view .LVU3591 + 11362 0354 0320 movs r0, #3 + 11363 0356 FFF7FEFF bl Set_LTEC + 11364 .LVL1010: + 431:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 + 11365 .loc 1 431 7 view .LVU3592 + 431:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 + 11366 .loc 1 431 14 is_stmt 0 view .LVU3593 + 11367 035a DFF89892 ldr r9, .L681+68 + 11368 035e 0222 movs r2, #2 + 11369 0360 3146 mov r1, r6 + 11370 0362 4846 mov r0, r9 + 11371 0364 FFF7FEFF bl PID_Controller_Temp + 11372 .LVL1011: + 11373 0368 0146 mov r1, r0 + 431:Src/main.c **** Set_LTEC(4, temp16);//Drive Laser TEC 2 + 11374 .loc 1 431 13 discriminator 1 view .LVU3594 + 11375 036a 2880 strh r0, [r5] @ movhi + 432:Src/main.c **** + 11376 .loc 1 432 7 is_stmt 1 view .LVU3595 + 11377 036c 0420 movs r0, #4 + 11378 036e FFF7FEFF bl Set_LTEC + 11379 .LVL1012: + 434:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 11380 .loc 1 434 7 view .LVU3596 + 434:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 11381 .loc 1 434 31 is_stmt 0 view .LVU3597 + 11382 0372 3B89 ldrh r3, [r7, #8] + 434:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 11383 .loc 1 434 20 view .LVU3598 + 11384 0374 944C ldr r4, .L681+24 + 11385 0376 6380 strh r3, [r4, #2] @ movhi + 435:Src/main.c **** + 11386 .loc 1 435 7 is_stmt 1 view .LVU3599 + 435:Src/main.c **** + 11387 .loc 1 435 31 is_stmt 0 view .LVU3600 + 11388 0378 3389 ldrh r3, [r6, #8] + 435:Src/main.c **** + 11389 .loc 1 435 20 view .LVU3601 + 11390 037a A380 strh r3, [r4, #4] @ movhi + 437:Src/main.c **** Set_LTEC(2,LD2_curr_setup.CURRENT);//Drive Laser diode 2 + 11391 .loc 1 437 7 is_stmt 1 view .LVU3602 + 11392 037c B8F80C10 ldrh r1, [r8, #12] + 11393 0380 0120 movs r0, #1 + 11394 0382 FFF7FEFF bl Set_LTEC + 11395 .LVL1013: + 438:Src/main.c **** + 11396 .loc 1 438 7 view .LVU3603 + 11397 0386 B9F80C10 ldrh r1, [r9, #12] + 11398 038a 0220 movs r0, #2 + 11399 038c FFF7FEFF bl Set_LTEC + 11400 .LVL1014: + 442:Src/main.c **** temp16 = Get_ADC(1); + 11401 .loc 1 442 7 view .LVU3604 + 442:Src/main.c **** temp16 = Get_ADC(1); + ARM GAS /tmp/ccEQxcUB.s page 611 - 10597 .loc 1 425 7 is_stmt 1 view .LVU3372 - 425:Src/main.c **** - 10598 .loc 1 425 20 is_stmt 0 view .LVU3373 - 10599 0388 E081 strh r0, [r4, #14] @ movhi - 428:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain - 10600 .loc 1 428 7 is_stmt 1 view .LVU3374 - 428:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain - 10601 .loc 1 428 16 is_stmt 0 view .LVU3375 - 10602 038a 0120 movs r0, #1 - 10603 038c FFF7FEFF bl Get_ADC - 10604 .LVL928: - 428:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain - 10605 .loc 1 428 14 discriminator 1 view .LVU3376 - 10606 0390 2880 strh r0, [r5] @ movhi - 429:Src/main.c **** - 10607 .loc 1 429 7 is_stmt 1 view .LVU3377 - 429:Src/main.c **** - 10608 .loc 1 429 20 is_stmt 0 view .LVU3378 - 10609 0392 2082 strh r0, [r4, #16] @ movhi - 432:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor - 10610 .loc 1 432 7 is_stmt 1 view .LVU3379 - 432:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor - 10611 .loc 1 432 16 is_stmt 0 view .LVU3380 - 10612 0394 0120 movs r0, #1 - 10613 0396 FFF7FEFF bl Get_ADC - 10614 .LVL929: - 432:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor - 10615 .loc 1 432 14 discriminator 1 view .LVU3381 - 10616 039a 2880 strh r0, [r5] @ movhi - 433:Src/main.c **** - 10617 .loc 1 433 7 is_stmt 1 view .LVU3382 - 433:Src/main.c **** - 10618 .loc 1 433 20 is_stmt 0 view .LVU3383 - 10619 039c 6082 strh r0, [r4, #18] @ movhi - 436:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor - 10620 .loc 1 436 7 is_stmt 1 view .LVU3384 - 436:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor - 10621 .loc 1 436 16 is_stmt 0 view .LVU3385 - 10622 039e 0120 movs r0, #1 - 10623 03a0 FFF7FEFF bl Get_ADC - 10624 .LVL930: - 436:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor - 10625 .loc 1 436 14 discriminator 1 view .LVU3386 - 10626 03a4 2880 strh r0, [r5] @ movhi - 437:Src/main.c **** - 10627 .loc 1 437 7 is_stmt 1 view .LVU3387 - 437:Src/main.c **** - 10628 .loc 1 437 21 is_stmt 0 view .LVU3388 - 10629 03a6 A082 strh r0, [r4, #20] @ movhi - 440:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor - 10630 .loc 1 440 7 is_stmt 1 view .LVU3389 - 440:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor - 10631 .loc 1 440 16 is_stmt 0 view .LVU3390 - 10632 03a8 0120 movs r0, #1 - 10633 03aa FFF7FEFF bl Get_ADC - 10634 .LVL931: - 440:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor - ARM GAS /tmp/ccwR4KB7.s page 589 + 11402 .loc 1 442 16 is_stmt 0 view .LVU3605 + 11403 0390 0020 movs r0, #0 + 11404 0392 FFF7FEFF bl Get_ADC + 11405 .LVL1015: + 442:Src/main.c **** temp16 = Get_ADC(1); + 11406 .loc 1 442 14 discriminator 1 view .LVU3606 + 11407 0396 2880 strh r0, [r5] @ movhi + 443:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain + 11408 .loc 1 443 7 is_stmt 1 view .LVU3607 + 443:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain + 11409 .loc 1 443 16 is_stmt 0 view .LVU3608 + 11410 0398 0120 movs r0, #1 + 11411 039a FFF7FEFF bl Get_ADC + 11412 .LVL1016: + 443:Src/main.c **** Long_Data[7] = temp16; // PA2 -- 3V_monitor // PB1 -- U_Rt1_ext_Gain + 11413 .loc 1 443 14 discriminator 1 view .LVU3609 + 11414 039e 2880 strh r0, [r5] @ movhi + 444:Src/main.c **** + 11415 .loc 1 444 7 is_stmt 1 view .LVU3610 + 444:Src/main.c **** + 11416 .loc 1 444 20 is_stmt 0 view .LVU3611 + 11417 03a0 E081 strh r0, [r4, #14] @ movhi + 447:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain + 11418 .loc 1 447 7 is_stmt 1 view .LVU3612 + 447:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain + 11419 .loc 1 447 16 is_stmt 0 view .LVU3613 + 11420 03a2 0120 movs r0, #1 + 11421 03a4 FFF7FEFF bl Get_ADC + 11422 .LVL1017: + 447:Src/main.c **** Long_Data[8] = temp16; // PB0 -- U_Rt2_ext_Gain // PB0 -- U_Rt2_ext_Gain + 11423 .loc 1 447 14 discriminator 1 view .LVU3614 + 11424 03a8 2880 strh r0, [r5] @ movhi + 448:Src/main.c **** + 11425 .loc 1 448 7 is_stmt 1 view .LVU3615 + 448:Src/main.c **** + 11426 .loc 1 448 20 is_stmt 0 view .LVU3616 + 11427 03aa 2082 strh r0, [r4, #16] @ movhi + 451:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor + 11428 .loc 1 451 7 is_stmt 1 view .LVU3617 + 451:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor + 11429 .loc 1 451 16 is_stmt 0 view .LVU3618 + 11430 03ac 0120 movs r0, #1 + 11431 03ae FFF7FEFF bl Get_ADC + 11432 .LVL1018: + 451:Src/main.c **** Long_Data[9] = temp16; // PB1 -- U_Rt1_ext_Gain // PA2 -- 3V_monitor + 11433 .loc 1 451 14 discriminator 1 view .LVU3619 + 11434 03b2 2880 strh r0, [r5] @ movhi + 452:Src/main.c **** + 11435 .loc 1 452 7 is_stmt 1 view .LVU3620 + 452:Src/main.c **** + 11436 .loc 1 452 20 is_stmt 0 view .LVU3621 + 11437 03b4 6082 strh r0, [r4, #18] @ movhi + 455:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor + 11438 .loc 1 455 7 is_stmt 1 view .LVU3622 + 455:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor + 11439 .loc 1 455 16 is_stmt 0 view .LVU3623 + 11440 03b6 0120 movs r0, #1 + ARM GAS /tmp/ccEQxcUB.s page 612 - 10635 .loc 1 440 14 discriminator 1 view .LVU3391 - 10636 03ae 2880 strh r0, [r5] @ movhi - 441:Src/main.c **** temp16 = Get_ADC(2); - 10637 .loc 1 441 7 is_stmt 1 view .LVU3392 - 441:Src/main.c **** temp16 = Get_ADC(2); - 10638 .loc 1 441 21 is_stmt 0 view .LVU3393 - 10639 03b0 E082 strh r0, [r4, #22] @ movhi - 442:Src/main.c **** - 10640 .loc 1 442 7 is_stmt 1 view .LVU3394 - 442:Src/main.c **** - 10641 .loc 1 442 16 is_stmt 0 view .LVU3395 - 10642 03b2 0220 movs r0, #2 - 10643 03b4 FFF7FEFF bl Get_ADC - 10644 .LVL932: - 442:Src/main.c **** - 10645 .loc 1 442 14 discriminator 1 view .LVU3396 - 10646 03b8 2880 strh r0, [r5] @ movhi - 445:Src/main.c **** temp16 = Get_ADC(4); - 10647 .loc 1 445 7 is_stmt 1 view .LVU3397 - 445:Src/main.c **** temp16 = Get_ADC(4); - 10648 .loc 1 445 16 is_stmt 0 view .LVU3398 - 10649 03ba 0320 movs r0, #3 - 10650 03bc FFF7FEFF bl Get_ADC - 10651 .LVL933: - 445:Src/main.c **** temp16 = Get_ADC(4); - 10652 .loc 1 445 14 discriminator 1 view .LVU3399 - 10653 03c0 2880 strh r0, [r5] @ movhi - 446:Src/main.c **** Long_Data[12] = temp16; - 10654 .loc 1 446 7 is_stmt 1 view .LVU3400 - 446:Src/main.c **** Long_Data[12] = temp16; - 10655 .loc 1 446 16 is_stmt 0 view .LVU3401 - 10656 03c2 0420 movs r0, #4 - 10657 03c4 FFF7FEFF bl Get_ADC - 10658 .LVL934: - 446:Src/main.c **** Long_Data[12] = temp16; - 10659 .loc 1 446 14 discriminator 1 view .LVU3402 - 10660 03c8 2880 strh r0, [r5] @ movhi - 447:Src/main.c **** temp16 = Get_ADC(5); - 10661 .loc 1 447 7 is_stmt 1 view .LVU3403 - 447:Src/main.c **** temp16 = Get_ADC(5); - 10662 .loc 1 447 21 is_stmt 0 view .LVU3404 - 10663 03ca 2083 strh r0, [r4, #24] @ movhi - 448:Src/main.c **** - 10664 .loc 1 448 7 is_stmt 1 view .LVU3405 - 448:Src/main.c **** - 10665 .loc 1 448 16 is_stmt 0 view .LVU3406 - 10666 03cc 0520 movs r0, #5 - 10667 03ce FFF7FEFF bl Get_ADC - 10668 .LVL935: - 448:Src/main.c **** - 10669 .loc 1 448 14 discriminator 1 view .LVU3407 - 10670 03d2 2880 strh r0, [r5] @ movhi - 451:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 10671 .loc 1 451 7 is_stmt 1 view .LVU3408 - 451:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 10672 .loc 1 451 16 is_stmt 0 view .LVU3409 - 10673 03d4 614B ldr r3, .L614+28 - ARM GAS /tmp/ccwR4KB7.s page 590 - - - 10674 03d6 1B68 ldr r3, [r3] - 10675 03d8 614A ldr r2, .L614+32 - 10676 03da 1360 str r3, [r2] - 452:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 10677 .loc 1 452 7 is_stmt 1 view .LVU3410 - 452:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 10678 .loc 1 452 20 is_stmt 0 view .LVU3411 - 10679 03dc E380 strh r3, [r4, #6] @ movhi - 453:Src/main.c **** - 10680 .loc 1 453 7 is_stmt 1 view .LVU3412 - 453:Src/main.c **** - 10681 .loc 1 453 31 is_stmt 0 view .LVU3413 - 10682 03de 1B0C lsrs r3, r3, #16 - 453:Src/main.c **** - 10683 .loc 1 453 20 view .LVU3414 - 10684 03e0 2381 strh r3, [r4, #8] @ movhi + 11441 03b8 FFF7FEFF bl Get_ADC + 11442 .LVL1019: + 455:Src/main.c **** Long_Data[10] = temp16; // PC0 -- 5V1_monitor // PC0 -- 5V1_monitor + 11443 .loc 1 455 14 discriminator 1 view .LVU3624 + 11444 03bc 2880 strh r0, [r5] @ movhi 456:Src/main.c **** - 10685 .loc 1 456 7 is_stmt 1 view .LVU3415 + 11445 .loc 1 456 7 is_stmt 1 view .LVU3625 456:Src/main.c **** - 10686 .loc 1 456 31 is_stmt 0 view .LVU3416 - 10687 03e2 3B88 ldrh r3, [r7] - 456:Src/main.c **** - 10688 .loc 1 456 20 view .LVU3417 - 10689 03e4 6381 strh r3, [r4, #10] @ movhi - 459:Src/main.c **** - 10690 .loc 1 459 7 is_stmt 1 view .LVU3418 - 459:Src/main.c **** - 10691 .loc 1 459 31 is_stmt 0 view .LVU3419 - 10692 03e6 3388 ldrh r3, [r6] - 459:Src/main.c **** - 10693 .loc 1 459 20 view .LVU3420 - 10694 03e8 A381 strh r3, [r4, #12] @ movhi - 461:Src/main.c **** { - 10695 .loc 1 461 7 is_stmt 1 view .LVU3421 - 461:Src/main.c **** { - 10696 .loc 1 461 21 is_stmt 0 view .LVU3422 - 10697 03ea 5E4B ldr r3, .L614+36 - 10698 03ec DB7A ldrb r3, [r3, #11] @ zero_extendqisi2 - 461:Src/main.c **** { - 10699 .loc 1 461 10 view .LVU3423 - 10700 03ee 012B cmp r3, #1 - 10701 03f0 03D0 beq .L604 - 10702 .L557: - 468:Src/main.c **** } - 10703 .loc 1 468 7 is_stmt 1 view .LVU3424 - 468:Src/main.c **** } - 10704 .loc 1 468 21 is_stmt 0 view .LVU3425 - 10705 03f2 5D4B ldr r3, .L614+40 - 10706 03f4 0722 movs r2, #7 - 10707 03f6 1A70 strb r2, [r3] - 10708 03f8 7BE6 b .L540 - 10709 .L604: - 463:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 10710 .loc 1 463 8 is_stmt 1 view .LVU3426 - 463:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 10711 .loc 1 463 20 is_stmt 0 view .LVU3427 - 10712 03fa 0234 adds r4, r4, #2 - ARM GAS /tmp/ccwR4KB7.s page 591 - - - 10713 03fc 0D21 movs r1, #13 - 10714 03fe 2046 mov r0, r4 - 10715 0400 FFF7FEFF bl CalculateChecksum - 10716 .LVL936: - 10717 0404 0346 mov r3, r0 - 463:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 10718 .loc 1 463 18 discriminator 1 view .LVU3428 - 10719 0406 594A ldr r2, .L614+44 - 10720 0408 1080 strh r0, [r2] @ movhi - 464:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); - 10721 .loc 1 464 8 is_stmt 1 view .LVU3429 - 464:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); - 10722 .loc 1 464 27 is_stmt 0 view .LVU3430 - 10723 040a A01E subs r0, r4, #2 - 10724 040c 8383 strh r3, [r0, #28] @ movhi - 465:Src/main.c **** State_Data[0]|=temp16&0xff; - 10725 .loc 1 465 8 is_stmt 1 view .LVU3431 - 465:Src/main.c **** State_Data[0]|=temp16&0xff; - 10726 .loc 1 465 17 is_stmt 0 view .LVU3432 - 10727 040e FFF7FEFF bl SD_SAVE - 10728 .LVL937: - 10729 0412 0346 mov r3, r0 - 465:Src/main.c **** State_Data[0]|=temp16&0xff; - 10730 .loc 1 465 15 discriminator 1 view .LVU3433 - 10731 0414 2880 strh r0, [r5] @ movhi - 466:Src/main.c **** } - 10732 .loc 1 466 8 is_stmt 1 view .LVU3434 - 466:Src/main.c **** } - 10733 .loc 1 466 18 is_stmt 0 view .LVU3435 - 10734 0416 5649 ldr r1, .L614+48 - 10735 0418 0A78 ldrb r2, [r1] @ zero_extendqisi2 - 466:Src/main.c **** } - 10736 .loc 1 466 21 view .LVU3436 - 10737 041a 1343 orrs r3, r3, r2 - 10738 041c 0B70 strb r3, [r1] - 10739 041e E8E7 b .L557 - 10740 .L541: - 472:Src/main.c **** { - 10741 .loc 1 472 6 is_stmt 1 view .LVU3437 - 472:Src/main.c **** { - 10742 .loc 1 472 10 is_stmt 0 view .LVU3438 - 10743 0420 544C ldr r4, .L614+52 - 10744 0422 0321 movs r1, #3 - 10745 0424 2046 mov r0, r4 - 10746 0426 FFF7FEFF bl CalculateChecksum - 10747 .LVL938: - 472:Src/main.c **** { - 10748 .loc 1 472 69 discriminator 1 view .LVU3439 - 10749 042a E388 ldrh r3, [r4, #6] - 472:Src/main.c **** { - 10750 .loc 1 472 9 discriminator 1 view .LVU3440 - 10751 042c 9842 cmp r0, r3 - 10752 042e 0CD0 beq .L605 - 531:Src/main.c **** } - 10753 .loc 1 531 7 is_stmt 1 view .LVU3441 - 531:Src/main.c **** } - 10754 .loc 1 531 17 is_stmt 0 view .LVU3442 - ARM GAS /tmp/ccwR4KB7.s page 592 - - - 10755 0430 4F4A ldr r2, .L614+48 - 10756 0432 1378 ldrb r3, [r2] @ zero_extendqisi2 - 531:Src/main.c **** } - 10757 .loc 1 531 21 view .LVU3443 - 10758 0434 43F00403 orr r3, r3, #4 - 10759 0438 1370 strb r3, [r2] - 10760 .L560: - 533:Src/main.c **** CPU_state = CPU_state_old; - 10761 .loc 1 533 6 is_stmt 1 view .LVU3444 - 533:Src/main.c **** CPU_state = CPU_state_old; - 10762 .loc 1 533 32 is_stmt 0 view .LVU3445 - 10763 043a 4F4B ldr r3, .L614+56 - 10764 043c 0122 movs r2, #1 - 10765 043e 1A70 strb r2, [r3] - 534:Src/main.c **** break; - 10766 .loc 1 534 6 is_stmt 1 view .LVU3446 - 534:Src/main.c **** break; - 10767 .loc 1 534 16 is_stmt 0 view .LVU3447 - 10768 0440 494B ldr r3, .L614+40 - 10769 0442 1A78 ldrb r2, [r3] @ zero_extendqisi2 - 10770 0444 4D4B ldr r3, .L614+60 - 10771 0446 1A70 strb r2, [r3] - 535:Src/main.c **** case DECODE_TASK: - 10772 .loc 1 535 5 is_stmt 1 view .LVU3448 - 10773 0448 53E6 b .L540 - 10774 .L605: - 10775 .LBB666: - 474:Src/main.c **** uint16_t param0 = COMMAND[1]; - 10776 .loc 1 474 7 view .LVU3449 - 474:Src/main.c **** uint16_t param0 = COMMAND[1]; - 10777 .loc 1 474 16 is_stmt 0 view .LVU3450 - 10778 044a 2388 ldrh r3, [r4] - 10779 .LVL939: - 475:Src/main.c **** uint16_t param1 = COMMAND[2]; - 10780 .loc 1 475 7 is_stmt 1 view .LVU3451 - 475:Src/main.c **** uint16_t param1 = COMMAND[2]; - 10781 .loc 1 475 16 is_stmt 0 view .LVU3452 - 10782 044c 6588 ldrh r5, [r4, #2] - 10783 .LVL940: - 476:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; - 10784 .loc 1 476 7 is_stmt 1 view .LVU3453 - 476:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; - 10785 .loc 1 476 16 is_stmt 0 view .LVU3454 - 10786 044e A488 ldrh r4, [r4, #4] - 10787 .LVL941: - 477:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; - 10788 .loc 1 477 7 is_stmt 1 view .LVU3455 - 477:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; - 10789 .loc 1 477 15 is_stmt 0 view .LVU3456 - 10790 0450 03F00107 and r7, r3, #1 - 10791 .LVL942: - 478:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; - 10792 .loc 1 478 7 is_stmt 1 view .LVU3457 - 478:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; - 10793 .loc 1 478 15 is_stmt 0 view .LVU3458 - 10794 0454 C3F34006 ubfx r6, r3, #1, #1 - 10795 .LVL943: - ARM GAS /tmp/ccwR4KB7.s page 593 - - - 479:Src/main.c **** - 10796 .loc 1 479 7 is_stmt 1 view .LVU3459 - 481:Src/main.c **** { - 10797 .loc 1 481 7 view .LVU3460 - 481:Src/main.c **** { - 10798 .loc 1 481 10 is_stmt 0 view .LVU3461 - 10799 0458 13F0040F tst r3, #4 - 10800 045c 10D1 bne .L606 - 10801 .LBB667: - 494:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); - 10802 .loc 1 494 8 is_stmt 1 view .LVU3462 - 494:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); - 10803 .loc 1 494 16 is_stmt 0 view .LVU3463 - 10804 045e 06B1 cbz r6, .L561 - 494:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); - 10805 .loc 1 494 16 discriminator 1 view .LVU3464 - 10806 0460 0226 movs r6, #2 - 10807 .LVL944: - 10808 .L561: - 495:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); - 10809 .loc 1 495 8 is_stmt 1 view .LVU3465 - 495:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); - 10810 .loc 1 495 16 is_stmt 0 view .LVU3466 - 10811 0462 5FFA85F8 uxtb r8, r5 - 10812 .LVL945: - 496:Src/main.c **** uint16_t pat_period = param1; - 10813 .loc 1 496 8 is_stmt 1 view .LVU3467 - 496:Src/main.c **** uint16_t pat_period = param1; - 10814 .loc 1 496 16 is_stmt 0 view .LVU3468 - 10815 0466 C5F30329 ubfx r9, r5, #8, #4 - 10816 .LVL946: - 497:Src/main.c **** - 10817 .loc 1 497 8 is_stmt 1 view .LVU3469 - 499:Src/main.c **** { - 10818 .loc 1 499 8 view .LVU3470 - 499:Src/main.c **** { - 10819 .loc 1 499 11 is_stmt 0 view .LVU3471 - 10820 046a 2543 orrs r5, r5, r4 - 10821 .LVL947: - 499:Src/main.c **** { - 10822 .loc 1 499 11 view .LVU3472 - 10823 046c 25D0 beq .L594 - 507:Src/main.c **** { - 10824 .loc 1 507 9 is_stmt 1 view .LVU3473 - 507:Src/main.c **** { - 10825 .loc 1 507 12 is_stmt 0 view .LVU3474 - 10826 046e B8F1000F cmp r8, #0 - 10827 0472 1CD0 beq .L595 - 511:Src/main.c **** { - 10828 .loc 1 511 14 is_stmt 1 view .LVU3475 - 511:Src/main.c **** { - 10829 .loc 1 511 17 is_stmt 0 view .LVU3476 - 10830 0474 B8F13F0F cmp r8, #63 - 10831 0478 1BD9 bls .L563 - 513:Src/main.c **** } - 10832 .loc 1 513 19 view .LVU3477 - 10833 047a 4FF03F08 mov r8, #63 - ARM GAS /tmp/ccwR4KB7.s page 594 - - - 10834 .LVL948: - 513:Src/main.c **** } - 10835 .loc 1 513 19 view .LVU3478 - 10836 047e 18E0 b .L563 - 10837 .LVL949: - 10838 .L606: - 513:Src/main.c **** } - 10839 .loc 1 513 19 view .LVU3479 - 10840 .LBE667: - 10841 .LBB668: - 483:Src/main.c **** uint8_t hold = (uint8_t)(param1 & 0x0Fu); - 10842 .loc 1 483 8 is_stmt 1 view .LVU3480 - 484:Src/main.c **** uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle); - 10843 .loc 1 484 8 view .LVU3481 - 484:Src/main.c **** uint16_t pat_status = AD9102_ApplySram(enable, samples, hold, triangle); - 10844 .loc 1 484 16 is_stmt 0 view .LVU3482 - 10845 0480 04F00F04 and r4, r4, #15 - 10846 .LVL950: - 485:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10847 .loc 1 485 8 is_stmt 1 view .LVU3483 - 485:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10848 .loc 1 485 30 is_stmt 0 view .LVU3484 - 10849 0484 3346 mov r3, r6 - 10850 .LVL951: - 485:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10851 .loc 1 485 30 view .LVU3485 - 10852 0486 2246 mov r2, r4 - 10853 0488 2946 mov r1, r5 - 10854 048a 3846 mov r0, r7 - 10855 048c FFF7FEFF bl AD9102_ApplySram - 10856 .LVL952: - 486:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) - 10857 .loc 1 486 8 is_stmt 1 view .LVU3486 - 486:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) - 10858 .loc 1 486 22 is_stmt 0 view .LVU3487 - 10859 0490 374B ldr r3, .L614+48 - 10860 0492 5870 strb r0, [r3, #1] - 487:Src/main.c **** { - 10861 .loc 1 487 8 is_stmt 1 view .LVU3488 - 487:Src/main.c **** { - 10862 .loc 1 487 12 is_stmt 0 view .LVU3489 - 10863 0494 2346 mov r3, r4 - 10864 0496 2A46 mov r2, r5 - 10865 0498 3946 mov r1, r7 - 10866 049a FFF7FEFF bl AD9102_CheckFlagsSram - 10867 .LVL953: - 487:Src/main.c **** { - 10868 .loc 1 487 11 discriminator 1 view .LVU3490 - 10869 049e 0028 cmp r0, #0 - 10870 04a0 CBD0 beq .L560 - 489:Src/main.c **** } - 10871 .loc 1 489 9 is_stmt 1 view .LVU3491 - 489:Src/main.c **** } - 10872 .loc 1 489 19 is_stmt 0 view .LVU3492 - 10873 04a2 334A ldr r2, .L614+48 - 10874 04a4 1378 ldrb r3, [r2] @ zero_extendqisi2 - 489:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 595 - - - 10875 .loc 1 489 23 view .LVU3493 - 10876 04a6 63F07F03 orn r3, r3, #127 - 10877 04aa 1370 strb r3, [r2] - 10878 04ac C5E7 b .L560 - 10879 .LVL954: - 10880 .L595: - 489:Src/main.c **** } - 10881 .loc 1 489 23 view .LVU3494 - 10882 .LBE668: - 10883 .LBB669: - 509:Src/main.c **** } - 10884 .loc 1 509 19 view .LVU3495 - 10885 04ae 4FF00108 mov r8, #1 - 10886 .LVL955: - 10887 .L563: - 515:Src/main.c **** { - 10888 .loc 1 515 9 is_stmt 1 view .LVU3496 - 515:Src/main.c **** { - 10889 .loc 1 515 12 is_stmt 0 view .LVU3497 - 10890 04b2 44B9 cbnz r4, .L562 - 517:Src/main.c **** } - 10891 .loc 1 517 21 view .LVU3498 - 10892 04b4 4FF6FF74 movw r4, #65535 - 10893 .LVL956: - 517:Src/main.c **** } - 10894 .loc 1 517 21 view .LVU3499 - 10895 04b8 05E0 b .L562 - 10896 .LVL957: - 10897 .L594: - 503:Src/main.c **** } - 10898 .loc 1 503 20 view .LVU3500 - 10899 04ba 4FF6FF74 movw r4, #65535 - 10900 .LVL958: - 502:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; - 10901 .loc 1 502 18 view .LVU3501 - 10902 04be 4FF00209 mov r9, #2 - 10903 .LVL959: - 501:Src/main.c **** pat_base = AD9102_PAT_PERIOD_BASE_DEFAULT; - 10904 .loc 1 501 18 view .LVU3502 - 10905 04c2 4FF00108 mov r8, #1 - 10906 .LVL960: - 10907 .L562: - 521:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10908 .loc 1 521 8 is_stmt 1 view .LVU3503 - 521:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10909 .loc 1 521 30 is_stmt 0 view .LVU3504 - 10910 04c6 0094 str r4, [sp] - 10911 04c8 4B46 mov r3, r9 - 10912 .LVL961: - 521:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); - 10913 .loc 1 521 30 view .LVU3505 - 10914 04ca 4246 mov r2, r8 - 10915 04cc 3946 mov r1, r7 - 10916 04ce 3046 mov r0, r6 - 10917 04d0 FFF7FEFF bl AD9102_Apply - 10918 .LVL962: - 522:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) - ARM GAS /tmp/ccwR4KB7.s page 596 - - - 10919 .loc 1 522 8 is_stmt 1 view .LVU3506 - 522:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) - 10920 .loc 1 522 22 is_stmt 0 view .LVU3507 - 10921 04d4 264B ldr r3, .L614+48 - 10922 04d6 5870 strb r0, [r3, #1] - 523:Src/main.c **** { - 10923 .loc 1 523 8 is_stmt 1 view .LVU3508 - 523:Src/main.c **** { - 10924 .loc 1 523 12 is_stmt 0 view .LVU3509 - 10925 04d8 0194 str r4, [sp, #4] - 10926 04da CDF80090 str r9, [sp] - 10927 04de 4346 mov r3, r8 - 10928 04e0 3246 mov r2, r6 - 10929 04e2 3946 mov r1, r7 - 10930 04e4 FFF7FEFF bl AD9102_CheckFlags - 10931 .LVL963: - 523:Src/main.c **** { - 10932 .loc 1 523 11 discriminator 1 view .LVU3510 - 10933 04e8 0028 cmp r0, #0 - 10934 04ea A6D0 beq .L560 - 525:Src/main.c **** } - 10935 .loc 1 525 9 is_stmt 1 view .LVU3511 - 525:Src/main.c **** } - 10936 .loc 1 525 19 is_stmt 0 view .LVU3512 - 10937 04ec 204A ldr r2, .L614+48 - 10938 04ee 1378 ldrb r3, [r2] @ zero_extendqisi2 - 525:Src/main.c **** } - 10939 .loc 1 525 23 view .LVU3513 - 10940 04f0 63F07F03 orn r3, r3, #127 - 10941 04f4 1370 strb r3, [r2] - 10942 04f6 A0E7 b .L560 - 10943 .LVL964: - 10944 .L544: - 525:Src/main.c **** } - 10945 .loc 1 525 23 view .LVU3514 - 10946 .LBE669: - 10947 .LBE666: - 537:Src/main.c **** { - 10948 .loc 1 537 6 is_stmt 1 view .LVU3515 - 537:Src/main.c **** { - 10949 .loc 1 537 10 is_stmt 0 view .LVU3516 - 10950 04f8 1E48 ldr r0, .L614+52 - 10951 04fa FFF7FEFF bl CheckChecksum - 10952 .LVL965: - 537:Src/main.c **** { - 10953 .loc 1 537 9 discriminator 1 view .LVU3517 - 10954 04fe 70B9 cbnz r0, .L607 - 546:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10955 .loc 1 546 7 is_stmt 1 view .LVU3518 - 546:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10956 .loc 1 546 17 is_stmt 0 view .LVU3519 - 10957 0500 1B4A ldr r2, .L614+48 - 10958 0502 1378 ldrb r3, [r2] @ zero_extendqisi2 - 546:Src/main.c **** CPU_state = DEFAULT_ENABLE; - 10959 .loc 1 546 21 view .LVU3520 - 10960 0504 43F00403 orr r3, r3, #4 - 10961 0508 1370 strb r3, [r2] - ARM GAS /tmp/ccwR4KB7.s page 597 - - - 547:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10962 .loc 1 547 7 is_stmt 1 view .LVU3521 - 547:Src/main.c **** CPU_state_old = HALT;//Save main current cycle - 10963 .loc 1 547 17 is_stmt 0 view .LVU3522 - 10964 050a 1C4B ldr r3, .L614+60 - 10965 050c 0222 movs r2, #2 - 10966 050e 1A70 strb r2, [r3] - 548:Src/main.c **** } - 10967 .loc 1 548 7 is_stmt 1 view .LVU3523 - 548:Src/main.c **** } - 10968 .loc 1 548 21 is_stmt 0 view .LVU3524 - 10969 0510 154B ldr r3, .L614+40 - 10970 0512 0022 movs r2, #0 - 10971 0514 1A70 strb r2, [r3] - 10972 .L565: - 550:Src/main.c **** break; - 10973 .loc 1 550 6 is_stmt 1 view .LVU3525 - 550:Src/main.c **** break; - 10974 .loc 1 550 32 is_stmt 0 view .LVU3526 - 10975 0516 184B ldr r3, .L614+56 - 10976 0518 0122 movs r2, #1 - 10977 051a 1A70 strb r2, [r3] - 551:Src/main.c **** case RUN_TASK: - 10978 .loc 1 551 5 is_stmt 1 view .LVU3527 - 10979 051c E9E5 b .L540 - 10980 .L607: - 539:Src/main.c **** TO6_before = TO6; - 10981 .loc 1 539 7 view .LVU3528 - 10982 051e 114B ldr r3, .L614+36 - 10983 0520 174A ldr r2, .L614+64 - 10984 0522 1849 ldr r1, .L614+68 - 10985 0524 1348 ldr r0, .L614+52 - 10986 0526 FFF7FEFF bl Decode_task - 10987 .LVL966: - 540:Src/main.c **** CPU_state = RUN_TASK; - 10988 .loc 1 540 7 view .LVU3529 - 540:Src/main.c **** CPU_state = RUN_TASK; - 10989 .loc 1 540 18 is_stmt 0 view .LVU3530 - 10990 052a 0C4B ldr r3, .L614+28 - 10991 052c 1A68 ldr r2, [r3] - 10992 052e 164B ldr r3, .L614+72 - 10993 0530 1A60 str r2, [r3] - 541:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle - 10994 .loc 1 541 7 is_stmt 1 view .LVU3531 - 541:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle - 10995 .loc 1 541 17 is_stmt 0 view .LVU3532 - 10996 0532 0923 movs r3, #9 - 10997 0534 114A ldr r2, .L614+60 - 10998 0536 1370 strb r3, [r2] - 542:Src/main.c **** } - 10999 .loc 1 542 7 is_stmt 1 view .LVU3533 - 542:Src/main.c **** } - 11000 .loc 1 542 21 is_stmt 0 view .LVU3534 - 11001 0538 0B4A ldr r2, .L614+40 - 11002 053a 1370 strb r3, [r2] - 11003 053c EBE7 b .L565 - 11004 .L615: - ARM GAS /tmp/ccwR4KB7.s page 598 - - - 11005 053e 00BF .align 2 - 11006 .L614: - 11007 0540 00000000 .word task - 11008 0544 00000000 .word TO7 - 11009 0548 00000000 .word TO7_before - 11010 054c 00000000 .word LD1_param - 11011 0550 00000000 .word LD2_param - 11012 0554 00000000 .word temp16 - 11013 0558 00000000 .word Long_Data - 11014 055c 00000000 .word TO6 - 11015 0560 00000000 .word TO6_stop - 11016 0564 00000000 .word Curr_setup - 11017 0568 00000000 .word CPU_state_old - 11018 056c 00000000 .word CS_result - 11019 0570 00000000 .word State_Data - 11020 0574 00000000 .word COMMAND - 11021 0578 00000000 .word UART_transmission_request - 11022 057c 00000000 .word CPU_state - 11023 0580 00000000 .word LD2_curr_setup - 11024 0584 00000000 .word LD1_curr_setup - 11025 0588 00000000 .word TO6_before - 11026 .L543: - 553:Src/main.c **** { - 11027 .loc 1 553 6 is_stmt 1 view .LVU3535 - 553:Src/main.c **** { - 11028 .loc 1 553 18 is_stmt 0 view .LVU3536 - 11029 058c 864B ldr r3, .L616 - 11030 058e 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 11031 0590 012B cmp r3, #1 - 11032 0592 23D0 beq .L566 - 11033 0594 022B cmp r3, #2 - 11034 0596 00F03181 beq .L567 - 11035 .L568: - 808:Src/main.c **** { - 11036 .loc 1 808 6 is_stmt 1 view .LVU3537 - 808:Src/main.c **** { - 11037 .loc 1 808 13 is_stmt 0 view .LVU3538 - 11038 059a 844B ldr r3, .L616+4 - 11039 059c 1B68 ldr r3, [r3] - 11040 059e 844A ldr r2, .L616+8 - 11041 05a0 1268 ldr r2, [r2] - 808:Src/main.c **** { - 11042 .loc 1 808 9 view .LVU3539 - 11043 05a2 9342 cmp r3, r2 - 11044 05a4 00F2D881 bhi .L608 - 11045 .L585: - 860:Src/main.c **** - 11046 .loc 1 860 13 is_stmt 1 discriminator 1 view .LVU3540 - 11047 05a8 824B ldr r3, .L616+12 - 11048 05aa 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 11049 05ac 002B cmp r3, #0 - 11050 05ae FBD0 beq .L585 - 862:Src/main.c **** - 11051 .loc 1 862 6 view .LVU3541 - 11052 05b0 FFF7FEFF bl Stop_TIM10 - 11053 .LVL967: - 864:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 599 - - - 11054 .loc 1 864 6 view .LVU3542 - 864:Src/main.c **** { - 11055 .loc 1 864 14 is_stmt 0 view .LVU3543 - 11056 05b4 7C4B ldr r3, .L616 - 11057 05b6 DB8A ldrh r3, [r3, #22] - 864:Src/main.c **** { - 11058 .loc 1 864 9 view .LVU3544 - 11059 05b8 032B cmp r3, #3 - 11060 05ba 0BD9 bls .L586 - 866:Src/main.c **** TO10_counter = task.dt / 10; - 11061 .loc 1 866 7 is_stmt 1 view .LVU3545 - 866:Src/main.c **** TO10_counter = task.dt / 10; - 11062 .loc 1 866 26 is_stmt 0 view .LVU3546 - 11063 05bc 7E4B ldr r3, .L616+16 - 11064 05be 1A68 ldr r2, [r3] - 11065 05c0 7E4B ldr r3, .L616+20 - 11066 05c2 DA60 str r2, [r3, #12] - 867:Src/main.c **** } - 11067 .loc 1 867 7 is_stmt 1 view .LVU3547 - 867:Src/main.c **** } - 11068 .loc 1 867 26 is_stmt 0 view .LVU3548 - 11069 05c4 784B ldr r3, .L616 - 11070 05c6 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2 - 867:Src/main.c **** } - 11071 .loc 1 867 30 view .LVU3549 - 11072 05c8 7D4A ldr r2, .L616+24 - 11073 05ca A2FB0323 umull r2, r3, r2, r3 - 11074 05ce DB08 lsrs r3, r3, #3 - 867:Src/main.c **** } - 11075 .loc 1 867 20 view .LVU3550 - 11076 05d0 7C4A ldr r2, .L616+28 - 11077 05d2 1360 str r3, [r2] - 11078 .L586: - 870:Src/main.c **** break; - 11079 .loc 1 870 6 is_stmt 1 view .LVU3551 - 870:Src/main.c **** break; - 11080 .loc 1 870 20 is_stmt 0 view .LVU3552 - 11081 05d4 7C4B ldr r3, .L616+32 - 11082 05d6 0922 movs r2, #9 - 11083 05d8 1A70 strb r2, [r3] - 871:Src/main.c **** } - 11084 .loc 1 871 9 is_stmt 1 view .LVU3553 - 11085 05da 8AE5 b .L540 - 11086 .L566: - 11087 .LBB670: - 575:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 11088 .loc 1 575 7 view .LVU3554 - 575:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 11089 .loc 1 575 38 is_stmt 0 view .LVU3555 - 11090 05dc 724B ldr r3, .L616 - 11091 05de D3ED077A vldr.32 s15, [r3, #28] - 575:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 11092 .loc 1 575 7 view .LVU3556 - 11093 05e2 FCEEE77A vcvt.u32.f32 s15, s15 - 11094 05e6 17EE903A vmov r3, s15 @ int - 11095 05ea 99B2 uxth r1, r3 - 11096 05ec 0220 movs r0, #2 - ARM GAS /tmp/ccwR4KB7.s page 600 - - - 11097 05ee FFF7FEFF bl Set_LTEC - 11098 .LVL968: - 576:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 11099 .loc 1 576 7 is_stmt 1 view .LVU3557 - 576:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 11100 .loc 1 576 14 is_stmt 0 view .LVU3558 - 11101 05f2 0320 movs r0, #3 - 11102 05f4 FFF7FEFF bl MPhD_T - 11103 .LVL969: - 577:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11104 .loc 1 577 7 is_stmt 1 view .LVU3559 - 577:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11105 .loc 1 577 32 is_stmt 0 view .LVU3560 - 11106 05f8 0320 movs r0, #3 - 11107 05fa FFF7FEFF bl MPhD_T - 11108 .LVL970: - 577:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11109 .loc 1 577 30 discriminator 1 view .LVU3561 - 11110 05fe 734C ldr r4, .L616+36 - 11111 0600 2080 strh r0, [r4] @ movhi - 578:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 11112 .loc 1 578 7 is_stmt 1 view .LVU3562 - 578:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 11113 .loc 1 578 14 is_stmt 0 view .LVU3563 - 11114 0602 0420 movs r0, #4 - 11115 0604 FFF7FEFF bl MPhD_T - 11116 .LVL971: - 579:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11117 .loc 1 579 7 is_stmt 1 view .LVU3564 - 579:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11118 .loc 1 579 32 is_stmt 0 view .LVU3565 - 11119 0608 0420 movs r0, #4 - 11120 060a FFF7FEFF bl MPhD_T - 11121 .LVL972: - 579:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11122 .loc 1 579 30 discriminator 1 view .LVU3566 - 11123 060e 704D ldr r5, .L616+40 - 11124 0610 2880 strh r0, [r5] @ movhi - 580:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11125 .loc 1 580 7 is_stmt 1 view .LVU3567 - 580:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11126 .loc 1 580 14 is_stmt 0 view .LVU3568 - 11127 0612 0122 movs r2, #1 - 11128 0614 2146 mov r1, r4 - 11129 0616 6F48 ldr r0, .L616+44 - 11130 0618 FFF7FEFF bl PID_Controller_Temp - 11131 .LVL973: - 11132 061c 0146 mov r1, r0 - 580:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11133 .loc 1 580 13 discriminator 1 view .LVU3569 - 11134 061e 6E4C ldr r4, .L616+48 - 11135 0620 2080 strh r0, [r4] @ movhi - 581:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 11136 .loc 1 581 7 is_stmt 1 view .LVU3570 - 11137 0622 0320 movs r0, #3 - 11138 0624 FFF7FEFF bl Set_LTEC - 11139 .LVL974: - ARM GAS /tmp/ccwR4KB7.s page 601 - - - 582:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11140 .loc 1 582 7 view .LVU3571 - 582:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11141 .loc 1 582 14 is_stmt 0 view .LVU3572 - 11142 0628 0222 movs r2, #2 - 11143 062a 2946 mov r1, r5 - 11144 062c 6B48 ldr r0, .L616+52 - 11145 062e FFF7FEFF bl PID_Controller_Temp - 11146 .LVL975: - 11147 0632 0146 mov r1, r0 - 582:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11148 .loc 1 582 13 discriminator 1 view .LVU3573 - 11149 0634 2080 strh r0, [r4] @ movhi - 583:Src/main.c **** - 11150 .loc 1 583 7 is_stmt 1 view .LVU3574 - 11151 0636 0420 movs r0, #4 - 11152 0638 FFF7FEFF bl Set_LTEC - 11153 .LVL976: - 586:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11154 .loc 1 586 7 view .LVU3575 - 11155 063c 684C ldr r4, .L616+56 - 11156 063e 0122 movs r2, #1 - 11157 0640 8021 movs r1, #128 - 11158 0642 2046 mov r0, r4 - 11159 0644 FFF7FEFF bl HAL_GPIO_WritePin - 11160 .LVL977: - 587:Src/main.c **** - 11161 .loc 1 587 7 view .LVU3576 - 11162 0648 0022 movs r2, #0 - 11163 064a 8021 movs r1, #128 - 11164 064c 2046 mov r0, r4 - 11165 064e FFF7FEFF bl HAL_GPIO_WritePin - 11166 .LVL978: - 589:Src/main.c **** if (st != HAL_OK) - 11167 .loc 1 589 7 view .LVU3577 - 589:Src/main.c **** if (st != HAL_OK) - 11168 .loc 1 589 12 is_stmt 0 view .LVU3578 - 11169 0652 5A48 ldr r0, .L616+20 - 11170 0654 FFF7FEFF bl HAL_TIM_Base_Start_IT - 11171 .LVL979: - 590:Src/main.c **** while(1); - 11172 .loc 1 590 7 is_stmt 1 view .LVU3579 - 590:Src/main.c **** while(1); - 11173 .loc 1 590 10 is_stmt 0 view .LVU3580 - 11174 0658 0028 cmp r0, #0 - 11175 065a 75D1 bne .L570 - 593:Src/main.c **** uint16_t trigger_counter = 0; - 11176 .loc 1 593 7 is_stmt 1 view .LVU3581 - 11177 .LVL980: - 594:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 - 11178 .loc 1 594 7 view .LVU3582 - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11179 .loc 1 595 7 view .LVU3583 - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11180 .loc 1 595 47 is_stmt 0 view .LVU3584 - 11181 065c 524B ldr r3, .L616 - 11182 065e 93ED027A vldr.32 s14, [r3, #8] - ARM GAS /tmp/ccwR4KB7.s page 602 - - - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11183 .loc 1 595 64 view .LVU3585 - 11184 0662 D3ED047A vldr.32 s15, [r3, #16] - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11185 .loc 1 595 58 view .LVU3586 - 11186 0666 37EE677A vsub.f32 s14, s14, s15 - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11187 .loc 1 595 84 view .LVU3587 - 11188 066a D3ED036A vldr.32 s13, [r3, #12] - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11189 .loc 1 595 79 view .LVU3588 - 11190 066e C7EE267A vdiv.f32 s15, s14, s13 - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11191 .loc 1 595 97 view .LVU3589 - 11192 0672 B2EE047A vmov.f32 s14, #1.0e+1 - 11193 0676 67EE877A vmul.f32 s15, s15, s14 - 595:Src/main.c **** uint16_t task_sheduler = 0; - 11194 .loc 1 595 31 view .LVU3590 - 11195 067a FCEEE77A vcvt.u32.f32 s15, s15 - 11196 067e CDED037A vstr.32 s15, [sp, #12] @ int - 11197 0682 9DF80C60 ldrb r6, [sp, #12] @ zero_extendqisi2 - 11198 .LVL981: - 596:Src/main.c **** - 11199 .loc 1 596 7 is_stmt 1 view .LVU3591 - 600:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock - 11200 .loc 1 600 7 view .LVU3592 - 11201 0686 DFF86891 ldr r9, .L616+72 - 11202 068a 0021 movs r1, #0 - 11203 068c 4846 mov r0, r9 - 11204 .LVL982: - 600:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock - 11205 .loc 1 600 7 is_stmt 0 view .LVU3593 - 11206 068e FFF7FEFF bl HAL_TIM_PWM_Stop - 11207 .LVL983: - 601:Src/main.c **** TIM11 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 11208 .loc 1 601 7 is_stmt 1 view .LVU3594 - 11209 0692 DFF86081 ldr r8, .L616+76 - 11210 0696 0821 movs r1, #8 - 11211 0698 4046 mov r0, r8 - 11212 069a FFF7FEFF bl HAL_TIM_PWM_Stop - 11213 .LVL984: - 602:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 11214 .loc 1 602 7 view .LVU3595 - 602:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 11215 .loc 1 602 13 is_stmt 0 view .LVU3596 - 11216 069e 514F ldr r7, .L616+60 - 11217 06a0 3B68 ldr r3, [r7] - 602:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode - 11218 .loc 1 602 20 view .LVU3597 - 11219 06a2 23F00803 bic r3, r3, #8 - 11220 06a6 3B60 str r3, [r7] - 603:Src/main.c **** - 11221 .loc 1 603 7 is_stmt 1 view .LVU3598 - 603:Src/main.c **** - 11222 .loc 1 603 12 is_stmt 0 view .LVU3599 - 11223 06a8 4F4D ldr r5, .L616+64 - 11224 06aa 2B68 ldr r3, [r5] - ARM GAS /tmp/ccwR4KB7.s page 603 - - - 603:Src/main.c **** - 11225 .loc 1 603 19 view .LVU3600 - 11226 06ac 23F00803 bic r3, r3, #8 - 11227 06b0 2B60 str r3, [r5] - 607:Src/main.c **** TIM4 -> CNT = 0; - 11228 .loc 1 607 7 is_stmt 1 view .LVU3601 - 607:Src/main.c **** TIM4 -> CNT = 0; - 11229 .loc 1 607 20 is_stmt 0 view .LVU3602 - 11230 06b2 0024 movs r4, #0 - 11231 06b4 7C62 str r4, [r7, #36] - 608:Src/main.c **** - 11232 .loc 1 608 7 is_stmt 1 view .LVU3603 - 608:Src/main.c **** - 11233 .loc 1 608 19 is_stmt 0 view .LVU3604 - 11234 06b6 6C62 str r4, [r5, #36] - 610:Src/main.c **** HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_3); //start ADC clock - 11235 .loc 1 610 7 is_stmt 1 view .LVU3605 - 11236 06b8 2146 mov r1, r4 - 11237 06ba 4846 mov r0, r9 - 11238 06bc FFF7FEFF bl HAL_TIM_PWM_Start - 11239 .LVL985: - 611:Src/main.c **** //TIM4 -> CNT = 0; - 11240 .loc 1 611 7 view .LVU3606 - 11241 06c0 0821 movs r1, #8 - 11242 06c2 4046 mov r0, r8 - 11243 06c4 FFF7FEFF bl HAL_TIM_PWM_Start - 11244 .LVL986: - 614:Src/main.c **** TIM11 -> CNT = 0; - 11245 .loc 1 614 7 view .LVU3607 - 614:Src/main.c **** TIM11 -> CNT = 0; - 11246 .loc 1 614 26 is_stmt 0 view .LVU3608 - 11247 06c8 EB6A ldr r3, [r5, #44] - 614:Src/main.c **** TIM11 -> CNT = 0; - 11248 .loc 1 614 33 view .LVU3609 - 11249 06ca 143B subs r3, r3, #20 - 614:Src/main.c **** TIM11 -> CNT = 0; - 11250 .loc 1 614 19 view .LVU3610 - 11251 06cc 6B62 str r3, [r5, #36] - 615:Src/main.c **** - 11252 .loc 1 615 7 is_stmt 1 view .LVU3611 - 615:Src/main.c **** - 11253 .loc 1 615 20 is_stmt 0 view .LVU3612 - 11254 06ce 7C62 str r4, [r7, #36] - 618:Src/main.c **** { - 11255 .loc 1 618 7 is_stmt 1 view .LVU3613 - 594:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 - 11256 .loc 1 594 16 is_stmt 0 view .LVU3614 - 11257 06d0 2546 mov r5, r4 - 11258 .LVL987: - 11259 .L572: - 618:Src/main.c **** { - 11260 .loc 1 618 33 is_stmt 1 view .LVU3615 - 618:Src/main.c **** { - 11261 .loc 1 618 18 is_stmt 0 view .LVU3616 - 11262 06d2 354B ldr r3, .L616 - 11263 06d4 D3ED047A vldr.32 s15, [r3, #16] - 618:Src/main.c **** { - ARM GAS /tmp/ccwR4KB7.s page 604 - - - 11264 .loc 1 618 39 view .LVU3617 - 11265 06d8 93ED027A vldr.32 s14, [r3, #8] - 618:Src/main.c **** { - 11266 .loc 1 618 33 view .LVU3618 - 11267 06dc F4EEC77A vcmpe.f32 s15, s14 - 11268 06e0 F1EE10FA vmrs APSR_nzcv, FPSCR - 11269 06e4 37D5 bpl .L609 - 620:Src/main.c **** { - 11270 .loc 1 620 8 is_stmt 1 view .LVU3619 - 620:Src/main.c **** { - 11271 .loc 1 620 12 is_stmt 0 view .LVU3620 - 11272 06e6 334B ldr r3, .L616+12 - 11273 06e8 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 620:Src/main.c **** { - 11274 .loc 1 620 11 view .LVU3621 - 11275 06ea 002B cmp r3, #0 - 11276 06ec F1D0 beq .L572 - 622:Src/main.c **** //TIM11 -> CNT = 0; // to link modulator phase - 11277 .loc 1 622 9 is_stmt 1 view .LVU3622 - 11278 06ee FCEEE77A vcvt.u32.f32 s15, s15 - 11279 06f2 17EE903A vmov r3, s15 @ int - 11280 06f6 99B2 uxth r1, r3 - 11281 06f8 0120 movs r0, #1 - 11282 06fa FFF7FEFF bl Set_LTEC - 11283 .LVL988: - 625:Src/main.c **** TO10 = 0; - 11284 .loc 1 625 9 view .LVU3623 - 625:Src/main.c **** TO10 = 0; - 11285 .loc 1 625 13 is_stmt 0 view .LVU3624 - 11286 06fe 2A4B ldr r3, .L616 - 11287 0700 D3ED047A vldr.32 s15, [r3, #16] - 625:Src/main.c **** TO10 = 0; - 11288 .loc 1 625 35 view .LVU3625 - 11289 0704 93ED037A vldr.32 s14, [r3, #12] - 625:Src/main.c **** TO10 = 0; - 11290 .loc 1 625 28 view .LVU3626 - 11291 0708 77EE877A vadd.f32 s15, s15, s14 - 11292 070c C3ED047A vstr.32 s15, [r3, #16] - 626:Src/main.c **** TIM10_coflag = 0; - 11293 .loc 1 626 9 is_stmt 1 view .LVU3627 - 626:Src/main.c **** TIM10_coflag = 0; - 11294 .loc 1 626 14 is_stmt 0 view .LVU3628 - 11295 0710 0027 movs r7, #0 - 11296 0712 364B ldr r3, .L616+68 - 11297 0714 1F60 str r7, [r3] - 627:Src/main.c **** - 11298 .loc 1 627 9 is_stmt 1 view .LVU3629 - 627:Src/main.c **** - 11299 .loc 1 627 22 is_stmt 0 view .LVU3630 - 11300 0716 274B ldr r3, .L616+12 - 11301 0718 1F70 strb r7, [r3] - 629:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_RESET); - 11302 .loc 1 629 9 is_stmt 1 view .LVU3631 - 11303 071a DFF8DC80 ldr r8, .L616+80 - 11304 071e 0122 movs r2, #1 - 11305 0720 4FF40071 mov r1, #512 - 11306 0724 4046 mov r0, r8 - ARM GAS /tmp/ccwR4KB7.s page 605 - - - 11307 0726 FFF7FEFF bl HAL_GPIO_WritePin - 11308 .LVL989: - 630:Src/main.c **** //* - 11309 .loc 1 630 9 view .LVU3632 - 11310 072a 3A46 mov r2, r7 - 11311 072c 4FF40071 mov r1, #512 - 11312 0730 4046 mov r0, r8 - 11313 0732 FFF7FEFF bl HAL_GPIO_WritePin - 11314 .LVL990: - 632:Src/main.c **** OUT_trigger(trigger_counter); - 11315 .loc 1 632 9 view .LVU3633 - 632:Src/main.c **** OUT_trigger(trigger_counter); - 11316 .loc 1 632 41 is_stmt 0 view .LVU3634 - 11317 0736 B4FBF6F3 udiv r3, r4, r6 - 11318 073a 06FB1343 mls r3, r6, r3, r4 - 11319 073e 9BB2 uxth r3, r3 - 632:Src/main.c **** OUT_trigger(trigger_counter); - 11320 .loc 1 632 12 view .LVU3635 - 11321 0740 1BB1 cbz r3, .L610 - 11322 .L573: - 636:Src/main.c **** //*/ - 11323 .loc 1 636 9 is_stmt 1 view .LVU3636 - 11324 0742 0134 adds r4, r4, #1 - 11325 .LVL991: - 636:Src/main.c **** //*/ - 11326 .loc 1 636 9 is_stmt 0 view .LVU3637 - 11327 0744 A4B2 uxth r4, r4 - 11328 .LVL992: - 636:Src/main.c **** //*/ - 11329 .loc 1 636 9 view .LVU3638 - 11330 0746 C4E7 b .L572 - 11331 .LVL993: - 11332 .L570: - 591:Src/main.c **** - 11333 .loc 1 591 8 is_stmt 1 view .LVU3639 - 591:Src/main.c **** - 11334 .loc 1 591 13 view .LVU3640 - 11335 0748 FEE7 b .L570 - 11336 .LVL994: - 11337 .L610: - 633:Src/main.c **** ++trigger_counter; - 11338 .loc 1 633 10 view .LVU3641 - 11339 074a E8B2 uxtb r0, r5 - 11340 074c FFF7FEFF bl OUT_trigger - 11341 .LVL995: - 634:Src/main.c **** } - 11342 .loc 1 634 10 view .LVU3642 - 11343 0750 0135 adds r5, r5, #1 - 11344 .LVL996: - 634:Src/main.c **** } - 11345 .loc 1 634 10 is_stmt 0 view .LVU3643 - 11346 0752 ADB2 uxth r5, r5 - 11347 .LVL997: - 634:Src/main.c **** } - 11348 .loc 1 634 10 view .LVU3644 - 11349 0754 F5E7 b .L573 - 11350 .L609: - ARM GAS /tmp/ccwR4KB7.s page 606 - - - 661:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd - 11351 .loc 1 661 7 is_stmt 1 view .LVU3645 - 661:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd - 11352 .loc 1 661 13 is_stmt 0 view .LVU3646 - 11353 0756 234A ldr r2, .L616+60 - 11354 0758 D368 ldr r3, [r2, #12] - 661:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd - 11355 .loc 1 661 21 view .LVU3647 - 11356 075a 43F00103 orr r3, r3, #1 - 11357 075e D360 str r3, [r2, #12] - 671:Src/main.c **** - 11358 .loc 1 671 7 is_stmt 1 view .LVU3648 - 11359 0760 FFF7FEFF bl Stop_TIM10 - 11360 .LVL998: - 673:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - 11361 .loc 1 673 7 view .LVU3649 - 673:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - 11362 .loc 1 673 32 is_stmt 0 view .LVU3650 - 11363 0764 104C ldr r4, .L616 - 11364 .LVL999: - 673:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - 11365 .loc 1 673 32 view .LVU3651 - 11366 0766 D4ED017A vldr.32 s15, [r4, #4] - 673:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); - 11367 .loc 1 673 26 view .LVU3652 - 11368 076a C4ED047A vstr.32 s15, [r4, #16] - 674:Src/main.c **** if (task.tau > 3) - 11369 .loc 1 674 7 is_stmt 1 view .LVU3653 - 11370 076e FCEEE77A vcvt.u32.f32 s15, s15 - 11371 0772 17EE903A vmov r3, s15 @ int - 11372 0776 99B2 uxth r1, r3 - 11373 0778 0120 movs r0, #1 - 11374 077a FFF7FEFF bl Set_LTEC - 11375 .LVL1000: - 675:Src/main.c **** { - 11376 .loc 1 675 7 view .LVU3654 - 675:Src/main.c **** { - 11377 .loc 1 675 15 is_stmt 0 view .LVU3655 - 11378 077e E38A ldrh r3, [r4, #22] - 675:Src/main.c **** { - 11379 .loc 1 675 10 view .LVU3656 - 11380 0780 032B cmp r3, #3 - 11381 0782 0CD9 bls .L575 - 677:Src/main.c **** htim10.Init.Period = 9999; - 11382 .loc 1 677 8 is_stmt 1 view .LVU3657 - 677:Src/main.c **** htim10.Init.Period = 9999; - 11383 .loc 1 677 34 is_stmt 0 view .LVU3658 - 11384 0784 0D4A ldr r2, .L616+20 - 11385 0786 D068 ldr r0, [r2, #12] - 677:Src/main.c **** htim10.Init.Period = 9999; - 11386 .loc 1 677 21 view .LVU3659 - 11387 0788 0B49 ldr r1, .L616+16 - 11388 078a 0860 str r0, [r1] - 678:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 11389 .loc 1 678 8 is_stmt 1 view .LVU3660 - 678:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 11390 .loc 1 678 27 is_stmt 0 view .LVU3661 - ARM GAS /tmp/ccwR4KB7.s page 607 - - - 11391 078c 42F20F71 movw r1, #9999 - 11392 0790 D160 str r1, [r2, #12] - 679:Src/main.c **** } - 11393 .loc 1 679 8 is_stmt 1 view .LVU3662 - 679:Src/main.c **** } - 11394 .loc 1 679 33 is_stmt 0 view .LVU3663 - 11395 0792 013B subs r3, r3, #1 - 679:Src/main.c **** } - 11396 .loc 1 679 38 view .LVU3664 - 11397 0794 6422 movs r2, #100 - 11398 0796 02FB03F3 mul r3, r2, r3 - 679:Src/main.c **** } - 11399 .loc 1 679 21 view .LVU3665 - 11400 079a 0A4A ldr r2, .L616+28 - 11401 079c 1360 str r3, [r2] - 11402 .L575: - 681:Src/main.c **** break; - 11403 .loc 1 681 7 is_stmt 1 view .LVU3666 - 11404 079e 0748 ldr r0, .L616+20 - 11405 07a0 FFF7FEFF bl HAL_TIM_Base_Start_IT - 11406 .LVL1001: - 682:Src/main.c **** case TT_CHANGE_CURR_2: - 11407 .loc 1 682 6 view .LVU3667 - 11408 07a4 F9E6 b .L568 - 11409 .L617: - 11410 07a6 00BF .align 2 - 11411 .L616: - 11412 07a8 00000000 .word task - 11413 07ac 00000000 .word TO7 - 11414 07b0 00000000 .word TO7_before - 11415 07b4 00000000 .word TIM10_coflag - 11416 07b8 00000000 .word TIM10_period - 11417 07bc 00000000 .word htim10 - 11418 07c0 CDCCCCCC .word -858993459 - 11419 07c4 00000000 .word TO10_counter - 11420 07c8 00000000 .word CPU_state_old - 11421 07cc 00000000 .word LD1_param - 11422 07d0 00000000 .word LD2_param - 11423 07d4 00000000 .word LD1_curr_setup - 11424 07d8 00000000 .word temp16 - 11425 07dc 00000000 .word LD2_curr_setup - 11426 07e0 000C0240 .word 1073875968 - 11427 07e4 00480140 .word 1073825792 - 11428 07e8 00080040 .word 1073743872 - 11429 07ec 00000000 .word TO10 - 11430 07f0 00000000 .word htim11 - 11431 07f4 00000000 .word htim4 - 11432 07f8 00180240 .word 1073879040 - 11433 .LVL1002: - 11434 .L567: - 686:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 11435 .loc 1 686 7 view .LVU3668 - 686:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - 11436 .loc 1 686 38 is_stmt 0 view .LVU3669 - 11437 07fc A74B ldr r3, .L618 - 11438 07fe D3ED077A vldr.32 s15, [r3, #28] - 686:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); - ARM GAS /tmp/ccwR4KB7.s page 608 - - - 11439 .loc 1 686 7 view .LVU3670 - 11440 0802 FCEEE77A vcvt.u32.f32 s15, s15 - 11441 0806 17EE903A vmov r3, s15 @ int - 11442 080a 99B2 uxth r1, r3 - 11443 080c 0120 movs r0, #1 - 11444 080e FFF7FEFF bl Set_LTEC - 11445 .LVL1003: - 687:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 11446 .loc 1 687 7 is_stmt 1 view .LVU3671 - 687:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); - 11447 .loc 1 687 14 is_stmt 0 view .LVU3672 - 11448 0812 0320 movs r0, #3 - 11449 0814 FFF7FEFF bl MPhD_T - 11450 .LVL1004: - 688:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11451 .loc 1 688 7 is_stmt 1 view .LVU3673 - 688:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11452 .loc 1 688 32 is_stmt 0 view .LVU3674 - 11453 0818 0320 movs r0, #3 - 11454 081a FFF7FEFF bl MPhD_T - 11455 .LVL1005: - 688:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); - 11456 .loc 1 688 30 discriminator 1 view .LVU3675 - 11457 081e A04C ldr r4, .L618+4 - 11458 0820 2080 strh r0, [r4] @ movhi - 689:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 11459 .loc 1 689 7 is_stmt 1 view .LVU3676 - 689:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); - 11460 .loc 1 689 14 is_stmt 0 view .LVU3677 - 11461 0822 0420 movs r0, #4 - 11462 0824 FFF7FEFF bl MPhD_T - 11463 .LVL1006: - 690:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11464 .loc 1 690 7 is_stmt 1 view .LVU3678 - 690:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11465 .loc 1 690 32 is_stmt 0 view .LVU3679 - 11466 0828 0420 movs r0, #4 - 11467 082a FFF7FEFF bl MPhD_T - 11468 .LVL1007: - 690:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); - 11469 .loc 1 690 30 discriminator 1 view .LVU3680 - 11470 082e 9D4D ldr r5, .L618+8 - 11471 0830 2880 strh r0, [r5] @ movhi - 691:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11472 .loc 1 691 7 is_stmt 1 view .LVU3681 - 691:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11473 .loc 1 691 14 is_stmt 0 view .LVU3682 - 11474 0832 0122 movs r2, #1 - 11475 0834 2146 mov r1, r4 - 11476 0836 9C48 ldr r0, .L618+12 - 11477 0838 FFF7FEFF bl PID_Controller_Temp - 11478 .LVL1008: - 11479 083c 0146 mov r1, r0 - 691:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 - 11480 .loc 1 691 13 discriminator 1 view .LVU3683 - 11481 083e 9B4C ldr r4, .L618+16 - 11482 0840 2080 strh r0, [r4] @ movhi - ARM GAS /tmp/ccwR4KB7.s page 609 - - - 692:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); - 11483 .loc 1 692 7 is_stmt 1 view .LVU3684 - 11484 0842 0320 movs r0, #3 - 11485 0844 FFF7FEFF bl Set_LTEC - 11486 .LVL1009: - 693:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11487 .loc 1 693 7 view .LVU3685 - 693:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11488 .loc 1 693 14 is_stmt 0 view .LVU3686 - 11489 0848 0222 movs r2, #2 - 11490 084a 2946 mov r1, r5 - 11491 084c 9848 ldr r0, .L618+20 - 11492 084e FFF7FEFF bl PID_Controller_Temp - 11493 .LVL1010: - 11494 0852 0146 mov r1, r0 - 693:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 - 11495 .loc 1 693 13 discriminator 1 view .LVU3687 - 11496 0854 2080 strh r0, [r4] @ movhi - 694:Src/main.c **** - 11497 .loc 1 694 7 is_stmt 1 view .LVU3688 - 11498 0856 0420 movs r0, #4 - 11499 0858 FFF7FEFF bl Set_LTEC - 11500 .LVL1011: - 696:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L - 11501 .loc 1 696 7 view .LVU3689 - 696:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L - 11502 .loc 1 696 28 is_stmt 0 view .LVU3690 - 11503 085c 954B ldr r3, .L618+24 - 11504 085e 0222 movs r2, #2 - 11505 0860 1A70 strb r2, [r3] - 697:Src/main.c **** //LD_blinker.param = task.current_param; - 11506 .loc 1 697 7 is_stmt 1 view .LVU3691 - 697:Src/main.c **** //LD_blinker.param = task.current_param; - 11507 .loc 1 697 24 is_stmt 0 view .LVU3692 - 11508 0862 0022 movs r2, #0 - 11509 0864 9A72 strb r2, [r3, #10] - 699:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) - 11510 .loc 1 699 7 is_stmt 1 view .LVU3693 - 699:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) - 11511 .loc 1 699 24 is_stmt 0 view .LVU3694 - 11512 0866 1A81 strh r2, [r3, #8] @ movhi - 700:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; - 11513 .loc 1 700 7 is_stmt 1 view .LVU3695 - 700:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; - 11514 .loc 1 700 24 is_stmt 0 view .LVU3696 - 11515 0868 4FF47A72 mov r2, #1000 - 11516 086c 1A81 strh r2, [r3, #8] @ movhi - 701:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; - 11517 .loc 1 701 7 is_stmt 1 view .LVU3697 - 701:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; - 11518 .loc 1 701 30 is_stmt 0 view .LVU3698 - 11519 086e 924A ldr r2, .L618+28 - 11520 0870 5A60 str r2, [r3, #4] - 702:Src/main.c **** - 11521 .loc 1 702 7 is_stmt 1 view .LVU3699 - 702:Src/main.c **** - 11522 .loc 1 702 29 is_stmt 0 view .LVU3700 - ARM GAS /tmp/ccwR4KB7.s page 610 - - - 11523 0872 8022 movs r2, #128 - 11524 0874 5A80 strh r2, [r3, #2] @ movhi - 704:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU - 11525 .loc 1 704 7 is_stmt 1 view .LVU3701 - 704:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU - 11526 .loc 1 704 17 is_stmt 0 view .LVU3702 - 11527 0876 914B ldr r3, .L618+32 - 11528 0878 42F21072 movw r2, #10000 - 11529 087c DA62 str r2, [r3, #44] - 706:Src/main.c **** if (st != HAL_OK) - 11530 .loc 1 706 7 is_stmt 1 view .LVU3703 - 706:Src/main.c **** if (st != HAL_OK) - 11531 .loc 1 706 12 is_stmt 0 view .LVU3704 - 11532 087e 9048 ldr r0, .L618+36 - 11533 0880 FFF7FEFF bl HAL_TIM_Base_Start_IT - 11534 .LVL1012: - 707:Src/main.c **** while(1); - 11535 .loc 1 707 7 is_stmt 1 view .LVU3705 - 707:Src/main.c **** while(1); - 11536 .loc 1 707 10 is_stmt 0 view .LVU3706 - 11537 0884 78BB cbnz r0, .L577 - 712:Src/main.c **** uint32_t i = 10000; while (--i){} - 11538 .loc 1 712 7 is_stmt 1 view .LVU3707 - 11539 0886 0122 movs r2, #1 - 11540 0888 8021 movs r1, #128 - 11541 088a 8E48 ldr r0, .L618+40 - 11542 .LVL1013: - 712:Src/main.c **** uint32_t i = 10000; while (--i){} - 11543 .loc 1 712 7 is_stmt 0 view .LVU3708 - 11544 088c FFF7FEFF bl HAL_GPIO_WritePin - 11545 .LVL1014: - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11546 .loc 1 713 7 is_stmt 1 view .LVU3709 - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11547 .loc 1 713 27 view .LVU3710 - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11548 .loc 1 713 16 is_stmt 0 view .LVU3711 - 11549 0890 42F21073 movw r3, #10000 - 11550 .LVL1015: - 11551 .L578: - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11552 .loc 1 713 39 is_stmt 1 discriminator 2 view .LVU3712 - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11553 .loc 1 713 34 discriminator 2 view .LVU3713 - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11554 .loc 1 713 34 is_stmt 0 discriminator 2 view .LVU3714 - 11555 0894 013B subs r3, r3, #1 - 11556 .LVL1016: - 713:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); - 11557 .loc 1 713 34 discriminator 2 view .LVU3715 - 11558 0896 FDD1 bne .L578 - 714:Src/main.c **** LD_blinker.state = 2; - 11559 .loc 1 714 7 is_stmt 1 view .LVU3716 - 11560 0898 0022 movs r2, #0 - 11561 089a 8021 movs r1, #128 - 11562 089c 8948 ldr r0, .L618+40 - 11563 089e FFF7FEFF bl HAL_GPIO_WritePin - ARM GAS /tmp/ccwR4KB7.s page 611 - - - 11564 .LVL1017: - 715:Src/main.c **** - 11565 .loc 1 715 7 view .LVU3717 - 715:Src/main.c **** - 11566 .loc 1 715 24 is_stmt 0 view .LVU3718 - 11567 08a2 844B ldr r3, .L618+24 - 11568 08a4 0222 movs r2, #2 - 11569 08a6 9A72 strb r2, [r3, #10] - 717:Src/main.c **** if (st != HAL_OK) - 11570 .loc 1 717 7 is_stmt 1 view .LVU3719 - 717:Src/main.c **** if (st != HAL_OK) - 11571 .loc 1 717 12 is_stmt 0 view .LVU3720 - 11572 08a8 8748 ldr r0, .L618+44 - 11573 08aa FFF7FEFF bl HAL_TIM_Base_Start_IT - 11574 .LVL1018: - 718:Src/main.c **** while(1); - 11575 .loc 1 718 7 is_stmt 1 view .LVU3721 - 718:Src/main.c **** while(1); - 11576 .loc 1 718 10 is_stmt 0 view .LVU3722 - 11577 08ae D8B9 cbnz r0, .L580 - 11578 .L581: - 720:Src/main.c **** { - 11579 .loc 1 720 33 is_stmt 1 view .LVU3723 - 720:Src/main.c **** { - 11580 .loc 1 720 18 is_stmt 0 view .LVU3724 - 11581 08b0 7A4B ldr r3, .L618 - 11582 08b2 D3ED047A vldr.32 s15, [r3, #16] - 720:Src/main.c **** { - 11583 .loc 1 720 39 view .LVU3725 - 11584 08b6 93ED027A vldr.32 s14, [r3, #8] - 720:Src/main.c **** { - 11585 .loc 1 720 33 view .LVU3726 - 11586 08ba F4EEC77A vcmpe.f32 s15, s14 - 11587 08be F1EE10FA vmrs APSR_nzcv, FPSCR - 11588 08c2 12D5 bpl .L611 - 722:Src/main.c **** { - 11589 .loc 1 722 8 is_stmt 1 view .LVU3727 - 722:Src/main.c **** { - 11590 .loc 1 722 12 is_stmt 0 view .LVU3728 - 11591 08c4 814B ldr r3, .L618+48 - 11592 08c6 1B78 ldrb r3, [r3] @ zero_extendqisi2 - 722:Src/main.c **** { - 11593 .loc 1 722 11 view .LVU3729 - 11594 08c8 002B cmp r3, #0 - 11595 08ca F1D0 beq .L581 - 727:Src/main.c **** TO10 = 0; - 11596 .loc 1 727 9 is_stmt 1 view .LVU3730 - 727:Src/main.c **** TO10 = 0; - 11597 .loc 1 727 35 is_stmt 0 view .LVU3731 - 11598 08cc 734B ldr r3, .L618 - 11599 08ce 93ED037A vldr.32 s14, [r3, #12] - 727:Src/main.c **** TO10 = 0; - 11600 .loc 1 727 28 view .LVU3732 - 11601 08d2 77EE277A vadd.f32 s15, s14, s15 - 11602 08d6 C3ED047A vstr.32 s15, [r3, #16] - 728:Src/main.c **** TIM10_coflag = 0; - 11603 .loc 1 728 9 is_stmt 1 view .LVU3733 - ARM GAS /tmp/ccwR4KB7.s page 612 - - - 728:Src/main.c **** TIM10_coflag = 0; - 11604 .loc 1 728 14 is_stmt 0 view .LVU3734 - 11605 08da 0023 movs r3, #0 - 11606 08dc 7C4A ldr r2, .L618+52 - 11607 08de 1360 str r3, [r2] - 729:Src/main.c **** - 11608 .loc 1 729 9 is_stmt 1 view .LVU3735 - 729:Src/main.c **** - 11609 .loc 1 729 22 is_stmt 0 view .LVU3736 - 11610 08e0 7A4A ldr r2, .L618+48 - 11611 08e2 1370 strb r3, [r2] - 11612 08e4 E4E7 b .L581 - 11613 .LVL1019: - 11614 .L577: - 708:Src/main.c **** // */ - 11615 .loc 1 708 8 is_stmt 1 view .LVU3737 - 708:Src/main.c **** // */ - 11616 .loc 1 708 13 view .LVU3738 - 11617 08e6 FEE7 b .L577 - 11618 .LVL1020: - 11619 .L580: - 719:Src/main.c **** while (task.current_param < task.max_param) - 11620 .loc 1 719 8 view .LVU3739 - 719:Src/main.c **** while (task.current_param < task.max_param) - 11621 .loc 1 719 13 view .LVU3740 - 11622 08e8 FEE7 b .L580 - 11623 .L611: - 734:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); - 11624 .loc 1 734 7 view .LVU3741 - 11625 08ea 7748 ldr r0, .L618+44 - 11626 .LVL1021: - 734:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); - 11627 .loc 1 734 7 is_stmt 0 view .LVU3742 - 11628 08ec FFF7FEFF bl HAL_TIM_Base_Stop - 11629 .LVL1022: - 735:Src/main.c **** - 11630 .loc 1 735 7 is_stmt 1 view .LVU3743 - 11631 08f0 744C ldr r4, .L618+40 - 11632 08f2 0122 movs r2, #1 - 11633 08f4 8021 movs r1, #128 - 11634 08f6 2046 mov r0, r4 - 11635 08f8 FFF7FEFF bl HAL_GPIO_WritePin - 11636 .LVL1023: - 737:Src/main.c **** - 11637 .loc 1 737 7 view .LVU3744 - 11638 08fc 0022 movs r2, #0 - 11639 08fe 8021 movs r1, #128 - 11640 0900 2046 mov r0, r4 - 11641 0902 FFF7FEFF bl HAL_GPIO_WritePin - 11642 .LVL1024: - 739:Src/main.c **** TIM8->CNT = 0; - 11643 .loc 1 739 7 view .LVU3745 - 11644 0906 6E48 ldr r0, .L618+36 - 11645 0908 FFF7FEFF bl HAL_TIM_Base_Stop_IT - 11646 .LVL1025: - 740:Src/main.c **** - 11647 .loc 1 740 7 view .LVU3746 - ARM GAS /tmp/ccwR4KB7.s page 613 - - - 740:Src/main.c **** - 11648 .loc 1 740 17 is_stmt 0 view .LVU3747 - 11649 090c 6B4B ldr r3, .L618+32 - 11650 090e 0022 movs r2, #0 - 11651 0910 5A62 str r2, [r3, #36] - 742:Src/main.c **** task.current_param = task.min_param; - 11652 .loc 1 742 7 is_stmt 1 view .LVU3748 - 11653 0912 FFF7FEFF bl Stop_TIM10 - 11654 .LVL1026: - 743:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 11655 .loc 1 743 7 view .LVU3749 - 743:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 11656 .loc 1 743 32 is_stmt 0 view .LVU3750 - 11657 0916 614C ldr r4, .L618 - 11658 0918 D4ED017A vldr.32 s15, [r4, #4] - 743:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); - 11659 .loc 1 743 26 view .LVU3751 - 11660 091c C4ED047A vstr.32 s15, [r4, #16] - 744:Src/main.c **** if (task.tau > 3) - 11661 .loc 1 744 7 is_stmt 1 view .LVU3752 - 11662 0920 FCEEE77A vcvt.u32.f32 s15, s15 - 11663 0924 17EE903A vmov r3, s15 @ int - 11664 0928 99B2 uxth r1, r3 - 11665 092a 0220 movs r0, #2 - 11666 092c FFF7FEFF bl Set_LTEC - 11667 .LVL1027: - 745:Src/main.c **** { - 11668 .loc 1 745 7 view .LVU3753 - 745:Src/main.c **** { - 11669 .loc 1 745 15 is_stmt 0 view .LVU3754 - 11670 0930 E38A ldrh r3, [r4, #22] - 745:Src/main.c **** { - 11671 .loc 1 745 10 view .LVU3755 - 11672 0932 032B cmp r3, #3 - 11673 0934 0CD9 bls .L583 - 747:Src/main.c **** htim10.Init.Period = 9999; - 11674 .loc 1 747 8 is_stmt 1 view .LVU3756 - 747:Src/main.c **** htim10.Init.Period = 9999; - 11675 .loc 1 747 34 is_stmt 0 view .LVU3757 - 11676 0936 644A ldr r2, .L618+44 - 11677 0938 D068 ldr r0, [r2, #12] - 747:Src/main.c **** htim10.Init.Period = 9999; - 11678 .loc 1 747 21 view .LVU3758 - 11679 093a 6649 ldr r1, .L618+56 - 11680 093c 0860 str r0, [r1] - 748:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 11681 .loc 1 748 8 is_stmt 1 view .LVU3759 - 748:Src/main.c **** TO10_counter = (task.tau - 1) * 100; - 11682 .loc 1 748 27 is_stmt 0 view .LVU3760 - 11683 093e 42F20F71 movw r1, #9999 - 11684 0942 D160 str r1, [r2, #12] - 749:Src/main.c **** } - 11685 .loc 1 749 8 is_stmt 1 view .LVU3761 - 749:Src/main.c **** } - 11686 .loc 1 749 33 is_stmt 0 view .LVU3762 - 11687 0944 013B subs r3, r3, #1 - 749:Src/main.c **** } - ARM GAS /tmp/ccwR4KB7.s page 614 - - - 11688 .loc 1 749 38 view .LVU3763 - 11689 0946 6422 movs r2, #100 - 11690 0948 02FB03F3 mul r3, r2, r3 - 749:Src/main.c **** } - 11691 .loc 1 749 21 view .LVU3764 - 11692 094c 624A ldr r2, .L618+60 - 11693 094e 1360 str r3, [r2] - 11694 .L583: - 751:Src/main.c **** - 11695 .loc 1 751 7 is_stmt 1 view .LVU3765 - 11696 0950 5D48 ldr r0, .L618+44 - 11697 0952 FFF7FEFF bl HAL_TIM_Base_Start_IT - 11698 .LVL1028: - 799:Src/main.c **** case TT_CHANGE_TEMP_1: - 11699 .loc 1 799 6 view .LVU3766 - 11700 0956 20E6 b .L568 - 11701 .LVL1029: - 11702 .L608: - 799:Src/main.c **** case TT_CHANGE_TEMP_1: - 11703 .loc 1 799 6 is_stmt 0 view .LVU3767 - 11704 .LBE670: - 810:Src/main.c **** - 11705 .loc 1 810 7 is_stmt 1 view .LVU3768 - 810:Src/main.c **** - 11706 .loc 1 810 18 is_stmt 0 view .LVU3769 - 11707 0958 604A ldr r2, .L618+64 - 11708 095a 1360 str r3, [r2] - 812:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 11709 .loc 1 812 7 is_stmt 1 view .LVU3770 - 812:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 11710 .loc 1 812 25 is_stmt 0 view .LVU3771 - 11711 095c 0120 movs r0, #1 - 11712 095e FFF7FEFF bl MPhD_T - 11713 .LVL1030: - 812:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 - 11714 .loc 1 812 23 discriminator 1 view .LVU3772 - 11715 0962 4F4E ldr r6, .L618+4 - 11716 0964 3081 strh r0, [r6, #8] @ movhi - 813:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11717 .loc 1 813 7 is_stmt 1 view .LVU3773 - 813:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11718 .loc 1 813 25 is_stmt 0 view .LVU3774 - 11719 0966 0120 movs r0, #1 - 11720 0968 FFF7FEFF bl MPhD_T - 11721 .LVL1031: - 813:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11722 .loc 1 813 23 discriminator 1 view .LVU3775 - 11723 096c 3081 strh r0, [r6, #8] @ movhi - 814:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11724 .loc 1 814 7 is_stmt 1 view .LVU3776 - 814:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11725 .loc 1 814 25 is_stmt 0 view .LVU3777 - 11726 096e 0220 movs r0, #2 - 11727 0970 FFF7FEFF bl MPhD_T - 11728 .LVL1032: - 814:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 - 11729 .loc 1 814 23 discriminator 1 view .LVU3778 - ARM GAS /tmp/ccwR4KB7.s page 615 - - - 11730 0974 4B4F ldr r7, .L618+8 - 11731 0976 3881 strh r0, [r7, #8] @ movhi - 815:Src/main.c **** - 11732 .loc 1 815 7 is_stmt 1 view .LVU3779 - 815:Src/main.c **** - 11733 .loc 1 815 25 is_stmt 0 view .LVU3780 - 11734 0978 0220 movs r0, #2 - 11735 097a FFF7FEFF bl MPhD_T - 11736 .LVL1033: - 815:Src/main.c **** - 11737 .loc 1 815 23 discriminator 1 view .LVU3781 - 11738 097e 3881 strh r0, [r7, #8] @ movhi - 817:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 11739 .loc 1 817 7 is_stmt 1 view .LVU3782 - 817:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 11740 .loc 1 817 31 is_stmt 0 view .LVU3783 - 11741 0980 3389 ldrh r3, [r6, #8] - 817:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data - 11742 .loc 1 817 20 view .LVU3784 - 11743 0982 574C ldr r4, .L618+68 - 11744 0984 6380 strh r3, [r4, #2] @ movhi - 818:Src/main.c **** - 11745 .loc 1 818 7 is_stmt 1 view .LVU3785 - 818:Src/main.c **** - 11746 .loc 1 818 20 is_stmt 0 view .LVU3786 - 11747 0986 A080 strh r0, [r4, #4] @ movhi - 822:Src/main.c **** temp16 = Get_ADC(1); - 11748 .loc 1 822 7 is_stmt 1 view .LVU3787 - 822:Src/main.c **** temp16 = Get_ADC(1); - 11749 .loc 1 822 16 is_stmt 0 view .LVU3788 - 11750 0988 0020 movs r0, #0 - 11751 098a FFF7FEFF bl Get_ADC - 11752 .LVL1034: - 822:Src/main.c **** temp16 = Get_ADC(1); - 11753 .loc 1 822 14 discriminator 1 view .LVU3789 - 11754 098e 474D ldr r5, .L618+16 - 11755 0990 2880 strh r0, [r5] @ movhi - 823:Src/main.c **** Long_Data[7] = temp16; - 11756 .loc 1 823 7 is_stmt 1 view .LVU3790 - 823:Src/main.c **** Long_Data[7] = temp16; - 11757 .loc 1 823 16 is_stmt 0 view .LVU3791 - 11758 0992 0120 movs r0, #1 - 11759 0994 FFF7FEFF bl Get_ADC - 11760 .LVL1035: - 823:Src/main.c **** Long_Data[7] = temp16; - 11761 .loc 1 823 14 discriminator 1 view .LVU3792 - 11762 0998 2880 strh r0, [r5] @ movhi - 824:Src/main.c **** - 11763 .loc 1 824 7 is_stmt 1 view .LVU3793 - 824:Src/main.c **** - 11764 .loc 1 824 20 is_stmt 0 view .LVU3794 - 11765 099a E081 strh r0, [r4, #14] @ movhi - 827:Src/main.c **** Long_Data[8] = temp16; - 11766 .loc 1 827 7 is_stmt 1 view .LVU3795 - 827:Src/main.c **** Long_Data[8] = temp16; - 11767 .loc 1 827 16 is_stmt 0 view .LVU3796 - 11768 099c 0120 movs r0, #1 - ARM GAS /tmp/ccwR4KB7.s page 616 - - - 11769 099e FFF7FEFF bl Get_ADC - 11770 .LVL1036: - 827:Src/main.c **** Long_Data[8] = temp16; - 11771 .loc 1 827 14 discriminator 1 view .LVU3797 - 11772 09a2 2880 strh r0, [r5] @ movhi - 828:Src/main.c **** - 11773 .loc 1 828 7 is_stmt 1 view .LVU3798 - 828:Src/main.c **** - 11774 .loc 1 828 20 is_stmt 0 view .LVU3799 - 11775 09a4 2082 strh r0, [r4, #16] @ movhi - 831:Src/main.c **** Long_Data[9] = temp16; - 11776 .loc 1 831 7 is_stmt 1 view .LVU3800 - 831:Src/main.c **** Long_Data[9] = temp16; - 11777 .loc 1 831 16 is_stmt 0 view .LVU3801 - 11778 09a6 0120 movs r0, #1 - 11779 09a8 FFF7FEFF bl Get_ADC - 11780 .LVL1037: - 831:Src/main.c **** Long_Data[9] = temp16; - 11781 .loc 1 831 14 discriminator 1 view .LVU3802 - 11782 09ac 2880 strh r0, [r5] @ movhi - 832:Src/main.c **** - 11783 .loc 1 832 7 is_stmt 1 view .LVU3803 - 832:Src/main.c **** - 11784 .loc 1 832 20 is_stmt 0 view .LVU3804 - 11785 09ae 6082 strh r0, [r4, #18] @ movhi - 835:Src/main.c **** Long_Data[10] = temp16; - 11786 .loc 1 835 7 is_stmt 1 view .LVU3805 - 835:Src/main.c **** Long_Data[10] = temp16; - 11787 .loc 1 835 16 is_stmt 0 view .LVU3806 - 11788 09b0 0120 movs r0, #1 - 11789 09b2 FFF7FEFF bl Get_ADC - 11790 .LVL1038: - 835:Src/main.c **** Long_Data[10] = temp16; - 11791 .loc 1 835 14 discriminator 1 view .LVU3807 - 11792 09b6 2880 strh r0, [r5] @ movhi - 836:Src/main.c **** - 11793 .loc 1 836 7 is_stmt 1 view .LVU3808 - 836:Src/main.c **** - 11794 .loc 1 836 21 is_stmt 0 view .LVU3809 - 11795 09b8 A082 strh r0, [r4, #20] @ movhi - 839:Src/main.c **** Long_Data[11] = temp16; - 11796 .loc 1 839 7 is_stmt 1 view .LVU3810 - 839:Src/main.c **** Long_Data[11] = temp16; - 11797 .loc 1 839 16 is_stmt 0 view .LVU3811 - 11798 09ba 0120 movs r0, #1 - 11799 09bc FFF7FEFF bl Get_ADC - 11800 .LVL1039: - 839:Src/main.c **** Long_Data[11] = temp16; - 11801 .loc 1 839 14 discriminator 1 view .LVU3812 - 11802 09c0 2880 strh r0, [r5] @ movhi - 840:Src/main.c **** temp16 = Get_ADC(2); - 11803 .loc 1 840 7 is_stmt 1 view .LVU3813 - 840:Src/main.c **** temp16 = Get_ADC(2); - 11804 .loc 1 840 21 is_stmt 0 view .LVU3814 - 11805 09c2 E082 strh r0, [r4, #22] @ movhi - 841:Src/main.c **** - 11806 .loc 1 841 7 is_stmt 1 view .LVU3815 - ARM GAS /tmp/ccwR4KB7.s page 617 - - - 841:Src/main.c **** - 11807 .loc 1 841 16 is_stmt 0 view .LVU3816 - 11808 09c4 0220 movs r0, #2 - 11809 09c6 FFF7FEFF bl Get_ADC - 11810 .LVL1040: - 841:Src/main.c **** - 11811 .loc 1 841 14 discriminator 1 view .LVU3817 - 11812 09ca 2880 strh r0, [r5] @ movhi - 844:Src/main.c **** temp16 = Get_ADC(4); - 11813 .loc 1 844 7 is_stmt 1 view .LVU3818 - 844:Src/main.c **** temp16 = Get_ADC(4); - 11814 .loc 1 844 16 is_stmt 0 view .LVU3819 - 11815 09cc 0320 movs r0, #3 - 11816 09ce FFF7FEFF bl Get_ADC - 11817 .LVL1041: - 844:Src/main.c **** temp16 = Get_ADC(4); - 11818 .loc 1 844 14 discriminator 1 view .LVU3820 - 11819 09d2 2880 strh r0, [r5] @ movhi - 845:Src/main.c **** Long_Data[12] = temp16; - 11820 .loc 1 845 7 is_stmt 1 view .LVU3821 - 845:Src/main.c **** Long_Data[12] = temp16; - 11821 .loc 1 845 16 is_stmt 0 view .LVU3822 - 11822 09d4 0420 movs r0, #4 - 11823 09d6 FFF7FEFF bl Get_ADC - 11824 .LVL1042: - 845:Src/main.c **** Long_Data[12] = temp16; - 11825 .loc 1 845 14 discriminator 1 view .LVU3823 - 11826 09da 2880 strh r0, [r5] @ movhi - 846:Src/main.c **** temp16 = Get_ADC(5); - 11827 .loc 1 846 7 is_stmt 1 view .LVU3824 - 846:Src/main.c **** temp16 = Get_ADC(5); - 11828 .loc 1 846 21 is_stmt 0 view .LVU3825 - 11829 09dc 2083 strh r0, [r4, #24] @ movhi - 847:Src/main.c **** - 11830 .loc 1 847 7 is_stmt 1 view .LVU3826 - 847:Src/main.c **** - 11831 .loc 1 847 16 is_stmt 0 view .LVU3827 - 11832 09de 0520 movs r0, #5 - 11833 09e0 FFF7FEFF bl Get_ADC - 11834 .LVL1043: - 847:Src/main.c **** - 11835 .loc 1 847 14 discriminator 1 view .LVU3828 - 11836 09e4 2880 strh r0, [r5] @ movhi - 850:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 11837 .loc 1 850 7 is_stmt 1 view .LVU3829 - 850:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; - 11838 .loc 1 850 16 is_stmt 0 view .LVU3830 - 11839 09e6 3F4B ldr r3, .L618+72 - 11840 09e8 1B68 ldr r3, [r3] - 11841 09ea 3F4A ldr r2, .L618+76 - 11842 09ec 1360 str r3, [r2] - 851:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 11843 .loc 1 851 7 is_stmt 1 view .LVU3831 - 851:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; - 11844 .loc 1 851 20 is_stmt 0 view .LVU3832 - 11845 09ee E380 strh r3, [r4, #6] @ movhi - 852:Src/main.c **** - ARM GAS /tmp/ccwR4KB7.s page 618 - - - 11846 .loc 1 852 7 is_stmt 1 view .LVU3833 - 852:Src/main.c **** - 11847 .loc 1 852 31 is_stmt 0 view .LVU3834 - 11848 09f0 1B0C lsrs r3, r3, #16 - 852:Src/main.c **** - 11849 .loc 1 852 20 view .LVU3835 - 11850 09f2 2381 strh r3, [r4, #8] @ movhi - 855:Src/main.c **** - 11851 .loc 1 855 7 is_stmt 1 view .LVU3836 - 855:Src/main.c **** - 11852 .loc 1 855 31 is_stmt 0 view .LVU3837 - 11853 09f4 3388 ldrh r3, [r6] - 855:Src/main.c **** - 11854 .loc 1 855 20 view .LVU3838 - 11855 09f6 6381 strh r3, [r4, #10] @ movhi - 858:Src/main.c **** } - 11856 .loc 1 858 7 is_stmt 1 view .LVU3839 - 858:Src/main.c **** } - 11857 .loc 1 858 31 is_stmt 0 view .LVU3840 - 11858 09f8 3B88 ldrh r3, [r7] - 858:Src/main.c **** } - 11859 .loc 1 858 20 view .LVU3841 - 11860 09fa A381 strh r3, [r4, #12] @ movhi - 11861 09fc D4E5 b .L585 - 11862 .L587: - 886:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 11863 .loc 1 886 5 is_stmt 1 view .LVU3842 - 886:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 11864 .loc 1 886 17 is_stmt 0 view .LVU3843 - 11865 09fe 3B4C ldr r4, .L618+80 - 11866 0a00 0D21 movs r1, #13 - 11867 0a02 2046 mov r0, r4 - 11868 0a04 FFF7FEFF bl CalculateChecksum - 11869 .LVL1044: - 886:Src/main.c **** Long_Data[DL_16-1] = CS_result; - 11870 .loc 1 886 15 discriminator 1 view .LVU3844 - 11871 0a08 394B ldr r3, .L618+84 - 11872 0a0a 1880 strh r0, [r3] @ movhi - 887:Src/main.c **** - 11873 .loc 1 887 5 is_stmt 1 view .LVU3845 - 887:Src/main.c **** - 11874 .loc 1 887 24 is_stmt 0 view .LVU3846 - 11875 0a0c 6083 strh r0, [r4, #26] @ movhi - 889:Src/main.c **** { - 11876 .loc 1 889 5 is_stmt 1 view .LVU3847 - 11877 .LBB671: - 889:Src/main.c **** { - 11878 .loc 1 889 10 view .LVU3848 - 11879 .LVL1045: - 889:Src/main.c **** { - 11880 .loc 1 889 19 is_stmt 0 view .LVU3849 - 11881 0a0e 0023 movs r3, #0 - 889:Src/main.c **** { - 11882 .loc 1 889 5 view .LVU3850 - 11883 0a10 0BE0 b .L590 - 11884 .LVL1046: - 11885 .L591: - ARM GAS /tmp/ccwR4KB7.s page 619 - - - 891:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11886 .loc 1 891 6 is_stmt 1 view .LVU3851 - 891:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11887 .loc 1 891 33 is_stmt 0 view .LVU3852 - 11888 0a12 334A ldr r2, .L618+68 - 11889 0a14 32F81320 ldrh r2, [r2, r3, lsl #1] - 891:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11890 .loc 1 891 17 view .LVU3853 - 11891 0a18 5900 lsls r1, r3, #1 - 891:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11892 .loc 1 891 21 view .LVU3854 - 11893 0a1a 3648 ldr r0, .L618+88 - 11894 0a1c 00F81320 strb r2, [r0, r3, lsl #1] - 892:Src/main.c **** } - 11895 .loc 1 892 6 is_stmt 1 view .LVU3855 - 892:Src/main.c **** } - 11896 .loc 1 892 19 is_stmt 0 view .LVU3856 - 11897 0a20 0131 adds r1, r1, #1 - 892:Src/main.c **** } - 11898 .loc 1 892 23 view .LVU3857 - 11899 0a22 120A lsrs r2, r2, #8 - 11900 0a24 4254 strb r2, [r0, r1] - 889:Src/main.c **** { - 11901 .loc 1 889 38 is_stmt 1 discriminator 3 view .LVU3858 - 11902 0a26 0133 adds r3, r3, #1 - 11903 .LVL1047: - 889:Src/main.c **** { - 11904 .loc 1 889 38 is_stmt 0 discriminator 3 view .LVU3859 - 11905 0a28 9BB2 uxth r3, r3 - 11906 .LVL1048: - 11907 .L590: - 889:Src/main.c **** { - 11908 .loc 1 889 28 is_stmt 1 discriminator 1 view .LVU3860 - 11909 0a2a 0E2B cmp r3, #14 - 11910 0a2c F1D9 bls .L591 - 11911 .LBE671: - 899:Src/main.c **** UART_transmission_request = NO_MESS; - 11912 .loc 1 899 5 view .LVU3861 - 11913 0a2e 1E20 movs r0, #30 - 11914 0a30 FFF7FEFF bl USART_TX_DMA - 11915 .LVL1049: - 900:Src/main.c **** break; - 11916 .loc 1 900 5 view .LVU3862 - 900:Src/main.c **** break; - 11917 .loc 1 900 31 is_stmt 0 view .LVU3863 - 11918 0a34 304B ldr r3, .L618+92 - 11919 0a36 0022 movs r2, #0 - 11920 0a38 1A70 strb r2, [r3] - 901:Src/main.c **** case MESS_03://Transmith saved packet - 11921 .loc 1 901 4 is_stmt 1 view .LVU3864 - 11922 0a3a FFF76EBB b .L589 - 11923 .LVL1050: - 11924 .L592: - 11925 .LBB672: - 905:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11926 .loc 1 905 6 view .LVU3865 - 905:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - ARM GAS /tmp/ccwR4KB7.s page 620 - - - 11927 .loc 1 905 33 is_stmt 0 view .LVU3866 - 11928 0a3e 284A ldr r2, .L618+68 - 11929 0a40 32F81320 ldrh r2, [r2, r3, lsl #1] - 905:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11930 .loc 1 905 17 view .LVU3867 - 11931 0a44 5900 lsls r1, r3, #1 - 905:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; - 11932 .loc 1 905 21 view .LVU3868 - 11933 0a46 2B48 ldr r0, .L618+88 - 11934 0a48 00F81320 strb r2, [r0, r3, lsl #1] - 906:Src/main.c **** } - 11935 .loc 1 906 6 is_stmt 1 view .LVU3869 - 906:Src/main.c **** } - 11936 .loc 1 906 19 is_stmt 0 view .LVU3870 - 11937 0a4c 0131 adds r1, r1, #1 - 906:Src/main.c **** } - 11938 .loc 1 906 23 view .LVU3871 - 11939 0a4e 120A lsrs r2, r2, #8 - 11940 0a50 4254 strb r2, [r0, r1] - 903:Src/main.c **** { - 11941 .loc 1 903 38 is_stmt 1 discriminator 3 view .LVU3872 - 11942 0a52 0133 adds r3, r3, #1 - 11943 .LVL1051: - 903:Src/main.c **** { - 11944 .loc 1 903 38 is_stmt 0 discriminator 3 view .LVU3873 - 11945 0a54 9BB2 uxth r3, r3 - 11946 .LVL1052: - 11947 .L588: - 903:Src/main.c **** { - 11948 .loc 1 903 28 is_stmt 1 discriminator 1 view .LVU3874 - 11949 0a56 0E2B cmp r3, #14 - 11950 0a58 F1D9 bls .L592 - 11951 .LBE672: - 912:Src/main.c **** UART_transmission_request = NO_MESS; - 11952 .loc 1 912 5 view .LVU3875 - 11953 0a5a 1E20 movs r0, #30 - 11954 0a5c FFF7FEFF bl USART_TX_DMA - 11955 .LVL1053: - 913:Src/main.c **** break; - 11956 .loc 1 913 5 view .LVU3876 - 913:Src/main.c **** break; - 11957 .loc 1 913 31 is_stmt 0 view .LVU3877 - 11958 0a60 254B ldr r3, .L618+92 - 11959 0a62 0022 movs r2, #0 - 11960 0a64 1A70 strb r2, [r3] - 914:Src/main.c **** } - 11961 .loc 1 914 4 is_stmt 1 view .LVU3878 - 11962 0a66 FFF758BB b .L589 - 11963 .LVL1054: - 11964 .L598: - 874:Src/main.c **** { - 11965 .loc 1 874 3 is_stmt 0 view .LVU3879 - 11966 0a6a 0023 movs r3, #0 - 11967 0a6c F3E7 b .L588 - 11968 .L601: - 916:Src/main.c **** { - 11969 .loc 1 916 28 discriminator 1 view .LVU3880 - ARM GAS /tmp/ccwR4KB7.s page 621 - - - 11970 0a6e 1D4B ldr r3, .L618+72 - 11971 0a70 1B68 ldr r3, [r3] - 11972 0a72 224A ldr r2, .L618+96 - 11973 0a74 1268 ldr r2, [r2] - 11974 0a76 9B1A subs r3, r3, r2 - 916:Src/main.c **** { - 11975 .loc 1 916 21 discriminator 1 view .LVU3881 - 11976 0a78 642B cmp r3, #100 - 11977 0a7a 7FF653AB bls .L535 - 918:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! - 11978 .loc 1 918 4 is_stmt 1 view .LVU3882 - 918:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! - 11979 .loc 1 918 18 is_stmt 0 view .LVU3883 - 11980 0a7e 0022 movs r2, #0 - 11981 0a80 1F4B ldr r3, .L618+100 - 11982 0a82 1A80 strh r2, [r3] @ movhi - 919:Src/main.c **** UART_transmission_request = MESS_01;//Send status - 11983 .loc 1 919 4 is_stmt 1 view .LVU3884 - 919:Src/main.c **** UART_transmission_request = MESS_01;//Send status - 11984 .loc 1 919 14 is_stmt 0 view .LVU3885 - 11985 0a84 1F49 ldr r1, .L618+104 - 11986 0a86 0B78 ldrb r3, [r1] @ zero_extendqisi2 - 919:Src/main.c **** UART_transmission_request = MESS_01;//Send status - 11987 .loc 1 919 18 view .LVU3886 - 11988 0a88 43F00203 orr r3, r3, #2 - 11989 0a8c 0B70 strb r3, [r1] - 920:Src/main.c **** flg_tmt = 0;//Reset timeout flag - 11990 .loc 1 920 4 is_stmt 1 view .LVU3887 - 920:Src/main.c **** flg_tmt = 0;//Reset timeout flag - 11991 .loc 1 920 30 is_stmt 0 view .LVU3888 - 11992 0a8e 1A4B ldr r3, .L618+92 - 11993 0a90 0121 movs r1, #1 - 11994 0a92 1970 strb r1, [r3] - 921:Src/main.c **** } - 11995 .loc 1 921 4 is_stmt 1 view .LVU3889 - 921:Src/main.c **** } - 11996 .loc 1 921 12 is_stmt 0 view .LVU3890 - 11997 0a94 1C4B ldr r3, .L618+108 - 11998 0a96 1A70 strb r2, [r3] - 11999 0a98 FFF744BB b .L535 - 12000 .L619: - 12001 .align 2 - 12002 .L618: - 12003 0a9c 00000000 .word task - 12004 0aa0 00000000 .word LD1_param - 12005 0aa4 00000000 .word LD2_param - 12006 0aa8 00000000 .word LD1_curr_setup - 12007 0aac 00000000 .word temp16 - 12008 0ab0 00000000 .word LD2_curr_setup - 12009 0ab4 00000000 .word LD_blinker - 12010 0ab8 00040240 .word 1073873920 - 12011 0abc 00040140 .word 1073808384 - 12012 0ac0 00000000 .word htim8 - 12013 0ac4 000C0240 .word 1073875968 - 12014 0ac8 00000000 .word htim10 - 12015 0acc 00000000 .word TIM10_coflag - 12016 0ad0 00000000 .word TO10 - ARM GAS /tmp/ccwR4KB7.s page 622 - - - 12017 0ad4 00000000 .word TIM10_period - 12018 0ad8 00000000 .word TO10_counter - 12019 0adc 00000000 .word TO7_before - 12020 0ae0 00000000 .word Long_Data - 12021 0ae4 00000000 .word TO6 - 12022 0ae8 00000000 .word TO6_stop - 12023 0aec 02000000 .word Long_Data+2 - 12024 0af0 00000000 .word CS_result - 12025 0af4 00000000 .word UART_DATA - 12026 0af8 00000000 .word UART_transmission_request - 12027 0afc 00000000 .word TO6_uart - 12028 0b00 00000000 .word UART_rec_incr - 12029 0b04 00000000 .word State_Data - 12030 0b08 00000000 .word flg_tmt - 12031 .cfi_endproc - 12032 .LFE1186: - 12034 .section .rodata.ad9102_example2_regval,"a" - 12035 .align 2 - 12038 ad9102_example2_regval: - 12039 0000 0000 .short 0 - 12040 0002 000E .short 3584 - 12041 0004 0000 .short 0 - 12042 0006 0000 .short 0 - 12043 0008 0000 .short 0 - 12044 000a 0000 .short 0 - 12045 000c 0000 .short 0 - 12046 000e 0040 .short 16384 - 12047 0010 0000 .short 0 - 12048 0012 0000 .short 0 - 12049 0014 0000 .short 0 - 12050 0016 0000 .short 0 - 12051 0018 001F .short 7936 - 12052 001a 0000 .short 0 - 12053 001c 0000 .short 0 - 12054 001e 0000 .short 0 - 12055 0020 0E00 .short 14 - 12056 0022 0000 .short 0 - 12057 0024 0000 .short 0 - 12058 0026 0000 .short 0 - 12059 0028 0000 .short 0 - 12060 002a 0000 .short 0 - 12061 002c 3030 .short 12336 - 12062 002e 1101 .short 273 - 12063 0030 FFFF .short -1 - 12064 0032 0000 .short 0 - 12065 0034 0101 .short 257 - 12066 0036 0300 .short 3 - 12067 0038 0000 .short 0 - 12068 003a 0000 .short 0 - 12069 003c 0000 .short 0 - 12070 003e 0000 .short 0 - 12071 0040 0000 .short 0 - 12072 0042 0000 .short 0 - 12073 0044 0000 .short 0 - 12074 0046 0000 .short 0 - 12075 0048 0040 .short 16384 - 12076 004a 0000 .short 0 - ARM GAS /tmp/ccwR4KB7.s page 623 - - - 12077 004c 0002 .short 512 - 12078 004e 0000 .short 0 - 12079 0050 0000 .short 0 - 12080 0052 0000 .short 0 - 12081 0054 0000 .short 0 - 12082 0056 0000 .short 0 - 12083 0058 0000 .short 0 - 12084 005a 0000 .short 0 - 12085 005c 0000 .short 0 - 12086 005e 0000 .short 0 - 12087 0060 0000 .short 0 - 12088 0062 0000 .short 0 - 12089 0064 0000 .short 0 - 12090 0066 0000 .short 0 - 12091 0068 0000 .short 0 - 12092 006a 0000 .short 0 - 12093 006c 0000 .short 0 - 12094 006e 0000 .short 0 - 12095 0070 0000 .short 0 - 12096 0072 0000 .short 0 - 12097 0074 0000 .short 0 - 12098 0076 0000 .short 0 - 12099 0078 A00F .short 4000 - 12100 007a 0000 .short 0 - 12101 007c F03F .short 16368 - 12102 007e 0001 .short 256 - 12103 0080 0100 .short 1 - 12104 0082 0100 .short 1 - 12105 .section .rodata.ad9102_example4_regval,"a" - 12106 .align 2 - 12109 ad9102_example4_regval: - 12110 0000 0000 .short 0 - 12111 0002 0000 .short 0 - 12112 0004 0000 .short 0 - 12113 0006 0000 .short 0 - 12114 0008 0000 .short 0 - 12115 000a 0000 .short 0 - 12116 000c 0000 .short 0 - 12117 000e 0040 .short 16384 - 12118 0010 0000 .short 0 - 12119 0012 0000 .short 0 - 12120 0014 0000 .short 0 - 12121 0016 0000 .short 0 - 12122 0018 001F .short 7936 - 12123 001a 0000 .short 0 - 12124 001c 0000 .short 0 - 12125 001e 0000 .short 0 - 12126 0020 0E00 .short 14 - 12127 0022 0000 .short 0 - 12128 0024 0000 .short 0 - 12129 0026 0000 .short 0 - 12130 0028 0000 .short 0 - 12131 002a 0000 .short 0 - 12132 002c 1232 .short 12818 - 12133 002e 2101 .short 289 - 12134 0030 FFFF .short -1 - 12135 0032 0000 .short 0 - ARM GAS /tmp/ccwR4KB7.s page 624 - - - 12136 0034 0101 .short 257 - 12137 0036 0300 .short 3 - 12138 0038 0000 .short 0 - 12139 003a 0000 .short 0 - 12140 003c 0000 .short 0 - 12141 003e 0000 .short 0 - 12142 0040 0000 .short 0 - 12143 0042 0000 .short 0 - 12144 0044 0000 .short 0 - 12145 0046 0000 .short 0 - 12146 0048 0040 .short 16384 - 12147 004a 0000 .short 0 - 12148 004c 0606 .short 1542 - 12149 004e 9919 .short 6553 - 12150 0050 009A .short -26112 - 12151 0052 0000 .short 0 - 12152 0054 0000 .short 0 - 12153 0056 0000 .short 0 - 12154 0058 0000 .short 0 - 12155 005a 0000 .short 0 - 12156 005c 0000 .short 0 - 12157 005e 0000 .short 0 - 12158 0060 A00F .short 4000 - 12159 0062 0000 .short 0 - 12160 0064 0000 .short 0 - 12161 0066 0000 .short 0 - 12162 0068 0000 .short 0 - 12163 006a 0000 .short 0 - 12164 006c 0000 .short 0 - 12165 006e 0000 .short 0 - 12166 0070 0000 .short 0 - 12167 0072 0000 .short 0 - 12168 0074 0000 .short 0 - 12169 0076 0000 .short 0 - 12170 0078 0000 .short 0 - 12171 007a 0000 .short 0 - 12172 007c 0000 .short 0 - 12173 007e FF16 .short 5887 - 12174 0080 0100 .short 1 - 12175 0082 0100 .short 1 - 12176 .section .rodata.ad9102_reg_addr,"a" - 12177 .align 2 - 12180 ad9102_reg_addr: - 12181 0000 0000 .short 0 - 12182 0002 0100 .short 1 - 12183 0004 0200 .short 2 - 12184 0006 0300 .short 3 - 12185 0008 0400 .short 4 - 12186 000a 0500 .short 5 - 12187 000c 0600 .short 6 - 12188 000e 0700 .short 7 - 12189 0010 0800 .short 8 - 12190 0012 0900 .short 9 - 12191 0014 0A00 .short 10 - 12192 0016 0B00 .short 11 - 12193 0018 0C00 .short 12 - 12194 001a 0D00 .short 13 - ARM GAS /tmp/ccwR4KB7.s page 625 - - - 12195 001c 0E00 .short 14 - 12196 001e 1F00 .short 31 - 12197 0020 2000 .short 32 - 12198 0022 2200 .short 34 - 12199 0024 2300 .short 35 - 12200 0026 2400 .short 36 - 12201 0028 2500 .short 37 - 12202 002a 2600 .short 38 - 12203 002c 2700 .short 39 - 12204 002e 2800 .short 40 - 12205 0030 2900 .short 41 - 12206 0032 2A00 .short 42 - 12207 0034 2B00 .short 43 - 12208 0036 2C00 .short 44 - 12209 0038 2D00 .short 45 - 12210 003a 2E00 .short 46 - 12211 003c 2F00 .short 47 - 12212 003e 3000 .short 48 - 12213 0040 3100 .short 49 - 12214 0042 3200 .short 50 - 12215 0044 3300 .short 51 - 12216 0046 3400 .short 52 - 12217 0048 3500 .short 53 - 12218 004a 3600 .short 54 - 12219 004c 3700 .short 55 - 12220 004e 3E00 .short 62 - 12221 0050 3F00 .short 63 - 12222 0052 4000 .short 64 - 12223 0054 4100 .short 65 - 12224 0056 4200 .short 66 - 12225 0058 4300 .short 67 - 12226 005a 4400 .short 68 - 12227 005c 4500 .short 69 - 12228 005e 4700 .short 71 - 12229 0060 5000 .short 80 - 12230 0062 5100 .short 81 - 12231 0064 5200 .short 82 - 12232 0066 5300 .short 83 - 12233 0068 5400 .short 84 - 12234 006a 5500 .short 85 - 12235 006c 5600 .short 86 - 12236 006e 5700 .short 87 - 12237 0070 5800 .short 88 - 12238 0072 5900 .short 89 - 12239 0074 5A00 .short 90 - 12240 0076 5B00 .short 91 - 12241 0078 5C00 .short 92 - 12242 007a 5D00 .short 93 - 12243 007c 5E00 .short 94 - 12244 007e 5F00 .short 95 - 12245 0080 1E00 .short 30 - 12246 0082 1D00 .short 29 - 12247 .global task - 12248 .section .bss.task,"aw",%nobits - 12249 .align 2 - 12252 task: - 12253 0000 00000000 .space 52 - ARM GAS /tmp/ccwR4KB7.s page 626 - - - 12253 00000000 - 12253 00000000 - 12253 00000000 - 12253 00000000 - 12254 .global LD_blinker - 12255 .section .bss.LD_blinker,"aw",%nobits - 12256 .align 2 - 12259 LD_blinker: - 12260 0000 00000000 .space 12 - 12260 00000000 - 12260 00000000 - 12261 .global LD2_param - 12262 .section .bss.LD2_param,"aw",%nobits - 12263 .align 2 - 12266 LD2_param: - 12267 0000 00000000 .space 12 - 12267 00000000 - 12267 00000000 - 12268 .global LD1_param - 12269 .section .bss.LD1_param,"aw",%nobits - 12270 .align 2 - 12273 LD1_param: - 12274 0000 00000000 .space 12 - 12274 00000000 - 12274 00000000 - 12275 .global Def_setup - 12276 .section .bss.Def_setup,"aw",%nobits - 12277 .align 2 - 12280 Def_setup: - 12281 0000 00000000 .space 18 - 12281 00000000 - 12281 00000000 - 12281 00000000 - 12281 0000 - 12282 .global Curr_setup - 12283 .section .bss.Curr_setup,"aw",%nobits - 12284 .align 2 - 12287 Curr_setup: - 12288 0000 00000000 .space 18 - 12288 00000000 - 12288 00000000 - 12288 00000000 - 12288 0000 - 12289 .global LD2_def_setup - 12290 .section .bss.LD2_def_setup,"aw",%nobits - 12291 .align 2 - 12294 LD2_def_setup: - 12295 0000 00000000 .space 16 - 12295 00000000 - 12295 00000000 - 12295 00000000 - 12296 .global LD1_def_setup - 12297 .section .bss.LD1_def_setup,"aw",%nobits - 12298 .align 2 - 12301 LD1_def_setup: - 12302 0000 00000000 .space 16 - 12302 00000000 - ARM GAS /tmp/ccwR4KB7.s page 627 - - - 12302 00000000 - 12302 00000000 - 12303 .global LD2_curr_setup - 12304 .section .bss.LD2_curr_setup,"aw",%nobits - 12305 .align 2 - 12308 LD2_curr_setup: - 12309 0000 00000000 .space 16 - 12309 00000000 - 12309 00000000 - 12309 00000000 - 12310 .global LD1_curr_setup - 12311 .section .bss.LD1_curr_setup,"aw",%nobits - 12312 .align 2 - 12315 LD1_curr_setup: - 12316 0000 00000000 .space 16 - 12316 00000000 - 12316 00000000 - 12316 00000000 - 12317 .global sizeoffile - 12318 .section .bss.sizeoffile,"aw",%nobits - 12319 .align 2 - 12322 sizeoffile: - 12323 0000 00000000 .space 4 - 12324 .global fgoto - 12325 .section .bss.fgoto,"aw",%nobits - 12326 .align 2 - 12329 fgoto: - 12330 0000 00000000 .space 4 - 12331 .global test - 12332 .section .bss.test,"aw",%nobits - 12333 .align 2 - 12336 test: - 12337 0000 00000000 .space 4 - 12338 .global fresult - 12339 .section .bss.fresult,"aw",%nobits - 12342 fresult: - 12343 0000 00 .space 1 - 12344 .global COMMAND - 12345 .section .bss.COMMAND,"aw",%nobits - 12346 .align 2 - 12349 COMMAND: - 12350 0000 00000000 .space 30 - 12350 00000000 - 12350 00000000 - 12350 00000000 - 12350 00000000 - 12351 .global Long_Data - 12352 .section .bss.Long_Data,"aw",%nobits - 12353 .align 2 - 12356 Long_Data: - 12357 0000 00000000 .space 30 - 12357 00000000 - 12357 00000000 - 12357 00000000 - 12357 00000000 - 12358 .global temp16 - 12359 .section .bss.temp16,"aw",%nobits - ARM GAS /tmp/ccwR4KB7.s page 628 - - - 12360 .align 1 - 12363 temp16: - 12364 0000 0000 .space 2 - 12365 .global CS_result - 12366 .section .bss.CS_result,"aw",%nobits - 12367 .align 1 - 12370 CS_result: - 12371 0000 0000 .space 2 - 12372 .global UART_header - 12373 .section .bss.UART_header,"aw",%nobits - 12374 .align 1 - 12377 UART_header: - 12378 0000 0000 .space 2 - 12379 .global UART_rec_incr - 12380 .section .bss.UART_rec_incr,"aw",%nobits - 12381 .align 1 - 12384 UART_rec_incr: - 12385 0000 0000 .space 2 - 12386 .global TIM10_coflag - 12387 .section .bss.TIM10_coflag,"aw",%nobits - 12390 TIM10_coflag: - 12391 0000 00 .space 1 - 12392 .global u_rx_flg - 12393 .section .bss.u_rx_flg,"aw",%nobits - 12396 u_rx_flg: - 12397 0000 00 .space 1 - 12398 .global u_tx_flg - 12399 .section .bss.u_tx_flg,"aw",%nobits - 12402 u_tx_flg: - 12403 0000 00 .space 1 - 12404 .global flg_tmt - 12405 .section .bss.flg_tmt,"aw",%nobits - 12408 flg_tmt: - 12409 0000 00 .space 1 - 12410 .global UART_DATA - 12411 .section .bss.UART_DATA,"aw",%nobits - 12412 .align 2 - 12415 UART_DATA: - 12416 0000 00000000 .space 30 - 12416 00000000 - 12416 00000000 - 12416 00000000 - 12416 00000000 - 12417 .global State_Data - 12418 .section .bss.State_Data,"aw",%nobits - 12419 .align 2 - 12422 State_Data: - 12423 0000 0000 .space 2 - 12424 .global UART_transmission_request - 12425 .section .bss.UART_transmission_request,"aw",%nobits - 12428 UART_transmission_request: - 12429 0000 00 .space 1 - 12430 .global CPU_state_old - 12431 .section .bss.CPU_state_old,"aw",%nobits - 12434 CPU_state_old: - 12435 0000 00 .space 1 - 12436 .global CPU_state - ARM GAS /tmp/ccwR4KB7.s page 629 - - - 12437 .section .bss.CPU_state,"aw",%nobits - 12440 CPU_state: - 12441 0000 00 .space 1 - 12442 .global uart_buf - 12443 .section .bss.uart_buf,"aw",%nobits - 12446 uart_buf: - 12447 0000 00 .space 1 - 12448 .global TIM10_period - 12449 .section .bss.TIM10_period,"aw",%nobits - 12450 .align 2 - 12453 TIM10_period: - 12454 0000 00000000 .space 4 - 12455 .global TO10_counter - 12456 .section .bss.TO10_counter,"aw",%nobits - 12457 .align 2 - 12460 TO10_counter: - 12461 0000 00000000 .space 4 - 12462 .global TO10 - 12463 .section .bss.TO10,"aw",%nobits - 12464 .align 2 - 12467 TO10: - 12468 0000 00000000 .space 4 - 12469 .global TO7_PID - 12470 .section .bss.TO7_PID,"aw",%nobits - 12471 .align 2 - 12474 TO7_PID: - 12475 0000 00000000 .space 4 - 12476 .global TO7_before - 12477 .section .bss.TO7_before,"aw",%nobits - 12478 .align 2 - 12481 TO7_before: - 12482 0000 00000000 .space 4 - 12483 .global TO7 - 12484 .section .bss.TO7,"aw",%nobits - 12485 .align 2 - 12488 TO7: - 12489 0000 00000000 .space 4 - 12490 .global temp32 - 12491 .section .bss.temp32,"aw",%nobits - 12492 .align 2 - 12495 temp32: - 12496 0000 00000000 .space 4 - 12497 .global SD_SLIDE - 12498 .section .bss.SD_SLIDE,"aw",%nobits - 12499 .align 2 - 12502 SD_SLIDE: - 12503 0000 00000000 .space 4 - 12504 .global SD_SEEK - 12505 .section .bss.SD_SEEK,"aw",%nobits - 12506 .align 2 - 12509 SD_SEEK: - 12510 0000 00000000 .space 4 - 12511 .global TO6_uart - 12512 .section .bss.TO6_uart,"aw",%nobits - 12513 .align 2 - 12516 TO6_uart: - 12517 0000 00000000 .space 4 - ARM GAS /tmp/ccwR4KB7.s page 630 - - - 12518 .global TO6_stop - 12519 .section .bss.TO6_stop,"aw",%nobits - 12520 .align 2 - 12523 TO6_stop: - 12524 0000 00000000 .space 4 - 12525 .global TO6_before - 12526 .section .bss.TO6_before,"aw",%nobits - 12527 .align 2 - 12530 TO6_before: - 12531 0000 00000000 .space 4 - 12532 .global TO6 - 12533 .section .bss.TO6,"aw",%nobits - 12534 .align 2 - 12537 TO6: - 12538 0000 00000000 .space 4 - 12539 .global huart8 - 12540 .section .bss.huart8,"aw",%nobits - 12541 .align 2 - 12544 huart8: - 12545 0000 00000000 .space 136 - 12545 00000000 - 12545 00000000 - 12545 00000000 - 12545 00000000 - 12546 .global htim11 - 12547 .section .bss.htim11,"aw",%nobits - 12548 .align 2 - 12551 htim11: - 12552 0000 00000000 .space 76 - 12552 00000000 - 12552 00000000 - 12552 00000000 - 12552 00000000 - 12553 .global htim10 - 12554 .section .bss.htim10,"aw",%nobits - 12555 .align 2 - 12558 htim10: - 12559 0000 00000000 .space 76 - 12559 00000000 - 12559 00000000 - 12559 00000000 - 12559 00000000 - 12560 .global htim8 - 12561 .section .bss.htim8,"aw",%nobits - 12562 .align 2 - 12565 htim8: - 12566 0000 00000000 .space 76 - 12566 00000000 - 12566 00000000 - 12566 00000000 - 12566 00000000 - 12567 .global htim4 - 12568 .section .bss.htim4,"aw",%nobits - 12569 .align 2 - 12572 htim4: - 12573 0000 00000000 .space 76 - 12573 00000000 - ARM GAS /tmp/ccwR4KB7.s page 631 - - - 12573 00000000 - 12573 00000000 - 12573 00000000 - 12574 .global hsd1 - 12575 .section .bss.hsd1,"aw",%nobits - 12576 .align 2 - 12579 hsd1: - 12580 0000 00000000 .space 132 - 12580 00000000 - 12580 00000000 - 12580 00000000 - 12580 00000000 - 12581 .global hadc3 - 12582 .section .bss.hadc3,"aw",%nobits - 12583 .align 2 - 12586 hadc3: - 12587 0000 00000000 .space 72 - 12587 00000000 - 12587 00000000 - 12587 00000000 - 12587 00000000 - 12588 .global hadc1 - 12589 .section .bss.hadc1,"aw",%nobits - 12590 .align 2 - 12593 hadc1: - 12594 0000 00000000 .space 72 - 12594 00000000 - 12594 00000000 - 12594 00000000 - 12594 00000000 - 12595 .text - 12596 .Letext0: - 12597 .file 9 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" - 12598 .file 10 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" - 12599 .file 11 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" - 12600 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" - 12601 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc_ex.h" - 12602 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc.h" - 12603 .file 15 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" - 12604 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" - 12605 .file 17 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" - 12606 .file 18 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h" - 12607 .file 19 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h" - 12608 .file 20 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" - 12609 .file 21 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_uart.h" - 12610 .file 22 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" - 12611 .file 23 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h" - 12612 .file 24 "Inc/main.h" - 12613 .file 25 "Middlewares/Third_Party/FatFs/src/ff.h" - 12614 .file 26 "Inc/File_Handling.h" - 12615 .file 27 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim_ex.h" - 12616 .file 28 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_pwr_ex.h" - 12617 .file 29 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h" - 12618 .file 30 "Inc/fatfs.h" - 12619 .file 31 "" - ARM GAS /tmp/ccwR4KB7.s page 632 + 11446 .loc 1 456 21 is_stmt 0 view .LVU3626 + 11447 03be A082 strh r0, [r4, #20] @ movhi + 459:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor + 11448 .loc 1 459 7 is_stmt 1 view .LVU3627 + 459:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor + 11449 .loc 1 459 16 is_stmt 0 view .LVU3628 + 11450 03c0 0120 movs r0, #1 + 11451 03c2 FFF7FEFF bl Get_ADC + 11452 .LVL1020: + 459:Src/main.c **** Long_Data[11] = temp16; // PC1 -- 5V2_monitor // PC1 -- 5V2_monitor + 11453 .loc 1 459 14 discriminator 1 view .LVU3629 + 11454 03c6 2880 strh r0, [r5] @ movhi + 460:Src/main.c **** temp16 = Get_ADC(2); + 11455 .loc 1 460 7 is_stmt 1 view .LVU3630 + 460:Src/main.c **** temp16 = Get_ADC(2); + 11456 .loc 1 460 21 is_stmt 0 view .LVU3631 + 11457 03c8 E082 strh r0, [r4, #22] @ movhi + 461:Src/main.c **** + 11458 .loc 1 461 7 is_stmt 1 view .LVU3632 + 461:Src/main.c **** + 11459 .loc 1 461 16 is_stmt 0 view .LVU3633 + 11460 03ca 0220 movs r0, #2 + 11461 03cc FFF7FEFF bl Get_ADC + 11462 .LVL1021: + 461:Src/main.c **** + 11463 .loc 1 461 14 discriminator 1 view .LVU3634 + 11464 03d0 2880 strh r0, [r5] @ movhi + 464:Src/main.c **** temp16 = Get_ADC(4); + 11465 .loc 1 464 7 is_stmt 1 view .LVU3635 + 464:Src/main.c **** temp16 = Get_ADC(4); + 11466 .loc 1 464 16 is_stmt 0 view .LVU3636 + 11467 03d2 0320 movs r0, #3 + 11468 03d4 FFF7FEFF bl Get_ADC + 11469 .LVL1022: + 464:Src/main.c **** temp16 = Get_ADC(4); + 11470 .loc 1 464 14 discriminator 1 view .LVU3637 + 11471 03d8 2880 strh r0, [r5] @ movhi + 465:Src/main.c **** Long_Data[12] = temp16; + 11472 .loc 1 465 7 is_stmt 1 view .LVU3638 + 465:Src/main.c **** Long_Data[12] = temp16; + 11473 .loc 1 465 16 is_stmt 0 view .LVU3639 + 11474 03da 0420 movs r0, #4 + 11475 03dc FFF7FEFF bl Get_ADC + 11476 .LVL1023: + 465:Src/main.c **** Long_Data[12] = temp16; + 11477 .loc 1 465 14 discriminator 1 view .LVU3640 + 11478 03e0 2880 strh r0, [r5] @ movhi + 466:Src/main.c **** temp16 = Get_ADC(5); + 11479 .loc 1 466 7 is_stmt 1 view .LVU3641 + ARM GAS /tmp/ccEQxcUB.s page 613 + + + 466:Src/main.c **** temp16 = Get_ADC(5); + 11480 .loc 1 466 21 is_stmt 0 view .LVU3642 + 11481 03e2 2083 strh r0, [r4, #24] @ movhi + 467:Src/main.c **** + 11482 .loc 1 467 7 is_stmt 1 view .LVU3643 + 467:Src/main.c **** + 11483 .loc 1 467 16 is_stmt 0 view .LVU3644 + 11484 03e4 0520 movs r0, #5 + 11485 03e6 FFF7FEFF bl Get_ADC + 11486 .LVL1024: + 467:Src/main.c **** + 11487 .loc 1 467 14 discriminator 1 view .LVU3645 + 11488 03ea 2880 strh r0, [r5] @ movhi + 470:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 11489 .loc 1 470 7 is_stmt 1 view .LVU3646 + 470:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 11490 .loc 1 470 16 is_stmt 0 view .LVU3647 + 11491 03ec 774B ldr r3, .L681+28 + 11492 03ee 1B68 ldr r3, [r3] + 11493 03f0 774A ldr r2, .L681+32 + 11494 03f2 1360 str r3, [r2] + 471:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 11495 .loc 1 471 7 is_stmt 1 view .LVU3648 + 471:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 11496 .loc 1 471 20 is_stmt 0 view .LVU3649 + 11497 03f4 E380 strh r3, [r4, #6] @ movhi + 472:Src/main.c **** + 11498 .loc 1 472 7 is_stmt 1 view .LVU3650 + 472:Src/main.c **** + 11499 .loc 1 472 31 is_stmt 0 view .LVU3651 + 11500 03f6 1B0C lsrs r3, r3, #16 + 472:Src/main.c **** + 11501 .loc 1 472 20 view .LVU3652 + 11502 03f8 2381 strh r3, [r4, #8] @ movhi + 475:Src/main.c **** + 11503 .loc 1 475 7 is_stmt 1 view .LVU3653 + 475:Src/main.c **** + 11504 .loc 1 475 31 is_stmt 0 view .LVU3654 + 11505 03fa 3B88 ldrh r3, [r7] + 475:Src/main.c **** + 11506 .loc 1 475 20 view .LVU3655 + 11507 03fc 6381 strh r3, [r4, #10] @ movhi + 478:Src/main.c **** + 11508 .loc 1 478 7 is_stmt 1 view .LVU3656 + 478:Src/main.c **** + 11509 .loc 1 478 31 is_stmt 0 view .LVU3657 + 11510 03fe 3388 ldrh r3, [r6] + 478:Src/main.c **** + 11511 .loc 1 478 20 view .LVU3658 + 11512 0400 A381 strh r3, [r4, #12] @ movhi + 480:Src/main.c **** { + 11513 .loc 1 480 7 is_stmt 1 view .LVU3659 + 480:Src/main.c **** { + 11514 .loc 1 480 21 is_stmt 0 view .LVU3660 + 11515 0402 744B ldr r3, .L681+36 + 11516 0404 DB7A ldrb r3, [r3, #11] @ zero_extendqisi2 + 480:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 614 + + + 11517 .loc 1 480 10 view .LVU3661 + 11518 0406 012B cmp r3, #1 + 11519 0408 03D0 beq .L670 + 11520 .L610: + 487:Src/main.c **** } + 11521 .loc 1 487 7 is_stmt 1 view .LVU3662 + 487:Src/main.c **** } + 11522 .loc 1 487 21 is_stmt 0 view .LVU3663 + 11523 040a 734B ldr r3, .L681+40 + 11524 040c 0722 movs r2, #7 + 11525 040e 1A70 strb r2, [r3] + 11526 0410 75E6 b .L591 + 11527 .L670: + 482:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 11528 .loc 1 482 8 is_stmt 1 view .LVU3664 + 482:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 11529 .loc 1 482 20 is_stmt 0 view .LVU3665 + 11530 0412 0234 adds r4, r4, #2 + 11531 0414 0D21 movs r1, #13 + 11532 0416 2046 mov r0, r4 + 11533 0418 FFF7FEFF bl CalculateChecksum + 11534 .LVL1025: + 11535 041c 0346 mov r3, r0 + 482:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 11536 .loc 1 482 18 discriminator 1 view .LVU3666 + 11537 041e 6F4A ldr r2, .L681+44 + 11538 0420 1080 strh r0, [r2] @ movhi + 483:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); + 11539 .loc 1 483 8 is_stmt 1 view .LVU3667 + 483:Src/main.c **** temp16 = SD_SAVE(&Long_Data[0]); + 11540 .loc 1 483 27 is_stmt 0 view .LVU3668 + 11541 0422 A01E subs r0, r4, #2 + 11542 0424 8383 strh r3, [r0, #28] @ movhi + 484:Src/main.c **** State_Data[0]|=temp16&0xff; + 11543 .loc 1 484 8 is_stmt 1 view .LVU3669 + 484:Src/main.c **** State_Data[0]|=temp16&0xff; + 11544 .loc 1 484 17 is_stmt 0 view .LVU3670 + 11545 0426 FFF7FEFF bl SD_SAVE + 11546 .LVL1026: + 11547 042a 0346 mov r3, r0 + 484:Src/main.c **** State_Data[0]|=temp16&0xff; + 11548 .loc 1 484 15 discriminator 1 view .LVU3671 + 11549 042c 2880 strh r0, [r5] @ movhi + 485:Src/main.c **** } + 11550 .loc 1 485 8 is_stmt 1 view .LVU3672 + 485:Src/main.c **** } + 11551 .loc 1 485 18 is_stmt 0 view .LVU3673 + 11552 042e 6C49 ldr r1, .L681+48 + 11553 0430 0A78 ldrb r2, [r1] @ zero_extendqisi2 + 485:Src/main.c **** } + 11554 .loc 1 485 21 view .LVU3674 + 11555 0432 1343 orrs r3, r3, r2 + 11556 0434 0B70 strb r3, [r1] + 11557 0436 E8E7 b .L610 + 11558 .L595: + 491:Src/main.c **** { + 11559 .loc 1 491 6 is_stmt 1 view .LVU3675 + ARM GAS /tmp/ccEQxcUB.s page 615 + + + 491:Src/main.c **** { + 11560 .loc 1 491 10 is_stmt 0 view .LVU3676 + 11561 0438 6A4C ldr r4, .L681+52 + 11562 043a 0321 movs r1, #3 + 11563 043c 2046 mov r0, r4 + 11564 043e FFF7FEFF bl CalculateChecksum + 11565 .LVL1027: + 491:Src/main.c **** { + 11566 .loc 1 491 69 discriminator 1 view .LVU3677 + 11567 0442 E388 ldrh r3, [r4, #6] + 491:Src/main.c **** { + 11568 .loc 1 491 9 discriminator 1 view .LVU3678 + 11569 0444 9842 cmp r0, r3 + 11570 0446 0CD0 beq .L671 + 566:Src/main.c **** } + 11571 .loc 1 566 7 is_stmt 1 view .LVU3679 + 566:Src/main.c **** } + 11572 .loc 1 566 17 is_stmt 0 view .LVU3680 + 11573 0448 654A ldr r2, .L681+48 + 11574 044a 1378 ldrb r3, [r2] @ zero_extendqisi2 + 566:Src/main.c **** } + 11575 .loc 1 566 21 view .LVU3681 + 11576 044c 43F00403 orr r3, r3, #4 + 11577 0450 1370 strb r3, [r2] + 11578 .L614: + 568:Src/main.c **** CPU_state = CPU_state_old; + 11579 .loc 1 568 6 is_stmt 1 view .LVU3682 + 568:Src/main.c **** CPU_state = CPU_state_old; + 11580 .loc 1 568 32 is_stmt 0 view .LVU3683 + 11581 0452 654B ldr r3, .L681+56 + 11582 0454 0122 movs r2, #1 + 11583 0456 1A70 strb r2, [r3] + 569:Src/main.c **** break; + 11584 .loc 1 569 6 is_stmt 1 view .LVU3684 + 569:Src/main.c **** break; + 11585 .loc 1 569 16 is_stmt 0 view .LVU3685 + 11586 0458 5F4B ldr r3, .L681+40 + 11587 045a 1A78 ldrb r2, [r3] @ zero_extendqisi2 + 11588 045c 634B ldr r3, .L681+60 + 11589 045e 1A70 strb r2, [r3] + 570:Src/main.c **** case AD9833_CMD://11 - Configure AD9833 triangle output + 11590 .loc 1 570 5 is_stmt 1 view .LVU3686 + 11591 0460 4DE6 b .L591 + 11592 .L671: + 11593 .LBB703: + 493:Src/main.c **** uint16_t param0 = COMMAND[1]; + 11594 .loc 1 493 7 view .LVU3687 + 493:Src/main.c **** uint16_t param0 = COMMAND[1]; + 11595 .loc 1 493 16 is_stmt 0 view .LVU3688 + 11596 0462 2388 ldrh r3, [r4] + 11597 .LVL1028: + 494:Src/main.c **** uint16_t param1 = COMMAND[2]; + 11598 .loc 1 494 7 is_stmt 1 view .LVU3689 + 494:Src/main.c **** uint16_t param1 = COMMAND[2]; + 11599 .loc 1 494 16 is_stmt 0 view .LVU3690 + 11600 0464 6188 ldrh r1, [r4, #2] + 11601 .LVL1029: + ARM GAS /tmp/ccEQxcUB.s page 616 + + + 495:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; + 11602 .loc 1 495 7 is_stmt 1 view .LVU3691 + 495:Src/main.c **** uint8_t enable = (flags & AD9102_FLAG_ENABLE) ? 1u : 0u; + 11603 .loc 1 495 16 is_stmt 0 view .LVU3692 + 11604 0466 A488 ldrh r4, [r4, #4] + 11605 .LVL1030: + 496:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; + 11606 .loc 1 496 7 is_stmt 1 view .LVU3693 + 496:Src/main.c **** uint8_t triangle = (flags & AD9102_FLAG_TRIANGLE) ? 1u : 0u; + 11607 .loc 1 496 15 is_stmt 0 view .LVU3694 + 11608 0468 03F00106 and r6, r3, #1 + 11609 .LVL1031: + 497:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; + 11610 .loc 1 497 7 is_stmt 1 view .LVU3695 + 497:Src/main.c **** uint8_t sram_mode = (flags & AD9102_FLAG_SRAM) ? 1u : 0u; + 11611 .loc 1 497 15 is_stmt 0 view .LVU3696 + 11612 046c C3F34005 ubfx r5, r3, #1, #1 + 11613 .LVL1032: + 498:Src/main.c **** + 11614 .loc 1 498 7 is_stmt 1 view .LVU3697 + 500:Src/main.c **** { + 11615 .loc 1 500 7 view .LVU3698 + 500:Src/main.c **** { + 11616 .loc 1 500 10 is_stmt 0 view .LVU3699 + 11617 0470 13F0040F tst r3, #4 + 11618 0474 1FD0 beq .L612 + 11619 .LBB704: + 502:Src/main.c **** uint16_t samples; + 11620 .loc 1 502 8 is_stmt 1 view .LVU3700 + 11621 .LVL1033: + 503:Src/main.c **** uint8_t hold; + 11622 .loc 1 503 8 view .LVU3701 + 504:Src/main.c **** uint16_t amplitude; + 11623 .loc 1 504 8 view .LVU3702 + 505:Src/main.c **** + 11624 .loc 1 505 8 view .LVU3703 + 507:Src/main.c **** { + 11625 .loc 1 507 8 view .LVU3704 + 507:Src/main.c **** { + 11626 .loc 1 507 11 is_stmt 0 view .LVU3705 + 11627 0476 13F0080F tst r3, #8 + 11628 047a 05D1 bne .L655 + 515:Src/main.c **** hold = (uint8_t)(param1 & 0x0Fu); + 11629 .loc 1 515 9 is_stmt 1 view .LVU3706 + 11630 .LVL1034: + 516:Src/main.c **** amplitude = AD9102_SRAM_AMP_DEFAULT; + 11631 .loc 1 516 9 view .LVU3707 + 516:Src/main.c **** amplitude = AD9102_SRAM_AMP_DEFAULT; + 11632 .loc 1 516 14 is_stmt 0 view .LVU3708 + 11633 047c 04F00F07 and r7, r4, #15 + 11634 .LVL1035: + 517:Src/main.c **** } + 11635 .loc 1 517 9 is_stmt 1 view .LVU3709 + 515:Src/main.c **** hold = (uint8_t)(param1 & 0x0Fu); + 11636 .loc 1 515 17 is_stmt 0 view .LVU3710 + 11637 0480 0C46 mov r4, r1 + 11638 .LVL1036: + ARM GAS /tmp/ccEQxcUB.s page 617 + + + 517:Src/main.c **** } + 11639 .loc 1 517 19 view .LVU3711 + 11640 0482 41F6FF71 movw r1, #8191 + 11641 .LVL1037: + 517:Src/main.c **** } + 11642 .loc 1 517 19 view .LVU3712 + 11643 0486 00E0 b .L613 + 11644 .LVL1038: + 11645 .L655: + 511:Src/main.c **** } + 11646 .loc 1 511 14 view .LVU3713 + 11647 0488 0127 movs r7, #1 + 11648 .LVL1039: + 11649 .L613: + 520:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11650 .loc 1 520 8 is_stmt 1 view .LVU3714 + 520:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11651 .loc 1 520 30 is_stmt 0 view .LVU3715 + 11652 048a 0091 str r1, [sp] + 11653 048c 2B46 mov r3, r5 + 11654 .LVL1040: + 520:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11655 .loc 1 520 30 view .LVU3716 + 11656 048e 3A46 mov r2, r7 + 11657 0490 2146 mov r1, r4 + 11658 .LVL1041: + 520:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11659 .loc 1 520 30 view .LVU3717 + 11660 0492 3046 mov r0, r6 + 11661 0494 FFF7FEFF bl AD9102_ApplySram + 11662 .LVL1042: + 521:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) + 11663 .loc 1 521 8 is_stmt 1 view .LVU3718 + 521:Src/main.c **** if (AD9102_CheckFlagsSram(pat_status, enable, samples, hold)) + 11664 .loc 1 521 22 is_stmt 0 view .LVU3719 + 11665 0498 514B ldr r3, .L681+48 + 11666 049a 5870 strb r0, [r3, #1] + 522:Src/main.c **** { + 11667 .loc 1 522 8 is_stmt 1 view .LVU3720 + 522:Src/main.c **** { + 11668 .loc 1 522 12 is_stmt 0 view .LVU3721 + 11669 049c 3B46 mov r3, r7 + 11670 049e 2246 mov r2, r4 + 11671 04a0 3146 mov r1, r6 + 11672 04a2 FFF7FEFF bl AD9102_CheckFlagsSram + 11673 .LVL1043: + 522:Src/main.c **** { + 11674 .loc 1 522 11 discriminator 1 view .LVU3722 + 11675 04a6 0028 cmp r0, #0 + 11676 04a8 D3D0 beq .L614 + 524:Src/main.c **** } + 11677 .loc 1 524 9 is_stmt 1 view .LVU3723 + 524:Src/main.c **** } + 11678 .loc 1 524 19 is_stmt 0 view .LVU3724 + 11679 04aa 4D4A ldr r2, .L681+48 + 11680 04ac 1378 ldrb r3, [r2] @ zero_extendqisi2 + 524:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 618 + + + 11681 .loc 1 524 23 view .LVU3725 + 11682 04ae 63F07F03 orn r3, r3, #127 + 11683 04b2 1370 strb r3, [r2] + 11684 04b4 CDE7 b .L614 + 11685 .LVL1044: + 11686 .L612: + 524:Src/main.c **** } + 11687 .loc 1 524 23 view .LVU3726 + 11688 .LBE704: + 11689 .LBB705: + 529:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); + 11690 .loc 1 529 8 is_stmt 1 view .LVU3727 + 529:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); + 11691 .loc 1 529 16 is_stmt 0 view .LVU3728 + 11692 04b6 05B1 cbz r5, .L615 + 529:Src/main.c **** uint8_t saw_step = (uint8_t)(param0 & 0x00FFu); + 11693 .loc 1 529 16 discriminator 1 view .LVU3729 + 11694 04b8 0225 movs r5, #2 + 11695 .LVL1045: + 11696 .L615: + 530:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); + 11697 .loc 1 530 8 is_stmt 1 view .LVU3730 + 530:Src/main.c **** uint8_t pat_base = (uint8_t)((param0 >> 8) & 0x0Fu); + 11698 .loc 1 530 16 is_stmt 0 view .LVU3731 + 11699 04ba CFB2 uxtb r7, r1 + 11700 .LVL1046: + 531:Src/main.c **** uint16_t pat_period = param1; + 11701 .loc 1 531 8 is_stmt 1 view .LVU3732 + 531:Src/main.c **** uint16_t pat_period = param1; + 11702 .loc 1 531 16 is_stmt 0 view .LVU3733 + 11703 04bc C1F30328 ubfx r8, r1, #8, #4 + 11704 .LVL1047: + 532:Src/main.c **** + 11705 .loc 1 532 8 is_stmt 1 view .LVU3734 + 534:Src/main.c **** { + 11706 .loc 1 534 8 view .LVU3735 + 534:Src/main.c **** { + 11707 .loc 1 534 11 is_stmt 0 view .LVU3736 + 11708 04c0 2143 orrs r1, r1, r4 + 11709 .LVL1048: + 534:Src/main.c **** { + 11710 .loc 1 534 11 view .LVU3737 + 11711 04c2 09D0 beq .L656 + 542:Src/main.c **** { + 11712 .loc 1 542 9 is_stmt 1 view .LVU3738 + 542:Src/main.c **** { + 11713 .loc 1 542 12 is_stmt 0 view .LVU3739 + 11714 04c4 1FB1 cbz r7, .L657 + 546:Src/main.c **** { + 11715 .loc 1 546 14 is_stmt 1 view .LVU3740 + 546:Src/main.c **** { + 11716 .loc 1 546 17 is_stmt 0 view .LVU3741 + 11717 04c6 3F2F cmp r7, #63 + 11718 04c8 02D9 bls .L617 + 548:Src/main.c **** } + 11719 .loc 1 548 19 view .LVU3742 + 11720 04ca 3F27 movs r7, #63 + ARM GAS /tmp/ccEQxcUB.s page 619 + + + 11721 .LVL1049: + 548:Src/main.c **** } + 11722 .loc 1 548 19 view .LVU3743 + 11723 04cc 00E0 b .L617 + 11724 .LVL1050: + 11725 .L657: + 544:Src/main.c **** } + 11726 .loc 1 544 19 view .LVU3744 + 11727 04ce 0127 movs r7, #1 + 11728 .LVL1051: + 11729 .L617: + 550:Src/main.c **** { + 11730 .loc 1 550 9 is_stmt 1 view .LVU3745 + 550:Src/main.c **** { + 11731 .loc 1 550 12 is_stmt 0 view .LVU3746 + 11732 04d0 3CB9 cbnz r4, .L616 + 552:Src/main.c **** } + 11733 .loc 1 552 21 view .LVU3747 + 11734 04d2 4FF6FF74 movw r4, #65535 + 11735 .LVL1052: + 552:Src/main.c **** } + 11736 .loc 1 552 21 view .LVU3748 + 11737 04d6 04E0 b .L616 + 11738 .LVL1053: + 11739 .L656: + 538:Src/main.c **** } + 11740 .loc 1 538 20 view .LVU3749 + 11741 04d8 4FF6FF74 movw r4, #65535 + 11742 .LVL1054: + 537:Src/main.c **** pat_period = AD9102_PAT_PERIOD_DEFAULT; + 11743 .loc 1 537 18 view .LVU3750 + 11744 04dc 4FF00208 mov r8, #2 + 11745 .LVL1055: + 536:Src/main.c **** pat_base = AD9102_PAT_PERIOD_BASE_DEFAULT; + 11746 .loc 1 536 18 view .LVU3751 + 11747 04e0 0127 movs r7, #1 + 11748 .LVL1056: + 11749 .L616: + 556:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11750 .loc 1 556 8 is_stmt 1 view .LVU3752 + 556:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11751 .loc 1 556 30 is_stmt 0 view .LVU3753 + 11752 04e2 0094 str r4, [sp] + 11753 04e4 4346 mov r3, r8 + 11754 .LVL1057: + 556:Src/main.c **** State_Data[1] = (uint8_t)(pat_status & 0x00FFu); + 11755 .loc 1 556 30 view .LVU3754 + 11756 04e6 3A46 mov r2, r7 + 11757 04e8 3146 mov r1, r6 + 11758 04ea 2846 mov r0, r5 + 11759 04ec FFF7FEFF bl AD9102_Apply + 11760 .LVL1058: + 557:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) + 11761 .loc 1 557 8 is_stmt 1 view .LVU3755 + 557:Src/main.c **** if (AD9102_CheckFlags(pat_status, enable, saw_type, saw_step, pat_base, pat_period)) + 11762 .loc 1 557 22 is_stmt 0 view .LVU3756 + 11763 04f0 3B4B ldr r3, .L681+48 + ARM GAS /tmp/ccEQxcUB.s page 620 + + + 11764 04f2 5870 strb r0, [r3, #1] + 558:Src/main.c **** { + 11765 .loc 1 558 8 is_stmt 1 view .LVU3757 + 558:Src/main.c **** { + 11766 .loc 1 558 12 is_stmt 0 view .LVU3758 + 11767 04f4 0194 str r4, [sp, #4] + 11768 04f6 CDF80080 str r8, [sp] + 11769 04fa 3B46 mov r3, r7 + 11770 04fc 2A46 mov r2, r5 + 11771 04fe 3146 mov r1, r6 + 11772 0500 FFF7FEFF bl AD9102_CheckFlags + 11773 .LVL1059: + 558:Src/main.c **** { + 11774 .loc 1 558 11 discriminator 1 view .LVU3759 + 11775 0504 0028 cmp r0, #0 + 11776 0506 A4D0 beq .L614 + 560:Src/main.c **** } + 11777 .loc 1 560 9 is_stmt 1 view .LVU3760 + 560:Src/main.c **** } + 11778 .loc 1 560 19 is_stmt 0 view .LVU3761 + 11779 0508 354A ldr r2, .L681+48 + 11780 050a 1378 ldrb r3, [r2] @ zero_extendqisi2 + 560:Src/main.c **** } + 11781 .loc 1 560 23 view .LVU3762 + 11782 050c 63F07F03 orn r3, r3, #127 + 11783 0510 1370 strb r3, [r2] + 11784 0512 9EE7 b .L614 + 11785 .LVL1060: + 11786 .L594: + 560:Src/main.c **** } + 11787 .loc 1 560 23 view .LVU3763 + 11788 .LBE705: + 11789 .LBE703: + 572:Src/main.c **** if (CalculateChecksum(COMMAND, AD9833_CMD_WORDS - 1) == COMMAND[AD9833_CMD_WORDS - 1]) + 11790 .loc 1 572 6 is_stmt 1 view .LVU3764 + 572:Src/main.c **** if (CalculateChecksum(COMMAND, AD9833_CMD_WORDS - 1) == COMMAND[AD9833_CMD_WORDS - 1]) + 11791 .loc 1 572 20 is_stmt 0 view .LVU3765 + 11792 0514 324B ldr r3, .L681+48 + 11793 0516 0022 movs r2, #0 + 11794 0518 5A70 strb r2, [r3, #1] + 573:Src/main.c **** { + 11795 .loc 1 573 6 is_stmt 1 view .LVU3766 + 573:Src/main.c **** { + 11796 .loc 1 573 10 is_stmt 0 view .LVU3767 + 11797 051a 324C ldr r4, .L681+52 + 11798 051c 0321 movs r1, #3 + 11799 051e 2046 mov r0, r4 + 11800 0520 FFF7FEFF bl CalculateChecksum + 11801 .LVL1061: + 573:Src/main.c **** { + 11802 .loc 1 573 69 discriminator 1 view .LVU3768 + 11803 0524 E388 ldrh r3, [r4, #6] + 573:Src/main.c **** { + 11804 .loc 1 573 9 discriminator 1 view .LVU3769 + 11805 0526 9842 cmp r0, r3 + 11806 0528 0CD0 beq .L672 + 586:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 621 + + + 11807 .loc 1 586 7 is_stmt 1 view .LVU3770 + 586:Src/main.c **** } + 11808 .loc 1 586 17 is_stmt 0 view .LVU3771 + 11809 052a 2D4A ldr r2, .L681+48 + 11810 052c 1378 ldrb r3, [r2] @ zero_extendqisi2 + 586:Src/main.c **** } + 11811 .loc 1 586 21 view .LVU3772 + 11812 052e 43F00403 orr r3, r3, #4 + 11813 0532 1370 strb r3, [r2] + 11814 .L619: + 588:Src/main.c **** CPU_state = CPU_state_old; + 11815 .loc 1 588 6 is_stmt 1 view .LVU3773 + 588:Src/main.c **** CPU_state = CPU_state_old; + 11816 .loc 1 588 32 is_stmt 0 view .LVU3774 + 11817 0534 2C4B ldr r3, .L681+56 + 11818 0536 0122 movs r2, #1 + 11819 0538 1A70 strb r2, [r3] + 589:Src/main.c **** break; + 11820 .loc 1 589 6 is_stmt 1 view .LVU3775 + 589:Src/main.c **** break; + 11821 .loc 1 589 16 is_stmt 0 view .LVU3776 + 11822 053a 274B ldr r3, .L681+40 + 11823 053c 1A78 ldrb r2, [r3] @ zero_extendqisi2 + 11824 053e 2B4B ldr r3, .L681+60 + 11825 0540 1A70 strb r2, [r3] + 590:Src/main.c **** case DS1809_CMD://12 - Pulse DS1809 UC/DC controls + 11826 .loc 1 590 5 is_stmt 1 view .LVU3777 + 11827 0542 DCE5 b .L591 + 11828 .L672: + 11829 .LBB706: + 575:Src/main.c **** uint16_t lsw = (uint16_t)(COMMAND[1] & 0x3FFFu); + 11830 .loc 1 575 7 view .LVU3778 + 575:Src/main.c **** uint16_t lsw = (uint16_t)(COMMAND[1] & 0x3FFFu); + 11831 .loc 1 575 16 is_stmt 0 view .LVU3779 + 11832 0544 2088 ldrh r0, [r4] + 11833 .LVL1062: + 576:Src/main.c **** uint16_t msw = (uint16_t)(COMMAND[2] & 0x3FFFu); + 11834 .loc 1 576 7 is_stmt 1 view .LVU3780 + 576:Src/main.c **** uint16_t msw = (uint16_t)(COMMAND[2] & 0x3FFFu); + 11835 .loc 1 576 40 is_stmt 0 view .LVU3781 + 11836 0546 6388 ldrh r3, [r4, #2] + 576:Src/main.c **** uint16_t msw = (uint16_t)(COMMAND[2] & 0x3FFFu); + 11837 .loc 1 576 16 view .LVU3782 + 11838 0548 C3F30D03 ubfx r3, r3, #0, #14 + 11839 .LVL1063: + 577:Src/main.c **** uint8_t enable = (flags & AD9833_FLAG_ENABLE) ? 1u : 0u; + 11840 .loc 1 577 7 is_stmt 1 view .LVU3783 + 577:Src/main.c **** uint8_t enable = (flags & AD9833_FLAG_ENABLE) ? 1u : 0u; + 11841 .loc 1 577 40 is_stmt 0 view .LVU3784 + 11842 054c A288 ldrh r2, [r4, #4] + 577:Src/main.c **** uint8_t enable = (flags & AD9833_FLAG_ENABLE) ? 1u : 0u; + 11843 .loc 1 577 16 view .LVU3785 + 11844 054e C2F30D02 ubfx r2, r2, #0, #14 + 11845 .LVL1064: + 578:Src/main.c **** uint8_t triangle = (flags & AD9833_FLAG_TRIANGLE) ? 1u : 0u; + 11846 .loc 1 578 7 is_stmt 1 view .LVU3786 + 579:Src/main.c **** uint32_t freq_word = ((uint32_t)msw << 14) | (uint32_t)lsw; + ARM GAS /tmp/ccEQxcUB.s page 622 + + + 11847 .loc 1 579 7 view .LVU3787 + 580:Src/main.c **** + 11848 .loc 1 580 7 view .LVU3788 + 582:Src/main.c **** } + 11849 .loc 1 582 7 view .LVU3789 + 11850 0552 43EA8232 orr r2, r3, r2, lsl #14 + 11851 .LVL1065: + 582:Src/main.c **** } + 11852 .loc 1 582 7 is_stmt 0 view .LVU3790 + 11853 0556 C0F34001 ubfx r1, r0, #1, #1 + 11854 055a 00F00100 and r0, r0, #1 + 11855 .LVL1066: + 582:Src/main.c **** } + 11856 .loc 1 582 7 view .LVU3791 + 11857 055e FFF7FEFF bl AD9833_Apply + 11858 .LVL1067: + 582:Src/main.c **** } + 11859 .loc 1 582 7 view .LVU3792 + 11860 .LBE706: + 11861 0562 E7E7 b .L619 + 11862 .LVL1068: + 11863 .L592: + 592:Src/main.c **** { + 11864 .loc 1 592 6 is_stmt 1 view .LVU3793 + 592:Src/main.c **** { + 11865 .loc 1 592 10 is_stmt 0 view .LVU3794 + 11866 0564 1F4C ldr r4, .L681+52 + 11867 0566 0321 movs r1, #3 + 11868 0568 2046 mov r0, r4 + 11869 056a FFF7FEFF bl CalculateChecksum + 11870 .LVL1069: + 592:Src/main.c **** { + 11871 .loc 1 592 69 discriminator 1 view .LVU3795 + 11872 056e E388 ldrh r3, [r4, #6] + 592:Src/main.c **** { + 11873 .loc 1 592 9 discriminator 1 view .LVU3796 + 11874 0570 9842 cmp r0, r3 + 11875 0572 0CD0 beq .L673 + 627:Src/main.c **** } + 11876 .loc 1 627 7 is_stmt 1 view .LVU3797 + 627:Src/main.c **** } + 11877 .loc 1 627 17 is_stmt 0 view .LVU3798 + 11878 0574 1A4A ldr r2, .L681+48 + 11879 0576 1378 ldrb r3, [r2] @ zero_extendqisi2 + 627:Src/main.c **** } + 11880 .loc 1 627 21 view .LVU3799 + 11881 0578 43F00403 orr r3, r3, #4 + 11882 057c 1370 strb r3, [r2] + 11883 .L622: + 629:Src/main.c **** CPU_state = CPU_state_old; + 11884 .loc 1 629 6 is_stmt 1 view .LVU3800 + 629:Src/main.c **** CPU_state = CPU_state_old; + 11885 .loc 1 629 32 is_stmt 0 view .LVU3801 + 11886 057e 1A4B ldr r3, .L681+56 + 11887 0580 0122 movs r2, #1 + 11888 0582 1A70 strb r2, [r3] + 630:Src/main.c **** break; + ARM GAS /tmp/ccEQxcUB.s page 623 + + + 11889 .loc 1 630 6 is_stmt 1 view .LVU3802 + 630:Src/main.c **** break; + 11890 .loc 1 630 16 is_stmt 0 view .LVU3803 + 11891 0584 144B ldr r3, .L681+40 + 11892 0586 1A78 ldrb r2, [r3] @ zero_extendqisi2 + 11893 0588 184B ldr r3, .L681+60 + 11894 058a 1A70 strb r2, [r3] + 631:Src/main.c **** case DECODE_TASK: + 11895 .loc 1 631 5 is_stmt 1 view .LVU3804 + 11896 058c B7E5 b .L591 + 11897 .L673: + 11898 .LBB707: + 594:Src/main.c **** uint16_t count = COMMAND[1]; + 11899 .loc 1 594 7 view .LVU3805 + 594:Src/main.c **** uint16_t count = COMMAND[1]; + 11900 .loc 1 594 16 is_stmt 0 view .LVU3806 + 11901 058e 2346 mov r3, r4 + 11902 0590 2488 ldrh r4, [r4] + 11903 .LVL1070: + 595:Src/main.c **** uint16_t pulse_ms = COMMAND[2]; + 11904 .loc 1 595 7 is_stmt 1 view .LVU3807 + 595:Src/main.c **** uint16_t pulse_ms = COMMAND[2]; + 11905 .loc 1 595 16 is_stmt 0 view .LVU3808 + 11906 0592 5A88 ldrh r2, [r3, #2] + 11907 .LVL1071: + 596:Src/main.c **** uint8_t uc = (flags & DS1809_FLAG_UC) ? 1u : 0u; + 11908 .loc 1 596 7 is_stmt 1 view .LVU3809 + 596:Src/main.c **** uint8_t uc = (flags & DS1809_FLAG_UC) ? 1u : 0u; + 11909 .loc 1 596 16 is_stmt 0 view .LVU3810 + 11910 0594 9B88 ldrh r3, [r3, #4] + 11911 .LVL1072: + 597:Src/main.c **** uint8_t dc = (flags & DS1809_FLAG_DC) ? 1u : 0u; + 11912 .loc 1 597 7 is_stmt 1 view .LVU3811 + 598:Src/main.c **** + 11913 .loc 1 598 7 view .LVU3812 + 598:Src/main.c **** + 11914 .loc 1 598 15 is_stmt 0 view .LVU3813 + 11915 0596 C4F34001 ubfx r1, r4, #1, #1 + 11916 .LVL1073: + 600:Src/main.c **** { + 11917 .loc 1 600 7 is_stmt 1 view .LVU3814 + 600:Src/main.c **** { + 11918 .loc 1 600 11 is_stmt 0 view .LVU3815 + 11919 059a 04F00100 and r0, r4, #1 + 600:Src/main.c **** { + 11920 .loc 1 600 10 view .LVU3816 + 11921 059e 0C42 tst r4, r1 + 11922 05a0 2AD0 beq .L621 + 602:Src/main.c **** } + 11923 .loc 1 602 8 is_stmt 1 view .LVU3817 + 602:Src/main.c **** } + 11924 .loc 1 602 18 is_stmt 0 view .LVU3818 + 11925 05a2 0F4A ldr r2, .L681+48 + 11926 .LVL1074: + 602:Src/main.c **** } + 11927 .loc 1 602 18 view .LVU3819 + 11928 05a4 1378 ldrb r3, [r2] @ zero_extendqisi2 + ARM GAS /tmp/ccEQxcUB.s page 624 + + + 11929 .LVL1075: + 602:Src/main.c **** } + 11930 .loc 1 602 22 view .LVU3820 + 11931 05a6 43F00403 orr r3, r3, #4 + 11932 05aa 1370 strb r3, [r2] + 11933 05ac E7E7 b .L622 + 11934 .L682: + 11935 05ae 00BF .align 2 + 11936 .L681: + 11937 05b0 00000000 .word task + 11938 05b4 00000000 .word TO7 + 11939 05b8 00000000 .word TO7_before + 11940 05bc 00000000 .word LD1_param + 11941 05c0 00000000 .word LD2_param + 11942 05c4 00000000 .word temp16 + 11943 05c8 00000000 .word Long_Data + 11944 05cc 00000000 .word TO6 + 11945 05d0 00000000 .word TO6_stop + 11946 05d4 00000000 .word Curr_setup + 11947 05d8 00000000 .word CPU_state_old + 11948 05dc 00000000 .word CS_result + 11949 05e0 00000000 .word State_Data + 11950 05e4 00000000 .word COMMAND + 11951 05e8 00000000 .word UART_transmission_request + 11952 05ec 00000000 .word CPU_state + 11953 05f0 00000000 .word LD1_curr_setup + 11954 05f4 00000000 .word LD2_curr_setup + 11955 .LVL1076: + 11956 .L621: + 606:Src/main.c **** { + 11957 .loc 1 606 8 is_stmt 1 view .LVU3821 + 606:Src/main.c **** { + 11958 .loc 1 606 11 is_stmt 0 view .LVU3822 + 11959 05f8 1AB1 cbz r2, .L660 + 610:Src/main.c **** { + 11960 .loc 1 610 8 is_stmt 1 view .LVU3823 + 610:Src/main.c **** { + 11961 .loc 1 610 11 is_stmt 0 view .LVU3824 + 11962 05fa 402A cmp r2, #64 + 11963 05fc 02D9 bls .L623 + 612:Src/main.c **** } + 11964 .loc 1 612 15 view .LVU3825 + 11965 05fe 4022 movs r2, #64 + 11966 .LVL1077: + 612:Src/main.c **** } + 11967 .loc 1 612 15 view .LVU3826 + 11968 0600 00E0 b .L623 + 11969 .LVL1078: + 11970 .L660: + 608:Src/main.c **** } + 11971 .loc 1 608 15 view .LVU3827 + 11972 0602 0122 movs r2, #1 + 11973 .LVL1079: + 11974 .L623: + 614:Src/main.c **** { + 11975 .loc 1 614 8 is_stmt 1 view .LVU3828 + 614:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 625 + + + 11976 .loc 1 614 11 is_stmt 0 view .LVU3829 + 11977 0604 2BB1 cbz r3, .L662 + 618:Src/main.c **** { + 11978 .loc 1 618 8 is_stmt 1 view .LVU3830 + 618:Src/main.c **** { + 11979 .loc 1 618 11 is_stmt 0 view .LVU3831 + 11980 0606 B3F5FA7F cmp r3, #500 + 11981 060a 03D9 bls .L624 + 620:Src/main.c **** } + 11982 .loc 1 620 18 view .LVU3832 + 11983 060c 4FF4FA73 mov r3, #500 + 11984 .LVL1080: + 620:Src/main.c **** } + 11985 .loc 1 620 18 view .LVU3833 + 11986 0610 00E0 b .L624 + 11987 .LVL1081: + 11988 .L662: + 616:Src/main.c **** } + 11989 .loc 1 616 18 view .LVU3834 + 11990 0612 0223 movs r3, #2 + 11991 .LVL1082: + 11992 .L624: + 622:Src/main.c **** } + 11993 .loc 1 622 8 is_stmt 1 view .LVU3835 + 11994 0614 FFF7FEFF bl DS1809_Pulse + 11995 .LVL1083: + 622:Src/main.c **** } + 11996 .loc 1 622 8 is_stmt 0 view .LVU3836 + 11997 0618 B1E7 b .L622 + 11998 .LVL1084: + 11999 .L597: + 622:Src/main.c **** } + 12000 .loc 1 622 8 view .LVU3837 + 12001 .LBE707: + 633:Src/main.c **** { + 12002 .loc 1 633 6 is_stmt 1 view .LVU3838 + 633:Src/main.c **** { + 12003 .loc 1 633 10 is_stmt 0 view .LVU3839 + 12004 061a 9848 ldr r0, .L683 + 12005 061c FFF7FEFF bl CheckChecksum + 12006 .LVL1085: + 633:Src/main.c **** { + 12007 .loc 1 633 9 discriminator 1 view .LVU3840 + 12008 0620 70B9 cbnz r0, .L674 + 642:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 12009 .loc 1 642 7 is_stmt 1 view .LVU3841 + 642:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 12010 .loc 1 642 17 is_stmt 0 view .LVU3842 + 12011 0622 974A ldr r2, .L683+4 + 12012 0624 1378 ldrb r3, [r2] @ zero_extendqisi2 + 642:Src/main.c **** CPU_state = DEFAULT_ENABLE; + 12013 .loc 1 642 21 view .LVU3843 + 12014 0626 43F00403 orr r3, r3, #4 + 12015 062a 1370 strb r3, [r2] + 643:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + 12016 .loc 1 643 7 is_stmt 1 view .LVU3844 + 643:Src/main.c **** CPU_state_old = HALT;//Save main current cycle + ARM GAS /tmp/ccEQxcUB.s page 626 + + + 12017 .loc 1 643 17 is_stmt 0 view .LVU3845 + 12018 062c 954B ldr r3, .L683+8 + 12019 062e 0222 movs r2, #2 + 12020 0630 1A70 strb r2, [r3] + 644:Src/main.c **** } + 12021 .loc 1 644 7 is_stmt 1 view .LVU3846 + 644:Src/main.c **** } + 12022 .loc 1 644 21 is_stmt 0 view .LVU3847 + 12023 0632 954B ldr r3, .L683+12 + 12024 0634 0022 movs r2, #0 + 12025 0636 1A70 strb r2, [r3] + 12026 .L626: + 646:Src/main.c **** break; + 12027 .loc 1 646 6 is_stmt 1 view .LVU3848 + 646:Src/main.c **** break; + 12028 .loc 1 646 32 is_stmt 0 view .LVU3849 + 12029 0638 944B ldr r3, .L683+16 + 12030 063a 0122 movs r2, #1 + 12031 063c 1A70 strb r2, [r3] + 647:Src/main.c **** case RUN_TASK: + 12032 .loc 1 647 5 is_stmt 1 view .LVU3850 + 12033 063e 5EE5 b .L591 + 12034 .L674: + 635:Src/main.c **** TO6_before = TO6; + 12035 .loc 1 635 7 view .LVU3851 + 12036 0640 934B ldr r3, .L683+20 + 12037 0642 944A ldr r2, .L683+24 + 12038 0644 9449 ldr r1, .L683+28 + 12039 0646 8D48 ldr r0, .L683 + 12040 0648 FFF7FEFF bl Decode_task + 12041 .LVL1086: + 636:Src/main.c **** CPU_state = RUN_TASK; + 12042 .loc 1 636 7 view .LVU3852 + 636:Src/main.c **** CPU_state = RUN_TASK; + 12043 .loc 1 636 18 is_stmt 0 view .LVU3853 + 12044 064c 934B ldr r3, .L683+32 + 12045 064e 1A68 ldr r2, [r3] + 12046 0650 934B ldr r3, .L683+36 + 12047 0652 1A60 str r2, [r3] + 637:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle + 12048 .loc 1 637 7 is_stmt 1 view .LVU3854 + 637:Src/main.c **** CPU_state_old = RUN_TASK;//Save main current cycle + 12049 .loc 1 637 17 is_stmt 0 view .LVU3855 + 12050 0654 0923 movs r3, #9 + 12051 0656 8B4A ldr r2, .L683+8 + 12052 0658 1370 strb r3, [r2] + 638:Src/main.c **** } + 12053 .loc 1 638 7 is_stmt 1 view .LVU3856 + 638:Src/main.c **** } + 12054 .loc 1 638 21 is_stmt 0 view .LVU3857 + 12055 065a 8B4A ldr r2, .L683+12 + 12056 065c 1370 strb r3, [r2] + 12057 065e EBE7 b .L626 + 12058 .L596: + 649:Src/main.c **** { + 12059 .loc 1 649 6 is_stmt 1 view .LVU3858 + 649:Src/main.c **** { + ARM GAS /tmp/ccEQxcUB.s page 627 + + + 12060 .loc 1 649 18 is_stmt 0 view .LVU3859 + 12061 0660 904B ldr r3, .L683+40 + 12062 0662 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 12063 0664 012B cmp r3, #1 + 12064 0666 23D0 beq .L627 + 12065 0668 022B cmp r3, #2 + 12066 066a 00F03F81 beq .L628 + 12067 .L629: + 904:Src/main.c **** { + 12068 .loc 1 904 6 is_stmt 1 view .LVU3860 + 904:Src/main.c **** { + 12069 .loc 1 904 13 is_stmt 0 view .LVU3861 + 12070 066e 8E4B ldr r3, .L683+44 + 12071 0670 1B68 ldr r3, [r3] + 12072 0672 8E4A ldr r2, .L683+48 + 12073 0674 1268 ldr r2, [r2] + 904:Src/main.c **** { + 12074 .loc 1 904 9 view .LVU3862 + 12075 0676 9342 cmp r3, r2 + 12076 0678 00F2E681 bhi .L675 + 12077 .L646: + 956:Src/main.c **** + 12078 .loc 1 956 13 is_stmt 1 discriminator 1 view .LVU3863 + 12079 067c 8C4B ldr r3, .L683+52 + 12080 067e 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 12081 0680 002B cmp r3, #0 + 12082 0682 FBD0 beq .L646 + 958:Src/main.c **** + 12083 .loc 1 958 6 view .LVU3864 + 12084 0684 FFF7FEFF bl Stop_TIM10 + 12085 .LVL1087: + 960:Src/main.c **** { + 12086 .loc 1 960 6 view .LVU3865 + 960:Src/main.c **** { + 12087 .loc 1 960 14 is_stmt 0 view .LVU3866 + 12088 0688 864B ldr r3, .L683+40 + 12089 068a DB8A ldrh r3, [r3, #22] + 960:Src/main.c **** { + 12090 .loc 1 960 9 view .LVU3867 + 12091 068c 032B cmp r3, #3 + 12092 068e 0BD9 bls .L647 + 962:Src/main.c **** TO10_counter = task.dt / 10; + 12093 .loc 1 962 7 is_stmt 1 view .LVU3868 + 962:Src/main.c **** TO10_counter = task.dt / 10; + 12094 .loc 1 962 26 is_stmt 0 view .LVU3869 + 12095 0690 884B ldr r3, .L683+56 + 12096 0692 1A68 ldr r2, [r3] + 12097 0694 884B ldr r3, .L683+60 + 12098 0696 DA60 str r2, [r3, #12] + 963:Src/main.c **** } + 12099 .loc 1 963 7 is_stmt 1 view .LVU3870 + 963:Src/main.c **** } + 12100 .loc 1 963 26 is_stmt 0 view .LVU3871 + 12101 0698 824B ldr r3, .L683+40 + 12102 069a 1B7D ldrb r3, [r3, #20] @ zero_extendqisi2 + 963:Src/main.c **** } + 12103 .loc 1 963 30 view .LVU3872 + ARM GAS /tmp/ccEQxcUB.s page 628 + + + 12104 069c 874A ldr r2, .L683+64 + 12105 069e A2FB0323 umull r2, r3, r2, r3 + 12106 06a2 DB08 lsrs r3, r3, #3 + 963:Src/main.c **** } + 12107 .loc 1 963 20 view .LVU3873 + 12108 06a4 864A ldr r2, .L683+68 + 12109 06a6 1360 str r3, [r2] + 12110 .L647: + 966:Src/main.c **** break; + 12111 .loc 1 966 6 is_stmt 1 view .LVU3874 + 966:Src/main.c **** break; + 12112 .loc 1 966 20 is_stmt 0 view .LVU3875 + 12113 06a8 774B ldr r3, .L683+12 + 12114 06aa 0922 movs r2, #9 + 12115 06ac 1A70 strb r2, [r3] + 967:Src/main.c **** } + 12116 .loc 1 967 9 is_stmt 1 view .LVU3876 + 12117 06ae 26E5 b .L591 + 12118 .L627: + 12119 .LBB708: + 671:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12120 .loc 1 671 7 view .LVU3877 + 671:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12121 .loc 1 671 38 is_stmt 0 view .LVU3878 + 12122 06b0 7C4B ldr r3, .L683+40 + 12123 06b2 D3ED077A vldr.32 s15, [r3, #28] + 671:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12124 .loc 1 671 7 view .LVU3879 + 12125 06b6 FCEEE77A vcvt.u32.f32 s15, s15 + 12126 06ba 17EE903A vmov r3, s15 @ int + 12127 06be 99B2 uxth r1, r3 + 12128 06c0 0220 movs r0, #2 + 12129 06c2 FFF7FEFF bl Set_LTEC + 12130 .LVL1088: + 672:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 12131 .loc 1 672 7 is_stmt 1 view .LVU3880 + 672:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 12132 .loc 1 672 14 is_stmt 0 view .LVU3881 + 12133 06c6 0320 movs r0, #3 + 12134 06c8 FFF7FEFF bl MPhD_T + 12135 .LVL1089: + 673:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12136 .loc 1 673 7 is_stmt 1 view .LVU3882 + 673:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12137 .loc 1 673 32 is_stmt 0 view .LVU3883 + 12138 06cc 0320 movs r0, #3 + 12139 06ce FFF7FEFF bl MPhD_T + 12140 .LVL1090: + 673:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12141 .loc 1 673 30 discriminator 1 view .LVU3884 + 12142 06d2 7C4C ldr r4, .L683+72 + 12143 06d4 2080 strh r0, [r4] @ movhi + 674:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 12144 .loc 1 674 7 is_stmt 1 view .LVU3885 + 674:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 12145 .loc 1 674 14 is_stmt 0 view .LVU3886 + 12146 06d6 0420 movs r0, #4 + ARM GAS /tmp/ccEQxcUB.s page 629 + + + 12147 06d8 FFF7FEFF bl MPhD_T + 12148 .LVL1091: + 675:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12149 .loc 1 675 7 is_stmt 1 view .LVU3887 + 675:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12150 .loc 1 675 32 is_stmt 0 view .LVU3888 + 12151 06dc 0420 movs r0, #4 + 12152 06de FFF7FEFF bl MPhD_T + 12153 .LVL1092: + 675:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12154 .loc 1 675 30 discriminator 1 view .LVU3889 + 12155 06e2 794D ldr r5, .L683+76 + 12156 06e4 2880 strh r0, [r5] @ movhi + 676:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12157 .loc 1 676 7 is_stmt 1 view .LVU3890 + 676:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12158 .loc 1 676 14 is_stmt 0 view .LVU3891 + 12159 06e6 0122 movs r2, #1 + 12160 06e8 2146 mov r1, r4 + 12161 06ea 6B48 ldr r0, .L683+28 + 12162 06ec FFF7FEFF bl PID_Controller_Temp + 12163 .LVL1093: + 12164 06f0 0146 mov r1, r0 + 676:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12165 .loc 1 676 13 discriminator 1 view .LVU3892 + 12166 06f2 764C ldr r4, .L683+80 + 12167 06f4 2080 strh r0, [r4] @ movhi + 677:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 12168 .loc 1 677 7 is_stmt 1 view .LVU3893 + 12169 06f6 0320 movs r0, #3 + 12170 06f8 FFF7FEFF bl Set_LTEC + 12171 .LVL1094: + 678:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12172 .loc 1 678 7 view .LVU3894 + 678:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12173 .loc 1 678 14 is_stmt 0 view .LVU3895 + 12174 06fc 0222 movs r2, #2 + 12175 06fe 2946 mov r1, r5 + 12176 0700 6448 ldr r0, .L683+24 + 12177 0702 FFF7FEFF bl PID_Controller_Temp + 12178 .LVL1095: + 12179 0706 0146 mov r1, r0 + 678:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12180 .loc 1 678 13 discriminator 1 view .LVU3896 + 12181 0708 2080 strh r0, [r4] @ movhi + 679:Src/main.c **** + 12182 .loc 1 679 7 is_stmt 1 view .LVU3897 + 12183 070a 0420 movs r0, #4 + 12184 070c FFF7FEFF bl Set_LTEC + 12185 .LVL1096: + 682:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12186 .loc 1 682 7 view .LVU3898 + 12187 0710 6F4C ldr r4, .L683+84 + 12188 0712 0122 movs r2, #1 + 12189 0714 8021 movs r1, #128 + 12190 0716 2046 mov r0, r4 + 12191 0718 FFF7FEFF bl HAL_GPIO_WritePin + ARM GAS /tmp/ccEQxcUB.s page 630 + + + 12192 .LVL1097: + 683:Src/main.c **** + 12193 .loc 1 683 7 view .LVU3899 + 12194 071c 0022 movs r2, #0 + 12195 071e 8021 movs r1, #128 + 12196 0720 2046 mov r0, r4 + 12197 0722 FFF7FEFF bl HAL_GPIO_WritePin + 12198 .LVL1098: + 685:Src/main.c **** if (st != HAL_OK) + 12199 .loc 1 685 7 view .LVU3900 + 685:Src/main.c **** if (st != HAL_OK) + 12200 .loc 1 685 12 is_stmt 0 view .LVU3901 + 12201 0726 6448 ldr r0, .L683+60 + 12202 0728 FFF7FEFF bl HAL_TIM_Base_Start_IT + 12203 .LVL1099: + 686:Src/main.c **** while(1); + 12204 .loc 1 686 7 is_stmt 1 view .LVU3902 + 686:Src/main.c **** while(1); + 12205 .loc 1 686 10 is_stmt 0 view .LVU3903 + 12206 072c 0028 cmp r0, #0 + 12207 072e 75D1 bne .L631 + 689:Src/main.c **** uint16_t trigger_counter = 0; + 12208 .loc 1 689 7 is_stmt 1 view .LVU3904 + 12209 .LVL1100: + 690:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 + 12210 .loc 1 690 7 view .LVU3905 + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12211 .loc 1 691 7 view .LVU3906 + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12212 .loc 1 691 47 is_stmt 0 view .LVU3907 + 12213 0730 5C4B ldr r3, .L683+40 + 12214 0732 93ED027A vldr.32 s14, [r3, #8] + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12215 .loc 1 691 64 view .LVU3908 + 12216 0736 D3ED047A vldr.32 s15, [r3, #16] + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12217 .loc 1 691 58 view .LVU3909 + 12218 073a 37EE677A vsub.f32 s14, s14, s15 + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12219 .loc 1 691 84 view .LVU3910 + 12220 073e D3ED036A vldr.32 s13, [r3, #12] + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12221 .loc 1 691 79 view .LVU3911 + 12222 0742 C7EE267A vdiv.f32 s15, s14, s13 + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12223 .loc 1 691 97 view .LVU3912 + 12224 0746 B2EE047A vmov.f32 s14, #1.0e+1 + 12225 074a 67EE877A vmul.f32 s15, s15, s14 + 691:Src/main.c **** uint16_t task_sheduler = 0; + 12226 .loc 1 691 31 view .LVU3913 + 12227 074e FCEEE77A vcvt.u32.f32 s15, s15 + 12228 0752 CDED037A vstr.32 s15, [sp, #12] @ int + 12229 0756 9DF80C60 ldrb r6, [sp, #12] @ zero_extendqisi2 + 12230 .LVL1101: + 692:Src/main.c **** + 12231 .loc 1 692 7 is_stmt 1 view .LVU3914 + 696:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock + ARM GAS /tmp/ccEQxcUB.s page 631 + + + 12232 .loc 1 696 7 view .LVU3915 + 12233 075a DFF88491 ldr r9, .L683+100 + 12234 075e 0021 movs r1, #0 + 12235 0760 4846 mov r0, r9 + 12236 .LVL1102: + 696:Src/main.c **** HAL_TIM_PWM_Stop(&htim4, TIM_CHANNEL_3); //start ADC clock + 12237 .loc 1 696 7 is_stmt 0 view .LVU3916 + 12238 0762 FFF7FEFF bl HAL_TIM_PWM_Stop + 12239 .LVL1103: + 697:Src/main.c **** TIM11 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 12240 .loc 1 697 7 is_stmt 1 view .LVU3917 + 12241 0766 DFF87C81 ldr r8, .L683+104 + 12242 076a 0821 movs r1, #8 + 12243 076c 4046 mov r0, r8 + 12244 076e FFF7FEFF bl HAL_TIM_PWM_Stop + 12245 .LVL1104: + 698:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 12246 .loc 1 698 7 view .LVU3918 + 698:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 12247 .loc 1 698 13 is_stmt 0 view .LVU3919 + 12248 0772 584F ldr r7, .L683+88 + 12249 0774 3B68 ldr r3, [r7] + 698:Src/main.c **** TIM4 -> CR1 &= ~(1 << 3); //disables one-pulse mode + 12250 .loc 1 698 20 view .LVU3920 + 12251 0776 23F00803 bic r3, r3, #8 + 12252 077a 3B60 str r3, [r7] + 699:Src/main.c **** + 12253 .loc 1 699 7 is_stmt 1 view .LVU3921 + 699:Src/main.c **** + 12254 .loc 1 699 12 is_stmt 0 view .LVU3922 + 12255 077c 564D ldr r5, .L683+92 + 12256 077e 2B68 ldr r3, [r5] + 699:Src/main.c **** + 12257 .loc 1 699 19 view .LVU3923 + 12258 0780 23F00803 bic r3, r3, #8 + 12259 0784 2B60 str r3, [r5] + 703:Src/main.c **** TIM4 -> CNT = 0; + 12260 .loc 1 703 7 is_stmt 1 view .LVU3924 + 703:Src/main.c **** TIM4 -> CNT = 0; + 12261 .loc 1 703 20 is_stmt 0 view .LVU3925 + 12262 0786 0024 movs r4, #0 + 12263 0788 7C62 str r4, [r7, #36] + 704:Src/main.c **** + 12264 .loc 1 704 7 is_stmt 1 view .LVU3926 + 704:Src/main.c **** + 12265 .loc 1 704 19 is_stmt 0 view .LVU3927 + 12266 078a 6C62 str r4, [r5, #36] + 706:Src/main.c **** HAL_TIM_PWM_Start(&htim4, TIM_CHANNEL_3); //start ADC clock + 12267 .loc 1 706 7 is_stmt 1 view .LVU3928 + 12268 078c 2146 mov r1, r4 + 12269 078e 4846 mov r0, r9 + 12270 0790 FFF7FEFF bl HAL_TIM_PWM_Start + 12271 .LVL1105: + 707:Src/main.c **** //TIM4 -> CNT = 0; + 12272 .loc 1 707 7 view .LVU3929 + 12273 0794 0821 movs r1, #8 + 12274 0796 4046 mov r0, r8 + ARM GAS /tmp/ccEQxcUB.s page 632 + + + 12275 0798 FFF7FEFF bl HAL_TIM_PWM_Start + 12276 .LVL1106: + 710:Src/main.c **** TIM11 -> CNT = 0; + 12277 .loc 1 710 7 view .LVU3930 + 710:Src/main.c **** TIM11 -> CNT = 0; + 12278 .loc 1 710 26 is_stmt 0 view .LVU3931 + 12279 079c EB6A ldr r3, [r5, #44] + 710:Src/main.c **** TIM11 -> CNT = 0; + 12280 .loc 1 710 33 view .LVU3932 + 12281 079e 143B subs r3, r3, #20 + 710:Src/main.c **** TIM11 -> CNT = 0; + 12282 .loc 1 710 19 view .LVU3933 + 12283 07a0 6B62 str r3, [r5, #36] + 711:Src/main.c **** + 12284 .loc 1 711 7 is_stmt 1 view .LVU3934 + 711:Src/main.c **** + 12285 .loc 1 711 20 is_stmt 0 view .LVU3935 + 12286 07a2 7C62 str r4, [r7, #36] + 714:Src/main.c **** { + 12287 .loc 1 714 7 is_stmt 1 view .LVU3936 + 690:Src/main.c **** uint16_t trigger_step = (uint8_t )((task.max_param - task.current_param)/task.delta_param * 1 + 12288 .loc 1 690 16 is_stmt 0 view .LVU3937 + 12289 07a4 2546 mov r5, r4 + 12290 .LVL1107: + 12291 .L633: + 714:Src/main.c **** { + 12292 .loc 1 714 33 is_stmt 1 view .LVU3938 + 714:Src/main.c **** { + 12293 .loc 1 714 18 is_stmt 0 view .LVU3939 + 12294 07a6 3F4B ldr r3, .L683+40 + 12295 07a8 D3ED047A vldr.32 s15, [r3, #16] + 714:Src/main.c **** { + 12296 .loc 1 714 39 view .LVU3940 + 12297 07ac 93ED027A vldr.32 s14, [r3, #8] + 714:Src/main.c **** { + 12298 .loc 1 714 33 view .LVU3941 + 12299 07b0 F4EEC77A vcmpe.f32 s15, s14 + 12300 07b4 F1EE10FA vmrs APSR_nzcv, FPSCR + 12301 07b8 37D5 bpl .L676 + 716:Src/main.c **** { + 12302 .loc 1 716 8 is_stmt 1 view .LVU3942 + 716:Src/main.c **** { + 12303 .loc 1 716 12 is_stmt 0 view .LVU3943 + 12304 07ba 3D4B ldr r3, .L683+52 + 12305 07bc 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 716:Src/main.c **** { + 12306 .loc 1 716 11 view .LVU3944 + 12307 07be 002B cmp r3, #0 + 12308 07c0 F1D0 beq .L633 + 718:Src/main.c **** //TIM11 -> CNT = 0; // to link modulator phase + 12309 .loc 1 718 9 is_stmt 1 view .LVU3945 + 12310 07c2 FCEEE77A vcvt.u32.f32 s15, s15 + 12311 07c6 17EE903A vmov r3, s15 @ int + 12312 07ca 99B2 uxth r1, r3 + 12313 07cc 0120 movs r0, #1 + 12314 07ce FFF7FEFF bl Set_LTEC + 12315 .LVL1108: + ARM GAS /tmp/ccEQxcUB.s page 633 + + + 721:Src/main.c **** TO10 = 0; + 12316 .loc 1 721 9 view .LVU3946 + 721:Src/main.c **** TO10 = 0; + 12317 .loc 1 721 13 is_stmt 0 view .LVU3947 + 12318 07d2 344B ldr r3, .L683+40 + 12319 07d4 D3ED047A vldr.32 s15, [r3, #16] + 721:Src/main.c **** TO10 = 0; + 12320 .loc 1 721 35 view .LVU3948 + 12321 07d8 93ED037A vldr.32 s14, [r3, #12] + 721:Src/main.c **** TO10 = 0; + 12322 .loc 1 721 28 view .LVU3949 + 12323 07dc 77EE877A vadd.f32 s15, s15, s14 + 12324 07e0 C3ED047A vstr.32 s15, [r3, #16] + 722:Src/main.c **** TIM10_coflag = 0; + 12325 .loc 1 722 9 is_stmt 1 view .LVU3950 + 722:Src/main.c **** TIM10_coflag = 0; + 12326 .loc 1 722 14 is_stmt 0 view .LVU3951 + 12327 07e4 0027 movs r7, #0 + 12328 07e6 3D4B ldr r3, .L683+96 + 12329 07e8 1F60 str r7, [r3] + 723:Src/main.c **** + 12330 .loc 1 723 9 is_stmt 1 view .LVU3952 + 723:Src/main.c **** + 12331 .loc 1 723 22 is_stmt 0 view .LVU3953 + 12332 07ea 314B ldr r3, .L683+52 + 12333 07ec 1F70 strb r7, [r3] + 725:Src/main.c **** HAL_GPIO_WritePin(GPIOG, GPIO_PIN_9, GPIO_PIN_RESET); + 12334 .loc 1 725 9 is_stmt 1 view .LVU3954 + 12335 07ee DFF8F880 ldr r8, .L683+108 + 12336 07f2 0122 movs r2, #1 + 12337 07f4 4FF40071 mov r1, #512 + 12338 07f8 4046 mov r0, r8 + 12339 07fa FFF7FEFF bl HAL_GPIO_WritePin + 12340 .LVL1109: + 726:Src/main.c **** //* + 12341 .loc 1 726 9 view .LVU3955 + 12342 07fe 3A46 mov r2, r7 + 12343 0800 4FF40071 mov r1, #512 + 12344 0804 4046 mov r0, r8 + 12345 0806 FFF7FEFF bl HAL_GPIO_WritePin + 12346 .LVL1110: + 728:Src/main.c **** OUT_trigger(trigger_counter); + 12347 .loc 1 728 9 view .LVU3956 + 728:Src/main.c **** OUT_trigger(trigger_counter); + 12348 .loc 1 728 41 is_stmt 0 view .LVU3957 + 12349 080a B4FBF6F3 udiv r3, r4, r6 + 12350 080e 06FB1343 mls r3, r6, r3, r4 + 12351 0812 9BB2 uxth r3, r3 + 728:Src/main.c **** OUT_trigger(trigger_counter); + 12352 .loc 1 728 12 view .LVU3958 + 12353 0814 1BB1 cbz r3, .L677 + 12354 .L634: + 732:Src/main.c **** //*/ + 12355 .loc 1 732 9 is_stmt 1 view .LVU3959 + 12356 0816 0134 adds r4, r4, #1 + 12357 .LVL1111: + 732:Src/main.c **** //*/ + ARM GAS /tmp/ccEQxcUB.s page 634 + + + 12358 .loc 1 732 9 is_stmt 0 view .LVU3960 + 12359 0818 A4B2 uxth r4, r4 + 12360 .LVL1112: + 732:Src/main.c **** //*/ + 12361 .loc 1 732 9 view .LVU3961 + 12362 081a C4E7 b .L633 + 12363 .LVL1113: + 12364 .L631: + 687:Src/main.c **** + 12365 .loc 1 687 8 is_stmt 1 view .LVU3962 + 687:Src/main.c **** + 12366 .loc 1 687 13 view .LVU3963 + 12367 081c FEE7 b .L631 + 12368 .LVL1114: + 12369 .L677: + 729:Src/main.c **** ++trigger_counter; + 12370 .loc 1 729 10 view .LVU3964 + 12371 081e E8B2 uxtb r0, r5 + 12372 0820 FFF7FEFF bl OUT_trigger + 12373 .LVL1115: + 730:Src/main.c **** } + 12374 .loc 1 730 10 view .LVU3965 + 12375 0824 0135 adds r5, r5, #1 + 12376 .LVL1116: + 730:Src/main.c **** } + 12377 .loc 1 730 10 is_stmt 0 view .LVU3966 + 12378 0826 ADB2 uxth r5, r5 + 12379 .LVL1117: + 730:Src/main.c **** } + 12380 .loc 1 730 10 view .LVU3967 + 12381 0828 F5E7 b .L634 + 12382 .L676: + 757:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd + 12383 .loc 1 757 7 is_stmt 1 view .LVU3968 + 757:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd + 12384 .loc 1 757 13 is_stmt 0 view .LVU3969 + 12385 082a 2A4A ldr r2, .L683+88 + 12386 082c D368 ldr r3, [r2, #12] + 757:Src/main.c **** //TIM11 -> CR1 |= 1 << 3; //sets timer to one-pulse mode. So it will turn off at the next Upd + 12387 .loc 1 757 21 view .LVU3970 + 12388 082e 43F00103 orr r3, r3, #1 + 12389 0832 D360 str r3, [r2, #12] + 767:Src/main.c **** + 12390 .loc 1 767 7 is_stmt 1 view .LVU3971 + 12391 0834 FFF7FEFF bl Stop_TIM10 + 12392 .LVL1118: + 769:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 12393 .loc 1 769 7 view .LVU3972 + 769:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 12394 .loc 1 769 32 is_stmt 0 view .LVU3973 + 12395 0838 1A4C ldr r4, .L683+40 + 12396 .LVL1119: + 769:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 12397 .loc 1 769 32 view .LVU3974 + 12398 083a D4ED017A vldr.32 s15, [r4, #4] + 769:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_1, task.current_param); + 12399 .loc 1 769 26 view .LVU3975 + ARM GAS /tmp/ccEQxcUB.s page 635 + + + 12400 083e C4ED047A vstr.32 s15, [r4, #16] + 770:Src/main.c **** if (task.tau > 3) + 12401 .loc 1 770 7 is_stmt 1 view .LVU3976 + 12402 0842 FCEEE77A vcvt.u32.f32 s15, s15 + 12403 0846 17EE903A vmov r3, s15 @ int + 12404 084a 99B2 uxth r1, r3 + 12405 084c 0120 movs r0, #1 + 12406 084e FFF7FEFF bl Set_LTEC + 12407 .LVL1120: + 771:Src/main.c **** { + 12408 .loc 1 771 7 view .LVU3977 + 771:Src/main.c **** { + 12409 .loc 1 771 15 is_stmt 0 view .LVU3978 + 12410 0852 E38A ldrh r3, [r4, #22] + 771:Src/main.c **** { + 12411 .loc 1 771 10 view .LVU3979 + 12412 0854 032B cmp r3, #3 + 12413 0856 0CD9 bls .L636 + 773:Src/main.c **** htim10.Init.Period = 9999; + 12414 .loc 1 773 8 is_stmt 1 view .LVU3980 + 773:Src/main.c **** htim10.Init.Period = 9999; + 12415 .loc 1 773 34 is_stmt 0 view .LVU3981 + 12416 0858 174A ldr r2, .L683+60 + 12417 085a D068 ldr r0, [r2, #12] + 773:Src/main.c **** htim10.Init.Period = 9999; + 12418 .loc 1 773 21 view .LVU3982 + 12419 085c 1549 ldr r1, .L683+56 + 12420 085e 0860 str r0, [r1] + 774:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 12421 .loc 1 774 8 is_stmt 1 view .LVU3983 + 774:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 12422 .loc 1 774 27 is_stmt 0 view .LVU3984 + 12423 0860 42F20F71 movw r1, #9999 + 12424 0864 D160 str r1, [r2, #12] + 775:Src/main.c **** } + 12425 .loc 1 775 8 is_stmt 1 view .LVU3985 + 775:Src/main.c **** } + 12426 .loc 1 775 33 is_stmt 0 view .LVU3986 + 12427 0866 013B subs r3, r3, #1 + 775:Src/main.c **** } + 12428 .loc 1 775 38 view .LVU3987 + 12429 0868 6422 movs r2, #100 + 12430 086a 02FB03F3 mul r3, r2, r3 + 775:Src/main.c **** } + 12431 .loc 1 775 21 view .LVU3988 + 12432 086e 144A ldr r2, .L683+68 + 12433 0870 1360 str r3, [r2] + 12434 .L636: + 777:Src/main.c **** break; + 12435 .loc 1 777 7 is_stmt 1 view .LVU3989 + 12436 0872 1148 ldr r0, .L683+60 + 12437 0874 FFF7FEFF bl HAL_TIM_Base_Start_IT + 12438 .LVL1121: + 778:Src/main.c **** case TT_CHANGE_CURR_2: + 12439 .loc 1 778 6 view .LVU3990 + 12440 0878 F9E6 b .L629 + 12441 .L684: + ARM GAS /tmp/ccEQxcUB.s page 636 + + + 12442 087a 00BF .align 2 + 12443 .L683: + 12444 087c 00000000 .word COMMAND + 12445 0880 00000000 .word State_Data + 12446 0884 00000000 .word CPU_state + 12447 0888 00000000 .word CPU_state_old + 12448 088c 00000000 .word UART_transmission_request + 12449 0890 00000000 .word Curr_setup + 12450 0894 00000000 .word LD2_curr_setup + 12451 0898 00000000 .word LD1_curr_setup + 12452 089c 00000000 .word TO6 + 12453 08a0 00000000 .word TO6_before + 12454 08a4 00000000 .word task + 12455 08a8 00000000 .word TO7 + 12456 08ac 00000000 .word TO7_before + 12457 08b0 00000000 .word TIM10_coflag + 12458 08b4 00000000 .word TIM10_period + 12459 08b8 00000000 .word htim10 + 12460 08bc CDCCCCCC .word -858993459 + 12461 08c0 00000000 .word TO10_counter + 12462 08c4 00000000 .word LD1_param + 12463 08c8 00000000 .word LD2_param + 12464 08cc 00000000 .word temp16 + 12465 08d0 000C0240 .word 1073875968 + 12466 08d4 00480140 .word 1073825792 + 12467 08d8 00080040 .word 1073743872 + 12468 08dc 00000000 .word TO10 + 12469 08e0 00000000 .word htim11 + 12470 08e4 00000000 .word htim4 + 12471 08e8 00180240 .word 1073879040 + 12472 .LVL1122: + 12473 .L628: + 782:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12474 .loc 1 782 7 view .LVU3991 + 782:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12475 .loc 1 782 38 is_stmt 0 view .LVU3992 + 12476 08ec A74B ldr r3, .L685 + 12477 08ee D3ED077A vldr.32 s15, [r3, #28] + 782:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_1); + 12478 .loc 1 782 7 view .LVU3993 + 12479 08f2 FCEEE77A vcvt.u32.f32 s15, s15 + 12480 08f6 17EE903A vmov r3, s15 @ int + 12481 08fa 99B2 uxth r1, r3 + 12482 08fc 0120 movs r0, #1 + 12483 08fe FFF7FEFF bl Set_LTEC + 12484 .LVL1123: + 783:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 12485 .loc 1 783 7 is_stmt 1 view .LVU3994 + 783:Src/main.c **** LD1_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_1); + 12486 .loc 1 783 14 is_stmt 0 view .LVU3995 + 12487 0902 0320 movs r0, #3 + 12488 0904 FFF7FEFF bl MPhD_T + 12489 .LVL1124: + 784:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12490 .loc 1 784 7 is_stmt 1 view .LVU3996 + 784:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12491 .loc 1 784 32 is_stmt 0 view .LVU3997 + ARM GAS /tmp/ccEQxcUB.s page 637 + + + 12492 0908 0320 movs r0, #3 + 12493 090a FFF7FEFF bl MPhD_T + 12494 .LVL1125: + 784:Src/main.c **** (void) MPhD_T(TT_CHANGE_TEMP_2); + 12495 .loc 1 784 30 discriminator 1 view .LVU3998 + 12496 090e A04C ldr r4, .L685+4 + 12497 0910 2080 strh r0, [r4] @ movhi + 785:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 12498 .loc 1 785 7 is_stmt 1 view .LVU3999 + 785:Src/main.c **** LD2_param.LD_CURR_TEMP = MPhD_T(TT_CHANGE_TEMP_2); + 12499 .loc 1 785 14 is_stmt 0 view .LVU4000 + 12500 0912 0420 movs r0, #4 + 12501 0914 FFF7FEFF bl MPhD_T + 12502 .LVL1126: + 786:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12503 .loc 1 786 7 is_stmt 1 view .LVU4001 + 786:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12504 .loc 1 786 32 is_stmt 0 view .LVU4002 + 12505 0918 0420 movs r0, #4 + 12506 091a FFF7FEFF bl MPhD_T + 12507 .LVL1127: + 786:Src/main.c **** temp16=PID_Controller_Temp(&LD1_curr_setup, &LD1_param, 1); + 12508 .loc 1 786 30 discriminator 1 view .LVU4003 + 12509 091e 9D4D ldr r5, .L685+8 + 12510 0920 2880 strh r0, [r5] @ movhi + 787:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12511 .loc 1 787 7 is_stmt 1 view .LVU4004 + 787:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12512 .loc 1 787 14 is_stmt 0 view .LVU4005 + 12513 0922 0122 movs r2, #1 + 12514 0924 2146 mov r1, r4 + 12515 0926 9C48 ldr r0, .L685+12 + 12516 0928 FFF7FEFF bl PID_Controller_Temp + 12517 .LVL1128: + 12518 092c 0146 mov r1, r0 + 787:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_1, temp16);//Drive Laser TEC 1 + 12519 .loc 1 787 13 discriminator 1 view .LVU4006 + 12520 092e 9B4C ldr r4, .L685+16 + 12521 0930 2080 strh r0, [r4] @ movhi + 788:Src/main.c **** temp16=PID_Controller_Temp(&LD2_curr_setup, &LD2_param, 2); + 12522 .loc 1 788 7 is_stmt 1 view .LVU4007 + 12523 0932 0320 movs r0, #3 + 12524 0934 FFF7FEFF bl Set_LTEC + 12525 .LVL1129: + 789:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12526 .loc 1 789 7 view .LVU4008 + 789:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12527 .loc 1 789 14 is_stmt 0 view .LVU4009 + 12528 0938 0222 movs r2, #2 + 12529 093a 2946 mov r1, r5 + 12530 093c 9848 ldr r0, .L685+20 + 12531 093e FFF7FEFF bl PID_Controller_Temp + 12532 .LVL1130: + 12533 0942 0146 mov r1, r0 + 789:Src/main.c **** Set_LTEC(TT_CHANGE_TEMP_2, temp16);//Drive Laser TEC 2 + 12534 .loc 1 789 13 discriminator 1 view .LVU4010 + 12535 0944 2080 strh r0, [r4] @ movhi + ARM GAS /tmp/ccEQxcUB.s page 638 + + + 790:Src/main.c **** + 12536 .loc 1 790 7 is_stmt 1 view .LVU4011 + 12537 0946 0420 movs r0, #4 + 12538 0948 FFF7FEFF bl Set_LTEC + 12539 .LVL1131: + 792:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L + 12540 .loc 1 792 7 view .LVU4012 + 792:Src/main.c **** LD_blinker.state = 0; // 0 -- disabled (do nothing); 1 -- update LD current; 2 -- blinking, L + 12541 .loc 1 792 28 is_stmt 0 view .LVU4013 + 12542 094c 954B ldr r3, .L685+24 + 12543 094e 0222 movs r2, #2 + 12544 0950 1A70 strb r2, [r3] + 793:Src/main.c **** //LD_blinker.param = task.current_param; + 12545 .loc 1 793 7 is_stmt 1 view .LVU4014 + 793:Src/main.c **** //LD_blinker.param = task.current_param; + 12546 .loc 1 793 24 is_stmt 0 view .LVU4015 + 12547 0952 0022 movs r2, #0 + 12548 0954 9A72 strb r2, [r3, #10] + 795:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) + 12549 .loc 1 795 7 is_stmt 1 view .LVU4016 + 795:Src/main.c **** LD_blinker.param = 1000; // LD2 current (in unspecified units) + 12550 .loc 1 795 24 is_stmt 0 view .LVU4017 + 12551 0956 1A81 strh r2, [r3, #8] @ movhi + 796:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; + 12552 .loc 1 796 7 is_stmt 1 view .LVU4018 + 796:Src/main.c **** LD_blinker.signal_port = OUT_9_GPIO_Port; + 12553 .loc 1 796 24 is_stmt 0 view .LVU4019 + 12554 0958 4FF47A72 mov r2, #1000 + 12555 095c 1A81 strh r2, [r3, #8] @ movhi + 797:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; + 12556 .loc 1 797 7 is_stmt 1 view .LVU4020 + 797:Src/main.c **** LD_blinker.signal_pin = OUT_9_Pin; + 12557 .loc 1 797 30 is_stmt 0 view .LVU4021 + 12558 095e 924A ldr r2, .L685+28 + 12559 0960 5A60 str r2, [r3, #4] + 798:Src/main.c **** + 12560 .loc 1 798 7 is_stmt 1 view .LVU4022 + 798:Src/main.c **** + 12561 .loc 1 798 29 is_stmt 0 view .LVU4023 + 12562 0962 8022 movs r2, #128 + 12563 0964 5A80 strh r2, [r3, #2] @ movhi + 800:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU + 12564 .loc 1 800 7 is_stmt 1 view .LVU4024 + 800:Src/main.c **** //When it is too low -- Desktop app crashes (there is not so much compute sources on MCU + 12565 .loc 1 800 17 is_stmt 0 view .LVU4025 + 12566 0966 914B ldr r3, .L685+32 + 12567 0968 42F21072 movw r2, #10000 + 12568 096c DA62 str r2, [r3, #44] + 802:Src/main.c **** if (st != HAL_OK) + 12569 .loc 1 802 7 is_stmt 1 view .LVU4026 + 802:Src/main.c **** if (st != HAL_OK) + 12570 .loc 1 802 12 is_stmt 0 view .LVU4027 + 12571 096e 9048 ldr r0, .L685+36 + 12572 0970 FFF7FEFF bl HAL_TIM_Base_Start_IT + 12573 .LVL1132: + 803:Src/main.c **** while(1); + 12574 .loc 1 803 7 is_stmt 1 view .LVU4028 + ARM GAS /tmp/ccEQxcUB.s page 639 + + + 803:Src/main.c **** while(1); + 12575 .loc 1 803 10 is_stmt 0 view .LVU4029 + 12576 0974 78BB cbnz r0, .L638 + 808:Src/main.c **** uint32_t i = 10000; while (--i){} + 12577 .loc 1 808 7 is_stmt 1 view .LVU4030 + 12578 0976 0122 movs r2, #1 + 12579 0978 8021 movs r1, #128 + 12580 097a 8E48 ldr r0, .L685+40 + 12581 .LVL1133: + 808:Src/main.c **** uint32_t i = 10000; while (--i){} + 12582 .loc 1 808 7 is_stmt 0 view .LVU4031 + 12583 097c FFF7FEFF bl HAL_GPIO_WritePin + 12584 .LVL1134: + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12585 .loc 1 809 7 is_stmt 1 view .LVU4032 + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12586 .loc 1 809 27 view .LVU4033 + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12587 .loc 1 809 16 is_stmt 0 view .LVU4034 + 12588 0980 42F21073 movw r3, #10000 + 12589 .LVL1135: + 12590 .L639: + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12591 .loc 1 809 39 is_stmt 1 discriminator 2 view .LVU4035 + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12592 .loc 1 809 34 discriminator 2 view .LVU4036 + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12593 .loc 1 809 34 is_stmt 0 discriminator 2 view .LVU4037 + 12594 0984 013B subs r3, r3, #1 + 12595 .LVL1136: + 809:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_RESET); + 12596 .loc 1 809 34 discriminator 2 view .LVU4038 + 12597 0986 FDD1 bne .L639 + 810:Src/main.c **** LD_blinker.state = 2; + 12598 .loc 1 810 7 is_stmt 1 view .LVU4039 + 12599 0988 0022 movs r2, #0 + 12600 098a 8021 movs r1, #128 + 12601 098c 8948 ldr r0, .L685+40 + 12602 098e FFF7FEFF bl HAL_GPIO_WritePin + 12603 .LVL1137: + 811:Src/main.c **** + 12604 .loc 1 811 7 view .LVU4040 + 811:Src/main.c **** + 12605 .loc 1 811 24 is_stmt 0 view .LVU4041 + 12606 0992 844B ldr r3, .L685+24 + 12607 0994 0222 movs r2, #2 + 12608 0996 9A72 strb r2, [r3, #10] + 813:Src/main.c **** if (st != HAL_OK) + 12609 .loc 1 813 7 is_stmt 1 view .LVU4042 + 813:Src/main.c **** if (st != HAL_OK) + 12610 .loc 1 813 12 is_stmt 0 view .LVU4043 + 12611 0998 8748 ldr r0, .L685+44 + 12612 099a FFF7FEFF bl HAL_TIM_Base_Start_IT + 12613 .LVL1138: + 814:Src/main.c **** while(1); + 12614 .loc 1 814 7 is_stmt 1 view .LVU4044 + 814:Src/main.c **** while(1); + ARM GAS /tmp/ccEQxcUB.s page 640 + + + 12615 .loc 1 814 10 is_stmt 0 view .LVU4045 + 12616 099e D8B9 cbnz r0, .L641 + 12617 .L642: + 816:Src/main.c **** { + 12618 .loc 1 816 33 is_stmt 1 view .LVU4046 + 816:Src/main.c **** { + 12619 .loc 1 816 18 is_stmt 0 view .LVU4047 + 12620 09a0 7A4B ldr r3, .L685 + 12621 09a2 D3ED047A vldr.32 s15, [r3, #16] + 816:Src/main.c **** { + 12622 .loc 1 816 39 view .LVU4048 + 12623 09a6 93ED027A vldr.32 s14, [r3, #8] + 816:Src/main.c **** { + 12624 .loc 1 816 33 view .LVU4049 + 12625 09aa F4EEC77A vcmpe.f32 s15, s14 + 12626 09ae F1EE10FA vmrs APSR_nzcv, FPSCR + 12627 09b2 12D5 bpl .L678 + 818:Src/main.c **** { + 12628 .loc 1 818 8 is_stmt 1 view .LVU4050 + 818:Src/main.c **** { + 12629 .loc 1 818 12 is_stmt 0 view .LVU4051 + 12630 09b4 814B ldr r3, .L685+48 + 12631 09b6 1B78 ldrb r3, [r3] @ zero_extendqisi2 + 818:Src/main.c **** { + 12632 .loc 1 818 11 view .LVU4052 + 12633 09b8 002B cmp r3, #0 + 12634 09ba F1D0 beq .L642 + 823:Src/main.c **** TO10 = 0; + 12635 .loc 1 823 9 is_stmt 1 view .LVU4053 + 823:Src/main.c **** TO10 = 0; + 12636 .loc 1 823 35 is_stmt 0 view .LVU4054 + 12637 09bc 734B ldr r3, .L685 + 12638 09be 93ED037A vldr.32 s14, [r3, #12] + 823:Src/main.c **** TO10 = 0; + 12639 .loc 1 823 28 view .LVU4055 + 12640 09c2 77EE277A vadd.f32 s15, s14, s15 + 12641 09c6 C3ED047A vstr.32 s15, [r3, #16] + 824:Src/main.c **** TIM10_coflag = 0; + 12642 .loc 1 824 9 is_stmt 1 view .LVU4056 + 824:Src/main.c **** TIM10_coflag = 0; + 12643 .loc 1 824 14 is_stmt 0 view .LVU4057 + 12644 09ca 0023 movs r3, #0 + 12645 09cc 7C4A ldr r2, .L685+52 + 12646 09ce 1360 str r3, [r2] + 825:Src/main.c **** + 12647 .loc 1 825 9 is_stmt 1 view .LVU4058 + 825:Src/main.c **** + 12648 .loc 1 825 22 is_stmt 0 view .LVU4059 + 12649 09d0 7A4A ldr r2, .L685+48 + 12650 09d2 1370 strb r3, [r2] + 12651 09d4 E4E7 b .L642 + 12652 .LVL1139: + 12653 .L638: + 804:Src/main.c **** // */ + 12654 .loc 1 804 8 is_stmt 1 view .LVU4060 + 804:Src/main.c **** // */ + 12655 .loc 1 804 13 view .LVU4061 + ARM GAS /tmp/ccEQxcUB.s page 641 + + + 12656 09d6 FEE7 b .L638 + 12657 .LVL1140: + 12658 .L641: + 815:Src/main.c **** while (task.current_param < task.max_param) + 12659 .loc 1 815 8 view .LVU4062 + 815:Src/main.c **** while (task.current_param < task.max_param) + 12660 .loc 1 815 13 view .LVU4063 + 12661 09d8 FEE7 b .L641 + 12662 .L678: + 830:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); + 12663 .loc 1 830 7 view .LVU4064 + 12664 09da 7748 ldr r0, .L685+44 + 12665 .LVL1141: + 830:Src/main.c **** HAL_GPIO_WritePin(GPIOD, GPIO_PIN_7, GPIO_PIN_SET); + 12666 .loc 1 830 7 is_stmt 0 view .LVU4065 + 12667 09dc FFF7FEFF bl HAL_TIM_Base_Stop + 12668 .LVL1142: + 831:Src/main.c **** + 12669 .loc 1 831 7 is_stmt 1 view .LVU4066 + 12670 09e0 744C ldr r4, .L685+40 + 12671 09e2 0122 movs r2, #1 + 12672 09e4 8021 movs r1, #128 + 12673 09e6 2046 mov r0, r4 + 12674 09e8 FFF7FEFF bl HAL_GPIO_WritePin + 12675 .LVL1143: + 833:Src/main.c **** + 12676 .loc 1 833 7 view .LVU4067 + 12677 09ec 0022 movs r2, #0 + 12678 09ee 8021 movs r1, #128 + 12679 09f0 2046 mov r0, r4 + 12680 09f2 FFF7FEFF bl HAL_GPIO_WritePin + 12681 .LVL1144: + 835:Src/main.c **** TIM8->CNT = 0; + 12682 .loc 1 835 7 view .LVU4068 + 12683 09f6 6E48 ldr r0, .L685+36 + 12684 09f8 FFF7FEFF bl HAL_TIM_Base_Stop_IT + 12685 .LVL1145: + 836:Src/main.c **** + 12686 .loc 1 836 7 view .LVU4069 + 836:Src/main.c **** + 12687 .loc 1 836 17 is_stmt 0 view .LVU4070 + 12688 09fc 6B4B ldr r3, .L685+32 + 12689 09fe 0022 movs r2, #0 + 12690 0a00 5A62 str r2, [r3, #36] + 838:Src/main.c **** task.current_param = task.min_param; + 12691 .loc 1 838 7 is_stmt 1 view .LVU4071 + 12692 0a02 FFF7FEFF bl Stop_TIM10 + 12693 .LVL1146: + 839:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 12694 .loc 1 839 7 view .LVU4072 + 839:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 12695 .loc 1 839 32 is_stmt 0 view .LVU4073 + 12696 0a06 614C ldr r4, .L685 + 12697 0a08 D4ED017A vldr.32 s15, [r4, #4] + 839:Src/main.c **** Set_LTEC(TT_CHANGE_CURR_2, task.current_param); + 12698 .loc 1 839 26 view .LVU4074 + 12699 0a0c C4ED047A vstr.32 s15, [r4, #16] + ARM GAS /tmp/ccEQxcUB.s page 642 + + + 840:Src/main.c **** if (task.tau > 3) + 12700 .loc 1 840 7 is_stmt 1 view .LVU4075 + 12701 0a10 FCEEE77A vcvt.u32.f32 s15, s15 + 12702 0a14 17EE903A vmov r3, s15 @ int + 12703 0a18 99B2 uxth r1, r3 + 12704 0a1a 0220 movs r0, #2 + 12705 0a1c FFF7FEFF bl Set_LTEC + 12706 .LVL1147: + 841:Src/main.c **** { + 12707 .loc 1 841 7 view .LVU4076 + 841:Src/main.c **** { + 12708 .loc 1 841 15 is_stmt 0 view .LVU4077 + 12709 0a20 E38A ldrh r3, [r4, #22] + 841:Src/main.c **** { + 12710 .loc 1 841 10 view .LVU4078 + 12711 0a22 032B cmp r3, #3 + 12712 0a24 0CD9 bls .L644 + 843:Src/main.c **** htim10.Init.Period = 9999; + 12713 .loc 1 843 8 is_stmt 1 view .LVU4079 + 843:Src/main.c **** htim10.Init.Period = 9999; + 12714 .loc 1 843 34 is_stmt 0 view .LVU4080 + 12715 0a26 644A ldr r2, .L685+44 + 12716 0a28 D068 ldr r0, [r2, #12] + 843:Src/main.c **** htim10.Init.Period = 9999; + 12717 .loc 1 843 21 view .LVU4081 + 12718 0a2a 6649 ldr r1, .L685+56 + 12719 0a2c 0860 str r0, [r1] + 844:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 12720 .loc 1 844 8 is_stmt 1 view .LVU4082 + 844:Src/main.c **** TO10_counter = (task.tau - 1) * 100; + 12721 .loc 1 844 27 is_stmt 0 view .LVU4083 + 12722 0a2e 42F20F71 movw r1, #9999 + 12723 0a32 D160 str r1, [r2, #12] + 845:Src/main.c **** } + 12724 .loc 1 845 8 is_stmt 1 view .LVU4084 + 845:Src/main.c **** } + 12725 .loc 1 845 33 is_stmt 0 view .LVU4085 + 12726 0a34 013B subs r3, r3, #1 + 845:Src/main.c **** } + 12727 .loc 1 845 38 view .LVU4086 + 12728 0a36 6422 movs r2, #100 + 12729 0a38 02FB03F3 mul r3, r2, r3 + 845:Src/main.c **** } + 12730 .loc 1 845 21 view .LVU4087 + 12731 0a3c 624A ldr r2, .L685+60 + 12732 0a3e 1360 str r3, [r2] + 12733 .L644: + 847:Src/main.c **** + 12734 .loc 1 847 7 is_stmt 1 view .LVU4088 + 12735 0a40 5D48 ldr r0, .L685+44 + 12736 0a42 FFF7FEFF bl HAL_TIM_Base_Start_IT + 12737 .LVL1148: + 895:Src/main.c **** case TT_CHANGE_TEMP_1: + 12738 .loc 1 895 6 view .LVU4089 + 12739 0a46 12E6 b .L629 + 12740 .LVL1149: + 12741 .L675: + ARM GAS /tmp/ccEQxcUB.s page 643 + + + 895:Src/main.c **** case TT_CHANGE_TEMP_1: + 12742 .loc 1 895 6 is_stmt 0 view .LVU4090 + 12743 .LBE708: + 906:Src/main.c **** + 12744 .loc 1 906 7 is_stmt 1 view .LVU4091 + 906:Src/main.c **** + 12745 .loc 1 906 18 is_stmt 0 view .LVU4092 + 12746 0a48 604A ldr r2, .L685+64 + 12747 0a4a 1360 str r3, [r2] + 908:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 12748 .loc 1 908 7 is_stmt 1 view .LVU4093 + 908:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 12749 .loc 1 908 25 is_stmt 0 view .LVU4094 + 12750 0a4c 0120 movs r0, #1 + 12751 0a4e FFF7FEFF bl MPhD_T + 12752 .LVL1150: + 908:Src/main.c **** LD1_param.POWER = MPhD_T(1);//Get Data from monitor photodiode of LD1 + 12753 .loc 1 908 23 discriminator 1 view .LVU4095 + 12754 0a52 4F4E ldr r6, .L685+4 + 12755 0a54 3081 strh r0, [r6, #8] @ movhi + 909:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12756 .loc 1 909 7 is_stmt 1 view .LVU4096 + 909:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12757 .loc 1 909 25 is_stmt 0 view .LVU4097 + 12758 0a56 0120 movs r0, #1 + 12759 0a58 FFF7FEFF bl MPhD_T + 12760 .LVL1151: + 909:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12761 .loc 1 909 23 discriminator 1 view .LVU4098 + 12762 0a5c 3081 strh r0, [r6, #8] @ movhi + 910:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12763 .loc 1 910 7 is_stmt 1 view .LVU4099 + 910:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12764 .loc 1 910 25 is_stmt 0 view .LVU4100 + 12765 0a5e 0220 movs r0, #2 + 12766 0a60 FFF7FEFF bl MPhD_T + 12767 .LVL1152: + 910:Src/main.c **** LD2_param.POWER = MPhD_T(2);//Get Data from monitor photodiode of LD2 + 12768 .loc 1 910 23 discriminator 1 view .LVU4101 + 12769 0a64 4B4F ldr r7, .L685+8 + 12770 0a66 3881 strh r0, [r7, #8] @ movhi + 911:Src/main.c **** + 12771 .loc 1 911 7 is_stmt 1 view .LVU4102 + 911:Src/main.c **** + 12772 .loc 1 911 25 is_stmt 0 view .LVU4103 + 12773 0a68 0220 movs r0, #2 + 12774 0a6a FFF7FEFF bl MPhD_T + 12775 .LVL1153: + 911:Src/main.c **** + 12776 .loc 1 911 23 discriminator 1 view .LVU4104 + 12777 0a6e 3881 strh r0, [r7, #8] @ movhi + 913:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 12778 .loc 1 913 7 is_stmt 1 view .LVU4105 + 913:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + 12779 .loc 1 913 31 is_stmt 0 view .LVU4106 + 12780 0a70 3389 ldrh r3, [r6, #8] + 913:Src/main.c **** Long_Data[2] = LD2_param.POWER;//Translate Data from monitor photodiode of LD2 to Long_Data + ARM GAS /tmp/ccEQxcUB.s page 644 + + + 12781 .loc 1 913 20 view .LVU4107 + 12782 0a72 574C ldr r4, .L685+68 + 12783 0a74 6380 strh r3, [r4, #2] @ movhi + 914:Src/main.c **** + 12784 .loc 1 914 7 is_stmt 1 view .LVU4108 + 914:Src/main.c **** + 12785 .loc 1 914 20 is_stmt 0 view .LVU4109 + 12786 0a76 A080 strh r0, [r4, #4] @ movhi + 918:Src/main.c **** temp16 = Get_ADC(1); + 12787 .loc 1 918 7 is_stmt 1 view .LVU4110 + 918:Src/main.c **** temp16 = Get_ADC(1); + 12788 .loc 1 918 16 is_stmt 0 view .LVU4111 + 12789 0a78 0020 movs r0, #0 + 12790 0a7a FFF7FEFF bl Get_ADC + 12791 .LVL1154: + 918:Src/main.c **** temp16 = Get_ADC(1); + 12792 .loc 1 918 14 discriminator 1 view .LVU4112 + 12793 0a7e 474D ldr r5, .L685+16 + 12794 0a80 2880 strh r0, [r5] @ movhi + 919:Src/main.c **** Long_Data[7] = temp16; + 12795 .loc 1 919 7 is_stmt 1 view .LVU4113 + 919:Src/main.c **** Long_Data[7] = temp16; + 12796 .loc 1 919 16 is_stmt 0 view .LVU4114 + 12797 0a82 0120 movs r0, #1 + 12798 0a84 FFF7FEFF bl Get_ADC + 12799 .LVL1155: + 919:Src/main.c **** Long_Data[7] = temp16; + 12800 .loc 1 919 14 discriminator 1 view .LVU4115 + 12801 0a88 2880 strh r0, [r5] @ movhi + 920:Src/main.c **** + 12802 .loc 1 920 7 is_stmt 1 view .LVU4116 + 920:Src/main.c **** + 12803 .loc 1 920 20 is_stmt 0 view .LVU4117 + 12804 0a8a E081 strh r0, [r4, #14] @ movhi + 923:Src/main.c **** Long_Data[8] = temp16; + 12805 .loc 1 923 7 is_stmt 1 view .LVU4118 + 923:Src/main.c **** Long_Data[8] = temp16; + 12806 .loc 1 923 16 is_stmt 0 view .LVU4119 + 12807 0a8c 0120 movs r0, #1 + 12808 0a8e FFF7FEFF bl Get_ADC + 12809 .LVL1156: + 923:Src/main.c **** Long_Data[8] = temp16; + 12810 .loc 1 923 14 discriminator 1 view .LVU4120 + 12811 0a92 2880 strh r0, [r5] @ movhi + 924:Src/main.c **** + 12812 .loc 1 924 7 is_stmt 1 view .LVU4121 + 924:Src/main.c **** + 12813 .loc 1 924 20 is_stmt 0 view .LVU4122 + 12814 0a94 2082 strh r0, [r4, #16] @ movhi + 927:Src/main.c **** Long_Data[9] = temp16; + 12815 .loc 1 927 7 is_stmt 1 view .LVU4123 + 927:Src/main.c **** Long_Data[9] = temp16; + 12816 .loc 1 927 16 is_stmt 0 view .LVU4124 + 12817 0a96 0120 movs r0, #1 + 12818 0a98 FFF7FEFF bl Get_ADC + 12819 .LVL1157: + 927:Src/main.c **** Long_Data[9] = temp16; + ARM GAS /tmp/ccEQxcUB.s page 645 + + + 12820 .loc 1 927 14 discriminator 1 view .LVU4125 + 12821 0a9c 2880 strh r0, [r5] @ movhi + 928:Src/main.c **** + 12822 .loc 1 928 7 is_stmt 1 view .LVU4126 + 928:Src/main.c **** + 12823 .loc 1 928 20 is_stmt 0 view .LVU4127 + 12824 0a9e 6082 strh r0, [r4, #18] @ movhi + 931:Src/main.c **** Long_Data[10] = temp16; + 12825 .loc 1 931 7 is_stmt 1 view .LVU4128 + 931:Src/main.c **** Long_Data[10] = temp16; + 12826 .loc 1 931 16 is_stmt 0 view .LVU4129 + 12827 0aa0 0120 movs r0, #1 + 12828 0aa2 FFF7FEFF bl Get_ADC + 12829 .LVL1158: + 931:Src/main.c **** Long_Data[10] = temp16; + 12830 .loc 1 931 14 discriminator 1 view .LVU4130 + 12831 0aa6 2880 strh r0, [r5] @ movhi + 932:Src/main.c **** + 12832 .loc 1 932 7 is_stmt 1 view .LVU4131 + 932:Src/main.c **** + 12833 .loc 1 932 21 is_stmt 0 view .LVU4132 + 12834 0aa8 A082 strh r0, [r4, #20] @ movhi + 935:Src/main.c **** Long_Data[11] = temp16; + 12835 .loc 1 935 7 is_stmt 1 view .LVU4133 + 935:Src/main.c **** Long_Data[11] = temp16; + 12836 .loc 1 935 16 is_stmt 0 view .LVU4134 + 12837 0aaa 0120 movs r0, #1 + 12838 0aac FFF7FEFF bl Get_ADC + 12839 .LVL1159: + 935:Src/main.c **** Long_Data[11] = temp16; + 12840 .loc 1 935 14 discriminator 1 view .LVU4135 + 12841 0ab0 2880 strh r0, [r5] @ movhi + 936:Src/main.c **** temp16 = Get_ADC(2); + 12842 .loc 1 936 7 is_stmt 1 view .LVU4136 + 936:Src/main.c **** temp16 = Get_ADC(2); + 12843 .loc 1 936 21 is_stmt 0 view .LVU4137 + 12844 0ab2 E082 strh r0, [r4, #22] @ movhi + 937:Src/main.c **** + 12845 .loc 1 937 7 is_stmt 1 view .LVU4138 + 937:Src/main.c **** + 12846 .loc 1 937 16 is_stmt 0 view .LVU4139 + 12847 0ab4 0220 movs r0, #2 + 12848 0ab6 FFF7FEFF bl Get_ADC + 12849 .LVL1160: + 937:Src/main.c **** + 12850 .loc 1 937 14 discriminator 1 view .LVU4140 + 12851 0aba 2880 strh r0, [r5] @ movhi + 940:Src/main.c **** temp16 = Get_ADC(4); + 12852 .loc 1 940 7 is_stmt 1 view .LVU4141 + 940:Src/main.c **** temp16 = Get_ADC(4); + 12853 .loc 1 940 16 is_stmt 0 view .LVU4142 + 12854 0abc 0320 movs r0, #3 + 12855 0abe FFF7FEFF bl Get_ADC + 12856 .LVL1161: + 940:Src/main.c **** temp16 = Get_ADC(4); + 12857 .loc 1 940 14 discriminator 1 view .LVU4143 + 12858 0ac2 2880 strh r0, [r5] @ movhi + ARM GAS /tmp/ccEQxcUB.s page 646 + + + 941:Src/main.c **** Long_Data[12] = temp16; + 12859 .loc 1 941 7 is_stmt 1 view .LVU4144 + 941:Src/main.c **** Long_Data[12] = temp16; + 12860 .loc 1 941 16 is_stmt 0 view .LVU4145 + 12861 0ac4 0420 movs r0, #4 + 12862 0ac6 FFF7FEFF bl Get_ADC + 12863 .LVL1162: + 941:Src/main.c **** Long_Data[12] = temp16; + 12864 .loc 1 941 14 discriminator 1 view .LVU4146 + 12865 0aca 2880 strh r0, [r5] @ movhi + 942:Src/main.c **** temp16 = Get_ADC(5); + 12866 .loc 1 942 7 is_stmt 1 view .LVU4147 + 942:Src/main.c **** temp16 = Get_ADC(5); + 12867 .loc 1 942 21 is_stmt 0 view .LVU4148 + 12868 0acc 2083 strh r0, [r4, #24] @ movhi + 943:Src/main.c **** + 12869 .loc 1 943 7 is_stmt 1 view .LVU4149 + 943:Src/main.c **** + 12870 .loc 1 943 16 is_stmt 0 view .LVU4150 + 12871 0ace 0520 movs r0, #5 + 12872 0ad0 FFF7FEFF bl Get_ADC + 12873 .LVL1163: + 943:Src/main.c **** + 12874 .loc 1 943 14 discriminator 1 view .LVU4151 + 12875 0ad4 2880 strh r0, [r5] @ movhi + 946:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 12876 .loc 1 946 7 is_stmt 1 view .LVU4152 + 946:Src/main.c **** Long_Data[3] = (TO6_stop)&0xffff; + 12877 .loc 1 946 16 is_stmt 0 view .LVU4153 + 12878 0ad6 3F4B ldr r3, .L685+72 + 12879 0ad8 1B68 ldr r3, [r3] + 12880 0ada 3F4A ldr r2, .L685+76 + 12881 0adc 1360 str r3, [r2] + 947:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 12882 .loc 1 947 7 is_stmt 1 view .LVU4154 + 947:Src/main.c **** Long_Data[4] = (TO6_stop>>16)&0xffff; + 12883 .loc 1 947 20 is_stmt 0 view .LVU4155 + 12884 0ade E380 strh r3, [r4, #6] @ movhi + 948:Src/main.c **** + 12885 .loc 1 948 7 is_stmt 1 view .LVU4156 + 948:Src/main.c **** + 12886 .loc 1 948 31 is_stmt 0 view .LVU4157 + 12887 0ae0 1B0C lsrs r3, r3, #16 + 948:Src/main.c **** + 12888 .loc 1 948 20 view .LVU4158 + 12889 0ae2 2381 strh r3, [r4, #8] @ movhi + 951:Src/main.c **** + 12890 .loc 1 951 7 is_stmt 1 view .LVU4159 + 951:Src/main.c **** + 12891 .loc 1 951 31 is_stmt 0 view .LVU4160 + 12892 0ae4 3388 ldrh r3, [r6] + 951:Src/main.c **** + 12893 .loc 1 951 20 view .LVU4161 + 12894 0ae6 6381 strh r3, [r4, #10] @ movhi + 954:Src/main.c **** } + 12895 .loc 1 954 7 is_stmt 1 view .LVU4162 + 954:Src/main.c **** } + ARM GAS /tmp/ccEQxcUB.s page 647 + + + 12896 .loc 1 954 31 is_stmt 0 view .LVU4163 + 12897 0ae8 3B88 ldrh r3, [r7] + 954:Src/main.c **** } + 12898 .loc 1 954 20 view .LVU4164 + 12899 0aea A381 strh r3, [r4, #12] @ movhi + 12900 0aec C6E5 b .L646 + 12901 .L648: + 982:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 12902 .loc 1 982 5 is_stmt 1 view .LVU4165 + 982:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 12903 .loc 1 982 17 is_stmt 0 view .LVU4166 + 12904 0aee 3B4C ldr r4, .L685+80 + 12905 0af0 0D21 movs r1, #13 + 12906 0af2 2046 mov r0, r4 + 12907 0af4 FFF7FEFF bl CalculateChecksum + 12908 .LVL1164: + 982:Src/main.c **** Long_Data[DL_16-1] = CS_result; + 12909 .loc 1 982 15 discriminator 1 view .LVU4167 + 12910 0af8 394B ldr r3, .L685+84 + 12911 0afa 1880 strh r0, [r3] @ movhi + 983:Src/main.c **** + 12912 .loc 1 983 5 is_stmt 1 view .LVU4168 + 983:Src/main.c **** + 12913 .loc 1 983 24 is_stmt 0 view .LVU4169 + 12914 0afc 6083 strh r0, [r4, #26] @ movhi + 985:Src/main.c **** { + 12915 .loc 1 985 5 is_stmt 1 view .LVU4170 + 12916 .LBB709: + 985:Src/main.c **** { + 12917 .loc 1 985 10 view .LVU4171 + 12918 .LVL1165: + 985:Src/main.c **** { + 12919 .loc 1 985 19 is_stmt 0 view .LVU4172 + 12920 0afe 0023 movs r3, #0 + 985:Src/main.c **** { + 12921 .loc 1 985 5 view .LVU4173 + 12922 0b00 0BE0 b .L651 + 12923 .LVL1166: + 12924 .L652: + 987:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12925 .loc 1 987 6 is_stmt 1 view .LVU4174 + 987:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12926 .loc 1 987 33 is_stmt 0 view .LVU4175 + 12927 0b02 334A ldr r2, .L685+68 + 12928 0b04 32F81320 ldrh r2, [r2, r3, lsl #1] + 987:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12929 .loc 1 987 17 view .LVU4176 + 12930 0b08 5900 lsls r1, r3, #1 + 987:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12931 .loc 1 987 21 view .LVU4177 + 12932 0b0a 3648 ldr r0, .L685+88 + 12933 0b0c 00F81320 strb r2, [r0, r3, lsl #1] + 988:Src/main.c **** } + 12934 .loc 1 988 6 is_stmt 1 view .LVU4178 + 988:Src/main.c **** } + 12935 .loc 1 988 19 is_stmt 0 view .LVU4179 + 12936 0b10 0131 adds r1, r1, #1 + ARM GAS /tmp/ccEQxcUB.s page 648 + + + 988:Src/main.c **** } + 12937 .loc 1 988 23 view .LVU4180 + 12938 0b12 120A lsrs r2, r2, #8 + 12939 0b14 4254 strb r2, [r0, r1] + 985:Src/main.c **** { + 12940 .loc 1 985 38 is_stmt 1 discriminator 3 view .LVU4181 + 12941 0b16 0133 adds r3, r3, #1 + 12942 .LVL1167: + 985:Src/main.c **** { + 12943 .loc 1 985 38 is_stmt 0 discriminator 3 view .LVU4182 + 12944 0b18 9BB2 uxth r3, r3 + 12945 .LVL1168: + 12946 .L651: + 985:Src/main.c **** { + 12947 .loc 1 985 28 is_stmt 1 discriminator 1 view .LVU4183 + 12948 0b1a 0E2B cmp r3, #14 + 12949 0b1c F1D9 bls .L652 + 12950 .LBE709: + 995:Src/main.c **** UART_transmission_request = NO_MESS; + 12951 .loc 1 995 5 view .LVU4184 + 12952 0b1e 1E20 movs r0, #30 + 12953 0b20 FFF7FEFF bl USART_TX_DMA + 12954 .LVL1169: + 996:Src/main.c **** break; + 12955 .loc 1 996 5 view .LVU4185 + 996:Src/main.c **** break; + 12956 .loc 1 996 31 is_stmt 0 view .LVU4186 + 12957 0b24 304B ldr r3, .L685+92 + 12958 0b26 0022 movs r2, #0 + 12959 0b28 1A70 strb r2, [r3] + 997:Src/main.c **** case MESS_03://Transmith saved packet + 12960 .loc 1 997 4 is_stmt 1 view .LVU4187 + 12961 0b2a FFF7FCBA b .L650 + 12962 .LVL1170: + 12963 .L653: + 12964 .LBB710: +1001:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12965 .loc 1 1001 6 view .LVU4188 +1001:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12966 .loc 1 1001 33 is_stmt 0 view .LVU4189 + 12967 0b2e 284A ldr r2, .L685+68 + 12968 0b30 32F81320 ldrh r2, [r2, r3, lsl #1] +1001:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12969 .loc 1 1001 17 view .LVU4190 + 12970 0b34 5900 lsls r1, r3, #1 +1001:Src/main.c **** UART_DATA[i*2+1] = (Long_Data[i]>>8)&0xff; + 12971 .loc 1 1001 21 view .LVU4191 + 12972 0b36 2B48 ldr r0, .L685+88 + 12973 0b38 00F81320 strb r2, [r0, r3, lsl #1] +1002:Src/main.c **** } + 12974 .loc 1 1002 6 is_stmt 1 view .LVU4192 +1002:Src/main.c **** } + 12975 .loc 1 1002 19 is_stmt 0 view .LVU4193 + 12976 0b3c 0131 adds r1, r1, #1 +1002:Src/main.c **** } + 12977 .loc 1 1002 23 view .LVU4194 + 12978 0b3e 120A lsrs r2, r2, #8 + ARM GAS /tmp/ccEQxcUB.s page 649 + + + 12979 0b40 4254 strb r2, [r0, r1] + 999:Src/main.c **** { + 12980 .loc 1 999 38 is_stmt 1 discriminator 3 view .LVU4195 + 12981 0b42 0133 adds r3, r3, #1 + 12982 .LVL1171: + 999:Src/main.c **** { + 12983 .loc 1 999 38 is_stmt 0 discriminator 3 view .LVU4196 + 12984 0b44 9BB2 uxth r3, r3 + 12985 .LVL1172: + 12986 .L649: + 999:Src/main.c **** { + 12987 .loc 1 999 28 is_stmt 1 discriminator 1 view .LVU4197 + 12988 0b46 0E2B cmp r3, #14 + 12989 0b48 F1D9 bls .L653 + 12990 .LBE710: +1008:Src/main.c **** UART_transmission_request = NO_MESS; + 12991 .loc 1 1008 5 view .LVU4198 + 12992 0b4a 1E20 movs r0, #30 + 12993 0b4c FFF7FEFF bl USART_TX_DMA + 12994 .LVL1173: +1009:Src/main.c **** break; + 12995 .loc 1 1009 5 view .LVU4199 +1009:Src/main.c **** break; + 12996 .loc 1 1009 31 is_stmt 0 view .LVU4200 + 12997 0b50 254B ldr r3, .L685+92 + 12998 0b52 0022 movs r2, #0 + 12999 0b54 1A70 strb r2, [r3] +1010:Src/main.c **** } + 13000 .loc 1 1010 4 is_stmt 1 view .LVU4201 + 13001 0b56 FFF7E6BA b .L650 + 13002 .LVL1174: + 13003 .L664: + 970:Src/main.c **** { + 13004 .loc 1 970 3 is_stmt 0 view .LVU4202 + 13005 0b5a 0023 movs r3, #0 + 13006 0b5c F3E7 b .L649 + 13007 .L667: +1012:Src/main.c **** { + 13008 .loc 1 1012 28 discriminator 1 view .LVU4203 + 13009 0b5e 1D4B ldr r3, .L685+72 + 13010 0b60 1B68 ldr r3, [r3] + 13011 0b62 224A ldr r2, .L685+96 + 13012 0b64 1268 ldr r2, [r2] + 13013 0b66 9B1A subs r3, r3, r2 +1012:Src/main.c **** { + 13014 .loc 1 1012 21 discriminator 1 view .LVU4204 + 13015 0b68 642B cmp r3, #100 + 13016 0b6a 7FF6E1AA bls .L586 +1014:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! + 13017 .loc 1 1014 4 is_stmt 1 view .LVU4205 +1014:Src/main.c **** State_Data[0] |= UART_ERR;//timeout error! + 13018 .loc 1 1014 18 is_stmt 0 view .LVU4206 + 13019 0b6e 0022 movs r2, #0 + 13020 0b70 1F4B ldr r3, .L685+100 + 13021 0b72 1A80 strh r2, [r3] @ movhi +1015:Src/main.c **** UART_transmission_request = MESS_01;//Send status + 13022 .loc 1 1015 4 is_stmt 1 view .LVU4207 + ARM GAS /tmp/ccEQxcUB.s page 650 + + +1015:Src/main.c **** UART_transmission_request = MESS_01;//Send status + 13023 .loc 1 1015 14 is_stmt 0 view .LVU4208 + 13024 0b74 1F49 ldr r1, .L685+104 + 13025 0b76 0B78 ldrb r3, [r1] @ zero_extendqisi2 +1015:Src/main.c **** UART_transmission_request = MESS_01;//Send status + 13026 .loc 1 1015 18 view .LVU4209 + 13027 0b78 43F00203 orr r3, r3, #2 + 13028 0b7c 0B70 strb r3, [r1] +1016:Src/main.c **** flg_tmt = 0;//Reset timeout flag + 13029 .loc 1 1016 4 is_stmt 1 view .LVU4210 +1016:Src/main.c **** flg_tmt = 0;//Reset timeout flag + 13030 .loc 1 1016 30 is_stmt 0 view .LVU4211 + 13031 0b7e 1A4B ldr r3, .L685+92 + 13032 0b80 0121 movs r1, #1 + 13033 0b82 1970 strb r1, [r3] +1017:Src/main.c **** } + 13034 .loc 1 1017 4 is_stmt 1 view .LVU4212 +1017:Src/main.c **** } + 13035 .loc 1 1017 12 is_stmt 0 view .LVU4213 + 13036 0b84 1C4B ldr r3, .L685+108 + 13037 0b86 1A70 strb r2, [r3] + 13038 0b88 FFF7D2BA b .L586 + 13039 .L686: + 13040 .align 2 + 13041 .L685: + 13042 0b8c 00000000 .word task + 13043 0b90 00000000 .word LD1_param + 13044 0b94 00000000 .word LD2_param + 13045 0b98 00000000 .word LD1_curr_setup + 13046 0b9c 00000000 .word temp16 + 13047 0ba0 00000000 .word LD2_curr_setup + 13048 0ba4 00000000 .word LD_blinker + 13049 0ba8 00040240 .word 1073873920 + 13050 0bac 00040140 .word 1073808384 + 13051 0bb0 00000000 .word htim8 + 13052 0bb4 000C0240 .word 1073875968 + 13053 0bb8 00000000 .word htim10 + 13054 0bbc 00000000 .word TIM10_coflag + 13055 0bc0 00000000 .word TO10 + 13056 0bc4 00000000 .word TIM10_period + 13057 0bc8 00000000 .word TO10_counter + 13058 0bcc 00000000 .word TO7_before + 13059 0bd0 00000000 .word Long_Data + 13060 0bd4 00000000 .word TO6 + 13061 0bd8 00000000 .word TO6_stop + 13062 0bdc 02000000 .word Long_Data+2 + 13063 0be0 00000000 .word CS_result + 13064 0be4 00000000 .word UART_DATA + 13065 0be8 00000000 .word UART_transmission_request + 13066 0bec 00000000 .word TO6_uart + 13067 0bf0 00000000 .word UART_rec_incr + 13068 0bf4 00000000 .word State_Data + 13069 0bf8 00000000 .word flg_tmt + 13070 .cfi_endproc + 13071 .LFE1186: + 13073 .section .rodata.ad9102_example2_regval,"a" + 13074 .align 2 + ARM GAS /tmp/ccEQxcUB.s page 651 + + + 13077 ad9102_example2_regval: + 13078 0000 0000 .short 0 + 13079 0002 000E .short 3584 + 13080 0004 0000 .short 0 + 13081 0006 0000 .short 0 + 13082 0008 0000 .short 0 + 13083 000a 0000 .short 0 + 13084 000c 0000 .short 0 + 13085 000e 0040 .short 16384 + 13086 0010 0000 .short 0 + 13087 0012 0000 .short 0 + 13088 0014 0000 .short 0 + 13089 0016 0000 .short 0 + 13090 0018 001F .short 7936 + 13091 001a 0000 .short 0 + 13092 001c 0000 .short 0 + 13093 001e 0000 .short 0 + 13094 0020 0E00 .short 14 + 13095 0022 0000 .short 0 + 13096 0024 0000 .short 0 + 13097 0026 0000 .short 0 + 13098 0028 0000 .short 0 + 13099 002a 0000 .short 0 + 13100 002c 3030 .short 12336 + 13101 002e 1101 .short 273 + 13102 0030 FFFF .short -1 + 13103 0032 0000 .short 0 + 13104 0034 0101 .short 257 + 13105 0036 0300 .short 3 + 13106 0038 0000 .short 0 + 13107 003a 0000 .short 0 + 13108 003c 0000 .short 0 + 13109 003e 0000 .short 0 + 13110 0040 0000 .short 0 + 13111 0042 0000 .short 0 + 13112 0044 0000 .short 0 + 13113 0046 0000 .short 0 + 13114 0048 0040 .short 16384 + 13115 004a 0000 .short 0 + 13116 004c 0002 .short 512 + 13117 004e 0000 .short 0 + 13118 0050 0000 .short 0 + 13119 0052 0000 .short 0 + 13120 0054 0000 .short 0 + 13121 0056 0000 .short 0 + 13122 0058 0000 .short 0 + 13123 005a 0000 .short 0 + 13124 005c 0000 .short 0 + 13125 005e 0000 .short 0 + 13126 0060 0000 .short 0 + 13127 0062 0000 .short 0 + 13128 0064 0000 .short 0 + 13129 0066 0000 .short 0 + 13130 0068 0000 .short 0 + 13131 006a 0000 .short 0 + 13132 006c 0000 .short 0 + 13133 006e 0000 .short 0 + ARM GAS /tmp/ccEQxcUB.s page 652 + + + 13134 0070 0000 .short 0 + 13135 0072 0000 .short 0 + 13136 0074 0000 .short 0 + 13137 0076 0000 .short 0 + 13138 0078 A00F .short 4000 + 13139 007a 0000 .short 0 + 13140 007c F03F .short 16368 + 13141 007e 0001 .short 256 + 13142 0080 0100 .short 1 + 13143 0082 0100 .short 1 + 13144 .section .rodata.ad9102_example4_regval,"a" + 13145 .align 2 + 13148 ad9102_example4_regval: + 13149 0000 0000 .short 0 + 13150 0002 0000 .short 0 + 13151 0004 0000 .short 0 + 13152 0006 0000 .short 0 + 13153 0008 0000 .short 0 + 13154 000a 0000 .short 0 + 13155 000c 0000 .short 0 + 13156 000e 0040 .short 16384 + 13157 0010 0000 .short 0 + 13158 0012 0000 .short 0 + 13159 0014 0000 .short 0 + 13160 0016 0000 .short 0 + 13161 0018 001F .short 7936 + 13162 001a 0000 .short 0 + 13163 001c 0000 .short 0 + 13164 001e 0000 .short 0 + 13165 0020 0E00 .short 14 + 13166 0022 0000 .short 0 + 13167 0024 0000 .short 0 + 13168 0026 0000 .short 0 + 13169 0028 0000 .short 0 + 13170 002a 0000 .short 0 + 13171 002c 1232 .short 12818 + 13172 002e 2101 .short 289 + 13173 0030 FFFF .short -1 + 13174 0032 0000 .short 0 + 13175 0034 0101 .short 257 + 13176 0036 0300 .short 3 + 13177 0038 0000 .short 0 + 13178 003a 0000 .short 0 + 13179 003c 0000 .short 0 + 13180 003e 0000 .short 0 + 13181 0040 0000 .short 0 + 13182 0042 0000 .short 0 + 13183 0044 0000 .short 0 + 13184 0046 0000 .short 0 + 13185 0048 0040 .short 16384 + 13186 004a 0000 .short 0 + 13187 004c 0606 .short 1542 + 13188 004e 9919 .short 6553 + 13189 0050 009A .short -26112 + 13190 0052 0000 .short 0 + 13191 0054 0000 .short 0 + 13192 0056 0000 .short 0 + ARM GAS /tmp/ccEQxcUB.s page 653 + + + 13193 0058 0000 .short 0 + 13194 005a 0000 .short 0 + 13195 005c 0000 .short 0 + 13196 005e 0000 .short 0 + 13197 0060 A00F .short 4000 + 13198 0062 0000 .short 0 + 13199 0064 0000 .short 0 + 13200 0066 0000 .short 0 + 13201 0068 0000 .short 0 + 13202 006a 0000 .short 0 + 13203 006c 0000 .short 0 + 13204 006e 0000 .short 0 + 13205 0070 0000 .short 0 + 13206 0072 0000 .short 0 + 13207 0074 0000 .short 0 + 13208 0076 0000 .short 0 + 13209 0078 0000 .short 0 + 13210 007a 0000 .short 0 + 13211 007c 0000 .short 0 + 13212 007e FF16 .short 5887 + 13213 0080 0100 .short 1 + 13214 0082 0100 .short 1 + 13215 .section .rodata.ad9102_reg_addr,"a" + 13216 .align 2 + 13219 ad9102_reg_addr: + 13220 0000 0000 .short 0 + 13221 0002 0100 .short 1 + 13222 0004 0200 .short 2 + 13223 0006 0300 .short 3 + 13224 0008 0400 .short 4 + 13225 000a 0500 .short 5 + 13226 000c 0600 .short 6 + 13227 000e 0700 .short 7 + 13228 0010 0800 .short 8 + 13229 0012 0900 .short 9 + 13230 0014 0A00 .short 10 + 13231 0016 0B00 .short 11 + 13232 0018 0C00 .short 12 + 13233 001a 0D00 .short 13 + 13234 001c 0E00 .short 14 + 13235 001e 1F00 .short 31 + 13236 0020 2000 .short 32 + 13237 0022 2200 .short 34 + 13238 0024 2300 .short 35 + 13239 0026 2400 .short 36 + 13240 0028 2500 .short 37 + 13241 002a 2600 .short 38 + 13242 002c 2700 .short 39 + 13243 002e 2800 .short 40 + 13244 0030 2900 .short 41 + 13245 0032 2A00 .short 42 + 13246 0034 2B00 .short 43 + 13247 0036 2C00 .short 44 + 13248 0038 2D00 .short 45 + 13249 003a 2E00 .short 46 + 13250 003c 2F00 .short 47 + 13251 003e 3000 .short 48 + ARM GAS /tmp/ccEQxcUB.s page 654 + + + 13252 0040 3100 .short 49 + 13253 0042 3200 .short 50 + 13254 0044 3300 .short 51 + 13255 0046 3400 .short 52 + 13256 0048 3500 .short 53 + 13257 004a 3600 .short 54 + 13258 004c 3700 .short 55 + 13259 004e 3E00 .short 62 + 13260 0050 3F00 .short 63 + 13261 0052 4000 .short 64 + 13262 0054 4100 .short 65 + 13263 0056 4200 .short 66 + 13264 0058 4300 .short 67 + 13265 005a 4400 .short 68 + 13266 005c 4500 .short 69 + 13267 005e 4700 .short 71 + 13268 0060 5000 .short 80 + 13269 0062 5100 .short 81 + 13270 0064 5200 .short 82 + 13271 0066 5300 .short 83 + 13272 0068 5400 .short 84 + 13273 006a 5500 .short 85 + 13274 006c 5600 .short 86 + 13275 006e 5700 .short 87 + 13276 0070 5800 .short 88 + 13277 0072 5900 .short 89 + 13278 0074 5A00 .short 90 + 13279 0076 5B00 .short 91 + 13280 0078 5C00 .short 92 + 13281 007a 5D00 .short 93 + 13282 007c 5E00 .short 94 + 13283 007e 5F00 .short 95 + 13284 0080 1E00 .short 30 + 13285 0082 1D00 .short 29 + 13286 .global task + 13287 .section .bss.task,"aw",%nobits + 13288 .align 2 + 13291 task: + 13292 0000 00000000 .space 52 + 13292 00000000 + 13292 00000000 + 13292 00000000 + 13292 00000000 + 13293 .global LD_blinker + 13294 .section .bss.LD_blinker,"aw",%nobits + 13295 .align 2 + 13298 LD_blinker: + 13299 0000 00000000 .space 12 + 13299 00000000 + 13299 00000000 + 13300 .global LD2_param + 13301 .section .bss.LD2_param,"aw",%nobits + 13302 .align 2 + 13305 LD2_param: + 13306 0000 00000000 .space 12 + 13306 00000000 + 13306 00000000 + ARM GAS /tmp/ccEQxcUB.s page 655 + + + 13307 .global LD1_param + 13308 .section .bss.LD1_param,"aw",%nobits + 13309 .align 2 + 13312 LD1_param: + 13313 0000 00000000 .space 12 + 13313 00000000 + 13313 00000000 + 13314 .global Def_setup + 13315 .section .bss.Def_setup,"aw",%nobits + 13316 .align 2 + 13319 Def_setup: + 13320 0000 00000000 .space 18 + 13320 00000000 + 13320 00000000 + 13320 00000000 + 13320 0000 + 13321 .global Curr_setup + 13322 .section .bss.Curr_setup,"aw",%nobits + 13323 .align 2 + 13326 Curr_setup: + 13327 0000 00000000 .space 18 + 13327 00000000 + 13327 00000000 + 13327 00000000 + 13327 0000 + 13328 .global LD2_def_setup + 13329 .section .bss.LD2_def_setup,"aw",%nobits + 13330 .align 2 + 13333 LD2_def_setup: + 13334 0000 00000000 .space 16 + 13334 00000000 + 13334 00000000 + 13334 00000000 + 13335 .global LD1_def_setup + 13336 .section .bss.LD1_def_setup,"aw",%nobits + 13337 .align 2 + 13340 LD1_def_setup: + 13341 0000 00000000 .space 16 + 13341 00000000 + 13341 00000000 + 13341 00000000 + 13342 .global LD2_curr_setup + 13343 .section .bss.LD2_curr_setup,"aw",%nobits + 13344 .align 2 + 13347 LD2_curr_setup: + 13348 0000 00000000 .space 16 + 13348 00000000 + 13348 00000000 + 13348 00000000 + 13349 .global LD1_curr_setup + 13350 .section .bss.LD1_curr_setup,"aw",%nobits + 13351 .align 2 + 13354 LD1_curr_setup: + 13355 0000 00000000 .space 16 + 13355 00000000 + 13355 00000000 + 13355 00000000 + ARM GAS /tmp/ccEQxcUB.s page 656 + + + 13356 .global sizeoffile + 13357 .section .bss.sizeoffile,"aw",%nobits + 13358 .align 2 + 13361 sizeoffile: + 13362 0000 00000000 .space 4 + 13363 .global fgoto + 13364 .section .bss.fgoto,"aw",%nobits + 13365 .align 2 + 13368 fgoto: + 13369 0000 00000000 .space 4 + 13370 .global test + 13371 .section .bss.test,"aw",%nobits + 13372 .align 2 + 13375 test: + 13376 0000 00000000 .space 4 + 13377 .global fresult + 13378 .section .bss.fresult,"aw",%nobits + 13381 fresult: + 13382 0000 00 .space 1 + 13383 .global COMMAND + 13384 .section .bss.COMMAND,"aw",%nobits + 13385 .align 2 + 13388 COMMAND: + 13389 0000 00000000 .space 30 + 13389 00000000 + 13389 00000000 + 13389 00000000 + 13389 00000000 + 13390 .global Long_Data + 13391 .section .bss.Long_Data,"aw",%nobits + 13392 .align 2 + 13395 Long_Data: + 13396 0000 00000000 .space 30 + 13396 00000000 + 13396 00000000 + 13396 00000000 + 13396 00000000 + 13397 .global temp16 + 13398 .section .bss.temp16,"aw",%nobits + 13399 .align 1 + 13402 temp16: + 13403 0000 0000 .space 2 + 13404 .global CS_result + 13405 .section .bss.CS_result,"aw",%nobits + 13406 .align 1 + 13409 CS_result: + 13410 0000 0000 .space 2 + 13411 .global UART_header + 13412 .section .bss.UART_header,"aw",%nobits + 13413 .align 1 + 13416 UART_header: + 13417 0000 0000 .space 2 + 13418 .global UART_rec_incr + 13419 .section .bss.UART_rec_incr,"aw",%nobits + 13420 .align 1 + 13423 UART_rec_incr: + 13424 0000 0000 .space 2 + ARM GAS /tmp/ccEQxcUB.s page 657 + + + 13425 .global TIM10_coflag + 13426 .section .bss.TIM10_coflag,"aw",%nobits + 13429 TIM10_coflag: + 13430 0000 00 .space 1 + 13431 .global u_rx_flg + 13432 .section .bss.u_rx_flg,"aw",%nobits + 13435 u_rx_flg: + 13436 0000 00 .space 1 + 13437 .global u_tx_flg + 13438 .section .bss.u_tx_flg,"aw",%nobits + 13441 u_tx_flg: + 13442 0000 00 .space 1 + 13443 .global flg_tmt + 13444 .section .bss.flg_tmt,"aw",%nobits + 13447 flg_tmt: + 13448 0000 00 .space 1 + 13449 .global UART_DATA + 13450 .section .bss.UART_DATA,"aw",%nobits + 13451 .align 2 + 13454 UART_DATA: + 13455 0000 00000000 .space 30 + 13455 00000000 + 13455 00000000 + 13455 00000000 + 13455 00000000 + 13456 .global State_Data + 13457 .section .bss.State_Data,"aw",%nobits + 13458 .align 2 + 13461 State_Data: + 13462 0000 0000 .space 2 + 13463 .global UART_transmission_request + 13464 .section .bss.UART_transmission_request,"aw",%nobits + 13467 UART_transmission_request: + 13468 0000 00 .space 1 + 13469 .global CPU_state_old + 13470 .section .bss.CPU_state_old,"aw",%nobits + 13473 CPU_state_old: + 13474 0000 00 .space 1 + 13475 .global CPU_state + 13476 .section .bss.CPU_state,"aw",%nobits + 13479 CPU_state: + 13480 0000 00 .space 1 + 13481 .global uart_buf + 13482 .section .bss.uart_buf,"aw",%nobits + 13485 uart_buf: + 13486 0000 00 .space 1 + 13487 .global TIM10_period + 13488 .section .bss.TIM10_period,"aw",%nobits + 13489 .align 2 + 13492 TIM10_period: + 13493 0000 00000000 .space 4 + 13494 .global TO10_counter + 13495 .section .bss.TO10_counter,"aw",%nobits + 13496 .align 2 + 13499 TO10_counter: + 13500 0000 00000000 .space 4 + 13501 .global TO10 + ARM GAS /tmp/ccEQxcUB.s page 658 + + + 13502 .section .bss.TO10,"aw",%nobits + 13503 .align 2 + 13506 TO10: + 13507 0000 00000000 .space 4 + 13508 .global TO7_PID + 13509 .section .bss.TO7_PID,"aw",%nobits + 13510 .align 2 + 13513 TO7_PID: + 13514 0000 00000000 .space 4 + 13515 .global TO7_before + 13516 .section .bss.TO7_before,"aw",%nobits + 13517 .align 2 + 13520 TO7_before: + 13521 0000 00000000 .space 4 + 13522 .global TO7 + 13523 .section .bss.TO7,"aw",%nobits + 13524 .align 2 + 13527 TO7: + 13528 0000 00000000 .space 4 + 13529 .global temp32 + 13530 .section .bss.temp32,"aw",%nobits + 13531 .align 2 + 13534 temp32: + 13535 0000 00000000 .space 4 + 13536 .global SD_SLIDE + 13537 .section .bss.SD_SLIDE,"aw",%nobits + 13538 .align 2 + 13541 SD_SLIDE: + 13542 0000 00000000 .space 4 + 13543 .global SD_SEEK + 13544 .section .bss.SD_SEEK,"aw",%nobits + 13545 .align 2 + 13548 SD_SEEK: + 13549 0000 00000000 .space 4 + 13550 .global TO6_uart + 13551 .section .bss.TO6_uart,"aw",%nobits + 13552 .align 2 + 13555 TO6_uart: + 13556 0000 00000000 .space 4 + 13557 .global TO6_stop + 13558 .section .bss.TO6_stop,"aw",%nobits + 13559 .align 2 + 13562 TO6_stop: + 13563 0000 00000000 .space 4 + 13564 .global TO6_before + 13565 .section .bss.TO6_before,"aw",%nobits + 13566 .align 2 + 13569 TO6_before: + 13570 0000 00000000 .space 4 + 13571 .global TO6 + 13572 .section .bss.TO6,"aw",%nobits + 13573 .align 2 + 13576 TO6: + 13577 0000 00000000 .space 4 + 13578 .global huart8 + 13579 .section .bss.huart8,"aw",%nobits + 13580 .align 2 + ARM GAS /tmp/ccEQxcUB.s page 659 + + + 13583 huart8: + 13584 0000 00000000 .space 136 + 13584 00000000 + 13584 00000000 + 13584 00000000 + 13584 00000000 + 13585 .global htim11 + 13586 .section .bss.htim11,"aw",%nobits + 13587 .align 2 + 13590 htim11: + 13591 0000 00000000 .space 76 + 13591 00000000 + 13591 00000000 + 13591 00000000 + 13591 00000000 + 13592 .global htim10 + 13593 .section .bss.htim10,"aw",%nobits + 13594 .align 2 + 13597 htim10: + 13598 0000 00000000 .space 76 + 13598 00000000 + 13598 00000000 + 13598 00000000 + 13598 00000000 + 13599 .global htim1 + 13600 .section .bss.htim1,"aw",%nobits + 13601 .align 2 + 13604 htim1: + 13605 0000 00000000 .space 76 + 13605 00000000 + 13605 00000000 + 13605 00000000 + 13605 00000000 + 13606 .global htim8 + 13607 .section .bss.htim8,"aw",%nobits + 13608 .align 2 + 13611 htim8: + 13612 0000 00000000 .space 76 + 13612 00000000 + 13612 00000000 + 13612 00000000 + 13612 00000000 + 13613 .global htim4 + 13614 .section .bss.htim4,"aw",%nobits + 13615 .align 2 + 13618 htim4: + 13619 0000 00000000 .space 76 + 13619 00000000 + 13619 00000000 + 13619 00000000 + 13619 00000000 + 13620 .global hsd1 + 13621 .section .bss.hsd1,"aw",%nobits + 13622 .align 2 + 13625 hsd1: + 13626 0000 00000000 .space 132 + 13626 00000000 + ARM GAS /tmp/ccEQxcUB.s page 660 + + + 13626 00000000 + 13626 00000000 + 13626 00000000 + 13627 .global hadc3 + 13628 .section .bss.hadc3,"aw",%nobits + 13629 .align 2 + 13632 hadc3: + 13633 0000 00000000 .space 72 + 13633 00000000 + 13633 00000000 + 13633 00000000 + 13633 00000000 + 13634 .global hadc1 + 13635 .section .bss.hadc1,"aw",%nobits + 13636 .align 2 + 13639 hadc1: + 13640 0000 00000000 .space 72 + 13640 00000000 + 13640 00000000 + 13640 00000000 + 13640 00000000 + 13641 .text + 13642 .Letext0: + 13643 .file 9 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" + 13644 .file 10 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" + 13645 .file 11 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" + 13646 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" + 13647 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc_ex.h" + 13648 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc.h" + 13649 .file 15 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" + 13650 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" + 13651 .file 17 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" + 13652 .file 18 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h" + 13653 .file 19 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h" + 13654 .file 20 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" + 13655 .file 21 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_uart.h" + 13656 .file 22 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" + 13657 .file 23 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_gpio.h" + 13658 .file 24 "Inc/main.h" + 13659 .file 25 "Middlewares/Third_Party/FatFs/src/ff.h" + 13660 .file 26 "Inc/File_Handling.h" + 13661 .file 27 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim_ex.h" + 13662 .file 28 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h" + 13663 .file 29 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_pwr_ex.h" + 13664 .file 30 "Inc/fatfs.h" + 13665 .file 31 "" + ARM GAS /tmp/ccEQxcUB.s page 661 DEFINED SYMBOLS *ABS*:00000000 main.c - /tmp/ccwR4KB7.s:20 .text.NVIC_EncodePriority:00000000 $t - /tmp/ccwR4KB7.s:25 .text.NVIC_EncodePriority:00000000 NVIC_EncodePriority - /tmp/ccwR4KB7.s:88 .text.MX_SDMMC1_SD_Init:00000000 $t - /tmp/ccwR4KB7.s:93 .text.MX_SDMMC1_SD_Init:00000000 MX_SDMMC1_SD_Init - /tmp/ccwR4KB7.s:131 .text.MX_SDMMC1_SD_Init:0000001c $d - /tmp/ccwR4KB7.s:12579 .bss.hsd1:00000000 hsd1 - /tmp/ccwR4KB7.s:137 .text.MX_DMA_Init:00000000 $t - /tmp/ccwR4KB7.s:142 .text.MX_DMA_Init:00000000 MX_DMA_Init - /tmp/ccwR4KB7.s:238 .text.MX_DMA_Init:0000003c $d - /tmp/ccwR4KB7.s:245 .text.Decode_task:00000000 $t - /tmp/ccwR4KB7.s:250 .text.Decode_task:00000000 Decode_task - /tmp/ccwR4KB7.s:527 .text.Decode_task:00000150 $d - /tmp/ccwR4KB7.s:12252 .bss.task:00000000 task - /tmp/ccwR4KB7.s:12460 .bss.TO10_counter:00000000 TO10_counter - /tmp/ccwR4KB7.s:537 .text.PID_Controller_Temp:00000000 $t - /tmp/ccwR4KB7.s:542 .text.PID_Controller_Temp:00000000 PID_Controller_Temp - /tmp/ccwR4KB7.s:711 .text.PID_Controller_Temp:000000cc $d - /tmp/ccwR4KB7.s:12488 .bss.TO7:00000000 TO7 - /tmp/ccwR4KB7.s:12474 .bss.TO7_PID:00000000 TO7_PID - /tmp/ccwR4KB7.s:721 .text.AD9102_WriteReg:00000000 $t - /tmp/ccwR4KB7.s:726 .text.AD9102_WriteReg:00000000 AD9102_WriteReg - /tmp/ccwR4KB7.s:973 .text.AD9102_WriteReg:000000a8 $d - /tmp/ccwR4KB7.s:979 .text.AD9102_WriteRegTable:00000000 $t - /tmp/ccwR4KB7.s:984 .text.AD9102_WriteRegTable:00000000 AD9102_WriteRegTable - /tmp/ccwR4KB7.s:1035 .text.AD9102_WriteRegTable:00000024 $d - /tmp/ccwR4KB7.s:12180 .rodata.ad9102_reg_addr:00000000 ad9102_reg_addr - /tmp/ccwR4KB7.s:1040 .text.AD9102_LoadSramRamp:00000000 $t - /tmp/ccwR4KB7.s:1045 .text.AD9102_LoadSramRamp:00000000 AD9102_LoadSramRamp - /tmp/ccwR4KB7.s:1296 .text.AD9102_LoadSramRamp:000000c0 $d - /tmp/ccwR4KB7.s:1301 .text.AD9102_Init:00000000 $t - /tmp/ccwR4KB7.s:1306 .text.AD9102_Init:00000000 AD9102_Init - /tmp/ccwR4KB7.s:1387 .text.AD9102_Init:00000064 $d - /tmp/ccwR4KB7.s:12109 .rodata.ad9102_example4_regval:00000000 ad9102_example4_regval - /tmp/ccwR4KB7.s:1395 .text.AD9102_ReadReg:00000000 $t - /tmp/ccwR4KB7.s:1400 .text.AD9102_ReadReg:00000000 AD9102_ReadReg - /tmp/ccwR4KB7.s:1655 .text.AD9102_ReadReg:000000a8 $d - /tmp/ccwR4KB7.s:1661 .text.AD9102_CheckFlagsSram:00000000 $t - /tmp/ccwR4KB7.s:1666 .text.AD9102_CheckFlagsSram:00000000 AD9102_CheckFlagsSram - /tmp/ccwR4KB7.s:1964 .text.AD9102_CheckFlags:00000000 $t - /tmp/ccwR4KB7.s:1969 .text.AD9102_CheckFlags:00000000 AD9102_CheckFlags - /tmp/ccwR4KB7.s:2199 .text.AD9102_ApplySram:00000000 $t - /tmp/ccwR4KB7.s:2204 .text.AD9102_ApplySram:00000000 AD9102_ApplySram - /tmp/ccwR4KB7.s:2457 .text.AD9102_ApplySram:0000012c $d - /tmp/ccwR4KB7.s:12038 .rodata.ad9102_example2_regval:00000000 ad9102_example2_regval - /tmp/ccwR4KB7.s:2463 .text.AD9102_Apply:00000000 $t - /tmp/ccwR4KB7.s:2468 .text.AD9102_Apply:00000000 AD9102_Apply - /tmp/ccwR4KB7.s:2639 .text.AD9102_Apply:000000b4 $d - /tmp/ccwR4KB7.s:2644 .text.OUT_trigger:00000000 $t - /tmp/ccwR4KB7.s:2649 .text.OUT_trigger:00000000 OUT_trigger - /tmp/ccwR4KB7.s:2667 .text.OUT_trigger:0000000a $d - /tmp/ccwR4KB7.s:2677 .text.OUT_trigger:00000014 $t - /tmp/ccwR4KB7.s:2873 .text.OUT_trigger:0000011c $d - /tmp/ccwR4KB7.s:2879 .text.MPhD_T:00000000 $t - /tmp/ccwR4KB7.s:2884 .text.MPhD_T:00000000 MPhD_T - /tmp/ccwR4KB7.s:2968 .text.MPhD_T:00000056 $d - ARM GAS /tmp/ccwR4KB7.s page 633 + /tmp/ccEQxcUB.s:20 .text.NVIC_EncodePriority:00000000 $t + /tmp/ccEQxcUB.s:25 .text.NVIC_EncodePriority:00000000 NVIC_EncodePriority + /tmp/ccEQxcUB.s:88 .text.MX_SDMMC1_SD_Init:00000000 $t + /tmp/ccEQxcUB.s:93 .text.MX_SDMMC1_SD_Init:00000000 MX_SDMMC1_SD_Init + /tmp/ccEQxcUB.s:131 .text.MX_SDMMC1_SD_Init:0000001c $d + /tmp/ccEQxcUB.s:13625 .bss.hsd1:00000000 hsd1 + /tmp/ccEQxcUB.s:137 .text.MX_DMA_Init:00000000 $t + /tmp/ccEQxcUB.s:142 .text.MX_DMA_Init:00000000 MX_DMA_Init + /tmp/ccEQxcUB.s:238 .text.MX_DMA_Init:0000003c $d + /tmp/ccEQxcUB.s:245 .text.Decode_task:00000000 $t + /tmp/ccEQxcUB.s:250 .text.Decode_task:00000000 Decode_task + /tmp/ccEQxcUB.s:527 .text.Decode_task:00000150 $d + /tmp/ccEQxcUB.s:13291 .bss.task:00000000 task + /tmp/ccEQxcUB.s:13499 .bss.TO10_counter:00000000 TO10_counter + /tmp/ccEQxcUB.s:537 .text.SPI2_SetMode:00000000 $t + /tmp/ccEQxcUB.s:542 .text.SPI2_SetMode:00000000 SPI2_SetMode + /tmp/ccEQxcUB.s:650 .text.SPI2_SetMode:00000040 $d + /tmp/ccEQxcUB.s:655 .text.PID_Controller_Temp:00000000 $t + /tmp/ccEQxcUB.s:660 .text.PID_Controller_Temp:00000000 PID_Controller_Temp + /tmp/ccEQxcUB.s:829 .text.PID_Controller_Temp:000000cc $d + /tmp/ccEQxcUB.s:13527 .bss.TO7:00000000 TO7 + /tmp/ccEQxcUB.s:13513 .bss.TO7_PID:00000000 TO7_PID + /tmp/ccEQxcUB.s:839 .text.AD9102_WriteReg:00000000 $t + /tmp/ccEQxcUB.s:844 .text.AD9102_WriteReg:00000000 AD9102_WriteReg + /tmp/ccEQxcUB.s:1107 .text.AD9102_WriteReg:000000c8 $d + /tmp/ccEQxcUB.s:1114 .text.AD9102_WriteRegTable:00000000 $t + /tmp/ccEQxcUB.s:1119 .text.AD9102_WriteRegTable:00000000 AD9102_WriteRegTable + /tmp/ccEQxcUB.s:1170 .text.AD9102_WriteRegTable:00000024 $d + /tmp/ccEQxcUB.s:13219 .rodata.ad9102_reg_addr:00000000 ad9102_reg_addr + /tmp/ccEQxcUB.s:1175 .text.AD9102_LoadSramRamp:00000000 $t + /tmp/ccEQxcUB.s:1180 .text.AD9102_LoadSramRamp:00000000 AD9102_LoadSramRamp + /tmp/ccEQxcUB.s:1464 .text.AD9102_LoadSramRamp:000000d4 $d + /tmp/ccEQxcUB.s:1469 .text.AD9102_Init:00000000 $t + /tmp/ccEQxcUB.s:1474 .text.AD9102_Init:00000000 AD9102_Init + /tmp/ccEQxcUB.s:1555 .text.AD9102_Init:00000064 $d + /tmp/ccEQxcUB.s:13148 .rodata.ad9102_example4_regval:00000000 ad9102_example4_regval + /tmp/ccEQxcUB.s:1563 .text.AD9102_ReadReg:00000000 $t + /tmp/ccEQxcUB.s:1568 .text.AD9102_ReadReg:00000000 AD9102_ReadReg + /tmp/ccEQxcUB.s:1840 .text.AD9102_ReadReg:000000c8 $d + /tmp/ccEQxcUB.s:1847 .text.AD9102_CheckFlagsSram:00000000 $t + /tmp/ccEQxcUB.s:1852 .text.AD9102_CheckFlagsSram:00000000 AD9102_CheckFlagsSram + /tmp/ccEQxcUB.s:2150 .text.AD9102_CheckFlags:00000000 $t + /tmp/ccEQxcUB.s:2155 .text.AD9102_CheckFlags:00000000 AD9102_CheckFlags + /tmp/ccEQxcUB.s:2385 .text.AD9102_ApplySram:00000000 $t + /tmp/ccEQxcUB.s:2390 .text.AD9102_ApplySram:00000000 AD9102_ApplySram + /tmp/ccEQxcUB.s:2654 .text.AD9102_ApplySram:0000013c $d + /tmp/ccEQxcUB.s:13077 .rodata.ad9102_example2_regval:00000000 ad9102_example2_regval + /tmp/ccEQxcUB.s:2660 .text.AD9102_Apply:00000000 $t + /tmp/ccEQxcUB.s:2665 .text.AD9102_Apply:00000000 AD9102_Apply + /tmp/ccEQxcUB.s:2836 .text.AD9102_Apply:000000b4 $d + /tmp/ccEQxcUB.s:2841 .text.AD9833_WriteWord:00000000 $t + /tmp/ccEQxcUB.s:2846 .text.AD9833_WriteWord:00000000 AD9833_WriteWord + /tmp/ccEQxcUB.s:2994 .text.AD9833_WriteWord:00000088 $d + /tmp/ccEQxcUB.s:3001 .text.AD9833_Apply:00000000 $t + /tmp/ccEQxcUB.s:3006 .text.AD9833_Apply:00000000 AD9833_Apply + ARM GAS /tmp/ccEQxcUB.s page 662 - /tmp/ccwR4KB7.s:2972 .text.MPhD_T:0000005a $t - /tmp/ccwR4KB7.s:3515 .text.MPhD_T:00000210 $d - /tmp/ccwR4KB7.s:3525 .text.Stop_TIM10:00000000 $t - /tmp/ccwR4KB7.s:3530 .text.Stop_TIM10:00000000 Stop_TIM10 - /tmp/ccwR4KB7.s:3559 .text.Stop_TIM10:00000014 $d - /tmp/ccwR4KB7.s:12558 .bss.htim10:00000000 htim10 - /tmp/ccwR4KB7.s:12390 .bss.TIM10_coflag:00000000 TIM10_coflag - /tmp/ccwR4KB7.s:12467 .bss.TO10:00000000 TO10 - /tmp/ccwR4KB7.s:3566 .text.MX_GPIO_Init:00000000 $t - /tmp/ccwR4KB7.s:3571 .text.MX_GPIO_Init:00000000 MX_GPIO_Init - /tmp/ccwR4KB7.s:4032 .text.MX_GPIO_Init:0000023c $d - /tmp/ccwR4KB7.s:4044 .text.MX_SPI4_Init:00000000 $t - /tmp/ccwR4KB7.s:4049 .text.MX_SPI4_Init:00000000 MX_SPI4_Init - /tmp/ccwR4KB7.s:4254 .text.MX_SPI4_Init:000000c8 $d - /tmp/ccwR4KB7.s:4261 .text.MX_SPI2_Init:00000000 $t - /tmp/ccwR4KB7.s:4266 .text.MX_SPI2_Init:00000000 MX_SPI2_Init - /tmp/ccwR4KB7.s:4494 .text.MX_SPI2_Init:000000dc $d - /tmp/ccwR4KB7.s:4501 .text.MX_SPI5_Init:00000000 $t - /tmp/ccwR4KB7.s:4506 .text.MX_SPI5_Init:00000000 MX_SPI5_Init - /tmp/ccwR4KB7.s:4711 .text.MX_SPI5_Init:000000c4 $d - /tmp/ccwR4KB7.s:4718 .text.MX_SPI6_Init:00000000 $t - /tmp/ccwR4KB7.s:4723 .text.MX_SPI6_Init:00000000 MX_SPI6_Init - /tmp/ccwR4KB7.s:4928 .text.MX_SPI6_Init:000000c4 $d - /tmp/ccwR4KB7.s:4935 .text.MX_TIM2_Init:00000000 $t - /tmp/ccwR4KB7.s:4940 .text.MX_TIM2_Init:00000000 MX_TIM2_Init - /tmp/ccwR4KB7.s:5118 .text.MX_TIM2_Init:00000088 $d - /tmp/ccwR4KB7.s:5127 .text.MX_TIM5_Init:00000000 $t - /tmp/ccwR4KB7.s:5132 .text.MX_TIM5_Init:00000000 MX_TIM5_Init - /tmp/ccwR4KB7.s:5309 .text.MX_TIM5_Init:00000084 $d - /tmp/ccwR4KB7.s:5318 .text.MX_TIM7_Init:00000000 $t - /tmp/ccwR4KB7.s:5323 .text.MX_TIM7_Init:00000000 MX_TIM7_Init - /tmp/ccwR4KB7.s:5484 .text.MX_TIM7_Init:0000007c $d - /tmp/ccwR4KB7.s:5492 .text.MX_TIM6_Init:00000000 $t - /tmp/ccwR4KB7.s:5497 .text.MX_TIM6_Init:00000000 MX_TIM6_Init - /tmp/ccwR4KB7.s:5658 .text.MX_TIM6_Init:0000007c $d - /tmp/ccwR4KB7.s:5666 .rodata.Init_params.str1.4:00000000 $d - /tmp/ccwR4KB7.s:5673 .text.Init_params:00000000 $t - /tmp/ccwR4KB7.s:5678 .text.Init_params:00000000 Init_params - /tmp/ccwR4KB7.s:6314 .text.Init_params:00000284 $d - /tmp/ccwR4KB7.s:12537 .bss.TO6:00000000 TO6 - /tmp/ccwR4KB7.s:12481 .bss.TO7_before:00000000 TO7_before - /tmp/ccwR4KB7.s:12530 .bss.TO6_before:00000000 TO6_before - /tmp/ccwR4KB7.s:12516 .bss.TO6_uart:00000000 TO6_uart - /tmp/ccwR4KB7.s:12408 .bss.flg_tmt:00000000 flg_tmt - /tmp/ccwR4KB7.s:12384 .bss.UART_rec_incr:00000000 UART_rec_incr - /tmp/ccwR4KB7.s:12329 .bss.fgoto:00000000 fgoto - /tmp/ccwR4KB7.s:12322 .bss.sizeoffile:00000000 sizeoffile - /tmp/ccwR4KB7.s:12402 .bss.u_tx_flg:00000000 u_tx_flg - /tmp/ccwR4KB7.s:12396 .bss.u_rx_flg:00000000 u_rx_flg - /tmp/ccwR4KB7.s:12356 .bss.Long_Data:00000000 Long_Data - /tmp/ccwR4KB7.s:12280 .bss.Def_setup:00000000 Def_setup - /tmp/ccwR4KB7.s:12301 .bss.LD1_def_setup:00000000 LD1_def_setup - /tmp/ccwR4KB7.s:12294 .bss.LD2_def_setup:00000000 LD2_def_setup - /tmp/ccwR4KB7.s:12287 .bss.Curr_setup:00000000 Curr_setup - /tmp/ccwR4KB7.s:12315 .bss.LD1_curr_setup:00000000 LD1_curr_setup - /tmp/ccwR4KB7.s:12308 .bss.LD2_curr_setup:00000000 LD2_curr_setup - /tmp/ccwR4KB7.s:12415 .bss.UART_DATA:00000000 UART_DATA - ARM GAS /tmp/ccwR4KB7.s page 634 + /tmp/ccEQxcUB.s:3091 .text.OUT_trigger:00000000 $t + /tmp/ccEQxcUB.s:3096 .text.OUT_trigger:00000000 OUT_trigger + /tmp/ccEQxcUB.s:3114 .text.OUT_trigger:0000000a $d + /tmp/ccEQxcUB.s:3124 .text.OUT_trigger:00000014 $t + /tmp/ccEQxcUB.s:3320 .text.OUT_trigger:0000011c $d + /tmp/ccEQxcUB.s:3326 .text.MPhD_T:00000000 $t + /tmp/ccEQxcUB.s:3331 .text.MPhD_T:00000000 MPhD_T + /tmp/ccEQxcUB.s:3415 .text.MPhD_T:00000056 $d + /tmp/ccEQxcUB.s:3419 .text.MPhD_T:0000005a $t + /tmp/ccEQxcUB.s:3962 .text.MPhD_T:00000210 $d + /tmp/ccEQxcUB.s:3972 .text.Stop_TIM10:00000000 $t + /tmp/ccEQxcUB.s:3977 .text.Stop_TIM10:00000000 Stop_TIM10 + /tmp/ccEQxcUB.s:4006 .text.Stop_TIM10:00000014 $d + /tmp/ccEQxcUB.s:13597 .bss.htim10:00000000 htim10 + /tmp/ccEQxcUB.s:13429 .bss.TIM10_coflag:00000000 TIM10_coflag + /tmp/ccEQxcUB.s:13506 .bss.TO10:00000000 TO10 + /tmp/ccEQxcUB.s:4013 .text.MX_GPIO_Init:00000000 $t + /tmp/ccEQxcUB.s:4018 .text.MX_GPIO_Init:00000000 MX_GPIO_Init + /tmp/ccEQxcUB.s:4516 .text.MX_GPIO_Init:00000274 $d + /tmp/ccEQxcUB.s:4528 .text.MX_SPI4_Init:00000000 $t + /tmp/ccEQxcUB.s:4533 .text.MX_SPI4_Init:00000000 MX_SPI4_Init + /tmp/ccEQxcUB.s:4738 .text.MX_SPI4_Init:000000c8 $d + /tmp/ccEQxcUB.s:4745 .text.MX_SPI2_Init:00000000 $t + /tmp/ccEQxcUB.s:4750 .text.MX_SPI2_Init:00000000 MX_SPI2_Init + /tmp/ccEQxcUB.s:4978 .text.MX_SPI2_Init:000000dc $d + /tmp/ccEQxcUB.s:4985 .text.MX_SPI5_Init:00000000 $t + /tmp/ccEQxcUB.s:4990 .text.MX_SPI5_Init:00000000 MX_SPI5_Init + /tmp/ccEQxcUB.s:5195 .text.MX_SPI5_Init:000000c4 $d + /tmp/ccEQxcUB.s:5202 .text.MX_SPI6_Init:00000000 $t + /tmp/ccEQxcUB.s:5207 .text.MX_SPI6_Init:00000000 MX_SPI6_Init + /tmp/ccEQxcUB.s:5412 .text.MX_SPI6_Init:000000c4 $d + /tmp/ccEQxcUB.s:5419 .text.MX_TIM2_Init:00000000 $t + /tmp/ccEQxcUB.s:5424 .text.MX_TIM2_Init:00000000 MX_TIM2_Init + /tmp/ccEQxcUB.s:5602 .text.MX_TIM2_Init:00000088 $d + /tmp/ccEQxcUB.s:5611 .text.MX_TIM5_Init:00000000 $t + /tmp/ccEQxcUB.s:5616 .text.MX_TIM5_Init:00000000 MX_TIM5_Init + /tmp/ccEQxcUB.s:5793 .text.MX_TIM5_Init:00000084 $d + /tmp/ccEQxcUB.s:5802 .text.MX_TIM7_Init:00000000 $t + /tmp/ccEQxcUB.s:5807 .text.MX_TIM7_Init:00000000 MX_TIM7_Init + /tmp/ccEQxcUB.s:5968 .text.MX_TIM7_Init:0000007c $d + /tmp/ccEQxcUB.s:5976 .text.MX_TIM6_Init:00000000 $t + /tmp/ccEQxcUB.s:5981 .text.MX_TIM6_Init:00000000 MX_TIM6_Init + /tmp/ccEQxcUB.s:6142 .text.MX_TIM6_Init:0000007c $d + /tmp/ccEQxcUB.s:6150 .rodata.Init_params.str1.4:00000000 $d + /tmp/ccEQxcUB.s:6157 .text.Init_params:00000000 $t + /tmp/ccEQxcUB.s:6162 .text.Init_params:00000000 Init_params + /tmp/ccEQxcUB.s:6798 .text.Init_params:00000284 $d + /tmp/ccEQxcUB.s:13576 .bss.TO6:00000000 TO6 + /tmp/ccEQxcUB.s:13520 .bss.TO7_before:00000000 TO7_before + /tmp/ccEQxcUB.s:13569 .bss.TO6_before:00000000 TO6_before + /tmp/ccEQxcUB.s:13555 .bss.TO6_uart:00000000 TO6_uart + /tmp/ccEQxcUB.s:13447 .bss.flg_tmt:00000000 flg_tmt + /tmp/ccEQxcUB.s:13423 .bss.UART_rec_incr:00000000 UART_rec_incr + /tmp/ccEQxcUB.s:13368 .bss.fgoto:00000000 fgoto + /tmp/ccEQxcUB.s:13361 .bss.sizeoffile:00000000 sizeoffile + /tmp/ccEQxcUB.s:13441 .bss.u_tx_flg:00000000 u_tx_flg + /tmp/ccEQxcUB.s:13435 .bss.u_rx_flg:00000000 u_rx_flg + ARM GAS /tmp/ccEQxcUB.s page 663 - /tmp/ccwR4KB7.s:12509 .bss.SD_SEEK:00000000 SD_SEEK - /tmp/ccwR4KB7.s:12502 .bss.SD_SLIDE:00000000 SD_SLIDE - /tmp/ccwR4KB7.s:12336 .bss.test:00000000 test - /tmp/ccwR4KB7.s:12440 .bss.CPU_state:00000000 CPU_state - /tmp/ccwR4KB7.s:12349 .bss.COMMAND:00000000 COMMAND - /tmp/ccwR4KB7.s:6353 .text.Get_ADC:00000000 $t - /tmp/ccwR4KB7.s:6358 .text.Get_ADC:00000000 Get_ADC - /tmp/ccwR4KB7.s:6378 .text.Get_ADC:0000000c $d - /tmp/ccwR4KB7.s:6384 .text.Get_ADC:00000012 $t - /tmp/ccwR4KB7.s:6482 .text.Get_ADC:00000068 $d - /tmp/ccwR4KB7.s:12593 .bss.hadc1:00000000 hadc1 - /tmp/ccwR4KB7.s:12586 .bss.hadc3:00000000 hadc3 - /tmp/ccwR4KB7.s:6488 .text.Set_LTEC:00000000 $t - /tmp/ccwR4KB7.s:6494 .text.Set_LTEC:00000000 Set_LTEC - /tmp/ccwR4KB7.s:6525 .text.Set_LTEC:00000018 $d - /tmp/ccwR4KB7.s:6529 .text.Set_LTEC:0000001c $t - /tmp/ccwR4KB7.s:6951 .text.Set_LTEC:00000154 $d - /tmp/ccwR4KB7.s:6959 .text.Decode_uart:00000000 $t - /tmp/ccwR4KB7.s:6964 .text.Decode_uart:00000000 Decode_uart - /tmp/ccwR4KB7.s:7527 .text.Decode_uart:000002cc $d - /tmp/ccwR4KB7.s:7542 .text.Advanced_Controller_Temp:00000000 $t - /tmp/ccwR4KB7.s:7548 .text.Advanced_Controller_Temp:00000000 Advanced_Controller_Temp - /tmp/ccwR4KB7.s:7717 .text.Advanced_Controller_Temp:000000cc $d - /tmp/ccwR4KB7.s:7727 .text.CalculateChecksum:00000000 $t - /tmp/ccwR4KB7.s:7733 .text.CalculateChecksum:00000000 CalculateChecksum - /tmp/ccwR4KB7.s:7778 .text.CheckChecksum:00000000 $t - /tmp/ccwR4KB7.s:7784 .text.CheckChecksum:00000000 CheckChecksum - /tmp/ccwR4KB7.s:7846 .text.CheckChecksum:0000003c $d - /tmp/ccwR4KB7.s:12377 .bss.UART_header:00000000 UART_header - /tmp/ccwR4KB7.s:12370 .bss.CS_result:00000000 CS_result - /tmp/ccwR4KB7.s:7853 .rodata.SD_SAVE.str1.4:00000000 $d - /tmp/ccwR4KB7.s:7857 .text.SD_SAVE:00000000 $t - /tmp/ccwR4KB7.s:7863 .text.SD_SAVE:00000000 SD_SAVE - /tmp/ccwR4KB7.s:7932 .text.SD_SAVE:00000030 $d - /tmp/ccwR4KB7.s:7939 .text.SD_READ:00000000 $t - /tmp/ccwR4KB7.s:7945 .text.SD_READ:00000000 SD_READ - /tmp/ccwR4KB7.s:8023 .text.SD_READ:0000003c $d - /tmp/ccwR4KB7.s:8031 .text.SD_REMOVE:00000000 $t - /tmp/ccwR4KB7.s:8037 .text.SD_REMOVE:00000000 SD_REMOVE - /tmp/ccwR4KB7.s:8105 .text.SD_REMOVE:00000034 $d - /tmp/ccwR4KB7.s:8112 .text.USART_TX:00000000 $t - /tmp/ccwR4KB7.s:8118 .text.USART_TX:00000000 USART_TX - /tmp/ccwR4KB7.s:8193 .text.USART_TX:00000028 $d - /tmp/ccwR4KB7.s:8198 .text.USART_TX_DMA:00000000 $t - /tmp/ccwR4KB7.s:8204 .text.USART_TX_DMA:00000000 USART_TX_DMA - /tmp/ccwR4KB7.s:8273 .text.USART_TX_DMA:00000038 $d - /tmp/ccwR4KB7.s:8279 .text.Error_Handler:00000000 $t - /tmp/ccwR4KB7.s:8285 .text.Error_Handler:00000000 Error_Handler - /tmp/ccwR4KB7.s:8316 .text.MX_ADC1_Init:00000000 $t - /tmp/ccwR4KB7.s:8321 .text.MX_ADC1_Init:00000000 MX_ADC1_Init - /tmp/ccwR4KB7.s:8510 .text.MX_ADC1_Init:000000bc $d - /tmp/ccwR4KB7.s:8517 .text.MX_ADC3_Init:00000000 $t - /tmp/ccwR4KB7.s:8522 .text.MX_ADC3_Init:00000000 MX_ADC3_Init - /tmp/ccwR4KB7.s:8629 .text.MX_ADC3_Init:00000060 $d - /tmp/ccwR4KB7.s:8636 .text.MX_USART1_UART_Init:00000000 $t - /tmp/ccwR4KB7.s:8641 .text.MX_USART1_UART_Init:00000000 MX_USART1_UART_Init - /tmp/ccwR4KB7.s:9040 .text.MX_USART1_UART_Init:0000017c $d - ARM GAS /tmp/ccwR4KB7.s page 635 + /tmp/ccEQxcUB.s:13395 .bss.Long_Data:00000000 Long_Data + /tmp/ccEQxcUB.s:13319 .bss.Def_setup:00000000 Def_setup + /tmp/ccEQxcUB.s:13340 .bss.LD1_def_setup:00000000 LD1_def_setup + /tmp/ccEQxcUB.s:13333 .bss.LD2_def_setup:00000000 LD2_def_setup + /tmp/ccEQxcUB.s:13326 .bss.Curr_setup:00000000 Curr_setup + /tmp/ccEQxcUB.s:13354 .bss.LD1_curr_setup:00000000 LD1_curr_setup + /tmp/ccEQxcUB.s:13347 .bss.LD2_curr_setup:00000000 LD2_curr_setup + /tmp/ccEQxcUB.s:13454 .bss.UART_DATA:00000000 UART_DATA + /tmp/ccEQxcUB.s:13548 .bss.SD_SEEK:00000000 SD_SEEK + /tmp/ccEQxcUB.s:13541 .bss.SD_SLIDE:00000000 SD_SLIDE + /tmp/ccEQxcUB.s:13375 .bss.test:00000000 test + /tmp/ccEQxcUB.s:13479 .bss.CPU_state:00000000 CPU_state + /tmp/ccEQxcUB.s:13388 .bss.COMMAND:00000000 COMMAND + /tmp/ccEQxcUB.s:6837 .text.DS1809_Pulse:00000000 $t + /tmp/ccEQxcUB.s:6842 .text.DS1809_Pulse:00000000 DS1809_Pulse + /tmp/ccEQxcUB.s:6951 .text.DS1809_Pulse:00000068 $d + /tmp/ccEQxcUB.s:6956 .text.Get_ADC:00000000 $t + /tmp/ccEQxcUB.s:6961 .text.Get_ADC:00000000 Get_ADC + /tmp/ccEQxcUB.s:6981 .text.Get_ADC:0000000c $d + /tmp/ccEQxcUB.s:6987 .text.Get_ADC:00000012 $t + /tmp/ccEQxcUB.s:7085 .text.Get_ADC:00000068 $d + /tmp/ccEQxcUB.s:13639 .bss.hadc1:00000000 hadc1 + /tmp/ccEQxcUB.s:13632 .bss.hadc3:00000000 hadc3 + /tmp/ccEQxcUB.s:7091 .text.Set_LTEC:00000000 $t + /tmp/ccEQxcUB.s:7097 .text.Set_LTEC:00000000 Set_LTEC + /tmp/ccEQxcUB.s:7131 .text.Set_LTEC:00000018 $d + /tmp/ccEQxcUB.s:7136 .text.Set_LTEC:0000001c $t + /tmp/ccEQxcUB.s:7555 .text.Set_LTEC:00000164 $d + /tmp/ccEQxcUB.s:7564 .text.Decode_uart:00000000 $t + /tmp/ccEQxcUB.s:7569 .text.Decode_uart:00000000 Decode_uart + /tmp/ccEQxcUB.s:8132 .text.Decode_uart:000002cc $d + /tmp/ccEQxcUB.s:8147 .text.Advanced_Controller_Temp:00000000 $t + /tmp/ccEQxcUB.s:8153 .text.Advanced_Controller_Temp:00000000 Advanced_Controller_Temp + /tmp/ccEQxcUB.s:8322 .text.Advanced_Controller_Temp:000000cc $d + /tmp/ccEQxcUB.s:8332 .text.CalculateChecksum:00000000 $t + /tmp/ccEQxcUB.s:8338 .text.CalculateChecksum:00000000 CalculateChecksum + /tmp/ccEQxcUB.s:8383 .text.CheckChecksum:00000000 $t + /tmp/ccEQxcUB.s:8389 .text.CheckChecksum:00000000 CheckChecksum + /tmp/ccEQxcUB.s:8451 .text.CheckChecksum:0000003c $d + /tmp/ccEQxcUB.s:13416 .bss.UART_header:00000000 UART_header + /tmp/ccEQxcUB.s:13409 .bss.CS_result:00000000 CS_result + /tmp/ccEQxcUB.s:8458 .rodata.SD_SAVE.str1.4:00000000 $d + /tmp/ccEQxcUB.s:8462 .text.SD_SAVE:00000000 $t + /tmp/ccEQxcUB.s:8468 .text.SD_SAVE:00000000 SD_SAVE + /tmp/ccEQxcUB.s:8537 .text.SD_SAVE:00000030 $d + /tmp/ccEQxcUB.s:8544 .text.SD_READ:00000000 $t + /tmp/ccEQxcUB.s:8550 .text.SD_READ:00000000 SD_READ + /tmp/ccEQxcUB.s:8628 .text.SD_READ:0000003c $d + /tmp/ccEQxcUB.s:8636 .text.SD_REMOVE:00000000 $t + /tmp/ccEQxcUB.s:8642 .text.SD_REMOVE:00000000 SD_REMOVE + /tmp/ccEQxcUB.s:8710 .text.SD_REMOVE:00000034 $d + /tmp/ccEQxcUB.s:8717 .text.USART_TX:00000000 $t + /tmp/ccEQxcUB.s:8723 .text.USART_TX:00000000 USART_TX + /tmp/ccEQxcUB.s:8798 .text.USART_TX:00000028 $d + /tmp/ccEQxcUB.s:8803 .text.USART_TX_DMA:00000000 $t + /tmp/ccEQxcUB.s:8809 .text.USART_TX_DMA:00000000 USART_TX_DMA + /tmp/ccEQxcUB.s:8878 .text.USART_TX_DMA:00000038 $d + ARM GAS /tmp/ccEQxcUB.s page 664 - /tmp/ccwR4KB7.s:9049 .text.MX_TIM10_Init:00000000 $t - /tmp/ccwR4KB7.s:9054 .text.MX_TIM10_Init:00000000 MX_TIM10_Init - /tmp/ccwR4KB7.s:9103 .text.MX_TIM10_Init:00000024 $d - /tmp/ccwR4KB7.s:9109 .text.MX_UART8_Init:00000000 $t - /tmp/ccwR4KB7.s:9114 .text.MX_UART8_Init:00000000 MX_UART8_Init - /tmp/ccwR4KB7.s:9175 .text.MX_UART8_Init:00000030 $d - /tmp/ccwR4KB7.s:12544 .bss.huart8:00000000 huart8 - /tmp/ccwR4KB7.s:9181 .text.MX_TIM8_Init:00000000 $t - /tmp/ccwR4KB7.s:9186 .text.MX_TIM8_Init:00000000 MX_TIM8_Init - /tmp/ccwR4KB7.s:9295 .text.MX_TIM8_Init:00000064 $d - /tmp/ccwR4KB7.s:12565 .bss.htim8:00000000 htim8 - /tmp/ccwR4KB7.s:9301 .text.MX_TIM11_Init:00000000 $t - /tmp/ccwR4KB7.s:9306 .text.MX_TIM11_Init:00000000 MX_TIM11_Init - /tmp/ccwR4KB7.s:9416 .text.MX_TIM11_Init:00000068 $d - /tmp/ccwR4KB7.s:12551 .bss.htim11:00000000 htim11 - /tmp/ccwR4KB7.s:9422 .text.MX_TIM4_Init:00000000 $t - /tmp/ccwR4KB7.s:9427 .text.MX_TIM4_Init:00000000 MX_TIM4_Init - /tmp/ccwR4KB7.s:9582 .text.MX_TIM4_Init:0000009c $d - /tmp/ccwR4KB7.s:12572 .bss.htim4:00000000 htim4 - /tmp/ccwR4KB7.s:9588 .text.SystemClock_Config:00000000 $t - /tmp/ccwR4KB7.s:9594 .text.SystemClock_Config:00000000 SystemClock_Config - /tmp/ccwR4KB7.s:9753 .text.SystemClock_Config:000000ac $d - /tmp/ccwR4KB7.s:9759 .text.main:00000000 $t - /tmp/ccwR4KB7.s:9765 .text.main:00000000 main - /tmp/ccwR4KB7.s:10169 .text.main:00000140 $d - /tmp/ccwR4KB7.s:10180 .text.main:0000016c $t - /tmp/ccwR4KB7.s:10433 .text.main:00000278 $d - /tmp/ccwR4KB7.s:12434 .bss.CPU_state_old:00000000 CPU_state_old - /tmp/ccwR4KB7.s:12428 .bss.UART_transmission_request:00000000 UART_transmission_request - /tmp/ccwR4KB7.s:12422 .bss.State_Data:00000000 State_Data - /tmp/ccwR4KB7.s:12363 .bss.temp16:00000000 temp16 - /tmp/ccwR4KB7.s:10457 .text.main:000002cc $t - /tmp/ccwR4KB7.s:11007 .text.main:00000540 $d - /tmp/ccwR4KB7.s:12273 .bss.LD1_param:00000000 LD1_param - /tmp/ccwR4KB7.s:12266 .bss.LD2_param:00000000 LD2_param - /tmp/ccwR4KB7.s:12523 .bss.TO6_stop:00000000 TO6_stop - /tmp/ccwR4KB7.s:11029 .text.main:0000058c $t - /tmp/ccwR4KB7.s:11412 .text.main:000007a8 $d - /tmp/ccwR4KB7.s:12453 .bss.TIM10_period:00000000 TIM10_period - /tmp/ccwR4KB7.s:11437 .text.main:000007fc $t - /tmp/ccwR4KB7.s:12003 .text.main:00000a9c $d - /tmp/ccwR4KB7.s:12259 .bss.LD_blinker:00000000 LD_blinker - /tmp/ccwR4KB7.s:12035 .rodata.ad9102_example2_regval:00000000 $d - /tmp/ccwR4KB7.s:12106 .rodata.ad9102_example4_regval:00000000 $d - /tmp/ccwR4KB7.s:12177 .rodata.ad9102_reg_addr:00000000 $d - /tmp/ccwR4KB7.s:12249 .bss.task:00000000 $d - /tmp/ccwR4KB7.s:12256 .bss.LD_blinker:00000000 $d - /tmp/ccwR4KB7.s:12263 .bss.LD2_param:00000000 $d - /tmp/ccwR4KB7.s:12270 .bss.LD1_param:00000000 $d - /tmp/ccwR4KB7.s:12277 .bss.Def_setup:00000000 $d - /tmp/ccwR4KB7.s:12284 .bss.Curr_setup:00000000 $d - /tmp/ccwR4KB7.s:12291 .bss.LD2_def_setup:00000000 $d - /tmp/ccwR4KB7.s:12298 .bss.LD1_def_setup:00000000 $d - /tmp/ccwR4KB7.s:12305 .bss.LD2_curr_setup:00000000 $d - /tmp/ccwR4KB7.s:12312 .bss.LD1_curr_setup:00000000 $d - /tmp/ccwR4KB7.s:12319 .bss.sizeoffile:00000000 $d - /tmp/ccwR4KB7.s:12326 .bss.fgoto:00000000 $d - ARM GAS /tmp/ccwR4KB7.s page 636 + /tmp/ccEQxcUB.s:8884 .text.Error_Handler:00000000 $t + /tmp/ccEQxcUB.s:8890 .text.Error_Handler:00000000 Error_Handler + /tmp/ccEQxcUB.s:8921 .text.MX_ADC1_Init:00000000 $t + /tmp/ccEQxcUB.s:8926 .text.MX_ADC1_Init:00000000 MX_ADC1_Init + /tmp/ccEQxcUB.s:9115 .text.MX_ADC1_Init:000000bc $d + /tmp/ccEQxcUB.s:9122 .text.MX_ADC3_Init:00000000 $t + /tmp/ccEQxcUB.s:9127 .text.MX_ADC3_Init:00000000 MX_ADC3_Init + /tmp/ccEQxcUB.s:9234 .text.MX_ADC3_Init:00000060 $d + /tmp/ccEQxcUB.s:9241 .text.MX_USART1_UART_Init:00000000 $t + /tmp/ccEQxcUB.s:9246 .text.MX_USART1_UART_Init:00000000 MX_USART1_UART_Init + /tmp/ccEQxcUB.s:9645 .text.MX_USART1_UART_Init:0000017c $d + /tmp/ccEQxcUB.s:9654 .text.MX_TIM10_Init:00000000 $t + /tmp/ccEQxcUB.s:9659 .text.MX_TIM10_Init:00000000 MX_TIM10_Init + /tmp/ccEQxcUB.s:9708 .text.MX_TIM10_Init:00000024 $d + /tmp/ccEQxcUB.s:9714 .text.MX_UART8_Init:00000000 $t + /tmp/ccEQxcUB.s:9719 .text.MX_UART8_Init:00000000 MX_UART8_Init + /tmp/ccEQxcUB.s:9780 .text.MX_UART8_Init:00000030 $d + /tmp/ccEQxcUB.s:13583 .bss.huart8:00000000 huart8 + /tmp/ccEQxcUB.s:9786 .text.MX_TIM8_Init:00000000 $t + /tmp/ccEQxcUB.s:9791 .text.MX_TIM8_Init:00000000 MX_TIM8_Init + /tmp/ccEQxcUB.s:9900 .text.MX_TIM8_Init:00000064 $d + /tmp/ccEQxcUB.s:13611 .bss.htim8:00000000 htim8 + /tmp/ccEQxcUB.s:9906 .text.MX_TIM11_Init:00000000 $t + /tmp/ccEQxcUB.s:9911 .text.MX_TIM11_Init:00000000 MX_TIM11_Init + /tmp/ccEQxcUB.s:10021 .text.MX_TIM11_Init:00000068 $d + /tmp/ccEQxcUB.s:13590 .bss.htim11:00000000 htim11 + /tmp/ccEQxcUB.s:10027 .text.MX_TIM4_Init:00000000 $t + /tmp/ccEQxcUB.s:10032 .text.MX_TIM4_Init:00000000 MX_TIM4_Init + /tmp/ccEQxcUB.s:10187 .text.MX_TIM4_Init:0000009c $d + /tmp/ccEQxcUB.s:13618 .bss.htim4:00000000 htim4 + /tmp/ccEQxcUB.s:10193 .text.MX_TIM1_Init:00000000 $t + /tmp/ccEQxcUB.s:10198 .text.MX_TIM1_Init:00000000 MX_TIM1_Init + /tmp/ccEQxcUB.s:10389 .text.MX_TIM1_Init:000000bc $d + /tmp/ccEQxcUB.s:13604 .bss.htim1:00000000 htim1 + /tmp/ccEQxcUB.s:10395 .text.SystemClock_Config:00000000 $t + /tmp/ccEQxcUB.s:10401 .text.SystemClock_Config:00000000 SystemClock_Config + /tmp/ccEQxcUB.s:10560 .text.SystemClock_Config:000000ac $d + /tmp/ccEQxcUB.s:10566 .text.main:00000000 $t + /tmp/ccEQxcUB.s:10572 .text.main:00000000 main + /tmp/ccEQxcUB.s:10984 .text.main:0000014c $d + /tmp/ccEQxcUB.s:10997 .text.main:00000180 $t + /tmp/ccEQxcUB.s:11250 .text.main:0000028c $d + /tmp/ccEQxcUB.s:13473 .bss.CPU_state_old:00000000 CPU_state_old + /tmp/ccEQxcUB.s:13467 .bss.UART_transmission_request:00000000 UART_transmission_request + /tmp/ccEQxcUB.s:13461 .bss.State_Data:00000000 State_Data + /tmp/ccEQxcUB.s:13402 .bss.temp16:00000000 temp16 + /tmp/ccEQxcUB.s:11275 .text.main:000002e4 $t + /tmp/ccEQxcUB.s:11937 .text.main:000005b0 $d + /tmp/ccEQxcUB.s:13312 .bss.LD1_param:00000000 LD1_param + /tmp/ccEQxcUB.s:13305 .bss.LD2_param:00000000 LD2_param + /tmp/ccEQxcUB.s:13562 .bss.TO6_stop:00000000 TO6_stop + /tmp/ccEQxcUB.s:11959 .text.main:000005f8 $t + /tmp/ccEQxcUB.s:12444 .text.main:0000087c $d + /tmp/ccEQxcUB.s:13492 .bss.TIM10_period:00000000 TIM10_period + /tmp/ccEQxcUB.s:12476 .text.main:000008ec $t + /tmp/ccEQxcUB.s:13042 .text.main:00000b8c $d + /tmp/ccEQxcUB.s:13298 .bss.LD_blinker:00000000 LD_blinker + ARM GAS /tmp/ccEQxcUB.s page 665 - /tmp/ccwR4KB7.s:12333 .bss.test:00000000 $d - /tmp/ccwR4KB7.s:12342 .bss.fresult:00000000 fresult - /tmp/ccwR4KB7.s:12343 .bss.fresult:00000000 $d - /tmp/ccwR4KB7.s:12346 .bss.COMMAND:00000000 $d - /tmp/ccwR4KB7.s:12353 .bss.Long_Data:00000000 $d - /tmp/ccwR4KB7.s:12360 .bss.temp16:00000000 $d - /tmp/ccwR4KB7.s:12367 .bss.CS_result:00000000 $d - /tmp/ccwR4KB7.s:12374 .bss.UART_header:00000000 $d - /tmp/ccwR4KB7.s:12381 .bss.UART_rec_incr:00000000 $d - /tmp/ccwR4KB7.s:12391 .bss.TIM10_coflag:00000000 $d - /tmp/ccwR4KB7.s:12397 .bss.u_rx_flg:00000000 $d - /tmp/ccwR4KB7.s:12403 .bss.u_tx_flg:00000000 $d - /tmp/ccwR4KB7.s:12409 .bss.flg_tmt:00000000 $d - /tmp/ccwR4KB7.s:12412 .bss.UART_DATA:00000000 $d - /tmp/ccwR4KB7.s:12419 .bss.State_Data:00000000 $d - /tmp/ccwR4KB7.s:12429 .bss.UART_transmission_request:00000000 $d - /tmp/ccwR4KB7.s:12435 .bss.CPU_state_old:00000000 $d - /tmp/ccwR4KB7.s:12441 .bss.CPU_state:00000000 $d - /tmp/ccwR4KB7.s:12446 .bss.uart_buf:00000000 uart_buf - /tmp/ccwR4KB7.s:12447 .bss.uart_buf:00000000 $d - /tmp/ccwR4KB7.s:12450 .bss.TIM10_period:00000000 $d - /tmp/ccwR4KB7.s:12457 .bss.TO10_counter:00000000 $d - /tmp/ccwR4KB7.s:12464 .bss.TO10:00000000 $d - /tmp/ccwR4KB7.s:12471 .bss.TO7_PID:00000000 $d - /tmp/ccwR4KB7.s:12478 .bss.TO7_before:00000000 $d - /tmp/ccwR4KB7.s:12485 .bss.TO7:00000000 $d - /tmp/ccwR4KB7.s:12495 .bss.temp32:00000000 temp32 - /tmp/ccwR4KB7.s:12492 .bss.temp32:00000000 $d - /tmp/ccwR4KB7.s:12499 .bss.SD_SLIDE:00000000 $d - /tmp/ccwR4KB7.s:12506 .bss.SD_SEEK:00000000 $d - /tmp/ccwR4KB7.s:12513 .bss.TO6_uart:00000000 $d - /tmp/ccwR4KB7.s:12520 .bss.TO6_stop:00000000 $d - /tmp/ccwR4KB7.s:12527 .bss.TO6_before:00000000 $d - /tmp/ccwR4KB7.s:12534 .bss.TO6:00000000 $d - /tmp/ccwR4KB7.s:12541 .bss.huart8:00000000 $d - /tmp/ccwR4KB7.s:12548 .bss.htim11:00000000 $d - /tmp/ccwR4KB7.s:12555 .bss.htim10:00000000 $d - /tmp/ccwR4KB7.s:12562 .bss.htim8:00000000 $d - /tmp/ccwR4KB7.s:12569 .bss.htim4:00000000 $d - /tmp/ccwR4KB7.s:12576 .bss.hsd1:00000000 $d - /tmp/ccwR4KB7.s:12583 .bss.hadc3:00000000 $d - /tmp/ccwR4KB7.s:12590 .bss.hadc1:00000000 $d + /tmp/ccEQxcUB.s:13074 .rodata.ad9102_example2_regval:00000000 $d + /tmp/ccEQxcUB.s:13145 .rodata.ad9102_example4_regval:00000000 $d + /tmp/ccEQxcUB.s:13216 .rodata.ad9102_reg_addr:00000000 $d + /tmp/ccEQxcUB.s:13288 .bss.task:00000000 $d + /tmp/ccEQxcUB.s:13295 .bss.LD_blinker:00000000 $d + /tmp/ccEQxcUB.s:13302 .bss.LD2_param:00000000 $d + /tmp/ccEQxcUB.s:13309 .bss.LD1_param:00000000 $d + /tmp/ccEQxcUB.s:13316 .bss.Def_setup:00000000 $d + /tmp/ccEQxcUB.s:13323 .bss.Curr_setup:00000000 $d + /tmp/ccEQxcUB.s:13330 .bss.LD2_def_setup:00000000 $d + /tmp/ccEQxcUB.s:13337 .bss.LD1_def_setup:00000000 $d + /tmp/ccEQxcUB.s:13344 .bss.LD2_curr_setup:00000000 $d + /tmp/ccEQxcUB.s:13351 .bss.LD1_curr_setup:00000000 $d + /tmp/ccEQxcUB.s:13358 .bss.sizeoffile:00000000 $d + /tmp/ccEQxcUB.s:13365 .bss.fgoto:00000000 $d + /tmp/ccEQxcUB.s:13372 .bss.test:00000000 $d + /tmp/ccEQxcUB.s:13381 .bss.fresult:00000000 fresult + /tmp/ccEQxcUB.s:13382 .bss.fresult:00000000 $d + /tmp/ccEQxcUB.s:13385 .bss.COMMAND:00000000 $d + /tmp/ccEQxcUB.s:13392 .bss.Long_Data:00000000 $d + /tmp/ccEQxcUB.s:13399 .bss.temp16:00000000 $d + /tmp/ccEQxcUB.s:13406 .bss.CS_result:00000000 $d + /tmp/ccEQxcUB.s:13413 .bss.UART_header:00000000 $d + /tmp/ccEQxcUB.s:13420 .bss.UART_rec_incr:00000000 $d + /tmp/ccEQxcUB.s:13430 .bss.TIM10_coflag:00000000 $d + /tmp/ccEQxcUB.s:13436 .bss.u_rx_flg:00000000 $d + /tmp/ccEQxcUB.s:13442 .bss.u_tx_flg:00000000 $d + /tmp/ccEQxcUB.s:13448 .bss.flg_tmt:00000000 $d + /tmp/ccEQxcUB.s:13451 .bss.UART_DATA:00000000 $d + /tmp/ccEQxcUB.s:13458 .bss.State_Data:00000000 $d + /tmp/ccEQxcUB.s:13468 .bss.UART_transmission_request:00000000 $d + /tmp/ccEQxcUB.s:13474 .bss.CPU_state_old:00000000 $d + /tmp/ccEQxcUB.s:13480 .bss.CPU_state:00000000 $d + /tmp/ccEQxcUB.s:13485 .bss.uart_buf:00000000 uart_buf + /tmp/ccEQxcUB.s:13486 .bss.uart_buf:00000000 $d + /tmp/ccEQxcUB.s:13489 .bss.TIM10_period:00000000 $d + /tmp/ccEQxcUB.s:13496 .bss.TO10_counter:00000000 $d + /tmp/ccEQxcUB.s:13503 .bss.TO10:00000000 $d + /tmp/ccEQxcUB.s:13510 .bss.TO7_PID:00000000 $d + /tmp/ccEQxcUB.s:13517 .bss.TO7_before:00000000 $d + /tmp/ccEQxcUB.s:13524 .bss.TO7:00000000 $d + /tmp/ccEQxcUB.s:13534 .bss.temp32:00000000 temp32 + /tmp/ccEQxcUB.s:13531 .bss.temp32:00000000 $d + /tmp/ccEQxcUB.s:13538 .bss.SD_SLIDE:00000000 $d + /tmp/ccEQxcUB.s:13545 .bss.SD_SEEK:00000000 $d + /tmp/ccEQxcUB.s:13552 .bss.TO6_uart:00000000 $d + /tmp/ccEQxcUB.s:13559 .bss.TO6_stop:00000000 $d + /tmp/ccEQxcUB.s:13566 .bss.TO6_before:00000000 $d + /tmp/ccEQxcUB.s:13573 .bss.TO6:00000000 $d + /tmp/ccEQxcUB.s:13580 .bss.huart8:00000000 $d + /tmp/ccEQxcUB.s:13587 .bss.htim11:00000000 $d + /tmp/ccEQxcUB.s:13594 .bss.htim10:00000000 $d + /tmp/ccEQxcUB.s:13601 .bss.htim1:00000000 $d + /tmp/ccEQxcUB.s:13608 .bss.htim8:00000000 $d + /tmp/ccEQxcUB.s:13615 .bss.htim4:00000000 $d + /tmp/ccEQxcUB.s:13622 .bss.hsd1:00000000 $d + /tmp/ccEQxcUB.s:13629 .bss.hadc3:00000000 $d + ARM GAS /tmp/ccEQxcUB.s page 666 + + + /tmp/ccEQxcUB.s:13636 .bss.hadc1:00000000 $d UNDEFINED SYMBOLS HAL_GPIO_WritePin @@ -38154,11 +39904,9 @@ HAL_GPIO_ReadPin Mount_SD Seek_Read_File Unmount_SD +HAL_Delay HAL_ADC_Start HAL_ADC_PollForConversion - ARM GAS /tmp/ccwR4KB7.s page 637 - - HAL_ADC_GetValue HAL_ADC_Stop Remove_File @@ -38176,12 +39924,13 @@ HAL_TIMEx_MasterConfigSynchronization HAL_TIM_PWM_Init HAL_TIM_PWM_ConfigChannel HAL_TIM_MspPostInit +HAL_TIMEx_ConfigBreakDeadTime HAL_RCC_OscConfig HAL_PWREx_EnableOverDrive HAL_RCC_ClockConfig HAL_Init MX_FATFS_Init +HAL_TIM_PWM_Start HAL_TIM_Base_Start_IT HAL_TIM_PWM_Stop -HAL_TIM_PWM_Start HAL_TIM_Base_Stop diff --git a/build/main.o b/build/main.o index 7b53f962411cc337e77755a7c8197d393918a404..73ed151d13b36ea465ba5c79eefa472cea117fcb 100644 GIT binary patch literal 175860 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

  • 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 literal 162152 zcmd?Sd3aPs_CH*8Z{KuxZYSyFcA!ZDbkYF=2@n!C0U;z9mV_M@0W~aYK-91(7!evo z1!a_wpn@ACI_?Unqo^nfD&q>Gqacn5N?ZmEt8xE*PA#1VGxL6*@9%y8dU>9@UFV!n zojO%@>eO;?bkRBGrJQr7|8bVXnkdF9E;2}Dbr*mf_9T0PvFBKWn{7Sn_Pu=6m6Y@9 z$Of0sY#o=Iv}aqJkqv+JPyE@}kog_sYl;$oHh<6hF3}kHoxv__bp67@N9q}iD{~J^ zt6*6ZD%Mu)tr&TNO>Q-L!sI~K+R0UeMKyW6h&^}1hJ>=T%ZpD$jI^ogmzyUdCa>jp zd&@qpWLe3jTaO!|KYslE55~7{vdV5~EH#U=)>fDsL@m9IB6gVVXJ4}YOEwtGj0SF` zRT;}(KVD=^5Wf*)t@zz)>=nN(C2f|Fr%VvPk(9OKcWcUC@yoK(W(#@N1o0cmS}T6H zX6+TftRQWUkQYptvt)knvb3rt%iKp+c4|CwS@pKVy!!PR%BVJ$H_6QEVo?50FB}`02{SMs?hgm3se4!5d)4RxXK`n&)n>Hgwyiy6J}``eNF>PDn_Xg%dy9$6W`;birq zxX*^4+CTQLV%O*R9mV$-AFBu%os6B4P5CcZ4K~WsDv>IFgoo;XJBk_mxfJP5a0d5& z&Ii9sv^tcfS2_(vNv>V(hB=ib4MnB{ZytFfGCFIB@X2u7VXG=r8jK`s*My8`P&5C~ zDLql&s_fpyEF2UveugZi?6XQ1PHwiGU3L%3#W!2dg>qcfZHl^kZ(*;p-mHkZjH0UN z;z|=rS+-|?&&Gh?Dl2RZFtU$#e{jvt2P}>+xGnpg|)vNJ2vptAG4OHC7)y$ zC+y7_nh0b=J@1^eXGWVy++{62>J+1t|>Uq{b>#4SV^-NiZR_y=d4~iGEA6m#U$STSV zsL|lH#(sV`FQoWEqtUpVLz*C@#hE^dQrdWCYtd%X#U{rInTjf}QlByp68-ZTMgHfC zPOw2a|4VO36QkO^H#q;r8(7#LR=c=)Z?MYtRX(^W)*nKp{w>-cI)B?R@`epJlqQu1 zN?VsQ(at5MT>LIBmGLxES|R9+jXclz)W|mX`?H^gSGYdyu`#K$wI`{axgY*9?#FuG zu8R?OqUzGphU7S2XEh{Qu3xN^tv5b*GBTk2L%y2#dvH@We{j=_M_JO4UA$eZ6DJn2 zovdB(MB-KS>u(s4M89n}rZ?~;wu`mvAZji-mT%rwOp+WyZxH#8BEO~4l`my&1X+6lk+SIOu+TL>) z&sJ^ER&CE#ZO`tok>Bme)@SS1r-X&Y*)grpmaQLu4tga!+VbpPqK%JGd$X5D+sCrs zLIgw01}@oPm9{C(+~_Oi9Zw(2f{jU?FqT=-vCL{|xKC7FHn<_#y{^<~NHSc%7{}5! zZo*g&|8Qk#ac0lcW(mfKOM5X(W=T8HBgwMY&nlI+xBYq9QE55LR90tBlB1O=M{RPO z<(s^G`6fAXdhT^A4V6+{=<$r4g+Wm_KVycnFt4@tqrc}rU4Q!QrdZ4-+oF_=UnIK2Mg5kujD3sJ@*n zH!!B0%D-9PMwW|_F_nLzJ_wmVQUKb9MD`;76i-om*DV zf`(WNdq3wY6}>QUvFJI`$Fmm6d>A8L_{_OZ&a^U5bT<&^f`GDg%Ft)rPn5NE2Wvb68=M7k;yJmmnG_&NORr~ zzX%|8=S6H3FY-Jm5iD#DbE=RkJX=`IKUyhn-@vlHb@6p}ov$vT?iMp=kzFP02k~c91C0jA_L_-Pbx1*ZS zj;T$$WGm1fLP5XOCbSL&6#(;t}~B?IXztv8SZ9dew%UESBkcM4TV8jXJZ=RcF=3)w%0Bl}(sge1eUc zFm1w21HanO$UkW8{U)nrcf-1|My=7#Ts^YE^t{*Tk60btcV>(*9@W+{$j#M4LVE9P zl0>F@YDb<}g4T^ZQ8hKb)?V$a!~C3+P#X*<)+W{Y>)hew+W2zMqaiWIQ!B%$b!r9u zdhnYfS67@nRGToT{(GCcmZhOhk>a#zX=qcVShtC00kz3cZ6cdTHW+A+FJg9Z-D$OV z-;p`ocr-`YLE~xEk_-}R(;ZC`_8%l3v@E8j@IBd5e@sig|4%KYcG6h@=dAzU&W>X2 zA}Mn0A}P9^6g8-wA<@oA_|GGk9y4;0IsbPf_djY6`6S}t|D-)kwTDI9L-CB-!$o^S zXSBxyPfQAiT|VaFtleJ#~JM=L~UNDXH;wQJh~5> zmOfM4+X{C|S*4k$-6^HwPAS72*$^3%h8wEtIZxu`Vbmp;nYFGu{wVlGG*j_gl7@8~ zF~4F>W&E)CqO}zhKvx;K+Y6>%GI0+Vw?-ANVg^0CHOfB)l5+cJc0i1NZVkLb%_ zGqwd_TY(Ah#|>KXF~72H9Z}Gu`303^@3dttuH!uXQAw~sbRA=;ZHVE?5HwJL>&2# z_5|3U#!uRU*e7g}vF|_G(v$iKwv-)vTG`_K?``q3qOOdwl99uQ4;(S5%ee957|j(H zz8`yqW>OV+kr+PFRo4FdhOx}7M#s+!@7|P{`{SOqWdn~Tr=&&Jl(DS6i}zNg%}QI6 zHfO?|3A5JD+BC4|F zv7|TmHM0D|$choGLEVIO%kVlpZ$w&NwzrZzes4vZ_)V)YPe!KxnHMPB-S|Q%3&?Hw z9ofL9;BK~o&E8va?J(o0#~k|&8&Cp&@)Q(*!@9AK$9K&wqY}jpeo;c^U4JS)a~LG~ zX2VvqDEIoEmz8a6+#0GJwykk{h-F_^mQf)Rb|fCP56LQZMRz2Rh#g5}mRzZ`O7&i4 zlGt-Z)IQ^a;Z$0#30b8)nlqv~_+)fX5>ndTC)s84j3ig{p)vbUc?ytxnU^b{%*!ao zv7eH43hrpl^=odXw0hJ=iWGGI%t70?hdQF|TSJk0_~tBGp5+|g)k*9ZI+X=0f*U)Q z@vO9}gY|8~X{8;8<_Jl+JXDb>a-j+q_Q1E|;7{Mi+*QIk|8M@mznLF<;b}$@smY!&tVJlP6B1rYEIkMtgbY4dD(drF@z?oynezY&uadZ{R|u zKh(=RxKQbL_1-_>_Segud8qWW`cUZ}eO^bEW=`-`p2Hf}N9bmj_cn9FqHd$_#0B!K zS1x*tWtElPjT>77H@2H_%HyB%f|K>7bpMt$NJ#i;k^#7VJA1esYdJ#w&h(AZdgS$q z75A?2hXPe!w`S_g6ZLg!roMKl@6CE)@#wZnLz`wav=SPE&1j(e!iS*2pP8)6`He4*V*Tv=ZDWar8^ad3AA1@xDy@QNJ|*iw&wm)nT}G>D zxGHzqw&O+SRPh@z*Nfk+=0WkxobW6mcczNph_hb&ZgmcdUltC}7V_{^@f!)R7r$G> z2gNTd49^kr!l`pEU)DGB__D&t<;xE)ew^Ng;LXBi)%PF1RlMtX3vUFzk8j&e0-xT+RO*!gi zHd)^2bG-jc5!g8b>xyD!j&6=TLe9}sGIynp8*~O^k-m)n#l|%j8W{gcxF4}8p8fyf zeb&-awv2~e`};LIp;1M=Fn!al#f_g;4fa2mSeCww_9eB&*3QAl=FP4xPTG}-TkeGH zOyMW)vS7qb?~`yFA9$68cnEvk(673WsT1+9bZGfG-Na6bF+c9#cxJp970*V(%W%Mvij&*qU z-+!-X&)v8IH(<4RhgECV<_^gnX5c(hR8U-TLj}Bh@(q(CjiLN)Q`!$*JY`#jmH8Uz z{QTm{;vONV+b%Da#Z9>zXRhg`>7sXwUh;rzfIGcZzAf{-WPoD|j+|LLH^+nH5*)cs z-?iBW#}XXbYZaR<@xGnvYA%Uh5Ah<-Skme32n-3tw8MH3c<=H63blYC6_*s>!X%t67<4K0+23 z;XEL7ET^d9zQ`y#uVX(e&g=NqH+W6wTY86xNHnK|x|djodx?&Bvg}TExpnULd3O{I z@6dERF|`A3C)Pze-bvEDJG7*?@`r{o#n@%jZkxOyt6{5Aj2mE07h{xlKI_EF*-d#C z&EpQGsr-qpW128qi)H>@=%qdRyP=F`PHaJ(*xH$)tO@X`FAF=@cB$)HmtW@#cdIR^ zE39)JjSO;~T-LpF)4k7$l_m20*vVX95yrc3to;?;#r==)IC;)xhTKQ0bEW4w&k#?U zS@C?h1bf#TD!f^*SJ0S?5}Q3+#4p3YL39sm53zwIdn9@ru)eHf;I~aSr<6=Nt(1Is zvjF>*=ayrhxN5E1xLUWGEspTA63mo|qQ(+c=UtnzB93*{x*nC0pmH<4OQQM3AC+%> z^EZ3{=B z47>K7Jl-CThg)&kZsSm&zsWKA!XGrV%Mv@z*Vy+NZ89XAj4|LP6h zaf9g=^NRG~E<%h(wzxgOJ&HK7N5;}^WeDF|z`u*rD$*;>6GbI7t2k_ey@eh`rUc3v ziK|*=C9N8H;)U7%Rmrd_WtCGa^>5frbw7g0fSWVSVH)|7C)SO%sNC4N+PF+Z*pa_E z^-q?oyO=6*cUN-b2HleXFMe+v)+4-o%I+DwaH5Cz-92^pjJugxXq;SE(8L`(wS4~q zu~LlOb=|Nrbjrp}vpi#;+I5ZO;HFS>X2+bydCY123hd4?o5M7lE5%CEVgGd6u~$`= zO{h#0v+Xj}V_=86c&Ul!vrBodch}T%L!Hd953ib9brH^$7X!zEcxWm5bJir`B|PWx zofE;2&;9IE{=k^VaKk~k=M@OvaZbyH_!;0Xu)|yU@N$Gn=HVp6t z_q!UBT!p1sr5#J?}l$QyUgxe!NjXvVnUBZN~QwbH!H= zbMaopOFULrR$7cQ^8Tqkbnv?O8rjN{(t@a_zwHb~HLa_c?_H}lr$^h9A-p+N%)X## z+qYjQm$e)g9O{U9;ln(GpI3PCg_=`kBYl6yUjH;_{9h0^iHH;4Nztj>;-whHrNW2V zu}>E-feicToisuV%09cr%(eF{ghdO>_EyX3c^J0W=`FeKQ z?!)ftU**?-eb#J}o)hckbIL=f`FRz*n&TXCm5g?!S3)lF2F}2jE3Ph6i5sDaj+@ck z1c72XSMM5AR*Rd5-G^P(y>LIV`>=`c8{1cJI^q)d6lB+XhfRFp>8tpnv9g9`>hpKS zVvo8v96hoxBA3VPTQL$R9LnWZuW=_de^GzeapAqPL`IH4y+LiV|t6kMpv;KOr z*T;pT_m1vt>I*r?Iw`CvzLVUBa;!tovbGf+%Gy@ZJ%BiItDDz8c$3Ri{@Gtn9gq9P zDY<)7`bPSaaC`ml_2012I)*lw{e++87JV);k7Z`ls*XV!lZ?OQUaUrU4*ZQqvID;N#Yl!} zE>vTleudHby?&n1Ft=Hsy;8_7$K0PF_STb|88JC~Z|(+D|Eehd|K^G?0I_5MERriiAy$OGSP?$@ zx^Hwxau#+Z6*u6!%Ke4I3UC*40qZ%0;g@$yi7y@}-_#u4Bflie7cugWAFq5VM`3gS zBetEwj(>@TkJq<`9a)HJcc)FuU36;f<1DK!_8M)m*C@gJZo4Y2jAyp0!aKmKKYkqa zl6KW*e_aOd@VIpUm;aE#usb!lIcX(2(TA~ui}vl2Flox=vRQEW6D!^X04>|AypJD-hb7qAIzBAdi6WEZiESsT`xJz1x_ z(8Xt^Vu&y7z}O8rcqwy69~mBZB}4}I{Nclo%l%6pehha*5HCk8?!)kSyNMrHc6-KV zyKaPFuIrgDj9u+op2gTTu61t4u5)EW@dDR<9T{8by0;x;i>yaH=qYP8^l|Gt48CC< zN+zYdQg8&eKEaOOvIc@5XMK>snA_S113cFDHmK1$3(t6~5Ae3t8rpo;W!X3(SXYG^ zOSICxxDK+8qF%o>8_#6xX822r^+td($8tk|z#50Lsn#i!ZDFlPzNPigmW&0hchHJf z)=jW8&FT&d)2;q6Gs7B#7PYos?Tq_s>-i94ZLMp830eD)&$J#xKFiARGZwZkgAZg| z--6%HIvdaS)&uaa4%V?Wbgy*?rjhxz<&=jOAI^WZ;WhYYZ&!VqFPj zS8D}&Cg1uRHFmQS9L5T)0Q$4gIvcfgxAM`_9+nHpp4JDjzn2w3pY*mqYR%YL)^LnV zA1eo~?rYtGTKZXaXzAJ3&y2DD*7xX#0oLoS7%Q@}@Em9zMJ>hF5J*cb4u2SAO#$W{ z>nGG(YP|z(gDqbst_rLzXz5Vv-^dTM7Ghk=tVf`~+_HfmZtX+sMp%2nA7%B2Cych< z1#*nF9sMxYx*qv))*Z;7Yh}bScAm8e`17qoaK>A4@Usi7wP@D_Yd=PRqE&=?Cs|*@ z@(V2o{EMt?Xt>xq3L7dcH%d*mCfbZmwIcD1O|xD_?_FZOi=MpH>Vg(sW*vkjmDUC5 zx9Qd^C_BTt0%Ll)>> z82vsf$v?Um3TagFzj+-JP}10_N6rUo{S<)`#eHC6-Ai#zcDh# z(@})Wt{}t)p7JoNM=dVj&{53T$Wz`DbR^E6L4Zv>YAy`TU_(;>;?H3U#jE^lnIyyzl3TUJ#XQ%MgcxEXlOu>K6ive}=t)ve{UGQ>Nq?+qi}_Qq8XCWF z^E(|Cj%guh2^W%cV}THbvFjpP@+j|{-o9vR%Gfc?yCYcy<1kAp8Pkn<|Di}1$O7hl zTag}T1=M@rQKZkIAm)8nk$$Hu!m0N?MFyN6M82=cpwpMg4-}cE$b9EqB0pAScjpi6LcIS}WN+szEScU<6xq+| zPvobHEOJVS+@r`r&JZH^Dso85AXxF4qRLs^S8yKhKGW^RHY(`-EB9_h2l@~Sz3aI` zG5a5w=-vl4?edKp2>C;r_SjpnntK1HX`ej{%eePpP5XVNr0)?;2bg~a0UqV%U{n_H zdmrasFF5w^m{Hy*HICV@P=`LHX_tKrA=3M_rakr!TI4rq+Q&TY*nhx3zA)b1#)pUk$U@7p`MlzXbghR}q2Z#4wXW+I0IKN-mfFtd$tj{QE3_0L+KZ|70{zi7I<-H*Ea zS55a8J0tIJy1ssPIaV+4?^<4D{{WBo{-NnXV(s!WQ`I-bzJ+|Ao60>#*>0NahNj2a zcO-x|H9cPJqP#9swQrKWh}v&yd4)ZNrXhBhGAd0ItC-iV>#MZ8l6!fyyvkQXLCmY^ zxnfQ8#%uh1dn0zaUR%n=@_Z3i4zEu$uslCchy=~R^89b=(nQU`@_dpQNt&^eGyhm@ zGQ7zqZrb20OTF_=?|O`@J)U$|OCasF+EQb#)3nPsaLi!lU7%?=%kV+Wd%dQ8_T@M; zc^8_=arRny;##3c4v|=(R9dunw;SVtv}oT8#Q&QrgQ9P zXb#+{={)-ha+aHP`F!8laRZt6W=(hZ4W$6JOyhgoFHkou*K|MWytnAiFS4(s$#JVL zKSVm~3Nx8H%Ltd-DdZe~k>zP{V+GQW5Vy|f0V>eQFysBwzyd@? z=zmModA>0;+B-CzZ?~mo<{z5wZf6tywx)aA9f^KN)BWr&M8B))BKuwPmiIJ0$Tx`e zzpv>b_E?%dA85MVHxlBVnjB@Hq~`6?^f3A8EP*bOH7X znx4k|5ekK$nC7MMs6d|gu<89II%+>?oEo(TP18bBh={LgkFS`z?U<&0_9(LRxTgJf z0*&ekO$U5qMgxCR(?Q=*8s<})&XAMrM@@%(W5|0OHJ$AnNAypc&SCziaV+=#Y?>Lc z-a}0gd&-}X5wpl-CjLSMr$qY!9zY*iAHltuRqw+c6pLGgcxpdn5?aF^<$Vd3nM1IP z5JCVOgk{Hm!VE!RcwBRFa93zw2Yxl7UlU5d!(oeC_s0QcorlS9vbdXZ{`2LTBLLDx z3iv%#?Y(lvL zF=t^XkfRjoa;_nAoFYBWl|)WZq>sg|=nVQIqXQH{<5cgfr15dIIN_40#+Qhk9@V&w z$g83npCNK?lg4YXF-e$bTuT~PCM@vY4gYnzqx%vTMm4rapC&ABMdssh?|hCiNLbp6 z>Ndgw$B!{jxLJX-ofHI!gj*GvsimY&wu-+wXR^&A21o_X)imY@}sXt#;`>%<=T;)$QRD)rAKCoAAZZWfp|S0rSl~^=v~$(~mDpXNu$yo?g=j`A(&f})1QPow z(&Idi4P)Zjiu5^c(ALBvMf#mwxN>5NA_FO-%F9_|X$zWUxU*q#GvN1$LyU*f1<8TL z;oj@0`d&EWC5}{OnDYY$F>#C{UCw^0?_5QCoUMp*iQ^UNbNV9$Bu-SMpT)ID#7Mlz zXb-)~fut_peaNJYntmlq%2y!f+>W75DpaJ)8HhNV)Kifjrv*Ga=`2P1oZnDiQa?qa zf^BF)Qh)Pi=v84RX%IKz{?-;OJIpG^1uyz}Df&5Su=x$yk?+siMV*XaR|%)+uKkOH^SYWYcbjVHEn_d+{5u;F8FKPnshG_?(LjH_xo38wiIMP z=O5InI~7^vaLgnB8bu;9Q1{)f$RW;ZQgyE)%N;MNx?ho_oNrOT|F3Q2NnxDR5$lzI zeH*!0jCW3wRSzk05^Le26MIWnkSD{ER`dX`HEeF-vOvVWfQSEKgE-0g$-TYxpq+8h znXKm+bIwMM$$E~tobO;>vL1U}k)T_W_1NQz1Y6f+J=lI{0=hJLbks9$L;ol1)g$N> zV&|TGzC-IXPJK=~0(G(;?2t1Vhot0-RM~9jZL(^LB6FMvsoqOeS$M`dh}6k5jE-nP zvOjr__bl|W@bToURT<_iLGzR6DbnR^$J9%%R;0&CqK4g|NUUX7!`G6R8plcFkmT3B zFOWv^k>oeBD6f4a`K?UqHu4dU0FeBTOgT8+op&*?$?s&nBEY?c2PMCkDLts4@Sx-m z6u3wXZ1OHe4#EJ@Z50L!s^i9C9w&choC8HIT=dQ%Ihc~~?StNQ-a_zCiJ8Xe|CFX_ zyn-T5(=^_MNuHvI(&wbXEmNAp<#aetN;F)uIJ#U*DK-9yTGeE83iyqv)M~^uW7Yu} z$gSUCj$u`SVOqn{ewTGIL984|?SMUJtKR9ioobA;4J>k^`9GbVcVn3p00$;SD)Y zQw5QboQm1bPqa~4qNF)azbueTl{C*OKm>Je3Q14N7rx*u3)P5YO2!Ui&Z^M2XuT1hmQpelWSt`C!hPtV88;Lo z@7!->(-aE^x_ED-#&^Z&1)5f-2!Mg6m8lz=8E9IW9)n*7bdc~lBQV+l?OA^3ZH!xB zh#m?SHySMn3^OxPO>#zHq}PR+;Y>sS1$1zrCV0TxM2@WP^8aE zMe_nWI3UiT4+7dT0?z&D`+)WYtn?1%Phf^wgX%q0b+SM3rgtLQ@E~GOK<{vvv!xTr zw^c1J5eWnDMs1jf5EPIb9wUqhVR}ICG*h9-L)wykfp5L*N$sO#-uL22LVolG6+Em+ zmlML068J%p9u}94i5EC!&LlllJWVcbfzF&C0BH?`HfHt4U~#J@4YRcv{cGYskcH`n zrGpw@$jxVgbyERd{w&U0pi`{_=zV6ri2>x+W_UPWoV6nZ&*tU{DnlS$riAlhROTR* zGV5=!lv_hF-BIR#Oya;`ZstJlCXg;Oobx-V%oT7TZry~ZVYv|&T-GDVd#u;+^jmxJ z3|Uv8eo)=v>49^(ISJ(g<$(*iw?B4^HqF041@AxvI?kpwI53&FC;!9@v}w~4n8Mpr zb#zhqHg>{+sl3A=fe+cVNCz(A?NyAmX_XFK%G>{dW*XtM?Wgb?xQw@-Ch-03yRa7w zRPy%M3VM*e96cJC&fA|a^bf&wp*xKPnt9^@5l727mJo)RR0!H)ZjuQm=~3rT_jKg_ zmtmj+%elE8C6Ys_UAzet2ZmrkQk!Pl6!=l9-d(wzelR+&RjGob(E3@otc=Hsd`Q!=v{(^KJ^0gR+yHYlX{VNGg@NbCCzYJ zlJq)7hMXTU#;J=Gna$$vZx4F0*$O7cUDFcz$5SY_y5AtiN%UvxHp%!WG43$HcwaK= z!AL!T%9f?>_IJ-l6UnbqKWplWpF5-IX z=Na@;-w2O#c2M_xk#VIU$A~bW`ekdm2#gb9KJ}mik9SfK=2O2`;0ewraKF@gC7tB7 zM_5Yzw(S8?Z-w(MHS+uH+9q#kW8*MusuCZrx$ zxas!`p7SH=8r zATylr5e;10u|v)V42DZPHXLjpM#DA3tVV0ZJHwu^RZLzF^R!1k{S&m=>fD0(Xc)jQ zSHFJgrT)hCbDyGt{eWd$RRaV9z z_e@1%_1%fibI&%DP^*Wk7M;Bw85Jo#waBNt@MzJc1@T>m%i~WDwjAJX4Nny(=9bz) zr2DiS6t$F&$Srj{JkEL8;_s36eyB+9j7C=kcPr9x`l3YeBSo6dO|T~Tu_9g0wFv*ge=5>) zdLr%yKT%|yvk8M0{8W){r-sNqiu5@6IFJSRD$?uh!srD*Q)Ij|sSC(`inN{SaKqr| zip2H^p(OY(MJ71y;03|`%A*n;H&(gemx{zS0$i&ZIMb;YzEfZyK67%th?8~P5116ef16z)P4)$k#J`G+Q;A6$ zY=|np7~T;)>eY(rZBp=tG4br&v zD{5=us-nW&b1%9uZY$iURsTd{dFJ7vPLQqsnMmhs>wNecvs#MbyBknk*MMVM7b0M~ ztS(SzS+`=Pjk6wrqr0t7;r$-`w<8dVtw9*#c)KqvOGUert8n&fVnv8mbsDP%w((h~u?8XX^Vz4d-XzxCz<4;RQr~9W$exVPi>KX= zuCXoph0jZhWgWuI;PcXBS=XSK_`G(pEc_iMSY2aT_%Anu)jO6o8NROX((b{*Y7H2P)kH(osWNv(`IAUFWv~ zOIQCp)&)MlGDdOhZ{bXQ{;XJ5Phrt@u`KK~fVwf3)tA&?8&4BXtM^b<*S3mf4I(eQ zwtXyXHl`-Owp$EK%-XNC>4~g$EjiD%XMGf7`qShv*OtYyCerX#duje@3x39g;@4TL zV~l!&24+DLeYdJnYY4TVMJ(%0nkNfW79fgh)GR_R%!*~Lp&Az!#Iool#upBZW#!{g z!WTKT_G(>mn8bWh+gR2&)PIo_T0%5xKD9T}I+j&VowcOZh2)lMvbLc1F7;6KSFD6N zXk2zz7 z&qhq7mkODDDmo%#yTXL{8psl>beSiq3_Sp+S0EvtjZR9w!ch44NKOyPDOQE}HFRHF z4Y`;;hokZk{{XE_zEYR;<*Smdgf$`lJ%Ua0Of7D&#rV&}q$lA#-_gs3cZ?vx4D?|u zI@h%7g{sAe%)ng^1JhD1E?nj^!qEek-2iwNKZ1cvD^_Y&{#gwmZ(=;s!V2rL5ec#cM=G*!n`lKDp(xHxzi0ydcal++#!A(Z43PD zQN4V&mbVf)HGF=IM2LR~M+n@hkr!$tB)?$QN^i%Njs;rMigKvvX;C~6(=%Xt73i-~ z5aj^6On@Fm&!wKS6zDYq(F1Z?8baJAB{Q@QUuq?gyak_kZ%s@PZ?HKlKuJ32wxS%0 z--aL-;(kQFghzZzeTYExfSlf_hWJQwsb$(T&LO$*JIVn>*Xbd?!UNC*4Z1{wAbADW zTNkG&8=@KKk2bu%- zXvuIb(Gv*TS>RqRo_VG?9$_&sTZ?bfV%Yi(3MPFAKYWOoqAe8BThZG(IQEZTh`&t| zFYoxa(;)aSPTql@Y109PGx=}W6t&*0hOr&L7o~aEggB00?0d11x}I@=cl<5NnmS^E z5q%R9O@f)11NJ*0 z{(+R24&qB>zCfa;y-jO*qG}rEhiKXkG_4DE^$>{Y$47~VCMJkQ`8S|`Lh3sG%4z86 z1aVLaqc78ua!3C~w%%xJy_1lz8XEJaK{N@N2}rDS&lQMD$jB!)a*PKOth_N`Ujx8g zq`Y%L+=|R{D#7yki}666@W~iQtRkfK5b~Kl@s~qlDL>_lqrm(gxZ98lP=pDG1A<1? zM}Okik&ouxSOEdi6K>4k zi?OjBs6@CRZ;M5w@E?fM5Vs_v0NgG}((n(Y;S<0Zg;d}}IWqi1Wn8S`)Ny3^x2GGP z2R5x}Hk3z=LR-;-j(iLs!E$;7afZn)T;#s_d>oF%{HYkj`vH45Ea9I<4Sz}+{wlaH zAxXnGNW<&F_#7!}_^rx{<_v!z)_cUqLFS zlWp|D{!*lF&to6NN6N9;3&w}UJVb*$%IBf8ehVy`0i(&8SoxET}ctxr2Dng*(1Ov-JeA@koS=8agdPi zAEFYLa}ju?yU94#;~8?rr7^7!VWwV)=J2lv=+-Z_L)7{k!Mz@->nNNBWZT~bxgDw7 zO!BFlZT$CK;K}eBx)jb`b30=ZLb*F_a~XOy?-7WCh`=o<3g;fb4Z|jY^t^*| zYi!>}0>%MIp*o*{y%vC4M`CstJ=faiKM8az*yR8W6WTUH+g1Uh=bMzf&vySo!0ixS z3eYqGB>RpCAUzu?_poi|AiN3t=+7w^3Lx3{vjEc5MGo_*?Hf%%vTrRwcM(w7mq=o^ zf#8qX<~0N&`D*>|Y`(zA+kn{D4wZJ&Xq1%Fzt?4zq7&UTP}FWP2{vz2`r0HhH}*tb@I=(&z^ zuh{MZ1SI=<0@Pgq$-XxQke)j!_m*u|5|GAs6hI>cknHH3X#on*mTI z0Y(2E62Sdr-`lqNcWvKN0G0@C)PHgCQhdFIC;2OX-*$hY?Yj@4dk9$I$Ak8nMt|w^ z_x|tk_)Gu#Nj`B|_`6ID%!y~MN_(dh&5i8c!=d&F017W>x zn3i?JAA|Fc;0(OPj)M}+d_4b7j5|wocq_46Qh56g+yh93?ks_CM+^PgKJ*Ea3~=Yj z07rj=|1whUhw#KsP|C%V9EG1}`=%GcufK-qz65w863d+n3IhWmJ&P%KzU_LV2*8yP zy#UbPk@9W;@g6eoAf0tDh+D_f^t{du77Hy zHUUI0;e}CeA@c^3FzQQWzCe;jof0bOiRR(*+4lXRjrs+kp9GMMqQ6e%;@O^Z^KD-a zhDR8cnuJ?%B-vB>0!Yv9l)Kh;T~0t6zODduMiNF1LZ%o=7$b z04*ZaEK%YXm;n?DbaB6uuTb*tN-m0XU78kNs{A}Dg?&uer}Sg8?^TFvqljn=L=~8@ zX=uNiuu%oFhJ5VEZiWK>WxPMSrA`5SC3=V7bPjxSVu}!VrTMuR+>ek7M`a3T3C-jb zKQ>E9h2^aUb37qOfiZ}f|I8Iku_t~UjP*#}7N>)GFkWovz60YMV&3Hf^DD{x1B~B@ znI8o6Ysm~GqcWs!BWXMjNoFn>9f&!)C78cSW*HbmiTOZhF!4wCv{AYgjEjhAI$*}j zE!8?O?m_B$)#Z%)?09O>cF?aN6$H>TMI*o%B!*6}V8r@Fu`vGG3iX|0709h7p?;Sv z!&AWu{-$6l=v49pPX|`;cg1V3c{!}$b;awWc^z57hl)2`^7u$rKogs)n5Jx#rEr;O04uk8e8{^Z&2d6bSJDmsqmf;BWkf9~= zzE6bEVpebwgten^-jG5*0s@+cm5P6vhWgT5u5ruDOeFdtUIel8uxyKAg(H=Vl4=Dc2XH-W2*&tH+#eYzVR?|t0X38W|(%z8zNqR1#AkT>x-(n2GI#r6q&PK%)flb1)*eT5FCi%xn?-eWKz{N)(;+yEJUBFCvgg&~?`FMB&ujSqsm z4oMy)U-62S=pY#HAa$L31(u*!y<+=04_nbWNHP*^mCV0^@c>fp#M^QCfm#gl^drY# z_qz9?p?OzAL?5!#dvJOAMq+%NjwdQ%e7o1QMgmBeGy4JhmjKc!h`P@Z&jJGe!yDg) zfOItb8K6c1Y~~RAw%53VfOHB9WMDIlBu+sck?DXmfDW;~-mIwU0BbZIVBht|-$BLc z1XKd_KqPspt`G*%lMXw4r#JppZP0}PO%y;f=o%7>=K{*@@*2NugXRHrHIgvsFUZ`A zbcR6-P{?BRyorkM_QrR>$O(fU2Kpf+c_Frn#EhPIQSKve{3rs_h1hEVy-GlF)l1$# z2O>EGTt*Sx87qlC`8)_*(*!wPOkSPP4%*i#uigOg9%$y9$7pw2=aui;!2JoSP%Ibg zygkUrI^noOf3_lh>;dUxbHSkh?wItk_0pX@SWjF?!ks9%$#;?|lzYhQ&K-@WkvsJQ zrU#OAClVWsp43|Yu-6<%Kys(i0F4wta;HuLNYCyBe8L-lJpsv`E(d730Mh6ckytzj zQSM2v@iGC)o#@XRZa@;Fw-%YZkj@xA3Wo-xCpw(*r@irCQ*m;qXMv{woSby0DFR4O z3TXTpZ+s$pR2cL=K<^4588n~7;<`F$Lev4UxtbB!sW|y(k0`_=T)63Y-&-NhZyo_1ML^K{JXaw^;G`wYgZ=Xm2q`+Q zkV3uIM;EXM6<@C?lT>xmUZ0*%>fV%f*a$b{6TR|wFB@A7`ecM(b{^)&N<)a!Xwj#y zO>Rai$Wrz{TI)P=yVQu8v6#T;OoT3BM4d+%@esIwMUtk}d4wr%fw7I4!jw9X zFy&h?z9yzHrOqQv!T-95xsjwPcY1^=gTd&CB!UZlxv=7VF#^$(79Ae-dG5)mOa>m_ zTRE1#GkpI{Kz9Y`!sP%SjRK<4f-6Xof~1Vs2B=Dk6kwbJ^oRnYOSBFUbQB~%IWG!f z28xf48oEFM=A8-XMwP&omMOs6C?Hyih$4X8rywsyA*zxBrQ;C=_&f@bEm5-pD&7Zz zI{TL>LaM-K1h)%&A*ByRQZA4^VZu`|LPx-+FI?J7ws9?Zzk)|!xb%tP#T&Sh1@D3= zkK#MsB-7U<1wn}EvyJ)9i?bl6k4yYf6`*$%5FH);GH$klTo8rGu9YqT9SZ@V_vdpY zfES__X8a$EF!oCFmp@79U?Ex`RT`~VuPyf}$gU_v)hj#;ljt#}{d=Vy{i5o9R!J;O zcr=?gNnTM(J4gv8d?c3p#9tWu8!}uxH&Cvx$9N3zyq6%F1<+Ljcs@2@BsRqJ1p@Z- z7`q90DMYsdv^=Vj#0I11b^@O5F@Dt=9|CB-0Fp)$8{+vc0sDK5cGzwRjjsZb%08hdd#I%svksNZ1den zEY}Z;#D;i&L%_iv^GO1>g(wVArU3qR1@@oWfsgMd1i> z)+->+2lrg0+{^2v2Di|23`*RG63lj_VIf2_fti7H)~z6JLS`uv>)Z*{DN!Lke^sUO zhJk%I0Bex)&Ia)uGS48Lbv}r#Yv7qkh7a|a_fWMTLi7b-pCjeH z0pcVw$EjTIAy9-h#FK(QALcPXq*4a@h5lkL0V(e!aP5!@Be7iScETFs8KP2U9`hF} zMcqCCptA*#x}C&^c#3y_~=g-V4zjfMy}( ztpu?gnVYFpuVK(3u=2AKlz4_p`~~cX0Qf7Fh=6ztnQcVO0dX9eABeaVL|fe7r6c8C z0HOq$0Z6!;hA9*!K7=~j#LUA}E4o6M*(<60U8uQST9#ZA*UsgI?rDb(|KsVUfO9-Lb+cEFk( zGxV@}U>*c?zfdqlAv!9AelLvO!Wf8Xw@@TSdcmFvHhoq)L$h6sl#kYLOt2T|$j8#> zrPly?#^siRnbO-2Lb)#lbzZB@j#9%v6Q89fo z$Y;4tI@X#s4=!T;NYoptJ}REA#g9NtB084EP0^+2Xz>#elL+CKwTp`9YVih$NpvOB zps4t2Eq)ea5=D@vM#a}?@e2@>2$6v;iHhfG@yigC=s~1)QSp2!HfoAk!LyK%KfVSj zP4;W4bItgoIPLJSE5MfuP)z{C(@)FaRdV{CoD?W|k#g8il{lotYQB`|;s=zxf2=&} zQOA_@VkOnV#HWk@t^kY90O;x|yi@bmDfx9|y&2ySRX~xP09#K7$jdZLIEu?8|5C}- zgjx~}XY{s_0DPKkzn*b=Lsg{Y?W7!gpP&KjMw>SKUAJNkFnbFSf0Yg~2yja56qV$H zKS|~*$s8q-{Z3`@-*yw){_-aY#YU>V4$x65^%jVD zyp{1F<-G_ZgiISGmRnfE7!@?c^LLw7Ikl8@QwIFsN^Cl9@y&FSJ1r70RK`Q#X&Ecft zd58`Gw4X{n2BHy}Q&dXKM8e_^mGGp{&HJmFNZV^5@DzJuu-B3@nu#g7*p4BInb-lD zc1Ut264nqUD2(#~hyzrLW@3MU=s&T^a%bb1IG)7fSxLEaxA|`ZE{5n_fW`{o?Vw0( zh-Vc6hr7+x835h~(NzFlK|t{bJ?l|N4~P&SX*TLE z6S=8zY4qPGGioY}U!ZEH#ii4KXN+1-HT@s<-UL3b;>sJnw{PFJEXzW+WMhnhwlUa% zt<5V$Hfn8l%i8E}8=DZ?vec4=wMC0Dge_nQ5JK1{A$cTX2uTQG7$!pqUsg}TUtK-^;Q$ zgE-Lg27s?)%Y$HP;z6sP?dOkR$7dlgwo=%YQBA|@OeGHJgtcaH6)NAN`Mee2?sWj1 zI0`=hm_TZKVkuuz6T74ToEP4XF#`&`cOL)QR6CV$UP6uQeg)Lc$oMvd=0D*kcE^4- zG)bm@0JxSJS`uoKq&BN#y6qagX$0kPXx@i1c*rh8^W#YH?eJ=7k~SvKGPf{SYr?sN zxi~bx0-`So;d!?yzuFe>x}Sty3FmDjOat{J5dDJ?{siNX=$QPcHrm|@=QAXXf$%>- z#1F2m`wi$S*W<@I2-Z1&hda{7Pa|183ExlK&=PSIS6XNa+J}FXE$*y$$D`u zU3>mgmu`?AVc=uUfzwge;y_olq8$7FG1C<%9k(l1B%DdqBwcY0GG2vn+^#sScvk>? zjODN^{tRW@g&vldiZ0W!!`yT`_~i z`w)tD#qV8bin-VokAvtjA!JwVM-E&5)5h6O!g(JFIV!#iqAv?!1@4H(goXdqbUU7K zzD2@yK>Z_#evGj0G~E0L690~XZ8ON5w1H9KCY<>Ym~`NYH8_PvkPcjr#5oA6137|X za`b&IQg$NY)H4@5a0iH5N$7Q82Tp8{I9RIDAAqY0+xCcniQoj!(u}uart@Kjx;aPUc zbFo!_1(2M=wnmXxfi`1rwd$_}1*fp?Acd8>6=0ddZZ`?^yn@_g68GwawdT8vAc&i_ zWC;EsC3F6iQSIB0tJ-(D&UaC}sP+$$@%sqJRqb~bS8agLoJ2XaGQU9?|AHW@U5fUV zAQV;Yce_qEb5XUEAUahDsoI>`Z21q@15Zf0&Jhw)wKs!kqYzTHiH^yCGy~Svbsixh zRht_{9SEY@{YV^;TvTn+#^gVH$^L-ryvSU%O;>{G3g+T8aVHWypHiw#+L*=v>^b`Z z*I5WLi)udvq6bOnsrDM6!m7vmOQfir*Sb&LVps}pJxuWsGdXU+g#@s=Ah8O2kP%4h|qt9 z#4izw3Vpll{55k?=nEi+`Rsg8=-&jYh|uXzavkz>jaD08P&oCdIZ-7L6?6KixkTL+ zhh)DJSCjA4DEV|`w{O8jq4fJ(@vwgXef+rk{Y>0>2kI74UxJb@MmWBxpN%`8V-AY? zFsP@PBP{Ai!It{9?GsG>DenA+IVkE|K}`h`QQwcmeF#d_q*W(`$C&GtxN|C6C8GW` zh(1X|Pt@ChDk5s5-+MLMm#3%Nle183$!`&@eyRd&9Mz(J2{ccG1-k+!ONsjJ5mCP* zAZjiLBBtc_xbr(Uh>p(*8*oyFAhUz)mlrc7cgCHwFGmiFdJU-0V2-e;zerKZ@2S7W z)aT;Pe&(R4w}JW%2qNk%5*HvSQIl5f%Y2);j>VmunTuLI0-{4C^hEt2P{$GV7c^R( zOo&z+EAoTcsC!T{75?|LP;1$g*}c&6_=(`~pzej$py4Yc)=Y3&xKTrg0lfh{+xM_< zUS5dQ8{*6P3LvZ?>(2vr7pgo6B-&xt$~^#|3GfX;FsG5Lu-@e&M7)OmI$^E(^a2$7 z9NzE)i2PFf?^xsgZ!tCg$nk1y00nD&HdwU!`9Ev?Z4j($tRFxgBCAlK$E86+Z3J0Y z40(%2b`?X?hhedYiXc-D0x7M0*d#a-1oD_kJYf=_)(QN0cLlrTLry|OLCS?20eI(? z5JjHL_XnM&d@mR_mYW`4iTjT@OZi$c=Z;6O@g9Zz6BtsbMt|YxQzIS=Rim^fgi~0U z94b9x&^Q*VF9(X#TLaLdlP&)Aw$Z8|1^TWUY)5)%D>Vh!QNZMPICOL;6_VUA^JXh` zKS-q2A2NxDbi!)2cdtVWe&)Z$rVM(JWqY|B+%}09@BFfAx)Q5 z26bGO*w5PXh{YFx{S-poqae4xr-1V|;WxqreuBW~6tEk>W`sKVE!Ow#6Zo{`hXME? zfnP)6_74>BNdP`c;LKtGf2e?GZieweXt)-Xk05*xI$b9}y!?^9h)*S74eXT&b@CIg z7wrmGa2Eh~5co!x^z^-qJ9Ki`E(3jIKaWiHT6@k}PmqdSat^0xLR5c7wu zKHntI;s;zpB9w7yh1Kw!i|x(%Z~(4H)hT2|Tcv}aMYUfiKc}t&Fr$F0x8l)kgu0Vs z0A>~NO#tj8@FCibtolD`P`3{%NhqoV8iY|&u0hj2XazugHO{*g$eb0McMo@c295Y2zCw*u*J=L)Jd6@R`v)`2SW(_vK2K4pjeoe8r zI0aPU5nc3HxagMwu0qi_hQWW-<$X|rqiUMK@Fzo07D1z~GNAu}S@(OPLQ_itmY%Ie zf-V28!egkc-2)I??#=xe*yW{AQiOFdG&BmAJC!uvFQF@*N3a^U19=fbrzUutA~@q* zJgS6X?f5-B$2*aD0Ksms#Z3kodJyD^G-Bd{zXz##cA4`D zFmkSEgKio`Vt>WQ>_k+3cPzYl@Ab83bXKd0ff)5K{A=U*H@-PGR+zp!qq1 zusZ)dU=b9nk09Z{V}rSb)l)&R0zp{aio|9FVYL&9T?n{#d=*k9n_ok)x7+cq8^G#w z05<+p0CVn7adQA!_9FW_)jN=QCxT-2NhEA}Ao5E( zm$3RF5Ile&tR6$+vk1cK-y`uY1YC0FPBtB3_S;C==iBk4td_e=KLy!K2(r6mVbuSL z`Q*%e}PmDqIDi2(J>)< zoP;@h-YbT1Cy3gFkZ+TEk!bnP=OXMOJF)gg6vQ_+9RSgOkC5n?#s7aG;iY!s0z-Hu zh^`=E3gg528b(&C90~gCsl`a}S=iK4B=~GoYB>_8!62u&X5;HDQ>&2Rj%eykBzVk_ zIvWWtFyzGUOeX39;mSL;83}GNrOrcwyM?LkNbuo_R1*?hGN#&);0af%9SI&GrMi&d z>0T;>1RqIA?LmSkXmTjUL&MZ1fN*C$bpQ$eFd+47B*ci&o8o&do8A_fDmm*`1Hq@t z_A3M)ps`|&aBMI!;jyv9!19%Lmxr=#v+Az}g0JFxhljvxCII_qaP?^qhH{Mk&zMA3 z+v(KvASZ7r_8_^fUmSy3gLr(6`~nG1JEb>CYdG2Q2N49F z;)9^a0;<&@w6;`(ntjk>4cenYnERG#(2x&GYS5J$gt_lb4SJ^!+6)lqzDE>@4xw>v z$zv1HwB&!|m)oOrJg;-8XOrkoX4pFy=^X#!*THYIu#m*fUfb#X5p-8m@l}26 zGzjwy4@(I;-_Llv24#HEdo`%wgC5YJBR=R64SKr|dP0NVuR&nqmY0#4z z1UY_FgTA9do2>eHT&dm53Zy1f8*0Z-B%T3%oOg>f-c0#tYx<-DYkE}oCm^V%TO#x> zeq{zt9SVYvtE`V9hp66x`AVs7P+8fn!y0st51P`Tk7^KmM1wx-gKh(eJ@O3=LMPp$ zK`;7c-LFBv^+6A7P$^cG@Bzrg;~I2|4?3nnwLa)e8q};o;Om zScaQ*d%2EnBvIxi~B6;qlkWFQ8 zAhNw-f#Bp*4pw^M3fxtZl1EvJva0M{p?siHa66@?>3;=J?(;4v`8yIt`MlepD*P+- zgu9YR{-jtTSGrpjl5dNMzlq3?5_!i$xjmOJ`)%S1cQMJJ4>a5z zPp<>4(OoX@Ds}i%YgIs_+rR>>j!QAn;&(f`1Nh!WMR2!sz9P5^&4}M@2zb_`2yS*7 zg&_U#QV?9~fIl7|DdeTjHibL`x*mUsgM{xPP{@bu%|y0;TH#tnKpnq58rYV^AGKd$17s<_X2njc1azkT)o1-GX z^dDi<5|u2FPid+GD}x1AssgR_b1)Q%5}G)^DqK;P#JBrZm&7}z0)8M6gqNrau7jo| zzRZ5+1DGn?mmO(NyGZfN&JM}80K*4_Vx+9}GZgT>%*F=|RknMblwaGuPLE{cr;R~) zK-KnUv^{Y?v+)r}mF@gsZRhLSx|ayyK9%h^C*rPx+4yj!%2pA~RuRlr;plAEX~^~h z4ao_2nrtt`-rzI&LQF<{do#;_Atv8wvC_YR{YiYB+4w-Is_o;!Y#$G1`?$&Wzu3|n znT@{{QrT{d)%&&G7)yyr_<2GQW~6N$TVS&iBQZTf_#myyIuhIAXB~;{QIeQpckN*% z{5_hY+!Jf|Dfg&y+eMA`#N-<@R=V>nWOJFV>@JhdjRktyjY%(C>D#J7`74?KJj!3$ zTl@-sWw!|{n|^{(5<9U(F^-WT&wG0M@ICn#l{K=bJYGs*|owqAc9(B4*buu!JSOaruZTEH{6r(y<6by=0v!fFB@e zmptp@Z}9U}$IC^;J@1DmmfU(Wrd)h}3p$#FZGcYOi|jMXD;GHBCztO|EP{_;!3M3y z>jbw02>&H+Z(p!rLAvt11#ehz?gASe#@AX-`3g)jt|VX&6H5V61Zfc9P=Ha%nG(&{ zg`tZ}D{;&YI#(66V4=!}+jQkt@K**viNY(uLfcMPvd;3AD60llogfL!)D^l;$&BX| zQ1k+y$HlrNu&hd|)OC4)DxE>|vZT^>%7Y~=JpnRcGfrdzzX(`juPGxdC%MwBNaRs^iv_34KD-uf6#?8#-2p>d(66I@^ks-qD2C;I;35Psb9UXoA+Aa|*~J zMU(AyE~?Zt>x`r@7X0VAt{$LJ+8Pb(1OXmW#sVgWG*x?}eB*ezC z1_|2)T);umQ1-UQa%ILBN?C;-pH$s;LVV$(6)^+v;J|h)`<%i}M@ntlw_` ztu=#Nx%{uS#H=kvpb4wY>W?*g82>vhrnD`A(tK>NG#@&5yJEa8l_h}!^k6H zTNf~bXNu&-24k8|u@H@4Sj;en69cjgqa=c3Ogvy>lN-qENEv&l2_8YE#hqVG! zs8~}YT82R2Z1QjyHG&4+HLHsh6(%>~6jQ!@2Zvn4lUDCFvwB!T5&?ZlSv9I8{(Bdj zYqX(5rCCMlygoUz*3XX(sYhgliFy#NLrEss}0W3Nq6G zXt3ReD8LL!{xi%_S-=cD8cP)wVuls6RiI$Rh7?g3qR3JV$N!8e1KY|nq8J=&@)}Pb zfCHp2zsyjrK@sc(X)zJ7gp~;3jL~L<;F#h)1+3-FQi5pQ>WkX35g{N$VuCCjll!Ym z7=K=+C4N!E5rwY%aEE#sk)(LNKax)9%l5VLOYG%yvHAsSVf?s3Go>oj8}f;Y#J z3|;r(?qdiL10&Xtg1Z@iR)N_x<^~1+dshr8GZc@h^#76j?f>t}ot-?_kOOMgRRsvT zkr79e(RV5^?^h`_quL0X_w@?R2>aEc+`Mm4Xhtm&H1FFLn$g|}n)eqeG@}C%H1GQr znh_fvQ%8OxxYb*%yfZY-l=N#+>ch9CvnYK_4AI|Y3KqpwLa z$LMJVWmEw!;CV2rlH>)9$P1u8OPST!lL9IUM%d*FnzGEEsq zn>CoRYH9}g!Re2O$^%!4Bs*At-<_nB8&%g zX}QqQd<0M>o*Ytg`H$_epdh&;zp0_vSa}d*i(u&jMf2DqTiU|eY`qMql6IhS1B{Y8 z@`)Vw0xJ)-+lwfKfEk2-!y#tIFCF%*J#-!YBgx zWyI_;>yDh?*xhWi>c=}g%>t#oubX6$ham}w1_(`aHDazf87ulgk#(W2noGUDE=62b z%lK)PUd{L!4M!BZs&EGZFj6F8&J``T6{tjFk3 z@qF0W7V<13>H(z1s2xFaY8BzVGW$U$IG0HQArWK7D8)*=Kohxd&LK;wUri$a7a&qy)8$7ek2GrlLp zxK=K|xbu)y>|N*sRjLJ17Xmn7q$=6#SCU~RDsMTk*gN> zn-S2}jJ6_R*VyK7NTjj^>YhaVnKg$1I!3JAppeuTGc_RuH8*w%0F+)3h+FoW(UrJL z^9#z-7LH%j7^KVCf+rNsGDNd30x^;qku*3^d4In`Gh!)0G;U{I6bZDCkyn~lIo{u= z(2Ts&A{q%);Hp3xjc2qNAvn}|uarH*qCbcLN=9DMb8I1kL~qz+S0U*!s)xB>S~gVL zEGxirRCdlQ%*L9T_OB$8cO!%b4UL=vh6Zr3TdA<{6;3u9w>#T-7NK!}o3tqkvtxW|}gv|W<3R)jr@g3(2a;u1vr5!gD$ z!w4vY(P2quu0+H@3dT1HILqixNpf&|7p3(s1oSo|HmO`6si9L!t!r0??AATNKd8tV zkv!lK_+Pk*E@k{r+RVnRMIrSFQOxUHTlycVi53(SiCtQ>3JT3g3rV^BkJCg;^1nM1 z#rPkZiDFnJdp@FA6;f5;AEyGyk`cvPOtE}wsvoQtqYp_k$H>bU85%_t64YvacQ#_G z3ggWPP$ou=lFYOqYC|9eW9kkl7+oyM%zi`%5Jm(#fK`)rnyiD@gQG#rt41@o1q$XTiuLg=bNW^sta-8F{2|8-k=U`#6^< zVW6+5$=J<}%`kDJx{1#)aksij%rJ4kx+$4q;`8dJR1Q|Zu5QX^nD~LZDW742qDRpc zGfcd!ZWhll!F>i`s%DtrhCFVT&M+{EM1#6nKEniC3$hiSEkQY<4X@v!gU}~Q z!h_dR+@O0IktAR$3{{m-T);?C%vy3)2!%L_ieit+YvOXD$TCtCIfK!i5ra<=?H7+{E#FNqk)5~YpLX2!AiuRXJAP99w1w1Hp$1=is zfnKh9{NISc*@f|T1k68-8WH3v2PWDO0LOp1{Lfd=vQ`9kqW$kx%*H%{ylgu$RiQkD zex)deP+F4k(?ABwlKMl>B9Zn5T~ZiBDCIjVk4-3ACz#L!J~jnSOrYuWgq+=hf=a^V zgfaxkZ7JiAMaX?jfZVc4$^ica|K&p8fd}pz2BqLbXSK-tf<%zs|E|PrdLC>f5oTiu zJ+lY~zBr)VG7r|_L!%|JA*AMpIoewb1*}I1HeFLRf&#hMQnV!7j$rOZ9Qq$iQ?!r- z-sIrZs{3NJL4QkNk+!H z5OF%TDtHCsohnVVT>h)U<5pu+a3^Ff@N~yuP!%cv6UbrhSS4+qdG=rM9RicSNLys1 za02p0TVAr6IE+C1!T5HAU~XRiE4yQ%QQZaHeuUuGr2pz|G-ik27#|+&7atn!1^@lq zXpnyp=7WR9_|VzKd>#yb4Iysr+~%|6zneQ;j-j4i4$F8}8e1EXx)1dqrSxCgJ-ZZ^ z@RM1k_|RY}20FVGmOwicho2J{3`lspwBoGCnj| zih<59g(WPNQiAjb8l_i8izX^GHfYIcH=r~AG6-`YK-{7Yf&CY3v+$sy_ur@;#h|6o zc7KTLVO>JFxq|qh3D^q)46(J0FIMR|<8ci~J8&?fHv5t+dpz(8lyllBNg6a!GG_t;uWmho$Ab@0 zSf&3yX;I7&eX!BNl8)Et>y!YJjPFtDB3&J`wt5YD^+wlww4p}(VE;YAY(!b85eLD9 z>gk{_~t+#a0!E=A1~!bDJP1{$R% zr5YYVY6Fc@lal%rh64bIh(O|mN{b_M3~6zynD{yZ zX8wy|gBsyO+3&%}IQ&<_Mlr1XKhJPuF@{5?)8}n&j(Y-6^@KSNVvfi0=YbRvGx0RS zTp}*De5>ximp5pG{CAUv8GaO{K7l|%ZVWL@=&>RgfaVnOGr$SMOuU3JH^ad>!PkkP zz4;>Y(@_gEY@lR#Ysdr zb~1iIrQ?jBQt8)J#(O~v!9637g}q-F!uTI7dQcN+qx z`JMO$XFCFtM`6isML?1-3j1f3jOOh?Wj7*VNyzA(2>3}AsrZ(~FDVS8Z~2&L8GM27 zuu$%1bgiPKJeg!U*x6yE%OIxM#UF+o73v%#%?nae#uEy|=#vQGk{BjGi-5BrM!E)K z{40lBzP{47W^HOgEr2*6$UTh6@jRR-*RS4i#*EMY9wQA8XJk^Lq;+?!^p#hZOD$PZM_W)pF^ z$t+4lbWj7=01#IT&0a<%FR>i<;N7tqKNkm8=(HUv44WrE`koN&kusH7>&D0#Fbm18$^WF*J#9HKv}q{+SuARCTM{JDY~HcT7%*1p9EES&LL1Y~D) zHiBelVuOO4>?-E#R&ol#Xb*y9U?Q*Jeg-;W4%O6}3S~j5!0dm`B z8TTPX$$d8PnynOml%g>iF)G8)Ns}aB) zBhr=mhsj%(&-gh#!-XdSL8jQ??uEWqASQL7fA59J)Ufs?!hF0~9j~1#lH(>OU)1+> zCV5c|yq;8%oYyjG@O%`P*E1@TO&%tn(DyuHz2u<_5Dja{(2wAe?&0XeMqoe2Iesr&qsJ@$-wgrb6tV-Q5|j!z<+}D z%R2lz0Ow|4BZArgH|1OshddCBt6|`b|Bv1(Y5aH4+wY`k@7H4F#q57CUx?oo@s~xg zJa~QTM4#0%F?6^vFpPBc}-jIRNG|DBp9|vdWS}<``CcKv57*yZ)8jLL0Znq zsgVu!1LSphIDcSz5>PZc1f3ioDgvDv8Yu$pAL%Uuot^|c3f?y|IW(C^t8nXAzZnbw zfPpbN)ju>!S~tLjK^ayL_73O!3j+X$cqMqEuPLb8Y$QComdUvK6f3GBS|Y3w|T$HJvC9;?q;gpQ&+lnhdTm9%(B|7tMcaapi%{@^S?Vcp@N_T~hmuUP-eZLg3y&>j?O8ZVZN~@1M?o#KwlSo!o zUL?GhHjwQ^GHxfF50=?z)bes*-Q@{84l?pw3*gd(bCW$lgj?m-CG4bIlWZVC!uieB z%(WEXI}+qM3A-8y+quk+%@48g@x>HUEU~hx(#21=+}fnOw3_$Fy*nM0HA#1gq72`? z_EN%>;Zk@9UUUtsRDD%`eLgNoxvJ8o;470!cWol+#wy)YaJ!_zt*my>Od$8`0Gv_n zLLsUXQ#zM0^LopvOrqW(Bc{|KFN9U2rq=CO>N4G-m6gzUs$(kY zmVgDQ_(I&p618p>;yAT_mkfxSYIl9R+fnT{?sd1fyBAiwE>7YccLC6` z6GHsoSE=}~sU(&)#N+OA=b15%4;dY;)mq6PtgwMw>U>UciM`P9Si<={hJ8a4TrWsC zhi&(K4&;PWnsm=%iaC}$FUe?=(wd~SdX6dQU1hdVVI&El0p-<56^~wq>X%ef0vt#v z@T(^f;Fl6)@_lnM z`H@*nK7AY}zvUMnWb&g$nM9WjCL`ACS>03H+gn66bWdx&Xq0%t_N@>vMsH$!pxn~6Nw*wD#a4r8qg#&J+(ZpymS4?(NkCS* zZ@`N;*C*W;XySTWQD=eeCO}=fT^Ha?(B{X~Kj`U692HUsZfY;gWU<@KoY4djpqj&%vyPqEm5j_tcU400HG}&oEKWkmQj46F{W*+ncNHQVy0+`0UAuO% zBV%Que)zQR$CYNp)l|tK`Baf1_qTe;-5(lqKg5u0S0irP8*vLlBks$-wgr{>ujf?e zyJji#PmiO_pYe+iD)ZkIRpvQI+>?GOK_)*rCzH4OOwuNylYT`e#U!Y)t_{xPe#t@p zo+`$l2>+j9x?t}(o0V3>5n$PO&$kEBf0fm-c&G#aVTl?@)AUA?YL2A85rcg}#-EyaGFF(c`bqMd!vcKb1Wxvfm7v(It5JiS1T^8(yatf%{ zJsqSwV8=v^r!P@rJQpZuKJA>Ap6W&sWFUFE5EwzKCcI`r8tKfI#cTEtYu~cqZ|4yh3{(jcJl+v%`4 zFs0?rknPq%VPI`fY;dVMu#%j$U?rVhZfulpi)-W4pNTEIBF6Fs?8&tu;o5SXC;!!L`}qt z|DN&UUFWXEUW~~Y4TV!fzMNdrfSl7`bE=(%>~oRhI4L_(74ZpEh^I#2|Ef1}x6mF3#HjIz-!< zpy!ov9<72wo)15bv!R_>Dc1F6e`-_an8=uOTZQdzN6JYwxXlvNGjLcx^DT9rQ6pj3Omngv2e{egv?)+^ajpSq@cdf#hn;^%@* zJXWlU&lhjv`(LezPX(Iz3Dd+cg_`(y(I)PbCf*rsBHHzGS#tU{cHLhF+x7Kg?fQE0 zc0KZH?Rp~6uK#J;^~q4XzF4$fs_U*R(ynV4CSR*c&IH@_e6e;NE8ecpzFNB;47BSz zrd9S9818@M~nsMyb#e(xrwn&)|5`- zkZtd6PgdG?`)m8ZM?W>hAiw9HpEJT#Kxd^x50}idBX>`YTv~I8EYF zI*E(4z%G;BtMA3AMMZY6{`@Li5gZYMj#=AV4`A7%_Rx%cYILi1RjSPzCsAW6GbEYR5QHw`=z;s_I=C(MOAYK z`^wy|{yrDJRYg?uemL4nHIE~-gAtNf9nY8O@%(Ci&$P@jt%VIJ5O9$tv2w#885zp|IxR|2EOwR zl@}ZQSXS$O&qvX(YNYM*#RG*^wbKz@x42V=qBF{xlP@IVdh z`3VJk#e>1B9i6aaJbd(zL4Gz{3ZE2ZDH^!cQQD@W$CEm?f+WzYy&y zB87Lxl@#uoErp*LDLgQT6uzsa@PQ&y_`#e~z??-LxKm~sWf*>riG{F#VfR%fL@{oi zQm}7%?MIJ4IvJhE?wsA$yXNZgpXwg}%Ug3?PDO~9EpWso5qd+X z;yP~Ba&gG5a%MSA7MeTdKMvmz%gVT(JH^~YJ71i0GEyl8V>SIMF^_k6f@k8zk$VG= zmSf=Ic$K)NY#?0?#vFBitj;`HpMsyR1$Digk;ZV+s*aJ~B&zqh6GZj&SRPB|!Oo+{I3;^xQUcvNpKy`hC-b`}PewrF*X* z#IL0=Xhgka#Z+JL;s|`MhnA!xVM) z;gn&|4Rk2svUarqAjtp#HU4b_Zk1}gP<4#8SUNQ2{MOr9a^1_Y*Tch_n1f9^hn23oN)x-aexfMld_#$5AF58q5~2FPuoP0PT#BkN4`wNv1&{{V z7~*MT9ghYVsnb2Z$Mo58YI@*|Q4R>5V^HchfIaRp@tnYs(2fd@l zc*6NDzRDuS2e+^u^@|T~VSNq7H|XM1k>Xv4B3o@wqZjvagK!@zb>5i7hUEFP`Tv+- zfjSIP{D0-u`2PdPVu=6i@j;_m{6F9qALRepSK&XtD$!7k+YkH21-bpst8t6zKf>*8 z#khTsUwn|;AHO=cMP+-hUtEye7ha9q7iV$%o?_hI<`*C2_T}Sqn@C31u6Hj|o4E&1 zq*1^#6*Te~(@5!q7L0-u8vcLs;0R~0<EKccwvtWw<=T9Ayd2RsbM6pvsmi=!1 z#Ei2z`Tx;pW^Ou34b+wD1fQNIPq3V%PTX}WHMF~D&i5%5R@C1quQ8@QfCq7 z>s53f#*(4}+^=y* z65hfhcRn6iWdE#^GeLHf+|vDA?tJSCP%5utmpt~u$zGmG!WetlRW9vU`6NyiyNnMj z0r4@coUklO!mnC^9^V*wfZ#pY=NIo6CuJ-SP2MF==s)446bnUhR^PQ$Ii`<{2y8Ek zPB`CKtUXvos9p7k;VW^h+S?+>gMW#NoF(v@PjR=M*lB1-t&JfJtK zGuy;|m*$eXqP97C6+tzH?@?kXE6FwBk?Oi_a$$P!+t+z{R^mdZJ-Rt?WdK$Bj^Kq3HuRw;72WC zzcXKrD!r*I>%zORKgqS?-zz$SeN@w3C%ds~Kj%*+itaB0uy1MDcLT5wYuJry4^+zg zgRbKlwFfG&kLZo7Qz^C3?%jU9dH2v9&meybD^xs#?3^Vz)!rTL5p45b+Z)N|1V>49 zrFQ^xrXG50CHB&^<~GL2r><#;Y+b&c zs>P>hxcfnqqMqC~roikV*O;Ru*O(Sh*Q#BmxK~7%h|ffeR@$;nTQT1XsY55VK|}MR zSWp`%v|2_cN(Sl~LRn=8stzB*KF1v`GuHQMA*MXDY1CGoX04PRC00z&lNFj%F%t*c z$_HCkX;FD#+PBs283L}s6V9rXS(3uz$zrKS8#Zi;%-|1ER%Y+?ZF6*nIi8DlM!<^D zUat<@fz|pfy2i85#`YL7gxawN6C$6Bb4D8KH%AuzkE(rcB{n10ZF=|r^4Be1uU^IV z9AfpTXw-Zu7m+T}+^l0)Ds?tGX5xVE>;;+E)&mV2>NiGP`ytM`W&rHdt-REn=;K`f zL~q_y8oEtuhM8}-d3Ms^jV7zuKd%k7agE=96wDeuYu83fH?#IO%>|whM%!gvK+#sS z3x^suIpx(6Rr?wJne$;UHf^ezeYvq(?BvJ>6`zmf1aNB7U72)OC*2dcKs!TVyyNmt z*$a4*r{l?fIMPXXH$5iQ>ZX+^rZ))_&QnXoL5uDveiVyy*-;E`7=HbP;Ev)CK!P2` zn!t|Y`xJqcm~ireLd9W|jmWPQEBP-&CBHJe&zvl_51Pe1sN2ew~7La!V1or*ZtmDdR!epr@G5 zQ9dkie~-NnZowz;Fn_zKeFD8f2k#_2910`m*1)jeONaN*FOs3j{Y5&C+*l+X7m2R3 zO8t1JgsSFz;4KYRvSIISVmj#NM9JqRqb!r~*eCLF=Tz@(&PzB8ld?+2uT$oM2kvh( z=5t*M=n$|OmJhTpE->`%QVPGLg3R2?NCnVx(XdWnNX%dMhPsXyW z2Y%iPjp~u|Ol}tob>w2}MPT?fizt*=afFb(gg~)#)DN>%KdJ+k`R!n3yB3O?Ax~tf z4FE@O)#>qE*wbZbvwK)C7r;`+%Hx4$`}jK6v`xso`<2_JGpdrp1$9c2tM*+iaxC{t zr_2Jk?1y=HSoS{!ri6#%|m}Ge$}v%CZ6s$JdjkqUdmyxNfe+Y z(JFZtQxXFhS<0_s%u#ZJ5>N>SB-I_`hkC}b)k@4>HN+@g2Rm%cAtY)@1$Abg(+uMa z{5%vDjj7?(5*=5m%_fZ629mNO{31%{BWKKySPoH=7zJx()4m*!X_JG>?RaLmB;g#u zCbp*JG)I`4BUuE0VYomy0lOodj8Cj?cPkw{dN&_GSRsDNs%p0iKR0x!y<-l5L{R-pyS)1sid(jyCj2eshkC|vu)`Jl>dr7CFT_aPt-l( zY{V1x9rA+}cRqW#R{U6M2mPT_(U^90U!C;#d@*;=T*aTeLHG@c>x+*s`NS4(AOVy&qAsUdYxE}=eF7FS!}|fE1k2G+X#WCpUiC;(RAFDHpt!@ zwq?m}&Gn+h`0-i^#7}<_BY!s+C3+;J&KJk@g^ezrm3`#pCC4sg%_HAis|8vcR&MhQDWa$3s&(iQu34ckK{ zti)V1M}KUPeV-LP-3#{xCk&vE~sg|RvjA9BE0SyOKqO(IYw#YYOy@te4Tw{TNeo9`PN815akvOVd1dUR+iJ2f%gH)Zuq42?|;OD_$6L4EV^Sl^*+VYtvYH8eJA^`z_anHG!nWn1#uTq@U^Z`z&RXJvXv z4_T>}bL(pB^UVhfeTUjm^JI3Scf@L)m>8Q-Kiw}(SUnvb*;Kkq$2~f}K*t$V2KlwR z+uE|NxqL3wly7eC%p8$=cl4yY^B1B4g`S~Nt2MVXf8nm(J&I>EduzTavx~y0(`{-& z);+0atEF&Yda!d0<$@b&?R0+PNPb{=&}z%HW_NewtR01^e5$3{>Kho$7bYewm36n3 zJJQlS)oWPm80+n4!!o^)U0WvKxeFpoHFalltu0ndXR01uFj43o*{EgO+|@HS+)Igz ze0OF83^(`e&QDJDP8ITF!~IrAM}BuUl|hRqdPgTmhNf8UR!f-eo1T~`j85gpdnwag zw{-9H=oCass`Myc-Z5qE9Vkqs4vbAqHTMn=AL#8nWKB&B4GtD2P)lJv$lV6T9jZ+A zG}YyIWP0lIt)smMh6~c=R;IZ*pSyg#&{7z%c3##tJa$?0)UfIJ=H7|^^yt8tAxO96 zTiV!n&8pO~>8bpv5btJlGDlhugLhJ!9MWj3GnL(CNr(2NyYlFT)|}PUlFQ%=}hSOvo6@3YLQXGK@jLdtwNMV_hesS4Ec<87DmPTd9=qogjjSdVAiU@RW1Hs!>*x?prmPTh=ss6)lh2E*@iGt|7D8ObV#vzR0!a%;x zO6_cF?%35bba<#A{f)}WY|GFjyUX;68jMi<*6!UoHbTa{kvH@--L)sxfm(Y~nN(+M zt~Fx`zofvcGz#OWOzBhSUX~B_ zW@^fI_GIcT{;#*j$1W>OU^H1xLsQ)o} zM#+it!(!;J$hLHL0tn7beSE_R-tsbFO%4r?;*BHY(0(i1I}|ltkW9X_7Y&_IJz?_G zUV^0<+m%rZv@>_sx)!82Z7QDvXTRZHAt*E5Tl!Vick?lDD8` z8|tBDoh|8ZZBtXzFg}H07!Vn>7Y_AL9ke=Yp#|XXh(G>C@>3(@6NNz-p-z}@DrP3v zoKL}$jA)_AkVudA7miq62PV1)nw5z_^Y|hkm}@c0=t`|l_Ddrzi&2h^oA-L-?}FrB?n^o_!djIz495cPtPSz?X>x^b?oo904nCew8p zbPy#MoZa-uY#uK3PH+y&=bE=zc_;{8>@qZ(A1RDX7BKRmSv`e`q49%gcu<>QgL*bt z%E)$4PmNEDo=JCasJA8yecAw{m+Q2h*V0vHY-m)e1Y0T)>B{UL+GEvi1A}8zV^-7j zBzhn3R~nkoQ!8Fc)IVWCf&6S}8qEAS_#Epe2KQUls0>uUNfk>m$aoHGcgq0Y<5QQK z?jIUc*2$a7SvaOumD_YoQ}1L!JcxWcXZ0xaLshpf9GmFxD2xt5Uz<~18}ixaR+Tez z1ke`cT#vIiLb73X|t79B59;%Bpjh$F$@qaxHq3I|+Arrn4f}iXg8-+?tk4;Z<$cPo< z#3r1IsEu?Ad5q=4;6(4RvAyZZ6da<%1*KtoTLUu{XJaiXxJWP{EfJ(l?y!G;*SEC6 ztkvb)I&#{|K?ceZ2&(1?)K@7c2W)FsMh1syOQz7sM1%erV#&R;r0G5WwH)vP49k-FsTC=1em_qYUfYq^vL05VqA=X=;_nIfc3} zAXPPz@zyZahhrlncu$m-uJ79rQ4BrghYwM%+8xdfjbJXie6;W21f0Vwdd1JhblK6} zyo(N<*Eh9FbLog#oprF;VnoE94R#alzw%am{|U@$T0qi6Q2OjP~9>#5YoX&K*J}bR1GXs^~pBCt}c6I05 z(jBeYeOb)qRzGw$kI4qF0)q_-$+|U@!O&|S?wy_^xMDTqJG z>d<;|OGqa!p|lomO;5AvAEl!}m?1MVLt>JWiL!NX&P@KTU8$yyR%`b-_$}n+jbH~Z z$NW1zN^?@^Pxc+`oxn5+hUr(Z;+AxFR~~JE60&2$+~=oyClBSP-~eHo_C^8euoB1= z22+$qE+>xU4)~LFed?lsdgIl%!h?nvs~nb|^bvY(8#;P8P^HOJ%Bi2^%nV__dAcw; zWeuQ>Q!<$aW?(j152Q?&9?)WSb9=S*R7T!vNn`M(hT+qU(hos}^{PUMkfsa`peq!$ zkL}%UaMAd`UjA>eSfkeOY(H~axxE;W8MtNX{^5d})6yKE=oZWeQ=S3Nr8;}K5X66J zIb?1e%`Ui^-UJ>}*<7(nqkETj48`i8ZCUB@bImSYqpX6J zojzbn6Tg?rsi(%K-s%1fHHqUUhRB8vOo+(#^bSuKEOtfV$W+ih(E3lul4BMF4tpJYwd@K<#^I;s zCwniWp`dusDLJ*aR(_(k)2ux;40AMs6|Z!!tOsR;otxLr8t1yP;mfVwe%UbbEN^o* z+u9*6?H1K#N@!3z3WWZ@zt@53ExN?fEbE4JH@EdpPKi!>W}S@dHCt#v8u13j+FuwQ z8-Xi~RzpLlC#`g@xf3QqE2Zwc%mr3=wx_kV1y&9#v8|CAmm3wa`FbnB z3=1#_rOk(2!pz>TRtqmI<))9CWK`p_N*TnBt5wSktedF6p4V@RrFq_nF?A$pXk;&~ znUXv#Y7EJk?Ix`;+`_{alMHxh4+pniGiW{`NOb*ZKaG5UVHgv?aw?^0Dg}BvI4@>* z(xL<^((4_%?VcA%k5p_ZR+iJlQ(_R%@w&&lMAs~FX^$xHBM0Y?=Do%8m=WzYGaPJH zCr6KL6v{54II=P<>+^<+t`N2~T7&Eb)Tg1EMvWA!jmpv@LR(dt1Sg#%a*TgnCQZWhe$(GlZs z%LIk-6?Vs^rXFs5WqS{+-8o7vXjxkzFF0;&7q_#pKE+<3G%no+k;09W83 zHKGGMsk7EUqP515>xDdI#Fe}o^*bBXXPj3m{uW{YP zaX*Nc1lL*ouXa|+3wE(&ll?%o6WZB3+B+zMRAq`&h0zWzA#W5#*oEU#E{AEI z1=R&@o!O;@6~G3YY&RMm!#?iBRMK<%K`Fa`W(5EhjJmuqF3<)un{%g3yKY8cos;7| zW0O-M9aHL}jhJ%ci8ov@D^(GT1?5y|)s_Xm-o3{jAt#k7PH!z8Sn&2yd#r4>8G=_W zlRnV=>8YDmUs+Okh+&6YTs9*~rBrhEz%jTv-;y#rrp--iFz7x_jgJpsF2^x4(U>ME zWj#nOM@L(-;ITgS~3QGCOzp~*o`w6G|pcuQ6oZY zB>`XprsiQ`I>c3wn3J%LRofo9y`HkDCUU@VTYEY`rH*W5iL@z??J?0@?k9KFg$@I< zJF!}6Q7(%rm3^ld{ajOXPi;?IrdIyf$^UxmNFHYw*!3f8=%DTkF;3APE{jpcsE^AL0(P+e@I7}kIOWJM ztf#tcI!qL{b~#idx~vX!{$OfT8(BulJr%k0QEcf*RyaN_GNXwzVw$LQNOqu=LtO{2-b^O!2VJXq+T=Jxw! z@IXSAFmhs$#<>)G+_-jT{ib%|xbEcIBHTKqhu%(@vR2`-#r-O%Cz&yV<1o^_)|}NQ z$4o4qiszbVgIX==mj1D69zg|o)dP}y2z%5igqCQ2x^AO)_N;P;3^-ZQJq`^Yrgv<(ekDEJNlru|56r8gDS^j%RwpF>kecY51mDkPFV@+YfaCphcmaBf_w0($W zn>LtU<3bzX3eYpyNbeEt!e@J0(ruXKluhKWHqIcsn`Ph}C=B4}$=YeS>d0Z{65A=P z>3t2TwcOSPcIhw+=-ooA8P0Y_mW1LMfiQ14q{o82 zz?{;89a?Sz@6l|il?o5Ka3tD0+E>64GlmU_uoN>yJRaA>f%-2SYndYyj1dm#H+b~9 z?k#!Ua=)kt<51Y1=+!<>C9DCxqG4@47iLOrlHCzxZu$nzmlHw(bQ zLR&AEfQm6}Swz^^TONfYVrDmT*BMJ$fBCCrVvHM~Xp!n#3Ox6b9a{^#*4Qo86C0F} zLq@MB+J*+k#Ar0P29CB!5VY}>u~tpdAe_PBh^J3&eUmuoq6X#-y#@h=IaBg27MH-Y zAEN+iJ)C=LHD+M(AyU)=wn>fJNy~c(L>X=AMLp`34L0j&@sQPOy+c+CqHyR(c@D?l z4ds;P?cVW0gA^Xl(3{=fw4t4bfQ!KWn@y4KQe6&NvC9MP*7jnmcWBtk@=GDny{Hb% z+G?##CMi?JrJAS0Fp)4??AcHnJ!M%Gm#Imd&q%j2qbdR8%47A59j|g!Y z6X04~j;0nYTR0Bs6ro{ewDw>d67C)ZhH9rK#)dIR=W{&%6lLEWkq!M3E?KQMy$J6e z);66RG<-5i`W*|<+)&>kb>lTGv|W_L38L9c;dzvm%Zg=!>22Mc&gQI+9<)_+pNAwf zt$Qz2JCxo*Y_Dz*)=DkuJ(R{|Urrtn>FjQSKhZTd%K3zlG|r2JHL47sfT@KoG|$4A zRJ{k=;H5TtsZCxA8)!Q37B98cYVB_Jr&1YX;pbe8$VH@0myh#!DV>GKF73qgT#U8Z zkwvn%ztGaWi^Hf68_<%d#~I3Cerg0>0H?Ipj3?-TdPEn%%{?iuT$N&C{l+OcH_Od{ z_;DzK4V4=GsUh)s!Lxe+U4QWuYTDd&+MjdV04OT4+?Hbpcy>mU0)SHQf zMr=!DpklIsxZuoZQaf6+O0;+kD!0>WZ{a~$3(vt?u-k=y8;w?I!=fZ6&&a5L#bY@e z>ecouR8~9~t#YEe!S#^w+Y6)pS?$0mZ$@V*dV&Cy|4b{dE>S7wwj4MKg~`(qn@K=B(9; zSqmHSqMv!?>V+3H&>@bD^rWh-pF8ec8Fdc~OyVIQ?qbWKM07tgxF@1!uc#lxhvDSO zJDsSv;QM()5FNcWuWgie0Q_g`!F(RboLy?zM0k3hHZwvVR#?? zmdsdzV{Lg@aZp(iZX$8R&RZ)O1JT;my?e(_EWtCaFbI>_+3!=Ej+hQ$6!a4h7yxQ} zLYq82t*U)uEOz0r4_nyh$1zD3gJDMwwum-Q&dDOr$QV-*dH$=pqcxS`rV*dd6Mtuq zc6=fevYM1ynsb>B&+LS^Jd8iU&gG^(9<*V*v6sfjfO(YDDQ7vI7_uQlEECN^Y+u44 zsV%vkSclTy$OEiuQitb@P1kzGB$i+5$%@WS_5_^bu!=S7d4hYgv%Nbm#FRhgotSuj zMSV6nn7E-lt~Q<2=B1258Bln>INhmN5Y(AjOHMwsiJ_qPibb}vUFc2y>=CuBfXUV! zZPrk;Tp2zj!2N!$8RGx>HUQ0(trM`MH5($q{Gbp0Fja=mP51;5YuBf=eB6A}7*I7R zwf%%KX=&|BLqA%YyLV#-!2@uCb%M2{x%s^0+PY2W)$vn+c=V%gef?R{;}v{m)v{i} zh2M5uSzfkKKB=lcu&6#YnJSOp#%~&u&RnaJFrN`6jGx*Rx>R|^Mdk5O83&O$RbCQ% zpxm-nkXT;^lQFa6sm%dOOcV43_pCyKj1e$=@k1`dKae)bc%qwyP@8>6@< zkAs^M9NL4-BN0ATec%UmtplC8_*vJc^3_M@-%xVnytgH8a&L~`;=CPHsq)&`)urXD zn-+xVpFzes=?jXU{F`f|l)vm~;s*D|_}iSDq~v7mhSKt7DA}@-h7j=+2&wWiC6QG5 zvRFrHd0A>fNZ$O+tjIMYvm`#F7?dYJoolWn63BCXwCxuo&m3*p@0?_pQx6!-#ZTBa zl}FmLKXyquIxk4aPpuZA8;a6>y*S;QUJqSR=k7&$S~jWjWUR5gB&?J7gz(o89n#rb zL-@D6ZahEH8)Ca*mi`ellP-84 z$9=F3PvKtMnq{%B((*V)Nf19Az#mj-@6*jd$>)kAeUK`D$&Nj)2VAh7@`TbTUyt5T8V}8I_JkqOBTng>?QVz&NBNXd%3;BKGj|YeT!Z}P~7^}D?vOy z8yCFAcTb^=fy?2SPy?5PPq=by`B&Vctz#+tOlXXscnw?*KJyx;cdgTaC;e)K81QVO zFKc`jHgGxk+G#ldJZmHH%)b*M20ZgOAgF7eNl5Hi^CS7^TaCalKj*g?@XX&sfL!xU zLShH43)jEE>Hvo1FCxT%Xa27ssEg9@FUMLK$-mIr4>a?0-iiUw{0}0iYoSR<>{us6 z@}D4|6rn%K`jw`C264H=fLteARXVNO z>q~-Y$2uia-YM2Opl6mR5MsbnezX_rI>jU;b})Lv`goePRp+Pw5Cfk1OTAo*zAA7} z{0dem7e}LiIo8TZ`75m!U49a#AqG72^K z_!#gk-{<#qX7et`IwO+*3~P_hPoF0SJo7hr^`GJ8Wx}!6MDnk(`gH!MfsX;t{7;cs zE?Qmxa;&o=`OmV(b^ez?76YF7pYyVu<)xT#taBpy&#|u3`ROyofM@b|;o=UyJsv!VQ(BKbE(@^2Bm58UD> zrTndt^0!)F*5%U&j9FV%`#k-kN8w+NbzUU@dDeGye)mI9JnX`VBp?M zBH>`B3(LPj%3J0UDg27SJ6gZUXa28v?NuKGH-$J> zV`CKV2!2>n`*ir$5PIaX(czEkLZt?TrOk#el= z2z_@1-xI<2SU=PK{S+u;R*#hbX)jlgmtw-PGLifl>vuZ;Fz_+psW1Bx)Ri#_i5)8! z$)B@a=oZ!UcKnM0&-_;sAXm;LBz7?Kgypx#I!WhW2Z|W*%)i>p<3 zou4v|0nhxte(Ys7?{ch*BKa?}HtGDT{TE4of7bVBMi$~&7f146Y&Gfp%065y`44(E zUhJh*{!1eHFR^-b{s%x1vo4YR_jwU}e!|l{>ljcstEq72>$8_ z{^|(+nh5@y2>#j#{@Mustr7fNBlzng`0FD0>m&H!+h{>BLY zZ4vz2BKVsk_?sg5n$j6{*DO#jtKtF2>#9p{;mlAt_c3_2>$K}{?8)#Ka1es6~VtNf`4}e|LzF> zo(TS)2>v}0{Cgt!_eSphnVbm6dS3)T6S@EM$o&T*_aBVhe>iggp~(G5tT*YooFi$G z^=@m2rl60z$QrZ`Xnb7mZ?wij_qSM+q5GSxx9EEoQ-Sb~$o>8LzC+5p+xm#Ur;D-3 z`o9~y6F8m9|NrA>hU^L1LY6Gq_kGDW_I>P2#$d*7m>K)NM#fS}NVdqDEhI@uQrSyU zl0;MzSws21Kj*v-x4ZfNf9}U)JbkX~I-hf$^*;A~pJjxzmDn5KOU{Qu!+#zW9|?+o z2#S9Vif;tP$&zTqysW=Z1;sgo;zGn;|6Xy5JrYlKDn1g=a%w*k&u|(Od(%7GX+><^ zO79GJx<1lA*6I03JkW`IWcX3e$VcLl&LrZTZoa|JOk(>Cn%?Q-%pnlqIZf=1Z;W%1*qcAoohy&T3C`b-#Bt8Q#NPav;H0nt_44u! za?%l7ne{nmP+T!6ZV(i=A+E1s(>wE=PLITMovw;)-1b{e27UhS6Eysgpm;)1{8~`F zOtIxVr@stN4d)}`tZrP(IZSN*$)L}}KPa}BxBQ1WzdjNVb*|CAs@i1G=iR%+w*6$# z=h-AWwzl!raN~x~lf*^cxUrM@k@_Z1USbw4~j~z(j zGj9Al*ZHT!dS~DSUwqC$jRS9QN0~d)|8eFvP5g@n34`td_@7e0OAoJ0do=xn^Z6Lk zZTHA&W1K)0aPFmM+ru-6y>rfVT8*7^<^?+C=V8Dp&0Y=Xbt}+$FAtk3c-Tw z$*W>w-4pB{xj~@Lsnaze-g$L)wvIcO9^69FKcDNtsh@VmsCzYVN%w5rk~$a8PV8}S zI_RG5^KdTr^KPf5v&tTp`Df+XH0uAFZ{GAi7_+S^cDJG?{)Mzb_vi??#8#(RyFKR` z4m;yI;J@w+_Rs!(^hAE|E?WV&-*|B4;Dft9K0HJH;f-@1yudrp8V$Nq)!GHz z4aDt+a z(bc6;-ra-31MXlDc-NEQlMVlKQ=R{L0@;7BoqF`fAb}_0J-n#QW`TP-9rwgi9A3x0 z@soF=zpfhc|Kna#<(@go$#~v%8UFdH59W_|rd!~Zi~sYSM=!Oz+1V_!b@Jf_5?11N z+O6j*biWxR3Ajvxn*ZaBYukV-x?Q!AJ-Cd;PiqDL?Y}h*ybzgd@{O{IUC3_P?8HCa zk%H6ytR(Tvl>D~txzV(CPw})0e}@!szm^AUse5ZucmBjDb_XN({8aBs54*5PCu!Q& z!Br{`&X0U>?WT?G!R&X}ciY|grQS*MT9+R!u&qJ^X}`!hlz#PteU?W0;I@taC0n+8 zaPJIh{n9zx-Z>Ycbwb?l%2Vk*xt-pyL+ggP$GM^PLfqfsL+gh)N7Od70qq)wIExjh zk{QixoX7E%m(ODR#>w1{c3fcXGoyWOwAhYUQ|TZ+%v5_j9y9G5cdPF!Lyzisgm^L9 zF-oeU-g%5>ZsLNt6gS~cJcK9kEM7);dXz5*aXwU$J3jj+#KyM}SL0UPh2f^AtAnZO z>5lzzD2_$@hR52yiu2K(4wY{p-iEu(ypH2ekLJ@il%K|=T8=jVQkm*+R#SQMQEuld zgdTPrTL-MXGS`K|JT zgROU=jlJ_^Lz{T#{e?CS@s_)i?PPrWF?jr!DZhiM z7>_@l{&Fu#c~#UXoK($1oURy;Q*b`6#a;Lf{)Ydeo%3P&a$;$8=d(_*>SFzC5u$G} zJlC4xA?|PCsS>H5O}jlo?K)HLZb!=Jt{4BGJbt~qe6^qJV8gczaew2p{a&Y_xZVGV zH41mRcEY|m7$>6rj%nMAJOAV|;tjYRzd(0>s@+-Q%XkNq+I&>KJAY+1;^$2LuwT%8 zUi(qvrey#+lM%_%nl*WY_nsCGuPBaE-+uz{@(1Y z=`i(pq?Klu5NE9!srA&=EMZH+zOSC(K?U&Ka|J zh;z>D6XM)9^|R1D(`K^1{|W6E;v_Zuhd3!r)!TNHDkj8xe;A-Qft^E0{Uh_8^gZD>MD0kOOwR88oGBe95v(;;PB=ut~jQ)1l zoY>v&H2hFvfBgwwZ@#d4<#pE+E!W>H9<2Ff4heCRX+EV=l8ojswm&WJ;ub4^Wvq{_ z(7v~|`u;fF9OSJhrmYuNKOf(r-j=u3Z>QXrtF^P=cx`#P%T*J1#bPa|>v%x(C-8V8 zr_HYs-f{}nNl-PcesqX?Jm4;8tJie9%URRyE+0)_VJp}4m9_TDU(wW?MT(&I?)sqh z-`ZLG8rDwj!%VHu^-T?DUx(OuGME}qZd3EOfT{Ug)YS0qcr?7dKiF_?tnI)|HHr0W zvi7GI%XplOb8(reg}oBp{h;Cv#G7#&+WU^Jr{yiycp96^-;R2B|E1x(C=QLM-&)Ds z{oP9;&UkC5{p13C&ej|4_cX~)D(&nwscwI=TK!a}U-@i)+xyaUR{k>cUFDWHbQ;^6 z+E=vt1h%v3A?~?>Hhu1PCf)tD>~6!&AdiM~k3VKI+^i6tIiftTgn0X7weMmv!$O z?Re|=3dbpK?b>pj*3t2ne+0*CYrONVQ>nAHtX&^nXJG2*_=e_s$7yQ5=Xmq=eeayj zR3GyG_p#$G7ybNw+1fSIIcc^YjMwrpwQ|&up?kHxpx!dvSgVAqW|6C{N7hbnEw1+d zXt6d8*Y2oYz8h=T>u&cWP5raeoTzgqP4(l9seYvmm1DJh&2b^lNNMjk?)%r9ynof@ z{c8d5UvE8p|8n2A^uDpohSU3o`@W_9i~D{R&HI%)<-T9(eaU^l(nPrLS9(9R{hGb6 zx$jpCL!4vQ5B2XivyQi4GwprKwBL!$w3rcd;B#2o)XMOJsr{(^-eYka;@%jK!%dwg zFdh?d4lc&kxEXigUOa?$ioWf4bs3eDYK-<5#0h43$C+Gn5mVczNzDh#^xgJ56#6Pj{QCms`=N>)covZYCd-{muSCWYI*cDwOsp} zT22E@EzfvU%WtTuwHGi+0b<}@MstwiRRG8J& z{Lg2qeR1N7#9^l1-O#wY|*7g}4$o;SSt~hwvLb zgGsfIwe6*(IYH|$+Bs;poEDp!-^)zR@0F(J_gYi)dxNR@z1du${fnvh!TqL|-vLw0 z^@yqE@wKVtd&1OmJ!NY7pE0}YIN8+pbJ5iHbBXdRrnZ~wW-rZGQ`^fuv!iyZsiltR zlbYJDQkb1|{HXnZXjSiXSZK`<{YIo%X2NI8>LE^kvxav(WcAu5xa}%qO>Bks{%`HN zU^Mo{SR9J>er@e1;>&37*H%6U-S=t5ONm$FI<(^_Yrh?L;XXWo$M6K6#&h@^UcsAq z4?{IeZ9FM3EoQ`Qm>UaVQ7nxW@db3>ZS>$!7aEKzrwS4743tU<$VfsVpWX9arg>u!q4#}{)&HNDto_E z{_qnqwCnfMannevF6lM@*;BN|vVw z4#5+c;%TowEoQvCov}$!OGYG+hGqJ zjFWISzKxr3Hy*(s@iOMr7kbv8GFS^+U>A(R(KsC!;2PYHpW_LXYTHx9!o_y)d%TW~Lag=aCdzRy-@`q46wlzF_%Eh?&dZ+{ zOJhxJjuF@&M_~fKiK}rt?!#~KBL0oZ@_OUXg!!-x*1{Ip1!HhDPR9kf2Djtqcmglr zO?)Ds*N=>t58GojPQ=%6DQ?7FcpCq}dzd=EH=gWR6~nP7j>g&e9`3=Tcn1H(`}j-& zZ#)ID0@lUW*d60=0H!`xUBYhZI6gEMgvuE&q@ zF#d>FFnM8bd|B{$tbp~fGsfXid;{OYw{aD&$1V6F?#9pXAby1>@kcz5zvETBh5ulZ zBHr|*#B`Vg3!D0#xdd@FQ(q?5B5rQh32|BzcQf^SK~Lhr=8O<$1o2c;-*3+#USR4= z$0fw;P5q9%$JF=PpHY6?)bBXo5nnWyggAc?-!<*~?4nZdw`tAZAOu zsV_6@nf3L(1?3$~eXkxt+|O*F^JR#~noUETNyM+2`aXUx@jIrzr(Z+-fw@ZG;}IV) z^*hy3;vY@@K68%vFLObNlf0PJbYwF1y?kNfil)BDuSVR+)R(`_i94HJLY!{I1I{u)#j)WXFc&p=4dSs;v=TM6h2RU&D599w~3P#SKL3uNo}hC z&zLLqyEbuAvu}t~inzMjS-%$&hno>0PFvzAQ@@+^CLU_)%k5Fb(@g!CJd1dt85QEZ zO}x>J*7^f~dj<|6%`Lj0S#Sl_o1|6}U+na~na)057utK~sl!Td_+e-Jk? zkLq`J;*REF-L8#zGQN&m@Hqa7X-jH2jjtd!#~6GSx8NbXfKDlI`0Q8*^~51J??haM zpX1M%qBP^jCfEZL@O?am_b_uAZ}^hf4Ey60T!EkB5&RJ^nu{Fg68?ip%6jF=F};3RKvzmUNBCcd=|5MXc`-bKMEia5V)xI~zQ9cYu;SB0u#W!>}>N(J-&x~ zso#%B@i?Bwvv|o=p1<%WCMoCjGdZTijF`jJ^yN3_IZh#LMtw`{jy-XpsrEx~1SU{F z3+Ge57?bKxd+=E}3>esjC9LM<{f296b>TeMLjsKczpRK%S5p$s9=wy1gybiX< zXzKf$8s7->HOCo)6HG1V>D137ehZgUzK(bkzHcheS9s1;KYk;=YtC?-G!?vd&zP!z z-c&!znzMAC7*;jakGj-{6Su*Rl=mR+g9A+ENx-*EjpuFR&8GVCDe*Dtzcba33+7bE z`5kXlp0uLM)t?kt01IPfd;#m2$`@`<)A=gcf%@*$4gNhNRie@O#QH5dV%>D8EN+C-&R?OJ-`i zpEid$P8Q5geJL!5b+I8fGc{ZnQ^$wV#A9(bE~kDC@eWhRk9&wu;T8Oc`lMCVPW?-7 z)^?ms_>8Ikm%uVu3+rMdQ^U61nyH^w%UcQVzlev}Wy5!8>vNjQi4 z`M8Yo)wm8nrv4K=NcmUzEncMl65gczo~eF4Su`5R708{-MjKgsn^)vBx%D3SOyoFh` zZ?HV&uq_V9xu(|VyhHsa;;r~0<)0CMiAN|uMSKR& zQ+}2B2Hv4OSzT{@sqiUN{mM?93-eK4lDI5ZqPz}q18hop2jb4yjq(`cI2=m(MB*tp zo$`6aZ{fSR5x1I}kDucy{1cPZ^Xju;5v-2k*v-`R4>0waG9HJTS}xrx+1+y*;R-h;Rg z4ltD`9$%t-8qP8`e_l5=-X)YT$JLZ?CEku7Q~o9KVf@-uz8|RnmGVFEFY517pS+RU zYr0ZndQ-z^Hr1c!C@+9TD6c?V1#6iat`YTZDes7prsl&SoQ_LPjc2{7&pPkn`=g!=+%G(il z!bnrYN8u=(i<|HOUPRp@*c~n}R>77Shm&z3?ljfE&&(W-^CccOHN7XPKTrHCUZ(sG z@xPd)sh1}?W;T^48|I?Cr1_Pe&tYo(P0hl(P6^wX8mF=B<3`=yq?3Nl$XZx zSdaQf*n;wSoNa1(y=7)~oF%y2RQ~nUe@Of>?xp+)@z;2g^7F*M;vM`Kleh53_avsr z=S+>a0G6b@JXXd=)HlQSlt*AUjHiAmj;DMICg5AtFTvHg4tJZHKcC^3c#8Tn_#5R{ z@H##b?oC%peA-mLXYg4pPJL;tg4HqH)Nt*v6ZWHiAP%8?K5jR)oIf%1YdY{tQ}g>c z@kzXj8C!bo%VRt2WggZ01o3oSj-Q$u-yyS_;~c|pTtl2Q)L$aLf;U|CeN-!NxN_JU z2jT0u1&`wm%+#9Uu{93D*Ki{q!9Ou=8*lhx*cf}7ny!InI!!+gbL&H#3Dm!e3n^cU zD=2@D_>;S%bX<9f=s;0O2x^@s2T<)`s1UZegNhII1!n;cVP4paTkjfE*M ziDj`4^$jo_+h7+{^CKF2;|S`<;8eS4^n>=zoYy#UZDJUyiWNY z{1=~k(VOn4F$d*q=0{fWCGY|*iWa?kW*YFKoVrsY*xCVDn zzY9OdgZQnf;eNoM@Gt6bqFuOd?UG?C%x-FZ$c2R{FM(w+jQaZ60$XE*sr*rGV zADArC8~!OQj8#nSuWAy96L&Oq{zo6mhf+Sq)P81)sm}%pILp-XnNR&{%Gcrhlz&cq z5Wk`PBJm}>L3#47-gr`DMpNT2KwKEhP+o_)0ftlFowz3sq-y#nA5F@CC32cEEU?fh%zjp2C}$F3QVS7{jnL4mCBu#+hjxXA({| zwY=USehZi2ChE81e##HwG5itF$p#CZ*?cwE1g=sODseE~{D3-)Z zSPko$>Q@tNfnBNB1F+qEF&KvaU=Cx za3}7;FYz#*G?nK^{28xPe;Y%3sh!q?ConB$z#Qf($9WD5U4lKLH# z@4DhOMb@kKHKmh5c|e_2V&t z@>g*VuAqJmZpLl6$5cP|;{p7E`k(Luct9Ia9+|!dh4to15xa8|;96sMigF-QkB(J_aY?Z0hIYQp#82TKtIm-S`C_ z!V{+YaT?F!HR^Anqt6C5JxMXGso^qWRxCt)F)TxQ6YOqkx%4wX(&tVbWGep{>Sy92 zTyLuVE>qVd>?8h`_-Eql#CM2O$9nCvm>RwyaV6r0#LbD@V^{2h@i^L4|6elo*<>2d zG}Zrk)W1vld-y)?H`VR{o~Ha9Uc?)C7w==bIB)oj_$=nZBBuIP3d><#>KkG!$~$0Z zjG;abM^QcjU&6W6FTmxv3g0u;j}P!8JVgC5{2qVAUri17Ctky(@!oW&z_g~?6~r25 z%@C)7sqYY)U<*_8yCd~|a4hwc@nw9|RQpA^iSli@0}oPv6wguq8(zly)F&C_ zFq^6V=Ei(jj`~Vio$}5&8W-XgQ`5iG)OU+}aG$B^IYRvzyg~h4ypQPyd+jsg^QQ6@ z!%|p_`nuSj@(ApP@zf8+aX1NQn#%t=&coHzufxrhe}$JZ!Dyu8UVtEqN5umt7h zuo5<;zA3iFju>UCzkM(U$5KBLU#5H&?!_PR4yGTje3}p0%oMtA1fQq8q`6$rb;pXP zrlS`1;gokXbzXBX;^D-TiD%+GQ{!7|F46Z3xY|_S&D8Iu{J5#}tG_3{M0}e#RDg}5*AARLV^;Vhho%S`qAU30hNY{V_5`u#EWhw%*c=kO28?-M5( z>E%gdDsN8WYS;ohU_6e($@q$?;oma%>i1z>ZmM4&;77QJ`h9rV)bQU^|0ABG{0i}P z{G0M8MtS*DVp>yqvJvORyp)$9E`t>*40SmWegqXQuI~*pnVNqUus!xR)sF$hm&bV?AtXDo=ZS5&Kggiz9FhPBk^$OneQOQNI#5QN9g#;6dt-;`fyQgy-=l z^>;AoWN*BwFfHaXHDB{$G0Mwe1*}hfV+^OfBX-ArI2gy^6nq8eb3lHVkr#6w%8j-;VfK_d+;Z`j>)Hb`Lkg$tbr{t8i!#5F2YUtDW1Tq82Yj| zoheLBPaZ67_SgOVi5n1yo0^XuP0h#drsiXBQ^UvMWSoa<@nbxO=kYeCp62DriKQ?M z+hT7Vg>!Hfeqic2Vm}_opYboek549e?Q>uutblc~B}QUAj>8$a6gT1_`~mM^%IV&C z3t%}6$0&@$@i+??;k&p4zrd4t0dHcG8Qyr)V{R;lRj?tp!yY&YC*mu(5I5nc_!a(w z*D?7_uOFE(AC|_N*c3Zq435GCoR6#UecXp%;RU>jNoFxWFgF&*YS;)nU=NJPaX14P z;2PY9`|voP#Xs>MO!JD@uV=6Tmc`oG9ACsfI2>QX*|-!p;!gY$PvS+qfuXN@{Yi(p zuqal-de{cL;Q$jjii_c(_ubyf#Vd!5?BVCU<>SqJy0Jn-Qo2y!u3sDgd1@Seu;utc)*UJ#2)!#g3c53l7HNsGpAA`kDB)IY;Na;d*=z z58_cgi9g_Z{1va@b-auBF>R>Er*$I(WmUPVh42Zcdqu)#P0ph6~_|0 z_d8cSig+Bl_d8d40`Z%s_Fao`1+Kx5@e_3KYp(W(h%eypcnxpieN2+X8&4`si<$5l zENbdlrzBRuDj1ITycKKL8M|UH?1zKVp2K48r{PRoXzG|^DXzwKxDUU;qj((8Yl-B%2IVLzONQ*jo~#y4>huEe!?0FU6e_&uJ*U+@pSiUm`8{j=xvSU<~R zMXZjsu@N@IHrN5XVl?){f#^P8K;s!jJQ3aJ4XAt;u|5CC`tv3(!WFm%?Rh}fZY%D@ zJ@`2u#N&7p?Kwd<{5iaYSMV0z#U!b`_Q^3T=D^Ze9vfqGjK=A zcoE&_2x&S(Q+xeOhB+`dmdDE299v;;?2i+13NFN@xYg7_;&$AF`|uDR!{6{S-oU@n z&Kb6R$uKi!!)jO)>tkbViEXh5_Q6;jjH7TIPQe6x4d1|pxD;36yLbxE;6=QI*YFnJ z$0SdB)13;_VrI;Sc`!c~!%|ogt6~_|$7a|PJ7NSzV{eSb!8i)X;Z&TC3vnrK!yR}K zkKzUV9YfN3^Wh21j=8WLy3e!FdeV@%DR#%6I2y;}TwH*ga4UX>U*b=A9`E9P%=DDk z-)FD{mccNrkDakA4#kl;%Pg+vpWy;rj4N?1ZpLl63-{u8cpA^+uXqKoV+MV2wDD)g zXE6^J#G=?7TVY3xz-a7^!*MiD!l^h5XX6@Nk6Up&?#55?IG)7c@G{=VB)1VFaa0iGF*e}aWC%2BltCbkM8qIwA}u*xRm2u!@GDN zlV|YiQ{&T^1#@9utbkRp7S_d1*adrFAB@GpI2-5UB77TH<2pQq$M7WnfamZc-o|_Q z)YIPdK8@Ki7nZ>aSRHF)D{P0oupf@b@%TEhyoZ@GdDH(4y3dzU`+USj(0$&F%F7d1#+q0MBd{9|$I&xSy;3nLPpW&DIomoleVdF3O8~%ki@n5uiGuUvcFfA6q!dME+ zVI6FM&9N26<4_!f6Yw>B0~g{_+>871Fn)zU;{|k|1ElHri}-K+2cLb$o6bB~5Q}0} ztbz5g5%$177>7e}Do)3RxD+>2{;Rv;YwVO@8QpQ0sq8ncnAN*C$f9v zONr?*6Xw9&_&gTDGFSm$z*^V}1nALP1Hpbx)T#xVJcHD`F@ED%NAMg*nins9|rpfJ% zKOJVl>{tX#V0o;J4Y4V<#`f3?`(Zo|#VMG8ui+cG0@vUs+=~0~3p|R)@efm4UiO*slEQm$1J~qad*cRh(2#&__xD9vUC-@m2!LRWL{0V=<%Xka#V$$cl z=}CdtF*6$2RCbXG`<18*yJ8faA>Zy6*u_$5(JUuEGtt89&1> z@fd!Czv3Tw9dBdmyx#bq!pxWr>tQ1d$2J&&-LNkXz+pHFC*#Zb8oq&xaT&gg8_|9K z*LdAOkN7kE62C_GxnOGd6Y+VxjDO)>ypQSfX@11%eG+qEZmft^F%0WtGi-^SunP{v zK{yR(;&NPtALA!@5`Vxy@fxPozSjExB<98Eu^QIIw%8H-;sBhCFXNlI2)Ez|_yr!q zAMt0rfq&yu1-$+~jrp+#`d9$&;b9D-AEIxfdmxB)lgXZR(4i{IllyoLXoy+WKM z&wKq&j%iJm=OWIFMX&_c#(LNi+hQNHiQ~lJ5FCLM@FkpuvvHZJ@8nnF2HcE0a2M{! z19%$GqWfGn<-0?ix}cZ;DSQqKU{tv-VLfbw5#~oa9>qQwgF|oxPQ)oV3uohUGg8k#z>T;C zKf>MkIUd9x@n^h&e`BhWUjDS08}ng#tc*=D9J^yr9EoGmeZHOgKZkfVuESmCi~4>a z58x3zfv501{)%_;K0aN_%a;WUVKJka z`BHcW&*3G!f`8*b_*5Bh_^0uCEP~arCbq=3*bfKdBy+jrOvP95b$kn#;3|9&yaX)KQ~U@dHE?sc5D z7=hie560k2I1SzB9BTME#BbpeT#0M(6Z{Mh;W0dE>bjyIh=0P1=sx#QypFf= zKDy6u)O<@*$(s-9Fh3T;l2{h2VNDFjHrNCE;5eLwb8tRxz|Ht6evaSaY5WtfVam#0 z|DVL1_#9Tms@McuU{`dXyQujwgm?tLg0JH{xEgoiUObK`@i)ATP8F}e?sFM6zAVJq zu{f5-`q&t|Vlez6AsrS&Krq;c&rhd1XV%FC2o7q6~-E87G zi%lKZtu$NfK6qw($Ju7;czc%_srwh2QTlvp>T~J|Q=i|?m~lF<#vI}}SIkk4bKBJS zzK(Y3cD;ameb!Xnzro^ZntoHA$!)%-={M(S`ptQIev-LB_ir>8Y5L72ntpS+rr%tp z={Mii^qU(s{pJ=;zxjct-~33^Z|>Ign_8dkW%DyBra&zUw>&Fq*1K_T%!dV0AIshP zim1iy#x*bun`0|%hn=t|_Qe4hk7G?O*NHd<6L7An<*Qldx)_(?2HcF>a0l+k19$|# z#xr;hFXAP#Yr(8^F1TF%YUz)!$s^a|0i_(X0a@3rqFc+=&lcG^xSoe zrMq6FbDS`XrMrG)bR6A!#NB?Hn^_&F6}sz74&4vhV(G3od2~L6#nN4W^6Pe~7Rv#q zwy$_}*C%afBQ2KhdZq1cqQ%l(zqEW3ES9rOZGW?IuBq*C0WLPRyq4igQ`_ZQ++b?^ z+>F~yZKpeMm#OV_FYY(B-5$UrrncX&@q`(v>vr&r8KvtL@S>^h`Vw9-wS8a5+ommF zbV3ztdryifOl|jRFr7JGzu#b1Q~QA&nA_C;ARiVqwO=TTCCyn{{#en}exfSYFtxu3 z!}_N78;!BKxj@Sw+nL&rbiyv?5-or1X)f3D#{s7HFY!3k)P80pjy1KvnTS(N?ROGz zmZ|;EY@BOqKePZBo4d9Aaiyv4VJ%ilqWB3tx5U(T@V%+^zH?Hk^}U4NQ0zLnKTWOY z^VG)H>yu_4o!6F1YCVoLwH`mGVQsy2&#Tw^`hHr)T2E&@CAFUBQ%+ky-!-*fj!&x&0a=iLkNNWAatG?QLG0@cdu-VjlkkP*9)$$*0YPp{^=jr>iqEgG* z{r*(T_ol^Ku9Y;cwmh$!s~o49rrDO?YICFGPcb#qRdkg6&7KyZvZAao2yv?)tCwWrq!?c$ca5 z<{a@wGgAALBwl?AQ|nPa;(}%`jgPp#sr9NmaZgk0*F@qerq;6s#EVU>Z@Y;1n&UNo z;)|x%zofQ(sedUzi6XyAXFbwVn+ee9wdN8nAL0Y1*5`}FmrSkK8MRJYf3uoezl##P*UM@>4lYu{RmR79_VoW3A2l@IDc(IYKGG@P zH7?F6ZUx1gwrNm1qE7#AG2Nq@$M%Ye?G-=FDIOcu*Q;&PE}~^vlP0xGiHHXMdnrL+ zU09Qv!KGnQmMS7XGOkZR+vW|zB5KF=9=v|2wjW z_5ZD_IbcBFVTljsRs{^vtaYo1_}E@OdPKzrls0MJGc2N2Ktap+m;n*38Z;?YGN4dP zrC##}&4OpWEv)7Z$|hc1I`QIii5Hhoq*%R3EQyK}OQPZmi6?oGJI2<<;l{9WuC$NYWaZqGz;7VJw`{2m_-J-hxcWrdH zhT4&RyAA3a86V{?<+wqC%ik>uDEGRr?V@GPHg*2nbt(co85R*F8e>KHBdxk_wJg9+8-A8c3Jkn#$gd% z`}XSJ$L6jVm-g0BKP(j(hDAk3#6`sq(jLtk*B%rb8yGhZD;?4O(I$<(#TSL0VL~C#9B^eYE zJ2WD??}I2lAX0Hed_Q{SW(%v?O6#=st7W{lxqyzj)$y^B{p0%eii_(N(_eiXIOxFy z)^6T9BF-Horf+w;?-$V#ZT1me2St04*U7;Vd8eQ6yzXl!(6~XEHe+{U6xFHI$RECZgtrf}s#eX)tK)h) zfZNcbM{~0*dfE^by+%Fbd-W?-D&YV0(#ivxl%+*ncfW09_ikk<)PGfK@7&#^x(@20 zMHsD>#`}L{*RHWqg9B@|`2~jBHTUlkrQ?N%!~eHLn~P?Umr;9hr+BxRe*L2QYiU0m zDq8z^HL4ljqk ztj=CKRm;&wg#WXheWnN=?+YsPU;cO-svxjkyyAR*BdJ3|_f=Q_rqo{zH_~UDDS`Rp^sIhFY@zkf4S5SVX4K)%$f^YhtftiXJBk02}aUw%IO zOct1LZ9u*!Rp;mXLjMoUcS`vR`pIZ#;XeHZ=GzgFPanS@e)yVSMKE=;BJt$uq z4YbWqMmr0q2IU*MBE;#Ua?AIu{``E)g7WQEzI-b4Uw;1<2jx4Ze2dk{^66`t2l=)K z<+FQ&S&cbU!`OYa{Zk1a; z+sFI)?4E3D`r!Seopx#$75gv0f2q_iaD7R-TK92QBgHn@B#pw_V`!NC?PR zCLo`EhZUI5z8g&}pMB>Qm~TNqK7FnDV0!J|c$QCJLAtM^+Bw>M@n1Iotp1Cj@m95V zdavp?~R`Rmo0pnQ$9df!t9=Q|aYuj<+m_xDH3r=N)**~)R?;An+mMLFjOTf#|_gYZC#>!{wo#nIX_VcX@%6CQiYN+0S z`T3Ry<(n9gub~?I`928BS5j|kMg3&7v+zJryH09X!zy_B+SquT>(3vr-3u~sz3Q3Ueaxd; zcrQO+D*Y#Ly(+4kk``1G%NMRcKcC%0GBDrQxxL>n)x>@I`SJwiYo&bt@@=J-e!kj4 z`MN)s`0}V8lrKT~Y&)|4wF$`AF(}_G<+JhnFB`AD+6LuY7Lc!<>aCqE$GD(;`<1V+ z%Kew0FD5A8j)3XypvHc_mxJ<^&71iCbaGI>>&jO{d2D(+1>{>Al+UigTc&#drE2%J zFeqPH{b<}pHI}cl{;Zu%?+5x%;PSO=t9#>Sv$-3lm27*LiJ~_6eab$g!f*+J$U*38~vE=W+c)s_;|yTFL}&%n;)~C{dN>Q9f^(iR3h#CX|#U%|F_SH!TJ2U zz;?GDvt5YR$>4mpp7}5T|7jCxr?;*LFTW4jAG2NIMB4e=fF!@^pDvtx7r16*Y>`@arVQ6eq9c=3p{?A_`Yg%U}eWI^XZ?OI7Nf< z)!C=-arEBfzx;eJ1hwn`rQ^I8@WIS)S2=jRnL?c|`r^RG`F4VdlrLT<-7Qw9tba=a^2G+_8yLo{{Ur3qS62W diff --git a/build/sd_diskio.lst b/build/sd_diskio.lst index 57c3ba7..981d0bc 100644 --- a/build/sd_diskio.lst +++ b/build/sd_diskio.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/cc8X4L5w.s page 1 +ARM GAS /tmp/ccx8I3an.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 29:Src/sd_diskio.c **** #include "sd_diskio.h" 30:Src/sd_diskio.c **** 31:Src/sd_diskio.c **** /* Private typedef -----------------------------------------------------------*/ - ARM GAS /tmp/cc8X4L5w.s page 2 + ARM GAS /tmp/ccx8I3an.s page 2 32:Src/sd_diskio.c **** /* Private define ------------------------------------------------------------*/ @@ -118,7 +118,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 86:Src/sd_diskio.c **** /* USER CODE END beforeFunctionSection */ 87:Src/sd_diskio.c **** 88:Src/sd_diskio.c **** /* Private functions ---------------------------------------------------------*/ - ARM GAS /tmp/cc8X4L5w.s page 3 + ARM GAS /tmp/ccx8I3an.s page 3 89:Src/sd_diskio.c **** @@ -178,7 +178,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 71 .global SD_initialize 72 .syntax unified 73 .thumb - ARM GAS /tmp/cc8X4L5w.s page 4 + ARM GAS /tmp/ccx8I3an.s page 4 74 .thumb_func @@ -238,7 +238,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 106 .loc 1 123 1 view .LVU21 107 0014 10BD pop {r4, pc} 108 .LVL4: - ARM GAS /tmp/cc8X4L5w.s page 5 + ARM GAS /tmp/ccx8I3an.s page 5 109 .L9: @@ -298,7 +298,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 152 .cfi_endproc 153 .LFE1185: 155 .section .text.SD_read,"ax",%progbits - ARM GAS /tmp/cc8X4L5w.s page 6 + ARM GAS /tmp/ccx8I3an.s page 6 156 .align 1 @@ -358,7 +358,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 193 .L16: 152:Src/sd_diskio.c **** (uint32_t) (sector), 153:Src/sd_diskio.c **** count, SD_TIMEOUT) == MSD_OK) - ARM GAS /tmp/cc8X4L5w.s page 7 + ARM GAS /tmp/ccx8I3an.s page 7 154:Src/sd_diskio.c **** { @@ -418,7 +418,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 173:Src/sd_diskio.c **** * @param count: Number of sectors to write (1..128) 174:Src/sd_diskio.c **** * @retval DRESULT: Operation result 175:Src/sd_diskio.c **** */ - ARM GAS /tmp/cc8X4L5w.s page 8 + ARM GAS /tmp/ccx8I3an.s page 8 176:Src/sd_diskio.c **** #if _USE_WRITE == 1 @@ -478,7 +478,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 264 001a FAD1 bne .L21 265 .L20: 266 .LVL24: - ARM GAS /tmp/cc8X4L5w.s page 9 + ARM GAS /tmp/ccx8I3an.s page 9 190:Src/sd_diskio.c **** res = RES_OK; @@ -538,7 +538,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 302 .cfi_def_cfa_offset 48 210:Src/sd_diskio.c **** DRESULT res = RES_ERROR; 303 .loc 1 210 3 is_stmt 1 view .LVU64 - ARM GAS /tmp/cc8X4L5w.s page 10 + ARM GAS /tmp/ccx8I3an.s page 10 304 .LVL27: @@ -598,7 +598,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 341 002a 0DE0 b .L25 342 .LVL31: 343 .L28: - ARM GAS /tmp/cc8X4L5w.s page 11 + ARM GAS /tmp/ccx8I3an.s page 11 228:Src/sd_diskio.c **** @@ -658,7 +658,7 @@ ARM GAS /tmp/cc8X4L5w.s page 1 245:Src/sd_diskio.c **** } 246:Src/sd_diskio.c **** 247:Src/sd_diskio.c **** return res; - ARM GAS /tmp/cc8X4L5w.s page 12 + ARM GAS /tmp/ccx8I3an.s page 12 248:Src/sd_diskio.c **** } @@ -708,31 +708,31 @@ ARM GAS /tmp/cc8X4L5w.s page 1 427 .file 9 "Middlewares/Third_Party/FatFs/src/ff_gen_drv.h" 428 .file 10 "Inc/bsp_driver_sd.h" 429 .file 11 "Inc/sd_diskio.h" - ARM GAS /tmp/cc8X4L5w.s page 13 + ARM GAS /tmp/ccx8I3an.s page 13 DEFINED SYMBOLS *ABS*:00000000 sd_diskio.c - /tmp/cc8X4L5w.s:20 .text.SD_CheckStatus:00000000 $t - /tmp/cc8X4L5w.s:25 .text.SD_CheckStatus:00000000 SD_CheckStatus - /tmp/cc8X4L5w.s:65 .text.SD_CheckStatus:00000020 $d - /tmp/cc8X4L5w.s:416 .data.Stat:00000000 Stat - /tmp/cc8X4L5w.s:70 .text.SD_initialize:00000000 $t - /tmp/cc8X4L5w.s:76 .text.SD_initialize:00000000 SD_initialize - /tmp/cc8X4L5w.s:122 .text.SD_initialize:00000024 $d - /tmp/cc8X4L5w.s:127 .text.SD_status:00000000 $t - /tmp/cc8X4L5w.s:133 .text.SD_status:00000000 SD_status - /tmp/cc8X4L5w.s:156 .text.SD_read:00000000 $t - /tmp/cc8X4L5w.s:162 .text.SD_read:00000000 SD_read - /tmp/cc8X4L5w.s:218 .text.SD_write:00000000 $t - /tmp/cc8X4L5w.s:224 .text.SD_write:00000000 SD_write - /tmp/cc8X4L5w.s:280 .text.SD_ioctl:00000000 $t - /tmp/cc8X4L5w.s:286 .text.SD_ioctl:00000000 SD_ioctl - /tmp/cc8X4L5w.s:320 .text.SD_ioctl:00000018 $d - /tmp/cc8X4L5w.s:324 .text.SD_ioctl:0000001c $t - /tmp/cc8X4L5w.s:398 .text.SD_ioctl:00000054 $d - /tmp/cc8X4L5w.s:407 .rodata.SD_Driver:00000000 SD_Driver - /tmp/cc8X4L5w.s:404 .rodata.SD_Driver:00000000 $d + /tmp/ccx8I3an.s:20 .text.SD_CheckStatus:00000000 $t + /tmp/ccx8I3an.s:25 .text.SD_CheckStatus:00000000 SD_CheckStatus + /tmp/ccx8I3an.s:65 .text.SD_CheckStatus:00000020 $d + /tmp/ccx8I3an.s:416 .data.Stat:00000000 Stat + /tmp/ccx8I3an.s:70 .text.SD_initialize:00000000 $t + /tmp/ccx8I3an.s:76 .text.SD_initialize:00000000 SD_initialize + /tmp/ccx8I3an.s:122 .text.SD_initialize:00000024 $d + /tmp/ccx8I3an.s:127 .text.SD_status:00000000 $t + /tmp/ccx8I3an.s:133 .text.SD_status:00000000 SD_status + /tmp/ccx8I3an.s:156 .text.SD_read:00000000 $t + /tmp/ccx8I3an.s:162 .text.SD_read:00000000 SD_read + /tmp/ccx8I3an.s:218 .text.SD_write:00000000 $t + /tmp/ccx8I3an.s:224 .text.SD_write:00000000 SD_write + /tmp/ccx8I3an.s:280 .text.SD_ioctl:00000000 $t + /tmp/ccx8I3an.s:286 .text.SD_ioctl:00000000 SD_ioctl + /tmp/ccx8I3an.s:320 .text.SD_ioctl:00000018 $d + /tmp/ccx8I3an.s:324 .text.SD_ioctl:0000001c $t + /tmp/ccx8I3an.s:398 .text.SD_ioctl:00000054 $d + /tmp/ccx8I3an.s:407 .rodata.SD_Driver:00000000 SD_Driver + /tmp/ccx8I3an.s:404 .rodata.SD_Driver:00000000 $d UNDEFINED SYMBOLS BSP_SD_GetCardState diff --git a/build/stm32f7xx_hal_msp.lst b/build/stm32f7xx_hal_msp.lst index 1973483..a67dc67 100644 --- a/build/stm32f7xx_hal_msp.lst +++ b/build/stm32f7xx_hal_msp.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccehMqBJ.s page 1 +ARM GAS /tmp/ccEjAJiv.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 29:Src/stm32f7xx_hal_msp.c **** 30:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TD */ 31:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 2 + ARM GAS /tmp/ccEjAJiv.s page 2 32:Src/stm32f7xx_hal_msp.c **** /* Private define ------------------------------------------------------------*/ @@ -118,7 +118,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 41 0004 1A6C ldr r2, [r3, #64] 42 0006 42F08052 orr r2, r2, #268435456 43 000a 1A64 str r2, [r3, #64] - ARM GAS /tmp/ccehMqBJ.s page 3 + ARM GAS /tmp/ccEjAJiv.s page 3 44 .loc 1 72 3 view .LVU4 @@ -178,7 +178,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 83:Src/stm32f7xx_hal_msp.c **** * @brief ADC MSP Initialization 84:Src/stm32f7xx_hal_msp.c **** * This function configures the hardware resources used in this example 85:Src/stm32f7xx_hal_msp.c **** * @param hadc: ADC handle pointer - ARM GAS /tmp/ccehMqBJ.s page 4 + ARM GAS /tmp/ccEjAJiv.s page 4 86:Src/stm32f7xx_hal_msp.c **** * @retval None @@ -238,7 +238,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 111:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; 112:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); 113:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 5 + ARM GAS /tmp/ccEjAJiv.s page 5 114:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_2; @@ -298,7 +298,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 130 .cfi_def_cfa_offset 12 131 @ sp needed 132 0020 30BD pop {r4, r5, pc} - ARM GAS /tmp/ccehMqBJ.s page 6 + ARM GAS /tmp/ccEjAJiv.s page 6 133 .LVL2: @@ -358,7 +358,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 172 0048 1A6B ldr r2, [r3, #48] 173 004a 42F00102 orr r2, r2, #1 174 004e 1A63 str r2, [r3, #48] - ARM GAS /tmp/ccehMqBJ.s page 7 + ARM GAS /tmp/ccEjAJiv.s page 7 100:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); @@ -418,7 +418,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 114:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; 213 .loc 1 114 5 is_stmt 1 view .LVU55 114:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; - ARM GAS /tmp/ccehMqBJ.s page 8 + ARM GAS /tmp/ccEjAJiv.s page 8 214 .loc 1 114 25 is_stmt 0 view .LVU56 @@ -478,7 +478,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 254 .LVL9: 255 .L10: 137:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 9 + ARM GAS /tmp/ccEjAJiv.s page 9 256 .loc 1 137 5 view .LVU71 @@ -538,7 +538,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 145:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); 295 .loc 1 145 5 is_stmt 1 view .LVU87 146:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 10 + ARM GAS /tmp/ccEjAJiv.s page 10 296 .loc 1 146 5 view .LVU88 @@ -598,7 +598,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 340 @ args = 0, pretend = 0, frame = 0 341 @ frame_needed = 0, uses_anonymous_args = 0 342 .loc 1 165 1 is_stmt 0 view .LVU94 - ARM GAS /tmp/ccehMqBJ.s page 11 + ARM GAS /tmp/ccEjAJiv.s page 11 343 0000 08B5 push {r3, lr} @@ -658,7 +658,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 201:Src/stm32f7xx_hal_msp.c **** { 202:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN ADC3_MspDeInit 0 */ 203:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 12 + ARM GAS /tmp/ccEjAJiv.s page 12 204:Src/stm32f7xx_hal_msp.c **** /* USER CODE END ADC3_MspDeInit 0 */ @@ -718,7 +718,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 387 .LVL20: 388 0036 EBE7 b .L13 389 .LVL21: - ARM GAS /tmp/ccehMqBJ.s page 13 + ARM GAS /tmp/ccEjAJiv.s page 13 390 .L18: @@ -778,7 +778,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 434 .cfi_def_cfa_offset 20 435 .cfi_offset 4, -20 436 .cfi_offset 5, -16 - ARM GAS /tmp/ccehMqBJ.s page 14 + ARM GAS /tmp/ccEjAJiv.s page 14 437 .cfi_offset 6, -12 @@ -838,7 +838,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 259:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOD_CLK_ENABLE(); 260:Src/stm32f7xx_hal_msp.c **** /**SDMMC1 GPIO Configuration 261:Src/stm32f7xx_hal_msp.c **** PC8 ------> SDMMC1_D0 - ARM GAS /tmp/ccehMqBJ.s page 15 + ARM GAS /tmp/ccEjAJiv.s page 15 262:Src/stm32f7xx_hal_msp.c **** PC9 ------> SDMMC1_D1 @@ -898,7 +898,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 489 002e FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig 490 .LVL29: 250:Src/stm32f7xx_hal_msp.c **** { - ARM GAS /tmp/ccehMqBJ.s page 16 + ARM GAS /tmp/ccEjAJiv.s page 16 491 .loc 1 250 8 discriminator 1 view .LVU127 @@ -958,7 +958,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 530 005c 1A6B ldr r2, [r3, #48] 531 005e 42F00802 orr r2, r2, #8 532 0062 1A63 str r2, [r3, #48] - ARM GAS /tmp/ccehMqBJ.s page 17 + ARM GAS /tmp/ccEjAJiv.s page 17 259:Src/stm32f7xx_hal_msp.c **** /**SDMMC1 GPIO Configuration @@ -1018,7 +1018,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 570 008c 0423 movs r3, #4 571 008e 2793 str r3, [sp, #156] 277:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - ARM GAS /tmp/ccehMqBJ.s page 18 + ARM GAS /tmp/ccEjAJiv.s page 18 572 .loc 1 277 5 is_stmt 1 view .LVU160 @@ -1078,7 +1078,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 292:Src/stm32f7xx_hal_msp.c **** * @brief SD MSP De-Initialization 293:Src/stm32f7xx_hal_msp.c **** * This function freeze the hardware resources used in this example 294:Src/stm32f7xx_hal_msp.c **** * @param hsd: SD handle pointer - ARM GAS /tmp/ccehMqBJ.s page 19 + ARM GAS /tmp/ccEjAJiv.s page 19 295:Src/stm32f7xx_hal_msp.c **** * @retval None @@ -1138,7 +1138,7 @@ ARM GAS /tmp/ccehMqBJ.s page 1 305:Src/stm32f7xx_hal_msp.c **** 640 .loc 1 305 5 is_stmt 1 view .LVU177 641 000c 084A ldr r2, .L33+4 - ARM GAS /tmp/ccehMqBJ.s page 20 + ARM GAS /tmp/ccEjAJiv.s page 20 642 000e 536C ldr r3, [r2, #68] @@ -1190,27 +1190,27 @@ ARM GAS /tmp/ccehMqBJ.s page 1 334:Src/stm32f7xx_hal_msp.c **** { 679 .loc 1 334 1 is_stmt 1 view -0 680 .cfi_startproc - 681 @ args = 0, pretend = 0, frame = 16 + 681 @ args = 0, pretend = 0, frame = 24 682 @ frame_needed = 0, uses_anonymous_args = 0 683 .loc 1 334 1 is_stmt 0 view .LVU183 684 0000 00B5 push {lr} 685 .LCFI12: 686 .cfi_def_cfa_offset 4 687 .cfi_offset 14, -4 - 688 0002 85B0 sub sp, sp, #20 - ARM GAS /tmp/ccehMqBJ.s page 21 + 688 0002 87B0 sub sp, sp, #28 + ARM GAS /tmp/ccEjAJiv.s page 21 689 .LCFI13: - 690 .cfi_def_cfa_offset 24 + 690 .cfi_def_cfa_offset 32 335:Src/stm32f7xx_hal_msp.c **** if(htim_base->Instance==TIM4) 691 .loc 1 335 3 is_stmt 1 view .LVU184 692 .loc 1 335 15 is_stmt 0 view .LVU185 693 0004 0368 ldr r3, [r0] 694 .loc 1 335 5 view .LVU186 - 695 0006 294A ldr r2, .L45 + 695 0006 304A ldr r2, .L46 696 0008 9342 cmp r3, r2 - 697 000a 0BD0 beq .L41 + 697 000a 1ED0 beq .L42 336:Src/stm32f7xx_hal_msp.c **** { 337:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 0 */ 338:Src/stm32f7xx_hal_msp.c **** @@ -1221,1036 +1221,1183 @@ ARM GAS /tmp/ccehMqBJ.s page 1 343:Src/stm32f7xx_hal_msp.c **** 344:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspInit 1 */ 345:Src/stm32f7xx_hal_msp.c **** } - 346:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM8) + 346:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM1) 698 .loc 1 346 8 is_stmt 1 view .LVU187 699 .loc 1 346 10 is_stmt 0 view .LVU188 - 700 000c 284A ldr r2, .L45+4 + 700 000c 2F4A ldr r2, .L46+4 701 000e 9342 cmp r3, r2 - 702 0010 13D0 beq .L42 + 702 0010 28D0 beq .L43 347:Src/stm32f7xx_hal_msp.c **** { - 348:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 0 */ + 348:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 0 */ 349:Src/stm32f7xx_hal_msp.c **** - 350:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspInit 0 */ + 350:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspInit 0 */ 351:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ - 352:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM8_CLK_ENABLE(); - 353:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 354:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM8_UP_TIM13_IRQn, 0, 0); - 355:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); - 356:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 1 */ - 357:Src/stm32f7xx_hal_msp.c **** - 358:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspInit 1 */ - 359:Src/stm32f7xx_hal_msp.c **** } - 360:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM10) - 703 .loc 1 360 8 is_stmt 1 view .LVU189 - 704 .loc 1 360 10 is_stmt 0 view .LVU190 - 705 0012 284A ldr r2, .L45+8 + 352:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM1_CLK_ENABLE(); + 353:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 354:Src/stm32f7xx_hal_msp.c **** + 355:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspInit 1 */ + 356:Src/stm32f7xx_hal_msp.c **** } + 357:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM8) + 703 .loc 1 357 8 is_stmt 1 view .LVU189 + 704 .loc 1 357 10 is_stmt 0 view .LVU190 + 705 0012 2F4A ldr r2, .L46+8 706 0014 9342 cmp r3, r2 - 707 0016 23D0 beq .L43 - 361:Src/stm32f7xx_hal_msp.c **** { - 362:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 0 */ - 363:Src/stm32f7xx_hal_msp.c **** - 364:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspInit 0 */ - 365:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ - 366:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM10_CLK_ENABLE(); - 367:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 368:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM1_UP_TIM10_IRQn, 0, 0); - 369:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); - 370:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 1 */ - 371:Src/stm32f7xx_hal_msp.c **** - 372:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspInit 1 */ - ARM GAS /tmp/ccehMqBJ.s page 22 + 707 0016 30D0 beq .L44 + 358:Src/stm32f7xx_hal_msp.c **** { + 359:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 0 */ + 360:Src/stm32f7xx_hal_msp.c **** + 361:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspInit 0 */ + 362:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ + 363:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM8_CLK_ENABLE(); + 364:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 365:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM8_UP_TIM13_IRQn, 0, 0); + 366:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); + 367:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 1 */ + 368:Src/stm32f7xx_hal_msp.c **** + 369:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspInit 1 */ + 370:Src/stm32f7xx_hal_msp.c **** } + 371:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM10) + 708 .loc 1 371 8 is_stmt 1 view .LVU191 + ARM GAS /tmp/ccEjAJiv.s page 22 - 373:Src/stm32f7xx_hal_msp.c **** } - 374:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM11) - 708 .loc 1 374 8 is_stmt 1 view .LVU191 - 709 .loc 1 374 10 is_stmt 0 view .LVU192 - 710 0018 274A ldr r2, .L45+12 + 709 .loc 1 371 10 is_stmt 0 view .LVU192 + 710 0018 2E4A ldr r2, .L46+12 711 001a 9342 cmp r3, r2 - 712 001c 33D0 beq .L44 - 713 .LVL42: - 714 .L35: - 375:Src/stm32f7xx_hal_msp.c **** { - 376:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspInit 0 */ - 377:Src/stm32f7xx_hal_msp.c **** - 378:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspInit 0 */ - 379:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ - 380:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM11_CLK_ENABLE(); - 381:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 382:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM1_TRG_COM_TIM11_IRQn, 0, 0); - 383:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_TRG_COM_TIM11_IRQn); - 384:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspInit 1 */ - 385:Src/stm32f7xx_hal_msp.c **** - 386:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspInit 1 */ - 387:Src/stm32f7xx_hal_msp.c **** } + 712 001c 40D0 beq .L45 + 372:Src/stm32f7xx_hal_msp.c **** { + 373:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 0 */ + 374:Src/stm32f7xx_hal_msp.c **** + 375:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspInit 0 */ + 376:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ + 377:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM10_CLK_ENABLE(); + 378:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 379:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM1_UP_TIM10_IRQn, 0, 0); + 380:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); + 381:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 1 */ + 382:Src/stm32f7xx_hal_msp.c **** + 383:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspInit 1 */ + 384:Src/stm32f7xx_hal_msp.c **** } + 385:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM11) + 713 .loc 1 385 8 is_stmt 1 view .LVU193 + 714 .loc 1 385 10 is_stmt 0 view .LVU194 + 715 001e 2E4A ldr r2, .L46+16 + 716 0020 9342 cmp r3, r2 + 717 0022 1CD1 bne .L35 + 386:Src/stm32f7xx_hal_msp.c **** { + 387:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspInit 0 */ 388:Src/stm32f7xx_hal_msp.c **** - 389:Src/stm32f7xx_hal_msp.c **** } - 715 .loc 1 389 1 view .LVU193 - 716 001e 05B0 add sp, sp, #20 - 717 .LCFI14: - 718 .cfi_remember_state - 719 .cfi_def_cfa_offset 4 - 720 @ sp needed - 721 0020 5DF804FB ldr pc, [sp], #4 - 722 .LVL43: - 723 .L41: - 724 .LCFI15: - 725 .cfi_restore_state + 389:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspInit 0 */ + 390:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ + 391:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM11_CLK_ENABLE(); + 718 .loc 1 391 5 is_stmt 1 view .LVU195 + 719 .LBB13: + 720 .loc 1 391 5 view .LVU196 + 721 .loc 1 391 5 view .LVU197 + 722 0024 2D4B ldr r3, .L46+20 + 723 0026 5A6C ldr r2, [r3, #68] + 724 0028 42F48022 orr r2, r2, #262144 + 725 002c 5A64 str r2, [r3, #68] + 726 .loc 1 391 5 view .LVU198 + 727 002e 5B6C ldr r3, [r3, #68] + 728 0030 03F48023 and r3, r3, #262144 + 729 0034 0593 str r3, [sp, #20] + 730 .loc 1 391 5 view .LVU199 + 731 0036 059B ldr r3, [sp, #20] + 732 .LBE13: + 733 .loc 1 391 5 view .LVU200 + 392:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ + 393:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_SetPriority(TIM1_TRG_COM_TIM11_IRQn, 0, 0); + 734 .loc 1 393 5 view .LVU201 + 735 0038 0022 movs r2, #0 + 736 003a 1146 mov r1, r2 + 737 003c 1A20 movs r0, #26 + 738 .LVL42: + 739 .loc 1 393 5 is_stmt 0 view .LVU202 + 740 003e FFF7FEFF bl HAL_NVIC_SetPriority + 741 .LVL43: + 394:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_TRG_COM_TIM11_IRQn); + 742 .loc 1 394 5 is_stmt 1 view .LVU203 + ARM GAS /tmp/ccEjAJiv.s page 23 + + + 743 0042 1A20 movs r0, #26 + 744 0044 FFF7FEFF bl HAL_NVIC_EnableIRQ + 745 .LVL44: + 395:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspInit 1 */ + 396:Src/stm32f7xx_hal_msp.c **** + 397:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspInit 1 */ + 398:Src/stm32f7xx_hal_msp.c **** } + 399:Src/stm32f7xx_hal_msp.c **** + 400:Src/stm32f7xx_hal_msp.c **** } + 746 .loc 1 400 1 is_stmt 0 view .LVU204 + 747 0048 09E0 b .L35 + 748 .LVL45: + 749 .L42: 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 726 .loc 1 341 5 is_stmt 1 view .LVU194 - 727 .LBB13: + 750 .loc 1 341 5 is_stmt 1 view .LVU205 + 751 .LBB14: 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 728 .loc 1 341 5 view .LVU195 + 752 .loc 1 341 5 view .LVU206 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 729 .loc 1 341 5 view .LVU196 - 730 0024 254B ldr r3, .L45+16 - 731 0026 1A6C ldr r2, [r3, #64] - 732 0028 42F00402 orr r2, r2, #4 - 733 002c 1A64 str r2, [r3, #64] + 753 .loc 1 341 5 view .LVU207 + 754 004a 244B ldr r3, .L46+20 + 755 004c 1A6C ldr r2, [r3, #64] + 756 004e 42F00402 orr r2, r2, #4 + 757 0052 1A64 str r2, [r3, #64] 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 734 .loc 1 341 5 view .LVU197 - 735 002e 1B6C ldr r3, [r3, #64] - 736 0030 03F00403 and r3, r3, #4 - 737 0034 0093 str r3, [sp] + 758 .loc 1 341 5 view .LVU208 + 759 0054 1B6C ldr r3, [r3, #64] + 760 0056 03F00403 and r3, r3, #4 + 761 005a 0193 str r3, [sp, #4] 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 738 .loc 1 341 5 view .LVU198 - 739 0036 009B ldr r3, [sp] - 740 .LBE13: + 762 .loc 1 341 5 view .LVU209 + 763 005c 019B ldr r3, [sp, #4] + 764 .LBE14: 341:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspInit 1 */ - 741 .loc 1 341 5 view .LVU199 - ARM GAS /tmp/ccehMqBJ.s page 23 + 765 .loc 1 341 5 view .LVU210 + 766 .LVL46: + 767 .L35: + 768 .loc 1 400 1 is_stmt 0 view .LVU211 + 769 005e 07B0 add sp, sp, #28 + 770 .LCFI14: + 771 .cfi_remember_state + 772 .cfi_def_cfa_offset 4 + 773 @ sp needed + 774 0060 5DF804FB ldr pc, [sp], #4 + 775 .LVL47: + 776 .L43: + 777 .LCFI15: + 778 .cfi_restore_state + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 779 .loc 1 352 5 is_stmt 1 view .LVU212 + 780 .LBB15: + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 781 .loc 1 352 5 view .LVU213 + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 782 .loc 1 352 5 view .LVU214 + 783 0064 1D4B ldr r3, .L46+20 + 784 0066 5A6C ldr r2, [r3, #68] + ARM GAS /tmp/ccEjAJiv.s page 24 - 742 0038 F1E7 b .L35 - 743 .L42: - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 744 .loc 1 352 5 view .LVU200 - 745 .LBB14: - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 746 .loc 1 352 5 view .LVU201 - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 747 .loc 1 352 5 view .LVU202 - 748 003a 204B ldr r3, .L45+16 - 749 003c 5A6C ldr r2, [r3, #68] - 750 003e 42F00202 orr r2, r2, #2 - 751 0042 5A64 str r2, [r3, #68] - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 752 .loc 1 352 5 view .LVU203 - 753 0044 5B6C ldr r3, [r3, #68] - 754 0046 03F00203 and r3, r3, #2 - 755 004a 0193 str r3, [sp, #4] - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 756 .loc 1 352 5 view .LVU204 - 757 004c 019B ldr r3, [sp, #4] - 758 .LBE14: - 352:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ - 759 .loc 1 352 5 view .LVU205 - 354:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); - 760 .loc 1 354 5 view .LVU206 - 761 004e 0022 movs r2, #0 - 762 0050 1146 mov r1, r2 - 763 0052 2C20 movs r0, #44 - 764 .LVL44: - 354:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); - 765 .loc 1 354 5 is_stmt 0 view .LVU207 - 766 0054 FFF7FEFF bl HAL_NVIC_SetPriority - 767 .LVL45: - 355:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 1 */ - 768 .loc 1 355 5 is_stmt 1 view .LVU208 - 769 0058 2C20 movs r0, #44 - 770 005a FFF7FEFF bl HAL_NVIC_EnableIRQ - 771 .LVL46: - 772 005e DEE7 b .L35 - 773 .LVL47: - 774 .L43: - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 775 .loc 1 366 5 view .LVU209 - 776 .LBB15: - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 777 .loc 1 366 5 view .LVU210 - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 778 .loc 1 366 5 view .LVU211 - 779 0060 164B ldr r3, .L45+16 - 780 0062 5A6C ldr r2, [r3, #68] - 781 0064 42F40032 orr r2, r2, #131072 - 782 0068 5A64 str r2, [r3, #68] - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 783 .loc 1 366 5 view .LVU212 - 784 006a 5B6C ldr r3, [r3, #68] - 785 006c 03F40033 and r3, r3, #131072 - ARM GAS /tmp/ccehMqBJ.s page 24 + 785 0068 42F00102 orr r2, r2, #1 + 786 006c 5A64 str r2, [r3, #68] + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 787 .loc 1 352 5 view .LVU215 + 788 006e 5B6C ldr r3, [r3, #68] + 789 0070 03F00103 and r3, r3, #1 + 790 0074 0293 str r3, [sp, #8] + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 791 .loc 1 352 5 view .LVU216 + 792 0076 029B ldr r3, [sp, #8] + 793 .LBE15: + 352:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspInit 1 */ + 794 .loc 1 352 5 view .LVU217 + 795 0078 F1E7 b .L35 + 796 .L44: + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 797 .loc 1 363 5 view .LVU218 + 798 .LBB16: + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 799 .loc 1 363 5 view .LVU219 + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 800 .loc 1 363 5 view .LVU220 + 801 007a 184B ldr r3, .L46+20 + 802 007c 5A6C ldr r2, [r3, #68] + 803 007e 42F00202 orr r2, r2, #2 + 804 0082 5A64 str r2, [r3, #68] + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 805 .loc 1 363 5 view .LVU221 + 806 0084 5B6C ldr r3, [r3, #68] + 807 0086 03F00203 and r3, r3, #2 + 808 008a 0393 str r3, [sp, #12] + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 809 .loc 1 363 5 view .LVU222 + 810 008c 039B ldr r3, [sp, #12] + 811 .LBE16: + 363:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt Init */ + 812 .loc 1 363 5 view .LVU223 + 365:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); + 813 .loc 1 365 5 view .LVU224 + 814 008e 0022 movs r2, #0 + 815 0090 1146 mov r1, r2 + 816 0092 2C20 movs r0, #44 + 817 .LVL48: + 365:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); + 818 .loc 1 365 5 is_stmt 0 view .LVU225 + 819 0094 FFF7FEFF bl HAL_NVIC_SetPriority + 820 .LVL49: + 366:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspInit 1 */ + 821 .loc 1 366 5 is_stmt 1 view .LVU226 + 822 0098 2C20 movs r0, #44 + 823 009a FFF7FEFF bl HAL_NVIC_EnableIRQ + 824 .LVL50: + 825 009e DEE7 b .L35 + 826 .LVL51: + 827 .L45: + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 828 .loc 1 377 5 view .LVU227 + ARM GAS /tmp/ccEjAJiv.s page 25 - 786 0070 0293 str r3, [sp, #8] - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 787 .loc 1 366 5 view .LVU213 - 788 0072 029B ldr r3, [sp, #8] - 789 .LBE15: - 366:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ - 790 .loc 1 366 5 view .LVU214 - 368:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); - 791 .loc 1 368 5 view .LVU215 - 792 0074 0022 movs r2, #0 - 793 0076 1146 mov r1, r2 - 794 0078 1920 movs r0, #25 - 795 .LVL48: - 368:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); - 796 .loc 1 368 5 is_stmt 0 view .LVU216 - 797 007a FFF7FEFF bl HAL_NVIC_SetPriority - 798 .LVL49: - 369:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 1 */ - 799 .loc 1 369 5 is_stmt 1 view .LVU217 - 800 007e 1920 movs r0, #25 - 801 0080 FFF7FEFF bl HAL_NVIC_EnableIRQ - 802 .LVL50: - 803 0084 CBE7 b .L35 - 804 .LVL51: - 805 .L44: - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 806 .loc 1 380 5 view .LVU218 - 807 .LBB16: - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 808 .loc 1 380 5 view .LVU219 - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 809 .loc 1 380 5 view .LVU220 - 810 0086 0D4B ldr r3, .L45+16 - 811 0088 5A6C ldr r2, [r3, #68] - 812 008a 42F48022 orr r2, r2, #262144 - 813 008e 5A64 str r2, [r3, #68] - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 814 .loc 1 380 5 view .LVU221 - 815 0090 5B6C ldr r3, [r3, #68] - 816 0092 03F48023 and r3, r3, #262144 - 817 0096 0393 str r3, [sp, #12] - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 818 .loc 1 380 5 view .LVU222 - 819 0098 039B ldr r3, [sp, #12] - 820 .LBE16: - 380:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt Init */ - 821 .loc 1 380 5 view .LVU223 - 382:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_TRG_COM_TIM11_IRQn); - 822 .loc 1 382 5 view .LVU224 - 823 009a 0022 movs r2, #0 - 824 009c 1146 mov r1, r2 - 825 009e 1A20 movs r0, #26 - 826 .LVL52: - 382:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_TRG_COM_TIM11_IRQn); - 827 .loc 1 382 5 is_stmt 0 view .LVU225 - 828 00a0 FFF7FEFF bl HAL_NVIC_SetPriority - 829 .LVL53: - ARM GAS /tmp/ccehMqBJ.s page 25 + 829 .LBB17: + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 830 .loc 1 377 5 view .LVU228 + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 831 .loc 1 377 5 view .LVU229 + 832 00a0 0E4B ldr r3, .L46+20 + 833 00a2 5A6C ldr r2, [r3, #68] + 834 00a4 42F40032 orr r2, r2, #131072 + 835 00a8 5A64 str r2, [r3, #68] + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 836 .loc 1 377 5 view .LVU230 + 837 00aa 5B6C ldr r3, [r3, #68] + 838 00ac 03F40033 and r3, r3, #131072 + 839 00b0 0493 str r3, [sp, #16] + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 840 .loc 1 377 5 view .LVU231 + 841 00b2 049B ldr r3, [sp, #16] + 842 .LBE17: + 377:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt Init */ + 843 .loc 1 377 5 view .LVU232 + 379:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); + 844 .loc 1 379 5 view .LVU233 + 845 00b4 0022 movs r2, #0 + 846 00b6 1146 mov r1, r2 + 847 00b8 1920 movs r0, #25 + 848 .LVL52: + 379:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_EnableIRQ(TIM1_UP_TIM10_IRQn); + 849 .loc 1 379 5 is_stmt 0 view .LVU234 + 850 00ba FFF7FEFF bl HAL_NVIC_SetPriority + 851 .LVL53: + 380:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspInit 1 */ + 852 .loc 1 380 5 is_stmt 1 view .LVU235 + 853 00be 1920 movs r0, #25 + 854 00c0 FFF7FEFF bl HAL_NVIC_EnableIRQ + 855 .LVL54: + 856 00c4 CBE7 b .L35 + 857 .L47: + 858 00c6 00BF .align 2 + 859 .L46: + 860 00c8 00080040 .word 1073743872 + 861 00cc 00000140 .word 1073807360 + 862 00d0 00040140 .word 1073808384 + 863 00d4 00440140 .word 1073824768 + 864 00d8 00480140 .word 1073825792 + 865 00dc 00380240 .word 1073887232 + 866 .cfi_endproc + 867 .LFE1188: + 869 .section .text.HAL_TIM_MspPostInit,"ax",%progbits + 870 .align 1 + 871 .global HAL_TIM_MspPostInit + 872 .syntax unified + 873 .thumb + 874 .thumb_func + 876 HAL_TIM_MspPostInit: + 877 .LVL55: + 878 .LFB1189: + 401:Src/stm32f7xx_hal_msp.c **** + ARM GAS /tmp/ccEjAJiv.s page 26 - 383:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspInit 1 */ - 830 .loc 1 383 5 is_stmt 1 view .LVU226 - 831 00a4 1A20 movs r0, #26 - 832 00a6 FFF7FEFF bl HAL_NVIC_EnableIRQ - 833 .LVL54: - 834 .loc 1 389 1 is_stmt 0 view .LVU227 - 835 00aa B8E7 b .L35 - 836 .L46: - 837 .align 2 - 838 .L45: - 839 00ac 00080040 .word 1073743872 - 840 00b0 00040140 .word 1073808384 - 841 00b4 00440140 .word 1073824768 - 842 00b8 00480140 .word 1073825792 - 843 00bc 00380240 .word 1073887232 - 844 .cfi_endproc - 845 .LFE1188: - 847 .section .text.HAL_TIM_MspPostInit,"ax",%progbits - 848 .align 1 - 849 .global HAL_TIM_MspPostInit - 850 .syntax unified - 851 .thumb - 852 .thumb_func - 854 HAL_TIM_MspPostInit: - 855 .LVL55: - 856 .LFB1189: - 390:Src/stm32f7xx_hal_msp.c **** - 391:Src/stm32f7xx_hal_msp.c **** void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) - 392:Src/stm32f7xx_hal_msp.c **** { - 857 .loc 1 392 1 is_stmt 1 view -0 - 858 .cfi_startproc - 859 @ args = 0, pretend = 0, frame = 32 - 860 @ frame_needed = 0, uses_anonymous_args = 0 - 861 .loc 1 392 1 is_stmt 0 view .LVU229 - 862 0000 00B5 push {lr} - 863 .LCFI16: - 864 .cfi_def_cfa_offset 4 - 865 .cfi_offset 14, -4 - 866 0002 89B0 sub sp, sp, #36 - 867 .LCFI17: - 868 .cfi_def_cfa_offset 40 - 393:Src/stm32f7xx_hal_msp.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; - 869 .loc 1 393 3 is_stmt 1 view .LVU230 - 870 .loc 1 393 20 is_stmt 0 view .LVU231 - 871 0004 0023 movs r3, #0 - 872 0006 0393 str r3, [sp, #12] - 873 0008 0493 str r3, [sp, #16] - 874 000a 0593 str r3, [sp, #20] - 875 000c 0693 str r3, [sp, #24] - 876 000e 0793 str r3, [sp, #28] - 394:Src/stm32f7xx_hal_msp.c **** if(htim->Instance==TIM4) - 877 .loc 1 394 3 is_stmt 1 view .LVU232 - 878 .loc 1 394 10 is_stmt 0 view .LVU233 - 879 0010 0368 ldr r3, [r0] - 880 .loc 1 394 5 view .LVU234 - 881 0012 1A4A ldr r2, .L53 - 882 0014 9342 cmp r3, r2 - ARM GAS /tmp/ccehMqBJ.s page 26 + 402:Src/stm32f7xx_hal_msp.c **** void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim) + 403:Src/stm32f7xx_hal_msp.c **** { + 879 .loc 1 403 1 view -0 + 880 .cfi_startproc + 881 @ args = 0, pretend = 0, frame = 32 + 882 @ frame_needed = 0, uses_anonymous_args = 0 + 883 .loc 1 403 1 is_stmt 0 view .LVU237 + 884 0000 00B5 push {lr} + 885 .LCFI16: + 886 .cfi_def_cfa_offset 4 + 887 .cfi_offset 14, -4 + 888 0002 89B0 sub sp, sp, #36 + 889 .LCFI17: + 890 .cfi_def_cfa_offset 40 + 404:Src/stm32f7xx_hal_msp.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; + 891 .loc 1 404 3 is_stmt 1 view .LVU238 + 892 .loc 1 404 20 is_stmt 0 view .LVU239 + 893 0004 0023 movs r3, #0 + 894 0006 0393 str r3, [sp, #12] + 895 0008 0493 str r3, [sp, #16] + 896 000a 0593 str r3, [sp, #20] + 897 000c 0693 str r3, [sp, #24] + 898 000e 0793 str r3, [sp, #28] + 405:Src/stm32f7xx_hal_msp.c **** if(htim->Instance==TIM4) + 899 .loc 1 405 3 is_stmt 1 view .LVU240 + 900 .loc 1 405 10 is_stmt 0 view .LVU241 + 901 0010 0368 ldr r3, [r0] + 902 .loc 1 405 5 view .LVU242 + 903 0012 274A ldr r2, .L56 + 904 0014 9342 cmp r3, r2 + 905 0016 08D0 beq .L53 + 406:Src/stm32f7xx_hal_msp.c **** { + 407:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspPostInit 0 */ + 408:Src/stm32f7xx_hal_msp.c **** + 409:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspPostInit 0 */ + 410:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); + 411:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 412:Src/stm32f7xx_hal_msp.c **** PB8 ------> TIM4_CH3 + 413:Src/stm32f7xx_hal_msp.c **** */ + 414:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_8; + 415:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 416:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 417:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 418:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF2_TIM4; + 419:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 420:Src/stm32f7xx_hal_msp.c **** + 421:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspPostInit 1 */ + 422:Src/stm32f7xx_hal_msp.c **** + 423:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspPostInit 1 */ + 424:Src/stm32f7xx_hal_msp.c **** } + 425:Src/stm32f7xx_hal_msp.c **** else if(htim->Instance==TIM1) + 906 .loc 1 425 8 is_stmt 1 view .LVU243 + 907 .loc 1 425 10 is_stmt 0 view .LVU244 + 908 0018 264A ldr r2, .L56+4 + 909 001a 9342 cmp r3, r2 + 910 001c 1AD0 beq .L54 + 426:Src/stm32f7xx_hal_msp.c **** { + ARM GAS /tmp/ccEjAJiv.s page 27 - 883 0016 05D0 beq .L51 - 395:Src/stm32f7xx_hal_msp.c **** { - 396:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspPostInit 0 */ - 397:Src/stm32f7xx_hal_msp.c **** - 398:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspPostInit 0 */ - 399:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); - 400:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 401:Src/stm32f7xx_hal_msp.c **** PB8 ------> TIM4_CH3 - 402:Src/stm32f7xx_hal_msp.c **** */ - 403:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_8; - 404:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 405:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 406:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - 407:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF2_TIM4; - 408:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 409:Src/stm32f7xx_hal_msp.c **** - 410:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspPostInit 1 */ - 411:Src/stm32f7xx_hal_msp.c **** - 412:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspPostInit 1 */ - 413:Src/stm32f7xx_hal_msp.c **** } - 414:Src/stm32f7xx_hal_msp.c **** else if(htim->Instance==TIM11) - 884 .loc 1 414 8 is_stmt 1 view .LVU235 - 885 .loc 1 414 10 is_stmt 0 view .LVU236 - 886 0018 194A ldr r2, .L53+4 - 887 001a 9342 cmp r3, r2 - 888 001c 17D0 beq .L52 - 889 .LVL56: - 890 .L47: - 415:Src/stm32f7xx_hal_msp.c **** { - 416:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspPostInit 0 */ - 417:Src/stm32f7xx_hal_msp.c **** - 418:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspPostInit 0 */ - 419:Src/stm32f7xx_hal_msp.c **** - 420:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); - 421:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 422:Src/stm32f7xx_hal_msp.c **** PB9 ------> TIM11_CH1 - 423:Src/stm32f7xx_hal_msp.c **** */ - 424:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_9; - 425:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 426:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 427:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - 428:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF3_TIM11; - 429:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 427:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspPostInit 0 */ + 428:Src/stm32f7xx_hal_msp.c **** + 429:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspPostInit 0 */ 430:Src/stm32f7xx_hal_msp.c **** - 431:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspPostInit 1 */ - 432:Src/stm32f7xx_hal_msp.c **** - 433:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspPostInit 1 */ - 434:Src/stm32f7xx_hal_msp.c **** } - 435:Src/stm32f7xx_hal_msp.c **** - 436:Src/stm32f7xx_hal_msp.c **** } - 891 .loc 1 436 1 view .LVU237 - 892 001e 09B0 add sp, sp, #36 - 893 .LCFI18: - 894 .cfi_remember_state - 895 .cfi_def_cfa_offset 4 - 896 @ sp needed - 897 0020 5DF804FB ldr pc, [sp], #4 - ARM GAS /tmp/ccehMqBJ.s page 27 - - - 898 .LVL57: - 899 .L51: - 900 .LCFI19: - 901 .cfi_restore_state - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 902 .loc 1 399 5 is_stmt 1 view .LVU238 - 903 .LBB17: - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 904 .loc 1 399 5 view .LVU239 - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 905 .loc 1 399 5 view .LVU240 - 906 0024 174B ldr r3, .L53+8 - 907 0026 1A6B ldr r2, [r3, #48] - 908 0028 42F00202 orr r2, r2, #2 - 909 002c 1A63 str r2, [r3, #48] - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 910 .loc 1 399 5 view .LVU241 - 911 002e 1B6B ldr r3, [r3, #48] - 912 0030 03F00203 and r3, r3, #2 - 913 0034 0193 str r3, [sp, #4] - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 914 .loc 1 399 5 view .LVU242 - 915 0036 019B ldr r3, [sp, #4] - 916 .LBE17: - 399:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration - 917 .loc 1 399 5 view .LVU243 - 403:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 918 .loc 1 403 5 view .LVU244 - 403:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 919 .loc 1 403 25 is_stmt 0 view .LVU245 - 920 0038 4FF48073 mov r3, #256 - 921 003c 0393 str r3, [sp, #12] - 404:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 922 .loc 1 404 5 is_stmt 1 view .LVU246 - 404:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 923 .loc 1 404 26 is_stmt 0 view .LVU247 - 924 003e 0223 movs r3, #2 - 925 0040 0493 str r3, [sp, #16] - 405:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - 926 .loc 1 405 5 is_stmt 1 view .LVU248 - 406:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF2_TIM4; - 927 .loc 1 406 5 view .LVU249 - 407:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 928 .loc 1 407 5 view .LVU250 - 407:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 929 .loc 1 407 31 is_stmt 0 view .LVU251 - 930 0042 0793 str r3, [sp, #28] - 408:Src/stm32f7xx_hal_msp.c **** - 931 .loc 1 408 5 is_stmt 1 view .LVU252 - 932 0044 03A9 add r1, sp, #12 - 933 0046 1048 ldr r0, .L53+12 - 934 .LVL58: - 408:Src/stm32f7xx_hal_msp.c **** - 935 .loc 1 408 5 is_stmt 0 view .LVU253 - 936 0048 FFF7FEFF bl HAL_GPIO_Init - 937 .LVL59: - 938 004c E7E7 b .L47 - ARM GAS /tmp/ccehMqBJ.s page 28 - - - 939 .LVL60: - 940 .L52: - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 941 .loc 1 420 5 is_stmt 1 view .LVU254 - 942 .LBB18: - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 943 .loc 1 420 5 view .LVU255 - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 944 .loc 1 420 5 view .LVU256 - 945 004e 0D4B ldr r3, .L53+8 - 946 0050 1A6B ldr r2, [r3, #48] - 947 0052 42F00202 orr r2, r2, #2 - 948 0056 1A63 str r2, [r3, #48] - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 949 .loc 1 420 5 view .LVU257 - 950 0058 1B6B ldr r3, [r3, #48] - 951 005a 03F00203 and r3, r3, #2 - 952 005e 0293 str r3, [sp, #8] - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 953 .loc 1 420 5 view .LVU258 - 954 0060 029B ldr r3, [sp, #8] - 955 .LBE18: - 420:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration - 956 .loc 1 420 5 view .LVU259 - 424:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 957 .loc 1 424 5 view .LVU260 - 424:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 958 .loc 1 424 25 is_stmt 0 view .LVU261 - 959 0062 4FF40073 mov r3, #512 - 960 0066 0393 str r3, [sp, #12] - 425:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 961 .loc 1 425 5 is_stmt 1 view .LVU262 - 425:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 962 .loc 1 425 26 is_stmt 0 view .LVU263 - 963 0068 0223 movs r3, #2 - 964 006a 0493 str r3, [sp, #16] - 426:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; - 965 .loc 1 426 5 is_stmt 1 view .LVU264 - 427:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF3_TIM11; - 966 .loc 1 427 5 view .LVU265 - 428:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 967 .loc 1 428 5 view .LVU266 - 428:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); - 968 .loc 1 428 31 is_stmt 0 view .LVU267 - 969 006c 0323 movs r3, #3 - 970 006e 0793 str r3, [sp, #28] - 429:Src/stm32f7xx_hal_msp.c **** - 971 .loc 1 429 5 is_stmt 1 view .LVU268 - 972 0070 03A9 add r1, sp, #12 - 973 0072 0548 ldr r0, .L53+12 - 974 .LVL61: - 429:Src/stm32f7xx_hal_msp.c **** - 975 .loc 1 429 5 is_stmt 0 view .LVU269 - 976 0074 FFF7FEFF bl HAL_GPIO_Init - 977 .LVL62: - 978 .loc 1 436 1 view .LVU270 - 979 0078 D1E7 b .L47 - ARM GAS /tmp/ccehMqBJ.s page 29 - - - 980 .L54: - 981 007a 00BF .align 2 - 982 .L53: - 983 007c 00080040 .word 1073743872 - 984 0080 00480140 .word 1073825792 - 985 0084 00380240 .word 1073887232 - 986 0088 00040240 .word 1073873920 - 987 .cfi_endproc - 988 .LFE1189: - 990 .section .text.HAL_TIM_Base_MspDeInit,"ax",%progbits - 991 .align 1 - 992 .global HAL_TIM_Base_MspDeInit - 993 .syntax unified - 994 .thumb - 995 .thumb_func - 997 HAL_TIM_Base_MspDeInit: - 998 .LVL63: - 999 .LFB1190: - 437:Src/stm32f7xx_hal_msp.c **** /** - 438:Src/stm32f7xx_hal_msp.c **** * @brief TIM_Base MSP De-Initialization - 439:Src/stm32f7xx_hal_msp.c **** * This function freeze the hardware resources used in this example - 440:Src/stm32f7xx_hal_msp.c **** * @param htim_base: TIM_Base handle pointer - 441:Src/stm32f7xx_hal_msp.c **** * @retval None - 442:Src/stm32f7xx_hal_msp.c **** */ - 443:Src/stm32f7xx_hal_msp.c **** void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) - 444:Src/stm32f7xx_hal_msp.c **** { - 1000 .loc 1 444 1 is_stmt 1 view -0 - 1001 .cfi_startproc - 1002 @ args = 0, pretend = 0, frame = 0 - 1003 @ frame_needed = 0, uses_anonymous_args = 0 - 1004 .loc 1 444 1 is_stmt 0 view .LVU272 - 1005 0000 08B5 push {r3, lr} - 1006 .LCFI20: - 1007 .cfi_def_cfa_offset 8 - 1008 .cfi_offset 3, -8 - 1009 .cfi_offset 14, -4 - 445:Src/stm32f7xx_hal_msp.c **** if(htim_base->Instance==TIM4) - 1010 .loc 1 445 3 is_stmt 1 view .LVU273 - 1011 .loc 1 445 15 is_stmt 0 view .LVU274 - 1012 0002 0368 ldr r3, [r0] - 1013 .loc 1 445 5 view .LVU275 - 1014 0004 184A ldr r2, .L65 - 1015 0006 9342 cmp r3, r2 - 1016 0008 09D0 beq .L61 - 446:Src/stm32f7xx_hal_msp.c **** { - 447:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 0 */ - 448:Src/stm32f7xx_hal_msp.c **** - 449:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspDeInit 0 */ - 450:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ - 451:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM4_CLK_DISABLE(); - 452:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 1 */ - 453:Src/stm32f7xx_hal_msp.c **** - 454:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspDeInit 1 */ - 455:Src/stm32f7xx_hal_msp.c **** } - 456:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM8) - 1017 .loc 1 456 8 is_stmt 1 view .LVU276 - 1018 .loc 1 456 10 is_stmt 0 view .LVU277 - ARM GAS /tmp/ccehMqBJ.s page 30 - - - 1019 000a 184A ldr r2, .L65+4 - 1020 000c 9342 cmp r3, r2 - 1021 000e 0DD0 beq .L62 - 457:Src/stm32f7xx_hal_msp.c **** { - 458:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 0 */ - 459:Src/stm32f7xx_hal_msp.c **** - 460:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspDeInit 0 */ - 461:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ - 462:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM8_CLK_DISABLE(); - 463:Src/stm32f7xx_hal_msp.c **** - 464:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt DeInit */ - 465:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM8_UP_TIM13_IRQn); - 466:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ - 467:Src/stm32f7xx_hal_msp.c **** - 468:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspDeInit 1 */ - 469:Src/stm32f7xx_hal_msp.c **** } - 470:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM10) - 1022 .loc 1 470 8 is_stmt 1 view .LVU278 - 1023 .loc 1 470 10 is_stmt 0 view .LVU279 - 1024 0010 174A ldr r2, .L65+8 - 1025 0012 9342 cmp r3, r2 - 1026 0014 14D0 beq .L63 - 471:Src/stm32f7xx_hal_msp.c **** { - 472:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 0 */ - 473:Src/stm32f7xx_hal_msp.c **** - 474:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspDeInit 0 */ - 475:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ - 476:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM10_CLK_DISABLE(); - 477:Src/stm32f7xx_hal_msp.c **** - 478:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt DeInit */ - 479:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM1_UP_TIM10_IRQn); - 480:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ - 481:Src/stm32f7xx_hal_msp.c **** - 482:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspDeInit 1 */ - 483:Src/stm32f7xx_hal_msp.c **** } - 484:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM11) - 1027 .loc 1 484 8 is_stmt 1 view .LVU280 - 1028 .loc 1 484 10 is_stmt 0 view .LVU281 - 1029 0016 174A ldr r2, .L65+12 - 1030 0018 9342 cmp r3, r2 - 1031 001a 1BD0 beq .L64 - 1032 .LVL64: - 1033 .L55: - 485:Src/stm32f7xx_hal_msp.c **** { - 486:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 0 */ - 487:Src/stm32f7xx_hal_msp.c **** - 488:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspDeInit 0 */ - 489:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ - 490:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM11_CLK_DISABLE(); - 491:Src/stm32f7xx_hal_msp.c **** - 492:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt DeInit */ - 493:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM1_TRG_COM_TIM11_IRQn); - 494:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 1 */ - 495:Src/stm32f7xx_hal_msp.c **** - 496:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspDeInit 1 */ - 497:Src/stm32f7xx_hal_msp.c **** } - 498:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 31 - - - 499:Src/stm32f7xx_hal_msp.c **** } - 1034 .loc 1 499 1 view .LVU282 - 1035 001c 08BD pop {r3, pc} - 1036 .LVL65: - 1037 .L61: - 451:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 1 */ - 1038 .loc 1 451 5 is_stmt 1 view .LVU283 - 1039 001e 02F50C32 add r2, r2, #143360 - 1040 0022 136C ldr r3, [r2, #64] - 1041 0024 23F00403 bic r3, r3, #4 - 1042 0028 1364 str r3, [r2, #64] - 1043 002a F7E7 b .L55 - 1044 .L62: + 431:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOE_CLK_ENABLE(); + 432:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 433:Src/stm32f7xx_hal_msp.c **** PE9 ------> TIM1_CH1 + 434:Src/stm32f7xx_hal_msp.c **** */ + 435:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_9; + 436:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 437:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 438:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + 439:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF1_TIM1; + 440:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 441:Src/stm32f7xx_hal_msp.c **** + 442:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspPostInit 1 */ + 443:Src/stm32f7xx_hal_msp.c **** + 444:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspPostInit 1 */ + 445:Src/stm32f7xx_hal_msp.c **** } + 446:Src/stm32f7xx_hal_msp.c **** else if(htim->Instance==TIM11) + 911 .loc 1 446 8 is_stmt 1 view .LVU245 + 912 .loc 1 446 10 is_stmt 0 view .LVU246 + 913 001e 264A ldr r2, .L56+8 + 914 0020 9342 cmp r3, r2 + 915 0022 2FD0 beq .L55 + 916 .LVL56: + 917 .L48: + 447:Src/stm32f7xx_hal_msp.c **** { + 448:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspPostInit 0 */ + 449:Src/stm32f7xx_hal_msp.c **** + 450:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspPostInit 0 */ + 451:Src/stm32f7xx_hal_msp.c **** + 452:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOB_CLK_ENABLE(); + 453:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 454:Src/stm32f7xx_hal_msp.c **** PB9 ------> TIM11_CH1 + 455:Src/stm32f7xx_hal_msp.c **** */ + 456:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_9; + 457:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 458:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 459:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 460:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF3_TIM11; + 461:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); 462:Src/stm32f7xx_hal_msp.c **** - 1045 .loc 1 462 5 view .LVU284 - 1046 002c 02F59A32 add r2, r2, #78848 - 1047 0030 536C ldr r3, [r2, #68] - 1048 0032 23F00203 bic r3, r3, #2 - 1049 0036 5364 str r3, [r2, #68] - 465:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ - 1050 .loc 1 465 5 view .LVU285 - 1051 0038 2C20 movs r0, #44 - 1052 .LVL66: - 465:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ - 1053 .loc 1 465 5 is_stmt 0 view .LVU286 - 1054 003a FFF7FEFF bl HAL_NVIC_DisableIRQ - 1055 .LVL67: - 1056 003e EDE7 b .L55 - 1057 .LVL68: - 1058 .L63: - 476:Src/stm32f7xx_hal_msp.c **** - 1059 .loc 1 476 5 is_stmt 1 view .LVU287 - 1060 0040 02F57442 add r2, r2, #62464 - 1061 0044 536C ldr r3, [r2, #68] - 1062 0046 23F40033 bic r3, r3, #131072 - 1063 004a 5364 str r3, [r2, #68] - 479:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ - 1064 .loc 1 479 5 view .LVU288 - 1065 004c 1920 movs r0, #25 - 1066 .LVL69: - 479:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ - 1067 .loc 1 479 5 is_stmt 0 view .LVU289 - 1068 004e FFF7FEFF bl HAL_NVIC_DisableIRQ - 1069 .LVL70: - 1070 0052 E3E7 b .L55 - 1071 .LVL71: - 1072 .L64: - 490:Src/stm32f7xx_hal_msp.c **** - 1073 .loc 1 490 5 is_stmt 1 view .LVU290 - 1074 0054 02F57042 add r2, r2, #61440 - 1075 0058 536C ldr r3, [r2, #68] - 1076 005a 23F48023 bic r3, r3, #262144 - 1077 005e 5364 str r3, [r2, #68] - 493:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 1 */ - 1078 .loc 1 493 5 view .LVU291 - 1079 0060 1A20 movs r0, #26 - 1080 .LVL72: - ARM GAS /tmp/ccehMqBJ.s page 32 + 463:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspPostInit 1 */ + 464:Src/stm32f7xx_hal_msp.c **** + 465:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspPostInit 1 */ + 466:Src/stm32f7xx_hal_msp.c **** } + 467:Src/stm32f7xx_hal_msp.c **** + 468:Src/stm32f7xx_hal_msp.c **** } + 918 .loc 1 468 1 view .LVU247 + 919 0024 09B0 add sp, sp, #36 + 920 .LCFI18: + 921 .cfi_remember_state + 922 .cfi_def_cfa_offset 4 + 923 @ sp needed + 924 0026 5DF804FB ldr pc, [sp], #4 + 925 .LVL57: + ARM GAS /tmp/ccEjAJiv.s page 28 - 493:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 1 */ - 1081 .loc 1 493 5 is_stmt 0 view .LVU292 - 1082 0062 FFF7FEFF bl HAL_NVIC_DisableIRQ - 1083 .LVL73: - 1084 .loc 1 499 1 view .LVU293 - 1085 0066 D9E7 b .L55 - 1086 .L66: - 1087 .align 2 - 1088 .L65: - 1089 0068 00080040 .word 1073743872 - 1090 006c 00040140 .word 1073808384 - 1091 0070 00440140 .word 1073824768 - 1092 0074 00480140 .word 1073825792 - 1093 .cfi_endproc - 1094 .LFE1190: - 1096 .section .text.HAL_UART_MspInit,"ax",%progbits - 1097 .align 1 - 1098 .global HAL_UART_MspInit - 1099 .syntax unified - 1100 .thumb - 1101 .thumb_func - 1103 HAL_UART_MspInit: - 1104 .LVL74: - 1105 .LFB1191: - 500:Src/stm32f7xx_hal_msp.c **** - 501:Src/stm32f7xx_hal_msp.c **** /** - 502:Src/stm32f7xx_hal_msp.c **** * @brief UART MSP Initialization - 503:Src/stm32f7xx_hal_msp.c **** * This function configures the hardware resources used in this example - 504:Src/stm32f7xx_hal_msp.c **** * @param huart: UART handle pointer - 505:Src/stm32f7xx_hal_msp.c **** * @retval None - 506:Src/stm32f7xx_hal_msp.c **** */ - 507:Src/stm32f7xx_hal_msp.c **** void HAL_UART_MspInit(UART_HandleTypeDef* huart) - 508:Src/stm32f7xx_hal_msp.c **** { - 1106 .loc 1 508 1 is_stmt 1 view -0 - 1107 .cfi_startproc - 1108 @ args = 0, pretend = 0, frame = 176 - 1109 @ frame_needed = 0, uses_anonymous_args = 0 - 1110 .loc 1 508 1 is_stmt 0 view .LVU295 - 1111 0000 10B5 push {r4, lr} - 1112 .LCFI21: - 1113 .cfi_def_cfa_offset 8 - 1114 .cfi_offset 4, -8 - 1115 .cfi_offset 14, -4 - 1116 0002 ACB0 sub sp, sp, #176 - 1117 .LCFI22: - 1118 .cfi_def_cfa_offset 184 - 1119 0004 0446 mov r4, r0 - 509:Src/stm32f7xx_hal_msp.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; - 1120 .loc 1 509 3 is_stmt 1 view .LVU296 - 1121 .loc 1 509 20 is_stmt 0 view .LVU297 - 1122 0006 0021 movs r1, #0 - 1123 0008 2791 str r1, [sp, #156] - 1124 000a 2891 str r1, [sp, #160] - 1125 000c 2991 str r1, [sp, #164] - 1126 000e 2A91 str r1, [sp, #168] - 1127 0010 2B91 str r1, [sp, #172] - 510:Src/stm32f7xx_hal_msp.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; - ARM GAS /tmp/ccehMqBJ.s page 33 + 926 .L53: + 927 .LCFI19: + 928 .cfi_restore_state + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 929 .loc 1 410 5 is_stmt 1 view .LVU248 + 930 .LBB18: + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 931 .loc 1 410 5 view .LVU249 + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 932 .loc 1 410 5 view .LVU250 + 933 002a 244B ldr r3, .L56+12 + 934 002c 1A6B ldr r2, [r3, #48] + 935 002e 42F00202 orr r2, r2, #2 + 936 0032 1A63 str r2, [r3, #48] + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 937 .loc 1 410 5 view .LVU251 + 938 0034 1B6B ldr r3, [r3, #48] + 939 0036 03F00203 and r3, r3, #2 + 940 003a 0093 str r3, [sp] + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 941 .loc 1 410 5 view .LVU252 + 942 003c 009B ldr r3, [sp] + 943 .LBE18: + 410:Src/stm32f7xx_hal_msp.c **** /**TIM4 GPIO Configuration + 944 .loc 1 410 5 view .LVU253 + 414:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 945 .loc 1 414 5 view .LVU254 + 414:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 946 .loc 1 414 25 is_stmt 0 view .LVU255 + 947 003e 4FF48073 mov r3, #256 + 948 0042 0393 str r3, [sp, #12] + 415:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 949 .loc 1 415 5 is_stmt 1 view .LVU256 + 415:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 950 .loc 1 415 26 is_stmt 0 view .LVU257 + 951 0044 0223 movs r3, #2 + 952 0046 0493 str r3, [sp, #16] + 416:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 953 .loc 1 416 5 is_stmt 1 view .LVU258 + 417:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF2_TIM4; + 954 .loc 1 417 5 view .LVU259 + 418:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 955 .loc 1 418 5 view .LVU260 + 418:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 956 .loc 1 418 31 is_stmt 0 view .LVU261 + 957 0048 0793 str r3, [sp, #28] + 419:Src/stm32f7xx_hal_msp.c **** + 958 .loc 1 419 5 is_stmt 1 view .LVU262 + 959 004a 03A9 add r1, sp, #12 + 960 004c 1C48 ldr r0, .L56+16 + 961 .LVL58: + 419:Src/stm32f7xx_hal_msp.c **** + 962 .loc 1 419 5 is_stmt 0 view .LVU263 + 963 004e FFF7FEFF bl HAL_GPIO_Init + 964 .LVL59: + 965 0052 E7E7 b .L48 + 966 .LVL60: + ARM GAS /tmp/ccEjAJiv.s page 29 - 1128 .loc 1 510 3 is_stmt 1 view .LVU298 - 1129 .loc 1 510 28 is_stmt 0 view .LVU299 - 1130 0012 9022 movs r2, #144 - 1131 0014 03A8 add r0, sp, #12 - 1132 .LVL75: - 1133 .loc 1 510 28 view .LVU300 - 1134 0016 FFF7FEFF bl memset - 1135 .LVL76: - 511:Src/stm32f7xx_hal_msp.c **** if(huart->Instance==UART8) - 1136 .loc 1 511 3 is_stmt 1 view .LVU301 - 1137 .loc 1 511 11 is_stmt 0 view .LVU302 - 1138 001a 2268 ldr r2, [r4] - 1139 .loc 1 511 5 view .LVU303 - 1140 001c 174B ldr r3, .L73 - 1141 001e 9A42 cmp r2, r3 - 1142 0020 01D0 beq .L71 - 1143 .L67: - 512:Src/stm32f7xx_hal_msp.c **** { - 513:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspInit 0 */ - 514:Src/stm32f7xx_hal_msp.c **** - 515:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspInit 0 */ + 967 .L54: + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 968 .loc 1 431 5 is_stmt 1 view .LVU264 + 969 .LBB19: + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 970 .loc 1 431 5 view .LVU265 + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 971 .loc 1 431 5 view .LVU266 + 972 0054 194B ldr r3, .L56+12 + 973 0056 1A6B ldr r2, [r3, #48] + 974 0058 42F01002 orr r2, r2, #16 + 975 005c 1A63 str r2, [r3, #48] + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 976 .loc 1 431 5 view .LVU267 + 977 005e 1B6B ldr r3, [r3, #48] + 978 0060 03F01003 and r3, r3, #16 + 979 0064 0193 str r3, [sp, #4] + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 980 .loc 1 431 5 view .LVU268 + 981 0066 019B ldr r3, [sp, #4] + 982 .LBE19: + 431:Src/stm32f7xx_hal_msp.c **** /**TIM1 GPIO Configuration + 983 .loc 1 431 5 view .LVU269 + 435:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 984 .loc 1 435 5 view .LVU270 + 435:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 985 .loc 1 435 25 is_stmt 0 view .LVU271 + 986 0068 4FF40073 mov r3, #512 + 987 006c 0393 str r3, [sp, #12] + 436:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 988 .loc 1 436 5 is_stmt 1 view .LVU272 + 436:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 989 .loc 1 436 26 is_stmt 0 view .LVU273 + 990 006e 0223 movs r3, #2 + 991 0070 0493 str r3, [sp, #16] + 437:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + 992 .loc 1 437 5 is_stmt 1 view .LVU274 + 438:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF1_TIM1; + 993 .loc 1 438 5 view .LVU275 + 438:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF1_TIM1; + 994 .loc 1 438 27 is_stmt 0 view .LVU276 + 995 0072 0323 movs r3, #3 + 996 0074 0693 str r3, [sp, #24] + 439:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 997 .loc 1 439 5 is_stmt 1 view .LVU277 + 439:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 998 .loc 1 439 31 is_stmt 0 view .LVU278 + 999 0076 0123 movs r3, #1 + 1000 0078 0793 str r3, [sp, #28] + 440:Src/stm32f7xx_hal_msp.c **** + 1001 .loc 1 440 5 is_stmt 1 view .LVU279 + 1002 007a 03A9 add r1, sp, #12 + 1003 007c 1148 ldr r0, .L56+20 + 1004 .LVL61: + 440:Src/stm32f7xx_hal_msp.c **** + 1005 .loc 1 440 5 is_stmt 0 view .LVU280 + 1006 007e FFF7FEFF bl HAL_GPIO_Init + ARM GAS /tmp/ccEjAJiv.s page 30 + + + 1007 .LVL62: + 1008 0082 CFE7 b .L48 + 1009 .LVL63: + 1010 .L55: + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1011 .loc 1 452 5 is_stmt 1 view .LVU281 + 1012 .LBB20: + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1013 .loc 1 452 5 view .LVU282 + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1014 .loc 1 452 5 view .LVU283 + 1015 0084 0D4B ldr r3, .L56+12 + 1016 0086 1A6B ldr r2, [r3, #48] + 1017 0088 42F00202 orr r2, r2, #2 + 1018 008c 1A63 str r2, [r3, #48] + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1019 .loc 1 452 5 view .LVU284 + 1020 008e 1B6B ldr r3, [r3, #48] + 1021 0090 03F00203 and r3, r3, #2 + 1022 0094 0293 str r3, [sp, #8] + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1023 .loc 1 452 5 view .LVU285 + 1024 0096 029B ldr r3, [sp, #8] + 1025 .LBE20: + 452:Src/stm32f7xx_hal_msp.c **** /**TIM11 GPIO Configuration + 1026 .loc 1 452 5 view .LVU286 + 456:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 1027 .loc 1 456 5 view .LVU287 + 456:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 1028 .loc 1 456 25 is_stmt 0 view .LVU288 + 1029 0098 4FF40073 mov r3, #512 + 1030 009c 0393 str r3, [sp, #12] + 457:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 1031 .loc 1 457 5 is_stmt 1 view .LVU289 + 457:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 1032 .loc 1 457 26 is_stmt 0 view .LVU290 + 1033 009e 0223 movs r3, #2 + 1034 00a0 0493 str r3, [sp, #16] + 458:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; + 1035 .loc 1 458 5 is_stmt 1 view .LVU291 + 459:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF3_TIM11; + 1036 .loc 1 459 5 view .LVU292 + 460:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 1037 .loc 1 460 5 view .LVU293 + 460:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); + 1038 .loc 1 460 31 is_stmt 0 view .LVU294 + 1039 00a2 0323 movs r3, #3 + 1040 00a4 0793 str r3, [sp, #28] + 461:Src/stm32f7xx_hal_msp.c **** + 1041 .loc 1 461 5 is_stmt 1 view .LVU295 + 1042 00a6 03A9 add r1, sp, #12 + 1043 00a8 0548 ldr r0, .L56+16 + 1044 .LVL64: + 461:Src/stm32f7xx_hal_msp.c **** + 1045 .loc 1 461 5 is_stmt 0 view .LVU296 + 1046 00aa FFF7FEFF bl HAL_GPIO_Init + 1047 .LVL65: + ARM GAS /tmp/ccEjAJiv.s page 31 + + + 1048 .loc 1 468 1 view .LVU297 + 1049 00ae B9E7 b .L48 + 1050 .L57: + 1051 .align 2 + 1052 .L56: + 1053 00b0 00080040 .word 1073743872 + 1054 00b4 00000140 .word 1073807360 + 1055 00b8 00480140 .word 1073825792 + 1056 00bc 00380240 .word 1073887232 + 1057 00c0 00040240 .word 1073873920 + 1058 00c4 00100240 .word 1073876992 + 1059 .cfi_endproc + 1060 .LFE1189: + 1062 .section .text.HAL_TIM_Base_MspDeInit,"ax",%progbits + 1063 .align 1 + 1064 .global HAL_TIM_Base_MspDeInit + 1065 .syntax unified + 1066 .thumb + 1067 .thumb_func + 1069 HAL_TIM_Base_MspDeInit: + 1070 .LVL66: + 1071 .LFB1190: + 469:Src/stm32f7xx_hal_msp.c **** /** + 470:Src/stm32f7xx_hal_msp.c **** * @brief TIM_Base MSP De-Initialization + 471:Src/stm32f7xx_hal_msp.c **** * This function freeze the hardware resources used in this example + 472:Src/stm32f7xx_hal_msp.c **** * @param htim_base: TIM_Base handle pointer + 473:Src/stm32f7xx_hal_msp.c **** * @retval None + 474:Src/stm32f7xx_hal_msp.c **** */ + 475:Src/stm32f7xx_hal_msp.c **** void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base) + 476:Src/stm32f7xx_hal_msp.c **** { + 1072 .loc 1 476 1 is_stmt 1 view -0 + 1073 .cfi_startproc + 1074 @ args = 0, pretend = 0, frame = 0 + 1075 @ frame_needed = 0, uses_anonymous_args = 0 + 1076 .loc 1 476 1 is_stmt 0 view .LVU299 + 1077 0000 08B5 push {r3, lr} + 1078 .LCFI20: + 1079 .cfi_def_cfa_offset 8 + 1080 .cfi_offset 3, -8 + 1081 .cfi_offset 14, -4 + 477:Src/stm32f7xx_hal_msp.c **** if(htim_base->Instance==TIM4) + 1082 .loc 1 477 3 is_stmt 1 view .LVU300 + 1083 .loc 1 477 15 is_stmt 0 view .LVU301 + 1084 0002 0368 ldr r3, [r0] + 1085 .loc 1 477 5 view .LVU302 + 1086 0004 1D4A ldr r2, .L69 + 1087 0006 9342 cmp r3, r2 + 1088 0008 15D0 beq .L65 + 478:Src/stm32f7xx_hal_msp.c **** { + 479:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 0 */ + 480:Src/stm32f7xx_hal_msp.c **** + 481:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspDeInit 0 */ + 482:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 483:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM4_CLK_DISABLE(); + 484:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 1 */ + 485:Src/stm32f7xx_hal_msp.c **** + 486:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM4_MspDeInit 1 */ + ARM GAS /tmp/ccEjAJiv.s page 32 + + + 487:Src/stm32f7xx_hal_msp.c **** } + 488:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM1) + 1089 .loc 1 488 8 is_stmt 1 view .LVU303 + 1090 .loc 1 488 10 is_stmt 0 view .LVU304 + 1091 000a 1D4A ldr r2, .L69+4 + 1092 000c 9342 cmp r3, r2 + 1093 000e 19D0 beq .L66 + 489:Src/stm32f7xx_hal_msp.c **** { + 490:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspDeInit 0 */ + 491:Src/stm32f7xx_hal_msp.c **** + 492:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspDeInit 0 */ + 493:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 494:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM1_CLK_DISABLE(); + 495:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspDeInit 1 */ + 496:Src/stm32f7xx_hal_msp.c **** + 497:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM1_MspDeInit 1 */ + 498:Src/stm32f7xx_hal_msp.c **** } + 499:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM8) + 1094 .loc 1 499 8 is_stmt 1 view .LVU305 + 1095 .loc 1 499 10 is_stmt 0 view .LVU306 + 1096 0010 1C4A ldr r2, .L69+8 + 1097 0012 9342 cmp r3, r2 + 1098 0014 1DD0 beq .L67 + 500:Src/stm32f7xx_hal_msp.c **** { + 501:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 0 */ + 502:Src/stm32f7xx_hal_msp.c **** + 503:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspDeInit 0 */ + 504:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 505:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM8_CLK_DISABLE(); + 506:Src/stm32f7xx_hal_msp.c **** + 507:Src/stm32f7xx_hal_msp.c **** /* TIM8 interrupt DeInit */ + 508:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM8_UP_TIM13_IRQn); + 509:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ + 510:Src/stm32f7xx_hal_msp.c **** + 511:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM8_MspDeInit 1 */ + 512:Src/stm32f7xx_hal_msp.c **** } + 513:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM10) + 1099 .loc 1 513 8 is_stmt 1 view .LVU307 + 1100 .loc 1 513 10 is_stmt 0 view .LVU308 + 1101 0016 1C4A ldr r2, .L69+12 + 1102 0018 9342 cmp r3, r2 + 1103 001a 24D0 beq .L68 + 514:Src/stm32f7xx_hal_msp.c **** { + 515:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 0 */ 516:Src/stm32f7xx_hal_msp.c **** - 517:Src/stm32f7xx_hal_msp.c **** /** Initializes the peripherals clock - 518:Src/stm32f7xx_hal_msp.c **** */ - 519:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_UART8; - 520:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; - 521:Src/stm32f7xx_hal_msp.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) - 522:Src/stm32f7xx_hal_msp.c **** { - 523:Src/stm32f7xx_hal_msp.c **** Error_Handler(); - 524:Src/stm32f7xx_hal_msp.c **** } - 525:Src/stm32f7xx_hal_msp.c **** - 526:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ - 527:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_UART8_CLK_ENABLE(); - 528:Src/stm32f7xx_hal_msp.c **** - 529:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOE_CLK_ENABLE(); - 530:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 531:Src/stm32f7xx_hal_msp.c **** PE0 ------> UART8_RX - 532:Src/stm32f7xx_hal_msp.c **** PE1 ------> UART8_TX - 533:Src/stm32f7xx_hal_msp.c **** */ - 534:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1; - 535:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 536:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 537:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; - 538:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; - 539:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 540:Src/stm32f7xx_hal_msp.c **** - 541:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspInit 1 */ - 542:Src/stm32f7xx_hal_msp.c **** - 543:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspInit 1 */ - 544:Src/stm32f7xx_hal_msp.c **** - 545:Src/stm32f7xx_hal_msp.c **** } - 546:Src/stm32f7xx_hal_msp.c **** - 547:Src/stm32f7xx_hal_msp.c **** } - 1144 .loc 1 547 1 view .LVU304 - 1145 0022 2CB0 add sp, sp, #176 - 1146 .LCFI23: - 1147 .cfi_remember_state - ARM GAS /tmp/ccehMqBJ.s page 34 + 517:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspDeInit 0 */ + 518:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 519:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM10_CLK_DISABLE(); + 520:Src/stm32f7xx_hal_msp.c **** + 521:Src/stm32f7xx_hal_msp.c **** /* TIM10 interrupt DeInit */ + 522:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM1_UP_TIM10_IRQn); + 523:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ + 524:Src/stm32f7xx_hal_msp.c **** + 525:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM10_MspDeInit 1 */ + 526:Src/stm32f7xx_hal_msp.c **** } + 527:Src/stm32f7xx_hal_msp.c **** else if(htim_base->Instance==TIM11) + 1104 .loc 1 527 8 is_stmt 1 view .LVU309 + ARM GAS /tmp/ccEjAJiv.s page 33 - 1148 .cfi_def_cfa_offset 8 - 1149 @ sp needed - 1150 0024 10BD pop {r4, pc} - 1151 .LVL77: - 1152 .L71: - 1153 .LCFI24: - 1154 .cfi_restore_state - 519:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; - 1155 .loc 1 519 5 is_stmt 1 view .LVU305 - 519:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; - 1156 .loc 1 519 46 is_stmt 0 view .LVU306 - 1157 0026 4FF40053 mov r3, #8192 - 1158 002a 0393 str r3, [sp, #12] - 520:Src/stm32f7xx_hal_msp.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) - 1159 .loc 1 520 5 is_stmt 1 view .LVU307 - 521:Src/stm32f7xx_hal_msp.c **** { - 1160 .loc 1 521 5 view .LVU308 - 521:Src/stm32f7xx_hal_msp.c **** { - 1161 .loc 1 521 9 is_stmt 0 view .LVU309 - 1162 002c 03A8 add r0, sp, #12 - 1163 002e FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig - 1164 .LVL78: - 521:Src/stm32f7xx_hal_msp.c **** { - 1165 .loc 1 521 8 discriminator 1 view .LVU310 - 1166 0032 00BB cbnz r0, .L72 - 1167 .L69: - 527:Src/stm32f7xx_hal_msp.c **** - 1168 .loc 1 527 5 is_stmt 1 view .LVU311 - 1169 .LBB19: - 527:Src/stm32f7xx_hal_msp.c **** - 1170 .loc 1 527 5 view .LVU312 - 527:Src/stm32f7xx_hal_msp.c **** - 1171 .loc 1 527 5 view .LVU313 - 1172 0034 124B ldr r3, .L73+4 - 1173 0036 1A6C ldr r2, [r3, #64] - 1174 0038 42F00042 orr r2, r2, #-2147483648 - 1175 003c 1A64 str r2, [r3, #64] - 527:Src/stm32f7xx_hal_msp.c **** - 1176 .loc 1 527 5 view .LVU314 - 1177 003e 1A6C ldr r2, [r3, #64] - 1178 0040 02F00042 and r2, r2, #-2147483648 - 1179 0044 0192 str r2, [sp, #4] - 527:Src/stm32f7xx_hal_msp.c **** - 1180 .loc 1 527 5 view .LVU315 - 1181 0046 019A ldr r2, [sp, #4] - 1182 .LBE19: - 527:Src/stm32f7xx_hal_msp.c **** - 1183 .loc 1 527 5 view .LVU316 - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1184 .loc 1 529 5 view .LVU317 - 1185 .LBB20: - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1186 .loc 1 529 5 view .LVU318 - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1187 .loc 1 529 5 view .LVU319 - 1188 0048 1A6B ldr r2, [r3, #48] - 1189 004a 42F01002 orr r2, r2, #16 - ARM GAS /tmp/ccehMqBJ.s page 35 + 1105 .loc 1 527 10 is_stmt 0 view .LVU310 + 1106 001c 1B4A ldr r2, .L69+16 + 1107 001e 9342 cmp r3, r2 + 1108 0020 0FD1 bne .L58 + 528:Src/stm32f7xx_hal_msp.c **** { + 529:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 0 */ + 530:Src/stm32f7xx_hal_msp.c **** + 531:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspDeInit 0 */ + 532:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 533:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_TIM11_CLK_DISABLE(); + 1109 .loc 1 533 5 is_stmt 1 view .LVU311 + 1110 0022 02F57042 add r2, r2, #61440 + 1111 0026 536C ldr r3, [r2, #68] + 1112 0028 23F48023 bic r3, r3, #262144 + 1113 002c 5364 str r3, [r2, #68] + 534:Src/stm32f7xx_hal_msp.c **** + 535:Src/stm32f7xx_hal_msp.c **** /* TIM11 interrupt DeInit */ + 536:Src/stm32f7xx_hal_msp.c **** HAL_NVIC_DisableIRQ(TIM1_TRG_COM_TIM11_IRQn); + 1114 .loc 1 536 5 view .LVU312 + 1115 002e 1A20 movs r0, #26 + 1116 .LVL67: + 1117 .loc 1 536 5 is_stmt 0 view .LVU313 + 1118 0030 FFF7FEFF bl HAL_NVIC_DisableIRQ + 1119 .LVL68: + 537:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM11_MspDeInit 1 */ + 538:Src/stm32f7xx_hal_msp.c **** + 539:Src/stm32f7xx_hal_msp.c **** /* USER CODE END TIM11_MspDeInit 1 */ + 540:Src/stm32f7xx_hal_msp.c **** } + 541:Src/stm32f7xx_hal_msp.c **** + 542:Src/stm32f7xx_hal_msp.c **** } + 1120 .loc 1 542 1 view .LVU314 + 1121 0034 05E0 b .L58 + 1122 .LVL69: + 1123 .L65: + 483:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM4_MspDeInit 1 */ + 1124 .loc 1 483 5 is_stmt 1 view .LVU315 + 1125 0036 02F50C32 add r2, r2, #143360 + 1126 003a 136C ldr r3, [r2, #64] + 1127 003c 23F00403 bic r3, r3, #4 + 1128 0040 1364 str r3, [r2, #64] + 1129 .LVL70: + 1130 .L58: + 1131 .loc 1 542 1 is_stmt 0 view .LVU316 + 1132 0042 08BD pop {r3, pc} + 1133 .LVL71: + 1134 .L66: + 494:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM1_MspDeInit 1 */ + 1135 .loc 1 494 5 is_stmt 1 view .LVU317 + 1136 0044 02F59C32 add r2, r2, #79872 + 1137 0048 536C ldr r3, [r2, #68] + 1138 004a 23F00103 bic r3, r3, #1 + 1139 004e 5364 str r3, [r2, #68] + 1140 0050 F7E7 b .L58 + 1141 .L67: + 505:Src/stm32f7xx_hal_msp.c **** + 1142 .loc 1 505 5 view .LVU318 + 1143 0052 02F59A32 add r2, r2, #78848 + ARM GAS /tmp/ccEjAJiv.s page 34 - 1190 004e 1A63 str r2, [r3, #48] - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1191 .loc 1 529 5 view .LVU320 - 1192 0050 1B6B ldr r3, [r3, #48] - 1193 0052 03F01003 and r3, r3, #16 - 1194 0056 0293 str r3, [sp, #8] - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1195 .loc 1 529 5 view .LVU321 - 1196 0058 029B ldr r3, [sp, #8] - 1197 .LBE20: - 529:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 1198 .loc 1 529 5 view .LVU322 - 534:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 1199 .loc 1 534 5 view .LVU323 - 534:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; - 1200 .loc 1 534 25 is_stmt 0 view .LVU324 - 1201 005a 0323 movs r3, #3 - 1202 005c 2793 str r3, [sp, #156] - 535:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 1203 .loc 1 535 5 is_stmt 1 view .LVU325 - 535:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; - 1204 .loc 1 535 26 is_stmt 0 view .LVU326 - 1205 005e 0222 movs r2, #2 - 1206 0060 2892 str r2, [sp, #160] - 536:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; - 1207 .loc 1 536 5 is_stmt 1 view .LVU327 - 536:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; - 1208 .loc 1 536 26 is_stmt 0 view .LVU328 - 1209 0062 0022 movs r2, #0 - 1210 0064 2992 str r2, [sp, #164] - 537:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; - 1211 .loc 1 537 5 is_stmt 1 view .LVU329 - 537:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; - 1212 .loc 1 537 27 is_stmt 0 view .LVU330 - 1213 0066 2A93 str r3, [sp, #168] - 538:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 1214 .loc 1 538 5 is_stmt 1 view .LVU331 - 538:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); - 1215 .loc 1 538 31 is_stmt 0 view .LVU332 - 1216 0068 0823 movs r3, #8 - 1217 006a 2B93 str r3, [sp, #172] - 539:Src/stm32f7xx_hal_msp.c **** - 1218 .loc 1 539 5 is_stmt 1 view .LVU333 - 1219 006c 27A9 add r1, sp, #156 - 1220 006e 0548 ldr r0, .L73+8 - 1221 0070 FFF7FEFF bl HAL_GPIO_Init - 1222 .LVL79: - 1223 .loc 1 547 1 is_stmt 0 view .LVU334 - 1224 0074 D5E7 b .L67 - 1225 .L72: - 523:Src/stm32f7xx_hal_msp.c **** } - 1226 .loc 1 523 7 is_stmt 1 view .LVU335 - 1227 0076 FFF7FEFF bl Error_Handler - 1228 .LVL80: - 1229 007a DBE7 b .L69 - 1230 .L74: - 1231 .align 2 - ARM GAS /tmp/ccehMqBJ.s page 36 + 1144 0056 536C ldr r3, [r2, #68] + 1145 0058 23F00203 bic r3, r3, #2 + 1146 005c 5364 str r3, [r2, #68] + 508:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ + 1147 .loc 1 508 5 view .LVU319 + 1148 005e 2C20 movs r0, #44 + 1149 .LVL72: + 508:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM8_MspDeInit 1 */ + 1150 .loc 1 508 5 is_stmt 0 view .LVU320 + 1151 0060 FFF7FEFF bl HAL_NVIC_DisableIRQ + 1152 .LVL73: + 1153 0064 EDE7 b .L58 + 1154 .LVL74: + 1155 .L68: + 519:Src/stm32f7xx_hal_msp.c **** + 1156 .loc 1 519 5 is_stmt 1 view .LVU321 + 1157 0066 02F57442 add r2, r2, #62464 + 1158 006a 536C ldr r3, [r2, #68] + 1159 006c 23F40033 bic r3, r3, #131072 + 1160 0070 5364 str r3, [r2, #68] + 522:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ + 1161 .loc 1 522 5 view .LVU322 + 1162 0072 1920 movs r0, #25 + 1163 .LVL75: + 522:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN TIM10_MspDeInit 1 */ + 1164 .loc 1 522 5 is_stmt 0 view .LVU323 + 1165 0074 FFF7FEFF bl HAL_NVIC_DisableIRQ + 1166 .LVL76: + 1167 0078 E3E7 b .L58 + 1168 .L70: + 1169 007a 00BF .align 2 + 1170 .L69: + 1171 007c 00080040 .word 1073743872 + 1172 0080 00000140 .word 1073807360 + 1173 0084 00040140 .word 1073808384 + 1174 0088 00440140 .word 1073824768 + 1175 008c 00480140 .word 1073825792 + 1176 .cfi_endproc + 1177 .LFE1190: + 1179 .section .text.HAL_UART_MspInit,"ax",%progbits + 1180 .align 1 + 1181 .global HAL_UART_MspInit + 1182 .syntax unified + 1183 .thumb + 1184 .thumb_func + 1186 HAL_UART_MspInit: + 1187 .LVL77: + 1188 .LFB1191: + 543:Src/stm32f7xx_hal_msp.c **** + 544:Src/stm32f7xx_hal_msp.c **** /** + 545:Src/stm32f7xx_hal_msp.c **** * @brief UART MSP Initialization + 546:Src/stm32f7xx_hal_msp.c **** * This function configures the hardware resources used in this example + 547:Src/stm32f7xx_hal_msp.c **** * @param huart: UART handle pointer + 548:Src/stm32f7xx_hal_msp.c **** * @retval None + 549:Src/stm32f7xx_hal_msp.c **** */ + 550:Src/stm32f7xx_hal_msp.c **** void HAL_UART_MspInit(UART_HandleTypeDef* huart) + 551:Src/stm32f7xx_hal_msp.c **** { + ARM GAS /tmp/ccEjAJiv.s page 35 - 1232 .L73: - 1233 007c 007C0040 .word 1073773568 - 1234 0080 00380240 .word 1073887232 - 1235 0084 00100240 .word 1073876992 - 1236 .cfi_endproc - 1237 .LFE1191: - 1239 .section .text.HAL_UART_MspDeInit,"ax",%progbits - 1240 .align 1 - 1241 .global HAL_UART_MspDeInit - 1242 .syntax unified - 1243 .thumb - 1244 .thumb_func - 1246 HAL_UART_MspDeInit: + 1189 .loc 1 551 1 is_stmt 1 view -0 + 1190 .cfi_startproc + 1191 @ args = 0, pretend = 0, frame = 176 + 1192 @ frame_needed = 0, uses_anonymous_args = 0 + 1193 .loc 1 551 1 is_stmt 0 view .LVU325 + 1194 0000 10B5 push {r4, lr} + 1195 .LCFI21: + 1196 .cfi_def_cfa_offset 8 + 1197 .cfi_offset 4, -8 + 1198 .cfi_offset 14, -4 + 1199 0002 ACB0 sub sp, sp, #176 + 1200 .LCFI22: + 1201 .cfi_def_cfa_offset 184 + 1202 0004 0446 mov r4, r0 + 552:Src/stm32f7xx_hal_msp.c **** GPIO_InitTypeDef GPIO_InitStruct = {0}; + 1203 .loc 1 552 3 is_stmt 1 view .LVU326 + 1204 .loc 1 552 20 is_stmt 0 view .LVU327 + 1205 0006 0021 movs r1, #0 + 1206 0008 2791 str r1, [sp, #156] + 1207 000a 2891 str r1, [sp, #160] + 1208 000c 2991 str r1, [sp, #164] + 1209 000e 2A91 str r1, [sp, #168] + 1210 0010 2B91 str r1, [sp, #172] + 553:Src/stm32f7xx_hal_msp.c **** RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0}; + 1211 .loc 1 553 3 is_stmt 1 view .LVU328 + 1212 .loc 1 553 28 is_stmt 0 view .LVU329 + 1213 0012 9022 movs r2, #144 + 1214 0014 03A8 add r0, sp, #12 + 1215 .LVL78: + 1216 .loc 1 553 28 view .LVU330 + 1217 0016 FFF7FEFF bl memset + 1218 .LVL79: + 554:Src/stm32f7xx_hal_msp.c **** if(huart->Instance==UART8) + 1219 .loc 1 554 3 is_stmt 1 view .LVU331 + 1220 .loc 1 554 11 is_stmt 0 view .LVU332 + 1221 001a 2268 ldr r2, [r4] + 1222 .loc 1 554 5 view .LVU333 + 1223 001c 174B ldr r3, .L77 + 1224 001e 9A42 cmp r2, r3 + 1225 0020 01D0 beq .L75 + 1226 .L71: + 555:Src/stm32f7xx_hal_msp.c **** { + 556:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspInit 0 */ + 557:Src/stm32f7xx_hal_msp.c **** + 558:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspInit 0 */ + 559:Src/stm32f7xx_hal_msp.c **** + 560:Src/stm32f7xx_hal_msp.c **** /** Initializes the peripherals clock + 561:Src/stm32f7xx_hal_msp.c **** */ + 562:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_UART8; + 563:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; + 564:Src/stm32f7xx_hal_msp.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) + 565:Src/stm32f7xx_hal_msp.c **** { + 566:Src/stm32f7xx_hal_msp.c **** Error_Handler(); + 567:Src/stm32f7xx_hal_msp.c **** } + 568:Src/stm32f7xx_hal_msp.c **** + 569:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock enable */ + 570:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_UART8_CLK_ENABLE(); + ARM GAS /tmp/ccEjAJiv.s page 36 + + + 571:Src/stm32f7xx_hal_msp.c **** + 572:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_GPIOE_CLK_ENABLE(); + 573:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 574:Src/stm32f7xx_hal_msp.c **** PE0 ------> UART8_RX + 575:Src/stm32f7xx_hal_msp.c **** PE1 ------> UART8_TX + 576:Src/stm32f7xx_hal_msp.c **** */ + 577:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1; + 578:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 579:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 580:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + 581:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; + 582:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 583:Src/stm32f7xx_hal_msp.c **** + 584:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspInit 1 */ + 585:Src/stm32f7xx_hal_msp.c **** + 586:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspInit 1 */ + 587:Src/stm32f7xx_hal_msp.c **** + 588:Src/stm32f7xx_hal_msp.c **** } + 589:Src/stm32f7xx_hal_msp.c **** + 590:Src/stm32f7xx_hal_msp.c **** } + 1227 .loc 1 590 1 view .LVU334 + 1228 0022 2CB0 add sp, sp, #176 + 1229 .LCFI23: + 1230 .cfi_remember_state + 1231 .cfi_def_cfa_offset 8 + 1232 @ sp needed + 1233 0024 10BD pop {r4, pc} + 1234 .LVL80: + 1235 .L75: + 1236 .LCFI24: + 1237 .cfi_restore_state + 562:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; + 1238 .loc 1 562 5 is_stmt 1 view .LVU335 + 562:Src/stm32f7xx_hal_msp.c **** PeriphClkInitStruct.Uart8ClockSelection = RCC_UART8CLKSOURCE_PCLK1; + 1239 .loc 1 562 46 is_stmt 0 view .LVU336 + 1240 0026 4FF40053 mov r3, #8192 + 1241 002a 0393 str r3, [sp, #12] + 563:Src/stm32f7xx_hal_msp.c **** if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) + 1242 .loc 1 563 5 is_stmt 1 view .LVU337 + 564:Src/stm32f7xx_hal_msp.c **** { + 1243 .loc 1 564 5 view .LVU338 + 564:Src/stm32f7xx_hal_msp.c **** { + 1244 .loc 1 564 9 is_stmt 0 view .LVU339 + 1245 002c 03A8 add r0, sp, #12 + 1246 002e FFF7FEFF bl HAL_RCCEx_PeriphCLKConfig 1247 .LVL81: - 1248 .LFB1192: - 548:Src/stm32f7xx_hal_msp.c **** - 549:Src/stm32f7xx_hal_msp.c **** /** - 550:Src/stm32f7xx_hal_msp.c **** * @brief UART MSP De-Initialization - 551:Src/stm32f7xx_hal_msp.c **** * This function freeze the hardware resources used in this example - 552:Src/stm32f7xx_hal_msp.c **** * @param huart: UART handle pointer - 553:Src/stm32f7xx_hal_msp.c **** * @retval None - 554:Src/stm32f7xx_hal_msp.c **** */ - 555:Src/stm32f7xx_hal_msp.c **** void HAL_UART_MspDeInit(UART_HandleTypeDef* huart) - 556:Src/stm32f7xx_hal_msp.c **** { - 1249 .loc 1 556 1 view -0 - 1250 .cfi_startproc - 1251 @ args = 0, pretend = 0, frame = 0 - 1252 @ frame_needed = 0, uses_anonymous_args = 0 - 1253 .loc 1 556 1 is_stmt 0 view .LVU337 - 1254 0000 08B5 push {r3, lr} - 1255 .LCFI25: - 1256 .cfi_def_cfa_offset 8 - 1257 .cfi_offset 3, -8 - 1258 .cfi_offset 14, -4 - 557:Src/stm32f7xx_hal_msp.c **** if(huart->Instance==UART8) - 1259 .loc 1 557 3 is_stmt 1 view .LVU338 - 1260 .loc 1 557 11 is_stmt 0 view .LVU339 - 1261 0002 0268 ldr r2, [r0] - 1262 .loc 1 557 5 view .LVU340 - 1263 0004 064B ldr r3, .L79 - 1264 0006 9A42 cmp r2, r3 - 1265 0008 00D0 beq .L78 - 1266 .LVL82: - 1267 .L75: - 558:Src/stm32f7xx_hal_msp.c **** { - 559:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspDeInit 0 */ - 560:Src/stm32f7xx_hal_msp.c **** - 561:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspDeInit 0 */ - 562:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ - 563:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_UART8_CLK_DISABLE(); - 564:Src/stm32f7xx_hal_msp.c **** - 565:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration - 566:Src/stm32f7xx_hal_msp.c **** PE0 ------> UART8_RX - 567:Src/stm32f7xx_hal_msp.c **** PE1 ------> UART8_TX - 568:Src/stm32f7xx_hal_msp.c **** */ - 569:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_DeInit(GPIOE, GPIO_PIN_0|GPIO_PIN_1); + 564:Src/stm32f7xx_hal_msp.c **** { + 1248 .loc 1 564 8 discriminator 1 view .LVU340 + 1249 0032 00BB cbnz r0, .L76 + 1250 .L73: 570:Src/stm32f7xx_hal_msp.c **** - ARM GAS /tmp/ccehMqBJ.s page 37 + 1251 .loc 1 570 5 is_stmt 1 view .LVU341 + 1252 .LBB21: + 570:Src/stm32f7xx_hal_msp.c **** + 1253 .loc 1 570 5 view .LVU342 + 570:Src/stm32f7xx_hal_msp.c **** + 1254 .loc 1 570 5 view .LVU343 + ARM GAS /tmp/ccEjAJiv.s page 37 - 571:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspDeInit 1 */ - 572:Src/stm32f7xx_hal_msp.c **** - 573:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspDeInit 1 */ - 574:Src/stm32f7xx_hal_msp.c **** } - 575:Src/stm32f7xx_hal_msp.c **** - 576:Src/stm32f7xx_hal_msp.c **** } - 1268 .loc 1 576 1 view .LVU341 - 1269 000a 08BD pop {r3, pc} - 1270 .LVL83: - 1271 .L78: - 563:Src/stm32f7xx_hal_msp.c **** - 1272 .loc 1 563 5 is_stmt 1 view .LVU342 - 1273 000c 054A ldr r2, .L79+4 - 1274 000e 136C ldr r3, [r2, #64] - 1275 0010 23F00043 bic r3, r3, #-2147483648 - 1276 0014 1364 str r3, [r2, #64] - 569:Src/stm32f7xx_hal_msp.c **** - 1277 .loc 1 569 5 view .LVU343 - 1278 0016 0321 movs r1, #3 - 1279 0018 0348 ldr r0, .L79+8 - 1280 .LVL84: - 569:Src/stm32f7xx_hal_msp.c **** - 1281 .loc 1 569 5 is_stmt 0 view .LVU344 - 1282 001a FFF7FEFF bl HAL_GPIO_DeInit - 1283 .LVL85: - 1284 .loc 1 576 1 view .LVU345 - 1285 001e F4E7 b .L75 - 1286 .L80: - 1287 .align 2 - 1288 .L79: - 1289 0020 007C0040 .word 1073773568 - 1290 0024 00380240 .word 1073887232 - 1291 0028 00100240 .word 1073876992 - 1292 .cfi_endproc - 1293 .LFE1192: - 1295 .text - 1296 .Letext0: - 1297 .file 2 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" - 1298 .file 3 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" - 1299 .file 4 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" - 1300 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" - 1301 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc_ex.h" - 1302 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" - 1303 .file 8 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" - 1304 .file 9 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" - 1305 .file 10 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h" - 1306 .file 11 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h" - 1307 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" - 1308 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_uart.h" - 1309 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" - 1310 .file 15 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" - 1311 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" - 1312 .file 17 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_cortex.h" - 1313 .file 18 "Inc/main.h" - 1314 .file 19 "" - ARM GAS /tmp/ccehMqBJ.s page 38 + 1255 0034 124B ldr r3, .L77+4 + 1256 0036 1A6C ldr r2, [r3, #64] + 1257 0038 42F00042 orr r2, r2, #-2147483648 + 1258 003c 1A64 str r2, [r3, #64] + 570:Src/stm32f7xx_hal_msp.c **** + 1259 .loc 1 570 5 view .LVU344 + 1260 003e 1A6C ldr r2, [r3, #64] + 1261 0040 02F00042 and r2, r2, #-2147483648 + 1262 0044 0192 str r2, [sp, #4] + 570:Src/stm32f7xx_hal_msp.c **** + 1263 .loc 1 570 5 view .LVU345 + 1264 0046 019A ldr r2, [sp, #4] + 1265 .LBE21: + 570:Src/stm32f7xx_hal_msp.c **** + 1266 .loc 1 570 5 view .LVU346 + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1267 .loc 1 572 5 view .LVU347 + 1268 .LBB22: + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1269 .loc 1 572 5 view .LVU348 + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1270 .loc 1 572 5 view .LVU349 + 1271 0048 1A6B ldr r2, [r3, #48] + 1272 004a 42F01002 orr r2, r2, #16 + 1273 004e 1A63 str r2, [r3, #48] + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1274 .loc 1 572 5 view .LVU350 + 1275 0050 1B6B ldr r3, [r3, #48] + 1276 0052 03F01003 and r3, r3, #16 + 1277 0056 0293 str r3, [sp, #8] + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1278 .loc 1 572 5 view .LVU351 + 1279 0058 029B ldr r3, [sp, #8] + 1280 .LBE22: + 572:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 1281 .loc 1 572 5 view .LVU352 + 577:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 1282 .loc 1 577 5 view .LVU353 + 577:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; + 1283 .loc 1 577 25 is_stmt 0 view .LVU354 + 1284 005a 0323 movs r3, #3 + 1285 005c 2793 str r3, [sp, #156] + 578:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 1286 .loc 1 578 5 is_stmt 1 view .LVU355 + 578:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Pull = GPIO_NOPULL; + 1287 .loc 1 578 26 is_stmt 0 view .LVU356 + 1288 005e 0222 movs r2, #2 + 1289 0060 2892 str r2, [sp, #160] + 579:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + 1290 .loc 1 579 5 is_stmt 1 view .LVU357 + 579:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH; + 1291 .loc 1 579 26 is_stmt 0 view .LVU358 + 1292 0062 0022 movs r2, #0 + 1293 0064 2992 str r2, [sp, #164] + 580:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; + 1294 .loc 1 580 5 is_stmt 1 view .LVU359 + 580:Src/stm32f7xx_hal_msp.c **** GPIO_InitStruct.Alternate = GPIO_AF8_UART8; + ARM GAS /tmp/ccEjAJiv.s page 38 + + + 1295 .loc 1 580 27 is_stmt 0 view .LVU360 + 1296 0066 2A93 str r3, [sp, #168] + 581:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 1297 .loc 1 581 5 is_stmt 1 view .LVU361 + 581:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_Init(GPIOE, &GPIO_InitStruct); + 1298 .loc 1 581 31 is_stmt 0 view .LVU362 + 1299 0068 0823 movs r3, #8 + 1300 006a 2B93 str r3, [sp, #172] + 582:Src/stm32f7xx_hal_msp.c **** + 1301 .loc 1 582 5 is_stmt 1 view .LVU363 + 1302 006c 27A9 add r1, sp, #156 + 1303 006e 0548 ldr r0, .L77+8 + 1304 0070 FFF7FEFF bl HAL_GPIO_Init + 1305 .LVL82: + 1306 .loc 1 590 1 is_stmt 0 view .LVU364 + 1307 0074 D5E7 b .L71 + 1308 .L76: + 566:Src/stm32f7xx_hal_msp.c **** } + 1309 .loc 1 566 7 is_stmt 1 view .LVU365 + 1310 0076 FFF7FEFF bl Error_Handler + 1311 .LVL83: + 1312 007a DBE7 b .L73 + 1313 .L78: + 1314 .align 2 + 1315 .L77: + 1316 007c 007C0040 .word 1073773568 + 1317 0080 00380240 .word 1073887232 + 1318 0084 00100240 .word 1073876992 + 1319 .cfi_endproc + 1320 .LFE1191: + 1322 .section .text.HAL_UART_MspDeInit,"ax",%progbits + 1323 .align 1 + 1324 .global HAL_UART_MspDeInit + 1325 .syntax unified + 1326 .thumb + 1327 .thumb_func + 1329 HAL_UART_MspDeInit: + 1330 .LVL84: + 1331 .LFB1192: + 591:Src/stm32f7xx_hal_msp.c **** + 592:Src/stm32f7xx_hal_msp.c **** /** + 593:Src/stm32f7xx_hal_msp.c **** * @brief UART MSP De-Initialization + 594:Src/stm32f7xx_hal_msp.c **** * This function freeze the hardware resources used in this example + 595:Src/stm32f7xx_hal_msp.c **** * @param huart: UART handle pointer + 596:Src/stm32f7xx_hal_msp.c **** * @retval None + 597:Src/stm32f7xx_hal_msp.c **** */ + 598:Src/stm32f7xx_hal_msp.c **** void HAL_UART_MspDeInit(UART_HandleTypeDef* huart) + 599:Src/stm32f7xx_hal_msp.c **** { + 1332 .loc 1 599 1 view -0 + 1333 .cfi_startproc + 1334 @ args = 0, pretend = 0, frame = 0 + 1335 @ frame_needed = 0, uses_anonymous_args = 0 + 1336 .loc 1 599 1 is_stmt 0 view .LVU367 + 1337 0000 08B5 push {r3, lr} + 1338 .LCFI25: + 1339 .cfi_def_cfa_offset 8 + 1340 .cfi_offset 3, -8 + ARM GAS /tmp/ccEjAJiv.s page 39 + + + 1341 .cfi_offset 14, -4 + 600:Src/stm32f7xx_hal_msp.c **** if(huart->Instance==UART8) + 1342 .loc 1 600 3 is_stmt 1 view .LVU368 + 1343 .loc 1 600 11 is_stmt 0 view .LVU369 + 1344 0002 0268 ldr r2, [r0] + 1345 .loc 1 600 5 view .LVU370 + 1346 0004 064B ldr r3, .L83 + 1347 0006 9A42 cmp r2, r3 + 1348 0008 00D0 beq .L82 + 1349 .LVL85: + 1350 .L79: + 601:Src/stm32f7xx_hal_msp.c **** { + 602:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspDeInit 0 */ + 603:Src/stm32f7xx_hal_msp.c **** + 604:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspDeInit 0 */ + 605:Src/stm32f7xx_hal_msp.c **** /* Peripheral clock disable */ + 606:Src/stm32f7xx_hal_msp.c **** __HAL_RCC_UART8_CLK_DISABLE(); + 607:Src/stm32f7xx_hal_msp.c **** + 608:Src/stm32f7xx_hal_msp.c **** /**UART8 GPIO Configuration + 609:Src/stm32f7xx_hal_msp.c **** PE0 ------> UART8_RX + 610:Src/stm32f7xx_hal_msp.c **** PE1 ------> UART8_TX + 611:Src/stm32f7xx_hal_msp.c **** */ + 612:Src/stm32f7xx_hal_msp.c **** HAL_GPIO_DeInit(GPIOE, GPIO_PIN_0|GPIO_PIN_1); + 613:Src/stm32f7xx_hal_msp.c **** + 614:Src/stm32f7xx_hal_msp.c **** /* USER CODE BEGIN UART8_MspDeInit 1 */ + 615:Src/stm32f7xx_hal_msp.c **** + 616:Src/stm32f7xx_hal_msp.c **** /* USER CODE END UART8_MspDeInit 1 */ + 617:Src/stm32f7xx_hal_msp.c **** } + 618:Src/stm32f7xx_hal_msp.c **** + 619:Src/stm32f7xx_hal_msp.c **** } + 1351 .loc 1 619 1 view .LVU371 + 1352 000a 08BD pop {r3, pc} + 1353 .LVL86: + 1354 .L82: + 606:Src/stm32f7xx_hal_msp.c **** + 1355 .loc 1 606 5 is_stmt 1 view .LVU372 + 1356 000c 054A ldr r2, .L83+4 + 1357 000e 136C ldr r3, [r2, #64] + 1358 0010 23F00043 bic r3, r3, #-2147483648 + 1359 0014 1364 str r3, [r2, #64] + 612:Src/stm32f7xx_hal_msp.c **** + 1360 .loc 1 612 5 view .LVU373 + 1361 0016 0321 movs r1, #3 + 1362 0018 0348 ldr r0, .L83+8 + 1363 .LVL87: + 612:Src/stm32f7xx_hal_msp.c **** + 1364 .loc 1 612 5 is_stmt 0 view .LVU374 + 1365 001a FFF7FEFF bl HAL_GPIO_DeInit + 1366 .LVL88: + 1367 .loc 1 619 1 view .LVU375 + 1368 001e F4E7 b .L79 + 1369 .L84: + 1370 .align 2 + 1371 .L83: + 1372 0020 007C0040 .word 1073773568 + 1373 0024 00380240 .word 1073887232 + 1374 0028 00100240 .word 1073876992 + ARM GAS /tmp/ccEjAJiv.s page 40 + + + 1375 .cfi_endproc + 1376 .LFE1192: + 1378 .text + 1379 .Letext0: + 1380 .file 2 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" + 1381 .file 3 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" + 1382 .file 4 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" + 1383 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" + 1384 .file 6 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_rcc_ex.h" + 1385 .file 7 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" + 1386 .file 8 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" + 1387 .file 9 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" + 1388 .file 10 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_sdmmc.h" + 1389 .file 11 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_sd.h" + 1390 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" + 1391 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_uart.h" + 1392 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" + 1393 .file 15 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h" + 1394 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" + 1395 .file 17 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_cortex.h" + 1396 .file 18 "Inc/main.h" + 1397 .file 19 "" + ARM GAS /tmp/ccEjAJiv.s page 41 DEFINED SYMBOLS *ABS*:00000000 stm32f7xx_hal_msp.c - /tmp/ccehMqBJ.s:20 .text.HAL_MspInit:00000000 $t - /tmp/ccehMqBJ.s:26 .text.HAL_MspInit:00000000 HAL_MspInit - /tmp/ccehMqBJ.s:76 .text.HAL_MspInit:0000002c $d - /tmp/ccehMqBJ.s:81 .text.HAL_ADC_MspInit:00000000 $t - /tmp/ccehMqBJ.s:87 .text.HAL_ADC_MspInit:00000000 HAL_ADC_MspInit - /tmp/ccehMqBJ.s:318 .text.HAL_ADC_MspInit:000000f4 $d - /tmp/ccehMqBJ.s:329 .text.HAL_ADC_MspDeInit:00000000 $t - /tmp/ccehMqBJ.s:335 .text.HAL_ADC_MspDeInit:00000000 HAL_ADC_MspDeInit - /tmp/ccehMqBJ.s:408 .text.HAL_ADC_MspDeInit:00000050 $d - /tmp/ccehMqBJ.s:418 .text.HAL_SD_MspInit:00000000 $t - /tmp/ccehMqBJ.s:424 .text.HAL_SD_MspInit:00000000 HAL_SD_MspInit - /tmp/ccehMqBJ.s:600 .text.HAL_SD_MspInit:000000a8 $d - /tmp/ccehMqBJ.s:608 .text.HAL_SD_MspDeInit:00000000 $t - /tmp/ccehMqBJ.s:614 .text.HAL_SD_MspDeInit:00000000 HAL_SD_MspDeInit - /tmp/ccehMqBJ.s:662 .text.HAL_SD_MspDeInit:0000002c $d - /tmp/ccehMqBJ.s:670 .text.HAL_TIM_Base_MspInit:00000000 $t - /tmp/ccehMqBJ.s:676 .text.HAL_TIM_Base_MspInit:00000000 HAL_TIM_Base_MspInit - /tmp/ccehMqBJ.s:839 .text.HAL_TIM_Base_MspInit:000000ac $d - /tmp/ccehMqBJ.s:848 .text.HAL_TIM_MspPostInit:00000000 $t - /tmp/ccehMqBJ.s:854 .text.HAL_TIM_MspPostInit:00000000 HAL_TIM_MspPostInit - /tmp/ccehMqBJ.s:983 .text.HAL_TIM_MspPostInit:0000007c $d - /tmp/ccehMqBJ.s:991 .text.HAL_TIM_Base_MspDeInit:00000000 $t - /tmp/ccehMqBJ.s:997 .text.HAL_TIM_Base_MspDeInit:00000000 HAL_TIM_Base_MspDeInit - /tmp/ccehMqBJ.s:1089 .text.HAL_TIM_Base_MspDeInit:00000068 $d - /tmp/ccehMqBJ.s:1097 .text.HAL_UART_MspInit:00000000 $t - /tmp/ccehMqBJ.s:1103 .text.HAL_UART_MspInit:00000000 HAL_UART_MspInit - /tmp/ccehMqBJ.s:1233 .text.HAL_UART_MspInit:0000007c $d - /tmp/ccehMqBJ.s:1240 .text.HAL_UART_MspDeInit:00000000 $t - /tmp/ccehMqBJ.s:1246 .text.HAL_UART_MspDeInit:00000000 HAL_UART_MspDeInit - /tmp/ccehMqBJ.s:1289 .text.HAL_UART_MspDeInit:00000020 $d + /tmp/ccEjAJiv.s:20 .text.HAL_MspInit:00000000 $t + /tmp/ccEjAJiv.s:26 .text.HAL_MspInit:00000000 HAL_MspInit + /tmp/ccEjAJiv.s:76 .text.HAL_MspInit:0000002c $d + /tmp/ccEjAJiv.s:81 .text.HAL_ADC_MspInit:00000000 $t + /tmp/ccEjAJiv.s:87 .text.HAL_ADC_MspInit:00000000 HAL_ADC_MspInit + /tmp/ccEjAJiv.s:318 .text.HAL_ADC_MspInit:000000f4 $d + /tmp/ccEjAJiv.s:329 .text.HAL_ADC_MspDeInit:00000000 $t + /tmp/ccEjAJiv.s:335 .text.HAL_ADC_MspDeInit:00000000 HAL_ADC_MspDeInit + /tmp/ccEjAJiv.s:408 .text.HAL_ADC_MspDeInit:00000050 $d + /tmp/ccEjAJiv.s:418 .text.HAL_SD_MspInit:00000000 $t + /tmp/ccEjAJiv.s:424 .text.HAL_SD_MspInit:00000000 HAL_SD_MspInit + /tmp/ccEjAJiv.s:600 .text.HAL_SD_MspInit:000000a8 $d + /tmp/ccEjAJiv.s:608 .text.HAL_SD_MspDeInit:00000000 $t + /tmp/ccEjAJiv.s:614 .text.HAL_SD_MspDeInit:00000000 HAL_SD_MspDeInit + /tmp/ccEjAJiv.s:662 .text.HAL_SD_MspDeInit:0000002c $d + /tmp/ccEjAJiv.s:670 .text.HAL_TIM_Base_MspInit:00000000 $t + /tmp/ccEjAJiv.s:676 .text.HAL_TIM_Base_MspInit:00000000 HAL_TIM_Base_MspInit + /tmp/ccEjAJiv.s:860 .text.HAL_TIM_Base_MspInit:000000c8 $d + /tmp/ccEjAJiv.s:870 .text.HAL_TIM_MspPostInit:00000000 $t + /tmp/ccEjAJiv.s:876 .text.HAL_TIM_MspPostInit:00000000 HAL_TIM_MspPostInit + /tmp/ccEjAJiv.s:1053 .text.HAL_TIM_MspPostInit:000000b0 $d + /tmp/ccEjAJiv.s:1063 .text.HAL_TIM_Base_MspDeInit:00000000 $t + /tmp/ccEjAJiv.s:1069 .text.HAL_TIM_Base_MspDeInit:00000000 HAL_TIM_Base_MspDeInit + /tmp/ccEjAJiv.s:1171 .text.HAL_TIM_Base_MspDeInit:0000007c $d + /tmp/ccEjAJiv.s:1180 .text.HAL_UART_MspInit:00000000 $t + /tmp/ccEjAJiv.s:1186 .text.HAL_UART_MspInit:00000000 HAL_UART_MspInit + /tmp/ccEjAJiv.s:1316 .text.HAL_UART_MspInit:0000007c $d + /tmp/ccEjAJiv.s:1323 .text.HAL_UART_MspDeInit:00000000 $t + /tmp/ccEjAJiv.s:1329 .text.HAL_UART_MspDeInit:00000000 HAL_UART_MspDeInit + /tmp/ccEjAJiv.s:1372 .text.HAL_UART_MspDeInit:00000020 $d UNDEFINED SYMBOLS HAL_GPIO_Init diff --git a/build/stm32f7xx_hal_msp.o b/build/stm32f7xx_hal_msp.o index f0c305bf160ddbb480cf7465617a461745947333..c8ac0032096d384af0e25609f99e016fd88db83e 100644 GIT binary patch delta 4930 zcmZvf3vg7`8OP5#cki-b2*HF$lFhQa_hvWYk%WLeQ%C~k5iB4<#1N56262d1ON@{Q zi`2qMQ4{C^y0pWiGO9AGjSi0?wcOd~z-?c7 zu4Zw3hg42{hcuK{JHKcj>Uh;$xRqgO!$~{RN$Wm8Y)^JN7lm%;VvI+7oL1>hEBAT2 zUA!uMqF4y2V}=!r(%^lq5qf4g&-~WD&Om60t4ceR%2=Mc%IHvr&|>Gj&h@Jett^l3 zqm5ttXYrKU+tZzvDQKDEOlDrEKug2&YH4x%flm83+WYs;tS=Z@vBT{cQL&gMi^T+0 zEId?FRI%?RV`UbNZBQ#e(_8)Y%yOP~YbMnPys0kVTUuUi(NdRJxyx&|smn=)snr%O zY-*M7_v-Rfh17x;v%Km`ySlu?u@qVEx?R*uJcIgPTa`_o<7%=UFEgcIF48xKGU$0{ zXsn7T{d6cj8c`!=_=R{y2yuu?Sf$fa=BPA1KnT@b75+4p>|CWk2>InC{dFjiTBOW7 z3?Yo>)^)Ti0~N?|=j%62Lx3H5}l z7OUoE!d^hq`!utqB-60XB!2ZFc@r(Aus1-gPl&W9AO`pA%~mwlMosSECA%=JXYqa{ z^LREdlXo{2tBjf~rE)GYf}4BBS0yZ7M_xBY@$TG~^{6X_RY%IBRDub0RgYRNtQHY- zcfpi|ytYTaS6DU$PM}hmP&f6cHNq|>3TN>klK-GTJ%aM^;a| z#krhrqAA2EJvo{=xt^?C=K%Z|`+vHy#!(`EU)vMna)`5p#X<#@mvnQ~FW=Jp>G`=n z9rdduOP{Bdxzw4v@q6Z2d2In^Bt(G)AaMt!KXJ*pEOM_D zToKQ*UFyn=>EDytUPgtY87rvtj%K@t3ds!WanzU~zZoSObC~?~LUj-G6#P2$fZtC8 z<|qbhy^{{tNu$Ce*0~KB4}Grz+k0J^af*A5Eu$Ls6l7Mpbq}-6tp^F$K2lz*Q*8dAjQliw@Dd?xzuyUj~vqfJ4wzM z^!;HP-jIH5+#nvyL>kLo-k>SRx?^y3T6h^dW=oruYrFMAfbQ_WRKhna&*T zzE-yROtQ`IkL}lB&t>Kdu@2;|$Tpv{e)Ju?46KR2c5|Ftdd?2>lrBKY*_@sr_m29VYejiEGEic?kc3V9@Ue2lN3` zm=q9#oek!}KNa>g@J9G=gIxzc0=@vg>M%xMZ*W{>Qb%7h2hy(z*u|t7rUhLN1+$pc zZZf!pN%6~>bkn<*ajL_25I`!^{{3Z08Db50e7-fiJ=TI_%TnJMjMt_P@bP@S7nw zPc}FSyalWQW5gJDyonvOyMF;b#-tHH$s~Oj>^r8g|TqFdxG0ObT2MR>R)_dp-Ct{7=Gu8r%*4%dn4te}w;S*#8X2+>Y8H zbU^3?zlFa){p9h0hJ!P~D)49E6JQ){1zP3~mLV0QpAEd5(a`!9Rij0N-;+udxk|b6_X<71#|LhMPDQ z90CTwFvu5DKHgKn8DJU6S5wwkFk@7?8;<+H2f?3%TfioeudvQ>2M>X-fUkikz`ucS zg71MJ5M!K(ufNPL(Db-=UoZts18pz|%m>GS)4-V^Uw`@7SAchbD?EIRN#Lt6b0hc& z*bF`gJ`e5#4}hi=Qc*nql@Vun|`h_Rc|5ZH?{hi#=-vsnzlJ3 delta 4482 zcmai%4Nz3q701tgZy(`95QOrvP~6?O?y_P4AqqC60y>EiMG<2Fi9sbPMntE6p?s{P zRca+xJhmnpqh^eWO09OSO{-CyI?;}42d2>`)lp*`scpN|daZ9F7DaTWQ5_qs%`PvsbGnQ}Fa6ur zJFM7VS9Hs!*=v&P^jkI^5Vqg$aTHgQSJNtMW|CLa6{_vvig|W~U^#zGT3dE%j&ku)KL$1vj@9b^#?r=3b<1@pSDwSMpqKm z30+~q6cdW=^Eny&+~oOv$xOMsYO#)*X~QQ_-xocB)9S$-TlzEIJ#dm@6~F{l0C`#g z*tCMsU+T4q6fvxe>&UJIs^fxna#!ew+Py*9v2`Xrd@P=^r6*|j78RA%nRi#2Wi?iI zp9Qn)wVl$gnSm3AN>S<9>9kXQ(fO3tt1!luD3&taqix#%RVI9YAmIY5}*M#(ZkxPFI!xmY^qB#M$0V07zA*!YE{` z%+^MIenfGVzcQ7k^F{@=CwaO*llu=;tY=!^|4gQv#^g~kXoPD=D2@2B3OXVm%yPTBcl)sZy>#L{aRhCmtQ(54iMe1HsNA;`VZjlkwET4LQ;D8^$~0&On!9~$eaU0lPGkBzb9&86aYP?t7J@pCIW zEkI~+0rYSf3XU{Vv3J-A`&y3Tb^@dYqx{3mLH4D+&Y@y3RmvqaPbB}I2B*;NLI>; ztTJ5`VKfyNHGIL{J6ksIcraO*KxHfzrlqJVoJI8tY^3_9_(obvexQHQ1{qWi?v*rv zpRkL>f%)=r=zsj1F1(eNtio}SFGcy#=Sz*tr;K?Wi@<$NLR8>Pl9yqFZ&X|(C9n8f zH8oP>shltar+mNGRRdnhOvbAXp-3;r;GBsL@(i4_lWdwZk>*U9_kZS`PJJmTqngUVIoakVBAKy{%0QXzT~tVBbW%#* zz~#*2T1+RI{NZQkPXivve(oE+$!cC;XwFg_zMUImQ~Kb1?9LsAH*zE63>8wOMSxO< z0)y8P^j0+TTwzL&&o_(^eI{1tCE~O^55Ai>I3fINJ&);ht_?lJiT>PgaqMi4&7-C| z^oS+%LL4D_ME?I^sHe2BuSMw9(LXu~Cy!aC4g^k**_MRWWrqqoDUHG?+eTFwl~@uU zWh;sR;4Rem;RhBytxu2Z6NwFh(&<-}>cEjRGF21Krn)xJKI4zd*-7dUh=e;tMTH{` zfx++u8EiKM)|PvA=QZ|HFPu?uc5;+%jn z^SNl%f|KXB`U`2RX!NG5V)_7HVN&|Mg_sMN!vL0xzDDd;VH=bBZ4$o8q&WML%*YeLOo1qf$G0YnLhFe!jnm@dp>(u8A$Q?yf&tTH#%odJjQo;qI7mGbbIGyO{0gKo{Y!kjO{2h}5cQZo) z&I>=t3G__vC^UARa5N5t+He&wR|=L90?#lajdd`4I)TrT_}lb&D`(*W2ae1l2f$U9>1 z75F#gJp4E_4cq2}cRX2n&Sch0}%Q!k2|}g?xGBi(~gd!wnnRe?tvJ=zup@7O2H?ayxJ!fIHSoE zGJ)p3ZsO`DmvM;#q~X3MQ)S@qo4m%Ebb$BpL6d3N>gkq;&Sul79|=&4-P2>SsySM# zS&a3~9^(Qz%Y)7iavoodC&-zRO>cg@(M*{x!KfCGwmlC=6aH3;vsyexH2r_h!^10L u@vW9CXWQ5S diff --git a/build/stm32f7xx_it.lst b/build/stm32f7xx_it.lst index 94f5d85..d045abb 100644 --- a/build/stm32f7xx_it.lst +++ b/build/stm32f7xx_it.lst @@ -1,4 +1,4 @@ -ARM GAS /tmp/ccdl7gEi.s page 1 +ARM GAS /tmp/cczi2eQD.s page 1 1 .cpu cortex-m7 @@ -58,7 +58,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 29:Src/stm32f7xx_it.c **** 30:Src/stm32f7xx_it.c **** /* USER CODE END TD */ 31:Src/stm32f7xx_it.c **** - ARM GAS /tmp/ccdl7gEi.s page 2 + ARM GAS /tmp/cczi2eQD.s page 2 32:Src/stm32f7xx_it.c **** /* Private define ------------------------------------------------------------*/ @@ -118,7 +118,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 33 @ link register save eliminated. 34 .L2: 81:Src/stm32f7xx_it.c **** /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ - ARM GAS /tmp/ccdl7gEi.s page 3 + ARM GAS /tmp/cczi2eQD.s page 3 82:Src/stm32f7xx_it.c **** @@ -178,7 +178,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 68 .syntax unified 69 .thumb 70 .thumb_func - ARM GAS /tmp/ccdl7gEi.s page 4 + ARM GAS /tmp/cczi2eQD.s page 4 72 MemManage_Handler: @@ -238,7 +238,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 127:Src/stm32f7xx_it.c **** 128:Src/stm32f7xx_it.c **** /* USER CODE END BusFault_IRQn 0 */ 129:Src/stm32f7xx_it.c **** while (1) - ARM GAS /tmp/ccdl7gEi.s page 5 + ARM GAS /tmp/cczi2eQD.s page 5 104 .loc 1 129 3 view .LVU13 @@ -298,7 +298,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 141 SVC_Handler: 142 .LFB1188: 149:Src/stm32f7xx_it.c **** } - ARM GAS /tmp/ccdl7gEi.s page 6 + ARM GAS /tmp/cczi2eQD.s page 6 150:Src/stm32f7xx_it.c **** @@ -358,7 +358,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 174 .global PendSV_Handler 175 .syntax unified 176 .thumb - ARM GAS /tmp/ccdl7gEi.s page 7 + ARM GAS /tmp/cczi2eQD.s page 7 177 .thumb_func @@ -418,7 +418,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 211 .LVL0: 199:Src/stm32f7xx_it.c **** /* USER CODE BEGIN SysTick_IRQn 1 */ 200:Src/stm32f7xx_it.c **** - ARM GAS /tmp/ccdl7gEi.s page 8 + ARM GAS /tmp/cczi2eQD.s page 8 201:Src/stm32f7xx_it.c **** /* USER CODE END SysTick_IRQn 1 */ @@ -478,7 +478,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 244 000e 08BD pop {r3, pc} 245 .L19: 246 .align 2 - ARM GAS /tmp/ccdl7gEi.s page 9 + ARM GAS /tmp/cczi2eQD.s page 9 247 .L18: @@ -538,7 +538,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 239:Src/stm32f7xx_it.c **** /* USER CODE BEGIN TIM1_UP_TIM10_IRQn 1 */ 240:Src/stm32f7xx_it.c **** 241:Src/stm32f7xx_it.c **** /* USER CODE END TIM1_UP_TIM10_IRQn 1 */ - ARM GAS /tmp/ccdl7gEi.s page 10 + ARM GAS /tmp/cczi2eQD.s page 10 242:Src/stm32f7xx_it.c **** } @@ -598,7 +598,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 333 .loc 1 251 2 is_stmt 1 view .LVU47 334 .loc 1 251 7 is_stmt 0 view .LVU48 335 000c 0749 ldr r1, .L28+4 - ARM GAS /tmp/ccdl7gEi.s page 11 + ARM GAS /tmp/cczi2eQD.s page 11 336 000e 0A68 ldr r2, [r1] @@ -658,7 +658,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 269:Src/stm32f7xx_it.c **** 270:Src/stm32f7xx_it.c **** /* USER CODE END TIM2_IRQn 1 */ 271:Src/stm32f7xx_it.c **** } - ARM GAS /tmp/ccdl7gEi.s page 12 + ARM GAS /tmp/cczi2eQD.s page 12 375 .loc 1 271 1 view .LVU56 @@ -718,7 +718,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 314:Src/stm32f7xx_it.c **** //UART_transmission_busy = 0; 315:Src/stm32f7xx_it.c **** } 316:Src/stm32f7xx_it.c **** } - ARM GAS /tmp/ccdl7gEi.s page 13 + ARM GAS /tmp/cczi2eQD.s page 13 317:Src/stm32f7xx_it.c **** } @@ -778,7 +778,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 411 .LVL5: 349:Src/stm32f7xx_it.c **** HAL_GPIO_WritePin(LD_blinker.signal_port, LD_blinker.signal_pin, GPIO_PIN_RESET); 412 .loc 1 349 4 view .LVU62 - ARM GAS /tmp/ccdl7gEi.s page 14 + ARM GAS /tmp/cczi2eQD.s page 14 413 0016 0C4C ldr r4, .L36 @@ -838,7 +838,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 452 .L36: 453 0048 00000000 .word LD_blinker 454 004c 00000000 .word htim8 - ARM GAS /tmp/ccdl7gEi.s page 15 + ARM GAS /tmp/cczi2eQD.s page 15 455 .cfi_endproc @@ -898,7 +898,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 494 .cfi_offset 14, -4 379:Src/stm32f7xx_it.c **** /* USER CODE BEGIN TIM6_DAC_IRQn 0 */ 380:Src/stm32f7xx_it.c **** - ARM GAS /tmp/ccdl7gEi.s page 16 + ARM GAS /tmp/cczi2eQD.s page 16 381:Src/stm32f7xx_it.c **** /* USER CODE END TIM6_DAC_IRQn 0 */ @@ -958,7 +958,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 47:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x00U, /* 0: TIMx_CH1 */ 48:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x00U, /* 1: TIMx_CH1N */ 49:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x00U, /* 2: TIMx_CH2 */ - ARM GAS /tmp/ccdl7gEi.s page 17 + ARM GAS /tmp/cczi2eQD.s page 17 50:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 0x00U, /* 3: TIMx_CH2N */ @@ -1018,7 +1018,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 104:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 5U, /* 5: OIS3N */ 105:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 6U, /* 6: OIS4 */ 106:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 8U, /* 7: OIS5 */ - ARM GAS /tmp/ccdl7gEi.s page 18 + ARM GAS /tmp/cczi2eQD.s page 18 107:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 10U /* 8: OIS6 */ @@ -1078,7 +1078,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 161:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3N 162:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 163:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 - ARM GAS /tmp/ccdl7gEi.s page 19 + ARM GAS /tmp/cczi2eQD.s page 19 164:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 @@ -1138,7 +1138,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 218:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** Auto-Reload Register at the next update event. 219:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter must be a number between Min_Data=0x0000 and Max_ 220:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** Some timer instances may support 32 bits counters. In that case - ARM GAS /tmp/ccdl7gEi.s page 20 + ARM GAS /tmp/cczi2eQD.s page 20 221:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** be a number between 0x0000 and 0xFFFFFFFF. @@ -1198,7 +1198,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t OCPolarity; /*!< Specifies the output polarity. 277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_OCPOLARITY. - ARM GAS /tmp/ccdl7gEi.s page 21 + ARM GAS /tmp/cczi2eQD.s page 21 278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -1258,7 +1258,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 332:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } LL_TIM_IC_InitTypeDef; 333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 334:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccdl7gEi.s page 22 + ARM GAS /tmp/cczi2eQD.s page 22 335:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -1318,7 +1318,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 389:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_IC_FILTER. 390:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 391:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary function - ARM GAS /tmp/ccdl7gEi.s page 23 + ARM GAS /tmp/cczi2eQD.s page 23 392:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @ref LL_TIM_IC_SetFilter().*/ @@ -1378,7 +1378,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 446:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t OSSIState; /*!< Specifies the Off-State used in Idle state. 447:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This parameter can be a value of @ref TIM_LL_EC_OSSI 448:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccdl7gEi.s page 24 + ARM GAS /tmp/cczi2eQD.s page 24 449:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** This feature can be modified afterwards using unitary functio @@ -1438,7 +1438,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 503:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @note This bit-field can not be modified as long as LOCK leve 505:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** programmed. */ - ARM GAS /tmp/ccdl7gEi.s page 25 + ARM GAS /tmp/cczi2eQD.s page 25 506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -1498,7 +1498,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 560:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_CC1OF TIM_SR_CC1OF /*!< Capture/Compare 1 overcapt 561:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_CC2OF TIM_SR_CC2OF /*!< Capture/Compare 2 overcapt 562:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_CC3OF TIM_SR_CC3OF /*!< Capture/Compare 3 overcapt - ARM GAS /tmp/ccdl7gEi.s page 26 + ARM GAS /tmp/cczi2eQD.s page 26 563:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_SR_CC4OF TIM_SR_CC4OF /*!< Capture/Compare 4 overcapt @@ -1558,7 +1558,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 617:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_UPDATESOURCE_REGULAR 0x00000000U /*!< Counter overflow/underflow 618:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_UPDATESOURCE_COUNTER TIM_CR1_URS /*!< Only counter overflow/unde 619:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 27 + ARM GAS /tmp/cczi2eQD.s page 27 620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @} @@ -1618,7 +1618,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 674:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 675:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_CCDMAREQUEST_CC 0x00000000U /*!< CCx DMA request sent when 676:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_CCDMAREQUEST_UPDATE TIM_CR2_CCDS /*!< CCx DMA requests sent when - ARM GAS /tmp/ccdl7gEi.s page 28 + ARM GAS /tmp/cczi2eQD.s page 28 677:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -1678,7 +1678,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 731:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_FROZEN 0x00000000U 732:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_ACTIVE TIM_CCMR1_OC1M_0 733:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_INACTIVE TIM_CCMR1_OC1M_1 - ARM GAS /tmp/ccdl7gEi.s page 29 + ARM GAS /tmp/cczi2eQD.s page 29 734:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_OCMODE_TOGGLE (TIM_CCMR1_OC1M_1 | TIM_CCMR1_OC1M_0) @@ -1738,7 +1738,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 788:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_ICPSC Input Configuration Prescaler 789:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 790:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 30 + ARM GAS /tmp/cczi2eQD.s page 30 791:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ICPSC_DIV1 0x00000000U /*!< No prescaler, ca @@ -1798,7 +1798,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 845:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ENCODERMODE_X2_TI1 TIM_SMCR_SMS_0 846:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ENCODERMODE_X2_TI2 TIM_SMCR_SMS_1 847:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_ENCODERMODE_X4_TI12 (TIM_SMCR_SMS_1 | TIM_SMCR_SMS_0) - ARM GAS /tmp/ccdl7gEi.s page 31 + ARM GAS /tmp/cczi2eQD.s page 31 848:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @@ -1858,7 +1858,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 902:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_TS Trigger Selection 903:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 904:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 32 + ARM GAS /tmp/cczi2eQD.s page 32 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_TS_ITR0 0x00000000U @@ -1918,7 +1918,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 959:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 960:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 961:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_BREAK_POLARITY break polarity - ARM GAS /tmp/ccdl7gEi.s page 33 + ARM GAS /tmp/cczi2eQD.s page 33 962:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ @@ -1978,7 +1978,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1016:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV16_N6 0x00B00000U /*!< fSAMPLING=fDTS/16, N=6 */ 1017:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV16_N8 0x00C00000U /*!< fSAMPLING=fDTS/16, N=8 */ 1018:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV32_N5 0x00D00000U /*!< fSAMPLING=fDTS/32, N=5 */ - ARM GAS /tmp/ccdl7gEi.s page 34 + ARM GAS /tmp/cczi2eQD.s page 34 1019:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_BREAK2_FILTER_FDIV32_N6 0x00E00000U /*!< fSAMPLING=fDTS/32, N=6 */ @@ -2038,7 +2038,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 1074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1075:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CR1 0x00000000U - ARM GAS /tmp/ccdl7gEi.s page 35 + ARM GAS /tmp/cczi2eQD.s page 35 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #define LL_TIM_DMABURST_BASEADDR_CR2 TIM_DCR_DBA_0 @@ -2098,7 +2098,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1130:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 1131:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EC_TIM2_ITR1_RMP_TIM8 TIM2 Internal Trigger1 Remap TIM8 1132:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ - ARM GAS /tmp/ccdl7gEi.s page 36 + ARM GAS /tmp/cczi2eQD.s page 36 1133:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ @@ -2158,7 +2158,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1187:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Read a value in TIM register. 1188:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __INSTANCE__ TIM Instance 1189:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __REG__ Register to be read - ARM GAS /tmp/ccdl7gEi.s page 37 + ARM GAS /tmp/cczi2eQD.s page 37 1190:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Register value @@ -2218,7 +2218,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1244:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief HELPER macro calculating the auto-reload value to achieve the required output signal fr 1245:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note ex: @ref __LL_TIM_CALC_ARR (1000000, @ref LL_TIM_GetPrescaler (), 10000); 1246:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __TIMCLK__ timer input clock frequency (in Hz) - ARM GAS /tmp/ccdl7gEi.s page 38 + ARM GAS /tmp/cczi2eQD.s page 38 1247:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param __PSC__ prescaler @@ -2278,7 +2278,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ 1302:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1303:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** - ARM GAS /tmp/ccdl7gEi.s page 39 + ARM GAS /tmp/cczi2eQD.s page 39 1304:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EF_Time_Base Time Base configuration @@ -2338,7 +2338,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1359:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** SET_BIT(TIMx->CR1, TIM_CR1_UDIS); 1360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - ARM GAS /tmp/ccdl7gEi.s page 40 + ARM GAS /tmp/cczi2eQD.s page 40 1361:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -2398,7 +2398,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1415:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1416:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_SetOnePulseMode(TIM_TypeDef *TIMx, uint32_t OnePulseMode) 1417:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccdl7gEi.s page 41 + ARM GAS /tmp/cczi2eQD.s page 41 1418:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** MODIFY_REG(TIMx->CR1, TIM_CR1_OPM, OnePulseMode); @@ -2458,7 +2458,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1472:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 1473:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_GetCounterMode(const TIM_TypeDef *TIMx) 1474:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccdl7gEi.s page 42 + ARM GAS /tmp/cczi2eQD.s page 42 1475:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t counter_mode; @@ -2518,7 +2518,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1529:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV1 1530:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV2 1531:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CLOCKDIVISION_DIV4 - ARM GAS /tmp/ccdl7gEi.s page 43 + ARM GAS /tmp/cczi2eQD.s page 43 1532:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None @@ -2578,7 +2578,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1586:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR1 DIR LL_TIM_GetDirection 1587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 1588:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Returned value can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 44 + ARM GAS /tmp/cczi2eQD.s page 44 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_COUNTERDIRECTION_UP @@ -2638,7 +2638,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1643:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_32B_COUNTER_INSTANCE(TIMx) can be used to check 1644:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. 1645:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance - ARM GAS /tmp/ccdl7gEi.s page 45 + ARM GAS /tmp/cczi2eQD.s page 45 1646:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Auto-reload value @@ -2698,7 +2698,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1700:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_DisableUIFRemap(TIM_TypeDef *TIMx) 1701:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1702:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** CLEAR_BIT(TIMx->CR1, TIM_CR1_UIFREMAP); - ARM GAS /tmp/ccdl7gEi.s page 46 + ARM GAS /tmp/cczi2eQD.s page 46 1703:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -2758,7 +2758,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1757:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_CC_IsEnabledPreload(const TIM_TypeDef *TIMx) 1758:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 1759:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->CR2, TIM_CR2_CCPC) == (TIM_CR2_CCPC)) ? 1UL : 0UL); - ARM GAS /tmp/ccdl7gEi.s page 47 + ARM GAS /tmp/cczi2eQD.s page 47 1760:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -2818,7 +2818,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1814:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_LOCKLEVEL_1 1815:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_LOCKLEVEL_2 1816:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_LOCKLEVEL_3 - ARM GAS /tmp/ccdl7gEi.s page 48 + ARM GAS /tmp/cczi2eQD.s page 48 1817:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None @@ -2878,7 +2878,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1871:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3N 1872:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 1873:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH5 - ARM GAS /tmp/ccdl7gEi.s page 49 + ARM GAS /tmp/cczi2eQD.s page 49 1874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 @@ -2938,7 +2938,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1928:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC3P LL_TIM_OC_ConfigOutput\n 1929:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC4P LL_TIM_OC_ConfigOutput\n 1930:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC5P LL_TIM_OC_ConfigOutput\n - ARM GAS /tmp/ccdl7gEi.s page 50 + ARM GAS /tmp/cczi2eQD.s page 50 1931:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC6P LL_TIM_OC_ConfigOutput\n @@ -2998,7 +2998,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1985:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_FORCED_ACTIVE 1986:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_PWM1 1987:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_PWM2 - ARM GAS /tmp/ccdl7gEi.s page 51 + ARM GAS /tmp/cczi2eQD.s page 51 1988:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCMODE_RETRIG_OPM1 @@ -3058,7 +3058,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2042:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 2043:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set the polarity of an output channel. 2044:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCER CC1P LL_TIM_OC_SetPolarity\n - ARM GAS /tmp/ccdl7gEi.s page 52 + ARM GAS /tmp/cczi2eQD.s page 52 2045:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC1NP LL_TIM_OC_SetPolarity\n @@ -3118,7 +3118,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2099:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_OCPOLARITY_LOW 2100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetPolarity(const TIM_TypeDef *TIMx, uint32_t Channel) - ARM GAS /tmp/ccdl7gEi.s page 53 + ARM GAS /tmp/cczi2eQD.s page 53 2102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { @@ -3178,7 +3178,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Channel This parameter can be one of the following values: 2157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1N - ARM GAS /tmp/ccdl7gEi.s page 54 + ARM GAS /tmp/cczi2eQD.s page 54 2159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 @@ -3238,7 +3238,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 - ARM GAS /tmp/ccdl7gEi.s page 55 + ARM GAS /tmp/cczi2eQD.s page 55 2216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 @@ -3298,7 +3298,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH6 2271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 2272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 56 + ARM GAS /tmp/cczi2eQD.s page 56 2273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_OC_EnablePreload(TIM_TypeDef *TIMx, uint32_t Channel) @@ -3358,7 +3358,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint32_t bitfield = TIM_CCMR1_OC1PE << SHIFT_TAB_OCxx[iChannel]; 2328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(*pReg, bitfield) == bitfield) ? 1UL : 0UL); 2329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } - ARM GAS /tmp/ccdl7gEi.s page 57 + ARM GAS /tmp/cczi2eQD.s page 57 2330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** @@ -3418,7 +3418,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 58 + ARM GAS /tmp/cczi2eQD.s page 58 2387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicates clearing the output channel on an external event is enabled for the output ch @@ -3478,7 +3478,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2441:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param CompareValue between Min_Data=0 and Max_Data=65535 2442:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 2443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 59 + ARM GAS /tmp/cczi2eQD.s page 59 2444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_OC_SetCompareCH1(TIM_TypeDef *TIMx, uint32_t CompareValue) @@ -3538,7 +3538,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2498:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } 2499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 2500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 60 + ARM GAS /tmp/cczi2eQD.s page 60 2501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Set compare value for output channel 5 (TIMx_CCR5). @@ -3598,7 +3598,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetCompareCH2(const TIM_TypeDef *TIMx) 2556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 2557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_REG(TIMx->CCR2)); - ARM GAS /tmp/ccdl7gEi.s page 61 + ARM GAS /tmp/cczi2eQD.s page 61 2558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -3658,7 +3658,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2612:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2613:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_OC_GetCompareCH6(const TIM_TypeDef *TIMx) 2614:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccdl7gEi.s page 62 + ARM GAS /tmp/cczi2eQD.s page 62 2615:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return (uint32_t)(READ_REG(TIMx->CCR6)); @@ -3718,7 +3718,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2669:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH1 2670:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH2 2671:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 - ARM GAS /tmp/ccdl7gEi.s page 63 + ARM GAS /tmp/cczi2eQD.s page 63 2672:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 @@ -3778,7 +3778,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2726:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH3 2727:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 2728:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Returned value can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 64 + ARM GAS /tmp/cczi2eQD.s page 64 2729:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_ACTIVEINPUT_DIRECTTI @@ -3838,7 +3838,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2783:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 2784:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IC_GetPrescaler(const TIM_TypeDef *TIMx, uint32_t Channel) 2785:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { - ARM GAS /tmp/ccdl7gEi.s page 65 + ARM GAS /tmp/cczi2eQD.s page 65 2786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** uint8_t iChannel = TIM_GET_CHANNEL_INDEX(Channel); @@ -3898,7 +3898,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2840:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_CHANNEL_CH4 2841:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval Returned value can be one of the following values: 2842:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1 - ARM GAS /tmp/ccdl7gEi.s page 66 + ARM GAS /tmp/cczi2eQD.s page 66 2843:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_IC_FILTER_FDIV1_N2 @@ -3958,7 +3958,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2897:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CCER CC1P LL_TIM_IC_GetPolarity\n 2898:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC1NP LL_TIM_IC_GetPolarity\n 2899:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2P LL_TIM_IC_GetPolarity\n - ARM GAS /tmp/ccdl7gEi.s page 67 + ARM GAS /tmp/cczi2eQD.s page 67 2900:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * CCER CC2NP LL_TIM_IC_GetPolarity\n @@ -4018,7 +4018,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2954:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 2955:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval State of bit (1 or 0). 2956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 68 + ARM GAS /tmp/cczi2eQD.s page 68 2957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IC_IsEnabledXORCombination(const TIM_TypeDef *TIMx) @@ -4078,7 +4078,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3011:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Get captured value for input channel 4. 3012:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note In 32-bit timer implementations returned captured value can be between 0x00000000 and 0xF 3013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_32B_COUNTER_INSTANCE(TIMx) can be used to check - ARM GAS /tmp/ccdl7gEi.s page 69 + ARM GAS /tmp/cczi2eQD.s page 69 3014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * whether or not a timer instance supports a 32 bits counter. @@ -4138,7 +4138,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3068:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE uint32_t LL_TIM_IsEnabledExternalClock(const TIM_TypeDef *TIMx) 3069:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** { 3070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** return ((READ_BIT(TIMx->SMCR, TIM_SMCR_ECE) == (TIM_SMCR_ECE)) ? 1UL : 0UL); - ARM GAS /tmp/ccdl7gEi.s page 70 + ARM GAS /tmp/cczi2eQD.s page 70 3071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** } @@ -4198,7 +4198,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @rmtoll CR2 MMS LL_TIM_SetTriggerOutput 3126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TIMx Timer instance 3127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param TimerSynchronization This parameter can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 71 + ARM GAS /tmp/cczi2eQD.s page 71 3128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TRGO_RESET @@ -4258,7 +4258,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_SLAVEMODE_GATED 3183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_SLAVEMODE_TRIGGER 3184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_SLAVEMODE_COMBINED_RESETTRIGGER - ARM GAS /tmp/ccdl7gEi.s page 72 + ARM GAS /tmp/cczi2eQD.s page 72 3185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None @@ -4318,7 +4318,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicates whether the Master/Slave mode is enabled. - ARM GAS /tmp/ccdl7gEi.s page 73 + ARM GAS /tmp/cczi2eQD.s page 73 3242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_SLAVE_INSTANCE(TIMx) can be used to check whether or not @@ -4378,7 +4378,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3296:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ 3297:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** @defgroup TIM_LL_EF_Break_Function Break function configuration - ARM GAS /tmp/ccdl7gEi.s page 74 + ARM GAS /tmp/cczi2eQD.s page 74 3299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @{ @@ -4438,7 +4438,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3353:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_FILTER_FDIV32_N8 3354:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @retval None 3355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 75 + ARM GAS /tmp/cczi2eQD.s page 75 3356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** __STATIC_INLINE void LL_TIM_ConfigBRK(TIM_TypeDef *TIMx, uint32_t BreakPolarity, @@ -4498,7 +4498,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3410:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV16_N6 3411:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV16_N8 3412:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV32_N5 - ARM GAS /tmp/ccdl7gEi.s page 76 + ARM GAS /tmp/cczi2eQD.s page 76 3413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK2_FILTER_FDIV32_N6 @@ -4558,7 +4558,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3467:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** 3468:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3469:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Indicate whether automatic output is enabled. - ARM GAS /tmp/ccdl7gEi.s page 77 + ARM GAS /tmp/cczi2eQD.s page 77 3470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_BREAK_INSTANCE(TIMx) can be used to check whether or not @@ -4618,7 +4618,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3524:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** #if defined(TIM_BREAK_INPUT_SUPPORT) 3525:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** /** 3526:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @brief Enable the signals connected to the designated timer break input. - ARM GAS /tmp/ccdl7gEi.s page 78 + ARM GAS /tmp/cczi2eQD.s page 78 3527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @note Macro IS_TIM_BREAKSOURCE_INSTANCE(TIMx) can be used to check whether @@ -4678,7 +4678,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3581:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_INPUT_BKIN 3582:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BREAK_INPUT_BKIN2 3583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param Source This parameter can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 79 + ARM GAS /tmp/cczi2eQD.s page 79 3584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_BKIN_SOURCE_BKIN @@ -4738,7 +4738,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3638:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @param DMABurstLength This parameter can be one of the following values: 3639:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_1TRANSFER 3640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_2TRANSFERS - ARM GAS /tmp/ccdl7gEi.s page 80 + ARM GAS /tmp/cczi2eQD.s page 80 3641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_DMABURST_LENGTH_3TRANSFERS @@ -4798,7 +4798,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3695:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM5_TI4_RMP_GPIO 3696:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM5_TI4_RMP_LSI 3697:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM5_TI4_RMP_LSE - ARM GAS /tmp/ccdl7gEi.s page 81 + ARM GAS /tmp/cczi2eQD.s page 81 3698:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_tim.h **** * @arg @ref LL_TIM_TIM5_TI4_RMP_RTC @@ -4858,7 +4858,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 511 .LBE59: 512 .LBE58: 384:Src/stm32f7xx_it.c **** { - ARM GAS /tmp/ccdl7gEi.s page 82 + ARM GAS /tmp/cczi2eQD.s page 82 385:Src/stm32f7xx_it.c **** LL_TIM_ClearFlag_UPDATE(TIM6); @@ -4918,7 +4918,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 393:Src/stm32f7xx_it.c **** 394:Src/stm32f7xx_it.c **** /** 395:Src/stm32f7xx_it.c **** * @brief This function handles TIM7 global interrupt. - ARM GAS /tmp/ccdl7gEi.s page 83 + ARM GAS /tmp/cczi2eQD.s page 83 396:Src/stm32f7xx_it.c **** */ @@ -4978,7 +4978,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 597 0016 0133 adds r3, r3, #1 598 0018 1360 str r3, [r2] 599 .L44: - ARM GAS /tmp/ccdl7gEi.s page 84 + ARM GAS /tmp/cczi2eQD.s page 84 407:Src/stm32f7xx_it.c **** //1 ms or 1000 Hz @@ -5038,7 +5038,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 626 .cfi_def_cfa_offset 4 627 .cfi_offset 4, -4 437:Src/stm32f7xx_it.c **** uart_buf = LL_USART_ReceiveData8(USART1); - ARM GAS /tmp/ccdl7gEi.s page 85 + ARM GAS /tmp/cczi2eQD.s page 85 628 .loc 1 437 5 view .LVU105 @@ -5098,7 +5098,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 50:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 51:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* Private macros ------------------------------------------------------------*/ 52:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USE_FULL_LL_DRIVER) - ARM GAS /tmp/ccdl7gEi.s page 86 + ARM GAS /tmp/cczi2eQD.s page 86 53:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_Private_Macros USART Private Macros @@ -5158,7 +5158,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 107:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 108:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** uint32_t OverSampling; /*!< Specifies whether USART oversampling mode is 16 or 8. 109:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** This parameter can be a value of @ref USART_LL_EC_OVERSA - ARM GAS /tmp/ccdl7gEi.s page 87 + ARM GAS /tmp/cczi2eQD.s page 87 110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -5218,7 +5218,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 164:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 165:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 166:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ICR_PECF USART_ICR_PECF /*!< Parity error cle - ARM GAS /tmp/ccdl7gEi.s page 88 + ARM GAS /tmp/cczi2eQD.s page 88 167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ICR_FECF USART_ICR_FECF /*!< Framing error cl @@ -5278,7 +5278,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 221:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #if defined(USART_TCBGT_SUPPORT) 222:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ISR_TCBGT USART_ISR_TCBGT /*!< Transmission com 223:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #endif /* USART_TCBGT_SUPPORT */ - ARM GAS /tmp/ccdl7gEi.s page 89 + ARM GAS /tmp/cczi2eQD.s page 89 224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -5338,7 +5338,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_WAKEUP_IDLELINE 0x00000000U /*!< USART wake up from Mute 280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_WAKEUP_ADDRESSMARK USART_CR1_WAKE /*!< USART wake up from Mute - ARM GAS /tmp/ccdl7gEi.s page 90 + ARM GAS /tmp/cczi2eQD.s page 90 281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -5398,7 +5398,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 335:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 336:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 337:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_POLARITY_LOW 0x00000000U /*!< Steady low value on SCLK - ARM GAS /tmp/ccdl7gEi.s page 91 + ARM GAS /tmp/cczi2eQD.s page 91 338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_POLARITY_HIGH USART_CR2_CPOL /*!< Steady high value on SCL @@ -5458,7 +5458,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 392:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 393:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_BITORDER_LSBFIRST 0x00000000U /*!< data is transmitted/rece 394:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_BITORDER_MSBFIRST USART_CR2_MSBFIRST /*!< data is transmitted/rece - ARM GAS /tmp/ccdl7gEi.s page 92 + ARM GAS /tmp/cczi2eQD.s page 92 395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -5518,7 +5518,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 449:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 450:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 451:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 93 + ARM GAS /tmp/cczi2eQD.s page 93 452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -5578,7 +5578,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval Register value 507:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 508:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** #define LL_USART_ReadReg(__INSTANCE__, __REG__) READ_REG(__INSTANCE__->__REG__) - ARM GAS /tmp/ccdl7gEi.s page 94 + ARM GAS /tmp/cczi2eQD.s page 94 509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -5638,7 +5638,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 563:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 564:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 565:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 95 + ARM GAS /tmp/cczi2eQD.s page 95 566:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief USART Disable (all USART prescalers and outputs are disabled) @@ -5698,7 +5698,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 621:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Indicate if USART is enabled in STOP Mode (able to wake up MCU from Stop mode or not) 622:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_WAKEUP_FROMSTOP_INSTANCE(USARTx) can be used to check whether or not - ARM GAS /tmp/ccdl7gEi.s page 96 + ARM GAS /tmp/cczi2eQD.s page 96 623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Wake-up from Stop mode feature is supported by the USARTx instance. @@ -5758,7 +5758,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 677:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableDirectionRx(USART_TypeDef *USARTx) 678:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 679:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_RE); - ARM GAS /tmp/ccdl7gEi.s page 97 + ARM GAS /tmp/cczi2eQD.s page 97 680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -5818,7 +5818,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 734:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return enabled/disabled states of Transmitter and Receiver 735:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 RE LL_USART_GetTransferDirection\n 736:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * CR1 TE LL_USART_GetTransferDirection - ARM GAS /tmp/ccdl7gEi.s page 98 + ARM GAS /tmp/cczi2eQD.s page 98 737:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -5878,7 +5878,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 791:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 792:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetWakeUpMethod(USART_TypeDef *USARTx, uint32_t Method) 793:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccdl7gEi.s page 99 + ARM GAS /tmp/cczi2eQD.s page 99 794:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR1, USART_CR1_WAKE, Method); @@ -5938,7 +5938,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 848:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 849:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_MME); 850:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 100 + ARM GAS /tmp/cczi2eQD.s page 100 851:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -5998,7 +5998,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 LBCL LL_USART_SetLastClkPulseOutput 906:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param LastBitClockPulse This parameter can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 101 + ARM GAS /tmp/cczi2eQD.s page 101 908:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_LASTCLKPULSE_NO_OUTPUT @@ -6058,7 +6058,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 962:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 963:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 964:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 102 + ARM GAS /tmp/cczi2eQD.s page 102 965:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Select the polarity of the clock output on the SCLK pin in synchronous mode @@ -6118,7 +6118,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1019:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1020:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_CPHA | USART_CR2_CPOL | USART_CR2_LBCL, Phase | Polarity | LBCP 1021:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 103 + ARM GAS /tmp/cczi2eQD.s page 103 1022:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -6178,7 +6178,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1078:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 104 + ARM GAS /tmp/cczi2eQD.s page 104 1079:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Retrieve the length of the stop bits @@ -6238,7 +6238,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1133:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_TXRX_SWAPPED 1134:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1135:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 105 + ARM GAS /tmp/cczi2eQD.s page 105 1136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetTXRXSwap(USART_TypeDef *USARTx, uint32_t SwapConfig) @@ -6298,7 +6298,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1190:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetTXPinLevel(USART_TypeDef *USARTx, uint32_t PinInvMethod) 1191:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1192:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_TXINV, PinInvMethod); - ARM GAS /tmp/ccdl7gEi.s page 106 + ARM GAS /tmp/cczi2eQD.s page 106 1193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -6358,7 +6358,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1247:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 1248:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_SetTransferBitOrder(USART_TypeDef *USARTx, uint32_t BitOrder) 1249:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccdl7gEi.s page 107 + ARM GAS /tmp/cczi2eQD.s page 107 1250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** MODIFY_REG(USARTx->CR2, USART_CR2_MSBFIRST, BitOrder); @@ -6418,7 +6418,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1304:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR2, USART_CR2_ABREN) == (USART_CR2_ABREN)) ? 1UL : 0UL); 1305:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1306:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccdl7gEi.s page 108 + ARM GAS /tmp/cczi2eQD.s page 108 1307:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -6478,7 +6478,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1361:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR2, USART_CR2_RTOEN); 1362:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 1363:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccdl7gEi.s page 109 + ARM GAS /tmp/cczi2eQD.s page 109 1364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -6538,7 +6538,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1418:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1419:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1420:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return Length of Node Address used in Address Detection mode (7-bit or 4-bit) - ARM GAS /tmp/ccdl7gEi.s page 110 + ARM GAS /tmp/cczi2eQD.s page 110 1421:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 ADDM7 LL_USART_GetNodeAddressLen @@ -6598,7 +6598,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1475:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 CTSE LL_USART_DisableCTSHWFlowCtrl 1476:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1477:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None - ARM GAS /tmp/ccdl7gEi.s page 111 + ARM GAS /tmp/cczi2eQD.s page 111 1478:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -6658,7 +6658,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1532:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1533:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable One bit sampling method 1534:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 ONEBIT LL_USART_DisableOneBitSamp - ARM GAS /tmp/ccdl7gEi.s page 112 + ARM GAS /tmp/cczi2eQD.s page 112 1535:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -6718,7 +6718,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1589:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1590:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Select event type for Wake UP Interrupt Flag (WUS[1:0] bits) 1591:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_WAKEUP_FROMSTOP_INSTANCE(USARTx) can be used to check whether or not - ARM GAS /tmp/ccdl7gEi.s page 113 + ARM GAS /tmp/cczi2eQD.s page 113 1592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Wake-up from Stop mode feature is supported by the USARTx instance. @@ -6778,7 +6778,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1646:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** if (OverSampling == LL_USART_OVERSAMPLING_8) 1647:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 1648:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** usartdiv = (uint16_t)(__LL_USART_DIV_SAMPLING8(PeriphClk, BaudRate)); - ARM GAS /tmp/ccdl7gEi.s page 114 + ARM GAS /tmp/cczi2eQD.s page 114 1649:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** brrtemp = usartdiv & 0xFFF0U; @@ -6838,7 +6838,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1703:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll RTOR RTO LL_USART_SetRxTimeout 1704:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1705:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param Timeout Value between Min_Data=0x00 and Max_Data=0x00FFFFFF - ARM GAS /tmp/ccdl7gEi.s page 115 + ARM GAS /tmp/cczi2eQD.s page 115 1706:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None @@ -6898,7 +6898,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1760:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1761:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 1762:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 116 + ARM GAS /tmp/cczi2eQD.s page 116 1763:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIrda(USART_TypeDef *USARTx) @@ -6958,7 +6958,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1817:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_IRDA_POWER_NORMAL 1818:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @arg @ref LL_USART_PHASE_2EDGE 1819:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 117 + ARM GAS /tmp/cczi2eQD.s page 117 1820:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_GetIrdaPowerMode(const USART_TypeDef *USARTx) @@ -7018,7 +7018,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1874:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 1875:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 1876:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable Smartcard NACK transmission - ARM GAS /tmp/ccdl7gEi.s page 118 + ARM GAS /tmp/cczi2eQD.s page 118 1877:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_SMARTCARD_INSTANCE(USARTx) can be used to check whether or not @@ -7078,7 +7078,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1931:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 SCEN LL_USART_IsEnabledSmartcard 1932:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 1933:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). - ARM GAS /tmp/ccdl7gEi.s page 119 + ARM GAS /tmp/cczi2eQD.s page 119 1934:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -7138,7 +7138,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1988:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return Smartcard prescaler value, used for dividing the USART clock 1989:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * source to provide the SMARTCARD Clock (5 bits value) 1990:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_SMARTCARD_INSTANCE(USARTx) can be used to check whether or not - ARM GAS /tmp/ccdl7gEi.s page 120 + ARM GAS /tmp/cczi2eQD.s page 120 1991:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Smartcard feature is supported by the USARTx instance. @@ -7198,7 +7198,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2045:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 2046:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableHalfDuplex(USART_TypeDef *USARTx) 2047:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccdl7gEi.s page 121 + ARM GAS /tmp/cczi2eQD.s page 121 2048:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR3, USART_CR3_HDSEL); @@ -7258,7 +7258,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2102:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return LIN Break Detection Length 2103:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_LIN_INSTANCE(USARTx) can be used to check whether or not 2104:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * LIN feature is supported by the USARTx instance. - ARM GAS /tmp/ccdl7gEi.s page 122 + ARM GAS /tmp/cczi2eQD.s page 122 2105:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 LBDL LL_USART_GetLINBrkDetectionLen @@ -7318,7 +7318,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2159:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EF_Configuration_DE Configuration functions related to Driver Enable feature 2160:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @{ 2161:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 123 + ARM GAS /tmp/cczi2eQD.s page 123 2162:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -7378,7 +7378,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2216:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2217:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2218:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable Driver Enable (DE) Mode - ARM GAS /tmp/ccdl7gEi.s page 124 + ARM GAS /tmp/cczi2eQD.s page 124 2219:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_DRIVER_ENABLE_INSTANCE(USARTx) can be used to check whether or not @@ -7438,7 +7438,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2273:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Return Driver Enable Polarity 2274:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_UART_DRIVER_ENABLE_INSTANCE(USARTx) can be used to check whether or not 2275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * Driver Enable feature is supported by the USARTx instance. - ARM GAS /tmp/ccdl7gEi.s page 125 + ARM GAS /tmp/cczi2eQD.s page 125 2276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 DEP LL_USART_GetDESignalPolarity @@ -7498,7 +7498,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Perform basic configuration of USART for enabling use in Synchronous Mode 2332:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note In Synchronous mode, the following bits must be kept cleared: - ARM GAS /tmp/ccdl7gEi.s page 126 + ARM GAS /tmp/cczi2eQD.s page 126 2333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - LINEN bit in the USART_CR2 register, @@ -7558,7 +7558,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2387:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * (as Baud Rate, Word length, LIN Break Detection Length, ...) should be set using 2388:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * dedicated functions 2389:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR2 CLKEN LL_USART_ConfigLINMode\n - ARM GAS /tmp/ccdl7gEi.s page 127 + ARM GAS /tmp/cczi2eQD.s page 127 2390:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * CR2 STOP LL_USART_ConfigLINMode\n @@ -7618,7 +7618,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2444:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** CLEAR_BIT(USARTx->CR3, (USART_CR3_SCEN | USART_CR3_IREN)); 2445:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /* set the UART/USART in Half Duplex mode */ 2446:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** SET_BIT(USARTx->CR3, USART_CR3_HDSEL); - ARM GAS /tmp/ccdl7gEi.s page 128 + ARM GAS /tmp/cczi2eQD.s page 128 2447:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -7678,7 +7678,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2501:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_IRDA_INSTANCE(USARTx) can be used to check whether or not 2502:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * IrDA feature is supported by the USARTx instance. 2503:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Call of this function is equivalent to following function call sequence : - ARM GAS /tmp/ccdl7gEi.s page 129 + ARM GAS /tmp/cczi2eQD.s page 129 2504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * - Clear LINEN in CR2 using @ref LL_USART_DisableLIN() function @@ -7738,7 +7738,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2558:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2559:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None 2560:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 130 + ARM GAS /tmp/cczi2eQD.s page 130 2561:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_ConfigMultiProcessMode(USART_TypeDef *USARTx) @@ -7798,7 +7798,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2615:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2616:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2617:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 131 + ARM GAS /tmp/cczi2eQD.s page 131 2618:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_ORE(const USART_TypeDef *USARTx) @@ -7858,7 +7858,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2672:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 2673:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval State of bit (1 or 0). 2674:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 132 + ARM GAS /tmp/cczi2eQD.s page 132 2675:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsActiveFlag_LBD(const USART_TypeDef *USARTx) @@ -7918,7 +7918,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2729:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 2730:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2731:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Auto-Baud Rate Error Flag is set or not - ARM GAS /tmp/ccdl7gEi.s page 133 + ARM GAS /tmp/cczi2eQD.s page 133 2732:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @note Macro IS_USART_AUTOBAUDRATE_DETECTION_INSTANCE(USARTx) can be used to check whether or @@ -7978,7 +7978,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2786:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->ISR, USART_ISR_SBKF) == (USART_ISR_SBKF)) ? 1UL : 0UL); 2787:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 2788:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccdl7gEi.s page 134 + ARM GAS /tmp/cczi2eQD.s page 134 2789:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -8038,7 +8038,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2843:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 2844:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the Smartcard Transmission Complete Before Guard Time Flag is set or not 2845:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ISR TCBGT LL_USART_IsActiveFlag_TCBGT - ARM GAS /tmp/ccdl7gEi.s page 135 + ARM GAS /tmp/cczi2eQD.s page 135 2846:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -8098,7 +8098,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2900:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Clear IDLE line detected Flag 2901:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll ICR IDLECF LL_USART_ClearFlag_IDLE 2902:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccdl7gEi.s page 136 + ARM GAS /tmp/cczi2eQD.s page 136 2903:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None @@ -8158,7 +8158,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2957:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 2958:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** WRITE_REG(USARTx->ICR, USART_ICR_CTSCF); 2959:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 137 + ARM GAS /tmp/cczi2eQD.s page 137 2960:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -8218,7 +8218,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3014:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @} 3015:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3016:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccdl7gEi.s page 138 + ARM GAS /tmp/cczi2eQD.s page 138 3017:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @defgroup USART_LL_EF_IT_Management IT_Management @@ -8278,7 +8278,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3071:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE void LL_USART_EnableIT_PE(USART_TypeDef *USARTx) 3072:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3073:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_SET_BIT(USARTx->CR1, USART_CR1_PEIE); - ARM GAS /tmp/ccdl7gEi.s page 139 + ARM GAS /tmp/cczi2eQD.s page 139 3074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } @@ -8338,7 +8338,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * 0: Interrupt is inhibited 3129:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * 1: An interrupt is generated when FE=1 or ORE=1 or NF=1 in the USARTx_ISR register. 3130:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 EIE LL_USART_EnableIT_ERROR - ARM GAS /tmp/ccdl7gEi.s page 140 + ARM GAS /tmp/cczi2eQD.s page 140 3131:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -8398,7 +8398,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 3186:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable IDLE Interrupt 3187:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 IDLEIE LL_USART_DisableIT_IDLE - ARM GAS /tmp/ccdl7gEi.s page 141 + ARM GAS /tmp/cczi2eQD.s page 141 3188:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance @@ -8458,7 +8458,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR1 CMIE LL_USART_DisableIT_CM 3243:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance 3244:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None - ARM GAS /tmp/ccdl7gEi.s page 142 + ARM GAS /tmp/cczi2eQD.s page 142 3245:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ @@ -8518,7 +8518,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3300:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** ATOMIC_CLEAR_BIT(USARTx->CR3, USART_CR3_EIE); 3301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 143 + ARM GAS /tmp/cczi2eQD.s page 143 3302:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -8578,7 +8578,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { 3357:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR1, USART_CR1_IDLEIE) == (USART_CR1_IDLEIE)) ? 1UL : 0UL); 3358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 144 + ARM GAS /tmp/cczi2eQD.s page 144 3359:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** @@ -8638,7 +8638,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3414:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3415:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 145 + ARM GAS /tmp/cczi2eQD.s page 145 3416:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Check if the USART Receiver Timeout Interrupt is enabled or disabled. @@ -8698,7 +8698,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** */ 3471:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** __STATIC_INLINE uint32_t LL_USART_IsEnabledIT_CTS(const USART_TypeDef *USARTx) 3472:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - ARM GAS /tmp/ccdl7gEi.s page 146 + ARM GAS /tmp/cczi2eQD.s page 146 3473:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return ((READ_BIT(USARTx->CR3, USART_CR3_CTSIE) == (USART_CR3_CTSIE)) ? 1UL : 0UL); @@ -8758,7 +8758,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** 3528:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** 3529:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Disable DMA Mode for reception - ARM GAS /tmp/ccdl7gEi.s page 147 + ARM GAS /tmp/cczi2eQD.s page 147 3530:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 DMAR LL_USART_DisableDMAReq_RX @@ -8818,7 +8818,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @brief Enable DMA Disabling on Reception Error 3585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @rmtoll CR3 DDRE LL_USART_EnableDMADeactOnRxErr 3586:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @param USARTx USART Instance - ARM GAS /tmp/ccdl7gEi.s page 148 + ARM GAS /tmp/cczi2eQD.s page 148 3587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** * @retval None @@ -8878,7 +8878,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return data_reg_addr; 3642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } 3643:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** - ARM GAS /tmp/ccdl7gEi.s page 149 + ARM GAS /tmp/cczi2eQD.s page 149 3644:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** /** @@ -8902,7 +8902,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 3660:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** return (uint8_t)(READ_BIT(USARTx->RDR, USART_RDR_RDR) & 0xFFU); 635 .loc 3 3660 3 view .LVU107 636 .loc 3 3660 20 is_stmt 0 view .LVU108 - 637 0002 9B4B ldr r3, .L89 + 637 0002 994B ldr r3, .L100 638 0004 5A6A ldr r2, [r3, #36] 639 .loc 3 3660 10 view .LVU109 640 0006 D2B2 uxtb r2, r2 @@ -8911,51 +8911,51 @@ ARM GAS /tmp/ccdl7gEi.s page 1 643 .LBE67: 644 .LBE66: 645 .loc 1 437 14 discriminator 1 view .LVU111 - 646 0008 9A4B ldr r3, .L89+4 + 646 0008 984B ldr r3, .L100+4 647 000a 1A70 strb r2, [r3] 438:Src/stm32f7xx_it.c **** switch (UART_rec_incr) 648 .loc 1 438 5 is_stmt 1 view .LVU112 - 649 000c 9A4B ldr r3, .L89+8 + 649 000c 984B ldr r3, .L100+8 650 000e 1B88 ldrh r3, [r3] 651 0010 1F2B cmp r3, #31 - 652 0012 00F26481 bhi .L49 + 652 0012 00F2B381 bhi .L49 653 0016 DFE813F0 tbh [pc, r3, lsl #1] 654 .L51: 655 001a 2000 .2byte (.L55-.L51)/2 656 001c 2F00 .2byte (.L54-.L51)/2 - 657 001e 6201 .2byte (.L49-.L51)/2 - 658 0020 6201 .2byte (.L49-.L51)/2 - 659 0022 6201 .2byte (.L49-.L51)/2 - 660 0024 6201 .2byte (.L49-.L51)/2 - 661 0026 6201 .2byte (.L49-.L51)/2 - 662 0028 6201 .2byte (.L49-.L51)/2 - 663 002a 6201 .2byte (.L49-.L51)/2 - 664 002c 9E00 .2byte (.L53-.L51)/2 - 665 002e 6201 .2byte (.L49-.L51)/2 - 666 0030 6201 .2byte (.L49-.L51)/2 - 667 0032 6201 .2byte (.L49-.L51)/2 - 668 0034 6201 .2byte (.L49-.L51)/2 - 669 0036 6201 .2byte (.L49-.L51)/2 - 670 0038 6201 .2byte (.L49-.L51)/2 - 671 003a 6201 .2byte (.L49-.L51)/2 - ARM GAS /tmp/ccdl7gEi.s page 150 + 657 001e B101 .2byte (.L49-.L51)/2 + 658 0020 B101 .2byte (.L49-.L51)/2 + 659 0022 B101 .2byte (.L49-.L51)/2 + 660 0024 B101 .2byte (.L49-.L51)/2 + 661 0026 B101 .2byte (.L49-.L51)/2 + 662 0028 B101 .2byte (.L49-.L51)/2 + 663 002a B101 .2byte (.L49-.L51)/2 + 664 002c AF00 .2byte (.L53-.L51)/2 + 665 002e B101 .2byte (.L49-.L51)/2 + 666 0030 B101 .2byte (.L49-.L51)/2 + 667 0032 B101 .2byte (.L49-.L51)/2 + 668 0034 B101 .2byte (.L49-.L51)/2 + 669 0036 B101 .2byte (.L49-.L51)/2 + 670 0038 B101 .2byte (.L49-.L51)/2 + 671 003a B101 .2byte (.L49-.L51)/2 + ARM GAS /tmp/cczi2eQD.s page 150 - 672 003c 6201 .2byte (.L49-.L51)/2 - 673 003e 6201 .2byte (.L49-.L51)/2 - 674 0040 6201 .2byte (.L49-.L51)/2 - 675 0042 6201 .2byte (.L49-.L51)/2 - 676 0044 6201 .2byte (.L49-.L51)/2 - 677 0046 6201 .2byte (.L49-.L51)/2 - 678 0048 6201 .2byte (.L49-.L51)/2 - 679 004a 6201 .2byte (.L49-.L51)/2 - 680 004c 6201 .2byte (.L49-.L51)/2 - 681 004e 6201 .2byte (.L49-.L51)/2 - 682 0050 6201 .2byte (.L49-.L51)/2 - 683 0052 6201 .2byte (.L49-.L51)/2 - 684 0054 D800 .2byte (.L52-.L51)/2 - 685 0056 6201 .2byte (.L49-.L51)/2 - 686 0058 1201 .2byte (.L50-.L51)/2 + 672 003c B101 .2byte (.L49-.L51)/2 + 673 003e B101 .2byte (.L49-.L51)/2 + 674 0040 B101 .2byte (.L49-.L51)/2 + 675 0042 B101 .2byte (.L49-.L51)/2 + 676 0044 B101 .2byte (.L49-.L51)/2 + 677 0046 B101 .2byte (.L49-.L51)/2 + 678 0048 B101 .2byte (.L49-.L51)/2 + 679 004a B101 .2byte (.L49-.L51)/2 + 680 004c B101 .2byte (.L49-.L51)/2 + 681 004e B101 .2byte (.L49-.L51)/2 + 682 0050 B101 .2byte (.L49-.L51)/2 + 683 0052 B101 .2byte (.L49-.L51)/2 + 684 0054 3D01 .2byte (.L52-.L51)/2 + 685 0056 B101 .2byte (.L49-.L51)/2 + 686 0058 7701 .2byte (.L50-.L51)/2 687 .p2align 1 688 .L55: 439:Src/stm32f7xx_it.c **** { @@ -8963,26 +8963,26 @@ ARM GAS /tmp/ccdl7gEi.s page 1 441:Src/stm32f7xx_it.c **** TO6_uart = TO6;//Save the time of start rec. command 689 .loc 1 441 9 view .LVU113 690 .loc 1 441 18 is_stmt 0 view .LVU114 - 691 005a 8849 ldr r1, .L89+12 + 691 005a 8649 ldr r1, .L100+12 692 005c 0868 ldr r0, [r1] - 693 005e 8849 ldr r1, .L89+16 + 693 005e 8649 ldr r1, .L100+16 694 0060 0860 str r0, [r1] 442:Src/stm32f7xx_it.c **** flg_tmt = 1;//Set the timeout flag 695 .loc 1 442 9 is_stmt 1 view .LVU115 696 .loc 1 442 17 is_stmt 0 view .LVU116 - 697 0062 8849 ldr r1, .L89+20 + 697 0062 8649 ldr r1, .L100+20 698 0064 0120 movs r0, #1 699 0066 0870 strb r0, [r1] 443:Src/stm32f7xx_it.c **** UART_header = uart_buf; 700 .loc 1 443 9 is_stmt 1 view .LVU117 701 .loc 1 443 21 is_stmt 0 view .LVU118 - 702 0068 8749 ldr r1, .L89+24 + 702 0068 8549 ldr r1, .L100+24 703 006a 0A80 strh r2, [r1] @ movhi 444:Src/stm32f7xx_it.c **** UART_rec_incr++; 704 .loc 1 444 9 is_stmt 1 view .LVU119 705 .loc 1 444 22 is_stmt 0 view .LVU120 706 006c 0344 add r3, r3, r0 - 707 006e 824A ldr r2, .L89+8 + 707 006e 804A ldr r2, .L100+8 708 0070 1380 strh r3, [r2] @ movhi 445:Src/stm32f7xx_it.c **** break; 709 .loc 1 445 5 is_stmt 1 view .LVU121 @@ -8998,7 +8998,7 @@ ARM GAS /tmp/ccdl7gEi.s page 1 454:Src/stm32f7xx_it.c **** UART_rec_incr = 0; 455:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag 456:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE; - ARM GAS /tmp/ccdl7gEi.s page 151 + ARM GAS /tmp/cczi2eQD.s page 151 457:Src/stm32f7xx_it.c **** break; @@ -9028,99 +9028,125 @@ ARM GAS /tmp/ccdl7gEi.s page 1 481:Src/stm32f7xx_it.c **** case AD9102_CMD_HEADER: // AD9102 command 482:Src/stm32f7xx_it.c **** UART_rec_incr = 2;//timeout flag is still setting! 483:Src/stm32f7xx_it.c **** break; - 484:Src/stm32f7xx_it.c **** default: //error decoding header - 485:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 486:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 487:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; - 488:Src/stm32f7xx_it.c **** //CPU_state = HALT; - 489:Src/stm32f7xx_it.c **** State_Data[0] |= UART_ERR; - 490:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! - 491:Src/stm32f7xx_it.c **** break; - 492:Src/stm32f7xx_it.c **** } - 493:Src/stm32f7xx_it.c **** break; - 494:Src/stm32f7xx_it.c **** - 495:Src/stm32f7xx_it.c **** case (AD9102_CMD_8 - 1): - 496:Src/stm32f7xx_it.c **** if (UART_header == AD9102_CMD_HEADER) - 497:Src/stm32f7xx_it.c **** { - 498:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) - 499:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 500:Src/stm32f7xx_it.c **** else - 501:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); - 502:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; - 503:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 504:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 505:Src/stm32f7xx_it.c **** } - 506:Src/stm32f7xx_it.c **** else - 507:Src/stm32f7xx_it.c **** { - 508:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) - 509:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 510:Src/stm32f7xx_it.c **** else - 511:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); - 512:Src/stm32f7xx_it.c **** UART_rec_incr++; - 513:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - ARM GAS /tmp/ccdl7gEi.s page 152 + 484:Src/stm32f7xx_it.c **** case AD9833_CMD_HEADER: // AD9833 command + 485:Src/stm32f7xx_it.c **** UART_rec_incr = 2;//timeout flag is still setting! + 486:Src/stm32f7xx_it.c **** break; + 487:Src/stm32f7xx_it.c **** case DS1809_CMD_HEADER: // DS1809 UC/DC pulse command + 488:Src/stm32f7xx_it.c **** UART_rec_incr = 2;//timeout flag is still setting! + 489:Src/stm32f7xx_it.c **** break; + 490:Src/stm32f7xx_it.c **** default: //error decoding header + 491:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 492:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 493:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; + 494:Src/stm32f7xx_it.c **** //CPU_state = HALT; + 495:Src/stm32f7xx_it.c **** State_Data[0] |= UART_ERR; + 496:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! + 497:Src/stm32f7xx_it.c **** break; + 498:Src/stm32f7xx_it.c **** } + 499:Src/stm32f7xx_it.c **** break; + 500:Src/stm32f7xx_it.c **** + 501:Src/stm32f7xx_it.c **** case (AD9102_CMD_8 - 1): + 502:Src/stm32f7xx_it.c **** if (UART_header == AD9102_CMD_HEADER) + 503:Src/stm32f7xx_it.c **** { + 504:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) + 505:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 506:Src/stm32f7xx_it.c **** else + 507:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + 508:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; + 509:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 510:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 511:Src/stm32f7xx_it.c **** } + 512:Src/stm32f7xx_it.c **** else if (UART_header == AD9833_CMD_HEADER) + 513:Src/stm32f7xx_it.c **** { + ARM GAS /tmp/cczi2eQD.s page 152 - 514:Src/stm32f7xx_it.c **** } - 515:Src/stm32f7xx_it.c **** break; - 516:Src/stm32f7xx_it.c **** - 517:Src/stm32f7xx_it.c **** case (CL_8 - 1): - 518:Src/stm32f7xx_it.c **** if (UART_header == 0x1111) - 519:Src/stm32f7xx_it.c **** { - 520:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) - 521:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 522:Src/stm32f7xx_it.c **** else - 523:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); - 524:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; - 525:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 526:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 527:Src/stm32f7xx_it.c **** } - 528:Src/stm32f7xx_it.c **** else - 529:Src/stm32f7xx_it.c **** { - 530:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) - 531:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 532:Src/stm32f7xx_it.c **** else - 533:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); - 534:Src/stm32f7xx_it.c **** UART_rec_incr++; - 535:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 536:Src/stm32f7xx_it.c **** } - 537:Src/stm32f7xx_it.c **** break; - 538:Src/stm32f7xx_it.c **** case (TSK_8 - 1): - 539:Src/stm32f7xx_it.c **** if (UART_header == 0x7777) - 540:Src/stm32f7xx_it.c **** { - 541:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) - 542:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 543:Src/stm32f7xx_it.c **** else - 544:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); - 545:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; - 546:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 547:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 548:Src/stm32f7xx_it.c **** } - 549:Src/stm32f7xx_it.c **** else - 550:Src/stm32f7xx_it.c **** { - 551:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) - 552:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 553:Src/stm32f7xx_it.c **** else - 554:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); - 555:Src/stm32f7xx_it.c **** UART_rec_incr++; - 556:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 557:Src/stm32f7xx_it.c **** } - 558:Src/stm32f7xx_it.c **** break; - 559:Src/stm32f7xx_it.c **** default: - 560:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) - 561:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 562:Src/stm32f7xx_it.c **** else - 563:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); - 564:Src/stm32f7xx_it.c **** UART_rec_incr++; - 565:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 566:Src/stm32f7xx_it.c **** break; - 567:Src/stm32f7xx_it.c **** } - 568:Src/stm32f7xx_it.c **** // HAL_UART_Receive_IT(&huart1, &uart_buf, 1); - 569:Src/stm32f7xx_it.c **** } - 711 .loc 1 569 1 is_stmt 0 view .LVU122 - ARM GAS /tmp/ccdl7gEi.s page 153 + 514:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) + 515:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 516:Src/stm32f7xx_it.c **** else + 517:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + 518:Src/stm32f7xx_it.c **** CPU_state = AD9833_CMD; + 519:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 520:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 521:Src/stm32f7xx_it.c **** } + 522:Src/stm32f7xx_it.c **** else if (UART_header == DS1809_CMD_HEADER) + 523:Src/stm32f7xx_it.c **** { + 524:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) + 525:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 526:Src/stm32f7xx_it.c **** else + 527:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + 528:Src/stm32f7xx_it.c **** CPU_state = DS1809_CMD; + 529:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 530:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 531:Src/stm32f7xx_it.c **** } + 532:Src/stm32f7xx_it.c **** else + 533:Src/stm32f7xx_it.c **** { + 534:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) + 535:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 536:Src/stm32f7xx_it.c **** else + 537:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); + 538:Src/stm32f7xx_it.c **** UART_rec_incr++; + 539:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 540:Src/stm32f7xx_it.c **** } + 541:Src/stm32f7xx_it.c **** break; + 542:Src/stm32f7xx_it.c **** + 543:Src/stm32f7xx_it.c **** case (CL_8 - 1): + 544:Src/stm32f7xx_it.c **** if (UART_header == 0x1111) + 545:Src/stm32f7xx_it.c **** { + 546:Src/stm32f7xx_it.c **** if ((UART_rec_incr & 0x0001) > 0) + 547:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 548:Src/stm32f7xx_it.c **** else + 549:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] = (uint16_t)(uart_buf); + 550:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; + 551:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 552:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 553:Src/stm32f7xx_it.c **** } + 554:Src/stm32f7xx_it.c **** else + 555:Src/stm32f7xx_it.c **** { + 556:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) + 557:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 558:Src/stm32f7xx_it.c **** else + 559:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); + 560:Src/stm32f7xx_it.c **** UART_rec_incr++; + 561:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 562:Src/stm32f7xx_it.c **** } + 563:Src/stm32f7xx_it.c **** break; + 564:Src/stm32f7xx_it.c **** case (TSK_8 - 1): + 565:Src/stm32f7xx_it.c **** if (UART_header == 0x7777) + 566:Src/stm32f7xx_it.c **** { + 567:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) + 568:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 569:Src/stm32f7xx_it.c **** else + 570:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); + ARM GAS /tmp/cczi2eQD.s page 153 + 571:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; + 572:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 573:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 574:Src/stm32f7xx_it.c **** } + 575:Src/stm32f7xx_it.c **** else + 576:Src/stm32f7xx_it.c **** { + 577:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) + 578:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 579:Src/stm32f7xx_it.c **** else + 580:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); + 581:Src/stm32f7xx_it.c **** UART_rec_incr++; + 582:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 583:Src/stm32f7xx_it.c **** } + 584:Src/stm32f7xx_it.c **** break; + 585:Src/stm32f7xx_it.c **** default: + 586:Src/stm32f7xx_it.c **** if ((UART_rec_incr&0x0001)>0) + 587:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 588:Src/stm32f7xx_it.c **** else + 589:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] = (uint16_t)(uart_buf); + 590:Src/stm32f7xx_it.c **** UART_rec_incr++; + 591:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 592:Src/stm32f7xx_it.c **** break; + 593:Src/stm32f7xx_it.c **** } + 594:Src/stm32f7xx_it.c **** // HAL_UART_Receive_IT(&huart1, &uart_buf, 1); + 595:Src/stm32f7xx_it.c **** } + 711 .loc 1 595 1 is_stmt 0 view .LVU122 712 0072 5DF8044B ldr r4, [sp], #4 713 .LCFI7: 714 .cfi_remember_state @@ -9134,929 +9160,1092 @@ ARM GAS /tmp/ccdl7gEi.s page 1 721 .loc 1 447 9 is_stmt 1 view .LVU123 447:Src/stm32f7xx_it.c **** switch (UART_header) 722 .loc 1 447 21 is_stmt 0 view .LVU124 - 723 0078 8349 ldr r1, .L89+24 + 723 0078 8149 ldr r1, .L100+24 724 007a 0B88 ldrh r3, [r1] 725 007c 03EB0223 add r3, r3, r2, lsl #8 726 0080 9BB2 uxth r3, r3 727 0082 0B80 strh r3, [r1] @ movhi 448:Src/stm32f7xx_it.c **** { 728 .loc 1 448 9 is_stmt 1 view .LVU125 - 729 0084 45F25552 movw r2, #21845 + 729 0084 46F26662 movw r2, #26214 730 0088 9342 cmp r3, r2 - 731 008a 45D0 beq .L57 - 732 008c 22D8 bhi .L58 + 731 008a 56D0 beq .L57 + 732 008c 26D8 bhi .L58 733 008e 43F23332 movw r2, #13107 734 0092 9342 cmp r3, r2 - 735 0094 37D0 beq .L59 + 735 0094 3FD0 beq .L59 736 0096 10D8 bhi .L60 737 0098 41F21112 movw r2, #4369 738 009c 9342 cmp r3, r2 - 739 009e 2ED0 beq .L61 + 739 009e 36D0 beq .L61 + ARM GAS /tmp/cczi2eQD.s page 154 + + 740 00a0 42F22222 movw r2, #8738 741 00a4 9342 cmp r3, r2 - 742 00a6 48D1 bne .L63 + 742 00a6 59D1 bne .L63 454:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag 743 .loc 1 454 13 view .LVU126 454:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag 744 .loc 1 454 27 is_stmt 0 view .LVU127 745 00a8 0023 movs r3, #0 - 746 00aa 734A ldr r2, .L89+8 + 746 00aa 714A ldr r2, .L100+8 747 00ac 1380 strh r3, [r2] @ movhi 455:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE; 748 .loc 1 455 13 is_stmt 1 view .LVU128 455:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE; 749 .loc 1 455 21 is_stmt 0 view .LVU129 - 750 00ae 754A ldr r2, .L89+20 + 750 00ae 734A ldr r2, .L100+20 751 00b0 1370 strb r3, [r2] 456:Src/stm32f7xx_it.c **** break; 752 .loc 1 456 13 is_stmt 1 view .LVU130 456:Src/stm32f7xx_it.c **** break; 753 .loc 1 456 23 is_stmt 0 view .LVU131 - 754 00b2 764B ldr r3, .L89+28 + 754 00b2 744B ldr r3, .L100+28 755 00b4 0222 movs r2, #2 756 00b6 1A70 strb r2, [r3] 457:Src/stm32f7xx_it.c **** case 0x3333: //Transmith saved DATA 757 .loc 1 457 9 is_stmt 1 view .LVU132 758 00b8 DBE7 b .L48 - ARM GAS /tmp/ccdl7gEi.s page 154 - - 759 .L60: 760 00ba 44F24442 movw r2, #17476 761 00be 9342 cmp r3, r2 - 762 00c0 3BD1 bne .L63 - 464:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 763 .loc 1 464 13 view .LVU133 - 464:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 764 .loc 1 464 27 is_stmt 0 view .LVU134 - 765 00c2 0023 movs r3, #0 - 766 00c4 6C4A ldr r2, .L89+8 - 767 00c6 1380 strh r3, [r2] @ movhi - 465:Src/stm32f7xx_it.c **** CPU_state = TRANS_ENABLE; - 768 .loc 1 465 13 is_stmt 1 view .LVU135 - 465:Src/stm32f7xx_it.c **** CPU_state = TRANS_ENABLE; - 769 .loc 1 465 21 is_stmt 0 view .LVU136 - 770 00c8 6E4A ldr r2, .L89+20 - 771 00ca 1370 strb r3, [r2] - 466:Src/stm32f7xx_it.c **** break; - 772 .loc 1 466 13 is_stmt 1 view .LVU137 - 466:Src/stm32f7xx_it.c **** break; - 773 .loc 1 466 23 is_stmt 0 view .LVU138 - 774 00cc 6F4B ldr r3, .L89+28 - 775 00ce 0422 movs r2, #4 - 776 00d0 1A70 strb r2, [r3] - 467:Src/stm32f7xx_it.c **** case 0x5555: //Erase saved DATA - 777 .loc 1 467 9 is_stmt 1 view .LVU139 - 778 00d2 CEE7 b .L48 - 779 .L58: - 780 00d4 47F27772 movw r2, #30583 - 781 00d8 9342 cmp r3, r2 - 782 00da 26D0 beq .L65 - 783 00dc 48F68802 movw r2, #34952 + 762 00c0 32D0 beq .L64 + 763 00c2 45F25552 movw r2, #21845 + 764 00c6 9342 cmp r3, r2 + 765 00c8 48D1 bne .L63 + 469:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 766 .loc 1 469 13 view .LVU133 + 469:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 767 .loc 1 469 27 is_stmt 0 view .LVU134 + 768 00ca 0023 movs r3, #0 + 769 00cc 684A ldr r2, .L100+8 + 770 00ce 1380 strh r3, [r2] @ movhi + 470:Src/stm32f7xx_it.c **** CPU_state = REMOVE_FILE; + 771 .loc 1 470 13 is_stmt 1 view .LVU135 + 470:Src/stm32f7xx_it.c **** CPU_state = REMOVE_FILE; + 772 .loc 1 470 21 is_stmt 0 view .LVU136 + 773 00d0 6A4A ldr r2, .L100+20 + 774 00d2 1370 strb r3, [r2] + 471:Src/stm32f7xx_it.c **** break; + 775 .loc 1 471 13 is_stmt 1 view .LVU137 + 471:Src/stm32f7xx_it.c **** break; + 776 .loc 1 471 23 is_stmt 0 view .LVU138 + 777 00d4 6B4B ldr r3, .L100+28 + 778 00d6 0522 movs r2, #5 + 779 00d8 1A70 strb r2, [r3] + 472:Src/stm32f7xx_it.c **** case 0x6666: //Request state + 780 .loc 1 472 9 is_stmt 1 view .LVU139 + 781 00da CAE7 b .L48 + 782 .L58: + ARM GAS /tmp/cczi2eQD.s page 155 + + + 783 00dc 49F69912 movw r2, #39321 784 00e0 9342 cmp r3, r2 - 785 00e2 26D0 beq .L66 - 786 00e4 46F26662 movw r2, #26214 - 787 00e8 9342 cmp r3, r2 - 788 00ea 26D1 bne .L63 + 785 00e2 37D0 beq .L66 + 786 00e4 0BD8 bhi .L67 + 787 00e6 47F27772 movw r2, #30583 + 788 00ea 9342 cmp r3, r2 + 789 00ec 2ED0 beq .L68 + 790 00ee 48F68802 movw r2, #34952 + 791 00f2 9342 cmp r3, r2 + 792 00f4 32D1 bne .L63 + 482:Src/stm32f7xx_it.c **** break; + 793 .loc 1 482 13 view .LVU140 + 482:Src/stm32f7xx_it.c **** break; + 794 .loc 1 482 27 is_stmt 0 view .LVU141 + 795 00f6 5E4B ldr r3, .L100+8 + 796 00f8 0222 movs r2, #2 + 797 00fa 1A80 strh r2, [r3] @ movhi + 483:Src/stm32f7xx_it.c **** case AD9833_CMD_HEADER: // AD9833 command + 798 .loc 1 483 9 is_stmt 1 view .LVU142 + 799 00fc B9E7 b .L48 + 800 .L67: + 801 00fe 4AF6AA22 movw r2, #43690 + 802 0102 9342 cmp r3, r2 + 803 0104 2AD1 bne .L63 + 488:Src/stm32f7xx_it.c **** break; + 804 .loc 1 488 13 view .LVU143 + 488:Src/stm32f7xx_it.c **** break; + 805 .loc 1 488 27 is_stmt 0 view .LVU144 + 806 0106 5A4B ldr r3, .L100+8 + 807 0108 0222 movs r2, #2 + 808 010a 1A80 strh r2, [r3] @ movhi + 489:Src/stm32f7xx_it.c **** default: //error decoding header + 809 .loc 1 489 9 is_stmt 1 view .LVU145 + 810 010c B1E7 b .L48 + 811 .L61: + 451:Src/stm32f7xx_it.c **** break; + 812 .loc 1 451 13 view .LVU146 + 451:Src/stm32f7xx_it.c **** break; + 813 .loc 1 451 27 is_stmt 0 view .LVU147 + 814 010e 584B ldr r3, .L100+8 + 815 0110 0222 movs r2, #2 + 816 0112 1A80 strh r2, [r3] @ movhi + 452:Src/stm32f7xx_it.c **** case 0x2222: //Back to default + 817 .loc 1 452 9 is_stmt 1 view .LVU148 + 818 0114 ADE7 b .L48 + 819 .L59: + 459:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 820 .loc 1 459 13 view .LVU149 + 459:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 821 .loc 1 459 27 is_stmt 0 view .LVU150 + 822 0116 0023 movs r3, #0 + 823 0118 554A ldr r2, .L100+8 + 824 011a 1380 strh r3, [r2] @ movhi + 460:Src/stm32f7xx_it.c **** CPU_state = TRANS_S_ENABLE; + 825 .loc 1 460 13 is_stmt 1 view .LVU151 + 460:Src/stm32f7xx_it.c **** CPU_state = TRANS_S_ENABLE; + 826 .loc 1 460 21 is_stmt 0 view .LVU152 + ARM GAS /tmp/cczi2eQD.s page 156 + + + 827 011c 574A ldr r2, .L100+20 + 828 011e 1370 strb r3, [r2] + 461:Src/stm32f7xx_it.c **** break; + 829 .loc 1 461 13 is_stmt 1 view .LVU153 + 461:Src/stm32f7xx_it.c **** break; + 830 .loc 1 461 23 is_stmt 0 view .LVU154 + 831 0120 584B ldr r3, .L100+28 + 832 0122 0322 movs r2, #3 + 833 0124 1A70 strb r2, [r3] + 462:Src/stm32f7xx_it.c **** case 0x4444: //Received packet + 834 .loc 1 462 9 is_stmt 1 view .LVU155 + 835 0126 A4E7 b .L48 + 836 .L64: + 464:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 837 .loc 1 464 13 view .LVU156 + 464:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 838 .loc 1 464 27 is_stmt 0 view .LVU157 + 839 0128 0023 movs r3, #0 + 840 012a 514A ldr r2, .L100+8 + 841 012c 1380 strh r3, [r2] @ movhi + 465:Src/stm32f7xx_it.c **** CPU_state = TRANS_ENABLE; + 842 .loc 1 465 13 is_stmt 1 view .LVU158 + 465:Src/stm32f7xx_it.c **** CPU_state = TRANS_ENABLE; + 843 .loc 1 465 21 is_stmt 0 view .LVU159 + 844 012e 534A ldr r2, .L100+20 + 845 0130 1370 strb r3, [r2] + 466:Src/stm32f7xx_it.c **** break; + 846 .loc 1 466 13 is_stmt 1 view .LVU160 + 466:Src/stm32f7xx_it.c **** break; + 847 .loc 1 466 23 is_stmt 0 view .LVU161 + 848 0132 544B ldr r3, .L100+28 + 849 0134 0422 movs r2, #4 + 850 0136 1A70 strb r2, [r3] + 467:Src/stm32f7xx_it.c **** case 0x5555: //Erase saved DATA + 851 .loc 1 467 9 is_stmt 1 view .LVU162 + 852 0138 9BE7 b .L48 + 853 .L57: 474:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 789 .loc 1 474 13 view .LVU140 + 854 .loc 1 474 13 view .LVU163 474:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 790 .loc 1 474 27 is_stmt 0 view .LVU141 - 791 00ec 0023 movs r3, #0 - 792 00ee 624A ldr r2, .L89+8 - 793 00f0 1380 strh r3, [r2] @ movhi + 855 .loc 1 474 27 is_stmt 0 view .LVU164 + 856 013a 0023 movs r3, #0 + 857 013c 4C4A ldr r2, .L100+8 + 858 013e 1380 strh r3, [r2] @ movhi 475:Src/stm32f7xx_it.c **** CPU_state = STATE; - 794 .loc 1 475 13 is_stmt 1 view .LVU142 + 859 .loc 1 475 13 is_stmt 1 view .LVU165 475:Src/stm32f7xx_it.c **** CPU_state = STATE; - 795 .loc 1 475 21 is_stmt 0 view .LVU143 - 796 00f2 644A ldr r2, .L89+20 - 797 00f4 1370 strb r3, [r2] + 860 .loc 1 475 21 is_stmt 0 view .LVU166 + 861 0140 4E4A ldr r2, .L100+20 + 862 0142 1370 strb r3, [r2] 476:Src/stm32f7xx_it.c **** break; - 798 .loc 1 476 13 is_stmt 1 view .LVU144 + 863 .loc 1 476 13 is_stmt 1 view .LVU167 476:Src/stm32f7xx_it.c **** break; - 799 .loc 1 476 23 is_stmt 0 view .LVU145 - 800 00f6 654B ldr r3, .L89+28 - 801 00f8 0622 movs r2, #6 - 802 00fa 1A70 strb r2, [r3] - ARM GAS /tmp/ccdl7gEi.s page 155 + 864 .loc 1 476 23 is_stmt 0 view .LVU168 + 865 0144 4F4B ldr r3, .L100+28 + 866 0146 0622 movs r2, #6 + 867 0148 1A70 strb r2, [r3] + ARM GAS /tmp/cczi2eQD.s page 157 477:Src/stm32f7xx_it.c **** case 0x7777: - 803 .loc 1 477 9 is_stmt 1 view .LVU146 - 804 00fc B9E7 b .L48 - 805 .L61: - 451:Src/stm32f7xx_it.c **** break; - 806 .loc 1 451 13 view .LVU147 - 451:Src/stm32f7xx_it.c **** break; - 807 .loc 1 451 27 is_stmt 0 view .LVU148 - 808 00fe 5E4B ldr r3, .L89+8 - 809 0100 0222 movs r2, #2 - 810 0102 1A80 strh r2, [r3] @ movhi - 452:Src/stm32f7xx_it.c **** case 0x2222: //Back to default - 811 .loc 1 452 9 is_stmt 1 view .LVU149 - 812 0104 B5E7 b .L48 - 813 .L59: - 459:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 814 .loc 1 459 13 view .LVU150 - 459:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 815 .loc 1 459 27 is_stmt 0 view .LVU151 - 816 0106 0023 movs r3, #0 - 817 0108 5B4A ldr r2, .L89+8 - 818 010a 1380 strh r3, [r2] @ movhi - 460:Src/stm32f7xx_it.c **** CPU_state = TRANS_S_ENABLE; - 819 .loc 1 460 13 is_stmt 1 view .LVU152 - 460:Src/stm32f7xx_it.c **** CPU_state = TRANS_S_ENABLE; - 820 .loc 1 460 21 is_stmt 0 view .LVU153 - 821 010c 5D4A ldr r2, .L89+20 - 822 010e 1370 strb r3, [r2] - 461:Src/stm32f7xx_it.c **** break; - 823 .loc 1 461 13 is_stmt 1 view .LVU154 - 461:Src/stm32f7xx_it.c **** break; - 824 .loc 1 461 23 is_stmt 0 view .LVU155 - 825 0110 5E4B ldr r3, .L89+28 - 826 0112 0322 movs r2, #3 - 827 0114 1A70 strb r2, [r3] - 462:Src/stm32f7xx_it.c **** case 0x4444: //Received packet - 828 .loc 1 462 9 is_stmt 1 view .LVU156 - 829 0116 ACE7 b .L48 - 830 .L57: - 469:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 831 .loc 1 469 13 view .LVU157 - 469:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 832 .loc 1 469 27 is_stmt 0 view .LVU158 - 833 0118 0023 movs r3, #0 - 834 011a 574A ldr r2, .L89+8 - 835 011c 1380 strh r3, [r2] @ movhi - 470:Src/stm32f7xx_it.c **** CPU_state = REMOVE_FILE; - 836 .loc 1 470 13 is_stmt 1 view .LVU159 - 470:Src/stm32f7xx_it.c **** CPU_state = REMOVE_FILE; - 837 .loc 1 470 21 is_stmt 0 view .LVU160 - 838 011e 594A ldr r2, .L89+20 - 839 0120 1370 strb r3, [r2] - 471:Src/stm32f7xx_it.c **** break; - 840 .loc 1 471 13 is_stmt 1 view .LVU161 - 471:Src/stm32f7xx_it.c **** break; - 841 .loc 1 471 23 is_stmt 0 view .LVU162 - 842 0122 5A4B ldr r3, .L89+28 - ARM GAS /tmp/ccdl7gEi.s page 156 - - - 843 0124 0522 movs r2, #5 - 844 0126 1A70 strb r2, [r3] - 472:Src/stm32f7xx_it.c **** case 0x6666: //Request state - 845 .loc 1 472 9 is_stmt 1 view .LVU163 - 846 0128 A3E7 b .L48 - 847 .L65: + 868 .loc 1 477 9 is_stmt 1 view .LVU169 + 869 014a 92E7 b .L48 + 870 .L68: 479:Src/stm32f7xx_it.c **** break; - 848 .loc 1 479 13 view .LVU164 + 871 .loc 1 479 13 view .LVU170 479:Src/stm32f7xx_it.c **** break; - 849 .loc 1 479 27 is_stmt 0 view .LVU165 - 850 012a 534B ldr r3, .L89+8 - 851 012c 0222 movs r2, #2 - 852 012e 1A80 strh r2, [r3] @ movhi + 872 .loc 1 479 27 is_stmt 0 view .LVU171 + 873 014c 484B ldr r3, .L100+8 + 874 014e 0222 movs r2, #2 + 875 0150 1A80 strh r2, [r3] @ movhi 480:Src/stm32f7xx_it.c **** case AD9102_CMD_HEADER: // AD9102 command - 853 .loc 1 480 13 is_stmt 1 view .LVU166 - 854 0130 9FE7 b .L48 - 855 .L66: - 482:Src/stm32f7xx_it.c **** break; - 856 .loc 1 482 13 view .LVU167 - 482:Src/stm32f7xx_it.c **** break; - 857 .loc 1 482 27 is_stmt 0 view .LVU168 - 858 0132 514B ldr r3, .L89+8 - 859 0134 0222 movs r2, #2 - 860 0136 1A80 strh r2, [r3] @ movhi - 483:Src/stm32f7xx_it.c **** default: //error decoding header - 861 .loc 1 483 9 is_stmt 1 view .LVU169 - 862 0138 9BE7 b .L48 - 863 .L63: - 485:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 864 .loc 1 485 13 view .LVU170 - 485:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 865 .loc 1 485 27 is_stmt 0 view .LVU171 - 866 013a 0023 movs r3, #0 - 867 013c 4E4A ldr r2, .L89+8 - 868 013e 1380 strh r3, [r2] @ movhi - 486:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; - 869 .loc 1 486 13 is_stmt 1 view .LVU172 - 486:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; - 870 .loc 1 486 21 is_stmt 0 view .LVU173 - 871 0140 504A ldr r2, .L89+20 - 872 0142 1370 strb r3, [r2] - 489:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! - 873 .loc 1 489 13 is_stmt 1 view .LVU174 - 489:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! - 874 .loc 1 489 23 is_stmt 0 view .LVU175 - 875 0144 524A ldr r2, .L89+32 - 876 0146 1378 ldrb r3, [r2] @ zero_extendqisi2 - 489:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! - 877 .loc 1 489 27 view .LVU176 - 878 0148 43F00203 orr r3, r3, #2 - 879 014c 1370 strb r3, [r2] - 490:Src/stm32f7xx_it.c **** break; - 880 .loc 1 490 13 is_stmt 1 view .LVU177 - 490:Src/stm32f7xx_it.c **** break; - 881 .loc 1 490 23 is_stmt 0 view .LVU178 - 882 014e 4F4B ldr r3, .L89+28 - 883 0150 0222 movs r2, #2 - ARM GAS /tmp/ccdl7gEi.s page 157 + 876 .loc 1 480 13 is_stmt 1 view .LVU172 + 877 0152 8EE7 b .L48 + 878 .L66: + 485:Src/stm32f7xx_it.c **** break; + 879 .loc 1 485 13 view .LVU173 + 485:Src/stm32f7xx_it.c **** break; + 880 .loc 1 485 27 is_stmt 0 view .LVU174 + 881 0154 464B ldr r3, .L100+8 + 882 0156 0222 movs r2, #2 + 883 0158 1A80 strh r2, [r3] @ movhi + 486:Src/stm32f7xx_it.c **** case DS1809_CMD_HEADER: // DS1809 UC/DC pulse command + 884 .loc 1 486 9 is_stmt 1 view .LVU175 + 885 015a 8AE7 b .L48 + 886 .L63: + 491:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 887 .loc 1 491 13 view .LVU176 + 491:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 888 .loc 1 491 27 is_stmt 0 view .LVU177 + 889 015c 0023 movs r3, #0 + 890 015e 444A ldr r2, .L100+8 + 891 0160 1380 strh r3, [r2] @ movhi + 492:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; + 892 .loc 1 492 13 is_stmt 1 view .LVU178 + 492:Src/stm32f7xx_it.c **** //UART_transmission_request = MESS_01; + 893 .loc 1 492 21 is_stmt 0 view .LVU179 + 894 0162 464A ldr r2, .L100+20 + 895 0164 1370 strb r3, [r2] + 495:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! + 896 .loc 1 495 13 is_stmt 1 view .LVU180 + 495:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! + 897 .loc 1 495 23 is_stmt 0 view .LVU181 + 898 0166 484A ldr r2, .L100+32 + 899 0168 1378 ldrb r3, [r2] @ zero_extendqisi2 + 495:Src/stm32f7xx_it.c **** CPU_state = DEFAULT_ENABLE;//Parking system and send error state! + 900 .loc 1 495 27 view .LVU182 + 901 016a 43F00203 orr r3, r3, #2 + 902 016e 1370 strb r3, [r2] + 496:Src/stm32f7xx_it.c **** break; + 903 .loc 1 496 13 is_stmt 1 view .LVU183 + 496:Src/stm32f7xx_it.c **** break; + 904 .loc 1 496 23 is_stmt 0 view .LVU184 + 905 0170 444B ldr r3, .L100+28 + 906 0172 0222 movs r2, #2 + 907 0174 1A70 strb r2, [r3] + 497:Src/stm32f7xx_it.c **** } + ARM GAS /tmp/cczi2eQD.s page 158 - 884 0152 1A70 strb r2, [r3] - 491:Src/stm32f7xx_it.c **** } - 885 .loc 1 491 9 is_stmt 1 view .LVU179 - 886 0154 8DE7 b .L48 - 887 .L53: - 496:Src/stm32f7xx_it.c **** { - 888 .loc 1 496 9 view .LVU180 - 496:Src/stm32f7xx_it.c **** { - 889 .loc 1 496 25 is_stmt 0 view .LVU181 - 890 0156 4C49 ldr r1, .L89+24 - 891 0158 0888 ldrh r0, [r1] - 496:Src/stm32f7xx_it.c **** { - 892 .loc 1 496 12 view .LVU182 - 893 015a 48F68801 movw r1, #34952 - 894 015e 8842 cmp r0, r1 - 895 0160 12D0 beq .L86 - 508:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 896 .loc 1 508 13 is_stmt 1 view .LVU183 - 508:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 897 .loc 1 508 16 is_stmt 0 view .LVU184 - 898 0162 13F0010F tst r3, #1 - 899 0166 2AD0 beq .L71 - 509:Src/stm32f7xx_it.c **** else - 900 .loc 1 509 17 is_stmt 1 view .LVU185 - 509:Src/stm32f7xx_it.c **** else - 901 .loc 1 509 24 is_stmt 0 view .LVU186 - 902 0168 5908 lsrs r1, r3, #1 - 903 016a 0139 subs r1, r1, #1 - 904 016c 494C ldr r4, .L89+36 - 905 016e 34F81100 ldrh r0, [r4, r1, lsl #1] - 509:Src/stm32f7xx_it.c **** else - 906 .loc 1 509 47 view .LVU187 - 907 0172 00EB0222 add r2, r0, r2, lsl #8 - 908 0176 24F81120 strh r2, [r4, r1, lsl #1] @ movhi - 909 .L72: - 512:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 910 .loc 1 512 13 is_stmt 1 view .LVU188 - 512:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 911 .loc 1 512 26 is_stmt 0 view .LVU189 - 912 017a 0133 adds r3, r3, #1 - 913 017c 3E4A ldr r2, .L89+8 - 914 017e 1380 strh r3, [r2] @ movhi - 513:Src/stm32f7xx_it.c **** } - 915 .loc 1 513 13 is_stmt 1 view .LVU190 - 513:Src/stm32f7xx_it.c **** } - 916 .loc 1 513 39 is_stmt 0 view .LVU191 - 917 0180 454B ldr r3, .L89+40 - 918 0182 0022 movs r2, #0 - 919 0184 1A70 strb r2, [r3] - 920 0186 74E7 b .L48 - 921 .L86: - 498:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 922 .loc 1 498 13 is_stmt 1 view .LVU192 - 498:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 923 .loc 1 498 16 is_stmt 0 view .LVU193 - 924 0188 13F0010F tst r3, #1 - 925 018c 11D0 beq .L69 - ARM GAS /tmp/ccdl7gEi.s page 158 + 908 .loc 1 497 9 is_stmt 1 view .LVU185 + 909 0176 7CE7 b .L48 + 910 .L53: + 502:Src/stm32f7xx_it.c **** { + 911 .loc 1 502 9 view .LVU186 + 502:Src/stm32f7xx_it.c **** { + 912 .loc 1 502 25 is_stmt 0 view .LVU187 + 913 0178 4149 ldr r1, .L100+24 + 914 017a 0988 ldrh r1, [r1] + 502:Src/stm32f7xx_it.c **** { + 915 .loc 1 502 12 view .LVU188 + 916 017c 48F68800 movw r0, #34952 + 917 0180 8142 cmp r1, r0 + 918 0182 1AD0 beq .L95 + 512:Src/stm32f7xx_it.c **** { + 919 .loc 1 512 14 is_stmt 1 view .LVU189 + 512:Src/stm32f7xx_it.c **** { + 920 .loc 1 512 17 is_stmt 0 view .LVU190 + 921 0184 49F69910 movw r0, #39321 + 922 0188 8142 cmp r1, r0 + 923 018a 31D0 beq .L96 + 522:Src/stm32f7xx_it.c **** { + 924 .loc 1 522 14 is_stmt 1 view .LVU191 + 522:Src/stm32f7xx_it.c **** { + 925 .loc 1 522 17 is_stmt 0 view .LVU192 + 926 018c 4AF6AA20 movw r0, #43690 + 927 0190 8142 cmp r1, r0 + 928 0192 48D0 beq .L97 + 534:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 929 .loc 1 534 13 is_stmt 1 view .LVU193 + 534:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 930 .loc 1 534 16 is_stmt 0 view .LVU194 + 931 0194 13F0010F tst r3, #1 + 932 0198 60D0 beq .L80 + 535:Src/stm32f7xx_it.c **** else + 933 .loc 1 535 17 is_stmt 1 view .LVU195 + 535:Src/stm32f7xx_it.c **** else + 934 .loc 1 535 24 is_stmt 0 view .LVU196 + 935 019a 5908 lsrs r1, r3, #1 + 936 019c 0139 subs r1, r1, #1 + 937 019e 3B4C ldr r4, .L100+36 + 938 01a0 34F81100 ldrh r0, [r4, r1, lsl #1] + 535:Src/stm32f7xx_it.c **** else + 939 .loc 1 535 47 view .LVU197 + 940 01a4 00EB0222 add r2, r0, r2, lsl #8 + 941 01a8 24F81120 strh r2, [r4, r1, lsl #1] @ movhi + 942 .L81: + 538:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 943 .loc 1 538 13 is_stmt 1 view .LVU198 + 538:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 944 .loc 1 538 26 is_stmt 0 view .LVU199 + 945 01ac 0133 adds r3, r3, #1 + 946 01ae 304A ldr r2, .L100+8 + 947 01b0 1380 strh r3, [r2] @ movhi + 539:Src/stm32f7xx_it.c **** } + 948 .loc 1 539 13 is_stmt 1 view .LVU200 + 539:Src/stm32f7xx_it.c **** } + ARM GAS /tmp/cczi2eQD.s page 159 - 499:Src/stm32f7xx_it.c **** else - 926 .loc 1 499 17 is_stmt 1 view .LVU194 - 499:Src/stm32f7xx_it.c **** else - 927 .loc 1 499 24 is_stmt 0 view .LVU195 - 928 018e 5B08 lsrs r3, r3, #1 - 929 0190 013B subs r3, r3, #1 - 930 0192 4048 ldr r0, .L89+36 - 931 0194 30F81310 ldrh r1, [r0, r3, lsl #1] - 499:Src/stm32f7xx_it.c **** else - 932 .loc 1 499 51 view .LVU196 - 933 0198 01EB0222 add r2, r1, r2, lsl #8 - 934 019c 20F81320 strh r2, [r0, r3, lsl #1] @ movhi - 935 .L70: - 502:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 936 .loc 1 502 13 is_stmt 1 view .LVU197 - 502:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 937 .loc 1 502 23 is_stmt 0 view .LVU198 - 938 01a0 3A4B ldr r3, .L89+28 - 939 01a2 0A22 movs r2, #10 - 940 01a4 1A70 strb r2, [r3] - 503:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 941 .loc 1 503 13 is_stmt 1 view .LVU199 - 503:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 942 .loc 1 503 27 is_stmt 0 view .LVU200 - 943 01a6 0023 movs r3, #0 - 944 01a8 334A ldr r2, .L89+8 - 945 01aa 1380 strh r3, [r2] @ movhi - 504:Src/stm32f7xx_it.c **** } - 946 .loc 1 504 13 is_stmt 1 view .LVU201 - 504:Src/stm32f7xx_it.c **** } - 947 .loc 1 504 21 is_stmt 0 view .LVU202 - 948 01ac 354A ldr r2, .L89+20 - 949 01ae 1370 strb r3, [r2] - 950 01b0 5FE7 b .L48 - 951 .L69: - 501:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; - 952 .loc 1 501 17 is_stmt 1 view .LVU203 - 501:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; - 953 .loc 1 501 40 is_stmt 0 view .LVU204 - 954 01b2 5B08 lsrs r3, r3, #1 - 501:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; - 955 .loc 1 501 46 view .LVU205 - 956 01b4 013B subs r3, r3, #1 - 501:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; - 957 .loc 1 501 51 view .LVU206 - 958 01b6 3749 ldr r1, .L89+36 - 959 01b8 21F81320 strh r2, [r1, r3, lsl #1] @ movhi - 960 01bc F0E7 b .L70 - 961 .L71: - 511:Src/stm32f7xx_it.c **** UART_rec_incr++; - 962 .loc 1 511 17 is_stmt 1 view .LVU207 - 511:Src/stm32f7xx_it.c **** UART_rec_incr++; - 963 .loc 1 511 39 is_stmt 0 view .LVU208 - 964 01be 5908 lsrs r1, r3, #1 - 511:Src/stm32f7xx_it.c **** UART_rec_incr++; - 965 .loc 1 511 43 view .LVU209 - 966 01c0 0139 subs r1, r1, #1 - ARM GAS /tmp/ccdl7gEi.s page 159 + 949 .loc 1 539 39 is_stmt 0 view .LVU201 + 950 01b2 374B ldr r3, .L100+40 + 951 01b4 0022 movs r2, #0 + 952 01b6 1A70 strb r2, [r3] + 953 01b8 5BE7 b .L48 + 954 .L95: + 504:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 955 .loc 1 504 13 is_stmt 1 view .LVU202 + 504:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 956 .loc 1 504 16 is_stmt 0 view .LVU203 + 957 01ba 13F0010F tst r3, #1 + 958 01be 11D0 beq .L72 + 505:Src/stm32f7xx_it.c **** else + 959 .loc 1 505 17 is_stmt 1 view .LVU204 + 505:Src/stm32f7xx_it.c **** else + 960 .loc 1 505 24 is_stmt 0 view .LVU205 + 961 01c0 5B08 lsrs r3, r3, #1 + 962 01c2 013B subs r3, r3, #1 + 963 01c4 3148 ldr r0, .L100+36 + 964 01c6 30F81310 ldrh r1, [r0, r3, lsl #1] + 505:Src/stm32f7xx_it.c **** else + 965 .loc 1 505 51 view .LVU206 + 966 01ca 01EB0222 add r2, r1, r2, lsl #8 + 967 01ce 20F81320 strh r2, [r0, r3, lsl #1] @ movhi + 968 .L73: + 508:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 969 .loc 1 508 13 is_stmt 1 view .LVU207 + 508:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 970 .loc 1 508 23 is_stmt 0 view .LVU208 + 971 01d2 2C4B ldr r3, .L100+28 + 972 01d4 0A22 movs r2, #10 + 973 01d6 1A70 strb r2, [r3] + 509:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 974 .loc 1 509 13 is_stmt 1 view .LVU209 + 509:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 975 .loc 1 509 27 is_stmt 0 view .LVU210 + 976 01d8 0023 movs r3, #0 + 977 01da 254A ldr r2, .L100+8 + 978 01dc 1380 strh r3, [r2] @ movhi + 510:Src/stm32f7xx_it.c **** } + 979 .loc 1 510 13 is_stmt 1 view .LVU211 + 510:Src/stm32f7xx_it.c **** } + 980 .loc 1 510 21 is_stmt 0 view .LVU212 + 981 01de 274A ldr r2, .L100+20 + 982 01e0 1370 strb r3, [r2] + 983 01e2 46E7 b .L48 + 984 .L72: + 507:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; + 985 .loc 1 507 17 is_stmt 1 view .LVU213 + 507:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; + 986 .loc 1 507 40 is_stmt 0 view .LVU214 + 987 01e4 5B08 lsrs r3, r3, #1 + 507:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; + 988 .loc 1 507 46 view .LVU215 + 989 01e6 013B subs r3, r3, #1 + 507:Src/stm32f7xx_it.c **** CPU_state = AD9102_CMD; + 990 .loc 1 507 51 view .LVU216 + ARM GAS /tmp/cczi2eQD.s page 160 - 511:Src/stm32f7xx_it.c **** UART_rec_incr++; - 967 .loc 1 511 47 view .LVU210 - 968 01c2 3448 ldr r0, .L89+36 - 969 01c4 20F81120 strh r2, [r0, r1, lsl #1] @ movhi - 970 01c8 D7E7 b .L72 - 971 .L52: - 518:Src/stm32f7xx_it.c **** { - 972 .loc 1 518 9 is_stmt 1 view .LVU211 - 518:Src/stm32f7xx_it.c **** { - 973 .loc 1 518 25 is_stmt 0 view .LVU212 - 974 01ca 2F49 ldr r1, .L89+24 - 975 01cc 0888 ldrh r0, [r1] - 518:Src/stm32f7xx_it.c **** { - 976 .loc 1 518 12 view .LVU213 - 977 01ce 41F21111 movw r1, #4369 - 978 01d2 8842 cmp r0, r1 - 979 01d4 12D0 beq .L87 - 530:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 980 .loc 1 530 13 is_stmt 1 view .LVU214 - 530:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 981 .loc 1 530 16 is_stmt 0 view .LVU215 - 982 01d6 13F0010F tst r3, #1 - 983 01da 2AD0 beq .L76 - 531:Src/stm32f7xx_it.c **** else - 984 .loc 1 531 17 is_stmt 1 view .LVU216 - 531:Src/stm32f7xx_it.c **** else - 985 .loc 1 531 24 is_stmt 0 view .LVU217 - 986 01dc 5908 lsrs r1, r3, #1 - 987 01de 0139 subs r1, r1, #1 - 988 01e0 2C4C ldr r4, .L89+36 - 989 01e2 34F81100 ldrh r0, [r4, r1, lsl #1] - 531:Src/stm32f7xx_it.c **** else - 990 .loc 1 531 47 view .LVU218 - 991 01e6 00EB0222 add r2, r0, r2, lsl #8 - 992 01ea 24F81120 strh r2, [r4, r1, lsl #1] @ movhi - 993 .L77: - 534:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 994 .loc 1 534 12 is_stmt 1 view .LVU219 - 534:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 995 .loc 1 534 25 is_stmt 0 view .LVU220 - 996 01ee 0133 adds r3, r3, #1 - 997 01f0 214A ldr r2, .L89+8 - 998 01f2 1380 strh r3, [r2] @ movhi - 535:Src/stm32f7xx_it.c **** } - 999 .loc 1 535 12 is_stmt 1 view .LVU221 - 535:Src/stm32f7xx_it.c **** } - 1000 .loc 1 535 38 is_stmt 0 view .LVU222 - 1001 01f4 284B ldr r3, .L89+40 - 1002 01f6 0022 movs r2, #0 - 1003 01f8 1A70 strb r2, [r3] - 1004 01fa 3AE7 b .L48 - 1005 .L87: - 520:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 1006 .loc 1 520 13 is_stmt 1 view .LVU223 - 520:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; - 1007 .loc 1 520 16 is_stmt 0 view .LVU224 - 1008 01fc 13F0010F tst r3, #1 - ARM GAS /tmp/ccdl7gEi.s page 160 + 991 01e8 2849 ldr r1, .L100+36 + 992 01ea 21F81320 strh r2, [r1, r3, lsl #1] @ movhi + 993 01ee F0E7 b .L73 + 994 .L96: + 514:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 995 .loc 1 514 13 is_stmt 1 view .LVU217 + 514:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 996 .loc 1 514 16 is_stmt 0 view .LVU218 + 997 01f0 13F0010F tst r3, #1 + 998 01f4 11D0 beq .L75 + 515:Src/stm32f7xx_it.c **** else + 999 .loc 1 515 17 is_stmt 1 view .LVU219 + 515:Src/stm32f7xx_it.c **** else + 1000 .loc 1 515 24 is_stmt 0 view .LVU220 + 1001 01f6 5B08 lsrs r3, r3, #1 + 1002 01f8 013B subs r3, r3, #1 + 1003 01fa 2448 ldr r0, .L100+36 + 1004 01fc 30F81310 ldrh r1, [r0, r3, lsl #1] + 515:Src/stm32f7xx_it.c **** else + 1005 .loc 1 515 51 view .LVU221 + 1006 0200 01EB0222 add r2, r1, r2, lsl #8 + 1007 0204 20F81320 strh r2, [r0, r3, lsl #1] @ movhi + 1008 .L76: + 518:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1009 .loc 1 518 13 is_stmt 1 view .LVU222 + 518:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1010 .loc 1 518 23 is_stmt 0 view .LVU223 + 1011 0208 1E4B ldr r3, .L100+28 + 1012 020a 0B22 movs r2, #11 + 1013 020c 1A70 strb r2, [r3] + 519:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1014 .loc 1 519 13 is_stmt 1 view .LVU224 + 519:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1015 .loc 1 519 27 is_stmt 0 view .LVU225 + 1016 020e 0023 movs r3, #0 + 1017 0210 174A ldr r2, .L100+8 + 1018 0212 1380 strh r3, [r2] @ movhi + 520:Src/stm32f7xx_it.c **** } + 1019 .loc 1 520 13 is_stmt 1 view .LVU226 + 520:Src/stm32f7xx_it.c **** } + 1020 .loc 1 520 21 is_stmt 0 view .LVU227 + 1021 0214 194A ldr r2, .L100+20 + 1022 0216 1370 strb r3, [r2] + 1023 0218 2BE7 b .L48 + 1024 .L75: + 517:Src/stm32f7xx_it.c **** CPU_state = AD9833_CMD; + 1025 .loc 1 517 17 is_stmt 1 view .LVU228 + 517:Src/stm32f7xx_it.c **** CPU_state = AD9833_CMD; + 1026 .loc 1 517 40 is_stmt 0 view .LVU229 + 1027 021a 5B08 lsrs r3, r3, #1 + 517:Src/stm32f7xx_it.c **** CPU_state = AD9833_CMD; + 1028 .loc 1 517 46 view .LVU230 + 1029 021c 013B subs r3, r3, #1 + 517:Src/stm32f7xx_it.c **** CPU_state = AD9833_CMD; + 1030 .loc 1 517 51 view .LVU231 + 1031 021e 1B49 ldr r1, .L100+36 + 1032 0220 21F81320 strh r2, [r1, r3, lsl #1] @ movhi + ARM GAS /tmp/cczi2eQD.s page 161 - 1009 0200 11D0 beq .L74 - 521:Src/stm32f7xx_it.c **** else - 1010 .loc 1 521 17 is_stmt 1 view .LVU225 - 521:Src/stm32f7xx_it.c **** else - 1011 .loc 1 521 24 is_stmt 0 view .LVU226 - 1012 0202 5B08 lsrs r3, r3, #1 - 1013 0204 013B subs r3, r3, #1 - 1014 0206 2348 ldr r0, .L89+36 - 1015 0208 30F81310 ldrh r1, [r0, r3, lsl #1] - 521:Src/stm32f7xx_it.c **** else - 1016 .loc 1 521 51 view .LVU227 - 1017 020c 01EB0222 add r2, r1, r2, lsl #8 - 1018 0210 20F81320 strh r2, [r0, r3, lsl #1] @ movhi - 1019 .L75: - 524:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 1020 .loc 1 524 13 is_stmt 1 view .LVU228 - 524:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 1021 .loc 1 524 23 is_stmt 0 view .LVU229 - 1022 0214 1D4B ldr r3, .L89+28 - 1023 0216 0122 movs r2, #1 - 1024 0218 1A70 strb r2, [r3] - 525:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 1025 .loc 1 525 13 is_stmt 1 view .LVU230 - 525:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 1026 .loc 1 525 27 is_stmt 0 view .LVU231 - 1027 021a 0023 movs r3, #0 - 1028 021c 164A ldr r2, .L89+8 - 1029 021e 1380 strh r3, [r2] @ movhi - 526:Src/stm32f7xx_it.c **** } - 1030 .loc 1 526 13 is_stmt 1 view .LVU232 - 526:Src/stm32f7xx_it.c **** } - 1031 .loc 1 526 21 is_stmt 0 view .LVU233 - 1032 0220 184A ldr r2, .L89+20 - 1033 0222 1370 strb r3, [r2] - 1034 0224 25E7 b .L48 - 1035 .L74: - 523:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; - 1036 .loc 1 523 17 is_stmt 1 view .LVU234 - 523:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; - 1037 .loc 1 523 40 is_stmt 0 view .LVU235 - 1038 0226 5B08 lsrs r3, r3, #1 - 523:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; - 1039 .loc 1 523 46 view .LVU236 - 1040 0228 013B subs r3, r3, #1 - 523:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; - 1041 .loc 1 523 51 view .LVU237 - 1042 022a 1A49 ldr r1, .L89+36 - 1043 022c 21F81320 strh r2, [r1, r3, lsl #1] @ movhi - 1044 0230 F0E7 b .L75 - 1045 .L76: - 533:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1046 .loc 1 533 17 is_stmt 1 view .LVU238 - 533:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1047 .loc 1 533 39 is_stmt 0 view .LVU239 - 1048 0232 5908 lsrs r1, r3, #1 - 533:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1049 .loc 1 533 43 view .LVU240 - ARM GAS /tmp/ccdl7gEi.s page 161 + 1033 0224 F0E7 b .L76 + 1034 .L97: + 524:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 1035 .loc 1 524 13 is_stmt 1 view .LVU232 + 524:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 1036 .loc 1 524 16 is_stmt 0 view .LVU233 + 1037 0226 13F0010F tst r3, #1 + 1038 022a 11D0 beq .L78 + 525:Src/stm32f7xx_it.c **** else + 1039 .loc 1 525 17 is_stmt 1 view .LVU234 + 525:Src/stm32f7xx_it.c **** else + 1040 .loc 1 525 24 is_stmt 0 view .LVU235 + 1041 022c 5B08 lsrs r3, r3, #1 + 1042 022e 013B subs r3, r3, #1 + 1043 0230 1648 ldr r0, .L100+36 + 1044 0232 30F81310 ldrh r1, [r0, r3, lsl #1] + 525:Src/stm32f7xx_it.c **** else + 1045 .loc 1 525 51 view .LVU236 + 1046 0236 01EB0222 add r2, r1, r2, lsl #8 + 1047 023a 20F81320 strh r2, [r0, r3, lsl #1] @ movhi + 1048 .L79: + 528:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1049 .loc 1 528 13 is_stmt 1 view .LVU237 + 528:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1050 .loc 1 528 23 is_stmt 0 view .LVU238 + 1051 023e 114B ldr r3, .L100+28 + 1052 0240 0C22 movs r2, #12 + 1053 0242 1A70 strb r2, [r3] + 529:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1054 .loc 1 529 13 is_stmt 1 view .LVU239 + 529:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1055 .loc 1 529 27 is_stmt 0 view .LVU240 + 1056 0244 0023 movs r3, #0 + 1057 0246 0A4A ldr r2, .L100+8 + 1058 0248 1380 strh r3, [r2] @ movhi + 530:Src/stm32f7xx_it.c **** } + 1059 .loc 1 530 13 is_stmt 1 view .LVU241 + 530:Src/stm32f7xx_it.c **** } + 1060 .loc 1 530 21 is_stmt 0 view .LVU242 + 1061 024a 0C4A ldr r2, .L100+20 + 1062 024c 1370 strb r3, [r2] + 1063 024e 10E7 b .L48 + 1064 .L78: + 527:Src/stm32f7xx_it.c **** CPU_state = DS1809_CMD; + 1065 .loc 1 527 17 is_stmt 1 view .LVU243 + 527:Src/stm32f7xx_it.c **** CPU_state = DS1809_CMD; + 1066 .loc 1 527 40 is_stmt 0 view .LVU244 + 1067 0250 5B08 lsrs r3, r3, #1 + 527:Src/stm32f7xx_it.c **** CPU_state = DS1809_CMD; + 1068 .loc 1 527 46 view .LVU245 + 1069 0252 013B subs r3, r3, #1 + 527:Src/stm32f7xx_it.c **** CPU_state = DS1809_CMD; + 1070 .loc 1 527 51 view .LVU246 + 1071 0254 0D49 ldr r1, .L100+36 + 1072 0256 21F81320 strh r2, [r1, r3, lsl #1] @ movhi + 1073 025a F0E7 b .L79 + 1074 .L80: + ARM GAS /tmp/cczi2eQD.s page 162 - 1050 0234 0139 subs r1, r1, #1 - 533:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1051 .loc 1 533 47 view .LVU241 - 1052 0236 1748 ldr r0, .L89+36 - 1053 0238 20F81120 strh r2, [r0, r1, lsl #1] @ movhi - 1054 023c D7E7 b .L77 - 1055 .L50: - 539:Src/stm32f7xx_it.c **** { - 1056 .loc 1 539 9 is_stmt 1 view .LVU242 - 539:Src/stm32f7xx_it.c **** { - 1057 .loc 1 539 25 is_stmt 0 view .LVU243 - 1058 023e 1249 ldr r1, .L89+24 - 1059 0240 0888 ldrh r0, [r1] - 539:Src/stm32f7xx_it.c **** { - 1060 .loc 1 539 12 view .LVU244 - 1061 0242 47F27771 movw r1, #30583 - 1062 0246 8842 cmp r0, r1 - 1063 0248 28D0 beq .L88 - 551:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1064 .loc 1 551 13 is_stmt 1 view .LVU245 - 551:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1065 .loc 1 551 16 is_stmt 0 view .LVU246 - 1066 024a 13F0010F tst r3, #1 - 1067 024e 40D0 beq .L81 - 552:Src/stm32f7xx_it.c **** else - 1068 .loc 1 552 17 is_stmt 1 view .LVU247 - 552:Src/stm32f7xx_it.c **** else - 1069 .loc 1 552 24 is_stmt 0 view .LVU248 - 1070 0250 5908 lsrs r1, r3, #1 - 1071 0252 0139 subs r1, r1, #1 - 1072 0254 0F4C ldr r4, .L89+36 - 1073 0256 34F81100 ldrh r0, [r4, r1, lsl #1] - 552:Src/stm32f7xx_it.c **** else - 1074 .loc 1 552 47 view .LVU249 - 1075 025a 00EB0222 add r2, r0, r2, lsl #8 - 1076 025e 24F81120 strh r2, [r4, r1, lsl #1] @ movhi - 1077 .L82: - 555:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 1078 .loc 1 555 13 is_stmt 1 view .LVU250 - 555:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 1079 .loc 1 555 26 is_stmt 0 view .LVU251 - 1080 0262 0133 adds r3, r3, #1 - 1081 0264 044A ldr r2, .L89+8 - 1082 0266 1380 strh r3, [r2] @ movhi - 556:Src/stm32f7xx_it.c **** } - 1083 .loc 1 556 13 is_stmt 1 view .LVU252 - 556:Src/stm32f7xx_it.c **** } - 1084 .loc 1 556 39 is_stmt 0 view .LVU253 - 1085 0268 0B4B ldr r3, .L89+40 - 1086 026a 0022 movs r2, #0 - 1087 026c 1A70 strb r2, [r3] - 1088 026e 00E7 b .L48 - 1089 .L90: - 1090 .align 2 - 1091 .L89: - 1092 0270 00100140 .word 1073811456 - 1093 0274 00000000 .word uart_buf - ARM GAS /tmp/ccdl7gEi.s page 162 + 537:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1075 .loc 1 537 17 is_stmt 1 view .LVU247 + 537:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1076 .loc 1 537 39 is_stmt 0 view .LVU248 + 1077 025c 5908 lsrs r1, r3, #1 + 537:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1078 .loc 1 537 43 view .LVU249 + 1079 025e 0139 subs r1, r1, #1 + 537:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1080 .loc 1 537 47 view .LVU250 + 1081 0260 0A48 ldr r0, .L100+36 + 1082 0262 20F81120 strh r2, [r0, r1, lsl #1] @ movhi + 1083 0266 A1E7 b .L81 + 1084 .L101: + 1085 .align 2 + 1086 .L100: + 1087 0268 00100140 .word 1073811456 + 1088 026c 00000000 .word uart_buf + 1089 0270 00000000 .word UART_rec_incr + 1090 0274 00000000 .word TO6 + 1091 0278 00000000 .word TO6_uart + 1092 027c 00000000 .word flg_tmt + 1093 0280 00000000 .word UART_header + 1094 0284 00000000 .word CPU_state + 1095 0288 00000000 .word State_Data + 1096 028c 00000000 .word COMMAND + 1097 0290 00000000 .word UART_transmission_request + 1098 .L52: + 544:Src/stm32f7xx_it.c **** { + 1099 .loc 1 544 9 is_stmt 1 view .LVU251 + 544:Src/stm32f7xx_it.c **** { + 1100 .loc 1 544 25 is_stmt 0 view .LVU252 + 1101 0294 4649 ldr r1, .L102 + 1102 0296 0888 ldrh r0, [r1] + 544:Src/stm32f7xx_it.c **** { + 1103 .loc 1 544 12 view .LVU253 + 1104 0298 41F21111 movw r1, #4369 + 1105 029c 8842 cmp r0, r1 + 1106 029e 12D0 beq .L98 + 556:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1107 .loc 1 556 13 is_stmt 1 view .LVU254 + 556:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1108 .loc 1 556 16 is_stmt 0 view .LVU255 + 1109 02a0 13F0010F tst r3, #1 + 1110 02a4 2AD0 beq .L85 + 557:Src/stm32f7xx_it.c **** else + 1111 .loc 1 557 17 is_stmt 1 view .LVU256 + 557:Src/stm32f7xx_it.c **** else + 1112 .loc 1 557 24 is_stmt 0 view .LVU257 + 1113 02a6 5908 lsrs r1, r3, #1 + 1114 02a8 0139 subs r1, r1, #1 + 1115 02aa 424C ldr r4, .L102+4 + 1116 02ac 34F81100 ldrh r0, [r4, r1, lsl #1] + 557:Src/stm32f7xx_it.c **** else + 1117 .loc 1 557 47 view .LVU258 + 1118 02b0 00EB0222 add r2, r0, r2, lsl #8 + 1119 02b4 24F81120 strh r2, [r4, r1, lsl #1] @ movhi + ARM GAS /tmp/cczi2eQD.s page 163 - 1094 0278 00000000 .word UART_rec_incr - 1095 027c 00000000 .word TO6 - 1096 0280 00000000 .word TO6_uart - 1097 0284 00000000 .word flg_tmt - 1098 0288 00000000 .word UART_header - 1099 028c 00000000 .word CPU_state - 1100 0290 00000000 .word State_Data - 1101 0294 00000000 .word COMMAND - 1102 0298 00000000 .word UART_transmission_request - 1103 .L88: - 541:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1104 .loc 1 541 13 is_stmt 1 view .LVU254 - 541:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1105 .loc 1 541 16 is_stmt 0 view .LVU255 - 1106 029c 13F0010F tst r3, #1 - 1107 02a0 11D0 beq .L79 - 542:Src/stm32f7xx_it.c **** else - 1108 .loc 1 542 16 is_stmt 1 view .LVU256 - 542:Src/stm32f7xx_it.c **** else - 1109 .loc 1 542 23 is_stmt 0 view .LVU257 - 1110 02a2 5B08 lsrs r3, r3, #1 - 1111 02a4 013B subs r3, r3, #1 - 1112 02a6 1A48 ldr r0, .L91 - 1113 02a8 30F81310 ldrh r1, [r0, r3, lsl #1] - 542:Src/stm32f7xx_it.c **** else - 1114 .loc 1 542 46 view .LVU258 - 1115 02ac 01EB0222 add r2, r1, r2, lsl #8 - 1116 02b0 20F81320 strh r2, [r0, r3, lsl #1] @ movhi - 1117 .L80: - 545:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 1118 .loc 1 545 13 is_stmt 1 view .LVU259 - 545:Src/stm32f7xx_it.c **** UART_rec_incr = 0; - 1119 .loc 1 545 23 is_stmt 0 view .LVU260 - 1120 02b4 174B ldr r3, .L91+4 - 1121 02b6 0822 movs r2, #8 - 1122 02b8 1A70 strb r2, [r3] - 546:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 1123 .loc 1 546 13 is_stmt 1 view .LVU261 - 546:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag - 1124 .loc 1 546 27 is_stmt 0 view .LVU262 - 1125 02ba 0023 movs r3, #0 - 1126 02bc 164A ldr r2, .L91+8 - 1127 02be 1380 strh r3, [r2] @ movhi - 547:Src/stm32f7xx_it.c **** } - 1128 .loc 1 547 13 is_stmt 1 view .LVU263 - 547:Src/stm32f7xx_it.c **** } - 1129 .loc 1 547 21 is_stmt 0 view .LVU264 - 1130 02c0 164A ldr r2, .L91+12 - 1131 02c2 1370 strb r3, [r2] - 1132 02c4 D5E6 b .L48 - 1133 .L79: - 544:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; - 1134 .loc 1 544 17 is_stmt 1 view .LVU265 - 544:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; - 1135 .loc 1 544 39 is_stmt 0 view .LVU266 - 1136 02c6 5B08 lsrs r3, r3, #1 - 544:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; - ARM GAS /tmp/ccdl7gEi.s page 163 + 1120 .L86: + 560:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1121 .loc 1 560 12 is_stmt 1 view .LVU259 + 560:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1122 .loc 1 560 25 is_stmt 0 view .LVU260 + 1123 02b8 0133 adds r3, r3, #1 + 1124 02ba 3F4A ldr r2, .L102+8 + 1125 02bc 1380 strh r3, [r2] @ movhi + 561:Src/stm32f7xx_it.c **** } + 1126 .loc 1 561 12 is_stmt 1 view .LVU261 + 561:Src/stm32f7xx_it.c **** } + 1127 .loc 1 561 38 is_stmt 0 view .LVU262 + 1128 02be 3F4B ldr r3, .L102+12 + 1129 02c0 0022 movs r2, #0 + 1130 02c2 1A70 strb r2, [r3] + 1131 02c4 D5E6 b .L48 + 1132 .L98: + 546:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 1133 .loc 1 546 13 is_stmt 1 view .LVU263 + 546:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr >> 1) - 1] += ((uint16_t)(uart_buf)) << 8; + 1134 .loc 1 546 16 is_stmt 0 view .LVU264 + 1135 02c6 13F0010F tst r3, #1 + 1136 02ca 11D0 beq .L83 + 547:Src/stm32f7xx_it.c **** else + 1137 .loc 1 547 17 is_stmt 1 view .LVU265 + 547:Src/stm32f7xx_it.c **** else + 1138 .loc 1 547 24 is_stmt 0 view .LVU266 + 1139 02cc 5B08 lsrs r3, r3, #1 + 1140 02ce 013B subs r3, r3, #1 + 1141 02d0 3848 ldr r0, .L102+4 + 1142 02d2 30F81310 ldrh r1, [r0, r3, lsl #1] + 547:Src/stm32f7xx_it.c **** else + 1143 .loc 1 547 51 view .LVU267 + 1144 02d6 01EB0222 add r2, r1, r2, lsl #8 + 1145 02da 20F81320 strh r2, [r0, r3, lsl #1] @ movhi + 1146 .L84: + 550:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1147 .loc 1 550 13 is_stmt 1 view .LVU268 + 550:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1148 .loc 1 550 23 is_stmt 0 view .LVU269 + 1149 02de 384B ldr r3, .L102+16 + 1150 02e0 0122 movs r2, #1 + 1151 02e2 1A70 strb r2, [r3] + 551:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1152 .loc 1 551 13 is_stmt 1 view .LVU270 + 551:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1153 .loc 1 551 27 is_stmt 0 view .LVU271 + 1154 02e4 0023 movs r3, #0 + 1155 02e6 344A ldr r2, .L102+8 + 1156 02e8 1380 strh r3, [r2] @ movhi + 552:Src/stm32f7xx_it.c **** } + 1157 .loc 1 552 13 is_stmt 1 view .LVU272 + 552:Src/stm32f7xx_it.c **** } + 1158 .loc 1 552 21 is_stmt 0 view .LVU273 + 1159 02ea 364A ldr r2, .L102+20 + 1160 02ec 1370 strb r3, [r2] + 1161 02ee C0E6 b .L48 + ARM GAS /tmp/cczi2eQD.s page 164 - 1137 .loc 1 544 43 view .LVU267 - 1138 02c8 013B subs r3, r3, #1 - 544:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; - 1139 .loc 1 544 47 view .LVU268 - 1140 02ca 1149 ldr r1, .L91 - 1141 02cc 21F81320 strh r2, [r1, r3, lsl #1] @ movhi - 1142 02d0 F0E7 b .L80 - 1143 .L81: - 554:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1144 .loc 1 554 17 is_stmt 1 view .LVU269 - 554:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1145 .loc 1 554 39 is_stmt 0 view .LVU270 - 1146 02d2 5908 lsrs r1, r3, #1 - 554:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1147 .loc 1 554 43 view .LVU271 - 1148 02d4 0139 subs r1, r1, #1 - 554:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1149 .loc 1 554 47 view .LVU272 - 1150 02d6 0E48 ldr r0, .L91 - 1151 02d8 20F81120 strh r2, [r0, r1, lsl #1] @ movhi - 1152 02dc C1E7 b .L82 - 1153 .L49: - 560:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1154 .loc 1 560 9 is_stmt 1 view .LVU273 - 560:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; - 1155 .loc 1 560 12 is_stmt 0 view .LVU274 - 1156 02de 13F0010F tst r3, #1 - 1157 02e2 0FD0 beq .L83 - 561:Src/stm32f7xx_it.c **** else - 1158 .loc 1 561 13 is_stmt 1 view .LVU275 - 561:Src/stm32f7xx_it.c **** else - 1159 .loc 1 561 20 is_stmt 0 view .LVU276 - 1160 02e4 5908 lsrs r1, r3, #1 - 1161 02e6 0139 subs r1, r1, #1 - 1162 02e8 094C ldr r4, .L91 - 1163 02ea 34F81100 ldrh r0, [r4, r1, lsl #1] - 561:Src/stm32f7xx_it.c **** else - 1164 .loc 1 561 43 view .LVU277 - 1165 02ee 00EB0222 add r2, r0, r2, lsl #8 - 1166 02f2 24F81120 strh r2, [r4, r1, lsl #1] @ movhi - 1167 .L84: - 564:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 1168 .loc 1 564 9 is_stmt 1 view .LVU278 - 564:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; - 1169 .loc 1 564 22 is_stmt 0 view .LVU279 - 1170 02f6 0133 adds r3, r3, #1 - 1171 02f8 074A ldr r2, .L91+8 - 1172 02fa 1380 strh r3, [r2] @ movhi - 565:Src/stm32f7xx_it.c **** break; - 1173 .loc 1 565 9 is_stmt 1 view .LVU280 - 565:Src/stm32f7xx_it.c **** break; - 1174 .loc 1 565 35 is_stmt 0 view .LVU281 - 1175 02fc 084B ldr r3, .L91+16 - 1176 02fe 0022 movs r2, #0 - 1177 0300 1A70 strb r2, [r3] - 566:Src/stm32f7xx_it.c **** } - 1178 .loc 1 566 5 is_stmt 1 view .LVU282 - ARM GAS /tmp/ccdl7gEi.s page 164 + 1162 .L83: + 549:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; + 1163 .loc 1 549 17 is_stmt 1 view .LVU274 + 549:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; + 1164 .loc 1 549 40 is_stmt 0 view .LVU275 + 1165 02f0 5B08 lsrs r3, r3, #1 + 549:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; + 1166 .loc 1 549 46 view .LVU276 + 1167 02f2 013B subs r3, r3, #1 + 549:Src/stm32f7xx_it.c **** CPU_state = DECODE_ENABLE; + 1168 .loc 1 549 51 view .LVU277 + 1169 02f4 2F49 ldr r1, .L102+4 + 1170 02f6 21F81320 strh r2, [r1, r3, lsl #1] @ movhi + 1171 02fa F0E7 b .L84 + 1172 .L85: + 559:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1173 .loc 1 559 17 is_stmt 1 view .LVU278 + 559:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1174 .loc 1 559 39 is_stmt 0 view .LVU279 + 1175 02fc 5908 lsrs r1, r3, #1 + 559:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1176 .loc 1 559 43 view .LVU280 + 1177 02fe 0139 subs r1, r1, #1 + 559:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1178 .loc 1 559 47 view .LVU281 + 1179 0300 2C48 ldr r0, .L102+4 + 1180 0302 20F81120 strh r2, [r0, r1, lsl #1] @ movhi + 1181 0306 D7E7 b .L86 + 1182 .L50: + 565:Src/stm32f7xx_it.c **** { + 1183 .loc 1 565 9 is_stmt 1 view .LVU282 + 565:Src/stm32f7xx_it.c **** { + 1184 .loc 1 565 25 is_stmt 0 view .LVU283 + 1185 0308 2949 ldr r1, .L102 + 1186 030a 0888 ldrh r0, [r1] + 565:Src/stm32f7xx_it.c **** { + 1187 .loc 1 565 12 view .LVU284 + 1188 030c 47F27771 movw r1, #30583 + 1189 0310 8842 cmp r0, r1 + 1190 0312 12D0 beq .L99 + 577:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1191 .loc 1 577 13 is_stmt 1 view .LVU285 + 577:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1192 .loc 1 577 16 is_stmt 0 view .LVU286 + 1193 0314 13F0010F tst r3, #1 + 1194 0318 2AD0 beq .L90 + 578:Src/stm32f7xx_it.c **** else + 1195 .loc 1 578 17 is_stmt 1 view .LVU287 + 578:Src/stm32f7xx_it.c **** else + 1196 .loc 1 578 24 is_stmt 0 view .LVU288 + 1197 031a 5908 lsrs r1, r3, #1 + 1198 031c 0139 subs r1, r1, #1 + 1199 031e 254C ldr r4, .L102+4 + 1200 0320 34F81100 ldrh r0, [r4, r1, lsl #1] + 578:Src/stm32f7xx_it.c **** else + 1201 .loc 1 578 47 view .LVU289 + 1202 0324 00EB0222 add r2, r0, r2, lsl #8 + ARM GAS /tmp/cczi2eQD.s page 165 - 1179 .loc 1 569 1 is_stmt 0 view .LVU283 - 1180 0302 B6E6 b .L48 - 1181 .L83: - 563:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1182 .loc 1 563 13 is_stmt 1 view .LVU284 - 563:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1183 .loc 1 563 35 is_stmt 0 view .LVU285 - 1184 0304 5908 lsrs r1, r3, #1 - 563:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1185 .loc 1 563 39 view .LVU286 - 1186 0306 0139 subs r1, r1, #1 - 563:Src/stm32f7xx_it.c **** UART_rec_incr++; - 1187 .loc 1 563 43 view .LVU287 - 1188 0308 0148 ldr r0, .L91 - 1189 030a 20F81120 strh r2, [r0, r1, lsl #1] @ movhi - 1190 030e F2E7 b .L84 - 1191 .L92: - 1192 .align 2 - 1193 .L91: - 1194 0310 00000000 .word COMMAND - 1195 0314 00000000 .word CPU_state - 1196 0318 00000000 .word UART_rec_incr - 1197 031c 00000000 .word flg_tmt - 1198 0320 00000000 .word UART_transmission_request - 1199 .cfi_endproc - 1200 .LFE1202: - 1202 .section .text.USART1_IRQHandler,"ax",%progbits - 1203 .align 1 - 1204 .global USART1_IRQHandler - 1205 .syntax unified - 1206 .thumb - 1207 .thumb_func - 1209 USART1_IRQHandler: - 1210 .LFB1196: + 1203 0328 24F81120 strh r2, [r4, r1, lsl #1] @ movhi + 1204 .L91: + 581:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1205 .loc 1 581 13 is_stmt 1 view .LVU290 + 581:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1206 .loc 1 581 26 is_stmt 0 view .LVU291 + 1207 032c 0133 adds r3, r3, #1 + 1208 032e 224A ldr r2, .L102+8 + 1209 0330 1380 strh r3, [r2] @ movhi + 582:Src/stm32f7xx_it.c **** } + 1210 .loc 1 582 13 is_stmt 1 view .LVU292 + 582:Src/stm32f7xx_it.c **** } + 1211 .loc 1 582 39 is_stmt 0 view .LVU293 + 1212 0332 224B ldr r3, .L102+12 + 1213 0334 0022 movs r2, #0 + 1214 0336 1A70 strb r2, [r3] + 1215 0338 9BE6 b .L48 + 1216 .L99: + 567:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1217 .loc 1 567 13 is_stmt 1 view .LVU294 + 567:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1218 .loc 1 567 16 is_stmt 0 view .LVU295 + 1219 033a 13F0010F tst r3, #1 + 1220 033e 11D0 beq .L88 + 568:Src/stm32f7xx_it.c **** else + 1221 .loc 1 568 16 is_stmt 1 view .LVU296 + 568:Src/stm32f7xx_it.c **** else + 1222 .loc 1 568 23 is_stmt 0 view .LVU297 + 1223 0340 5B08 lsrs r3, r3, #1 + 1224 0342 013B subs r3, r3, #1 + 1225 0344 1B48 ldr r0, .L102+4 + 1226 0346 30F81310 ldrh r1, [r0, r3, lsl #1] + 568:Src/stm32f7xx_it.c **** else + 1227 .loc 1 568 46 view .LVU298 + 1228 034a 01EB0222 add r2, r1, r2, lsl #8 + 1229 034e 20F81320 strh r2, [r0, r3, lsl #1] @ movhi + 1230 .L89: + 571:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1231 .loc 1 571 13 is_stmt 1 view .LVU299 + 571:Src/stm32f7xx_it.c **** UART_rec_incr = 0; + 1232 .loc 1 571 23 is_stmt 0 view .LVU300 + 1233 0352 1B4B ldr r3, .L102+16 + 1234 0354 0822 movs r2, #8 + 1235 0356 1A70 strb r2, [r3] + 572:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1236 .loc 1 572 13 is_stmt 1 view .LVU301 + 572:Src/stm32f7xx_it.c **** flg_tmt = 0;//Reset the timeout flag + 1237 .loc 1 572 27 is_stmt 0 view .LVU302 + 1238 0358 0023 movs r3, #0 + 1239 035a 174A ldr r2, .L102+8 + 1240 035c 1380 strh r3, [r2] @ movhi + 573:Src/stm32f7xx_it.c **** } + 1241 .loc 1 573 13 is_stmt 1 view .LVU303 + 573:Src/stm32f7xx_it.c **** } + 1242 .loc 1 573 21 is_stmt 0 view .LVU304 + 1243 035e 194A ldr r2, .L102+20 + 1244 0360 1370 strb r3, [r2] + ARM GAS /tmp/cczi2eQD.s page 166 + + + 1245 0362 86E6 b .L48 + 1246 .L88: + 570:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; + 1247 .loc 1 570 17 is_stmt 1 view .LVU305 + 570:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; + 1248 .loc 1 570 39 is_stmt 0 view .LVU306 + 1249 0364 5B08 lsrs r3, r3, #1 + 570:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; + 1250 .loc 1 570 43 view .LVU307 + 1251 0366 013B subs r3, r3, #1 + 570:Src/stm32f7xx_it.c **** CPU_state = DECODE_TASK; + 1252 .loc 1 570 47 view .LVU308 + 1253 0368 1249 ldr r1, .L102+4 + 1254 036a 21F81320 strh r2, [r1, r3, lsl #1] @ movhi + 1255 036e F0E7 b .L89 + 1256 .L90: + 580:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1257 .loc 1 580 17 is_stmt 1 view .LVU309 + 580:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1258 .loc 1 580 39 is_stmt 0 view .LVU310 + 1259 0370 5908 lsrs r1, r3, #1 + 580:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1260 .loc 1 580 43 view .LVU311 + 1261 0372 0139 subs r1, r1, #1 + 580:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1262 .loc 1 580 47 view .LVU312 + 1263 0374 0F48 ldr r0, .L102+4 + 1264 0376 20F81120 strh r2, [r0, r1, lsl #1] @ movhi + 1265 037a D7E7 b .L91 + 1266 .L49: + 586:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1267 .loc 1 586 9 is_stmt 1 view .LVU313 + 586:Src/stm32f7xx_it.c **** COMMAND[(UART_rec_incr>>1)-1] += ((uint16_t)(uart_buf))<<8; + 1268 .loc 1 586 12 is_stmt 0 view .LVU314 + 1269 037c 13F0010F tst r3, #1 + 1270 0380 0FD0 beq .L92 + 587:Src/stm32f7xx_it.c **** else + 1271 .loc 1 587 13 is_stmt 1 view .LVU315 + 587:Src/stm32f7xx_it.c **** else + 1272 .loc 1 587 20 is_stmt 0 view .LVU316 + 1273 0382 5908 lsrs r1, r3, #1 + 1274 0384 0139 subs r1, r1, #1 + 1275 0386 0B4C ldr r4, .L102+4 + 1276 0388 34F81100 ldrh r0, [r4, r1, lsl #1] + 587:Src/stm32f7xx_it.c **** else + 1277 .loc 1 587 43 view .LVU317 + 1278 038c 00EB0222 add r2, r0, r2, lsl #8 + 1279 0390 24F81120 strh r2, [r4, r1, lsl #1] @ movhi + 1280 .L93: + 590:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1281 .loc 1 590 9 is_stmt 1 view .LVU318 + 590:Src/stm32f7xx_it.c **** UART_transmission_request = NO_MESS; + 1282 .loc 1 590 22 is_stmt 0 view .LVU319 + 1283 0394 0133 adds r3, r3, #1 + 1284 0396 084A ldr r2, .L102+8 + 1285 0398 1380 strh r3, [r2] @ movhi + 591:Src/stm32f7xx_it.c **** break; + ARM GAS /tmp/cczi2eQD.s page 167 + + + 1286 .loc 1 591 9 is_stmt 1 view .LVU320 + 591:Src/stm32f7xx_it.c **** break; + 1287 .loc 1 591 35 is_stmt 0 view .LVU321 + 1288 039a 084B ldr r3, .L102+12 + 1289 039c 0022 movs r2, #0 + 1290 039e 1A70 strb r2, [r3] + 592:Src/stm32f7xx_it.c **** } + 1291 .loc 1 592 5 is_stmt 1 view .LVU322 + 1292 .loc 1 595 1 is_stmt 0 view .LVU323 + 1293 03a0 67E6 b .L48 + 1294 .L92: + 589:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1295 .loc 1 589 13 is_stmt 1 view .LVU324 + 589:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1296 .loc 1 589 35 is_stmt 0 view .LVU325 + 1297 03a2 5908 lsrs r1, r3, #1 + 589:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1298 .loc 1 589 39 view .LVU326 + 1299 03a4 0139 subs r1, r1, #1 + 589:Src/stm32f7xx_it.c **** UART_rec_incr++; + 1300 .loc 1 589 43 view .LVU327 + 1301 03a6 0348 ldr r0, .L102+4 + 1302 03a8 20F81120 strh r2, [r0, r1, lsl #1] @ movhi + 1303 03ac F2E7 b .L93 + 1304 .L103: + 1305 03ae 00BF .align 2 + 1306 .L102: + 1307 03b0 00000000 .word UART_header + 1308 03b4 00000000 .word COMMAND + 1309 03b8 00000000 .word UART_rec_incr + 1310 03bc 00000000 .word UART_transmission_request + 1311 03c0 00000000 .word CPU_state + 1312 03c4 00000000 .word flg_tmt + 1313 .cfi_endproc + 1314 .LFE1202: + 1316 .section .text.USART1_IRQHandler,"ax",%progbits + 1317 .align 1 + 1318 .global USART1_IRQHandler + 1319 .syntax unified + 1320 .thumb + 1321 .thumb_func + 1323 USART1_IRQHandler: + 1324 .LFB1196: 277:Src/stm32f7xx_it.c **** /* USER CODE BEGIN USART1_IRQn 0 */ - 1211 .loc 1 277 1 is_stmt 1 view -0 - 1212 .cfi_startproc - 1213 @ args = 0, pretend = 0, frame = 8 - 1214 @ frame_needed = 0, uses_anonymous_args = 0 - 1215 0000 00B5 push {lr} - 1216 .LCFI9: - 1217 .cfi_def_cfa_offset 4 - 1218 .cfi_offset 14, -4 - 1219 0002 83B0 sub sp, sp, #12 - 1220 .LCFI10: - 1221 .cfi_def_cfa_offset 16 + 1325 .loc 1 277 1 is_stmt 1 view -0 + 1326 .cfi_startproc + 1327 @ args = 0, pretend = 0, frame = 8 + 1328 @ frame_needed = 0, uses_anonymous_args = 0 + 1329 0000 00B5 push {lr} + 1330 .LCFI9: + 1331 .cfi_def_cfa_offset 4 + 1332 .cfi_offset 14, -4 + 1333 0002 83B0 sub sp, sp, #12 + 1334 .LCFI10: + 1335 .cfi_def_cfa_offset 16 279:Src/stm32f7xx_it.c **** if(LL_USART_IsActiveFlag_RXNE(USART1) && LL_USART_IsEnabledIT_RXNE(USART1)) - 1222 .loc 1 279 3 view .LVU289 + 1336 .loc 1 279 3 view .LVU329 + ARM GAS /tmp/cczi2eQD.s page 168 + + 280:Src/stm32f7xx_it.c **** { - 1223 .loc 1 280 3 view .LVU290 - 1224 .LVL19: - 1225 .LBB68: - 1226 .LBI68: + 1337 .loc 1 280 3 view .LVU330 + 1338 .LVL19: + 1339 .LBB68: + 1340 .LBI68: 2640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1227 .loc 3 2640 26 view .LVU291 - 1228 .LBB69: + 1341 .loc 3 2640 26 view .LVU331 + 1342 .LBB69: 2642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - ARM GAS /tmp/ccdl7gEi.s page 165 - - - 1229 .loc 3 2642 3 view .LVU292 + 1343 .loc 3 2642 3 view .LVU332 2642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1230 .loc 3 2642 12 is_stmt 0 view .LVU293 - 1231 0004 304B ldr r3, .L109 - 1232 0006 DB69 ldr r3, [r3, #28] + 1344 .loc 3 2642 12 is_stmt 0 view .LVU333 + 1345 0004 304B ldr r3, .L120 + 1346 0006 DB69 ldr r3, [r3, #28] 2642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1233 .loc 3 2642 77 view .LVU294 - 1234 0008 13F0200F tst r3, #32 - 1235 000c 07D0 beq .L94 - 1236 .LVL20: + 1347 .loc 3 2642 77 view .LVU334 + 1348 0008 13F0200F tst r3, #32 + 1349 000c 07D0 beq .L105 + 1350 .LVL20: 2642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1237 .loc 3 2642 77 view .LVU295 - 1238 .LBE69: - 1239 .LBE68: - 1240 .LBB70: - 1241 .LBI70: + 1351 .loc 3 2642 77 view .LVU335 + 1352 .LBE69: + 1353 .LBE68: + 1354 .LBB70: + 1355 .LBI70: 3366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1242 .loc 3 3366 26 is_stmt 1 view .LVU296 - 1243 .LBB71: + 1356 .loc 3 3366 26 is_stmt 1 view .LVU336 + 1357 .LBB71: 3368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1244 .loc 3 3368 3 view .LVU297 + 1358 .loc 3 3368 3 view .LVU337 3368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1245 .loc 3 3368 12 is_stmt 0 view .LVU298 - 1246 000e 2E4B ldr r3, .L109 - 1247 0010 1B68 ldr r3, [r3] + 1359 .loc 3 3368 12 is_stmt 0 view .LVU338 + 1360 000e 2E4B ldr r3, .L120 + 1361 0010 1B68 ldr r3, [r3] 3368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1248 .loc 3 3368 80 view .LVU299 - 1249 0012 13F0200F tst r3, #32 - 1250 0016 02D0 beq .L94 - 1251 .LVL21: + 1362 .loc 3 3368 80 view .LVU339 + 1363 0012 13F0200F tst r3, #32 + 1364 0016 02D0 beq .L105 + 1365 .LVL21: 3368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1252 .loc 3 3368 80 view .LVU300 - 1253 .LBE71: - 1254 .LBE70: + 1366 .loc 3 3368 80 view .LVU340 + 1367 .LBE71: + 1368 .LBE70: 282:Src/stm32f7xx_it.c **** } - 1255 .loc 1 282 5 is_stmt 1 view .LVU301 - 1256 0018 FFF7FEFF bl UART_RxCpltCallback - 1257 .LVL22: - 1258 001c 33E0 b .L93 - 1259 .L94: + 1369 .loc 1 282 5 is_stmt 1 view .LVU341 + 1370 0018 FFF7FEFF bl UART_RxCpltCallback + 1371 .LVL22: + 1372 001c 33E0 b .L104 + 1373 .L105: 286:Src/stm32f7xx_it.c **** { - 1260 .loc 1 286 5 view .LVU302 - 1261 .LVL23: - 1262 .LBB72: - 1263 .LBI72: + 1374 .loc 1 286 5 view .LVU342 + 1375 .LVL23: + 1376 .LBB72: + 1377 .LBI72: 2618:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1264 .loc 3 2618 26 view .LVU303 - 1265 .LBB73: -2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1266 .loc 3 2620 3 view .LVU304 -2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1267 .loc 3 2620 12 is_stmt 0 view .LVU305 - 1268 001e 2A4B ldr r3, .L109 - 1269 0020 DB69 ldr r3, [r3, #28] -2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1270 .loc 3 2620 75 view .LVU306 - 1271 0022 13F0080F tst r3, #8 - ARM GAS /tmp/ccdl7gEi.s page 166 + 1378 .loc 3 2618 26 view .LVU343 + 1379 .LBB73: + ARM GAS /tmp/cczi2eQD.s page 169 - 1272 0026 25D1 bne .L96 - 1273 .LVL24: 2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1274 .loc 3 2620 75 view .LVU307 - 1275 .LBE73: - 1276 .LBE72: + 1380 .loc 3 2620 3 view .LVU344 +2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1381 .loc 3 2620 12 is_stmt 0 view .LVU345 + 1382 001e 2A4B ldr r3, .L120 + 1383 0020 DB69 ldr r3, [r3, #28] +2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1384 .loc 3 2620 75 view .LVU346 + 1385 0022 13F0080F tst r3, #8 + 1386 0026 25D1 bne .L107 + 1387 .LVL24: +2620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1388 .loc 3 2620 75 view .LVU347 + 1389 .LBE73: + 1390 .LBE72: 291:Src/stm32f7xx_it.c **** { - 1277 .loc 1 291 10 is_stmt 1 view .LVU308 - 1278 .LBB74: - 1279 .LBI74: + 1391 .loc 1 291 10 is_stmt 1 view .LVU348 + 1392 .LBB74: + 1393 .LBI74: 2596:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1280 .loc 3 2596 26 view .LVU309 - 1281 .LBB75: + 1394 .loc 3 2596 26 view .LVU349 + 1395 .LBB75: 2598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1282 .loc 3 2598 3 view .LVU310 + 1396 .loc 3 2598 3 view .LVU350 2598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1283 .loc 3 2598 12 is_stmt 0 view .LVU311 - 1284 0028 274B ldr r3, .L109 - 1285 002a DB69 ldr r3, [r3, #28] + 1397 .loc 3 2598 12 is_stmt 0 view .LVU351 + 1398 0028 274B ldr r3, .L120 + 1399 002a DB69 ldr r3, [r3, #28] 2598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1286 .loc 3 2598 73 view .LVU312 - 1287 002c 13F0020F tst r3, #2 - 1288 0030 2CD1 bne .L97 - 1289 .LVL25: + 1400 .loc 3 2598 73 view .LVU352 + 1401 002c 13F0020F tst r3, #2 + 1402 0030 2CD1 bne .L108 + 1403 .LVL25: 2598:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1290 .loc 3 2598 73 view .LVU313 - 1291 .LBE75: - 1292 .LBE74: + 1404 .loc 3 2598 73 view .LVU353 + 1405 .LBE75: + 1406 .LBE74: 296:Src/stm32f7xx_it.c **** { - 1293 .loc 1 296 10 is_stmt 1 view .LVU314 - 1294 .LBB76: - 1295 .LBI76: + 1407 .loc 1 296 10 is_stmt 1 view .LVU354 + 1408 .LBB76: + 1409 .LBI76: 2607:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1296 .loc 3 2607 26 view .LVU315 - 1297 .LBB77: + 1410 .loc 3 2607 26 view .LVU355 + 1411 .LBB77: 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1298 .loc 3 2609 3 view .LVU316 + 1412 .loc 3 2609 3 view .LVU356 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1299 .loc 3 2609 12 is_stmt 0 view .LVU317 - 1300 0032 254B ldr r3, .L109 - 1301 0034 DB69 ldr r3, [r3, #28] + 1413 .loc 3 2609 12 is_stmt 0 view .LVU357 + 1414 0032 254B ldr r3, .L120 + 1415 0034 DB69 ldr r3, [r3, #28] 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1302 .loc 3 2609 73 view .LVU318 - 1303 0036 13F0040F tst r3, #4 - 1304 003a 31D1 bne .L99 - 1305 .LVL26: + 1416 .loc 3 2609 73 view .LVU358 + 1417 0036 13F0040F tst r3, #4 + 1418 003a 31D1 bne .L110 + 1419 .LVL26: 2609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1306 .loc 3 2609 73 view .LVU319 - 1307 .LBE77: - 1308 .LBE76: + 1420 .loc 3 2609 73 view .LVU359 + ARM GAS /tmp/cczi2eQD.s page 170 + + + 1421 .LBE77: + 1422 .LBE76: 301:Src/stm32f7xx_it.c **** { - 1309 .loc 1 301 10 is_stmt 1 view .LVU320 - 1310 .LBB78: - 1311 .LBI78: + 1423 .loc 1 301 10 is_stmt 1 view .LVU360 + 1424 .LBB78: + 1425 .LBI78: 2585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1312 .loc 3 2585 26 view .LVU321 - 1313 .LBB79: - ARM GAS /tmp/ccdl7gEi.s page 167 - - + 1426 .loc 3 2585 26 view .LVU361 + 1427 .LBB79: 2587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1314 .loc 3 2587 3 view .LVU322 + 1428 .loc 3 2587 3 view .LVU362 2587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1315 .loc 3 2587 12 is_stmt 0 view .LVU323 - 1316 003c 224B ldr r3, .L109 - 1317 003e DB69 ldr r3, [r3, #28] + 1429 .loc 3 2587 12 is_stmt 0 view .LVU363 + 1430 003c 224B ldr r3, .L120 + 1431 003e DB69 ldr r3, [r3, #28] 2587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1318 .loc 3 2587 73 view .LVU324 - 1319 0040 13F0010F tst r3, #1 - 1320 0044 36D1 bne .L101 - 1321 .LVL27: + 1432 .loc 3 2587 73 view .LVU364 + 1433 0040 13F0010F tst r3, #1 + 1434 0044 36D1 bne .L112 + 1435 .LVL27: 2587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1322 .loc 3 2587 73 view .LVU325 - 1323 .LBE79: - 1324 .LBE78: + 1436 .loc 3 2587 73 view .LVU365 + 1437 .LBE79: + 1438 .LBE78: 308:Src/stm32f7xx_it.c **** { - 1325 .loc 1 308 7 is_stmt 1 view .LVU326 - 1326 .LBB80: - 1327 .LBI80: + 1439 .loc 1 308 7 is_stmt 1 view .LVU366 + 1440 .LBB80: + 1441 .LBI80: 2651:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1328 .loc 3 2651 26 view .LVU327 - 1329 .LBB81: + 1442 .loc 3 2651 26 view .LVU367 + 1443 .LBB81: 2653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1330 .loc 3 2653 3 view .LVU328 + 1444 .loc 3 2653 3 view .LVU368 2653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1331 .loc 3 2653 12 is_stmt 0 view .LVU329 - 1332 0046 214B ldr r3, .L109+4 - 1333 0048 DB69 ldr r3, [r3, #28] + 1445 .loc 3 2653 12 is_stmt 0 view .LVU369 + 1446 0046 214B ldr r3, .L120+4 + 1447 0048 DB69 ldr r3, [r3, #28] 2653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1334 .loc 3 2653 73 view .LVU330 - 1335 004a 13F0400F tst r3, #64 - 1336 004e 1AD0 beq .L93 - 1337 .LVL28: + 1448 .loc 3 2653 73 view .LVU370 + 1449 004a 13F0400F tst r3, #64 + 1450 004e 1AD0 beq .L104 + 1451 .LVL28: 2653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1338 .loc 3 2653 73 view .LVU331 - 1339 .LBE81: - 1340 .LBE80: - 1341 .LBB82: - 1342 .LBI82: + 1452 .loc 3 2653 73 view .LVU371 + 1453 .LBE81: + 1454 .LBE80: + 1455 .LBB82: + 1456 .LBI82: 3377:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1343 .loc 3 3377 26 is_stmt 1 view .LVU332 - 1344 .LBB83: + 1457 .loc 3 3377 26 is_stmt 1 view .LVU372 + 1458 .LBB83: 3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1345 .loc 3 3379 3 view .LVU333 + 1459 .loc 3 3379 3 view .LVU373 3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1346 .loc 3 3379 12 is_stmt 0 view .LVU334 - 1347 0050 1E4B ldr r3, .L109+4 - 1348 0052 1B68 ldr r3, [r3] -3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1349 .loc 3 3379 77 view .LVU335 - 1350 0054 13F0400F tst r3, #64 - 1351 0058 15D0 beq .L93 - 1352 .LVL29: -3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1353 .loc 3 3379 77 view .LVU336 - 1354 .LBE83: - 1355 .LBE82: - ARM GAS /tmp/ccdl7gEi.s page 168 + 1460 .loc 3 3379 12 is_stmt 0 view .LVU374 + 1461 0050 1E4B ldr r3, .L120+4 + 1462 0052 1B68 ldr r3, [r3] + ARM GAS /tmp/cczi2eQD.s page 171 +3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1463 .loc 3 3379 77 view .LVU375 + 1464 0054 13F0400F tst r3, #64 + 1465 0058 15D0 beq .L104 + 1466 .LVL29: +3379:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1467 .loc 3 3379 77 view .LVU376 + 1468 .LBE83: + 1469 .LBE82: 310:Src/stm32f7xx_it.c **** //test_counter += 1; - 1356 .loc 1 310 9 is_stmt 1 view .LVU337 - 1357 .LBB84: - 1358 .LBI84: + 1470 .loc 1 310 9 is_stmt 1 view .LVU377 + 1471 .LBB84: + 1472 .LBI84: 2916:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1359 .loc 3 2916 22 view .LVU338 - 1360 .LBB85: + 1473 .loc 3 2916 22 view .LVU378 + 1474 .LBB85: 2918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1361 .loc 3 2918 3 view .LVU339 - 1362 005a 1B4B ldr r3, .L109 - 1363 005c 4022 movs r2, #64 - 1364 005e 1A62 str r2, [r3, #32] - 1365 .LVL30: + 1475 .loc 3 2918 3 view .LVU379 + 1476 005a 1B4B ldr r3, .L120 + 1477 005c 4022 movs r2, #64 + 1478 005e 1A62 str r2, [r3, #32] + 1479 .LVL30: 2918:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1366 .loc 3 2918 3 is_stmt 0 view .LVU340 - 1367 .LBE85: - 1368 .LBE84: + 1480 .loc 3 2918 3 is_stmt 0 view .LVU380 + 1481 .LBE85: + 1482 .LBE84: 313:Src/stm32f7xx_it.c **** //UART_transmission_busy = 0; - 1369 .loc 1 313 9 is_stmt 1 view .LVU341 - 1370 .LBB86: - 1371 .LBI86: + 1483 .loc 1 313 9 is_stmt 1 view .LVU381 + 1484 .LBB86: + 1485 .LBI86: 3213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1372 .loc 3 3213 22 view .LVU342 - 1373 .L104: + 1486 .loc 3 3213 22 view .LVU382 + 1487 .L115: 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1374 .loc 3 3215 3 discriminator 1 view .LVU343 - 1375 .LBB87: + 1488 .loc 3 3215 3 discriminator 1 view .LVU383 + 1489 .LBB87: 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1376 .loc 3 3215 3 discriminator 1 view .LVU344 + 1490 .loc 3 3215 3 discriminator 1 view .LVU384 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1377 .loc 3 3215 3 discriminator 1 view .LVU345 + 1491 .loc 3 3215 3 discriminator 1 view .LVU385 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1378 .loc 3 3215 3 discriminator 1 view .LVU346 - 1379 .LBB88: - 1380 .LBI88: - 1381 .file 4 "Drivers/CMSIS/Include/cmsis_gcc.h" + 1492 .loc 3 3215 3 discriminator 1 view .LVU386 + 1493 .LBB88: + 1494 .LBI88: + 1495 .file 4 "Drivers/CMSIS/Include/cmsis_gcc.h" 1:Drivers/CMSIS/Include/cmsis_gcc.h **** /**************************************************************************//** 2:Drivers/CMSIS/Include/cmsis_gcc.h **** * @file cmsis_gcc.h 3:Drivers/CMSIS/Include/cmsis_gcc.h **** * @brief CMSIS compiler GCC header file @@ -10069,6 +10258,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 10:Drivers/CMSIS/Include/cmsis_gcc.h **** * SPDX-License-Identifier: Apache-2.0 11:Drivers/CMSIS/Include/cmsis_gcc.h **** * 12:Drivers/CMSIS/Include/cmsis_gcc.h **** * Licensed under the Apache License, Version 2.0 (the License); you may + ARM GAS /tmp/cczi2eQD.s page 172 + + 13:Drivers/CMSIS/Include/cmsis_gcc.h **** * not use this file except in compliance with the License. 14:Drivers/CMSIS/Include/cmsis_gcc.h **** * You may obtain a copy of the License at 15:Drivers/CMSIS/Include/cmsis_gcc.h **** * @@ -10078,9 +10270,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 19:Drivers/CMSIS/Include/cmsis_gcc.h **** * distributed under the License is distributed on an AS IS BASIS, WITHOUT 20:Drivers/CMSIS/Include/cmsis_gcc.h **** * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 21:Drivers/CMSIS/Include/cmsis_gcc.h **** * See the License for the specific language governing permissions and - ARM GAS /tmp/ccdl7gEi.s page 169 - - 22:Drivers/CMSIS/Include/cmsis_gcc.h **** * limitations under the License. 23:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 24:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -10129,6 +10318,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 67:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __PACKED_UNION 68:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __PACKED_UNION union __attribute__((packed, aligned(1))) 69:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif + ARM GAS /tmp/cczi2eQD.s page 173 + + 70:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT32 /* deprecated */ 71:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 72:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" @@ -10138,9 +10330,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 76:Drivers/CMSIS/Include/cmsis_gcc.h **** #define __UNALIGNED_UINT32(x) (((struct T_UINT32 *)(x))->v) 77:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 78:Drivers/CMSIS/Include/cmsis_gcc.h **** #ifndef __UNALIGNED_UINT16_WRITE - ARM GAS /tmp/ccdl7gEi.s page 170 - - 79:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic push 80:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wpacked" 81:Drivers/CMSIS/Include/cmsis_gcc.h **** #pragma GCC diagnostic ignored "-Wattributes" @@ -10189,6 +10378,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 124:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 125:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Enable IRQ Interrupts 126:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Enables IRQ interrupts by clearing the I-bit in the CPSR. + ARM GAS /tmp/cczi2eQD.s page 174 + + 127:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes. 128:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 129:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __enable_irq(void) @@ -10198,9 +10390,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 133:Drivers/CMSIS/Include/cmsis_gcc.h **** 134:Drivers/CMSIS/Include/cmsis_gcc.h **** 135:Drivers/CMSIS/Include/cmsis_gcc.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 171 - - 136:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Disable IRQ Interrupts 137:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Disables IRQ interrupts by setting the I-bit in the CPSR. 138:Drivers/CMSIS/Include/cmsis_gcc.h **** Can only be executed in Privileged modes. @@ -10249,6 +10438,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 181:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_CONTROL(uint32_t control) 182:Drivers/CMSIS/Include/cmsis_gcc.h **** { 183:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR control, %0" : : "r" (control) : "memory"); + ARM GAS /tmp/cczi2eQD.s page 175 + + 184:Drivers/CMSIS/Include/cmsis_gcc.h **** } 185:Drivers/CMSIS/Include/cmsis_gcc.h **** 186:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -10258,9 +10450,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 190:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Writes the given value to the non-secure Control Register when in secure state. 191:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] control Control Register value to set 192:Drivers/CMSIS/Include/cmsis_gcc.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 172 - - 193:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __TZ_set_CONTROL_NS(uint32_t control) 194:Drivers/CMSIS/Include/cmsis_gcc.h **** { 195:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR control_ns, %0" : : "r" (control) : "memory"); @@ -10309,6 +10498,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 238:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 239:Drivers/CMSIS/Include/cmsis_gcc.h **** } 240:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/cczi2eQD.s page 176 + + 241:Drivers/CMSIS/Include/cmsis_gcc.h **** 242:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 243:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer @@ -10318,9 +10510,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 247:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_PSP(void) 248:Drivers/CMSIS/Include/cmsis_gcc.h **** { 249:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; - ARM GAS /tmp/ccdl7gEi.s page 173 - - 250:Drivers/CMSIS/Include/cmsis_gcc.h **** 251:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, psp" : "=r" (result) ); 252:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); @@ -10369,6 +10558,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 295:Drivers/CMSIS/Include/cmsis_gcc.h **** 296:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 297:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer + ARM GAS /tmp/cczi2eQD.s page 177 + + 298:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Main Stack Pointer (MSP). 299:Drivers/CMSIS/Include/cmsis_gcc.h **** \return MSP Register value 300:Drivers/CMSIS/Include/cmsis_gcc.h **** */ @@ -10378,9 +10570,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 304:Drivers/CMSIS/Include/cmsis_gcc.h **** 305:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, msp" : "=r" (result) ); 306:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - ARM GAS /tmp/ccdl7gEi.s page 174 - - 307:Drivers/CMSIS/Include/cmsis_gcc.h **** } 308:Drivers/CMSIS/Include/cmsis_gcc.h **** 309:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -10429,6 +10618,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 352:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Stack Pointer (non-secure) 353:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Stack Pointer (SP) when in secure state. 354:Drivers/CMSIS/Include/cmsis_gcc.h **** \return SP Register value + ARM GAS /tmp/cczi2eQD.s page 178 + + 355:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 356:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_SP_NS(void) 357:Drivers/CMSIS/Include/cmsis_gcc.h **** { @@ -10438,9 +10630,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 361:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 362:Drivers/CMSIS/Include/cmsis_gcc.h **** } 363:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccdl7gEi.s page 175 - - 364:Drivers/CMSIS/Include/cmsis_gcc.h **** 365:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 366:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Stack Pointer (non-secure) @@ -10489,6 +10678,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 409:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the Priority Mask Register. 410:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] priMask Priority Mask 411:Drivers/CMSIS/Include/cmsis_gcc.h **** */ + ARM GAS /tmp/cczi2eQD.s page 179 + + 412:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PRIMASK(uint32_t priMask) 413:Drivers/CMSIS/Include/cmsis_gcc.h **** { 414:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR primask, %0" : : "r" (priMask) : "memory"); @@ -10498,9 +10690,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 418:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 419:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 420:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Priority Mask (non-secure) - ARM GAS /tmp/ccdl7gEi.s page 176 - - 421:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Assigns the given value to the non-secure Priority Mask Register when in secure state. 422:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] priMask Priority Mask 423:Drivers/CMSIS/Include/cmsis_gcc.h **** */ @@ -10549,6 +10738,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 466:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 467:Drivers/CMSIS/Include/cmsis_gcc.h **** } 468:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/cczi2eQD.s page 180 + + 469:Drivers/CMSIS/Include/cmsis_gcc.h **** 470:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 471:Drivers/CMSIS/Include/cmsis_gcc.h **** /** @@ -10558,9 +10750,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 475:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 476:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __TZ_get_BASEPRI_NS(void) 477:Drivers/CMSIS/Include/cmsis_gcc.h **** { - ARM GAS /tmp/ccdl7gEi.s page 177 - - 478:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 479:Drivers/CMSIS/Include/cmsis_gcc.h **** 480:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MRS %0, basepri_ns" : "=r" (result) ); @@ -10609,6 +10798,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 523:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Fault Mask 524:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Fault Mask register. 525:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Fault Mask register value + ARM GAS /tmp/cczi2eQD.s page 181 + + 526:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 527:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_FAULTMASK(void) 528:Drivers/CMSIS/Include/cmsis_gcc.h **** { @@ -10618,9 +10810,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 532:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); 533:Drivers/CMSIS/Include/cmsis_gcc.h **** } 534:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccdl7gEi.s page 178 - - 535:Drivers/CMSIS/Include/cmsis_gcc.h **** 536:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 537:Drivers/CMSIS/Include/cmsis_gcc.h **** /** @@ -10669,6 +10858,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 580:Drivers/CMSIS/Include/cmsis_gcc.h **** #if ((defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) || \ 581:Drivers/CMSIS/Include/cmsis_gcc.h **** (defined (__ARM_ARCH_8M_BASE__ ) && (__ARM_ARCH_8M_BASE__ == 1)) ) 582:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/cczi2eQD.s page 182 + + 583:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 584:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Process Stack Pointer Limit 585:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure @@ -10678,9 +10870,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 589:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Process Stack Pointer Limit (PSPLIM). 590:Drivers/CMSIS/Include/cmsis_gcc.h **** \return PSPLIM Register value 591:Drivers/CMSIS/Include/cmsis_gcc.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 179 - - 592:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __get_PSPLIM(void) 593:Drivers/CMSIS/Include/cmsis_gcc.h **** { 594:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ @@ -10729,6 +10918,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 637:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __set_PSPLIM(uint32_t ProcStackPtrLimit) 638:Drivers/CMSIS/Include/cmsis_gcc.h **** { 639:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1)) && \ + ARM GAS /tmp/cczi2eQD.s page 183 + + 640:Drivers/CMSIS/Include/cmsis_gcc.h **** (!defined (__ARM_FEATURE_CMSE) || (__ARM_FEATURE_CMSE < 3))) 641:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure PSPLIM is RAZ/WI 642:Drivers/CMSIS/Include/cmsis_gcc.h **** (void)ProcStackPtrLimit; @@ -10738,9 +10930,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 646:Drivers/CMSIS/Include/cmsis_gcc.h **** } 647:Drivers/CMSIS/Include/cmsis_gcc.h **** 648:Drivers/CMSIS/Include/cmsis_gcc.h **** - ARM GAS /tmp/ccdl7gEi.s page 180 - - 649:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (defined (__ARM_FEATURE_CMSE ) && (__ARM_FEATURE_CMSE == 3)) 650:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 651:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Set Process Stack Pointer (non-secure) @@ -10789,6 +10978,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 694:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 695:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get Main Stack Pointer Limit (non-secure) 696:Drivers/CMSIS/Include/cmsis_gcc.h **** Devices without ARMv8-M Main Extensions (i.e. Cortex-M23) lack the non-secure + ARM GAS /tmp/cczi2eQD.s page 184 + + 697:Drivers/CMSIS/Include/cmsis_gcc.h **** Stack Pointer Limit register hence zero is returned always. 698:Drivers/CMSIS/Include/cmsis_gcc.h **** 699:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the non-secure Main Stack Pointer Limit(MSPLIM) when in sec @@ -10798,9 +10990,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 703:Drivers/CMSIS/Include/cmsis_gcc.h **** { 704:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (!(defined (__ARM_ARCH_8M_MAIN__ ) && (__ARM_ARCH_8M_MAIN__ == 1))) 705:Drivers/CMSIS/Include/cmsis_gcc.h **** // without main extensions, the non-secure MSPLIM is RAZ/WI - ARM GAS /tmp/ccdl7gEi.s page 181 - - 706:Drivers/CMSIS/Include/cmsis_gcc.h **** return 0U; 707:Drivers/CMSIS/Include/cmsis_gcc.h **** #else 708:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; @@ -10849,6 +11038,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 751:Drivers/CMSIS/Include/cmsis_gcc.h **** #else 752:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("MSR msplim_ns, %0" : : "r" (MainStackPtrLimit)); 753:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif + ARM GAS /tmp/cczi2eQD.s page 185 + + 754:Drivers/CMSIS/Include/cmsis_gcc.h **** } 755:Drivers/CMSIS/Include/cmsis_gcc.h **** #endif 756:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -10858,9 +11050,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 760:Drivers/CMSIS/Include/cmsis_gcc.h **** 761:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 762:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief Get FPSCR - ARM GAS /tmp/ccdl7gEi.s page 182 - - 763:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Returns the current value of the Floating Point Status/Control register. 764:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Floating Point Status/Control register value 765:Drivers/CMSIS/Include/cmsis_gcc.h **** */ @@ -10909,6 +11098,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 808:Drivers/CMSIS/Include/cmsis_gcc.h **** 809:Drivers/CMSIS/Include/cmsis_gcc.h **** 810:Drivers/CMSIS/Include/cmsis_gcc.h **** /*@} end of CMSIS_Core_RegAccFunctions */ + ARM GAS /tmp/cczi2eQD.s page 186 + + 811:Drivers/CMSIS/Include/cmsis_gcc.h **** 812:Drivers/CMSIS/Include/cmsis_gcc.h **** 813:Drivers/CMSIS/Include/cmsis_gcc.h **** /* ########################## Core Instruction Access ######################### */ @@ -10918,9 +11110,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 817:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 818:Drivers/CMSIS/Include/cmsis_gcc.h **** 819:Drivers/CMSIS/Include/cmsis_gcc.h **** /* Define macros for porting to both thumb1 and thumb2. - ARM GAS /tmp/ccdl7gEi.s page 183 - - 820:Drivers/CMSIS/Include/cmsis_gcc.h **** * For thumb1, use low register (r0-r7), specified by constraint "l" 821:Drivers/CMSIS/Include/cmsis_gcc.h **** * Otherwise, use general registers, specified by constraint "r" */ 822:Drivers/CMSIS/Include/cmsis_gcc.h **** #if defined (__thumb__) && !defined (__thumb2__) @@ -10969,6 +11158,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 865:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 866:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __ISB(void) 867:Drivers/CMSIS/Include/cmsis_gcc.h **** { + ARM GAS /tmp/cczi2eQD.s page 187 + + 868:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("isb 0xF":::"memory"); 869:Drivers/CMSIS/Include/cmsis_gcc.h **** } 870:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -10978,9 +11170,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 874:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Acts as a special kind of Data Memory Barrier. 875:Drivers/CMSIS/Include/cmsis_gcc.h **** It completes when all explicit memory accesses before this instruction complete. 876:Drivers/CMSIS/Include/cmsis_gcc.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 184 - - 877:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE void __DSB(void) 878:Drivers/CMSIS/Include/cmsis_gcc.h **** { 879:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("dsb 0xF":::"memory"); @@ -11029,6 +11218,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 922:Drivers/CMSIS/Include/cmsis_gcc.h **** 923:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("rev16 %0, %1" : __CMSIS_GCC_OUT_REG (result) : __CMSIS_GCC_USE_REG (value) ); 924:Drivers/CMSIS/Include/cmsis_gcc.h **** return result; + ARM GAS /tmp/cczi2eQD.s page 188 + + 925:Drivers/CMSIS/Include/cmsis_gcc.h **** } 926:Drivers/CMSIS/Include/cmsis_gcc.h **** 927:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -11038,9 +11230,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 931:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] value Value to reverse 932:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Reversed value 933:Drivers/CMSIS/Include/cmsis_gcc.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 185 - - 934:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE int16_t __REVSH(int16_t value) 935:Drivers/CMSIS/Include/cmsis_gcc.h **** { 936:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) @@ -11089,6 +11278,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 979:Drivers/CMSIS/Include/cmsis_gcc.h **** \return Reversed value 980:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 981:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __RBIT(uint32_t value) + ARM GAS /tmp/cczi2eQD.s page 189 + + 982:Drivers/CMSIS/Include/cmsis_gcc.h **** { 983:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 984:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -11098,9 +11290,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 988:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("rbit %0, %1" : "=r" (result) : "r" (value) ); 989:Drivers/CMSIS/Include/cmsis_gcc.h **** #else 990:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t s = (4U /*sizeof(v)*/ * 8U) - 1U; /* extra shift needed at end */ - ARM GAS /tmp/ccdl7gEi.s page 186 - - 991:Drivers/CMSIS/Include/cmsis_gcc.h **** 992:Drivers/CMSIS/Include/cmsis_gcc.h **** result = value; /* r will be reversed bits of v; first get LSB of v */ 993:Drivers/CMSIS/Include/cmsis_gcc.h **** for (value >>= 1U; value != 0U; value >>= 1U) @@ -11149,6 +11338,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1036:Drivers/CMSIS/Include/cmsis_gcc.h **** return ((uint8_t) result); /* Add explicit type cast here */ 1037:Drivers/CMSIS/Include/cmsis_gcc.h **** } 1038:Drivers/CMSIS/Include/cmsis_gcc.h **** + ARM GAS /tmp/cczi2eQD.s page 190 + + 1039:Drivers/CMSIS/Include/cmsis_gcc.h **** 1040:Drivers/CMSIS/Include/cmsis_gcc.h **** /** 1041:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief LDR Exclusive (16 bit) @@ -11158,9 +11350,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1045:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1046:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint16_t __LDREXH(volatile uint16_t *addr) 1047:Drivers/CMSIS/Include/cmsis_gcc.h **** { - ARM GAS /tmp/ccdl7gEi.s page 187 - - 1048:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; 1049:Drivers/CMSIS/Include/cmsis_gcc.h **** 1050:Drivers/CMSIS/Include/cmsis_gcc.h **** #if (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 8) @@ -11182,35 +11371,38 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1066:Drivers/CMSIS/Include/cmsis_gcc.h **** \return value of type uint32_t at (*ptr) 1067:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1068:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __LDREXW(volatile uint32_t *addr) - 1382 .loc 4 1068 31 view .LVU347 - 1383 .LBB89: + 1496 .loc 4 1068 31 view .LVU387 + 1497 .LBB89: 1069:Drivers/CMSIS/Include/cmsis_gcc.h **** { 1070:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; - 1384 .loc 4 1070 5 view .LVU348 + 1498 .loc 4 1070 5 view .LVU388 1071:Drivers/CMSIS/Include/cmsis_gcc.h **** 1072:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("ldrex %0, %1" : "=r" (result) : "Q" (*addr) ); - 1385 .loc 4 1072 4 view .LVU349 - 1386 0060 194A ldr r2, .L109 - 1387 .syntax unified - 1388 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 1389 0062 52E8003F ldrex r3, [r2] - 1390 @ 0 "" 2 - 1391 .LVL31: + 1499 .loc 4 1072 4 view .LVU389 + 1500 0060 194A ldr r2, .L120 + 1501 .syntax unified + 1502 @ 1072 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 1503 0062 52E8003F ldrex r3, [r2] + 1504 @ 0 "" 2 + 1505 .LVL31: 1073:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 1392 .loc 4 1073 4 view .LVU350 - 1393 .loc 4 1073 4 is_stmt 0 view .LVU351 - 1394 .thumb - 1395 .syntax unified - 1396 .LBE89: - 1397 .LBE88: + 1506 .loc 4 1073 4 view .LVU390 + 1507 .loc 4 1073 4 is_stmt 0 view .LVU391 + 1508 .thumb + 1509 .syntax unified + 1510 .LBE89: + 1511 .LBE88: 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1398 .loc 3 3215 3 discriminator 1 view .LVU352 - 1399 0066 23F04003 bic r3, r3, #64 - 1400 .LVL32: + 1512 .loc 3 3215 3 discriminator 1 view .LVU392 + 1513 0066 23F04003 bic r3, r3, #64 + 1514 .LVL32: 3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1401 .loc 3 3215 3 is_stmt 1 discriminator 1 view .LVU353 - 1402 .LBB90: - 1403 .LBI90: + 1515 .loc 3 3215 3 is_stmt 1 discriminator 1 view .LVU393 + ARM GAS /tmp/cczi2eQD.s page 191 + + + 1516 .LBB90: + 1517 .LBI90: 1074:Drivers/CMSIS/Include/cmsis_gcc.h **** } 1075:Drivers/CMSIS/Include/cmsis_gcc.h **** 1076:Drivers/CMSIS/Include/cmsis_gcc.h **** @@ -11218,9 +11410,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1078:Drivers/CMSIS/Include/cmsis_gcc.h **** \brief STR Exclusive (8 bit) 1079:Drivers/CMSIS/Include/cmsis_gcc.h **** \details Executes a exclusive STR instruction for 8 bit values. 1080:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] value Value to store - ARM GAS /tmp/ccdl7gEi.s page 188 - - 1081:Drivers/CMSIS/Include/cmsis_gcc.h **** \param [in] ptr Pointer to location 1082:Drivers/CMSIS/Include/cmsis_gcc.h **** \return 0 Function succeeded 1083:Drivers/CMSIS/Include/cmsis_gcc.h **** \return 1 Function failed @@ -11260,180 +11449,180 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1117:Drivers/CMSIS/Include/cmsis_gcc.h **** \return 1 Function failed 1118:Drivers/CMSIS/Include/cmsis_gcc.h **** */ 1119:Drivers/CMSIS/Include/cmsis_gcc.h **** __STATIC_FORCEINLINE uint32_t __STREXW(uint32_t value, volatile uint32_t *addr) - 1404 .loc 4 1119 31 view .LVU354 - 1405 .LBB91: + 1518 .loc 4 1119 31 view .LVU394 + 1519 .LBB91: 1120:Drivers/CMSIS/Include/cmsis_gcc.h **** { 1121:Drivers/CMSIS/Include/cmsis_gcc.h **** uint32_t result; - 1406 .loc 4 1121 4 view .LVU355 + 1520 .loc 4 1121 4 view .LVU395 1122:Drivers/CMSIS/Include/cmsis_gcc.h **** 1123:Drivers/CMSIS/Include/cmsis_gcc.h **** __ASM volatile ("strex %0, %2, %1" : "=&r" (result), "=Q" (*addr) : "r" (value) ); - 1407 .loc 4 1123 4 view .LVU356 - 1408 .syntax unified - 1409 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 - 1410 006a 42E80031 strex r1, r3, [r2] - 1411 @ 0 "" 2 - 1412 .LVL33: + 1521 .loc 4 1123 4 view .LVU396 + 1522 .syntax unified + ARM GAS /tmp/cczi2eQD.s page 192 + + + 1523 @ 1123 "Drivers/CMSIS/Include/cmsis_gcc.h" 1 + 1524 006a 42E80031 strex r1, r3, [r2] + 1525 @ 0 "" 2 + 1526 .LVL33: 1124:Drivers/CMSIS/Include/cmsis_gcc.h **** return(result); - 1413 .loc 4 1124 4 view .LVU357 - 1414 .loc 4 1124 4 is_stmt 0 view .LVU358 - 1415 .thumb - 1416 .syntax unified - ARM GAS /tmp/ccdl7gEi.s page 189 - - - 1417 .LBE91: - 1418 .LBE90: -3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1419 .loc 3 3215 3 discriminator 1 view .LVU359 - 1420 006e 0029 cmp r1, #0 - 1421 0070 F6D1 bne .L104 - 1422 0072 08E0 b .L93 - 1423 .LVL34: - 1424 .L96: -3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } - 1425 .loc 3 3215 3 discriminator 1 view .LVU360 - 1426 .LBE87: - 1427 .LBE86: - 289:Src/stm32f7xx_it.c **** } - 1428 .loc 1 289 7 is_stmt 1 view .LVU361 - 1429 .LBB92: - 1430 .LBI92: -3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1431 .loc 3 3658 25 view .LVU362 - 1432 .LBB93: - 1433 .loc 3 3660 3 view .LVU363 - 1434 .loc 3 3660 20 is_stmt 0 view .LVU364 - 1435 0074 144B ldr r3, .L109 - 1436 0076 5B6A ldr r3, [r3, #36] - 1437 .LVL35: - 1438 .loc 3 3660 20 view .LVU365 - 1439 .LBE93: - 1440 .LBE92: - 289:Src/stm32f7xx_it.c **** } - 1441 .loc 1 289 11 discriminator 1 view .LVU366 - 1442 0078 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 - 1443 007c 52FA83F3 uxtab r3, r2, r3 - 1444 0080 DBB2 uxtb r3, r3 - 1445 0082 8DF80730 strb r3, [sp, #7] - 1446 .L93: - 323:Src/stm32f7xx_it.c **** - 1447 .loc 1 323 1 view .LVU367 - 1448 0086 03B0 add sp, sp, #12 - 1449 .LCFI11: - 1450 .cfi_remember_state - 1451 .cfi_def_cfa_offset 4 - 1452 @ sp needed - 1453 0088 5DF804FB ldr pc, [sp], #4 - 1454 .LVL36: - 1455 .L97: - 1456 .LCFI12: - 1457 .cfi_restore_state - 294:Src/stm32f7xx_it.c **** } - 1458 .loc 1 294 7 is_stmt 1 view .LVU368 - 1459 .LBB94: - 1460 .LBI94: -3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1461 .loc 3 3658 25 view .LVU369 - 1462 .LBB95: - 1463 .loc 3 3660 3 view .LVU370 - 1464 .loc 3 3660 20 is_stmt 0 view .LVU371 - 1465 008c 0E4B ldr r3, .L109 - ARM GAS /tmp/ccdl7gEi.s page 190 - - - 1466 008e 5B6A ldr r3, [r3, #36] - 1467 .LVL37: - 1468 .loc 3 3660 20 view .LVU372 - 1469 .LBE95: - 1470 .LBE94: - 294:Src/stm32f7xx_it.c **** } - 1471 .loc 1 294 11 discriminator 1 view .LVU373 - 1472 0090 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 - 1473 0094 52FA83F3 uxtab r3, r2, r3 - 1474 0098 DBB2 uxtb r3, r3 - 1475 009a 8DF80730 strb r3, [sp, #7] - 1476 009e F2E7 b .L93 - 1477 .LVL38: - 1478 .L99: - 299:Src/stm32f7xx_it.c **** } - 1479 .loc 1 299 7 is_stmt 1 view .LVU374 - 1480 .LBB96: - 1481 .LBI96: -3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1482 .loc 3 3658 25 view .LVU375 - 1483 .LBB97: - 1484 .loc 3 3660 3 view .LVU376 - 1485 .loc 3 3660 20 is_stmt 0 view .LVU377 - 1486 00a0 094B ldr r3, .L109 - 1487 00a2 5B6A ldr r3, [r3, #36] - 1488 .LVL39: - 1489 .loc 3 3660 20 view .LVU378 - 1490 .LBE97: - 1491 .LBE96: - 299:Src/stm32f7xx_it.c **** } - 1492 .loc 1 299 11 discriminator 1 view .LVU379 - 1493 00a4 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 - 1494 00a8 52FA83F3 uxtab r3, r2, r3 - 1495 00ac DBB2 uxtb r3, r3 - 1496 00ae 8DF80730 strb r3, [sp, #7] - 1497 00b2 E8E7 b .L93 - 1498 .LVL40: - 1499 .L101: - 304:Src/stm32f7xx_it.c **** } - 1500 .loc 1 304 7 is_stmt 1 view .LVU380 - 1501 .LBB98: - 1502 .LBI98: -3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { - 1503 .loc 3 3658 25 view .LVU381 - 1504 .LBB99: - 1505 .loc 3 3660 3 view .LVU382 - 1506 .loc 3 3660 20 is_stmt 0 view .LVU383 - 1507 00b4 044B ldr r3, .L109 - 1508 00b6 5B6A ldr r3, [r3, #36] - 1509 .LVL41: - 1510 .loc 3 3660 20 view .LVU384 - 1511 .LBE99: - 1512 .LBE98: - 304:Src/stm32f7xx_it.c **** } - 1513 .loc 1 304 11 discriminator 1 view .LVU385 - 1514 00b8 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 - 1515 00bc 52FA83F3 uxtab r3, r2, r3 - ARM GAS /tmp/ccdl7gEi.s page 191 - - - 1516 00c0 DBB2 uxtb r3, r3 - 1517 00c2 8DF80730 strb r3, [sp, #7] - 1518 00c6 DEE7 b .L93 - 1519 .L110: - 1520 .align 2 - 1521 .L109: - 1522 00c8 00100140 .word 1073811456 - 1523 00cc 00140140 .word 1073812480 - 1524 .cfi_endproc - 1525 .LFE1196: - 1527 .section .text.DMA2_Stream7_TransferComplete,"ax",%progbits - 1528 .align 1 - 1529 .global DMA2_Stream7_TransferComplete + 1527 .loc 4 1124 4 view .LVU397 + 1528 .loc 4 1124 4 is_stmt 0 view .LVU398 + 1529 .thumb 1530 .syntax unified - 1531 .thumb - 1532 .thumb_func - 1534 DMA2_Stream7_TransferComplete: - 1535 .LFB1203: - 570:Src/stm32f7xx_it.c **** - 571:Src/stm32f7xx_it.c **** //----------------------------------------------- - 572:Src/stm32f7xx_it.c **** void DMA2_Stream7_TransferComplete(void) - 573:Src/stm32f7xx_it.c **** { - 1536 .loc 1 573 1 is_stmt 1 view -0 - 1537 .cfi_startproc - 1538 @ args = 0, pretend = 0, frame = 0 - 1539 @ frame_needed = 0, uses_anonymous_args = 0 - 1540 @ link register save eliminated. - 574:Src/stm32f7xx_it.c **** LL_DMA_ClearFlag_TC7(DMA2); - 1541 .loc 1 574 3 view .LVU387 - 1542 .LVL42: - 1543 .LBB100: - 1544 .LBI100: - 1545 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" + 1531 .LBE91: + 1532 .LBE90: +3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1533 .loc 3 3215 3 discriminator 1 view .LVU399 + 1534 006e 0029 cmp r1, #0 + 1535 0070 F6D1 bne .L115 + 1536 0072 08E0 b .L104 + 1537 .LVL34: + 1538 .L107: +3215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** } + 1539 .loc 3 3215 3 discriminator 1 view .LVU400 + 1540 .LBE87: + 1541 .LBE86: + 289:Src/stm32f7xx_it.c **** } + 1542 .loc 1 289 7 is_stmt 1 view .LVU401 + 1543 .LBB92: + 1544 .LBI92: +3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + 1545 .loc 3 3658 25 view .LVU402 + 1546 .LBB93: + 1547 .loc 3 3660 3 view .LVU403 + 1548 .loc 3 3660 20 is_stmt 0 view .LVU404 + 1549 0074 144B ldr r3, .L120 + 1550 0076 5B6A ldr r3, [r3, #36] + 1551 .LVL35: + 1552 .loc 3 3660 20 view .LVU405 + 1553 .LBE93: + 1554 .LBE92: + 289:Src/stm32f7xx_it.c **** } + 1555 .loc 1 289 11 discriminator 1 view .LVU406 + 1556 0078 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 + 1557 007c 52FA83F3 uxtab r3, r2, r3 + 1558 0080 DBB2 uxtb r3, r3 + 1559 0082 8DF80730 strb r3, [sp, #7] + 1560 .L104: + 323:Src/stm32f7xx_it.c **** + 1561 .loc 1 323 1 view .LVU407 + 1562 0086 03B0 add sp, sp, #12 + 1563 .LCFI11: + 1564 .cfi_remember_state + 1565 .cfi_def_cfa_offset 4 + 1566 @ sp needed + 1567 0088 5DF804FB ldr pc, [sp], #4 + 1568 .LVL36: + 1569 .L108: + 1570 .LCFI12: + 1571 .cfi_restore_state + 294:Src/stm32f7xx_it.c **** } + ARM GAS /tmp/cczi2eQD.s page 193 + + + 1572 .loc 1 294 7 is_stmt 1 view .LVU408 + 1573 .LBB94: + 1574 .LBI94: +3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + 1575 .loc 3 3658 25 view .LVU409 + 1576 .LBB95: + 1577 .loc 3 3660 3 view .LVU410 + 1578 .loc 3 3660 20 is_stmt 0 view .LVU411 + 1579 008c 0E4B ldr r3, .L120 + 1580 008e 5B6A ldr r3, [r3, #36] + 1581 .LVL37: + 1582 .loc 3 3660 20 view .LVU412 + 1583 .LBE95: + 1584 .LBE94: + 294:Src/stm32f7xx_it.c **** } + 1585 .loc 1 294 11 discriminator 1 view .LVU413 + 1586 0090 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 + 1587 0094 52FA83F3 uxtab r3, r2, r3 + 1588 0098 DBB2 uxtb r3, r3 + 1589 009a 8DF80730 strb r3, [sp, #7] + 1590 009e F2E7 b .L104 + 1591 .LVL38: + 1592 .L110: + 299:Src/stm32f7xx_it.c **** } + 1593 .loc 1 299 7 is_stmt 1 view .LVU414 + 1594 .LBB96: + 1595 .LBI96: +3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + 1596 .loc 3 3658 25 view .LVU415 + 1597 .LBB97: + 1598 .loc 3 3660 3 view .LVU416 + 1599 .loc 3 3660 20 is_stmt 0 view .LVU417 + 1600 00a0 094B ldr r3, .L120 + 1601 00a2 5B6A ldr r3, [r3, #36] + 1602 .LVL39: + 1603 .loc 3 3660 20 view .LVU418 + 1604 .LBE97: + 1605 .LBE96: + 299:Src/stm32f7xx_it.c **** } + 1606 .loc 1 299 11 discriminator 1 view .LVU419 + 1607 00a4 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 + 1608 00a8 52FA83F3 uxtab r3, r2, r3 + 1609 00ac DBB2 uxtb r3, r3 + 1610 00ae 8DF80730 strb r3, [sp, #7] + 1611 00b2 E8E7 b .L104 + 1612 .LVL40: + 1613 .L112: + 304:Src/stm32f7xx_it.c **** } + 1614 .loc 1 304 7 is_stmt 1 view .LVU420 + 1615 .LBB98: + 1616 .LBI98: +3658:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_usart.h **** { + 1617 .loc 3 3658 25 view .LVU421 + 1618 .LBB99: + 1619 .loc 3 3660 3 view .LVU422 + 1620 .loc 3 3660 20 is_stmt 0 view .LVU423 + 1621 00b4 044B ldr r3, .L120 + ARM GAS /tmp/cczi2eQD.s page 194 + + + 1622 00b6 5B6A ldr r3, [r3, #36] + 1623 .LVL41: + 1624 .loc 3 3660 20 view .LVU424 + 1625 .LBE99: + 1626 .LBE98: + 304:Src/stm32f7xx_it.c **** } + 1627 .loc 1 304 11 discriminator 1 view .LVU425 + 1628 00b8 9DF80720 ldrb r2, [sp, #7] @ zero_extendqisi2 + 1629 00bc 52FA83F3 uxtab r3, r2, r3 + 1630 00c0 DBB2 uxtb r3, r3 + 1631 00c2 8DF80730 strb r3, [sp, #7] + 1632 00c6 DEE7 b .L104 + 1633 .L121: + 1634 .align 2 + 1635 .L120: + 1636 00c8 00100140 .word 1073811456 + 1637 00cc 00140140 .word 1073812480 + 1638 .cfi_endproc + 1639 .LFE1196: + 1641 .section .text.DMA2_Stream7_TransferComplete,"ax",%progbits + 1642 .align 1 + 1643 .global DMA2_Stream7_TransferComplete + 1644 .syntax unified + 1645 .thumb + 1646 .thumb_func + 1648 DMA2_Stream7_TransferComplete: + 1649 .LFB1203: + 596:Src/stm32f7xx_it.c **** + 597:Src/stm32f7xx_it.c **** //----------------------------------------------- + 598:Src/stm32f7xx_it.c **** void DMA2_Stream7_TransferComplete(void) + 599:Src/stm32f7xx_it.c **** { + 1650 .loc 1 599 1 is_stmt 1 view -0 + 1651 .cfi_startproc + 1652 @ args = 0, pretend = 0, frame = 0 + 1653 @ frame_needed = 0, uses_anonymous_args = 0 + 1654 @ link register save eliminated. + 600:Src/stm32f7xx_it.c **** LL_DMA_ClearFlag_TC7(DMA2); + 1655 .loc 1 600 3 view .LVU427 + 1656 .LVL42: + 1657 .LBB100: + 1658 .LBI100: + 1659 .file 5 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h" 1:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** ****************************************************************************** 3:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @file stm32f7xx_ll_dma.h @@ -11449,6 +11638,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 13:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * the root directory of this software component. 14:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * If no LICENSE file comes with this software, it is provided AS-IS. 15:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * + ARM GAS /tmp/cczi2eQD.s page 195 + + 16:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** ****************************************************************************** 17:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 18:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -11458,9 +11650,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 22:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 23:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #ifdef __cplusplus 24:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** extern "C" { - ARM GAS /tmp/ccdl7gEi.s page 192 - - 25:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #endif 26:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 27:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /* Includes ------------------------------------------------------------------*/ @@ -11509,6 +11698,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 70:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 71:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 72:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/cczi2eQD.s page 196 + + 73:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 74:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /* Private macros ------------------------------------------------------------*/ 75:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /* Exported types ------------------------------------------------------------*/ @@ -11518,9 +11710,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 79:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 80:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** typedef struct 81:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccdl7gEi.s page 193 - - 82:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t PeriphOrM2MSrcAddress; /*!< Specifies the peripheral base address for DMA transfer 83:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** or as Source base address in case of memory to memory trans 84:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -11569,6 +11758,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct 128:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 129:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t NbData; /*!< Specifies the number of data to transfer, in data unit. + ARM GAS /tmp/cczi2eQD.s page 197 + + 130:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** The data unit is equal to the source buffer configuration s 131:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** or MemorySize parameters depending in the transfer directio 132:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This parameter must be a value between Min_Data = 0 and Max @@ -11578,9 +11770,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t Channel; /*!< Specifies the peripheral channel. 137:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This parameter can be a value of @ref DMA_LL_EC_CHANNEL 138:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** - ARM GAS /tmp/ccdl7gEi.s page 194 - - 139:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** This feature can be modified afterwards using unitary funct 140:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 141:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** uint32_t Priority; /*!< Specifies the channel priority level. @@ -11629,6 +11818,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_STREAM STREAM 185:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 186:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/cczi2eQD.s page 198 + + 187:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_0 0x00000000U 188:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_1 0x00000001U 189:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_2 0x00000002U @@ -11638,9 +11830,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_6 0x00000006U 194:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_7 0x00000007U 195:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_STREAM_ALL 0xFFFF0000U - ARM GAS /tmp/ccdl7gEi.s page 195 - - 196:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 197:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 198:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -11689,6 +11878,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_MEMORY_NOINCREMENT 0x00000000U /*!< Memory increment mode Disa 242:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_MEMORY_INCREMENT DMA_SxCR_MINC /*!< Memory increment mode Enab 243:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** + ARM GAS /tmp/cczi2eQD.s page 199 + + 244:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 245:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 246:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -11698,9 +11890,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PDATAALIGN_BYTE 0x00000000U /*!< Peripheral data alignment 251:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PDATAALIGN_HALFWORD DMA_SxCR_PSIZE_0 /*!< Peripheral data alignment 252:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_PDATAALIGN_WORD DMA_SxCR_PSIZE_1 /*!< Peripheral data alignment - ARM GAS /tmp/ccdl7gEi.s page 196 - - 253:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 254:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 255:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -11749,6 +11938,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 298:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #if defined(DMA_CHANNEL_SELECTION_8_15) 299:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_CHANNEL_8 DMA_SxCR_CHSEL_3 300:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_CHANNEL_9 (DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_0) + ARM GAS /tmp/cczi2eQD.s page 200 + + 301:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_CHANNEL_10 (DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_1) 302:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_CHANNEL_11 (DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_1 | DMA_SxCR_CHSEL_0) 303:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_CHANNEL_12 (DMA_SxCR_CHSEL_3 | DMA_SxCR_CHSEL_2) @@ -11758,9 +11950,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 307:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #endif /* DMA_CHANNEL_SELECTION_8_15 */ 308:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 309:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} - ARM GAS /tmp/ccdl7gEi.s page 197 - - 310:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 311:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 312:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_MBURST MBURST @@ -11809,6 +11998,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 355:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 356:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_FIFOTHRESHOLD FIFOTHRESHOLD 357:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ + ARM GAS /tmp/cczi2eQD.s page 201 + + 358:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 359:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_FIFOTHRESHOLD_1_4 0x00000000U /*!< FIFO thresho 360:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define LL_DMA_FIFOTHRESHOLD_1_2 DMA_SxFCR_FTH_0 /*!< FIFO thresho @@ -11818,9 +12010,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** - ARM GAS /tmp/ccdl7gEi.s page 198 - - 367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EC_CURRENTTARGETMEM CURRENTTARGETMEM 368:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ 369:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -11869,6 +12058,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 412:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Convert DMAx_Streamy into DMAx 413:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __STREAM_INSTANCE__ DMAx_Streamy 414:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval DMAx + ARM GAS /tmp/cczi2eQD.s page 202 + + 415:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 416:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define __LL_DMA_GET_INSTANCE(__STREAM_INSTANCE__) \ 417:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__STREAM_INSTANCE__) > ((uint32_t)DMA1_Stream7)) ? DMA2 : DMA1) @@ -11878,9 +12070,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 421:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param __STREAM_INSTANCE__ DMAx_Streamy 422:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval LL_DMA_CHANNEL_y 423:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 199 - - 424:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** #define __LL_DMA_GET_STREAM(__STREAM_INSTANCE__) \ 425:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** (((uint32_t)(__STREAM_INSTANCE__) == ((uint32_t)DMA1_Stream0)) ? LL_DMA_STREAM_0 : \ 426:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** ((uint32_t)(__STREAM_INSTANCE__) == ((uint32_t)DMA2_Stream0)) ? LL_DMA_STREAM_0 : \ @@ -11929,6 +12118,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 469:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 470:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @} 471:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/cczi2eQD.s page 203 + + 472:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 473:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 474:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /* Exported functions --------------------------------------------------------*/ @@ -11938,9 +12130,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 478:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 479:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @defgroup DMA_LL_EF_Configuration Configuration 480:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @{ - ARM GAS /tmp/ccdl7gEi.s page 200 - - 481:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 482:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 483:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Enable DMA stream. @@ -11989,6 +12178,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 526:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 527:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 528:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 + ARM GAS /tmp/cczi2eQD.s page 204 + + 529:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 530:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 531:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -11998,9 +12190,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 535:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 536:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 537:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsEnabledStream(DMA_TypeDef *DMAx, uint32_t Stream) - ARM GAS /tmp/ccdl7gEi.s page 201 - - 538:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 539:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 540:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -12049,6 +12238,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 583:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 584:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 585:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 + ARM GAS /tmp/cczi2eQD.s page 205 + + 586:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 587:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 588:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -12058,9 +12250,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 592:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Direction This parameter can be one of the following values: 593:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_DIRECTION_PERIPH_TO_MEMORY 594:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_DIRECTION_MEMORY_TO_PERIPH - ARM GAS /tmp/ccdl7gEi.s page 202 - - 595:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_DIRECTION_MEMORY_TO_MEMORY 596:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 597:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -12109,6 +12298,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 640:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Mode This parameter can be one of the following values: 641:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MODE_NORMAL 642:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MODE_CIRCULAR + ARM GAS /tmp/cczi2eQD.s page 206 + + 643:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MODE_PFCTRL 644:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 645:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -12118,9 +12310,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 649:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 650:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 651:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 203 - - 652:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get DMA mode normal, circular or peripheral flow control. 653:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR CIRC LL_DMA_GetMode\n 654:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * CR PFCTRL LL_DMA_GetMode @@ -12169,6 +12358,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 697:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 698:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 699:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Peripheral increment mode. + ARM GAS /tmp/cczi2eQD.s page 207 + + 700:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR PINC LL_DMA_GetPeriphIncMode 701:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 702:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: @@ -12178,9 +12370,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 706:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 707:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 708:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 - ARM GAS /tmp/ccdl7gEi.s page 204 - - 709:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 710:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 711:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: @@ -12229,6 +12418,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 754:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 755:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 756:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: + ARM GAS /tmp/cczi2eQD.s page 208 + + 757:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MEMORY_NOINCREMENT 758:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_MEMORY_INCREMENT 759:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -12238,9 +12430,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 763:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 764:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 765:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 205 - - 766:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set Peripheral size. 767:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR PSIZE LL_DMA_SetPeriphSize 768:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -12289,6 +12478,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 811:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 812:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 813:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set Memory size. + ARM GAS /tmp/cczi2eQD.s page 209 + + 814:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR MSIZE LL_DMA_SetMemorySize 815:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 816:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: @@ -12298,9 +12490,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 820:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 821:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 822:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 - ARM GAS /tmp/ccdl7gEi.s page 206 - - 823:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 824:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 825:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Size This parameter can be one of the following values: @@ -12349,6 +12538,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 868:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 869:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 870:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 + ARM GAS /tmp/cczi2eQD.s page 210 + + 871:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 872:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param OffsetSize This parameter can be one of the following values: 873:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_OFFSETSIZE_PSIZE @@ -12358,9 +12550,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 877:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_SetIncOffsetSize(DMA_TypeDef *DMAx, uint32_t Stream, uint32_t OffsetSiz 878:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 879:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D - ARM GAS /tmp/ccdl7gEi.s page 207 - - 880:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 881:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 882:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -12409,6 +12598,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 925:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 926:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D 927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + ARM GAS /tmp/cczi2eQD.s page 211 + + 928:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 929:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 930:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream priority level. @@ -12418,9 +12610,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 934:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 935:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 936:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 - ARM GAS /tmp/ccdl7gEi.s page 208 - - 937:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 938:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 939:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 @@ -12469,6 +12658,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 982:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 983:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 984:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 + ARM GAS /tmp/cczi2eQD.s page 212 + + 985:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 986:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 987:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -12478,9 +12670,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 991:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Between 0 to 0xFFFFFFFF 992:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 993:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetDataLength(DMA_TypeDef* DMAx, uint32_t Stream) - ARM GAS /tmp/ccdl7gEi.s page 209 - - 994:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 995:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 996:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -12529,6 +12718,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1039:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR CHSEL LL_DMA_GetChannelSelection 1040:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1041:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: + ARM GAS /tmp/cczi2eQD.s page 213 + + 1042:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1043:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1044:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 @@ -12538,9 +12730,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1048:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1049:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1050:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: - ARM GAS /tmp/ccdl7gEi.s page 210 - - 1051:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_0 1052:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_1 1053:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CHANNEL_2 @@ -12589,6 +12778,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1096:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1097:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** MODIFY_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))->CR, D 1098:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + ARM GAS /tmp/cczi2eQD.s page 214 + + 1099:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1100:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1101:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Memory burst transfer configuration. @@ -12598,9 +12790,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1105:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1106:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 1107:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 - ARM GAS /tmp/ccdl7gEi.s page 211 - - 1108:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1109:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1110:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 @@ -12649,6 +12838,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1153:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1154:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1155:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 + ARM GAS /tmp/cczi2eQD.s page 215 + + 1156:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1157:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1158:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -12658,9 +12850,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1162:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: 1163:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PBURST_SINGLE 1164:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PBURST_INC4 - ARM GAS /tmp/ccdl7gEi.s page 212 - - 1165:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PBURST_INC8 1166:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_PBURST_INC16 1167:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -12709,6 +12898,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1210:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CURRENTTARGETMEM0 1211:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_CURRENTTARGETMEM1 1212:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/cczi2eQD.s page 216 + + 1213:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetCurrentTargetMem(DMA_TypeDef *DMAx, uint32_t Stream) 1214:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1215:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- @@ -12718,9 +12910,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1219:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Enable the double buffer mode. 1220:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll CR DBM LL_DMA_EnableDoubleBufferMode 1221:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccdl7gEi.s page 213 - - 1222:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1223:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1224:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 @@ -12769,6 +12958,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1267:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1268:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1269:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 + ARM GAS /tmp/cczi2eQD.s page 217 + + 1270:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1271:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Returned value can be one of the following values: 1272:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOSTATUS_0_25 @@ -12778,9 +12970,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOSTATUS_EMPTY 1277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOSTATUS_FULL 1278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 214 - - 1279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetFIFOStatus(DMA_TypeDef *DMAx, uint32_t Stream) 1280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- @@ -12829,6 +13018,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1324:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1325:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Select FIFO threshold. 1326:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll FCR FTH LL_DMA_SetFIFOThreshold + ARM GAS /tmp/cczi2eQD.s page 218 + + 1327:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 @@ -12838,9 +13030,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 1334:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1335:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 - ARM GAS /tmp/ccdl7gEi.s page 215 - - 1336:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1337:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Threshold This parameter can be one of the following values: 1338:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_1_4 @@ -12889,6 +13078,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1381:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1382:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1383:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 + ARM GAS /tmp/cczi2eQD.s page 219 + + 1384:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1385:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1386:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 @@ -12898,9 +13090,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1390:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param FifoThreshold This parameter can be one of the following values: 1391:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_1_4 1392:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_1_2 - ARM GAS /tmp/ccdl7gEi.s page 216 - - 1393:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_3_4 1394:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_FIFOTHRESHOLD_FULL 1395:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None @@ -12949,6 +13138,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1438:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1439:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1440:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/cczi2eQD.s page 220 + + 1441:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1442:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set the Memory address. 1443:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll M0AR M0A LL_DMA_SetMemoryAddress @@ -12958,9 +13150,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1447:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1448:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1449:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 - ARM GAS /tmp/ccdl7gEi.s page 217 - - 1450:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1451:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1452:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 @@ -13009,6 +13198,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1495:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1496:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1497:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 + ARM GAS /tmp/cczi2eQD.s page 221 + + 1498:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1499:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1500:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 @@ -13018,9 +13210,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1504:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1505:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))- 1506:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - ARM GAS /tmp/ccdl7gEi.s page 218 - - 1507:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1508:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1509:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get the Peripheral address. @@ -13069,6 +13258,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1552:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1553:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set the Memory to Memory Destination address. 1554:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll M0AR M0A LL_DMA_SetM2MDstAddress + ARM GAS /tmp/cczi2eQD.s page 222 + + 1555:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note Interface used for direction LL_DMA_DIRECTION_MEMORY_TO_MEMORY only. 1556:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @note This API must not be called when the DMA channel is enabled. 1557:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -13078,9 +13270,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1561:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_2 1562:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_3 1563:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_4 - ARM GAS /tmp/ccdl7gEi.s page 219 - - 1564:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_5 1565:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_6 1566:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 @@ -13129,6 +13318,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1609:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_7 1610:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval Between 0 to 0xFFFFFFFF 1611:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/cczi2eQD.s page 223 + + 1612:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_GetM2MDstAddress(DMA_TypeDef* DMAx, uint32_t Stream) 1613:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1614:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_REG(((DMA_Stream_TypeDef*)((uint32_t)((uint32_t)DMAx + STREAM_OFFSET_TAB[Stream])))-> @@ -13138,9 +13330,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1618:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Set Memory 1 address (used in case of Double buffer mode). 1619:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll M1AR M1A LL_DMA_SetMemory1Address 1620:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccdl7gEi.s page 220 - - 1621:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param Stream This parameter can be one of the following values: 1622:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_0 1623:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @arg @ref LL_DMA_STREAM_1 @@ -13189,6 +13378,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1666:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1667:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 0 half transfer flag. 1668:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR HTIF0 LL_DMA_IsActiveFlag_HT0 + ARM GAS /tmp/cczi2eQD.s page 224 + + 1669:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1670:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1671:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -13198,9 +13390,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1675:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1676:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1677:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** - ARM GAS /tmp/ccdl7gEi.s page 221 - - 1678:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 1 half transfer flag. 1679:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR HTIF1 LL_DMA_IsActiveFlag_HT1 1680:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -13249,6 +13438,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1723:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR HTIF0 LL_DMA_IsActiveFlag_HT5 1724:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1725:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). + ARM GAS /tmp/cczi2eQD.s page 225 + + 1726:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1727:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_HT5(DMA_TypeDef *DMAx) 1728:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -13258,9 +13450,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1732:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1733:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 6 half transfer flag. 1734:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR HTIF6 LL_DMA_IsActiveFlag_HT6 - ARM GAS /tmp/ccdl7gEi.s page 222 - - 1735:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1736:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1737:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ @@ -13309,6 +13498,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1780:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1781:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1782:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TC2(DMA_TypeDef *DMAx) + ARM GAS /tmp/cczi2eQD.s page 226 + + 1783:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1784:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_TCIF2)==(DMA_LISR_TCIF2)); 1785:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -13318,9 +13510,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1789:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR TCIF3 LL_DMA_IsActiveFlag_TC3 1790:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1791:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). - ARM GAS /tmp/ccdl7gEi.s page 223 - - 1792:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1793:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TC3(DMA_TypeDef *DMAx) 1794:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -13369,6 +13558,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1837:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TC7(DMA_TypeDef *DMAx) 1838:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_TCIF7)==(DMA_HISR_TCIF7)); + ARM GAS /tmp/cczi2eQD.s page 227 + + 1840:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1841:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1842:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -13378,9 +13570,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1846:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 1847:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 1848:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TE0(DMA_TypeDef *DMAx) - ARM GAS /tmp/ccdl7gEi.s page 224 - - 1849:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1850:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_TEIF0)==(DMA_LISR_TEIF0)); 1851:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -13429,6 +13618,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1894:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_TEIF4)==(DMA_HISR_TEIF4)); 1895:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1896:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** + ARM GAS /tmp/cczi2eQD.s page 228 + + 1897:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1898:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 5 transfer error flag. 1899:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR TEIF0 LL_DMA_IsActiveFlag_TE5 @@ -13438,9 +13630,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1903:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_TE5(DMA_TypeDef *DMAx) 1904:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 1905:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_TEIF5)==(DMA_HISR_TEIF5)); - ARM GAS /tmp/ccdl7gEi.s page 225 - - 1906:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1907:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1908:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -13489,6 +13678,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1951:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 1952:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1953:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 2 direct mode error flag. + ARM GAS /tmp/cczi2eQD.s page 229 + + 1954:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR DMEIF2 LL_DMA_IsActiveFlag_DME2 1955:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 1956:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). @@ -13498,9 +13690,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 1960:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->LISR ,DMA_LISR_DMEIF2)==(DMA_LISR_DMEIF2)); 1961:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 1962:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** - ARM GAS /tmp/ccdl7gEi.s page 226 - - 1963:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 1964:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 3 direct mode error flag. 1965:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR DMEIF3 LL_DMA_IsActiveFlag_DME3 @@ -13549,6 +13738,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2008:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 7 direct mode error flag. 2009:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR DMEIF7 LL_DMA_IsActiveFlag_DME7 2010:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance + ARM GAS /tmp/cczi2eQD.s page 230 + + 2011:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 2012:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2013:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_DME7(DMA_TypeDef *DMAx) @@ -13558,9 +13750,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2017:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2018:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2019:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 0 FIFO error flag. - ARM GAS /tmp/ccdl7gEi.s page 227 - - 2020:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll LISR FEIF0 LL_DMA_IsActiveFlag_FE0 2021:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2022:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). @@ -13609,6 +13798,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2065:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2066:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 2067:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ + ARM GAS /tmp/cczi2eQD.s page 231 + + 2068:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_FE4(DMA_TypeDef *DMAx) 2069:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2070:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** return (READ_BIT(DMAx->HISR ,DMA_HISR_FEIF4)==(DMA_HISR_FEIF4)); @@ -13618,9 +13810,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2074:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Get Stream 5 FIFO error flag. 2075:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HISR FEIF0 LL_DMA_IsActiveFlag_FE5 2076:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance - ARM GAS /tmp/ccdl7gEi.s page 228 - - 2077:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval State of bit (1 or 0). 2078:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2079:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE uint32_t LL_DMA_IsActiveFlag_FE5(DMA_TypeDef *DMAx) @@ -13669,6 +13858,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2122:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2123:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_HT1(DMA_TypeDef *DMAx) 2124:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { + ARM GAS /tmp/cczi2eQD.s page 232 + + 2125:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CHTIF1); 2126:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2127:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -13678,9 +13870,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2131:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2132:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2133:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ - ARM GAS /tmp/ccdl7gEi.s page 229 - - 2134:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_HT2(DMA_TypeDef *DMAx) 2135:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2136:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CHTIF2); @@ -13729,6 +13918,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2179:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2180:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CHTIF6); 2181:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } + ARM GAS /tmp/cczi2eQD.s page 233 + + 2182:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2183:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2184:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 7 half transfer flag. @@ -13738,9 +13930,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2188:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2189:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_HT7(DMA_TypeDef *DMAx) 2190:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - ARM GAS /tmp/ccdl7gEi.s page 230 - - 2191:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CHTIF7); 2192:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2193:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** @@ -13789,6 +13978,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2236:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2237:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2238:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** + ARM GAS /tmp/cczi2eQD.s page 234 + + 2239:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 4 transfer complete flag. 2240:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HIFCR CTCIF4 LL_DMA_ClearFlag_TC4 2241:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance @@ -13798,9 +13990,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2245:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2246:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTCIF4); 2247:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - ARM GAS /tmp/ccdl7gEi.s page 231 - - 2248:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2249:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** 2250:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @brief Clear Stream 5 transfer complete flag. @@ -13831,102 +14020,102 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2275:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2276:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2277:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TC7(DMA_TypeDef *DMAx) - 1546 .loc 5 2277 22 view .LVU388 - 1547 .LBB101: + 1660 .loc 5 2277 22 view .LVU428 + 1661 .LBB101: 2278:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2279:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTCIF7); - 1548 .loc 5 2279 3 view .LVU389 - 1549 0000 024B ldr r3, .L112 - 1550 0002 4FF00062 mov r2, #134217728 - 1551 0006 DA60 str r2, [r3, #12] - 1552 .LVL43: - 1553 .loc 5 2279 3 is_stmt 0 view .LVU390 - 1554 .LBE101: - 1555 .LBE100: - 575:Src/stm32f7xx_it.c **** } - 1556 .loc 1 575 1 view .LVU391 - 1557 0008 7047 bx lr - 1558 .L113: - 1559 000a 00BF .align 2 - 1560 .L112: - 1561 000c 00640240 .word 1073898496 - 1562 .cfi_endproc - 1563 .LFE1203: - 1565 .section .text.DMA2_Stream7_IRQHandler,"ax",%progbits - 1566 .align 1 - 1567 .global DMA2_Stream7_IRQHandler - 1568 .syntax unified - 1569 .thumb - 1570 .thumb_func - ARM GAS /tmp/ccdl7gEi.s page 232 + 1662 .loc 5 2279 3 view .LVU429 + 1663 0000 024B ldr r3, .L123 + 1664 0002 4FF00062 mov r2, #134217728 + 1665 0006 DA60 str r2, [r3, #12] + 1666 .LVL43: + 1667 .loc 5 2279 3 is_stmt 0 view .LVU430 + 1668 .LBE101: + 1669 .LBE100: + 601:Src/stm32f7xx_it.c **** } + 1670 .loc 1 601 1 view .LVU431 + 1671 0008 7047 bx lr + 1672 .L124: + 1673 000a 00BF .align 2 + 1674 .L123: + ARM GAS /tmp/cczi2eQD.s page 235 - 1572 DMA2_Stream7_IRQHandler: - 1573 .LFB1201: + 1675 000c 00640240 .word 1073898496 + 1676 .cfi_endproc + 1677 .LFE1203: + 1679 .section .text.DMA2_Stream7_IRQHandler,"ax",%progbits + 1680 .align 1 + 1681 .global DMA2_Stream7_IRQHandler + 1682 .syntax unified + 1683 .thumb + 1684 .thumb_func + 1686 DMA2_Stream7_IRQHandler: + 1687 .LFB1201: 417:Src/stm32f7xx_it.c **** /* USER CODE BEGIN DMA2_Stream7_IRQn 0 */ - 1574 .loc 1 417 1 is_stmt 1 view -0 - 1575 .cfi_startproc - 1576 @ args = 0, pretend = 0, frame = 0 - 1577 @ frame_needed = 0, uses_anonymous_args = 0 - 1578 0000 08B5 push {r3, lr} - 1579 .LCFI13: - 1580 .cfi_def_cfa_offset 8 - 1581 .cfi_offset 3, -8 - 1582 .cfi_offset 14, -4 + 1688 .loc 1 417 1 is_stmt 1 view -0 + 1689 .cfi_startproc + 1690 @ args = 0, pretend = 0, frame = 0 + 1691 @ frame_needed = 0, uses_anonymous_args = 0 + 1692 0000 08B5 push {r3, lr} + 1693 .LCFI13: + 1694 .cfi_def_cfa_offset 8 + 1695 .cfi_offset 3, -8 + 1696 .cfi_offset 14, -4 419:Src/stm32f7xx_it.c **** { - 1583 .loc 1 419 3 view .LVU393 - 1584 .LVL44: - 1585 .LBB102: - 1586 .LBI102: + 1697 .loc 1 419 3 view .LVU433 + 1698 .LVL44: + 1699 .LBB102: + 1700 .LBI102: 1837:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 1587 .loc 5 1837 26 view .LVU394 - 1588 .LBB103: + 1701 .loc 5 1837 26 view .LVU434 + 1702 .LBB103: 1839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1589 .loc 5 1839 3 view .LVU395 + 1703 .loc 5 1839 3 view .LVU435 1839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1590 .loc 5 1839 11 is_stmt 0 view .LVU396 - 1591 0002 0A4B ldr r3, .L119 - 1592 0004 5B68 ldr r3, [r3, #4] - 1593 .LVL45: + 1704 .loc 5 1839 11 is_stmt 0 view .LVU436 + 1705 0002 0A4B ldr r3, .L130 + 1706 0004 5B68 ldr r3, [r3, #4] + 1707 .LVL45: 1839:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1594 .loc 5 1839 11 view .LVU397 - 1595 .LBE103: - 1596 .LBE102: + 1708 .loc 5 1839 11 view .LVU437 + 1709 .LBE103: + 1710 .LBE102: 419:Src/stm32f7xx_it.c **** { - 1597 .loc 1 419 5 discriminator 1 view .LVU398 - 1598 0006 13F0006F tst r3, #134217728 - 1599 000a 09D1 bne .L118 + 1711 .loc 1 419 5 discriminator 1 view .LVU438 + 1712 0006 13F0006F tst r3, #134217728 + 1713 000a 09D1 bne .L129 424:Src/stm32f7xx_it.c **** { - 1600 .loc 1 424 8 is_stmt 1 view .LVU399 - 1601 .LVL46: - 1602 .LBB104: - 1603 .LBI104: + 1714 .loc 1 424 8 is_stmt 1 view .LVU439 + 1715 .LVL46: + 1716 .LBB104: + 1717 .LBI104: 1925:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { - 1604 .loc 5 1925 26 view .LVU400 - 1605 .LBB105: + 1718 .loc 5 1925 26 view .LVU440 + 1719 .LBB105: 1927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1606 .loc 5 1927 3 view .LVU401 + 1720 .loc 5 1927 3 view .LVU441 1927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1607 .loc 5 1927 11 is_stmt 0 view .LVU402 - 1608 000c 074B ldr r3, .L119 - 1609 000e 5B68 ldr r3, [r3, #4] - 1610 .LVL47: + 1721 .loc 5 1927 11 is_stmt 0 view .LVU442 + 1722 000c 074B ldr r3, .L130 + ARM GAS /tmp/cczi2eQD.s page 236 + + + 1723 000e 5B68 ldr r3, [r3, #4] + 1724 .LVL47: 1927:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } - 1611 .loc 5 1927 11 view .LVU403 - 1612 .LBE105: - 1613 .LBE104: + 1725 .loc 5 1927 11 view .LVU443 + 1726 .LBE105: + 1727 .LBE104: 424:Src/stm32f7xx_it.c **** { - 1614 .loc 1 424 10 discriminator 1 view .LVU404 - 1615 0010 13F0007F tst r3, #33554432 - ARM GAS /tmp/ccdl7gEi.s page 233 - - - 1616 0014 03D0 beq .L114 + 1728 .loc 1 424 10 discriminator 1 view .LVU444 + 1729 0010 13F0007F tst r3, #33554432 + 1730 0014 03D0 beq .L125 426:Src/stm32f7xx_it.c **** } - 1617 .loc 1 426 5 is_stmt 1 view .LVU405 - 1618 .LVL48: - 1619 .LBB106: - 1620 .LBI106: + 1731 .loc 1 426 5 is_stmt 1 view .LVU445 + 1732 .LVL48: + 1733 .LBB106: + 1734 .LBI106: 2280:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } 2281:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** 2282:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** /** @@ -13969,6 +14158,9 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2319:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2320:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2321:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE3(DMA_TypeDef *DMAx) + ARM GAS /tmp/cczi2eQD.s page 237 + + 2322:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2323:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->LIFCR , DMA_LIFCR_CTEIF3); 2324:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** } @@ -13978,9 +14170,6 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2328:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @rmtoll HIFCR CTEIF4 LL_DMA_ClearFlag_TE4 2329:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @param DMAx DMAx Instance 2330:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None - ARM GAS /tmp/ccdl7gEi.s page 234 - - 2331:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2332:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE4(DMA_TypeDef *DMAx) 2333:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { @@ -14016,122 +14205,122 @@ ARM GAS /tmp/ccdl7gEi.s page 1 2363:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** * @retval None 2364:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** */ 2365:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** __STATIC_INLINE void LL_DMA_ClearFlag_TE7(DMA_TypeDef *DMAx) - 1621 .loc 5 2365 22 view .LVU406 - 1622 .LBB107: + 1735 .loc 5 2365 22 view .LVU446 + 1736 .LBB107: 2366:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** { 2367:Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_dma.h **** WRITE_REG(DMAx->HIFCR , DMA_HIFCR_CTEIF7); - 1623 .loc 5 2367 3 view .LVU407 - 1624 0016 054B ldr r3, .L119 - 1625 0018 4FF00072 mov r2, #33554432 - 1626 001c DA60 str r2, [r3, #12] - 1627 .LVL49: - 1628 .L114: - 1629 .loc 5 2367 3 is_stmt 0 view .LVU408 - 1630 .LBE107: - 1631 .LBE106: + 1737 .loc 5 2367 3 view .LVU447 + 1738 0016 054B ldr r3, .L130 + 1739 0018 4FF00072 mov r2, #33554432 + 1740 001c DA60 str r2, [r3, #12] + 1741 .LVL49: + 1742 .L125: + 1743 .loc 5 2367 3 is_stmt 0 view .LVU448 + 1744 .LBE107: + 1745 .LBE106: + ARM GAS /tmp/cczi2eQD.s page 238 + + 432:Src/stm32f7xx_it.c **** - 1632 .loc 1 432 1 view .LVU409 - 1633 001e 08BD pop {r3, pc} - 1634 .L118: + 1746 .loc 1 432 1 view .LVU449 + 1747 001e 08BD pop {r3, pc} + 1748 .L129: 421:Src/stm32f7xx_it.c **** u_tx_flg = 0;//indicate that transfer compete - 1635 .loc 1 421 5 is_stmt 1 view .LVU410 - 1636 0020 FFF7FEFF bl DMA2_Stream7_TransferComplete - 1637 .LVL50: + 1749 .loc 1 421 5 is_stmt 1 view .LVU450 + 1750 0020 FFF7FEFF bl DMA2_Stream7_TransferComplete + 1751 .LVL50: 422:Src/stm32f7xx_it.c **** } - ARM GAS /tmp/ccdl7gEi.s page 235 - - - 1638 .loc 1 422 5 view .LVU411 + 1752 .loc 1 422 5 view .LVU451 422:Src/stm32f7xx_it.c **** } - 1639 .loc 1 422 14 is_stmt 0 view .LVU412 - 1640 0024 024B ldr r3, .L119+4 - 1641 0026 0022 movs r2, #0 - 1642 0028 1A70 strb r2, [r3] - 1643 002a F8E7 b .L114 - 1644 .L120: - 1645 .align 2 - 1646 .L119: - 1647 002c 00640240 .word 1073898496 - 1648 0030 00000000 .word u_tx_flg - 1649 .cfi_endproc - 1650 .LFE1201: - 1652 .text - 1653 .Letext0: - 1654 .file 6 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" - 1655 .file 7 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" - 1656 .file 8 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" - 1657 .file 9 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" - 1658 .file 10 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" - 1659 .file 11 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" - 1660 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" - 1661 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" - 1662 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" - 1663 .file 15 "Inc/main.h" - 1664 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h" - ARM GAS /tmp/ccdl7gEi.s page 236 + 1753 .loc 1 422 14 is_stmt 0 view .LVU452 + 1754 0024 024B ldr r3, .L130+4 + 1755 0026 0022 movs r2, #0 + 1756 0028 1A70 strb r2, [r3] + 1757 002a F8E7 b .L125 + 1758 .L131: + 1759 .align 2 + 1760 .L130: + 1761 002c 00640240 .word 1073898496 + 1762 0030 00000000 .word u_tx_flg + 1763 .cfi_endproc + 1764 .LFE1201: + 1766 .text + 1767 .Letext0: + 1768 .file 6 "/usr/lib/gcc/arm-none-eabi/13.2.1/include/stdint.h" + 1769 .file 7 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f767xx.h" + 1770 .file 8 "Drivers/CMSIS/Device/ST/STM32F7xx/Include/stm32f7xx.h" + 1771 .file 9 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_def.h" + 1772 .file 10 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_gpio.h" + 1773 .file 11 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_dma.h" + 1774 .file 12 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_adc.h" + 1775 .file 13 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal_tim.h" + 1776 .file 14 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_ll_rcc.h" + 1777 .file 15 "Inc/main.h" + 1778 .file 16 "Drivers/STM32F7xx_HAL_Driver/Inc/stm32f7xx_hal.h" + ARM GAS /tmp/cczi2eQD.s page 239 DEFINED SYMBOLS *ABS*:00000000 stm32f7xx_it.c - /tmp/ccdl7gEi.s:20 .text.NMI_Handler:00000000 $t - /tmp/ccdl7gEi.s:26 .text.NMI_Handler:00000000 NMI_Handler - /tmp/ccdl7gEi.s:43 .text.HardFault_Handler:00000000 $t - /tmp/ccdl7gEi.s:49 .text.HardFault_Handler:00000000 HardFault_Handler - /tmp/ccdl7gEi.s:66 .text.MemManage_Handler:00000000 $t - /tmp/ccdl7gEi.s:72 .text.MemManage_Handler:00000000 MemManage_Handler - /tmp/ccdl7gEi.s:89 .text.BusFault_Handler:00000000 $t - /tmp/ccdl7gEi.s:95 .text.BusFault_Handler:00000000 BusFault_Handler - /tmp/ccdl7gEi.s:112 .text.UsageFault_Handler:00000000 $t - /tmp/ccdl7gEi.s:118 .text.UsageFault_Handler:00000000 UsageFault_Handler - /tmp/ccdl7gEi.s:135 .text.SVC_Handler:00000000 $t - /tmp/ccdl7gEi.s:141 .text.SVC_Handler:00000000 SVC_Handler - /tmp/ccdl7gEi.s:154 .text.DebugMon_Handler:00000000 $t - /tmp/ccdl7gEi.s:160 .text.DebugMon_Handler:00000000 DebugMon_Handler - /tmp/ccdl7gEi.s:173 .text.PendSV_Handler:00000000 $t - /tmp/ccdl7gEi.s:179 .text.PendSV_Handler:00000000 PendSV_Handler - /tmp/ccdl7gEi.s:192 .text.SysTick_Handler:00000000 $t - /tmp/ccdl7gEi.s:198 .text.SysTick_Handler:00000000 SysTick_Handler - /tmp/ccdl7gEi.s:218 .text.ADC_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:224 .text.ADC_IRQHandler:00000000 ADC_IRQHandler - /tmp/ccdl7gEi.s:248 .text.ADC_IRQHandler:00000010 $d - /tmp/ccdl7gEi.s:254 .text.TIM1_UP_TIM10_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:260 .text.TIM1_UP_TIM10_IRQHandler:00000000 TIM1_UP_TIM10_IRQHandler - /tmp/ccdl7gEi.s:301 .text.TIM1_UP_TIM10_IRQHandler:00000024 $d - /tmp/ccdl7gEi.s:309 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:315 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000000 TIM1_TRG_COM_TIM11_IRQHandler - /tmp/ccdl7gEi.s:355 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000028 $d - /tmp/ccdl7gEi.s:362 .text.TIM2_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:368 .text.TIM2_IRQHandler:00000000 TIM2_IRQHandler - /tmp/ccdl7gEi.s:381 .text.TIM8_UP_TIM13_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:387 .text.TIM8_UP_TIM13_IRQHandler:00000000 TIM8_UP_TIM13_IRQHandler - /tmp/ccdl7gEi.s:453 .text.TIM8_UP_TIM13_IRQHandler:00000048 $d - /tmp/ccdl7gEi.s:459 .text.TIM5_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:465 .text.TIM5_IRQHandler:00000000 TIM5_IRQHandler - /tmp/ccdl7gEi.s:478 .text.TIM6_DAC_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:484 .text.TIM6_DAC_IRQHandler:00000000 TIM6_DAC_IRQHandler - /tmp/ccdl7gEi.s:543 .text.TIM6_DAC_IRQHandler:00000028 $d - /tmp/ccdl7gEi.s:550 .text.TIM7_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:556 .text.TIM7_IRQHandler:00000000 TIM7_IRQHandler - /tmp/ccdl7gEi.s:605 .text.TIM7_IRQHandler:0000001c $d - /tmp/ccdl7gEi.s:611 .text.UART_RxCpltCallback:00000000 $t - /tmp/ccdl7gEi.s:617 .text.UART_RxCpltCallback:00000000 UART_RxCpltCallback - /tmp/ccdl7gEi.s:655 .text.UART_RxCpltCallback:0000001a $d - /tmp/ccdl7gEi.s:687 .text.UART_RxCpltCallback:0000005a $t - /tmp/ccdl7gEi.s:1092 .text.UART_RxCpltCallback:00000270 $d - /tmp/ccdl7gEi.s:1106 .text.UART_RxCpltCallback:0000029c $t - /tmp/ccdl7gEi.s:1194 .text.UART_RxCpltCallback:00000310 $d - /tmp/ccdl7gEi.s:1203 .text.USART1_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:1209 .text.USART1_IRQHandler:00000000 USART1_IRQHandler - /tmp/ccdl7gEi.s:1522 .text.USART1_IRQHandler:000000c8 $d - /tmp/ccdl7gEi.s:1528 .text.DMA2_Stream7_TransferComplete:00000000 $t - /tmp/ccdl7gEi.s:1534 .text.DMA2_Stream7_TransferComplete:00000000 DMA2_Stream7_TransferComplete - /tmp/ccdl7gEi.s:1561 .text.DMA2_Stream7_TransferComplete:0000000c $d - /tmp/ccdl7gEi.s:1566 .text.DMA2_Stream7_IRQHandler:00000000 $t - /tmp/ccdl7gEi.s:1572 .text.DMA2_Stream7_IRQHandler:00000000 DMA2_Stream7_IRQHandler - ARM GAS /tmp/ccdl7gEi.s page 237 + /tmp/cczi2eQD.s:20 .text.NMI_Handler:00000000 $t + /tmp/cczi2eQD.s:26 .text.NMI_Handler:00000000 NMI_Handler + /tmp/cczi2eQD.s:43 .text.HardFault_Handler:00000000 $t + /tmp/cczi2eQD.s:49 .text.HardFault_Handler:00000000 HardFault_Handler + /tmp/cczi2eQD.s:66 .text.MemManage_Handler:00000000 $t + /tmp/cczi2eQD.s:72 .text.MemManage_Handler:00000000 MemManage_Handler + /tmp/cczi2eQD.s:89 .text.BusFault_Handler:00000000 $t + /tmp/cczi2eQD.s:95 .text.BusFault_Handler:00000000 BusFault_Handler + /tmp/cczi2eQD.s:112 .text.UsageFault_Handler:00000000 $t + /tmp/cczi2eQD.s:118 .text.UsageFault_Handler:00000000 UsageFault_Handler + /tmp/cczi2eQD.s:135 .text.SVC_Handler:00000000 $t + /tmp/cczi2eQD.s:141 .text.SVC_Handler:00000000 SVC_Handler + /tmp/cczi2eQD.s:154 .text.DebugMon_Handler:00000000 $t + /tmp/cczi2eQD.s:160 .text.DebugMon_Handler:00000000 DebugMon_Handler + /tmp/cczi2eQD.s:173 .text.PendSV_Handler:00000000 $t + /tmp/cczi2eQD.s:179 .text.PendSV_Handler:00000000 PendSV_Handler + /tmp/cczi2eQD.s:192 .text.SysTick_Handler:00000000 $t + /tmp/cczi2eQD.s:198 .text.SysTick_Handler:00000000 SysTick_Handler + /tmp/cczi2eQD.s:218 .text.ADC_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:224 .text.ADC_IRQHandler:00000000 ADC_IRQHandler + /tmp/cczi2eQD.s:248 .text.ADC_IRQHandler:00000010 $d + /tmp/cczi2eQD.s:254 .text.TIM1_UP_TIM10_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:260 .text.TIM1_UP_TIM10_IRQHandler:00000000 TIM1_UP_TIM10_IRQHandler + /tmp/cczi2eQD.s:301 .text.TIM1_UP_TIM10_IRQHandler:00000024 $d + /tmp/cczi2eQD.s:309 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:315 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000000 TIM1_TRG_COM_TIM11_IRQHandler + /tmp/cczi2eQD.s:355 .text.TIM1_TRG_COM_TIM11_IRQHandler:00000028 $d + /tmp/cczi2eQD.s:362 .text.TIM2_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:368 .text.TIM2_IRQHandler:00000000 TIM2_IRQHandler + /tmp/cczi2eQD.s:381 .text.TIM8_UP_TIM13_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:387 .text.TIM8_UP_TIM13_IRQHandler:00000000 TIM8_UP_TIM13_IRQHandler + /tmp/cczi2eQD.s:453 .text.TIM8_UP_TIM13_IRQHandler:00000048 $d + /tmp/cczi2eQD.s:459 .text.TIM5_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:465 .text.TIM5_IRQHandler:00000000 TIM5_IRQHandler + /tmp/cczi2eQD.s:478 .text.TIM6_DAC_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:484 .text.TIM6_DAC_IRQHandler:00000000 TIM6_DAC_IRQHandler + /tmp/cczi2eQD.s:543 .text.TIM6_DAC_IRQHandler:00000028 $d + /tmp/cczi2eQD.s:550 .text.TIM7_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:556 .text.TIM7_IRQHandler:00000000 TIM7_IRQHandler + /tmp/cczi2eQD.s:605 .text.TIM7_IRQHandler:0000001c $d + /tmp/cczi2eQD.s:611 .text.UART_RxCpltCallback:00000000 $t + /tmp/cczi2eQD.s:617 .text.UART_RxCpltCallback:00000000 UART_RxCpltCallback + /tmp/cczi2eQD.s:655 .text.UART_RxCpltCallback:0000001a $d + /tmp/cczi2eQD.s:687 .text.UART_RxCpltCallback:0000005a $t + /tmp/cczi2eQD.s:1087 .text.UART_RxCpltCallback:00000268 $d + /tmp/cczi2eQD.s:1101 .text.UART_RxCpltCallback:00000294 $t + /tmp/cczi2eQD.s:1307 .text.UART_RxCpltCallback:000003b0 $d + /tmp/cczi2eQD.s:1317 .text.USART1_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:1323 .text.USART1_IRQHandler:00000000 USART1_IRQHandler + /tmp/cczi2eQD.s:1636 .text.USART1_IRQHandler:000000c8 $d + /tmp/cczi2eQD.s:1642 .text.DMA2_Stream7_TransferComplete:00000000 $t + /tmp/cczi2eQD.s:1648 .text.DMA2_Stream7_TransferComplete:00000000 DMA2_Stream7_TransferComplete + /tmp/cczi2eQD.s:1675 .text.DMA2_Stream7_TransferComplete:0000000c $d + /tmp/cczi2eQD.s:1680 .text.DMA2_Stream7_IRQHandler:00000000 $t + /tmp/cczi2eQD.s:1686 .text.DMA2_Stream7_IRQHandler:00000000 DMA2_Stream7_IRQHandler + ARM GAS /tmp/cczi2eQD.s page 240 - /tmp/ccdl7gEi.s:1647 .text.DMA2_Stream7_IRQHandler:0000002c $d + /tmp/cczi2eQD.s:1761 .text.DMA2_Stream7_IRQHandler:0000002c $d UNDEFINED SYMBOLS HAL_IncTick diff --git a/build/stm32f7xx_it.o b/build/stm32f7xx_it.o index 3b20d02c63f4efb8a81a86a1fd044d3cd2d7ff78..ecc1e232e2a1df4eda49e15cc02fa06c36b13e7a 100644 GIT binary patch delta 6202 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 delta 5930 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
  • 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