STM32F407 MCO输出的配置问题

当前使用IDE:

RT-Thread Studio
版本: 2.1.0
构建ID: 202103221400

配置如下:

int MCO1_GPIO_INIT(void)
{
    GPIO_InitTypeDef GPIO_InitStruct;

    __HAL_RCC_GPIOA_CLK_ENABLE();

    /*Configure GPIO pin : PA8 */
    GPIO_InitStruct.Pin = GPIO_PIN_8;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;  //实测 AF_PP和PP并不影响MCO输出
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

    /* Enable MCO output */
    HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_PLLCLK, RCC_MCODIV_4);

    return RT_EOK;
}

注意:

一定是先配置对应的 GPIO 然后在开启MCO输出,实际测试发现不配置GPIO也是可以输出时钟信号的

如果先使能了MCO输出, 再配置GPIO则会出现MCO不输出的情况

posted @ 2021-04-05 18:54  svchao  阅读(533)  评论(0编辑  收藏  举报