当前位置: 首页 > news >正文

stm32以太网接口:MII和RMII

前言

使用stm32和lwip进行网络通信开发时,实现结构如下:
在这里插入图片描述
而MII和RMII就是stm32与PHY芯片之间的通信接口,类似于I2C、UART等。
stm32以太网模块有专用的DMA控制器,通过AHB接口将以太网内核和存储器相连。
数据发送时,先将数据从存储器以DMA传输到TX FIFO中进行缓冲,然后由MAC内核通过MII或RMII接口发送;
数据接收时,RX FIFO先通过MII或RMII接收以太网数据帧,再由DMA传输至存储器。
ETH功能系统框图如下:
在这里插入图片描述
MII和RMII用于连接stm32 MAC控制器和PHY芯片,提供数据传输路径。RMII接口是MII接口的简化版本,MII需要16跟通信线,RMII需要7根。

MII接口

MII接口连接示意图如下:
在这里插入图片描述
TX_CLK:为数据发送提供时钟信号,传输速率为10Mbit/s时,该时钟为2.5MHz,传输速率为100Mbit/s时,该时钟为25MHz(因为每次传4bit,所以时钟信号与传输速率之间是4倍关系)。
RX_CLK:为数据接收提供时钟信号,传输速率为10Mbit/s时,该时钟为2.5MHz,传输速率为100Mbit/s时,该时钟为25MHz。
TX_EN:数据发送使能信号,在整个数据发送过程中保持有效电平。
TXD[3:0]:数据发送数据线,每次发4bit数据,TXD[0]是数据最低位,TXD[3]是最高位。
RXD[3:0]:数据接收数据线,每次接收4bit数据,RXD[0]是数据最低位,RXD[3]是最高位。在RX_DV禁止、RX_ER使能时,PHY芯片会通过RXD[3:0]传输一组特殊数据,来告诉一些特殊信息。
RX_DV:接收数据有效信号,功能类似于TX_EN,由PHY芯片负责驱动。
RX_ER:接收错误信号线,由 PHY 驱动,向 MAC 控制器报告在帧某处检测到错误。

RMII接口

RMII接口示意图如下:
在这里插入图片描述
与MII接口相比区别如下:
1.接受数据线和发送数据线由4根变成了2根。
2.MII的CRS 和 RX_DV整合成RMII的CRS_DV 信号线。
3.没有了COL冲突检测信号。
4.没有了数据接收、发送时钟信号,取而代之的是REP_CLK时钟源。

SMI接口

在MII和RMII接口连接示意图中都有MDC和MDIO两个信号线,这两个信号线是SMI接口,类似与IIC,用于访问PHY芯片的寄存器。
SMI接口示意图如下:
在这里插入图片描述
MDC是周期性时钟信号,MDIO是数据输入输出线。
向PHY芯片寄存器写数据时序图如下:
在这里插入图片描述
从PHY芯片寄存器读数据时序图如下:
在这里插入图片描述

相关文章:

stm32以太网接口:MII和RMII

前言 使用stm32和lwip进行网络通信开发时,实现结构如下: 而MII和RMII就是stm32与PHY芯片之间的通信接口,类似于I2C、UART等。 stm32以太网模块有专用的DMA控制器,通过AHB接口将以太网内核和存储器相连。 数据发送时,…...

ChromeDriver 官方下载地址_测试自动化浏览器驱动

大家在做selenium自动化测试时,需要下载谷歌浏览器驱动,可以从以下官网地址下载 (1) ChromeDriver 下载地址1 http://chromedriver.storage.googleapis.com/index.html 这个地址最后版本到 114.0.5735.90 (2&#…...

力扣 LeetCode 206. 反转链表(Day2:链表)

解题思路: pre ,cur双指针 需要通过tmp暂存cur的下一个位置,以方便cur的下一步移动 class Solution {public ListNode reverseList(ListNode head) {ListNode pre null;ListNode cur head;while (cur ! null) {ListNode tmp cur.next;c…...

kafka消费数据太慢了,给优化下

原代码 public class KafkaConsumerDemo {public static void main(String[] args) {int numConsumers 5; // 增加消费者的数量for (int i 0; i < numConsumers; i) {new Thread(new KafkaConsumerThread()).start();}}static class KafkaConsumerThread implements Runn…...

ASUS/华硕灵耀X双屏Pro UX8402Z 原厂Win11-22H2系统 工厂文件 带ASUS Recovery恢复

华硕工厂文件恢复系统 &#xff0c;安装结束后带隐藏分区&#xff0c;一键恢复&#xff0c;以及机器所有驱动软件。 系统版本&#xff1a;windows11 原厂系统下载网址&#xff1a;http://www.bioxt.cn 需准备一个20G以上u盘进行恢复 请注意&#xff1a;仅支持以上型号专用…...

【含开题报告+文档+PPT+源码】基于springboot的毕业设计选题管理系统

开题报告 毕业设计选题作为高校教学环节中的重要一环&#xff0c;其选题质量和管理效率直接关系到学生毕业设计的质量和毕业要求的达成。然而&#xff0c;传统的选题管理方式往往存在信息不对称、流程繁琐、效率低下等问题&#xff0c;无法满足高校教学管理现代化、信息化的需…...

fastadmin常用操作

数据库中遇到的操作 查询字段是json的某个值 $map[json_extract(goods, "$.brand_id")] (int)$params[brand_id]; //获取数据库中某个字段是json中得某个值&#xff0c;进行查询&#xff0c;goods是表中字段&#xff0c;brand_id是json中要查詢的字段。数据类型一定…...

IPguard与Ping32:谁是企业数据防泄密的最佳选择?

在当前信息化快速发展的背景下&#xff0c;企业数据安全已成为公司运营中最重要的议题之一。为了防止数据泄漏&#xff0c;越来越多的企业开始依赖专业的加密软件来进行防护。今天&#xff0c;我们对比了两款业内领先的加密软件——IPguard和Ping32&#xff0c;帮助您选择最适合…...

C++20新特性的补充讲解

C20 标志着 C 语言的一次重要更新&#xff0c;除了 Concepts、Ranges、协程等被广泛讨论的特性外&#xff0c;还有许多值得注意的改进。本文将详细探讨其他一些核心新特性&#xff0c;包括 constexpr 扩展、新增的 std::format、std::span、std::bit 操作、原子智能指针、char8…...

uni-app移动端与PC端兼容预览PDF文件

过程遇到的问题 1、如果用的是最新的版本的pdfjs的话&#xff0c;就会报Promise.withResolvers 不是一个方法的错误&#xff0c;原因是Promise.withResolvers是ES15新特性&#xff0c;想了解可参考链接&#xff0c;这里的解决方案是将插件里的涉及到Promise.withResolvers的地…...

Elman 神经网络算法详解

Elman 神经网络算法详解 一、引言 Elman 神经网络作为一种经典的递归神经网络&#xff08;RNN&#xff09;&#xff0c;在处理动态系统和时间序列数据方面具有独特的优势。它通过特殊的结构设计&#xff0c;能够有效地捕捉数据中的时间依赖关系&#xff0c;在语音识别、自然语…...

卓胜微嵌入式面试题及参考答案(2万字长文)

freeRTOS 任务是怎么调度的? 在 freeRTOS 中,任务调度主要是基于优先级的抢占式调度。每个任务都有一个优先级,系统会根据任务的优先级来决定哪个任务获得 CPU 的使用权。 当一个高优先级的任务准备运行,并且当前运行的任务优先级较低时,高优先级任务会抢占 CPU。例如,假…...

【Python】爬虫使用代理IP

1、代理池 IP 代理池可以理解为一个池子&#xff0c;里面装了很多代理IP。 池子里的IP是有生命周期的&#xff0c;它们将被定期验证&#xff0c;其中失效的将被从池子里面剔除池子里的ip是有补充渠道的&#xff0c;会有新的代理ip不断被加入池子中池子中的代理ip是可以被随机…...

金融机构-业务架构方案(高光版)

一、金融机构的设计架构 首先视角很重要,比如这样的战略视角,站得高、看得远。设计业务架构,一定要有战略高度和前瞻性。 二、什么样的架构更适合你们公司呢? 三、从架构着手,进行产品和服务创新性变革 四、具体如何设计业务架构呢?...

ubuntu内核切换network unclaimed 网卡丢失

现象一、 查网络的时候 提示只有lo network unclaimed wifi 本地局域网全部丢失 显卡丢失 解决思路 首先查看了 网卡类型 sudo lshw -C network 会显示使用的网卡 然后把这个网卡 去到realtek的官网去找驱动 驱动下下来发现debug提示 没有build目录 /libs/modules/6.8…...

【人工智能】揭秘可解释性AI(XAI):从原理到实战的终极指南

文章目录 开篇&#xff1a;AI的黑箱时代&#xff0c;你准备好揭开真相了吗&#xff1f;&#x1f50d;什么是可解释性AI&#xff08;XAI&#xff09;&#xff1f;XAI的定义XAI的分类 可解释性AI的重要性与价值建立用户信任遵循法规和伦理发现和纠正模型偏见提高模型性能促进跨领…...

小面馆叫号取餐流程 佳易王面馆米线店点餐叫号管理系统操作教程

一、概述 【软件资源文件下载在文章最后】 小面馆叫号取餐流程 佳易王面馆米线店点餐叫号管理系统操作教程 点餐软件以其实用的功能和简便的操作&#xff0c;为小型餐饮店提供了高效的点餐管理解决方案&#xff0c;提高了工作效率和服务质量 ‌点餐管理‌&#xff1a;支持电…...

图形 2.6 伽马校正

伽马校正 B站视频&#xff1a;图形 2.6 伽马校正 文章目录 伽马校正颜色空间传递函数 Gamma校正校正过程为什么需要校正&#xff1f;CRT与转换函数 为什么sRGB在Gamma 0.45空间&#xff1f; 人对亮度的敏感韦伯定律中灰值 线性工作流不在线性空间下进行渲染的问题统一到线性空…...

LLM - 计算 多模态大语言模型 的参数量(Qwen2-VL、Llama-3.1) 教程

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/143749468 免责声明&#xff1a;本文来源于个人知识与公开资料&#xff0c;仅用于学术交流&#xff0c;欢迎讨论&#xff0c;不支持转载。 影响 (…...

数据可视化这样做,汇报轻松拿捏(附免费好用可视化工具推荐)

一、数据可视化的定义 数据可视化是数据分析中重要的工作之一。在完成数据采集之后&#xff0c;通过可视化方式&#xff0c;将数据转化为美观且浅显易懂的统计图/表/视频&#xff0c;从而进一步解读数据背后隐藏的价值&#xff0c;这种方数据处理方式就叫做数据可视化。近些年…...

AArch64虚拟化调试:HDFGWTR2_EL2寄存器详解与应用

1. AArch64系统寄存器与虚拟化调试概述在Armv8/v9架构中&#xff0c;系统寄存器是处理器核心的控制中枢&#xff0c;负责管理处理器的各种关键功能和行为。AArch64架构通过异常级别&#xff08;EL0-EL3&#xff09;实现了严格的权限分级机制&#xff0c;其中EL2作为Hypervisor层…...

SVM实战手记:从核函数选择到上线避坑的工程指南

1. 这不是数学课&#xff0c;是帮你把SVM用对、用稳、用出效果的实战手记你打开一篇SVM教程&#xff0c;三行之后就卡在“最大间隔超平面”“核函数映射到高维空间”“拉格朗日对偶问题”上——不是你基础差&#xff0c;是绝大多数资料从一开始就走错了路&#xff1a;它们把SVM…...

《从 0 实现 SGLang》第 1 篇 · LLM 推理引擎到底在做什么

千行代码&#xff0c;一步步搭出一个现代 LLM 推理引擎&#xff0c;吃透大模型推理的每一项关键技术。 本阶段目标 — 最简推理实现 用最朴素的方式把端到端推理跑通&#xff1a;先搭起整体框架&#xff0c;再逐个模块替换为完整实现。整个阶段共 5 篇短文&#xff1a; 序号…...

《数据挖掘(主编:吕欣 王梦宁)》读书笔记:异常检测方法梳理与实践理解

《数据挖掘&#xff08;主编&#xff1a;吕欣 王梦宁&#xff09;》读书笔记&#xff1a;异常检测方法梳理与实践理解本文是学习《数据挖掘&#xff08;主编&#xff1a;吕欣 王梦宁&#xff09;》中“异常检测”相关内容后的整理笔记。文章不追求逐条复述教材&#xff0c;而是…...

如何用GeoPort轻松实现iOS虚拟定位?2025年完整使用指南

如何用GeoPort轻松实现iOS虚拟定位&#xff1f;2025年完整使用指南 【免费下载链接】GeoPort GeoPort: Your Location, Anywhere! The iOS location simulator 项目地址: https://gitcode.com/gh_mirrors/ge/GeoPort GeoPort是一款强大的iOS虚拟定位工具&#xff0c;让你…...

RISC-V架构:gp寄存器与链接器松弛

目录 0 相关内容 1 gp&#xff08;global pointer&#xff09;全局指针寄存器 1. gp 寄存器的核心作用&#xff1a;高效访问全局数据 2. 为什么 Cortex-M 没有 gp&#xff1f; 3. gp 寄存器在 FreeRTOS 中的作用 2 链接器松弛 3 如何将全局小变量连接到 .sdata 段并设置 …...

硬件工程师,每天5分钟(5)——为什么 DDR5 最怕地不好?回流路径,才是高速设计真正的灵魂

讲透&#xff1a; 回流路径 为什么 Split Plane 最危险 为什么加地孔有时候能救命 为什么 GPS 会被 DDR 干扰 为什么 EMC 挂的根因常是地 &#x1f697;《硬件工程师&#xff0c;每天5分钟》第5篇 &#x1f525;《为什么 DDR5 最怕地不好&#xff1f;回流路径&#xff0c;才是高…...

Open MCT性能测试实战:JMeter多协议分层压测方法

1. 为什么Open MCT的性能不能只靠“感觉”来判断&#xff1f;Open MCT——NASA开源的航天器监控与控制系统可视化平台&#xff0c;这几年在工业物联网、能源调度、科研实验数据看板等场景里越来越常见。但凡接触过它的人&#xff0c;几乎都会在部署后遇到同一个问题&#xff1a…...

AI Agent Harness Engineering 技术选型指南:根据场景选择合适的大模型与框架

AI Agent Harness Engineering 技术选型指南&#xff1a;根据场景选择合适的大模型与框架 引言 痛点引入 你是否遇到过这样的场景&#xff1f;产品经理拍板要做一个**“能帮企业HR自动筛选简历、邀约面试、生成入职指南并跟进试用期转正材料”**的“超级HR助手”AI Agent——…...

软考高项案例分析8:项目风险管理

软考高项案例分析8:项目风险管理 一、项目风险管理过程 1、规划风险管理; 2、识别风险; 3、实施定性风险分析; 4、实施定量风险分析; 5、规划风险应对; 6、实施风险应对; 7、监督风险; 二、案例分析知识点 1. 风险应对措施 威胁应对策略:上报、规避、转移、…...