STM32中的MCO

前言

最近使用一块新的STM32H7+LAN8720的开发板,发现EMAC驱动没有时钟导致初始化不过

仔细查看原理图后才发现,LAN8720并没接25MHz晶振,而是接到了PA8(MCO1)

需要配置才能使以太网正常工作

什么是MCO?

MCO(Microcontroller Clock Output)是STM32微控制器的一个硬件特性,它允许将微控制器内部的时钟源输出到外部引脚。通过该功能,用户可以选择将内部时钟源(如系统时钟、外部晶振、PLL输出等)以特定频率输出到一个指定的引脚(通常是GPIO引脚)。这样,外部电路可以使用该时钟信号进行同步或者监控。

STM32中的MCO输出源

在STM32微控制器中,MCO可以输出多种时钟源。常见的时钟源包括:

  1. HSI (High-Speed Internal):高速内部时钟,通常为8MHz。
  2. HSE (High-Speed External):高速外部时钟,通常由外部晶振提供。
  3. PLL (Phase-Locked Loop):通过PLL生成的时钟,用户可以选择不同的输入时钟并经过倍频输出。
  4. SYSCLK (System Clock):系统时钟,通常是MCU的主时钟频率。

配置(STM32CubeMX)

将PA8配置为MCO功能,并选择时钟

相关推荐
崇山峻岭之间37 分钟前
HC32F460PETB的PB2的Vout123
单片机
恶魔泡泡糖39 分钟前
stm32F103C8T6标准库串口接收之中断方式2
stm32·单片机·嵌入式硬件
充哥单片机设计1 小时前
【STM32开源项目】智能小区充电桩
stm32·单片机·嵌入式硬件·毕业设计·小区充电桩·智能小区充电桩
嵌入式-老费2 小时前
esp32开发与应用(如何解决SoC冷启动的问题)
单片机·嵌入式硬件
充哥单片机设计3 小时前
【STM32开源项目】智能语音台灯
stm32·单片机·嵌入式硬件·毕业设计·单片机设计·智能语音台灯
EatFan3 小时前
全栈自造 Status Deck(四):硬件终于到了,从点亮屏幕到跑通第一个 Demo
单片机·物联网·esp32
sunoo-2294 小时前
【嵌入式裸机开发Day04】i.MX6ULL 蜂鸣器驱动详解:从引脚地址查找到代码实现全流程
arm开发·单片机·嵌入式硬件·学习·串口·裸机
Brilliantwxx5 小时前
【STM32】 SPI阻塞式通信与HAL源码 (源码分析)
stm32·单片机·嵌入式硬件
Doraemomo5 小时前
IMX6ULL裸机开发——PWM
arm开发·嵌入式硬件·imx6ull
老当益壮梁奶奶6 小时前
ARM汇编学习笔记(五):从按键轮询到 GIC 中断控制器(ARM Cortex-A7 )
arm开发·笔记·单片机·嵌入式硬件