STM32使用MCO引脚输出系统时钟

/* * 初始化MCO引脚PA8 * 在F1系列中MCO引脚只有一个,即PA8,在F4系列中,MCO引脚会有两个 */ void MCO_GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; // 开启GPIOA的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); // 选择GPIO8引脚 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8; //设置为复用功能推挽输出 GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //设置IO的翻转速率为50M GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; // 初始化GPIOA8 GPIO_Init(GPIOA, &GPIO_InitStructure); }

下面直接在主函数调用就好了!

MCO 引脚初始化 MCO_GPIO_Config(); //设置MCO引脚输出时钟,用示波器即可在PA8测量到输出的时钟信号, // 我们可以把PLLCLK/2作为MCO引脚的时钟来检测系统时钟是否配置准确 // MCO引脚输出可以是HSE,HSI,PLLCLK/2,SYSCLK RCC_MCOConfig(RCC_MCO_HSE); RCC_MCOConfig(RCC_MCO_HSI); RCC_MCOConfig(RCC_MCO_PLLCLK_Div2); RCC_MCOConfig(RCC_MCO_SYSCLK);

经验分享 程序员 微信小程序 职场和发展