LWIP
文章平均质量分 51
真的改完最后一个bug就下班
一日不读书,无人看的出;一周不读书,开始会动粗;一月不读书,笨的像头猪。
展开
-
lwip多线程使用说明,注意事项
lwIP: Common pitfalls原创 2024-10-15 14:58:23 · 88 阅读 · 0 评论 -
LWIP_HOOK_UNKNOWN_ETH_PROTOCOL宏定义使用方法
通过包含头文件的方式,不利于移植;如果调用lwip是通过lib方式调用,那这个lwip.lib移植就受限,不灵活,必须将LWIP_HOOK_FILENAME 具体的路径包含在工程里,不方便在不同工程调用。例如,你可以决定如何处理这些未知类型的数据包,例如将其转发到另一个接口、将其丢弃或将其传递给应用程序进行处理。这样改动小,也方便移植,自己在不同工程中自定义自己的eth_unknow_type_hook函数即可。2) 使能LWIP_HOOK_UNKNOWN_ETH_PROTOCOL,对应都具体的函数。原创 2024-01-18 11:00:48 · 433 阅读 · 1 评论 -
调用lwip的函数,在LWIP_ASSERT_CORE_LOCKED()出错
1、lwip在很多函数里都加了LWIP_ASSERT_CORE_LOCKED断言判定,比如我直接发送以太网报文是,调用ethernet_output函数就有这个判定。已解决:MCUX SDK和lwIP -- 使用LWIP_ASSERT_CORE_LOCKED - 恩智浦社区 (nxp.com)就是检测锁有没有lock啊(前提是使能了LWIP_FREERTOS_CHECK_CORE_LOCKING)原创 2024-01-08 11:57:20 · 955 阅读 · 0 评论 -
lwip发送组播数据问题
在ip4_route函数中,使能组播后(LWIP_MULTICAST_TX_OPTIONS=1),貌似这个代码。2)或者通过ip4_set_default_multicast_netif,强制设置一个网卡为默认组播网卡。1、今天测试组播包发现,组播数据只能在默认网卡发送成功,多次交叉测试依然这样,所以和网卡的配置无关。函数,将ip4_default_multicast_netif设置为NULL,则取消这个限制,需要改ip4_route,或者ip4_route_src 函数代码啊。限制死了发送数据的网卡啊,原创 2024-01-03 18:07:02 · 755 阅读 · 3 评论 -
lwip初始化网卡和使用
2)我们要把网卡 gnetif挂载到netif_list链表上才能使用,因为LwIP是通过链表来管理所有的网卡,所有第二步是通过netif_add()函数将我们的网卡挂载到netif_list链表上。总之一句话,在开始使用LwIP协议栈的时候,我们就需要将网卡底层移植完成,才能开始使用,而移植的第一步,就是将网络进行初始化,并且设置该网卡为默认网卡,让LwIP能通过网卡进行收发数据。1)lwip把网卡抽象成netif结构体了,所以需要先定义一个网卡结构体变量struct netif gnetif。原创 2023-12-29 11:22:48 · 658 阅读 · 0 评论 -
setsocket函数,<设置组播属性>
具体的实现函数是:lwip_setsockopt_impl(int s, int level, int optname, const void *optval, socklen_t optlen)源码位置\lwip\lwip-stack\src\api\sockets.c中,lwip的setsocket函数可以设置很多属性,原创 2023-12-21 16:59:34 · 579 阅读 · 0 评论 -
ICMP相关记录
icmp是差错控制报文常见的ping就属于ICMP报文原创 2023-12-18 09:53:22 · 79 阅读 · 0 评论 -
ARP相关记录
lwIP 描述ARP 缓存表和ARP 相关处理函数由etharp.c/h 文件定义原创 2023-12-17 20:05:05 · 211 阅读 · 1 评论 -
LWIP源码认识记录
2、demo例程与移植:lwip\lwip-contrib。1、内核:\src\core的各源文件含义。原创 2023-12-17 17:54:37 · 61 阅读 · 0 评论