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功能,并选择时钟

相关推荐
硅农程序猿7 分钟前
芯片设计中的门级仿真(GLS):从零延迟验证到 SDF 时序反标
嵌入式硬件·硬件架构·risc-v·芯片
智购科技智能售货柜1 小时前
自动售货机主控方案怎么选?——单片机、树莓派、ESP32的实战对比~YH
单片机·嵌入式硬件
米饭不加菜1 小时前
电平转换电路
经验分享·嵌入式硬件·硬件工程
老k一步步来15 小时前
STM32 HAL库CAN通信核心函数详解,参数以及作用
stm32·单片机·嵌入式硬件
gwf21615 小时前
SSD读写速度深度解析:顺序读写vs随机读写、IOPS、延迟,你的硬盘性能到底怎么看?
git·嵌入式硬件·缓存·github·智能硬件
Freak嵌入式19 小时前
版本混乱 / 依赖缺失?uPyPi:MicroPython 版 PyPI,彻底解决库管理混乱
linux·服务器·数据库·单片机·嵌入式硬件·性能优化·依赖倒置原则
wuyk55519 小时前
77.嵌入式 C 语言中 enum 枚举的工程化实践:告别魔法数字,提升代码可维护性
c语言·开发语言·stm32·单片机·嵌入式硬件
义嘉泰20 小时前
XT25F128F-W Flash芯片全面解析
人工智能·嵌入式硬件·芯片
QH1392923188020 小时前
Keysight N9917B N9918B手持式综合微波分析仪
网络·科技·嵌入式硬件·集成测试·信息与通信