stm32F107VCT6 + CUBMX + DP83848 + lwip 移植

1.硬件配置

关于硬件配置这块其实没什么可说的,因为用的是stm32CUBMX,所以基本上都是图形化配置一下就可以了

  • 打开 ETH 和 LWIP(我用的是MII模式)
    stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第1张图片

  • 关于ETH和lwip的配置基本上都是默认,打开ETH的中断功能即可
    stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第2张图片
    stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第3张图片

stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第4张图片

基本上硬件配置也就是这些,然后接下来生成工程,烧录即可,但是烧录之后发现网口灯不亮,这第一步就失败了,接下来车看原理图,发现默认的ETH里面还有一个引脚没有配置

stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第5张图片

查看芯片手册发现这个脚必须有25M的晶振才行
stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第6张图片

2.配置MCO引脚

stm32的MCO功能默认的固定引脚就是PA8,所以只需在时钟配置功能界面下配置即可
stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第7张图片

stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第8张图片

stm32F107VCT6 + CUBMX + DP83848 + lwip 移植_第9张图片

然后接下来重新生成工程,烧录,网口灯亮了起来,第一步硬件配置算是成功了

3.关于一些DP83848芯片物理地址和寄存器地址的配置只要按寄存器手册来就行,物理地址的配置跟那5个特定的引脚有关系,默认都是0x01

RXD_0 ~ RXD_3 这四个脚都是内部弱下拉,默认为0, COL 内部弱上拉,默认为1,所以默认地址是0x01

你可能感兴趣的:(stm32,嵌入式)