STM32-CUBE-以太网DP83848

1、使用主控芯片STM32F407V。 使用的晶振25M。使用管脚如下。RX_ER貌似程序没用,后续再看吧
STM32-CUBE-以太网DP83848_第1张图片
STM32-CUBE-以太网DP83848_第2张图片
STM32-CUBE-以太网DP83848_第3张图片
***2、DP83848部分原理图,***注意看34脚,连到了PA1和PA8,也就是50M时钟是由STM32提供的。
STM32-CUBE-以太网DP83848_第4张图片
3、下面进行CUBE的时钟配置
首先时钟配置,注意图中2部分勾选,也就使能了PA8的时钟输出。
但是我们要输出的是50Mhz,所以一定要注意图中3处一定要改成High,否则时钟错误,以太网两个灯都不会亮的!!!!!!
STM32-CUBE-以太网DP83848_第5张图片

下面的时钟配置是网上大家的经验配置,这样配置稳定,不丢包
STM32-CUBE-以太网DP83848_第6张图片

***4、仿真接口配置***一下,我原理图使用的的SW模式,所以如下配置,根据自己原理图配置即可
STM32-CUBE-以太网DP83848_第7张图片

5、ETH配置
首先选择模式RMII
STM32-CUBE-以太网DP83848_第8张图片

之后配置PHY地址,注意我的原理图,42管脚悬空的,这个地方芯片内部是上拉的,所以悬空就是1。PHY地址就是0X01
STM32-CUBE-以太网DP83848_第9张图片

所以进行如下的PHY配置
STM32-CUBE-以太网DP83848_第10张图片

选择型号DP83848,配置界面如下:
STM32-CUBE-以太网DP83848_第11张图片

中断界面勾选中断
STM32-CUBE-以太网DP83848_第12张图片
管脚配置,注意一定要和自己原理图一致!!!!
STM32-CUBE-以太网DP83848_第13张图片

6、LWIP配置
STM32-CUBE-以太网DP83848_第14张图片

STM32-CUBE-以太网DP83848_第15张图片

7、注意到此CUBE配置完成了,但是仅仅是配置,没有其余的通讯程序。可从st官网下载,st官网搜索LWIP,找到如下文件下载
在这里插入图片描述
解压得到下面的,此时打开从官网下载的文件夹
在这里插入图片描述
如下project目录下,找到这些,根据自己实际需要的添加。我下面使用tcp_echo_server为例,
STM32-CUBE-以太网DP83848_第16张图片

8、KEIL里边修改
打开生成的MDK文件。将下面两个文件夹下的tcp_echoserver.c和tcp_echoserver.h加入到我们的工程。
STM32-CUBE-以太网DP83848_第17张图片

并在main函数中加入.h头文件
STM32-CUBE-以太网DP83848_第18张图片
在主函数初始化部分加入tcp_echoserver_init();
在这里插入图片描述

主循环里边加入MX_LWIP_Process();
STM32-CUBE-以太网DP83848_第19张图片

9、电脑的IP设置如下,红圈里的都要固定和咱们在CUBE里边配置一致的。
STM32-CUBE-以太网DP83848_第20张图片

10、电路板连接网线到电脑。上电。编译程序并下载。此时只要是配置跟我一致,原理图一致,下完程序就能看到黄灯常亮,绿灯闪烁。如果不行,则要对照一下原理图是否和我一致,或者是电路板硬件问题

11、电脑ping一下,
STM32-CUBE-以太网DP83848_第21张图片

你可能感兴趣的:(STM32)