参考内容:DP83848数据表

一、PHY DP83848功能模块图

DP83848的硬件模块主要为:

MII/RMII/SNI INTERFACES:用于与MAC数据传输的MII/RMII/SNI接口

Transmit BLOCK:数据发送模块,将从外部MAC(例如STM32ETH外设的MAC)接收到的数据,通过DAC模块和AUTO-MDIX发送值外部介质(光纤、水晶头、电缆等)

Rece BLOCK:数据接受模块,外部介质接受的数据通过AUTO-MDIX和ADC传输至Rece BLOCK,再通过MII/RMII接口传输至MAC(例如STM32ETH外设的MAC)

Boundary:调试模块,部分型号不支持,不使用悬空即可。

AUTO-MDIX:自动识别直连或交叉网线并自适应,可通过外部配置禁用。

LED Drivers:LED模块,用于指示工作状态以及工作模式,由外部以及寄存器控制。

二、DP83848引脚配置(STM32F407ZGT6)

DP83848的所有复用引脚都有内部上拉或者下拉电阻,在配置引脚时,应使用2.2kΩ电阻连接GND或者Vcc配置。在接口选择方面这里选择RMII接口配置,要使用MII接口可参考DP83848参考手册。开发板使用的单片机为STM32F407ZGT6。

RMII接口(7Pin)

TX_EN(2):RMII发送启用,有效高电平输入表示 TXD [1:0] 上存在有效数据。(PG11)
TXD[0:1](3~4):RMII 发送数据,发送数据 RMII 输入引脚,TXD[1:0],此引脚接受同步至 50MHz 基准时钟的数据
TXD0(PG13),TXD1(PG14)
RX_DV(39:RMII同步接收数据有效信号。(PA7)
RXD[0:1](43~44):RMII接收数据信号引脚,与X1同步,50MHz。RXD0(PC4),RXD1(PC5)。
CRS_DV(40):RMII载波侦听/数据有效。(不接)

SMI接口(2Pin)

MDC(31):MDIO串行管理数据输入/输出接口同步时钟,也可以作为异步发送与接收时钟,最大时钟频率25MHz。(PC1)
MDIO(30):双向管理执行/信号接口。需要外置1.5KΩ上拉电阻。(PA2)

时钟接口(2Pin)

X1(34):RMII模式下必须连接50MHz,0.005%(+50ppm)的CMOS振荡源。(使用外部50MHz时钟源Y3)
CLK_OUT(25):由于RMII模式下X1输入50MHz参考时钟,此引脚能够给系统(STM32)提供相应的参考时钟源。(不使用)

LED接口(Pin3)

LED_LINK(28)、LED_SPEED(27)、LED_ACT/COL(26):LED接口的控制模式由PHY Control Register (PHYCR), address 0x19h控制。

Reset和Power Down

Reset_N(29):引脚拉低时间最少1μs,复位PHY芯片。(与单片机Reset复位按键为同意按键)
PWR_DOWN/INT(7):该被引脚拉低为Power Down模式(低功耗),中断模式时此引脚为开漏输出(内部弱上拉)。(拉高)

JTAG接口

TCK(8)、TDI(12)、TDO(9)、TMS(10)、TRST#(11),JTAG测试接口不使用不接。

三、DP83848外部配置选项

PHY地址配置PHY[0:4]:PHYAD0(COL)、PHYAD1(RXD_0)、PHYAD2(RXD_1)、PHYAD3(RXD_2)、PHYAD4(RXD_3)

系统复位,该地址(0<00000>~31<11111>)锁存在PHYCTRL寄存器。
地址0(0x00)时为MII隔离模式,配置隔离模式必须PHYAD0来选择,通过MDIO写入寄存器地址不会将PHY置于隔离模式。
PHYAD0内部为弱上拉电阻,PHYAD[4:1]内部为弱下拉电阻,因此默认的PHY地址为00001(0x01h)。
PHY配置地址示例00011(0x03h)

通讯速率与模式配置AN_EN(LED_ACT/COL)、AN_1(LED_SPEED)、AN_0(LED_LINK)
自动协商:当AN_EN为高电平时,将启用引脚AN_1与AN_0的自动协商功能(通告模式)。当AN_EN为低电平时,将启用引脚AN_1与AN_0的强制模式(Forced Mode)。引脚设定相应的值时通过2.2k电阻连接GND或Vcc。不要将引脚直接连接GND或Vcc,配置值将在硬件复位(Hardware Reset)时锁存在Basic Mode Control Register和e Auto_Negotiation Advertisement Register内。由于引脚内部默认上拉,因此默认值为111。

 MII模式配置MII_MODE(RX_DV)、SNI_MODE(TXD_3)
确定MAC接口的工作模式默认状态为MII模式,当只有MII_MODE引脚拉高时为RMII模式(SNI_MODE内部下拉电阻)。(MII_MODE(39)拉高,SNI_MODE(6)拉低选择RMII模式)

LED配置LED_CFG(CRS)
LED_CF内置上拉电阻,默认为模式一,配置PHY Control Register(PHYCR)的LED_CFG[0]与LEDCFG[1]来实现LED模式选择。

Auto-MDIX模式配置MDX_EN(RX_ER)
默认状态使能MDIX,外接一个下拉电阻禁用Auto-MDIX功能。
10M/100Mb/s PMD接口RD-、RD+、TD-、TD+配置
RD-、RD+与TD-、TD+为两对差分输入/输出对,会被自动配置为相应的输入/输出100BASE-TX或10BASE-T信令。在AUTO-MDIX模式下,RD-、RD+可作为发送输出对,TD-、TD+可作为接收输入对。两对差分引脚需要接3.3V的直流偏置。
特殊连接(Special Connections)
RBIAS(24):Bias Resistor Connection需要使用一个4.87kΩ 1%的电阻通过RBIAS连接到GND
PFBOUT(23):Power Feedback Output ,需要将一个10μF(最好是钽电容)与一个0.1μF的并联并且靠近PFBOUT引脚,还需要将此引脚与PFNIN1和PFBIN2相连。
PFBIN1(18)、PFBIN2(37):Power Feedback Input,这两个引脚有PFBOUT供电,使用两个0.1μF的电容分别靠近PFBIN1与PFBIN2连接。

RESERVED(20,21):这些引脚必须使用AVDD33连接的2.2kΩ上拉电阻。

电源引脚配置

开发板上VCC3.3为I/O 3.3V电源,VCC3.3E为模拟3.3V电源,I/O地与模拟地共地。

四、PHY DP83848寄存器

具体寄存器配置参考:DP83848数据表 的寄存器章节-6.6 Memory

基于STM32F407MAC与DP83848实现以太网通讯二(DP83848硬件配置以及寄存器)的更多相关文章

  1. 搭建基于hyperledger fabric的联盟社区(二) --环境配置

    接下来讲一下在本地测试区块链网络的过程.我要部署的是2peer+1orderer架构,所以需要准备三台虚拟机,为了方便起见可以先把一台配置好,然后复制出剩余两台即可.搭建虚拟机我用的是virtualb ...

  2. STM32F412应用开发笔记之五:结合W5500实现以太网通讯

    因实际使用需求我们测试一下网络通讯,在NUCLEO-F412ZG测试板上没有以太网部分,我们选择外接一个W5500的实验板.W5500支持SPI接口通讯,DC3.3V供源.而NUCLEO-F412ZG ...

  3. 西门子S7系列以太网通讯处理器功能介绍

    北京华科远创科技有限研发的远创智控型号ETH-YC模块适用于西门子S7-200/S7-300/S7-400.SMART S7-200.西门子数控840D.840DSL.合信.亿维PLC的PPI/MPI ...

  4. 西门子S7200/300/400以太网通讯处理器选型分类

    北京华科远创科技有限研发的远创智控转以太网模块适用于西门子S7-200/S7-300/S7-400.SMART S7-200.西门子数控840D.840DSL.合信.亿维PLC的PPI/MPI/PRO ...

  5. 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二)

    前言 文章 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 中,已经完成对 gulp 的安装,由于是window环境,文中特意提到了可以通过安装 gitbash 来代替 ...

  6. 基于SignalR的消息推送与二维码描登录实现

    1 概要说明 使用微信扫描登录相信大家都不会陌生吧,二维码与手机结合产生了不同应用场景,基于二维码的应用更是比较广泛.为了满足ios.android客户端与web短信平台的结合,特开发了基于Singl ...

  7. 基于webrtc的资源释放问题(二)

    基于webrtc的资源释放问题(二) ——建立连接的过程中意外中断 应用背景: 我们在打电话的时候会不会遇到这种情况?打电话的时候未接通之前挂掉了电话,或者在接通之后建立的连接的过程中挂掉电话? 特别 ...

  8. 基于.net开发chrome核心浏览器【二】

    原文:基于.net开发chrome核心浏览器[二] 一: 上一篇的链接: 基于.net开发chrome核心浏览器[一] 二: 相关资源介绍: chrome Frame: 让IE有一颗chrome的心, ...

  9. 基于FFMPEG的跨平台播放器实现(二)

    基于FFMPEG的跨平台播放器实现(二) 上一节讲到了在Android平台下采用FFmpeg+surface组合打造播放器的方法,这一节讲一下Windows平台FFmpeg + D3D.Linux平台 ...

  10. 基于python的快速傅里叶变换FFT(二)

    基于python的快速傅里叶变换FFT(二)本文在上一篇博客的基础上进一步探究正弦函数及其FFT变换. 知识点  FFT变换,其实就是快速离散傅里叶变换,傅立叶变换是数字信号处理领域一种很重要的算法. ...

随机推荐

  1. 7.5 C/C++ 实现链表队列

    链表队列是一种基于链表实现的队列,相比于顺序队列而言,链表队列不需要预先申请固定大小的内存空间,可以根据需要动态申请和释放内存.在链表队列中,每个节点包含一个数据元素和一个指向下一个节点的指针,头节点 ...

  2. MySQL创建, 修改,删除用户密码

    MySQL创建, 修改,删除用户密码 创建用新户名密码 创建用新户名密码: create user 'test1'@'localhost' identified by 'test1'; 修改用户名密码 ...

  3. Windows开机自动同步时间

    前言   有些Windows客户端因主板电池没电或其他原因,每次启动系统后,读取到BIOS的时间是初始时间(1970年)或错误的时间,这时需要系统启动后立即向时间服务器同步一次时间.   该方法是添加 ...

  4. Proxmox 7.4 使用vgpu_unlock,为GTX1060开启vGPU支持

    本文在 2021年发布的博客<Proxmox 5.4使用vgpu_unlock,为GTX1060开启vGPU支持>,介绍了 Proxmox VE 5.4 上部署vGPU unlock 的操 ...

  5. 基于OpenEuler的信创国产瘦客户机软件系统 DoraOS

    DoraOS是一款瘦客户机系统软件,最新版本基于OpenEuler开发.可以将主机转化为专业的瘦客户机.目前支持x86架构的硬件. 软件下载地址为: https://www.doracloud.cn/ ...

  6. 2.3 实验:用linxerUnpack进行通用脱壳--《恶意代码分析实战》

    Lab01-03.exe     实验内容:   1.将文件上传到http://www.VirusTotal.com 进行分析并查看报告.文件匹配到了已有的反病毒软件特征吗?   2.是否有这个文件被 ...

  7. HttpClientTemplate JDK11以上的版本,可以用,我写的。

    package com.diandaxia.common.template; import com.fasterxml.jackson.databind.ObjectMapper; import or ...

  8. Winows11-hosts文件无法修改保存

    Win11系统hosts文件无法修改保存 新近使用win11新电脑修改hosts,添加IP和主机名映射,保存时提示host无法修改. 解决办法: 1.将hosts文件的权限"只读" ...

  9. SP16113 SUBTLEBA - Trucks Transportation 题解

    题目传送门 前言 本题样例有问题,如果想要样例可以去 vjudge 上. 本题提交后可能会出现 UKE ,建议前往 link 提交,而且本篇题解中所提供的代码也为 link 代码. 前置知识 Krus ...

  10. CF1850H The Third Letter

    题目链接 题解 知识点:贪心,图论建模. 考虑对约束 a b d 建边 \(a \mathop{\to}\limits^d b\) 与 \(b \mathop{\to}\limits^{-d} a\) ...