0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CKS32F4xx系列ETH通信详解

中科芯MCU 来源:中科芯MCU 2023-11-10 11:13 次阅读

CKS32F4xx系列芯片自带以太网模块,该模块包括带专用DMA控制器的MAC 802.3(介质访问控制)控制器,支持介质独立接口(MII)和简化介质独立接口(RMII),并自带了一个用于外部PHY通信的SMI接口,通过一组配置寄存器,用户可以为MAC控制器和DMA控制器选择所需模式和功能。

自带以太网模块特点包括:

·支持外部PHY接口,实现10M/100Mbit/s的数据传输速率;

·通过符合IEEE802.3的MII/RMII接口与外部以太网PHY进行通信;

·支持全双工和半双工操作;

·编程帧长度,支持高达16KB巨型帧;

·可编程帧间隔(40~96位时间,以8为步长);

·支持多种灵活的地址过滤模式;

·通过SMI(MDIO)接口配置和管理PHY设备;

·支持以太网时间戳(参见IEEE1588-2008),提供64位时间戳;

·提供接收和发送两组FIFO;

·支持DMA。

以太网主要功能及框图

df5a3678-7f75-11ee-939d-92fbcf53809c.png

图1ETH框图

从上图可以看出,CKS32F4xx系列必须外接PHY芯片,才可以完成以太网通信的,外部PHY芯片可以通过MII/RMII接口与CKS32F4xx系列内部MAC连接,并且支持SMI(MDIO&MDC)接口配置外部以太网PHY芯片。

SMI接口,即站管理接口,该接口允许应用程序通过2条线:时钟(MDC)和数据线(MDIO)访问任意PHY寄存器。该接口支持访问多达32个PHY,应用程序可以从32个PHY中选择一个PHY,然后从任意PHY包含的32个寄存器中选择一个寄存器,发送控制数据或接收状态信息。任意给定时间内只能对一个PHY中的一个寄存器进行寻址。 MII接口,即介质独立接口,用于MAC层与PHY层进行数据传输。CKS32F4xx系列通过MII与PHY层芯片的连接如图2所示:

df737ff2-7f75-11ee-939d-92fbcf53809c.jpg

图2介质独立接口信号

MII_TX_CLK:连续时钟信号。该信号提供进行TX数据传输时的参考时序。标称频率为:速率为10Mbit/s时为2.5MHz;速率为100Mbit/s时为25MHz。

·MII_RX_CLK:连续时钟信号。该信号提供进行RX数据传输时的参考时序。标称频率为:速率为10Mbit/s时为2.5MHz;速率为100Mbit/s时为25MHz。

·MII_TX_EN:发送使能信号。

·MII_TXD[3:0]:数据发送信号。该信号是4个一组的数据信号,

·MII_CRS:载波侦听信号。

·MII_COL:冲突检测信号。

·MII_RXD[3:0]:数据接收信号。该信号是4个一组的数据信号。

·MII_RX_DV:接收数据有效信号。

·MII_RX_ER:接收错误信号。该信号必须保持一个或多个周期(MII_RX_CLK),从而向MAC子层指示在帧的某处检测到错误。

RMII接口,即精简介质独立接口,该接口降低了在10/100Mbit/s下微控制器以太网外设与外部PHY间的引脚数。

根据IEEE 802.3u标准,MII包括16个数据和控制信号的引脚。RMII规范将引脚数减少为7个。

RMII接口是MAC和PHY之间的实例化对象。这有助于将MAC的MII转换为RMII。

RMII具有以下特性:

·支持10Mbit/s和100Mbit/s的运行速率;

·参考时钟必须是50MHz;

·相同的参考时钟必须从外部提供给MAC和外部以太网PHY;

·它提供了独立的2位宽(双位)的发送和接收数据路径; CKS32F4xx系列通过RMII接口与PHY层芯片的连接如图3所示:

df8cabd0-7f75-11ee-939d-92fbcf53809c.jpg

图3精简介质独立接口信号

从上图可以看出RMII相比MII,引脚数量精简了不少。注意,图中的REF_CLK信号,是RMII和外部PHY共用的50Mhz参考时钟,必须由外部提供,比如有源晶振,或者CKS32F4xx系列的MCO输出。不过有些PHY芯片可以自己产生50Mhz参考时钟,同时提供给CKS32F4xx系列,这样也是可以的。

LWIP简介

LWIP是瑞典计算机科学院(SICS)的Adam Dunkels等开发的一个小型开源的TCP/IP协议栈,是TCP/IP的一种实现方式。LWIP是轻量级IP协议,有无操作系统的支持都可以运行,LWIP实现的重点是在保持TCP协议主要功能的基础上减少对RAM的占用,它只需十几KB的RAM和40K左右的ROM就可以运行,这使LWIP协议栈适合在低端的嵌入式系统中使用。该部分功能移植由于内容较多,请自行参考相关移植材料,本文不做叙述。

LAN8720A通讯

本章我们采用RMII接口和外部PHY芯片连接,实现网络通信功能。LAN8720A是低功耗的10/100M以太网PHY层芯片,I/O引脚电压符合IEEE802.3-2005标准,支持通过RMII接口与以太网MAC层通信,内置10-BASE-T/100BASE-TX全双工传输模块,支持10Mbps和100Mbps,可以通过自协商的方式与目的主机最佳的连接方式(速度和双工模式),支持HP Auto-MDIX自动翻转功能,无需更换网线即可将连接更改为直连或交叉连接。







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 以太网
    +关注

    关注

    40

    文章

    5076

    浏览量

    166234
  • SMI
    SMI
    +关注

    关注

    0

    文章

    22

    浏览量

    12278
  • DMA控制器
    +关注

    关注

    1

    文章

    43

    浏览量

    12117
  • ETH
    ETH
    +关注

    关注

    0

    文章

    65

    浏览量

    3428
收藏 人收藏

    评论

    相关推荐

    MCU微课堂|CKS32F4xx系列产品时钟配置

    作为MCU运行的基础,时钟是单片机各个模块工作时序的最小时间单位,推动单片机的各指令执行,是MCU选型的一个重要指标。CKS32F4xx系列产品具有众多的外设,但并非所有的外设均需要系统时钟的高频率
    发表于 12-12 10:17 567次阅读

    CKS32F4xx系列DSP功能介绍

    CKS32F4xx系列使用高性能的32位内核,支持浮点运算单元(FPU),同时还支持DSP指令以及存储保护(MPU)用来加强应用的安全性。
    的头像 发表于 03-04 13:43 875次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>DSP功能介绍

    CKS32F4xx系列I2S功能介绍

    CKS32F4xx系列使用高性能的32位内核,支持浮点运算单元(FPU),同时还支持DSP指令以及存储保护(MPU)用来加强应用的安全性。
    的头像 发表于 03-17 09:40 496次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>I2S功能介绍

    CKS32F4xx系列产品串口DMA传输

    在上一讲,我们讲过CKS32F4xx系列的6个串口都支持DMA传输。因此本节我们对CKS32F4xx系列的DMA进行介绍,同时利用DMA对串口数据进行传输。
    的头像 发表于 04-10 11:18 699次阅读

    CKS32F4xx系列RNG功能设置

      MCU 微课堂 CKS32F4xx 系 列RNG功能 随机数发生器简介     CKS32F4xx系列自带了硬件随机数发生器(RNG),RNG处理器是一个以连续模拟噪声为基础的随机数发生器
    的头像 发表于 09-08 10:01 340次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>RNG功能设置

    CKS32F4xx系列DAC功能

    CKS32F4xx系列DAC功能
    的头像 发表于 11-06 16:56 601次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>DAC功能

    CKS32F4xx系列ADC多通道DMA电压采集

    CKS32F4xx系列ADC多通道DMA电压采集
    的头像 发表于 11-06 16:53 407次阅读

    CKS32F4xx系列ADC单通道电压采集

    CKS32F4xx系列ADC单通道电压采集
    的头像 发表于 11-06 16:54 558次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>ADC单通道电压采集

    CKS32F4xx系列低功耗模式STANDBY模式

    CKS32F4xx系列低功耗模式STANDBY模式
    的头像 发表于 11-06 16:57 241次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>低功耗模式STANDBY模式

    CKS32F4xx系列低功耗模式SLEEP模式

    CKS32F4xx系列低功耗模式SLEEP模式
    的头像 发表于 11-06 16:59 437次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>低功耗模式SLEEP模式

    CKS32F4xx系列低功耗模式STOP模式

    CKS32F4xx系列低功耗模式STOP模式
    的头像 发表于 11-06 17:08 359次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>低功耗模式STOP模式

    CKS32F4xx系列产品Timer的基本使用方法-比较输出

    CKS32F4xx系列产品Timer的基本使用方法-比较输出
    的头像 发表于 11-09 17:39 321次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>产品Timer的基本使用方法-比较输出

    MCU微课堂 | CKS32F4xx系列产品SPI通信

    MCU微课堂 | CKS32F4xx系列产品SPI通信
    的头像 发表于 10-24 17:12 418次阅读
    MCU微课堂 | <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>产品SPI<b class='flag-5'>通信</b>

    MCU微课堂 | CKS32F4xx系列产品GPIO口配置

    MCU微课堂 | CKS32F4xx系列产品GPIO口配置
    的头像 发表于 10-24 15:14 479次阅读
    MCU微课堂 | <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>产品GPIO口配置

    CKS32F4xx系列FSMC功能简介

    本课讲为大家讲解CKS32F4xx系列产品的FSMC应用实例,FSMC全称是Flexible Static Memory Controller,读作灵活的静态存储控制器,顾名思义,MCU可以通过FSMC扩展静态内存
    的头像 发表于 04-14 15:06 258次阅读
    <b class='flag-5'>CKS32F4xx</b><b class='flag-5'>系列</b>FSMC功能简介