ST意法半导体
直播中

李波

7年用户 1405经验值
私信 关注
[问答]

CubeMX GPIO未在STM32H747-DISCO中初始化是为什么?

新手在这里使用 STM32H747-DISCO 非常幸运和不幸。
对于我这样的新手来说,实在是太吃力了。
我主要依靠 CubeMX 生成代码并结合固件示例。
对于STM32H747-DISCO,生成的代码是空的。
在 CM4 源代码中:
  • {
  •   /* GPIO Ports Clock Enable */
  •   __HAL_RCC_GPIOI_CLK_ENABLE();
  •   __HAL_RCC_GPIOB_CLK_ENABLE();
  •   __HAL_RCC_GPIOG_CLK_ENABLE();
  •   __HAL_RCC_GPIOC_CLK_ENABLE();
  •   __HAL_RCC_GPIOE_CLK_ENABLE();
  •   __HAL_RCC_GPIOH_CLK_ENABLE();
  •   __HAL_RCC_GPIOD_CLK_ENABLE();
  •   __HAL_RCC_GPIOA_CLK_ENABLE();
  •   __HAL_RCC_GPIOF_CLK_ENABLE();
  •   __HAL_RCC_GPIOK_CLK_ENABLE();
  •   __HAL_RCC_GPIOJ_CLK_ENABLE();
  • }
在 CM7 源代码中:
  • static void MX_GPIO_Init(void)
  • {
  •   GPIO_InitTypeDef GPIO_InitStruct = {0};
  •   /* GPIO Ports Clock Enable */
  •   __HAL_RCC_GPIOC_CLK_ENABLE();
  •   __HAL_RCC_GPIOA_CLK_ENABLE();
  •   __HAL_RCC_GPIOH_CLK_ENABLE();
  •   /*Configure GPIO pin : CEC_CK_MCO1_Pin */
  •   GPIO_InitStruct.Pin = CEC_CK_MCO1_Pin;
  •   GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
  •   GPIO_InitStruct.Pull = GPIO_NOPULL;
  •   GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
  •   GPIO_InitStruct.Alternate = GPIO_AF0_MCO;
  •   HAL_GPIO_Init(CEC_CK_MCO1_GPIO_Port, &GPIO_InitStruct);
  • }
我还发现大多数 Init 都在 CM4 src 中,为什么会这样?
这是用于 H747 或任何双核 MCU 的 CUbeMX 的新功能吗?








回帖(1)

徐梦灵

2023-1-10 13:59:44
您可能需要指定哪个核心需要初始化它。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分