全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 嵌入式技术 >

基于DWC_ether_qos的以太网驱动开发-LWIP在PC上进行开

时间:2023-09-11 08:40

人气:

作者:admin

标签: 调试  以太网  LwIP 

导读:本文转自公众号欢迎关注 基于DWC_ether_qos的以太网驱动开发-LWIP在PC上进行开发调试 (qq.com) https://mp.weixin.qq.com/s/YCHunvHybX6Ugp93GvsldQ 一. 前言 LWIP是优秀的嵌入式TCP/IP协议栈,我们之前介绍了...

本文转自公众号欢迎关注

基于DWC_ether_qos的以太网驱动开发-LWIP在PC上进行开发调试 (qq.com)

https://mp.weixin.qq.com/s/YCHunvHybX6Ugp93GvsldQ

一.前言

LWIP是优秀的嵌入式TCP/IP协议栈,我们之前介绍了其在嵌入式环境裸机和RTOS环境的移植,有时候我们仅仅是需要调试协议栈本身,在嵌入式环境中可能调试不便,此时我们可以直接在PC环境下进行协议栈调试。以下以WSL+Ubuntu环境介绍LWIP的开发环境的搭建。

二.创建 tap 虚拟网卡

安装 UML

sudo apt install uml-utilities

创建 tap0

sudo tunctl -u someuser

如下

lhj@DESKTOP-BINN7F8:~/lwip$ sudo tunctl -u lhj

查看网卡

ifconfig

如下

tap0: flags=4099 mtu 1500

设置网卡IP并启用

sudo ifconfig tap0 192.168.1.10up

如果需要删除网卡可以使用sudo tunctl -d tap0

三.编译LWIP

安装必要的工具

sudo apt install bridge-utils

sudo apt install cmake

lgit clone https://github.com/lwip-tcpip/lwip.git

lcd lwip

lsudo ./contrib/ports/unix/setup-tapif #默认使用tap0

lcp ./contrib/examples/example_app/lwipcfg.h.example ./contrib/examples/example_app/lwipcfg.h

lvim ./contrib/examples/example_app/lwipcfg.h

去掉`#define USE_DHCP 0` 和`#define USE_AUTOIP 0`的注释,并将`LWIP_LWIPERF_APP`的宏定义为 1

lcd ./contrib/ports/unix/example_app/

lmkdir build && cd build

lcmake -DLWIP_DIR=/home/lhj/lwip ..

lmake

lsudo ./example_app

四.测试

另开一个shell,安装工具iperf

sudo apt install iperf

运行连接服务端进行测试

iperf -c 192.168.1.200

新开的shell作为客户端IP为192.168.1.1,lwipbridge可以看到

lwipbridge: flags=4163 mtu 1500

原来运行example_app的shell为服务端IP为192.168.1.200监听端口5001。

测试结果如下

wKgaomT-a4eASU5pAAN8tVb5SkU139.png


五.使用gdb调试

lwip/contrib/ports/unix/example_app/Makefile

添加一行

CFLAGS+=-g3

重新make

使用gdb调试代码

sudo gdb ./example_app

b main #断点到main函数处

r #运行,到main断点处停止

layout src #查看源码

n #运行到下一行

s #单步运行到下一语句

wKgZomT-a4eAcGJTAAO1wIvbvLk990.pngwKgaomT-a4iAMWx0AAK4eAwCxhQ439.png

使用vscode浏览代码

code .

六.总结

LWIP可以方便的在PC上搭建开发环境进行协议栈的开发调试。

审核编辑 黄宇

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信