• 569查看
  • 0回复

[网络开发] 简析英飞凌TC3XX MCAL ETH模块配置

[复制链接]


该用户从未签到

发表于 28-8-2023 09:50:50 | 显示全部楼层 |阅读模式

汽车零部件采购、销售通信录       填写你的培训需求,我们帮你找      招募汽车专业培训老师


上次写了TC3XX MCAL CAN模块的配置(回送门:简析英飞凌TC3XX MCAL CAN模块),今天来梳理一下ETH模块的配置。

首先简要的说明一下ETH模块的特性:

1.支持10/100/1000M以太网;

2.支持MII/RMII/RGMII接口;

3.支持全/半双工工作模式;

4.以太网帧最大的长度为1522bytes;

5.MCAL中仅使用了Tx DMA0和Rx DMA0。

ETH的硬件硬件结构图如下图所示。

简析英飞凌TC3XX MCAL ETH模块配置w1.jpg

MCAL中关键的API接口:


    Eth_17_GEthMac_Init,用于使能、复位Eth模块以及MIDO接口初始化;

    Eth_17_GEthMac_ProvideTxBuffer,用于建立指定发送的buffer,输入参数包括Controller,BufferID,Buffer内容,以及长度。

    Eth_17_GEthMac_SetControllerMode,设置以太网控制器的模式。

    Eth_17_GEthMac_GetControllerMode,获取以太网控制器的模式。

    Eth_17_GEthMac_SetPhysAddr,设置控制器的MAC地址。

    Eth_17_GEthMac_GetPhysAddr,获取控制器的MAC地址。

    Eth_17_GEthMac_WriteMii,设置PHY寄存器内容。

    Eth_17_GEthMac_ReadMii,读取PHY寄存器内容。

    Eth_17_GEthMac_Transmit,以太网数据发送。

    Eth_17_GEthMac_Receive,以太网数据接收。

    Eth_17_GEthMac_TxConfirmation,以太网数据发送的回调函数。

MCA配置:

第一步是配置时钟参考,如下图所示。

简析英飞凌TC3XX MCAL ETH模块配置w2.jpg

第二步就是控制器的配置,包括速度、工作模式、MCA地址、buffer程度、MDIO等,如下图所示。

简析英飞凌TC3XX MCAL ETH模块配置w3.jpg

第三步,配置发送和接口的接口,以及使能RGMII的读写操作,配置数据接收的形式。

简析英飞凌TC3XX MCAL ETH模块配置w4.jpg

第四步,配置port硬件为复位类型,所有用于Eth驱动的输入引脚必须配置为PORT_PIN_RGMII_DRIVER,PORT_RGMII_INPUT,如下图所示。

简析英飞凌TC3XX MCAL ETH模块配置w5.jpg

第五步,使能发送和接收的DMA中断。

简析英飞凌TC3XX MCAL ETH模块配置w6.jpg


快速发帖

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|Archiver|汽车工程师之家 ( 渝ICP备18012993号-1 )

GMT+8, 1-2-2025 14:00 , Processed in 0.203418 second(s), 31 queries .

Powered by Discuz! X3.5

© 2001-2013 Comsenz Inc.