lwIP TCP/IP 协议栈笔记之八: 无操作系统移植

本文介绍了如何在无操作系统环境下将lwIP TCP/IP协议栈移植到工程中,包括添加源码、配置头文件、修改网卡驱动、设置时基、初始化协议栈、选择数据包获取方式(查询或中断)以及实现ping和ipconfig命令。重点关注了协议栈初始化和数据包的处理方法。
摘要由CSDN通过智能技术生成

目录

1. lwIP添加到工程

2. 添加头文件

3. 修改网卡驱动

4. lwIP 时基

5. 协议栈初始化

6. 获取数据包

6.1 查询方式

6.2 中断方式

7. ping 命令和ipconfig命令


1. lwIP添加到工程

如上图,把源码中src 添加到工程,并添加LwIP 头文件路径。比较简单,不做赘述

2. 添加头文件

lwipopts.h、cc.h、pref.h,并放入 新建的/arch 目录。

在之前有说明相关的配置,这里直接从“contrib-2.1.0 官方例程中拷贝,并修改。

3. 修改网卡驱动

参考contrib-2.1.0\examples\ethernetif 修改。

4. lwIP 时基

实现sys_now()函数来获取系统的时钟,以毫秒为单位,LwIP 通过两次获取的时间就能判断是否有超时,从而让内核去处理对应的事件。一般用滴答定时器产生1ms的基准,并关联该函数。

5. 协议栈初始化

使用LwIP,那就必须先将协议栈初始化,我们就创建一个函数,在函数中初始化协议栈,注册网卡,设置主机的IP 地址、子网掩码、网关地址等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值