【LwIP学习营】【第一周】环境搭建和配置验证

发布于 2018-05-17 11:54:06
    本帖最后由 chowguohua 于 2018-5-17 11:52 编辑


硬件:使用板卡为自己画的电路板,与stm32f429-apollo电路少许调整
软件: MDK5.25.2.0,evn0.7.0,rtt3.0.2
1、在本机上下载git,安装git,以便下载pakgs,git 的下载地址为
clipboard.png
2、运行env.exe,进行配置和编译
1.png
进入指定的bsp目录:
cd ..\rt-thread-master\bsp\stm32f429-apollo\
3、bsp 配置:menuconfig
对lwip进行配置:
2.png
4、选择需要的package,在网络上进行下载,第一步安装的git就是为了下载相关包而安装
3.png4.png
由于安装的包还未在本地,需要下载
输入指令:pkgs --update
5.png
最后所有包下载完成:
6.png
本次操作都选择最新的版本,但有软件包的逐步增多,软件包列表可能会与服务器不同步,可以使用pkgs --upgrade进行同步,这个命令不仅会对本地的包信息进行更新同步,还会对env的功能脚本进行升级,建议定期使用。
5、使用scons进行编译
7.png
编译成功提示如下:

8.png
也可以选择工程类型
scons --target=mdk5
9.png
所有操作完成后,在..\bsp\stm32f429-apollo下会生成对应的工程:project.uvprojx
10.png
5、打开对应工程
11.png
12.png
6、遇到的问题:
1、找不到 "sys/select.h"文件:
修改:一个在paho_mqtt_pipe.c注释掉#include 、一个是在rtconfig.h去掉#define HAVE_SYS_SELECT_H宏定义
2、packages\netutils\ping\ping.c(106): error: #136: struct "ip_addr" has no field "addr"问题
修改:由于加入了IPV4和IPV6的兼容,因此对于ip_addr_t的定义做了调整,将to.sin_addr.s_addr = addr->addr;修改为to.sin_addr.s_addr = addr->u_addr.ip4.addr;
3、没有路由器,就使用了静态IP地址
7、运行效果
13.png
开了一个UPD和TCP的服务端,端口分别是58599,10028
14.png
tcpserver接收数据:
15.png
ping板卡:
16.png

查看更多

关注者
0
被浏览
907
2 个回答
armink
armink 2018-05-17
Nice ! 整理的非常用心

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友