手把手教-gd32f450基于rt-thread发布的bsp包手动添加以太网外设

一、开发环境

rt-thread发布版本4.1.0;

bacce7b41699e502530a079236797854.png

bsp包选用的是gd32目录下的gd32450z-eval

rt-thread-v4.1.0\bsp\gd32\gd32450z-eval\

开发板gd32f450z系列开发板。

二、手动添加以太网ETH外设

先看下初始结构

1f2c34a3be8b8b869d408f7475c5a27b.png

facd9b1542d2feb7f83c7ff5c91dd8f8.png

可以看到,配置中什么也没有。

手动添加步骤如下:

①复制相应的驱动到gd32_drivers文件夹中,同时修改该文件夹中的SConscript文件(参考别的bsp包进行修改);

三个文件,分别是: drv_enet.c、synopsys_emac.c、synopsys_emac.h

39b89c98131f0d6eba9d6a52253c6c69.png

dd425b5803d4ae446a18f773b5992e65.png

# add Ethernet drivers.   
if GetDepend('RT_USING_LWIP'):       
  src += ['drv_enet.c', 'synopsys_emac.c']

②在board文件中打开Kconfig文件,添加信息如下(参考别的bsp包进行修改),保存并查看;

a104d573c1b83e253d30ac244d809b90.png

config BSP_USING_ETH
           bool "Enable Ethernet"
           select RT_USING_LWIP
           default n
           if BSP_USING_ETH
               choice
                   prompt "Select Eth PHY"
                   default PHY_USING_DP83848C
                   config PHY_USING_LAN8720A
                       bool "PHY_USING_LAN8720A"
                   config PHY_USING_DP83848C
                       bool "PHY_USING_DP83848C"
                   config PHY_USING_DM9161CEP
                       bool "PHY_USING_DM9161CEP"
               endchoice
           endif

37c4fc6b1b73388e60caf5333b0de597.png

③使能开启相应的配置,重新生成工程,查看文件结构;

b353b4f543c79ca4f1b2bc233f23ec15.png

cf2d449ad7a32b290028ddf71a6f64f4.png

bf691f5d7ed98f964e100d491fac4564.png

④编译,报错。解决办法如下,添加rt_ssize_t的定义;

4d501328b6f1038c7a0a30197f89fe9c.png

082a71f13da4d3a52c4b3a9ccd1f3677.png

⑤修改相应的引脚(因为是官方的,这里不用修改),编译下载到开发板,打印信息如下;

8cd954b85a569a95c09f4a43185da820.png

4ea55dd4afeb506531d3150e85467885.png

输入ifconfig指令:

29947fd92f3028d096a8916e53dc96b5.png

三、实验效果

编写tcp客户端测试指令,参考前面发表的文章<基于stm32单片机和ESP8266(WiFi模块)的tcp客户端测试>,将测试文件添加到工程。

开发板打印信息:

1604202d6f38b2e739c41325e4ffe3ee.png

服务器接收信息:

7a78774244dc6e88120d4dae0396c6c8.png

欢迎关注个人公众号:嵌入式学习与实践

参考:Kconfig 和 SCons 的相关介绍

https://www.rt-thread.org/document/site/#/development-tools/build-config-system/Kconfig

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值