STM32
登录
直播中
微风挽雨
9年用户
927经验值
擅长:可编程逻辑 电源/新能源 嵌入式技术
私信
关注
[问答]
怎样去设计一种基于stm32f407和Lan8720的rt-thread操作系统
开启该帖子的消息推送
操作系统
LAN8720
STM32F407
rt-thread操作系统有哪些功能?
怎样去设计一种基于
STM32
f407和Lan8720的rt-thread操作系统?
回帖
(1)
齐镭
2021-10-26 11:15:37
硬件资源:正点原子stm32f407 探索者开发板,板载Lan8720以太网芯片
操作系统:rt-thread 4.0.1
实验目的:
1.实现ping功能,能够ping通外网
2.实现Telnet功能,能够使用类似于CRT这种工具进行远程连接调试
步骤1:下载rt-thread 4.0.1源码,可以到rtthread官网或者是github进行下载,这里给出官网的百度网盘下载连接供下载。
步骤2:进入rt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorer文件夹,在该文件夹内打开env窗口
如下图所示:
输入menuconfig命令,进入参数配置页面
步骤3:选择使能以太网功能
选择socket抽象层
选择ping、ifconfig等特性
使能lwip协议栈,目前rt-thread中支持协议栈最新的版本为2.1.0
然后去在线包选择iot,主要选择ping和telnet server
步骤4.保存,退出,回到命令行窗口。输入命令pkg --update 等待更新包。
步骤5.使用命令scons --target=mdk5,重新构建工程,等待构建成功即可。
步骤6.打开工程文件,C:UsersAdministratorDesktoprt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorerproject.uvprojx,重新编译一遍。
修改代码,解决上述三个问题:
打开netdev.c文件,定位到代码1025行,将该行代码修改即可解决以上三个问题。
//原始代码块
FINSH_FUNCTION_EXPORT_ALIAS(netdev_ping, __cmd_ping, ping network host);
//更新后的
FINSH_FUNCTION_EXPORT_ALIAS(netdev_ping, __netdev_cmd_ping, ping network host);
步骤7:编译没有问题后,我们下载程序到板子上,串口输出信息如下
但是网口的灯没有亮,说明网卡部分还需要修改一下。打开工程看了才知道,网络硬件的驱动都没有加进来,我们需要自己把驱动添加进来
1.添加drv_eth.c/drv_eth.h文件,目录为:rt-thread-v4.0.1rt-threadbspstm32librariesHAL_Drivers
2.添加phy_reset.c文件,目录为rt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorerboardports
再次尝试编译,出现以下错误:
我们打开drv_eth.c发现上述变量没有定义,但是在全局搜索的时候,发现它们都在drv_eth.h中定义,但是没有打开宏开关,我们在rtconfig.h中增加宏开关#define PHY_USING_LAN8720A即可。重新编译,出现以下问题
我们只需要在STM32_HAL文件夹增加stm32f4xx_hal_eth.c即可。正常编译,通过。
步骤8:编译没有问题后,我们下载程序到板子上,串口输出信息如下。同时,网口的灯也正常闪烁了,说明网络硬件已经可以正常工作了。
步骤9:验证ping、ifconfig、telnet等功能
1.验证ping
2.验证ifconfig
3.验证telnet server功能
打开CRT软件,新建会话窗口,选择telnet,输入ip和端口,填好之后,点击确定,然后点击连接该会话即可观察到现象。
注意:调试信息只能输出到一个端口,如果开启了telnetserver后,调试信息只能输出到远程调试窗口了,不会再往串口输出了。如果主动关闭telnet窗口,串口会继续充当调试端口,输出调试信息
硬件资源:正点原子stm32f407 探索者开发板,板载Lan8720以太网芯片
操作系统:rt-thread 4.0.1
实验目的:
1.实现ping功能,能够ping通外网
2.实现Telnet功能,能够使用类似于CRT这种工具进行远程连接调试
步骤1:下载rt-thread 4.0.1源码,可以到rtthread官网或者是github进行下载,这里给出官网的百度网盘下载连接供下载。
步骤2:进入rt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorer文件夹,在该文件夹内打开env窗口
如下图所示:
输入menuconfig命令,进入参数配置页面
步骤3:选择使能以太网功能
选择socket抽象层
选择ping、ifconfig等特性
使能lwip协议栈,目前rt-thread中支持协议栈最新的版本为2.1.0
然后去在线包选择iot,主要选择ping和telnet server
步骤4.保存,退出,回到命令行窗口。输入命令pkg --update 等待更新包。
步骤5.使用命令scons --target=mdk5,重新构建工程,等待构建成功即可。
步骤6.打开工程文件,C:UsersAdministratorDesktoprt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorerproject.uvprojx,重新编译一遍。
修改代码,解决上述三个问题:
打开netdev.c文件,定位到代码1025行,将该行代码修改即可解决以上三个问题。
//原始代码块
FINSH_FUNCTION_EXPORT_ALIAS(netdev_ping, __cmd_ping, ping network host);
//更新后的
FINSH_FUNCTION_EXPORT_ALIAS(netdev_ping, __netdev_cmd_ping, ping network host);
步骤7:编译没有问题后,我们下载程序到板子上,串口输出信息如下
但是网口的灯没有亮,说明网卡部分还需要修改一下。打开工程看了才知道,网络硬件的驱动都没有加进来,我们需要自己把驱动添加进来
1.添加drv_eth.c/drv_eth.h文件,目录为:rt-thread-v4.0.1rt-threadbspstm32librariesHAL_Drivers
2.添加phy_reset.c文件,目录为rt-thread-v4.0.1rt-threadbspstm32stm32f407-atk-explorerboardports
再次尝试编译,出现以下错误:
我们打开drv_eth.c发现上述变量没有定义,但是在全局搜索的时候,发现它们都在drv_eth.h中定义,但是没有打开宏开关,我们在rtconfig.h中增加宏开关#define PHY_USING_LAN8720A即可。重新编译,出现以下问题
我们只需要在STM32_HAL文件夹增加stm32f4xx_hal_eth.c即可。正常编译,通过。
步骤8:编译没有问题后,我们下载程序到板子上,串口输出信息如下。同时,网口的灯也正常闪烁了,说明网络硬件已经可以正常工作了。
步骤9:验证ping、ifconfig、telnet等功能
1.验证ping
2.验证ifconfig
3.验证telnet server功能
打开CRT软件,新建会话窗口,选择telnet,输入ip和端口,填好之后,点击确定,然后点击连接该会话即可观察到现象。
注意:调试信息只能输出到一个端口,如果开启了telnetserver后,调试信息只能输出到远程调试窗口了,不会再往串口输出了。如果主动关闭telnet窗口,串口会继续充当调试端口,输出调试信息
举报
更多回帖
rotate(-90deg);
回复
相关问答
操作系统
LAN8720
STM32F407
怎样
去
搭建
一种
基于
RT-Thread
实时
操作系统
的
STM32
开发环境?
2021-07-27
1226
stm32f407
网络应用
2016-09-10
4068
怎样
去
移植基于
STM32F
767的
RT-Thread
操作系统
呢
2021-11-26
1855
怎样
通过以太网+LWIP协议栈实现远程升级
stm32f407
开发板呢
2021-10-21
2249
STM32F407
能不能同时使用USB PHY和以太网PHY
2018-11-21
8793
正点原子探索者
stm32f407
rt-thread
文件
系统
怎么使用?
2021-11-25
1105
用
RT-Thread
Studio怎么配置
STM32F407
的TCPSERVER服务呢?
2022-12-29
337
如何
去
搭建
一种
基于
STM32F
107VC开发板的
rt-thread
开发环境
2021-11-05
2246
怎样
去
搭建
一
个基于
rt-thread
操作系统
的迷你时钟
2021-10-09
1231
请问
STM32
H750(ART-Pi) +
LAN8720
速率为什么达不到100Mbps?
2022-04-18
4067
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分