Перейти к содержанию
    

STM32h743 прерывание TIM2 не стартует

Добрый день. Решил написать простейшее прерывание как бы самостоятельно, без помощи кубической интерполяции. И вот, после вроде успешного правильного запуска RCC и далее по коду, что у меня не происходит возникновение прерывания Таймера TIM2 - см. код ниже. Возможно пропустил включение тактирования модуля NVIC (а оно отдельно есть?) или еще что-то. Подскажите кто в теме. Спасибо большое.


int main(void)
{
	SCB->CPACR |= (0xF << 20);		// Enable floating-point unit.

	SystemInit();

	SystemClock_Config();			// также в конце получим SystemCoreClock

	GPIO_BaseInit();

	/* ------ Enable MCO1 (PA8) ------ */

	RCC->AHB4ENR |= RCC_AHB4ENR_GPIOAEN;		// включим тактирование порта 'PA'
	GPIOA->MODER &= ~GPIO_MODER_MODE8;			// обнулим поле 'MODER8'
	GPIOA->MODER   |= GPIO_MODER_MODE8_1;		// Alternative PP
	GPIOA->OSPEEDR |= GPIO_OSPEEDR_OSPEED8;		// Very high speed

	RCC->CFGR |= RCC_CFGR_MCO1;									// Source PLL1Q
	RCC->CFGR &= ~RCC_CFGR_MCO1PRE_0;							// 0-bit to '0' (out div by 4)
	RCC->CFGR |= RCC_CFGR_MCO1PRE_1 | RCC_CFGR_MCO1PRE_2;		// 1 & 2 bits '1' (out div by 4)

	/* ------------------------------- */

	__IO uint32_t tmpreg;
	SET_BIT(RCC->APB1LENR, RCC_APB1LENR_TIM2EN);		// Enable the TIM2 clock.

	/* Delay after an RCC peripheral clock enabling */
	tmpreg = READ_BIT(RCC->APB1LENR, RCC_APB1LENR_TIM2EN);
	(void)(tmpreg);

	NVIC_SetPriority(TIM2_IRQn, 0x03);					// Enable the NVIC interrupt for TIM2.
	NVIC_EnableIRQ(TIM2_IRQn);

	__enable_irq();

	TIM2->CR1 &= ~(TIM_CR1_CEN);				// Start by making sure the timer's 'counter' is off.

	(RCC->APB1LRSTR) |= (RCC_APB1LRSTR_TIM2RST);		// Next, reset the peripheral.

	// Set the timer prescaler/autoreload timing registers. (These are 16-bit timers, so this won't work with > 65MHz.)
	TIM2->PSC = SystemCoreClock / 1000;
	TIM2->ARR = 500;		// ms

	// Send an update event to reset the timer and apply settings.
	TIM2->EGR |= TIM_EGR_UG;

	// Enable the hardware interrupt.
	TIM2->DIER |= TIM_DIER_UIE;

	// Enable the timer.
	TIM2->CR1 |= TIM_CR1_CEN;

	/* Loop forever */
	for (;;);
}

void TIM2_IRQhandler(void)
{
	// Handle a timer 'update' interrupt event
	if (TIM2->SR & TIM_SR_UIF)
	{
		TIM2->SR &= ~(TIM_SR_UIF);

		// Toggle the LED output pin (пин 'PB1').
		GPIOB->ODR ^= (1 << LED_PIN);
	}
}

(также приведу код функции запуска RCC - простыня там пока что):

Скрытый текст

StatusTypeDef SystemClock_Config(void)
{
	/* Supply configuration update enable */

	/* Check if supply source was configured */
	if (((PWR->CR3 & PWR_CR3_SCUEN) == PWR_CR3_SCUEN) == 0U)
	{
		/* Supply configuration update locked, can't apply a new supply config */
		if ((PWR->CR3 & (PWR_CR3_SCUEN | PWR_CR3_LDOEN | PWR_CR3_BYPASS)) != PWR_CR3_LDOEN)
			return S_ERROR;
	}

	/* Set the power supply configuration */
	MODIFY_REG(PWR->CR3, (PWR_CR3_SCUEN | PWR_CR3_LDOEN | PWR_CR3_BYPASS), PWR_CR3_LDOEN);

	/* Get tick */
	uint32_t tickstart = 0;

	/* Wait till voltage level flag is set */
	while (((PWR->CSR1 & PWR_CSR1_ACTVOSRDY) == PWR_CSR1_ACTVOSRDY) == 0U)
	{
		if (++tickstart > S_TIMEOUT_VALUE)
			return S_ERROR;
	}

	/* PWR_Regulator_Voltage_Scale PWR Regulator Voltage Scale */
	#define PWR_REGULATOR_VOLTAGE_SCALE0	(0U)
	#define PWR_REGULATOR_VOLTAGE_SCALE1	(PWR_D3CR_VOS_1 | PWR_D3CR_VOS_0)
	#define PWR_REGULATOR_VOLTAGE_SCALE2	(PWR_D3CR_VOS_1)
	#define PWR_REGULATOR_VOLTAGE_SCALE3	(PWR_D3CR_VOS_0)

	/* Configure the main internal regulator output voltage */
	#define __REGULATOR__					PWR_REGULATOR_VOLTAGE_SCALE1

	__IO uint32_t tmpreg = 0x00;

	/* Check the voltage scaling to be configured */
	if ((__REGULATOR__) == PWR_REGULATOR_VOLTAGE_SCALE0)
	{
		/* Configure the Voltage Scaling 1 */
		MODIFY_REG(PWR->D3CR, PWR_D3CR_VOS, PWR_REGULATOR_VOLTAGE_SCALE1);
		/* Delay after setting the voltage scaling */
		tmpreg = READ_BIT(PWR->D3CR, PWR_D3CR_VOS);
		/* Enable the PWR overdrive */
		SET_BIT(SYSCFG->PWRCR, SYSCFG_PWRCR_ODEN);
		/* Delay after setting the syscfg boost setting */
		tmpreg = READ_BIT(SYSCFG->PWRCR, SYSCFG_PWRCR_ODEN);
	}
	else
	{
		/* Disable the PWR overdrive */
		CLEAR_BIT(SYSCFG->PWRCR, SYSCFG_PWRCR_ODEN);
		/* Delay after setting the syscfg boost setting */
		tmpreg = READ_BIT(SYSCFG->PWRCR, SYSCFG_PWRCR_ODEN);
		/* Configure the Voltage Scaling x */
		MODIFY_REG(PWR->D3CR, PWR_D3CR_VOS, (__REGULATOR__));
		/* Delay after setting the voltage scaling */
		tmpreg = READ_BIT(PWR->D3CR, PWR_D3CR_VOS);
	}

	while (!((PWR->D3CR & PWR_D3CR_VOSRDY) == PWR_D3CR_VOSRDY))
	{
	}

	/*--------------------------------------------------------------------------------------------*/

	#define RCC_FLAG_MASK			((uint8_t)0x1F)

	/* The clock source used as system clock. The returned value can be one
	 *         of the following:
	 *              - RCC_CFGR_SWS_CSI: CSI used as system clock.
	 *              - RCC_CFGR_SWS_HSI: HSI used as system clock.
	 *              - RCC_CFGR_SWS_HSE: HSE used as system clock.
	 *              - RCC_CFGR_SWS_PLL: PLL used as system clock. */
	const uint32_t temp_sysclksrc = ((uint32_t)(RCC->CFGR & RCC_CFGR_SWS));
	const uint32_t temp_pllckselr = RCC->PLLCKSELR;

	/* When the HSE is used as system clock or clock source for PLL in these cases HSE will not disabled */
	if ((temp_sysclksrc == RCC_CFGR_SWS_HSE)
			|| ((temp_sysclksrc == RCC_CFGR_SWS_PLL1)
					&& ((temp_pllckselr & RCC_PLLCKSELR_PLLSRC) == RCC_PLLCKSELR_PLLSRC_HSE)))
	{
		if ((((((((RCC_FLAG_HSERDY) >> 5U) == 1U) ?
				RCC->CR : ((((RCC_FLAG_HSERDY) >> 5U) == 2U) ?
						RCC->BDCR :
						((((RCC_FLAG_HSERDY) >> 5U) == 3U) ?
								RCC->CSR : ((((RCC_FLAG_HSERDY) >> 5U) == 4U) ?
										RCC->RSR : RCC->CIFR))))
				& (1UL << ((RCC_FLAG_HSERDY) & RCC_FLAG_MASK))) != 0U) ?
				1U : 0U) != 0U)
		{
			return S_ERROR;
		}
	}
	else
	{
		/* Set the new HSE configuration - HSE ON */
		SET_BIT(RCC->CR, RCC_CR_HSEON);

			/* Get Start Tick*/
			tickstart = 0;

			/* Wait till HSE is disabled */
			if ((((((((RCC_FLAG_HSERDY) >> 5U) == 1U) ?
							RCC->CR : ((((RCC_FLAG_HSERDY) >> 5U) == 2U) ?
									RCC->BDCR :
									((((RCC_FLAG_HSERDY) >> 5U) == 3U) ?
											RCC->CSR : ((((RCC_FLAG_HSERDY) >> 5U) == 4U) ?
													RCC->RSR : RCC->CIFR))))
							& (1UL << ((RCC_FLAG_HSERDY) & RCC_FLAG_MASK))) != 0U) ?
							1U : 0U) != 0U)
			{
				if (++tickstart > S_TIMEOUT_VALUE)
				{
					return S_TIMEOUT;
				}
			}
	}

	/* below we accept PLL is used as system clock */
	MODIFY_REG(RCC->PLLCKSELR, RCC_PLLCKSELR_PLLSRC, RCC_PLLSOURCE_HSE);

	tickstart = 0;

	/* Check RCC flag: PLL1 clock ready or not */
	while ((((((((RCC_FLAG_PLLRDY) >> 5U) == 1U) ?
			RCC->CR : ((((RCC_FLAG_PLLRDY) >> 5U) == 2U) ?
					RCC->BDCR :
					((((RCC_FLAG_PLLRDY) >> 5U) == 3U) ?
							RCC->CSR : ((((RCC_FLAG_PLLRDY) >> 5U) == 4U) ?
									RCC->RSR : RCC->CIFR))))
			& (1UL << ((RCC_FLAG_PLLRDY) & RCC_FLAG_MASK))) != 0U) ?
			1U : 0U) != 0)
	{
		if (++tickstart > S_TIMEOUT_VALUE)
			return S_TIMEOUT;
	}

	/*--------------------------------------------------------------------------------------------*/

	#define __RCC_PLLSOURCE__		RCC_PLLSOURCE_HSE
	#define __PLLM1__				5					/** Divide PLL Source Mux: DIVM1 = 5 */
	#define __PLLN1__				144					/** Multipply: DIVN1 = 144 */
	#define __PLLP1__				2					/** Divide: DIVP1 = 2 */
	#define __PLLQ1__				15					/** Divide: DIVQ1 = 15 */
	#define __PLLR1__ 				2					/** Divide: DIVR1 = 2 */

	/* в результате этого на верхнем выходе будут: PLL1Q = 48MHz, PLL1R = 360MHz */
	MODIFY_REG(RCC->PLLCKSELR, (RCC_PLLCKSELR_PLLSRC | RCC_PLLCKSELR_DIVM1),
			((__RCC_PLLSOURCE__) | ((__PLLM1__) << 4U)));
	WRITE_REG(RCC->PLL1DIVR,
			((((__PLLN1__) - 1U )& RCC_PLL1DIVR_N1) | ((((__PLLP1__) -1U ) << 9U) & RCC_PLL1DIVR_P1) |
			((((__PLLQ1__) -1U) << 16U)& RCC_PLL1DIVR_Q1) | ((((__PLLR1__) - 1U) << 24U)& RCC_PLL1DIVR_R1)));

	/*--------------------------------------------------------------------------------------------*/

	/* Disable PLLFRACN */
	CLEAR_BIT(RCC->PLLCFGR, RCC_PLLCFGR_PLL1FRACEN);

	/* Configure PLL PLL1FRACN to 0 */
	MODIFY_REG(RCC->PLL1FRACR, RCC_PLL1FRACR_FRACN1, (uint32_t)0 << RCC_PLL1FRACR_FRACN1_Pos);

	/* RCC_PLL1_VCI_Range  RCC PLL1 VCI Range */
	#define RCC_PLL1VCIRANGE_0	RCC_PLLCFGR_PLL1RGE_0	/* Clock range frequency between 1 and 2 MHz  */
	#define RCC_PLL1VCIRANGE_1	RCC_PLLCFGR_PLL1RGE_1	/* Clock range frequency between 2 and 4 MHz  */
	#define RCC_PLL1VCIRANGE_2	RCC_PLLCFGR_PLL1RGE_2	/* Clock range frequency between 4 and 8 MHz  */
	#define RCC_PLL1VCIRANGE_3	RCC_PLLCFGR_PLL1RGE_3	/* Clock range frequency between 8 and 16 MHz */

	/* Select PLL1 input reference frequency range: VCI */
	MODIFY_REG(RCC->PLLCFGR, RCC_PLLCFGR_PLL1RGE, RCC_PLL1VCIRANGE_2);

	/* RCC_PLL1_VCO_Range  RCC PLL1 VCO Range */
	#define RCC_PLL1VCOWIDE		(0x00000000U)
	#define RCC_PLL1VCOMEDIUM	RCC_PLLCFGR_PLL1VCOSEL

	/* Select PLL1 output frequency range : VCO */
	MODIFY_REG(RCC->PLLCFGR, RCC_PLLCFGR_PLL1VCOSEL, RCC_PLL1VCOWIDE);

	/* Enable PLL System Clock output. */
	SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVP1EN);

	/* Enable PLL1Q Clock output. */
	SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVQ1EN);

	/* Enable PLL1R  Clock output. */
	SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVR1EN);

	/* Enable Fractional Part Of The Multiplication Factor of PLL1 VCO - PLL1FRACN */
	SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_PLL1FRACEN);

	/* Enable the main PLL. After enabling the main PLL, the application software should wait on PLLRDY
	 * flag to be set indicating that PLL clock is stable and can be used as system clock source. */
	SET_BIT(RCC->CR, RCC_CR_PLL1ON);

	/* Get Start Tick*/
	tickstart = 0;

	/* Wait till PLL is ready */
	while ((((((((RCC_FLAG_PLLRDY) >> 5U) == 1U) ?
			RCC->CR : ((((RCC_FLAG_PLLRDY) >> 5U) == 2U) ?
					RCC->BDCR :
					((((RCC_FLAG_PLLRDY) >> 5U) == 3U) ?
							RCC->CSR : ((((RCC_FLAG_PLLRDY) >> 5U) == 4U) ?
									RCC->RSR : RCC->CIFR))))
			& (1UL << ((RCC_FLAG_PLLRDY) & RCC_FLAG_MASK))) != 0U) ?
			1U : 0U) != 0)
	{
		if (++tickstart > S_TIMEOUT_VALUE)
			return S_TIMEOUT;
	}

	/*--------------------------------------------------------------------------------------------*/

	/* Initializes the CPU, AHB and APB buses clocks */

	/* RCC System Clock Type */
	#define RCC_CLOCKTYPE_SYSCLK			(0x00000001U)
	#define RCC_CLOCKTYPE_HCLK				(0x00000002U)
	#define RCC_CLOCKTYPE_D1PCLK1			(0x00000004U)
	#define RCC_CLOCKTYPE_PCLK1				(0x00000008U)
	#define RCC_CLOCKTYPE_PCLK2				(0x00000010U)
	#define RCC_CLOCKTYPE_D3PCLK1			(0x00000020U)

	uint32_t ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1
			| RCC_CLOCKTYPE_PCLK2 | RCC_CLOCKTYPE_D3PCLK1 | RCC_CLOCKTYPE_D1PCLK1;

	/* The clock source (SYSCLKS) used as system clock */
	uint32_t SYSCLKSource = RCC_CFGR_SW_PLL1;

	/* The system clock  divider */
	uint32_t SYSCLKDivider = RCC_D1CFGR_D1CPRE_DIV1;

	/* The AHB clock (HCLK) divider. This clock is derived from the system clock (SYSCLK). */
	uint32_t AHBCLKDivider = RCC_D1CFGR_HPRE_DIV2;

	/* The APB3 clock (D1PCLK1) divider. This clock is derived from the AHB clock (HCLK). */
	uint32_t APB3CLKDivider = RCC_D1CFGR_D1PPRE_DIV2;

	/* The APB1 clock (PCLK1) divider. This clock is derived from the AHB clock (HCLK). */
	uint32_t APB1CLKDivider = RCC_D2CFGR_D2PPRE1_DIV2;

	/* The APB2 clock (PCLK2) divider. This clock is derived from the AHB clock (HCLK). */
	uint32_t APB2CLKDivider = RCC_D2CFGR_D2PPRE2_DIV2;

	/* The APB4 clock (D3PCLK1) divider. This clock is derived from the AHB clock (HCLK). */
	uint32_t APB4CLKDivider = RCC_D3CFGR_D3PPRE_DIV2;

	/* FLASH Two Latency cycles */
	uint32_t FLatency = FLASH_ACR_LATENCY_2WS;

	/* Increasing the BUS frequency divider */

	/*-------------------------- D1PCLK1/CDPCLK1 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_D1PCLK1) == RCC_CLOCKTYPE_D1PCLK1)
	{
		if (APB3CLKDivider > (RCC->D1CFGR & RCC_D1CFGR_D1PPRE))
		{
			MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1PPRE, APB3CLKDivider);
		}
	}

	/*-------------------------- PCLK1 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
	{
		if (APB1CLKDivider > (RCC->D2CFGR & RCC_D2CFGR_D2PPRE1))
		{
			MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE1, APB1CLKDivider);
		}
	}

	/*-------------------------- PCLK2 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
	{
		if (APB2CLKDivider > (RCC->D2CFGR & RCC_D2CFGR_D2PPRE2))
		{
			MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE2, APB2CLKDivider);
		}
	}

	/*-------------------------- D3PCLK1 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_D3PCLK1) == RCC_CLOCKTYPE_D3PCLK1)
	{
		if (APB4CLKDivider > (RCC->D3CFGR & RCC_D3CFGR_D3PPRE))
		{
			MODIFY_REG(RCC->D3CFGR, RCC_D3CFGR_D3PPRE, APB4CLKDivider);
		}
	}

	/*-------------------------- HCLK Configuration --------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
	{
		if (AHBCLKDivider > (RCC->D1CFGR & RCC_D1CFGR_HPRE))
		{
			/* Set the new HCLK clock divider */
			MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_HPRE, AHBCLKDivider);
		}
	}

	/*------------------------- SYSCLK Configuration -------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_SYSCLK) == RCC_CLOCKTYPE_SYSCLK)
	{
		MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1CPRE, SYSCLKDivider);

		/* HSE is selected as System Clock Source */
		if (SYSCLKSource == RCC_CFGR_SW_HSE)
		{
			/* Check the HSE ready flag */
			if ((((((((RCC_FLAG_HSERDY) >> 5U) == 1U) ?
					RCC->CR : ((((RCC_FLAG_HSERDY) >> 5U) == 2U) ?
							RCC->BDCR :
							((((RCC_FLAG_HSERDY) >> 5U) == 3U) ?
									RCC->CSR : ((((RCC_FLAG_HSERDY) >> 5U) == 4U) ?
											RCC->RSR : RCC->CIFR))))
					& (1UL << ((RCC_FLAG_HSERDY) & RCC_FLAG_MASK))) != 0U) ?
					1U : 0U) == 0U)
			{
				return S_ERROR;
			}
		}
		/* PLL is selected as System Clock Source */
		else if (SYSCLKSource == RCC_CFGR_SW_PLL1)
		{
			/* Check the PLL ready flag */
			if ((((((((RCC_FLAG_PLLRDY) >> 5U) == 1U) ?
					RCC->CR : ((((RCC_FLAG_PLLRDY) >> 5U) == 2U) ?
							RCC->BDCR :
							((((RCC_FLAG_PLLRDY) >> 5U) == 3U) ?
									RCC->CSR : ((((RCC_FLAG_PLLRDY) >> 5U) == 4U) ?
											RCC->RSR : RCC->CIFR))))
					& (1UL << ((RCC_FLAG_PLLRDY) & RCC_FLAG_MASK))) == 0U) ?
					1U : 0U) == 0U)
			{
				return S_ERROR;
			}
		}
		/* CSI is selected as System Clock Source */
		else if (SYSCLKSource == RCC_CFGR_SW_CSI)
		{
			/* Check the PLL ready flag */
			if ((((((((RCC_FLAG_CSIRDY) >> 5U) == 1U) ?
					RCC->CR : ((((RCC_FLAG_CSIRDY) >> 5U) == 2U) ?
							RCC->BDCR :
							((((RCC_FLAG_CSIRDY) >> 5U) == 3U) ?
									RCC->CSR : ((((RCC_FLAG_CSIRDY) >> 5U) == 4U) ?
											RCC->RSR : RCC->CIFR))))
					& (1UL << ((RCC_FLAG_CSIRDY) & RCC_FLAG_MASK))) == 0U) ?
					1U : 0U) == 0U)
			{
				return S_ERROR;
			}
		}
		/* HSI is selected as System Clock Source */
		else
		{
			/* Check the PLL ready flag */
			if ((((((((RCC_FLAG_HSIRDY) >> 5U) == 1U) ?
					RCC->CR : ((((RCC_FLAG_HSIRDY) >> 5U) == 2U) ?
							RCC->BDCR :
							((((RCC_FLAG_HSIRDY) >> 5U) == 3U) ?
									RCC->CSR : ((((RCC_FLAG_HSIRDY) >> 5U) == 4U) ?
											RCC->RSR : RCC->CIFR))))
					& (1UL << ((RCC_FLAG_HSIRDY) & RCC_FLAG_MASK))) == 0U) ?
					1U : 0U) == 0U)
			{
				return S_ERROR;
			}
		}

		MODIFY_REG(RCC->CFGR, RCC_CFGR_SW, SYSCLKSource);

		/* Get Start Tick*/
		tickstart = 0;

		while ((uint32_t)(RCC->CFGR & RCC_CFGR_SWS) != (SYSCLKSource << RCC_CFGR_SWS_Pos))
		{
			if (++tickstart > S_TIMEOUT_VALUE)
				return S_TIMEOUT;
		}

	}

	/* Decreasing the BUS frequency divider */
	/*-------------------------- HCLK Configuration --------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_HCLK) == RCC_CLOCKTYPE_HCLK)
	{
		if (AHBCLKDivider < (RCC->D1CFGR & RCC_D1CFGR_HPRE))
		{
			/* Set the new HCLK clock divider */
			MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_HPRE, AHBCLKDivider);
		}
	}

	/* Decreasing the number of wait states because of lower CPU frequency */
	if (FLatency < READ_BIT((FLASH->ACR), FLASH_ACR_LATENCY))
	{
		/* Program the new number of wait states to the LATENCY bits in the FLASH_ACR register */
		MODIFY_REG(FLASH->ACR, FLASH_ACR_LATENCY, (uint32_t)FLatency);

		/* Check that the new number of wait states is taken into account to access the Flash
		 memory by reading the FLASH_ACR register */
		if (READ_BIT((FLASH->ACR), FLASH_ACR_LATENCY) != FLatency)
		{
			return S_ERROR;
		}
	}

	/*-------------------------- D1PCLK1/CDPCLK Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_D1PCLK1) == RCC_CLOCKTYPE_D1PCLK1)
	{
		if (APB3CLKDivider < (RCC->D1CFGR & RCC_D1CFGR_D1PPRE))
		{
			MODIFY_REG(RCC->D1CFGR, RCC_D1CFGR_D1PPRE, APB3CLKDivider);
		}
	}

	/*-------------------------- PCLK1 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_PCLK1) == RCC_CLOCKTYPE_PCLK1)
	{
		if (APB1CLKDivider < (RCC->D2CFGR & RCC_D2CFGR_D2PPRE1))
		{
			MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE1, APB1CLKDivider);
		}
	}

	/*-------------------------- PCLK2 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_PCLK2) == RCC_CLOCKTYPE_PCLK2)
	{
		if (APB2CLKDivider < (RCC->D2CFGR & RCC_D2CFGR_D2PPRE2))
		{
			MODIFY_REG(RCC->D2CFGR, RCC_D2CFGR_D2PPRE2, APB2CLKDivider);
		}
	}

	/*-------------------------- D3PCLK1/SRDPCLK1 Configuration ---------------------------*/
	if ((ClockType & RCC_CLOCKTYPE_D3PCLK1) == RCC_CLOCKTYPE_D3PCLK1)
	{
		if (APB4CLKDivider < (RCC->D3CFGR & RCC_D3CFGR_D3PPRE))
		{
			MODIFY_REG(RCC->D3CFGR, RCC_D3CFGR_D3PPRE, APB4CLKDivider);
		}
	}

	uint32_t common_system_clock = HAL_RCC_GetSysClockFreq()
			>> ((D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_D1CPRE) >> RCC_D1CFGR_D1CPRE_Pos])
					& 0x1FU);

	SystemD2Clock = common_system_clock
			>> ((D1CorePrescTable[(RCC->D1CFGR & RCC_D1CFGR_HPRE) >> RCC_D1CFGR_HPRE_Pos]) & 0x1FU);

	/* Update the SystemCoreClock global variable */
	SystemCoreClock = common_system_clock;

	/*--------------------------------------------------------------------------------------------*/

	#define RCC_PERIPHCLK_RNG			(0x00020000U)
	#define RCC_PERIPHCLK_LTDC			(0x20000000U)
	#define RCC_PERIPHCLK_SPI5			(0x00002000U)
	#define RCC_PERIPHCLK_I2C2			(0x00000008U)
	#define RCC_PERIPHCLK_USB			(0x00040000U)
	#define RCC_PERIPHCLK_FMC			(0x01000000U)

	uint32_t PeriphClockSelection = RCC_PERIPHCLK_LTDC | RCC_PERIPHCLK_RNG | RCC_PERIPHCLK_SPI5
			| RCC_PERIPHCLK_I2C2 | RCC_PERIPHCLK_USB | RCC_PERIPHCLK_FMC;

	/* Division factor for PLL3 VCO input clock. Must be a number between 1 and 63. */
	uint32_t PLL3M = 25;

	/* Multiplication factor for PLL3 VCO output clock. Must be between 4 and 512. */
	uint32_t PLL3N = 150;

	/* Division factor for system clock. Must be between 2 and 128. Odd division factors are not allowed. */
	uint32_t PLL3P = 2;

	/* Division factor for peripheral clocks. Must be between 1 and 128. */
	uint32_t PLL3Q = 5;

	/* Division factor for peripheral clocks. Must be between 1 and 128. */
	uint32_t PLL3R = 5;

	/* PLL3 clock Input range. Must be a value of RCC PLL3 VCI Range. */
	uint32_t PLL3RGE = RCC_PLLCFGR_PLL3RGE_0;		/* Clock range frequency between 1 and 2 MHz */

	/* PLL3 clock Output range. Must be a value of RCC PLL3 VCO Range. */
	uint32_t PLL3VCOSEL = RCC_PLLCFGR_PLL3VCOSEL;

	/* Fractional Part Of The Multiplication Factor for PLL3 VCO. Should be between 0 and 8191 */
	uint32_t PLL3FRACN = 0;

	#define RCC_FMCCLKSOURCE_D1HCLK				(0x00000000U)
	#define RCC_SPI45CLKSOURCE_D2PCLK1			(0x00000000U)
	#define RCC_I2C123CLKSOURCE_D2PCLK1			(0x00000000U)

	/*------------------------------------------- LTDC -------------------------------------------*/

	/* Disable PLL3. */
	CLEAR_BIT(RCC->CR, RCC_CR_PLL3ON);

	/* Get Start Tick. */
	tickstart = 0;

	/* Wait till PLL3 is ready */
	while ((((((((RCC_FLAG_PLL3RDY) >> 5U) == 1U) ?
			RCC->CR : ((((RCC_FLAG_PLL3RDY) >> 5U) == 2U) ?
					RCC->BDCR :
					((((RCC_FLAG_PLL3RDY) >> 5U) == 3U) ?
							RCC->CSR : ((((RCC_FLAG_PLL3RDY) >> 5U) == 4U) ?
									RCC->RSR : RCC->CIFR))))
			& (1UL << ((RCC_FLAG_PLL3RDY) & RCC_FLAG_MASK))) != 0U) ?
			1U : 0U) != 0)
	{
		if (++tickstart > S_TIMEOUT_VALUE)
			return S_TIMEOUT;
	}

	/* Configure the PLL3  multiplication and division factors. */
	MODIFY_REG(RCC->PLLCKSELR, (RCC_PLLCKSELR_DIVM3), (PLL3M <<20U));
	WRITE_REG(RCC->PLL3DIVR, (((PLL3N - 1U ) & RCC_PLL3DIVR_N3) |
			(((PLL3P -1U ) << 9U) & RCC_PLL3DIVR_P3) | (((PLL3Q -1U) << 16U) & RCC_PLL3DIVR_Q3) |
					(((PLL3R - 1U) << 24U) & RCC_PLL3DIVR_R3)));

	/* Select PLL3 input reference frequency range: VCI */
	MODIFY_REG(RCC->PLLCFGR, RCC_PLLCFGR_PLL3RGE, PLL3RGE);

	/* Select PLL3 output frequency range: VCO (RCC_PLL3VCOMEDIUM: Range frequency is between 150 and 420 MHz) */
	MODIFY_REG(RCC->PLLCFGR, RCC_PLLCFGR_PLL3VCOSEL, PLL3VCOSEL);

	/* Disable PLL3FRACN: Fractional Part Of The Multiplication Factor of PLL3 VCO. */
	CLEAR_BIT(RCC->PLLCFGR, RCC_PLLCFGR_PLL3FRACEN);

	/* Configures PLL3 clock Fractional Part Of The Multiplication Factor. */
	MODIFY_REG(RCC->PLL3FRACR, RCC_PLL3FRACR_FRACN3, (uint32_t)PLL3FRACN << RCC_PLL3FRACR_FRACN3_Pos);

	/* Enable PLL3FRACN: Fractional Part Of The Multiplication Factor of PLL3 VCO. */
	SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_PLL3FRACEN);

	#define DIVIDER_P_UPDATE			0U
	#define DIVIDER_Q_UPDATE			1U
	#define DIVIDER_R_UPDATE			2U

	uint32_t Divider = DIVIDER_R_UPDATE;

	/* Enable the PLL3 clock output. */
	if (Divider == DIVIDER_P_UPDATE)
	{
		SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVP3EN);
	}
	else if (Divider == DIVIDER_Q_UPDATE)
	{
		SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVQ3EN);
	}
	else
	{
		SET_BIT(RCC->PLLCFGR, RCC_PLLCFGR_DIVR3EN);
	}

	/* Enable  PLL3. */
	SET_BIT(RCC->CR, RCC_CR_PLL3ON);

	/* Get Start Tick. */
	tickstart = 0;

	/* Wait till PLL3 is ready. */
	while ((((((((RCC_FLAG_PLL3RDY) >> 5U) == 1U) ?
			RCC->CR : ((((RCC_FLAG_PLL3RDY) >> 5U) == 2U) ?
					RCC->BDCR :
					((((RCC_FLAG_PLL3RDY) >> 5U) == 3U) ?
							RCC->CSR : ((((RCC_FLAG_PLL3RDY) >> 5U) == 4U) ?
									RCC->RSR : RCC->CIFR))))
			& (1UL << ((RCC_FLAG_PLL3RDY) & RCC_FLAG_MASK))) != 0U) ?
			1U : 0U) == 0)
	{
		if (++tickstart > S_TIMEOUT_VALUE)
			return S_TIMEOUT;
	}

	/*--------------------------------------------------------------------------------------------*/

	/* Enable the USB voltage detector */
	SET_BIT (PWR->CR3, PWR_CR3_USB33DEN);

	return S_OK;
}

void GPIO_BaseInit(void)
{
	// включим тактирование порта 'PB'
	RCC->AHB4ENR |= RCC_AHB4ENR_GPIOBEN;

	// обнулим поле 'MODER1'
	GPIOB->MODER &= ~GPIO_MODER_MODE1;

	// пин 'PB1' настраиваем как 'push-pull' ('general-purpose', #6.4.1, табл. 21 даташита)
	GPIOB->MODER |= GPIO_MODER_MODE1_0;

	// устанавливаем '0' на пине 'PB1' (анод светодиода подключен на +3.3V)
	GPIOB->BSRR |= GPIO_BSRR_BR1;
}

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 minutes ago, AleksBak said:

Возможно пропустил включение тактирования модуля NVIC

Насколько я знаю, такирование NVIC не включается, т.к. прерывания доступны после старта ядра Cortex. Не вдаваясь в суть вашего кода скажу, что для возникновения прерыания необходимо:

1. Включить данное прерывание в периферии.

2. Включить данное прерывание в NVIC (здесь сознательно ничего не говорю о выставлении приоритета и очистке ожидающего прерывания).

3. Глобально прерывания не должны быть запрещены.

4. Вход в обработчик произойдёт, как только к трём первым условиям будет выставлен флаг прерывания периферии в статусном регистре.

Поэтому, вы в отладчике можете вручную в регистре ISR ткнуть фалжок, и посмотреть, перейдёт ли процессор на ваш обработчик. Там в таблице векторов можно поставить точку останова. Так вы хотя бы будете знать, что минимум условий у вас соблюдён.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

22 минуты назад, haker_fox сказал:

Поэтому, вы в отладчике можете вручную в регистре ISR ткнуть фалжок, и посмотреть, перейдёт ли процессор на ваш обработчик.

Использую отладчик так как Вы и описали. В результате - не переходит и не возникает это прерывание. Все 3 первые из Ваших перечисленных пунктов в коде у меня (см. код выше) вроде выполнены. Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

24 минуты назад, haker_fox сказал:

...

4. Вход в обработчик произойдёт, как только к трём первым условиям будет выставлен флаг прерывания периферии в статусном регистре.

5. Задать положение таблицы прерываний.

6. Прописать соответствующий вектор таблицы прерываний на нужный ISR.

7. Отделить мух от котлет определить в чём именно проблема: с вызовом ISR или настройкой таймера? Для чего использовать соответствующие регистры NVIC (для просмотра статуса ожидающего прерывания и для программного возбуждения прерывания).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 минуты назад, jcxz сказал:

5. Задать положение таблицы прерываний.

6. Прописать соответствующий вектор таблицы прерываний на нужный ISR.

Это все вроде происходит в коде (извините про него забыл привести инф-цию) - "startup_stm32h743iitx.s"

Скрытый текст

/**
 ******************************************************************************
 * @file      startup_stm32h743iitx.s
 * @author    Auto-generated by STM32CubeIDE
 * @brief     STM32H743IITx device vector table for GCC toolchain.
 *            This module performs:
 *                - Set the initial SP
 *                - Set the initial PC == Reset_Handler,
 *                - Set the vector table entries with the exceptions ISR address
 *                - Branches to main in the C library (which eventually
 *                  calls main()).
 ******************************************************************************
 * @attention
 *
 * <h2><center>&copy; Copyright (c) 2020 STMicroelectronics.
 * All rights reserved.</center></h2>
 *
 * This software component is licensed by ST under BSD 3-Clause license,
 * the "License"; You may not use this file except in compliance with the
 * License. You may obtain a copy of the License at:
 *                        opensource.org/licenses/BSD-3-Clause
 *
 ******************************************************************************
 */

.syntax unified
.cpu cortex-m7
.fpu softvfp
.thumb

.global g_pfnVectors
.global Default_Handler

/* start address for the initialization values of the .data section.
defined in linker script */
.word _sidata
/* start address for the .data section. defined in linker script */
.word _sdata
/* end address for the .data section. defined in linker script */
.word _edata
/* start address for the .bss section. defined in linker script */
.word _sbss
/* end address for the .bss section. defined in linker script */
.word _ebss

/**
 * @brief  This is the code that gets called when the processor first
 *          starts execution following a reset event. Only the absolutely
 *          necessary set is performed, after which the application
 *          supplied main() routine is called.
 * @param  None
 * @retval : None
*/

  .section .text.Reset_Handler
  .weak Reset_Handler
  .type Reset_Handler, %function
Reset_Handler:
  ldr   r0, =_estack
  mov   sp, r0          /* set stack pointer */
/* Call the clock system intitialization function.*/
  bl  SystemInit

/* Copy the data segment initializers from flash to SRAM */
  ldr r0, =_sdata
  ldr r1, =_edata
  ldr r2, =_sidata
  movs r3, #0
  b LoopCopyDataInit

CopyDataInit:
  ldr r4, [r2, r3]
  str r4, [r0, r3]
  adds r3, r3, #4

LoopCopyDataInit:
  adds r4, r0, r3
  cmp r4, r1
  bcc CopyDataInit

/* Zero fill the bss segment. */
  ldr r2, =_sbss
  ldr r4, =_ebss
  movs r3, #0
  b LoopFillZerobss

FillZerobss:
  str  r3, [r2]
  adds r2, r2, #4

LoopFillZerobss:
  cmp r2, r4
  bcc FillZerobss

/* Call static constructors */
  bl __libc_init_array
/* Call the application's entry point.*/
  bl main

LoopForever:
    b LoopForever

  .size Reset_Handler, .-Reset_Handler

/**
 * @brief  This is the code that gets called when the processor receives an
 *         unexpected interrupt.  This simply enters an infinite loop, preserving
 *         the system state for examination by a debugger.
 *
 * @param  None
 * @retval : None
*/
  .section .text.Default_Handler,"ax",%progbits
Default_Handler:
Infinite_Loop:
  b Infinite_Loop
  .size Default_Handler, .-Default_Handler

/******************************************************************************
*
* The STM32H743IITx vector table.  Note that the proper constructs
* must be placed on this to ensure that it ends up at physical address
* 0x0000.0000.
*
******************************************************************************/
  .section .isr_vector,"a",%progbits
  .type g_pfnVectors, %object
  .size g_pfnVectors, .-g_pfnVectors

g_pfnVectors:
  .word _estack
  .word Reset_Handler
  .word NMI_Handler
  .word HardFault_Handler
  .word	MemManage_Handler
  .word	BusFault_Handler
  .word	UsageFault_Handler
  .word	0
  .word	0
  .word	0
  .word	0
  .word	SVC_Handler
  .word	DebugMon_Handler
  .word	0
  .word	PendSV_Handler
  .word	SysTick_Handler
  .word	WWDG1_IRQHandler                 			/* Window Watchdog interrupt                   */
  .word	PVD_PVM_IRQHandler               			/* PVD through EXTI line                       */
  .word	RTC_TAMP_STAMP_CSS_LSE_IRQHandler			/* RTC tamper, timestamp                       */
  .word	RTC_WKUP_IRQHandler              			/* RTC Wakeup interrupt                        */
  .word	FLASH_IRQHandler                 			/* Flash memory                                */
  .word	RCC_IRQHandler                   			/* RCC global interrupt                        */
  .word	EXTI0_IRQHandler                 			/* EXTI Line 0 interrupt                       */
  .word	EXTI1_IRQHandler                 			/* EXTI Line 1 interrupt                       */
  .word	EXTI2_IRQHandler                 			/* EXTI Line 2 interrupt                       */
  .word	EXTI3_IRQHandler                 			/* EXTI Line 3interrupt                        */
  .word	EXTI4_IRQHandler                 			/* EXTI Line 4interrupt                        */
  .word	DMA_STR0_IRQHandler              			/* DMA1 Stream0                                */
  .word	DMA_STR1_IRQHandler              			/* DMA1 Stream1                                */
  .word	DMA_STR2_IRQHandler              			/* DMA1 Stream2                                */
  .word	DMA_STR3_IRQHandler              			/* DMA1 Stream3                                */
  .word	DMA_STR4_IRQHandler              			/* DMA1 Stream4                                */
  .word	DMA_STR5_IRQHandler              			/* DMA1 Stream5                                */
  .word	DMA_STR6_IRQHandler              			/* DMA1 Stream6                                */
  .word	ADC1_2_IRQHandler                			/* ADC1 and ADC2                               */
  .word	FDCAN1_IT0_IRQHandler            			/* FDCAN1 Interrupt 0                          */
  .word	FDCAN2_IT0_IRQHandler            			/* FDCAN2 Interrupt 0                          */
  .word	FDCAN1_IT1_IRQHandler            			/* FDCAN1 Interrupt 1                          */
  .word	FDCAN2_IT1_IRQHandler            			/* FDCAN2 Interrupt 1                          */
  .word	EXTI9_5_IRQHandler               			/* EXTI Line[9:5] interrupts                   */
  .word	TIM1_BRK_IRQHandler              			/* TIM1 break interrupt                        */
  .word	TIM1_UP_IRQHandler               			/* TIM1 update interrupt                       */
  .word	TIM1_TRG_COM_IRQHandler          			/* TIM1 trigger and commutation                */
  .word	TIM_CC_IRQHandler                			/* TIM1 capture / compare                      */
  .word	TIM2_IRQHandler                  			/* TIM2 global interrupt                       */
  .word	TIM3_IRQHandler                  			/* TIM3 global interrupt                       */
  .word	TIM4_IRQHandler                  			/* TIM4 global interrupt                       */
  .word	I2C1_EV_IRQHandler               			/* I2C1 event interrupt                        */
  .word	I2C1_ER_IRQHandler               			/* I2C1 error interrupt                        */
  .word	I2C2_EV_IRQHandler               			/* I2C2 event interrupt                        */
  .word	I2C2_ER_IRQHandler               			/* I2C2 error interrupt                        */
  .word	SPI1_IRQHandler                  			/* SPI1 global interrupt                       */
  .word	SPI2_IRQHandler                  			/* SPI2 global interrupt                       */
  .word	USART1_IRQHandler                			/* USART1 global interrupt                     */
  .word	USART2_IRQHandler                			/* USART2 global interrupt                     */
  .word	USART3_IRQHandler                			/* USART3 global interrupt                     */
  .word	EXTI15_10_IRQHandler             			/* EXTI Line[15:10] interrupts                 */
  .word	RTC_ALARM_IRQHandler             			/* RTC alarms (A and B)                        */
  .word	0                                			/* Reserved                                    */
  .word	TIM8_BRK_TIM12_IRQHandler        			/* TIM8 and 12 break global                    */
  .word	TIM8_UP_TIM13_IRQHandler         			/* TIM8 and 13 update global                   */
  .word	TIM8_TRG_COM_TIM14_IRQHandler    			/* TIM8 and 14 trigger /commutation and global */
  .word	TIM8_CC_IRQHandler               			/* TIM8 capture / compare                      */
  .word	DMA1_STR7_IRQHandler             			/* DMA1 Stream7                                */
  .word	FMC_IRQHandler                   			/* FMC global interrupt                        */
  .word	SDMMC1_IRQHandler                			/* SDMMC global interrupt                      */
  .word	TIM5_IRQHandler                  			/* TIM5 global interrupt                       */
  .word	SPI3_IRQHandler                  			/* SPI3 global interrupt                       */
  .word	UART4_IRQHandler                 			/* UART4 global interrupt                      */
  .word	UART5_IRQHandler                 			/* UART5 global interrupt                      */
  .word	TIM6_DAC_IRQHandler              			/* TIM6 global interrupt                       */
  .word	TIM7_IRQHandler                  			/* TIM7 global interrupt                       */
  .word	DMA2_STR0_IRQHandler             			/* DMA2 Stream0 interrupt                      */
  .word	DMA2_STR1_IRQHandler             			/* DMA2 Stream1 interrupt                      */
  .word	DMA2_STR2_IRQHandler             			/* DMA2 Stream2 interrupt                      */
  .word	DMA2_STR3_IRQHandler             			/* DMA2 Stream3 interrupt                      */
  .word	DMA2_STR4_IRQHandler             			/* DMA2 Stream4 interrupt                      */
  .word	ETH_IRQHandler                   			/* Ethernet global interrupt                   */
  .word	ETH_WKUP_IRQHandler              			/* Ethernet wakeup through EXTI                */
  .word	FDCAN_CAL_IRQHandler             			/* CAN2TX interrupts                           */
  .word	0                                			/* Reserved                                    */
  .word	0                                			/* Reserved                                    */
  .word	0                                			/* Reserved                                    */
  .word	0                                			/* Reserved                                    */
  .word	DMA2_STR5_IRQHandler             			/* DMA2 Stream5 interrupt                      */
  .word	DMA2_STR6_IRQHandler             			/* DMA2 Stream6 interrupt                      */
  .word	DMA2_STR7_IRQHandler             			/* DMA2 Stream7 interrupt                      */
  .word	USART6_IRQHandler                			/* USART6 global interrupt                     */
  .word	I2C3_EV_IRQHandler               			/* I2C3 event interrupt                        */
  .word	I2C3_ER_IRQHandler               			/* I2C3 error interrupt                        */
  .word	OTG_HS_EP1_OUT_IRQHandler        			/* OTG_HS out global interrupt                 */
  .word	OTG_HS_EP1_IN_IRQHandler         			/* OTG_HS in global interrupt                  */
  .word	OTG_HS_WKUP_IRQHandler           			/* OTG_HS wakeup interrupt                     */
  .word	OTG_HS_IRQHandler                			/* OTG_HS global interrupt                     */
  .word	DCMI_IRQHandler                  			/* DCMI global interrupt                       */
  .word	0                                			/* Reserved                                    */
  .word	0                                			/* Reserved                                    */
  .word	FPU_IRQHandler                   			/* Floating point unit interrupt               */
  .word	UART7_IRQHandler                 			/* UART7 global interrupt                      */
  .word	UART8_IRQHandler                 			/* UART8 global interrupt                      */
  .word	SPI4_IRQHandler                  			/* SPI4 global interrupt                       */
  .word	SPI5_IRQHandler                  			/* SPI5 global interrupt                       */
  .word	SPI6_IRQHandler                  			/* SPI6 global interrupt                       */
  .word	SAI1_IRQHandler                  			/* SAI1 global interrupt                       */
  .word	LTDC_IRQHandler                  			/* LCD-TFT global interrupt                    */
  .word	LTDC_ER_IRQHandler               			/* LCD-TFT error interrupt                     */
  .word	DMA2D_IRQHandler                 			/* DMA2D global interrupt                      */
  .word	SAI2_IRQHandler                  			/* SAI2 global interrupt                       */
  .word	QUADSPI_IRQHandler               			/* QuadSPI global interrupt                    */
  .word	LPTIM1_IRQHandler                			/* LPTIM1 global interrupt                     */
  .word	CEC_IRQHandler                   			/* HDMI-CEC global interrupt                   */
  .word	I2C4_EV_IRQHandler               			/* I2C4 event interrupt                        */
  .word	I2C4_ER_IRQHandler               			/* I2C4 error interrupt                        */
  .word	SPDIF_IRQHandler                 			/* SPDIFRX global interrupt                    */
  .word	OTG_FS_EP1_OUT_IRQHandler        			/* OTG_FS out global interrupt                 */
  .word	OTG_FS_EP1_IN_IRQHandler         			/* OTG_FS in global interrupt                  */
  .word	OTG_FS_WKUP_IRQHandler           			/* OTG_FS wakeup                               */
  .word	OTG_FS_IRQHandler                			/* OTG_FS global interrupt                     */
  .word	DMAMUX1_OV_IRQHandler            			/* DMAMUX1 overrun interrupt                   */
  .word	HRTIM1_MST_IRQHandler            			/* HRTIM1 master timer interrupt               */
  .word	HRTIM1_TIMA_IRQHandler           			/* HRTIM1 timer A interrupt                    */
  .word	HRTIM_TIMB_IRQHandler            			/* HRTIM1 timer B interrupt                    */
  .word	HRTIM1_TIMC_IRQHandler           			/* HRTIM1 timer C interrupt                    */
  .word	HRTIM1_TIMD_IRQHandler           			/* HRTIM1 timer D interrupt                    */
  .word	HRTIM_TIME_IRQHandler            			/* HRTIM1 timer E interrupt                    */
  .word	HRTIM1_FLT_IRQHandler            			/* HRTIM1 fault interrupt                      */
  .word	DFSDM1_FLT0_IRQHandler           			/* DFSDM1 filter 0 interrupt                   */
  .word	DFSDM1_FLT1_IRQHandler           			/* DFSDM1 filter 1 interrupt                   */
  .word	DFSDM1_FLT2_IRQHandler           			/* DFSDM1 filter 2 interrupt                   */
  .word	DFSDM1_FLT3_IRQHandler           			/* DFSDM1 filter 3 interrupt                   */
  .word	SAI3_IRQHandler                  			/* SAI3 global interrupt                       */
  .word	SWPMI1_IRQHandler                			/* SWPMI global interrupt                      */
  .word	TIM15_IRQHandler                 			/* TIM15 global interrupt                      */
  .word	TIM16_IRQHandler                 			/* TIM16 global interrupt                      */
  .word	TIM17_IRQHandler                 			/* TIM17 global interrupt                      */
  .word	MDIOS_WKUP_IRQHandler            			/* MDIOS wakeup                                */
  .word	MDIOS_IRQHandler                 			/* MDIOS global interrupt                      */
  .word	JPEG_IRQHandler                  			/* JPEG global interrupt                       */
  .word	MDMA_IRQHandler                  			/* MDMA                                        */
  .word	0                                			/* Reserved                                    */
  .word	SDMMC_IRQHandler                 			/* SDMMC global interrupt                      */
  .word	HSEM0_IRQHandler                 			/* HSEM global interrupt 1                     */
  .word	0                                			/* Reserved                                    */
  .word	ADC3_IRQHandler                  			/* ADC3 global interrupt                       */
  .word	DMAMUX2_OVR_IRQHandler           			/* DMAMUX2 overrun interrupt                   */
  .word	BDMA_CH1_IRQHandler              			/* BDMA channel 1 interrupt                    */
  .word	BDMA_CH2_IRQHandler              			/* BDMA channel 2 interrupt                    */
  .word	BDMA_CH3_IRQHandler              			/* BDMA channel 3 interrupt                    */
  .word	BDMA_CH4_IRQHandler              			/* BDMA channel 4 interrupt                    */
  .word	BDMA_CH5_IRQHandler              			/* BDMA channel 5 interrupt                    */
  .word	BDMA_CH6_IRQHandler              			/* BDMA channel 6 interrupt                    */
  .word	BDMA_CH7_IRQHandler              			/* BDMA channel 7 interrupt                    */
  .word	BDMA_CH8_IRQHandler              			/* BDMA channel 8 interrupt                    */
  .word	COMP_IRQHandler                  			/* COMP1 and COMP2                             */
  .word	LPTIM2_IRQHandler                			/* LPTIM2 timer interrupt                      */
  .word	LPTIM3_IRQHandler                			/* LPTIM2 timer interrupt                      */
  .word	LPTIM4_IRQHandler                			/* LPTIM2 timer interrupt                      */
  .word	LPTIM5_IRQHandler                			/* LPTIM2 timer interrupt                      */
  .word	LPUART_IRQHandler                			/* LPUART global interrupt                     */
  .word	WWDG1_RST_IRQHandler             			/* Window Watchdog interrupt                   */
  .word	CRS_IRQHandler                   			/* Clock Recovery System globa                 */
  .word	0                                			/* Reserved                                    */
  .word	SAI4_IRQHandler                  			/* SAI4 global interrupt                       */
  .word	0                                			/* Reserved                                    */
  .word	0                                			/* Reserved                                    */
  .word	WKUP_IRQHandler                  			/* WKUP1 to WKUP6 pins                         */

/*******************************************************************************
*
* Provide weak aliases for each Exception handler to the Default_Handler.
* As they are weak aliases, any function with the same name will override
* this definition.
*
*******************************************************************************/

	.weak	NMI_Handler
	.thumb_set NMI_Handler,Default_Handler

	.weak	HardFault_Handler
	.thumb_set HardFault_Handler,Default_Handler

	.weak	MemManage_Handler
	.thumb_set MemManage_Handler,Default_Handler

	.weak	BusFault_Handler
	.thumb_set BusFault_Handler,Default_Handler

	.weak	UsageFault_Handler
	.thumb_set UsageFault_Handler,Default_Handler

	.weak	SVC_Handler
	.thumb_set SVC_Handler,Default_Handler

	.weak	DebugMon_Handler
	.thumb_set DebugMon_Handler,Default_Handler

	.weak	PendSV_Handler
	.thumb_set PendSV_Handler,Default_Handler

	.weak	SysTick_Handler
	.thumb_set SysTick_Handler,Default_Handler

	.weak	WWDG1_IRQHandler
	.thumb_set WWDG1_IRQHandler,Default_Handler

	.weak	PVD_PVM_IRQHandler
	.thumb_set PVD_PVM_IRQHandler,Default_Handler

	.weak	RTC_TAMP_STAMP_CSS_LSE_IRQHandler
	.thumb_set RTC_TAMP_STAMP_CSS_LSE_IRQHandler,Default_Handler

	.weak	RTC_WKUP_IRQHandler
	.thumb_set RTC_WKUP_IRQHandler,Default_Handler

	.weak	FLASH_IRQHandler
	.thumb_set FLASH_IRQHandler,Default_Handler

	.weak	RCC_IRQHandler
	.thumb_set RCC_IRQHandler,Default_Handler

	.weak	EXTI0_IRQHandler
	.thumb_set EXTI0_IRQHandler,Default_Handler

	.weak	EXTI1_IRQHandler
	.thumb_set EXTI1_IRQHandler,Default_Handler

	.weak	EXTI2_IRQHandler
	.thumb_set EXTI2_IRQHandler,Default_Handler

	.weak	EXTI3_IRQHandler
	.thumb_set EXTI3_IRQHandler,Default_Handler

	.weak	EXTI4_IRQHandler
	.thumb_set EXTI4_IRQHandler,Default_Handler

	.weak	DMA_STR0_IRQHandler
	.thumb_set DMA_STR0_IRQHandler,Default_Handler

	.weak	DMA_STR1_IRQHandler
	.thumb_set DMA_STR1_IRQHandler,Default_Handler

	.weak	DMA_STR2_IRQHandler
	.thumb_set DMA_STR2_IRQHandler,Default_Handler

	.weak	DMA_STR3_IRQHandler
	.thumb_set DMA_STR3_IRQHandler,Default_Handler

	.weak	DMA_STR4_IRQHandler
	.thumb_set DMA_STR4_IRQHandler,Default_Handler

	.weak	DMA_STR5_IRQHandler
	.thumb_set DMA_STR5_IRQHandler,Default_Handler

	.weak	DMA_STR6_IRQHandler
	.thumb_set DMA_STR6_IRQHandler,Default_Handler

	.weak	ADC1_2_IRQHandler
	.thumb_set ADC1_2_IRQHandler,Default_Handler

	.weak	FDCAN1_IT0_IRQHandler
	.thumb_set FDCAN1_IT0_IRQHandler,Default_Handler

	.weak	FDCAN2_IT0_IRQHandler
	.thumb_set FDCAN2_IT0_IRQHandler,Default_Handler

	.weak	FDCAN1_IT1_IRQHandler
	.thumb_set FDCAN1_IT1_IRQHandler,Default_Handler

	.weak	FDCAN2_IT1_IRQHandler
	.thumb_set FDCAN2_IT1_IRQHandler,Default_Handler

	.weak	EXTI9_5_IRQHandler
	.thumb_set EXTI9_5_IRQHandler,Default_Handler

	.weak	TIM1_BRK_IRQHandler
	.thumb_set TIM1_BRK_IRQHandler,Default_Handler

	.weak	TIM1_UP_IRQHandler
	.thumb_set TIM1_UP_IRQHandler,Default_Handler

	.weak	TIM1_TRG_COM_IRQHandler
	.thumb_set TIM1_TRG_COM_IRQHandler,Default_Handler

	.weak	TIM_CC_IRQHandler
	.thumb_set TIM_CC_IRQHandler,Default_Handler

	.weak	TIM2_IRQHandler
	.thumb_set TIM2_IRQHandler,Default_Handler

	.weak	TIM3_IRQHandler
	.thumb_set TIM3_IRQHandler,Default_Handler

	.weak	TIM4_IRQHandler
	.thumb_set TIM4_IRQHandler,Default_Handler

	.weak	I2C1_EV_IRQHandler
	.thumb_set I2C1_EV_IRQHandler,Default_Handler

	.weak	I2C1_ER_IRQHandler
	.thumb_set I2C1_ER_IRQHandler,Default_Handler

	.weak	I2C2_EV_IRQHandler
	.thumb_set I2C2_EV_IRQHandler,Default_Handler

	.weak	I2C2_ER_IRQHandler
	.thumb_set I2C2_ER_IRQHandler,Default_Handler

	.weak	SPI1_IRQHandler
	.thumb_set SPI1_IRQHandler,Default_Handler

	.weak	SPI2_IRQHandler
	.thumb_set SPI2_IRQHandler,Default_Handler

	.weak	USART1_IRQHandler
	.thumb_set USART1_IRQHandler,Default_Handler

	.weak	USART2_IRQHandler
	.thumb_set USART2_IRQHandler,Default_Handler

	.weak	USART3_IRQHandler
	.thumb_set USART3_IRQHandler,Default_Handler

	.weak	EXTI15_10_IRQHandler
	.thumb_set EXTI15_10_IRQHandler,Default_Handler

	.weak	RTC_ALARM_IRQHandler
	.thumb_set RTC_ALARM_IRQHandler,Default_Handler

	.weak	TIM8_BRK_TIM12_IRQHandler
	.thumb_set TIM8_BRK_TIM12_IRQHandler,Default_Handler

	.weak	TIM8_UP_TIM13_IRQHandler
	.thumb_set TIM8_UP_TIM13_IRQHandler,Default_Handler

	.weak	TIM8_TRG_COM_TIM14_IRQHandler
	.thumb_set TIM8_TRG_COM_TIM14_IRQHandler,Default_Handler

	.weak	TIM8_CC_IRQHandler
	.thumb_set TIM8_CC_IRQHandler,Default_Handler

	.weak	DMA1_STR7_IRQHandler
	.thumb_set DMA1_STR7_IRQHandler,Default_Handler

	.weak	FMC_IRQHandler
	.thumb_set FMC_IRQHandler,Default_Handler

	.weak	SDMMC1_IRQHandler
	.thumb_set SDMMC1_IRQHandler,Default_Handler

	.weak	TIM5_IRQHandler
	.thumb_set TIM5_IRQHandler,Default_Handler

	.weak	SPI3_IRQHandler
	.thumb_set SPI3_IRQHandler,Default_Handler

	.weak	UART4_IRQHandler
	.thumb_set UART4_IRQHandler,Default_Handler

	.weak	UART5_IRQHandler
	.thumb_set UART5_IRQHandler,Default_Handler

	.weak	TIM6_DAC_IRQHandler
	.thumb_set TIM6_DAC_IRQHandler,Default_Handler

	.weak	TIM7_IRQHandler
	.thumb_set TIM7_IRQHandler,Default_Handler

	.weak	DMA2_STR0_IRQHandler
	.thumb_set DMA2_STR0_IRQHandler,Default_Handler

	.weak	DMA2_STR1_IRQHandler
	.thumb_set DMA2_STR1_IRQHandler,Default_Handler

	.weak	DMA2_STR2_IRQHandler
	.thumb_set DMA2_STR2_IRQHandler,Default_Handler

	.weak	DMA2_STR3_IRQHandler
	.thumb_set DMA2_STR3_IRQHandler,Default_Handler

	.weak	DMA2_STR4_IRQHandler
	.thumb_set DMA2_STR4_IRQHandler,Default_Handler

	.weak	ETH_IRQHandler
	.thumb_set ETH_IRQHandler,Default_Handler

	.weak	ETH_WKUP_IRQHandler
	.thumb_set ETH_WKUP_IRQHandler,Default_Handler

	.weak	FDCAN_CAL_IRQHandler
	.thumb_set FDCAN_CAL_IRQHandler,Default_Handler

	.weak	DMA2_STR5_IRQHandler
	.thumb_set DMA2_STR5_IRQHandler,Default_Handler

	.weak	DMA2_STR6_IRQHandler
	.thumb_set DMA2_STR6_IRQHandler,Default_Handler

	.weak	DMA2_STR7_IRQHandler
	.thumb_set DMA2_STR7_IRQHandler,Default_Handler

	.weak	USART6_IRQHandler
	.thumb_set USART6_IRQHandler,Default_Handler

	.weak	I2C3_EV_IRQHandler
	.thumb_set I2C3_EV_IRQHandler,Default_Handler

	.weak	I2C3_ER_IRQHandler
	.thumb_set I2C3_ER_IRQHandler,Default_Handler

	.weak	OTG_HS_EP1_OUT_IRQHandler
	.thumb_set OTG_HS_EP1_OUT_IRQHandler,Default_Handler

	.weak	OTG_HS_EP1_IN_IRQHandler
	.thumb_set OTG_HS_EP1_IN_IRQHandler,Default_Handler

	.weak	OTG_HS_WKUP_IRQHandler
	.thumb_set OTG_HS_WKUP_IRQHandler,Default_Handler

	.weak	OTG_HS_IRQHandler
	.thumb_set OTG_HS_IRQHandler,Default_Handler

	.weak	DCMI_IRQHandler
	.thumb_set DCMI_IRQHandler,Default_Handler

	.weak	FPU_IRQHandler
	.thumb_set FPU_IRQHandler,Default_Handler

	.weak	UART7_IRQHandler
	.thumb_set UART7_IRQHandler,Default_Handler

	.weak	UART8_IRQHandler
	.thumb_set UART8_IRQHandler,Default_Handler

	.weak	SPI4_IRQHandler
	.thumb_set SPI4_IRQHandler,Default_Handler

	.weak	SPI5_IRQHandler
	.thumb_set SPI5_IRQHandler,Default_Handler

	.weak	SPI6_IRQHandler
	.thumb_set SPI6_IRQHandler,Default_Handler

	.weak	SAI1_IRQHandler
	.thumb_set SAI1_IRQHandler,Default_Handler

	.weak	LTDC_IRQHandler
	.thumb_set LTDC_IRQHandler,Default_Handler

	.weak	LTDC_ER_IRQHandler
	.thumb_set LTDC_ER_IRQHandler,Default_Handler

	.weak	DMA2D_IRQHandler
	.thumb_set DMA2D_IRQHandler,Default_Handler

	.weak	SAI2_IRQHandler
	.thumb_set SAI2_IRQHandler,Default_Handler

	.weak	QUADSPI_IRQHandler
	.thumb_set QUADSPI_IRQHandler,Default_Handler

	.weak	LPTIM1_IRQHandler
	.thumb_set LPTIM1_IRQHandler,Default_Handler

	.weak	CEC_IRQHandler
	.thumb_set CEC_IRQHandler,Default_Handler

	.weak	I2C4_EV_IRQHandler
	.thumb_set I2C4_EV_IRQHandler,Default_Handler

	.weak	I2C4_ER_IRQHandler
	.thumb_set I2C4_ER_IRQHandler,Default_Handler

	.weak	SPDIF_IRQHandler
	.thumb_set SPDIF_IRQHandler,Default_Handler

	.weak	OTG_FS_EP1_OUT_IRQHandler
	.thumb_set OTG_FS_EP1_OUT_IRQHandler,Default_Handler

	.weak	OTG_FS_EP1_IN_IRQHandler
	.thumb_set OTG_FS_EP1_IN_IRQHandler,Default_Handler

	.weak	OTG_FS_WKUP_IRQHandler
	.thumb_set OTG_FS_WKUP_IRQHandler,Default_Handler

	.weak	OTG_FS_IRQHandler
	.thumb_set OTG_FS_IRQHandler,Default_Handler

	.weak	DMAMUX1_OV_IRQHandler
	.thumb_set DMAMUX1_OV_IRQHandler,Default_Handler

	.weak	HRTIM1_MST_IRQHandler
	.thumb_set HRTIM1_MST_IRQHandler,Default_Handler

	.weak	HRTIM1_TIMA_IRQHandler
	.thumb_set HRTIM1_TIMA_IRQHandler,Default_Handler

	.weak	HRTIM_TIMB_IRQHandler
	.thumb_set HRTIM_TIMB_IRQHandler,Default_Handler

	.weak	HRTIM1_TIMC_IRQHandler
	.thumb_set HRTIM1_TIMC_IRQHandler,Default_Handler

	.weak	HRTIM1_TIMD_IRQHandler
	.thumb_set HRTIM1_TIMD_IRQHandler,Default_Handler

	.weak	HRTIM_TIME_IRQHandler
	.thumb_set HRTIM_TIME_IRQHandler,Default_Handler

	.weak	HRTIM1_FLT_IRQHandler
	.thumb_set HRTIM1_FLT_IRQHandler,Default_Handler

	.weak	DFSDM1_FLT0_IRQHandler
	.thumb_set DFSDM1_FLT0_IRQHandler,Default_Handler

	.weak	DFSDM1_FLT1_IRQHandler
	.thumb_set DFSDM1_FLT1_IRQHandler,Default_Handler

	.weak	DFSDM1_FLT2_IRQHandler
	.thumb_set DFSDM1_FLT2_IRQHandler,Default_Handler

	.weak	DFSDM1_FLT3_IRQHandler
	.thumb_set DFSDM1_FLT3_IRQHandler,Default_Handler

	.weak	SAI3_IRQHandler
	.thumb_set SAI3_IRQHandler,Default_Handler

	.weak	SWPMI1_IRQHandler
	.thumb_set SWPMI1_IRQHandler,Default_Handler

	.weak	TIM15_IRQHandler
	.thumb_set TIM15_IRQHandler,Default_Handler

	.weak	TIM16_IRQHandler
	.thumb_set TIM16_IRQHandler,Default_Handler

	.weak	TIM17_IRQHandler
	.thumb_set TIM17_IRQHandler,Default_Handler

	.weak	MDIOS_WKUP_IRQHandler
	.thumb_set MDIOS_WKUP_IRQHandler,Default_Handler

	.weak	MDIOS_IRQHandler
	.thumb_set MDIOS_IRQHandler,Default_Handler

	.weak	JPEG_IRQHandler
	.thumb_set JPEG_IRQHandler,Default_Handler

	.weak	MDMA_IRQHandler
	.thumb_set MDMA_IRQHandler,Default_Handler

	.weak	SDMMC_IRQHandler
	.thumb_set SDMMC_IRQHandler,Default_Handler

	.weak	HSEM0_IRQHandler
	.thumb_set HSEM0_IRQHandler,Default_Handler

	.weak	ADC3_IRQHandler
	.thumb_set ADC3_IRQHandler,Default_Handler

	.weak	DMAMUX2_OVR_IRQHandler
	.thumb_set DMAMUX2_OVR_IRQHandler,Default_Handler

	.weak	BDMA_CH1_IRQHandler
	.thumb_set BDMA_CH1_IRQHandler,Default_Handler

	.weak	BDMA_CH2_IRQHandler
	.thumb_set BDMA_CH2_IRQHandler,Default_Handler

	.weak	BDMA_CH3_IRQHandler
	.thumb_set BDMA_CH3_IRQHandler,Default_Handler

	.weak	BDMA_CH4_IRQHandler
	.thumb_set BDMA_CH4_IRQHandler,Default_Handler

	.weak	BDMA_CH5_IRQHandler
	.thumb_set BDMA_CH5_IRQHandler,Default_Handler

	.weak	BDMA_CH6_IRQHandler
	.thumb_set BDMA_CH6_IRQHandler,Default_Handler

	.weak	BDMA_CH7_IRQHandler
	.thumb_set BDMA_CH7_IRQHandler,Default_Handler

	.weak	BDMA_CH8_IRQHandler
	.thumb_set BDMA_CH8_IRQHandler,Default_Handler

	.weak	COMP_IRQHandler
	.thumb_set COMP_IRQHandler,Default_Handler

	.weak	LPTIM2_IRQHandler
	.thumb_set LPTIM2_IRQHandler,Default_Handler

	.weak	LPTIM3_IRQHandler
	.thumb_set LPTIM3_IRQHandler,Default_Handler

	.weak	LPTIM4_IRQHandler
	.thumb_set LPTIM4_IRQHandler,Default_Handler

	.weak	LPTIM5_IRQHandler
	.thumb_set LPTIM5_IRQHandler,Default_Handler

	.weak	LPUART_IRQHandler
	.thumb_set LPUART_IRQHandler,Default_Handler

	.weak	WWDG1_RST_IRQHandler
	.thumb_set WWDG1_RST_IRQHandler,Default_Handler

	.weak	CRS_IRQHandler
	.thumb_set CRS_IRQHandler,Default_Handler

	.weak	SAI4_IRQHandler
	.thumb_set SAI4_IRQHandler,Default_Handler

	.weak	WKUP_IRQHandler
	.thumb_set WKUP_IRQHandler,Default_Handler

	.weak	SystemInit

/************************ (C) COPYRIGHT STMicroelectonics *****END OF FILE****/

 

Вообще, у меня дерево и состав проекта сейчас такой (там более-менее стандартные хедеры и пр.):

CubeIDE_screenshot_16-10-20_11-28.thumb.png.cad82e6a7d7dd48f861c39f6e3d5016f.png

10 минут назад, jcxz сказал:

7. Отделить мух от котлет определить в чём именно проблема: с вызовом ISR или настройкой таймера? Для чего использовать соответствующие регистры NVIC (для просмотра статуса ожидающего прерывания и для программного возбуждения прерывания).

Попробую разобраться тут, но пока что не очень получается и поэтому спросил тут, но я еще попробую. Спасибо.

Добавлю - весь код "InitSystemMCU.c" я уже приводил (в самом 1-ом посту - "скрытый текст").

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 минуты назад, AleksBak сказал:

Это все вроде происходит в коде (извините про него забыл привести инф-цию) - "startup_stm32h743iitx.s"

"вроде" - ключевое слово...

Гадать по "дереву проекта" не умею. Предпочитаю проверять по .map-файлу и при помощи J-Link/ST-Link.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 минуты назад, jcxz сказал:

"вроде" - ключевое слово...

Да конечно.

4 минуты назад, jcxz сказал:

Гадать по "дереву проекта" не умею. Предпочитаю проверять по .map-файлу и при помощи J-Link/ST-Link.

Спасибо большое за помощь. Вот содержимое "H7_L01_QSPI.map" этого проекта (я ничтожный хотел выделить красным некоторые места тут - но покамест не получилось):

Скрытый текст

Archive member included to satisfy reference by file (symbol)

c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
                              Src/syscalls.o (__errno)
c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
                              c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o (exit)
c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
                              c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o) (_global_impure_ptr)
c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
                              c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o (__libc_init_array)
c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
                              c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o (memset)

Discarded input sections

 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
 .data          0x0000000000000000        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
 .text          0x0000000000000000       0x74 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .ARM.extab     0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .ARM.exidx     0x0000000000000000        0x8 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .ARM.attributes
                0x0000000000000000       0x1e c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc CMSIS/Src/system_stm32h7xx.o
 .text          0x0000000000000000        0x0 CMSIS/Src/system_stm32h7xx.o
 .data          0x0000000000000000        0x0 CMSIS/Src/system_stm32h7xx.o
 .bss           0x0000000000000000        0x0 CMSIS/Src/system_stm32h7xx.o
 .text.SystemCoreClockUpdate
                0x0000000000000000      0x2c4 CMSIS/Src/system_stm32h7xx.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/InitSystemMCU.o
 .text          0x0000000000000000        0x0 Src/InitSystemMCU.o
 .data          0x0000000000000000        0x0 Src/InitSystemMCU.o
 .bss           0x0000000000000000        0x0 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000      0xa72 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x2e Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x3b Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x22 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x8e Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x51 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0xef Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x6a Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000      0x1df Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x1c Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x22 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0xdf Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000     0x12cd Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000      0x11f Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x19 Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000    0x2538b Src/InitSystemMCU.o
 .debug_macro   0x0000000000000000       0x43 Src/InitSystemMCU.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .group         0x0000000000000000        0xc Src/main.o
 .text          0x0000000000000000        0x0 Src/main.o
 .data          0x0000000000000000        0x0 Src/main.o
 .bss           0x0000000000000000        0x0 Src/main.o
 .rodata.imageLayer2
                0x0000000000000000   0x177000 Src/main.o
 .text.TIM2_IRQhandler
                0x0000000000000000       0x3c Src/main.o
 .debug_macro   0x0000000000000000      0xa72 Src/main.o
 .debug_macro   0x0000000000000000       0x2e Src/main.o
 .debug_macro   0x0000000000000000       0x3b Src/main.o
 .debug_macro   0x0000000000000000       0x22 Src/main.o
 .debug_macro   0x0000000000000000       0x8e Src/main.o
 .debug_macro   0x0000000000000000       0x51 Src/main.o
 .debug_macro   0x0000000000000000       0xef Src/main.o
 .debug_macro   0x0000000000000000       0x6a Src/main.o
 .debug_macro   0x0000000000000000      0x1df Src/main.o
 .debug_macro   0x0000000000000000       0x1c Src/main.o
 .debug_macro   0x0000000000000000       0x22 Src/main.o
 .debug_macro   0x0000000000000000       0xdf Src/main.o
 .debug_macro   0x0000000000000000     0x12cd Src/main.o
 .debug_macro   0x0000000000000000      0x11f Src/main.o
 .debug_macro   0x0000000000000000       0x19 Src/main.o
 .debug_macro   0x0000000000000000    0x2538b Src/main.o
 .debug_macro   0x0000000000000000       0x43 Src/main.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .group         0x0000000000000000        0xc Src/syscalls.o
 .text          0x0000000000000000        0x0 Src/syscalls.o
 .data          0x0000000000000000        0x0 Src/syscalls.o
 .bss           0x0000000000000000        0x0 Src/syscalls.o
 .bss.__env     0x0000000000000000        0x4 Src/syscalls.o
 .data.environ  0x0000000000000000        0x4 Src/syscalls.o
 .text.initialise_monitor_handles
                0x0000000000000000        0xe Src/syscalls.o
 .text._getpid  0x0000000000000000       0x10 Src/syscalls.o
 .text._kill    0x0000000000000000       0x20 Src/syscalls.o
 .text._exit    0x0000000000000000       0x14 Src/syscalls.o
 .text._read    0x0000000000000000       0x3a Src/syscalls.o
 .text._write   0x0000000000000000       0x38 Src/syscalls.o
 .text._close   0x0000000000000000       0x18 Src/syscalls.o
 .text._fstat   0x0000000000000000       0x20 Src/syscalls.o
 .text._isatty  0x0000000000000000       0x16 Src/syscalls.o
 .text._lseek   0x0000000000000000       0x1a Src/syscalls.o
 .text._open    0x0000000000000000       0x1c Src/syscalls.o
 .text._wait    0x0000000000000000       0x1e Src/syscalls.o
 .text._unlink  0x0000000000000000       0x1e Src/syscalls.o
 .text._times   0x0000000000000000       0x18 Src/syscalls.o
 .text._stat    0x0000000000000000       0x20 Src/syscalls.o
 .text._link    0x0000000000000000       0x20 Src/syscalls.o
 .text._fork    0x0000000000000000       0x16 Src/syscalls.o
 .text._execve  0x0000000000000000       0x22 Src/syscalls.o
 .debug_info    0x0000000000000000      0xebd Src/syscalls.o
 .debug_abbrev  0x0000000000000000      0x261 Src/syscalls.o
 .debug_aranges
                0x0000000000000000       0xa8 Src/syscalls.o
 .debug_ranges  0x0000000000000000       0x98 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x243 Src/syscalls.o
 .debug_macro   0x0000000000000000      0xa72 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x22 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x40 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x17 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x94 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x3c Src/syscalls.o
 .debug_macro   0x0000000000000000       0x34 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x57 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x174 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x330 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x52 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x1f Src/syscalls.o
 .debug_macro   0x0000000000000000       0x43 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x20 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x1a3 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x35 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x6a Src/syscalls.o
 .debug_macro   0x0000000000000000       0x1c Src/syscalls.o
 .debug_macro   0x0000000000000000       0x52 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x40 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x40 Src/syscalls.o
 .debug_macro   0x0000000000000000       0xd7 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x1c Src/syscalls.o
 .debug_macro   0x0000000000000000       0x3d Src/syscalls.o
 .debug_macro   0x0000000000000000       0x35 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x122 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x16 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x16 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x29 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x241 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x1c Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x10 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x16 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x145 Src/syscalls.o
 .debug_macro   0x0000000000000000      0x189 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x16 Src/syscalls.o
 .debug_macro   0x0000000000000000       0x88 Src/syscalls.o
 .debug_line    0x0000000000000000      0x739 Src/syscalls.o
 .debug_str     0x0000000000000000     0x88c2 Src/syscalls.o
 .comment       0x0000000000000000       0x7c Src/syscalls.o
 .debug_frame   0x0000000000000000      0x2ac Src/syscalls.o
 .ARM.attributes
                0x0000000000000000       0x37 Src/syscalls.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .group         0x0000000000000000        0xc Src/sysmem.o
 .text          0x0000000000000000        0x0 Src/sysmem.o
 .data          0x0000000000000000        0x0 Src/sysmem.o
 .bss           0x0000000000000000        0x0 Src/sysmem.o
 .bss.__sbrk_heap_end
                0x0000000000000000        0x4 Src/sysmem.o
 .text._sbrk    0x0000000000000000       0x6c Src/sysmem.o
 .debug_info    0x0000000000000000      0x985 Src/sysmem.o
 .debug_abbrev  0x0000000000000000      0x19b Src/sysmem.o
 .debug_aranges
                0x0000000000000000       0x20 Src/sysmem.o
 .debug_ranges  0x0000000000000000       0x10 Src/sysmem.o
 .debug_macro   0x0000000000000000       0xee Src/sysmem.o
 .debug_macro   0x0000000000000000      0xa72 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x10 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x22 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x40 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x17 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x94 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x3c Src/sysmem.o
 .debug_macro   0x0000000000000000       0x34 Src/sysmem.o
 .debug_macro   0x0000000000000000      0x174 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x57 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x52 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x1f Src/sysmem.o
 .debug_macro   0x0000000000000000       0x43 Src/sysmem.o
 .debug_macro   0x0000000000000000       0x20 Src/sysmem.o
 .debug_macro   0x0000000000000000      0x1a3 Src/sysmem.o
 .debug_macro   0x0000000000000000      0x23b Src/sysmem.o
 .debug_macro   0x0000000000000000       0xef Src/sysmem.o
 .debug_macro   0x0000000000000000       0x6a Src/sysmem.o
 .debug_macro   0x0000000000000000      0x1df Src/sysmem.o
 .debug_line    0x0000000000000000      0x4c2 Src/sysmem.o
 .debug_str     0x0000000000000000     0x5f90 Src/sysmem.o
 .comment       0x0000000000000000       0x7c Src/sysmem.o
 .debug_frame   0x0000000000000000       0x34 Src/sysmem.o
 .ARM.attributes
                0x0000000000000000       0x37 Src/sysmem.o
 .text          0x0000000000000000       0x14 Startup/startup_stm32h743iitx.o
 .data          0x0000000000000000        0x0 Startup/startup_stm32h743iitx.o
 .bss           0x0000000000000000        0x0 Startup/startup_stm32h743iitx.o
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .text.__errno  0x0000000000000000        0xc c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .debug_frame   0x0000000000000000       0x20 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .ARM.attributes
                0x0000000000000000       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-errno.o)
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .text.exit     0x0000000000000000       0x28 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .debug_frame   0x0000000000000000       0x28 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .ARM.attributes
                0x0000000000000000       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-exit.o)
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .data._impure_ptr
                0x0000000000000000        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .data.impure_data
                0x0000000000000000       0x60 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .rodata._global_impure_ptr
                0x0000000000000000        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .ARM.attributes
                0x0000000000000000       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-impure.o)
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .text.memset   0x0000000000000000       0x10 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .debug_frame   0x0000000000000000       0x20 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .ARM.attributes
                0x0000000000000000       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-memset.o)
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
 .eh_frame      0x0000000000000000        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
 .ARM.attributes
                0x0000000000000000       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
 .text          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
 .data          0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
 .bss           0x0000000000000000        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o

Memory Configuration

Name             Origin             Length             Attributes
RAM              0x0000000024000000 0x0000000000080000 xrw
ROM              0x0000000008000000 0x0000000000200000 xr
*default*        0x0000000000000000 0xffffffffffffffff

Linker script and memory map

LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard/crt0.o
LOAD CMSIS/Src/system_stm32h7xx.o
LOAD Src/InitSystemMCU.o
LOAD Src/main.o
LOAD Src/syscalls.o
LOAD Src/sysmem.o
LOAD Startup/startup_stm32h743iitx.o
START GROUP
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libm.a
END GROUP
START GROUP
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard\libgcc.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a
END GROUP
START GROUP
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard\libgcc.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libnosys.a
END GROUP
START GROUP
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard\libgcc.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libnosys.a
END GROUP
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtend.o
LOAD c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
                0x0000000024080000                _estack = (ORIGIN (RAM) + LENGTH (RAM))
                0x0000000000000200                _Min_Heap_Size = 0x200
                0x0000000000000400                _Min_Stack_Size = 0x400

.isr_vector     0x0000000008000000      0x298
                0x0000000008000000                . = ALIGN (0x4)
 *(.isr_vector)
 .isr_vector    0x0000000008000000      0x298 Startup/startup_stm32h743iitx.o
                0x0000000008000000                g_pfnVectors
                0x0000000008000298                . = ALIGN (0x4)

.text           0x0000000008000298      0xd44
                0x0000000008000298                . = ALIGN (0x4)
 *(.text)
 .text          0x0000000008000298       0x40 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
 *(.text*)
 .text.SystemInit
                0x00000000080002d8      0x118 CMSIS/Src/system_stm32h7xx.o
                0x00000000080002d8                SystemInit
 .text.HAL_RCC_GetSysClockFreq
                0x00000000080003f0      0x2e4 Src/InitSystemMCU.o
                0x00000000080003f0                HAL_RCC_GetSysClockFreq
 .text.SystemClock_Config
                0x00000000080006d4      0x64c Src/InitSystemMCU.o
                0x00000000080006d4                SystemClock_Config
 .text.GPIO_BaseInit
                0x0000000008000d20       0x4c Src/InitSystemMCU.o
                0x0000000008000d20                GPIO_BaseInit
 .text.__NVIC_EnableIRQ
                0x0000000008000d6c       0x3c Src/main.o
 .text.__NVIC_SetPriority
                0x0000000008000da8       0x54 Src/main.o
 .text.main     0x0000000008000dfc      0x12c Src/main.o
                0x0000000008000dfc                main
 .text.Reset_Handler
                0x0000000008000f28       0x50 Startup/startup_stm32h743iitx.o
                0x0000000008000f28                Reset_Handler
 .text.Default_Handler
                0x0000000008000f78        0x2 Startup/startup_stm32h743iitx.o
                0x0000000008000f78                EXTI2_IRQHandler
                0x0000000008000f78                TIM8_CC_IRQHandler
                0x0000000008000f78                DMA_STR2_IRQHandler
                0x0000000008000f78                DebugMon_Handler
                0x0000000008000f78                UART8_IRQHandler
                0x0000000008000f78                SPI4_IRQHandler
                0x0000000008000f78                HRTIM1_MST_IRQHandler
                0x0000000008000f78                HardFault_Handler
                0x0000000008000f78                DMA_STR5_IRQHandler
                0x0000000008000f78                HRTIM1_FLT_IRQHandler
                0x0000000008000f78                JPEG_IRQHandler
                0x0000000008000f78                SysTick_Handler
                0x0000000008000f78                DMA2_STR1_IRQHandler
                0x0000000008000f78                DMA2_STR5_IRQHandler
                0x0000000008000f78                HRTIM1_TIMD_IRQHandler
                0x0000000008000f78                PendSV_Handler
                0x0000000008000f78                NMI_Handler
                0x0000000008000f78                EXTI3_IRQHandler
                0x0000000008000f78                LPTIM4_IRQHandler
                0x0000000008000f78                TIM8_TRG_COM_TIM14_IRQHandler
                0x0000000008000f78                LPTIM2_IRQHandler
                0x0000000008000f78                DFSDM1_FLT1_IRQHandler
                0x0000000008000f78                DMAMUX2_OVR_IRQHandler
                0x0000000008000f78                TIM8_UP_TIM13_IRQHandler
                0x0000000008000f78                I2C3_ER_IRQHandler
                0x0000000008000f78                DFSDM1_FLT2_IRQHandler
                0x0000000008000f78                MDMA_IRQHandler
                0x0000000008000f78                LPTIM3_IRQHandler
                0x0000000008000f78                EXTI0_IRQHandler
                0x0000000008000f78                I2C2_EV_IRQHandler
                0x0000000008000f78                FPU_IRQHandler
                0x0000000008000f78                DMA_STR1_IRQHandler
                0x0000000008000f78                OTG_HS_WKUP_IRQHandler
                0x0000000008000f78                FDCAN1_IT1_IRQHandler
                0x0000000008000f78                UsageFault_Handler
                0x0000000008000f78                LTDC_ER_IRQHandler
                0x0000000008000f78                ADC1_2_IRQHandler
                0x0000000008000f78                SPI1_IRQHandler
                0x0000000008000f78                BDMA_CH2_IRQHandler
                0x0000000008000f78                TIM6_DAC_IRQHandler
                0x0000000008000f78                DCMI_IRQHandler
                0x0000000008000f78                HRTIM1_TIMC_IRQHandler
                0x0000000008000f78                SDMMC_IRQHandler
                0x0000000008000f78                RTC_ALARM_IRQHandler
                0x0000000008000f78                DMA_STR0_IRQHandler
                0x0000000008000f78                SAI2_IRQHandler
                0x0000000008000f78                DMA2_STR3_IRQHandler
                0x0000000008000f78                DFSDM1_FLT3_IRQHandler
                0x0000000008000f78                USART6_IRQHandler
                0x0000000008000f78                BDMA_CH5_IRQHandler
                0x0000000008000f78                TIM17_IRQHandler
                0x0000000008000f78                BDMA_CH6_IRQHandler
                0x0000000008000f78                USART3_IRQHandler
                0x0000000008000f78                WKUP_IRQHandler
                0x0000000008000f78                BDMA_CH3_IRQHandler
                0x0000000008000f78                LPTIM5_IRQHandler
                0x0000000008000f78                LPUART_IRQHandler
                0x0000000008000f78                UART5_IRQHandler
                0x0000000008000f78                ADC3_IRQHandler
                0x0000000008000f78                DMA_STR6_IRQHandler
                0x0000000008000f78                TIM4_IRQHandler
                0x0000000008000f78                QUADSPI_IRQHandler
                0x0000000008000f78                I2C1_EV_IRQHandler
                0x0000000008000f78                DMA1_STR7_IRQHandler
                0x0000000008000f78                TIM16_IRQHandler
                0x0000000008000f78                UART4_IRQHandler
                0x0000000008000f78                TIM3_IRQHandler
                0x0000000008000f78                RCC_IRQHandler
                0x0000000008000f78                TIM8_BRK_TIM12_IRQHandler
                0x0000000008000f78                TIM1_TRG_COM_IRQHandler
                0x0000000008000f78                Default_Handler
                0x0000000008000f78                HRTIM_TIMB_IRQHandler
                0x0000000008000f78                CEC_IRQHandler
                0x0000000008000f78                EXTI15_10_IRQHandler
                0x0000000008000f78                BDMA_CH4_IRQHandler
                0x0000000008000f78                DMA_STR3_IRQHandler
                0x0000000008000f78                HRTIM_TIME_IRQHandler
                0x0000000008000f78                HRTIM1_TIMA_IRQHandler
                0x0000000008000f78                SPI5_IRQHandler
                0x0000000008000f78                TIM7_IRQHandler
                0x0000000008000f78                SDMMC1_IRQHandler
                0x0000000008000f78                TIM5_IRQHandler
                0x0000000008000f78                SPDIF_IRQHandler
                0x0000000008000f78                TIM15_IRQHandler
                0x0000000008000f78                I2C3_EV_IRQHandler
                0x0000000008000f78                WWDG1_RST_IRQHandler
                0x0000000008000f78                EXTI9_5_IRQHandler
                0x0000000008000f78                DMA2_STR4_IRQHandler
                0x0000000008000f78                RTC_WKUP_IRQHandler
                0x0000000008000f78                DMA2_STR6_IRQHandler
                0x0000000008000f78                LTDC_IRQHandler
                0x0000000008000f78                SAI3_IRQHandler
                0x0000000008000f78                ETH_WKUP_IRQHandler
                0x0000000008000f78                PVD_PVM_IRQHandler
                0x0000000008000f78                SPI2_IRQHandler
                0x0000000008000f78                OTG_HS_EP1_IN_IRQHandler
                0x0000000008000f78                MemManage_Handler
                0x0000000008000f78                DMA2_STR0_IRQHandler
                0x0000000008000f78                SVC_Handler
                0x0000000008000f78                CRS_IRQHandler
                0x0000000008000f78                EXTI4_IRQHandler
                0x0000000008000f78                DMAMUX1_OV_IRQHandler
                0x0000000008000f78                FDCAN2_IT1_IRQHandler
                0x0000000008000f78                DMA_STR4_IRQHandler
                0x0000000008000f78                COMP_IRQHandler
                0x0000000008000f78                DMA2_STR2_IRQHandler
                0x0000000008000f78                ETH_IRQHandler
                0x0000000008000f78                TIM1_UP_IRQHandler
                0x0000000008000f78                DMA2_STR7_IRQHandler
                0x0000000008000f78                OTG_HS_EP1_OUT_IRQHandler
                0x0000000008000f78                SPI6_IRQHandler
                0x0000000008000f78                MDIOS_IRQHandler
                0x0000000008000f78                I2C4_EV_IRQHandler
                0x0000000008000f78                FDCAN2_IT0_IRQHandler
                0x0000000008000f78                BDMA_CH7_IRQHandler
                0x0000000008000f78                FDCAN1_IT0_IRQHandler
                0x0000000008000f78                TIM2_IRQHandler
                0x0000000008000f78                HSEM0_IRQHandler
                0x0000000008000f78                OTG_FS_WKUP_IRQHandler
                0x0000000008000f78                OTG_HS_IRQHandler
                0x0000000008000f78                DMA2D_IRQHandler
                0x0000000008000f78                TIM1_BRK_IRQHandler
                0x0000000008000f78                EXTI1_IRQHandler
                0x0000000008000f78                OTG_FS_EP1_OUT_IRQHandler
                0x0000000008000f78                UART7_IRQHandler
                0x0000000008000f78                MDIOS_WKUP_IRQHandler
                0x0000000008000f78                USART2_IRQHandler
                0x0000000008000f78                DFSDM1_FLT0_IRQHandler
                0x0000000008000f78                SAI4_IRQHandler
                0x0000000008000f78                I2C2_ER_IRQHandler
                0x0000000008000f78                FLASH_IRQHandler
                0x0000000008000f78                WWDG1_IRQHandler
                0x0000000008000f78                BusFault_Handler
                0x0000000008000f78                USART1_IRQHandler
                0x0000000008000f78                OTG_FS_IRQHandler
                0x0000000008000f78                SPI3_IRQHandler
                0x0000000008000f78                OTG_FS_EP1_IN_IRQHandler
                0x0000000008000f78                I2C1_ER_IRQHandler
                0x0000000008000f78                FMC_IRQHandler
                0x0000000008000f78                BDMA_CH1_IRQHandler
                0x0000000008000f78                FDCAN_CAL_IRQHandler
                0x0000000008000f78                SWPMI1_IRQHandler
                0x0000000008000f78                LPTIM1_IRQHandler
                0x0000000008000f78                BDMA_CH8_IRQHandler
                0x0000000008000f78                TIM_CC_IRQHandler
                0x0000000008000f78                I2C4_ER_IRQHandler
                0x0000000008000f78                SAI1_IRQHandler
                0x0000000008000f78                RTC_TAMP_STAMP_CSS_LSE_IRQHandler
 *fill*         0x0000000008000f7a        0x2 
 .text.__libc_init_array
                0x0000000008000f7c       0x48 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
                0x0000000008000f7c                __libc_init_array
 *(.glue_7)
 .glue_7        0x0000000008000fc4        0x0 linker stubs
 *(.glue_7t)
 .glue_7t       0x0000000008000fc4        0x0 linker stubs
 *(.eh_frame)
 .eh_frame      0x0000000008000fc4        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
 *(.init)
 .init          0x0000000008000fc4        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
                0x0000000008000fc4                _init
 .init          0x0000000008000fc8        0x8 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
 *(.fini)
 .fini          0x0000000008000fd0        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
                0x0000000008000fd0                _fini
 .fini          0x0000000008000fd4        0x8 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
                0x0000000008000fdc                . = ALIGN (0x4)
                0x0000000008000fdc                _etext = .

.vfp11_veneer   0x0000000008000fdc        0x0
 .vfp11_veneer  0x0000000008000fdc        0x0 linker stubs

.v4_bx          0x0000000008000fdc        0x0
 .v4_bx         0x0000000008000fdc        0x0 linker stubs

.iplt           0x0000000008000fdc        0x0
 .iplt          0x0000000008000fdc        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o

.rodata         0x0000000008000fdc       0x10
                0x0000000008000fdc                . = ALIGN (0x4)
 *(.rodata)
 *(.rodata*)
 .rodata.D1CorePrescTable
                0x0000000008000fdc       0x10 CMSIS/Src/system_stm32h7xx.o
                0x0000000008000fdc                D1CorePrescTable
                0x0000000008000fec                . = ALIGN (0x4)

.rel.dyn        0x0000000008000fec        0x0
 .rel.iplt      0x0000000008000fec        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o

.ARM.extab      0x0000000008000fec        0x0
                0x0000000008000fec                . = ALIGN (0x4)
 *(.ARM.extab* .gnu.linkonce.armextab.*)
                0x0000000008000fec                . = ALIGN (0x4)

.ARM            0x0000000008000fec        0x0
                0x0000000008000fec                . = ALIGN (0x4)
                0x0000000008000fec                __exidx_start = .
 *(.ARM.exidx*)
                0x0000000008000fec                __exidx_end = .
                0x0000000008000fec                . = ALIGN (0x4)

.preinit_array  0x0000000008000fec        0x0
                0x0000000008000fec                . = ALIGN (0x4)
                0x0000000008000fec                PROVIDE (__preinit_array_start = .)
 *(.preinit_array*)
                0x0000000008000fec                PROVIDE (__preinit_array_end = .)
                0x0000000008000fec                . = ALIGN (0x4)

.init_array     0x0000000008000fec        0x4
                0x0000000008000fec                . = ALIGN (0x4)
                0x0000000008000fec                PROVIDE (__init_array_start = .)
 *(SORT_BY_NAME(.init_array.*))
 *(.init_array*)
 .init_array    0x0000000008000fec        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
                0x0000000008000ff0                PROVIDE (__init_array_end = .)
                0x0000000008000ff0                . = ALIGN (0x4)

.fini_array     0x0000000008000ff0        0x4
                0x0000000008000ff0                . = ALIGN (0x4)
                [!provide]                        PROVIDE (__fini_array_start = .)
 *(SORT_BY_NAME(.fini_array.*))
 *(.fini_array*)
 .fini_array    0x0000000008000ff0        0x4 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
                [!provide]                        PROVIDE (__fini_array_end = .)
                0x0000000008000ff4                . = ALIGN (0x4)
                0x0000000008000ff4                _sidata = LOADADDR (.data)

.data           0x0000000024000000        0x8 load address 0x0000000008000ff4
                0x0000000024000000                . = ALIGN (0x4)
                0x0000000024000000                _sdata = .
 *(.data)
 *(.data*)
 .data.SystemCoreClock
                0x0000000024000000        0x4 CMSIS/Src/system_stm32h7xx.o
                0x0000000024000000                SystemCoreClock
 .data.SystemD2Clock
                0x0000000024000004        0x4 CMSIS/Src/system_stm32h7xx.o
                0x0000000024000004                SystemD2Clock
                0x0000000024000008                . = ALIGN (0x4)
                0x0000000024000008                _edata = .

.igot.plt       0x0000000024000008        0x0 load address 0x0000000008000ffc
 .igot.plt      0x0000000024000008        0x0 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
                0x0000000024000008                . = ALIGN (0x4)

.bss            0x0000000024000008       0x1c load address 0x0000000008000ffc
                0x0000000024000008                _sbss = .
                0x0000000024000008                __bss_start__ = _sbss
 *(.bss)
 .bss           0x0000000024000008       0x1c c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
 *(.bss*)
 *(COMMON)
                0x0000000024000024                . = ALIGN (0x4)
                0x0000000024000024                _ebss = .
                0x0000000024000024                __bss_end__ = _ebss

._user_heap_stack
                0x0000000024000024      0x604 load address 0x0000000008000ffc
                0x0000000024000028                . = ALIGN (0x8)
 *fill*         0x0000000024000024        0x4 
                [!provide]                        PROVIDE (end = .)
                0x0000000024000028                PROVIDE (_end = .)
                0x0000000024000228                . = (. + _Min_Heap_Size)
 *fill*         0x0000000024000028      0x200 
                0x0000000024000628                . = (. + _Min_Stack_Size)
 *fill*         0x0000000024000228      0x400 
                0x0000000024000628                . = ALIGN (0x8)

/DISCARD/
 libc.a(*)
 libm.a(*)
 libgcc.a(*)

.ARM.attributes
                0x0000000000000000       0x2e
 *(.ARM.attributes)
 .ARM.attributes
                0x0000000000000000       0x20 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crti.o
 .ARM.attributes
                0x0000000000000020       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtbegin.o
 .ARM.attributes
                0x0000000000000052       0x37 CMSIS/Src/system_stm32h7xx.o
 .ARM.attributes
                0x0000000000000089       0x37 Src/InitSystemMCU.o
 .ARM.attributes
                0x00000000000000c0       0x37 Src/main.o
 .ARM.attributes
                0x00000000000000f7       0x21 Startup/startup_stm32h743iitx.o
 .ARM.attributes
                0x0000000000000118       0x32 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)
 .ARM.attributes
                0x000000000000014a       0x20 c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/thumb/v7e-m/fpv5/hard/crtn.o
OUTPUT(H7_L01_QSPI.elf elf32-littlearm)

.debug_info     0x0000000000000000     0x3109
 .debug_info    0x0000000000000000     0x14a5 CMSIS/Src/system_stm32h7xx.o
 .debug_info    0x00000000000014a5      0xc96 Src/InitSystemMCU.o
 .debug_info    0x000000000000213b      0xfac Src/main.o
 .debug_info    0x00000000000030e7       0x22 Startup/startup_stm32h743iitx.o

.debug_abbrev   0x0000000000000000      0x532
 .debug_abbrev  0x0000000000000000      0x21d CMSIS/Src/system_stm32h7xx.o
 .debug_abbrev  0x000000000000021d      0x167 Src/InitSystemMCU.o
 .debug_abbrev  0x0000000000000384      0x19c Src/main.o
 .debug_abbrev  0x0000000000000520       0x12 Startup/startup_stm32h743iitx.o

.debug_aranges  0x0000000000000000       0xb8
 .debug_aranges
                0x0000000000000000       0x28 CMSIS/Src/system_stm32h7xx.o
 .debug_aranges
                0x0000000000000028       0x30 Src/InitSystemMCU.o
 .debug_aranges
                0x0000000000000058       0x38 Src/main.o
 .debug_aranges
                0x0000000000000090       0x28 Startup/startup_stm32h743iitx.o

.debug_ranges   0x0000000000000000       0x80
 .debug_ranges  0x0000000000000000       0x18 CMSIS/Src/system_stm32h7xx.o
 .debug_ranges  0x0000000000000018       0x20 Src/InitSystemMCU.o
 .debug_ranges  0x0000000000000038       0x28 Src/main.o
 .debug_ranges  0x0000000000000060       0x20 Startup/startup_stm32h743iitx.o

.debug_macro    0x0000000000000000    0x28701
 .debug_macro   0x0000000000000000      0x186 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000186      0xa72 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000bf8       0x2e CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000c26       0x3b CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000c61       0x22 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000c83       0x8e CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000d11       0x51 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000d62       0xef CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000e51       0x6a CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000000ebb      0x1df CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x000000000000109a       0x1c CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000010b6       0x22 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000010d8       0xdf CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000011b7     0x12cd CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000002484      0x11f CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000025a3       0x19 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000025bc    0x2538b CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027947       0x43 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x000000000002798a       0x46 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000279d0       0x17 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x00000000000279e7       0x3c CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027a23       0x34 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027a57      0x174 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027bcb       0x52 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027c1d       0x1f CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027c3c       0x43 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027c7f       0x20 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027c9f      0x1a3 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x0000000000027e42      0x32a CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x000000000002816c      0x1e1 CMSIS/Src/system_stm32h7xx.o
 .debug_macro   0x000000000002834d      0x25a Src/InitSystemMCU.o
 .debug_macro   0x00000000000285a7       0x10 Src/InitSystemMCU.o
 .debug_macro   0x00000000000285b7       0xf6 Src/main.o
 .debug_macro   0x00000000000286ad       0x16 Src/main.o
 .debug_macro   0x00000000000286c3       0x10 Src/main.o
 .debug_macro   0x00000000000286d3       0x2e Src/main.o

.debug_line     0x0000000000000000     0x108e
 .debug_line    0x0000000000000000      0x5c1 CMSIS/Src/system_stm32h7xx.o
 .debug_line    0x00000000000005c1      0x591 Src/InitSystemMCU.o
 .debug_line    0x0000000000000b52      0x4b8 Src/main.o
 .debug_line    0x000000000000100a       0x84 Startup/startup_stm32h743iitx.o

.debug_str      0x0000000000000000    0xe96cf
 .debug_str     0x0000000000000000    0xe82a9 CMSIS/Src/system_stm32h7xx.o
                                      0xe860f (size before relaxing)
 .debug_str     0x00000000000e82a9      0xa59 Src/InitSystemMCU.o
                                      0xe53b0 (size before relaxing)
 .debug_str     0x00000000000e8d02      0x99c Src/main.o
                                      0xe533b (size before relaxing)
 .debug_str     0x00000000000e969e       0x31 Startup/startup_stm32h743iitx.o
                                         0x6b (size before relaxing)

.comment        0x0000000000000000       0x7b
 .comment       0x0000000000000000       0x7b CMSIS/Src/system_stm32h7xx.o
                                         0x7c (size before relaxing)
 .comment       0x000000000000007b       0x7c Src/InitSystemMCU.o
 .comment       0x000000000000007b       0x7c Src/main.o

.debug_frame    0x0000000000000000      0x1a4
 .debug_frame   0x0000000000000000       0x58 CMSIS/Src/system_stm32h7xx.o
 .debug_frame   0x0000000000000058       0x80 Src/InitSystemMCU.o
 .debug_frame   0x00000000000000d8       0xa0 Src/main.o
 .debug_frame   0x0000000000000178       0x2c c:/st/stm32cubeide_1.0.0/stm32cubeide/plugins/com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.4.0.202007081208/tools/bin/../lib/gcc/arm-none-eabi/7.3.1/../../../../arm-none-eabi/lib/thumb/v7e-m/fpv5/hard\libc_nano.a(lib_a-init.o)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

26 minutes ago, jcxz said:

Для чего использовать соответствующие регистры NVIC (для просмотра статуса ожидающего прерывания и для программного возбуждения прерывания).

Точно!

Автор темы, вы можете возбудить прерывание только в NVIC, свою периферию можете даже и не включать. Используйте это) Мне иногда помогало, когда искал ошибки в ПО у своих коллег.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 минут назад, AleksBak сказал:

Попробую разобраться тут, но пока что не очень получается и поэтому спросил тут, но я еще попробую. Спасибо.

В отладчике в NVIC смотрите есть ли флаг Active и Pending на вашем прерывание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

35 минут назад, jcxz сказал:

6. Прописать соответствующий вектор таблицы прерываний на нужный ISR.

Оно похоже это и не происходит все-таки как раз тут - см. этот map-файл. @jcxz - Вы вроде правы. Еще надо подумать тут (мне).

9 минут назад, haker_fox сказал:

Автор темы, вы можете возбудить прерывание только в NVIC, свою периферию можете даже и не включать. Используйте это)

Сейчас попробую Покамест не очень понял как, но начну пробовать.

10 минут назад, HardEgor сказал:

В отладчике в NVIC смотрите есть ли флаг Active и Pending на вашем прерывание.

Тоже сейчас попробую (минут через 10-15). Спасибо за помощь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, AleksBak said:

Сейчас попробую Покамест не очень понял как, но начну пробовать.

Только точку останова поставьте в таблице на нужный адрес. Чтобы точно увидеть есть ли прерывание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 минут назад, HardEgor сказал:

В отладчике в NVIC смотрите есть ли флаг Active и Pending на вашем прерывание.

Добавлю - я пока сейчас поищу инф-цию/поизучаю, то как все-таки надо прописать вектора таблицы на нужный ISR -  как @jcxz заметил, а потом в отладке буду ковыряться. Спасибо Вам.

Похоже проблема тут у меня.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 minutes ago, AleksBak said:

а потом в отладке буду ковыряться.

Как раз быстрее с отладчиком. Жмакнули бряк, и... видим результат.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

36 минут назад, AleksBak сказал:

Спасибо большое за помощь. Вот содержимое "H7_L01_QSPI.map" этого проекта (я ничтожный хотел выделить красным некоторые места тут - но покамест не получилось):

По .map-файлу видно что:

1. Ваш ISR не используется при линковке программы. Так как строчка:

 .text.TIM2_IRQhandler 0x0000000000000000 0x3c Src/main.o  

говорит о том, что его адресу присвоено значение ==0.

2. А строки:

.text.Default_Handler
...
0x0000000008000f78                TIM2_IRQHandler
...

говорят о том, что на место данного вектора вставляется адрес некоей функции-заглушки Default_Handler() (для неиспользуемых векторов прерываний видимо). Которая берётся из той кучи хлама чужого кода, которую вы подключили к проекту.  :unknw:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

9 минут назад, jcxz сказал:

По .map-файлу видно что:

1. Ваш ISR не используется при линковке программы. Так как строчка:

Уважаемый @jcxz Вам бы снайпером пойти служить спокойно можно т.к. точно указали (также как и другие тут на др. причины). Я уже понял это после того как привел, по Вашему указанию, map файл тут и стал изучать его хотя бы немного. Спасибо Вам по человечески. Я сейчас должен пойти/прийти по одному делу и чуть позже начну разбираться опять.

16 минут назад, jcxz сказал:

Которая берётся из той кучи хлама чужого кода, которую вы подключили к проекту

Согласен насчет чужого и нехорошего, но и это всего лишь 1-2% от кубического проповедения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...