![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LwIP
swyang1992
这个作者很懒,什么都没留下…
展开
-
NETIF_STATUS_CALLBACK何时会被调用
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl原创 2016-09-13 17:54:16 · 1549 阅读 · 0 评论 -
LwIP控制块
控制块其实是协议栈运行的核心,不同层对应着不同的类型的控制块 用户层:netconn 传输层:pcb 网络层:netif原创 2016-09-26 22:43:55 · 531 阅读 · 0 评论 -
LwIP有无操作系统的区别
netif的input是由网卡驱动在收到以太网包后调用 在无操作系统下: netif的input是ethernet_input,里面直接调用LwIP的内核函数来处理以太网包 在有操作系统下: netif的input是tcpip_input,里面仅仅是将收到的数据包封在TCPIP_MSG_INPKT消息内,然后发给LwIP内核线程(tcpip_thread),在LwIP内核线程调用内核函数来处原创 2016-09-25 20:48:28 · 2925 阅读 · 0 评论 -
LwIP的操作系统模拟层移植
移植操作系统模拟层,本质上就是完成操作系统接口函数的编写:信号量,邮箱,互斥量和线程。 信号量,邮箱和互斥量的操作:new,free,write,read 对于信号量,邮箱,额外四个操作:try_write,try_read,valid,invalid 线程的操作:create原创 2016-09-25 20:35:01 · 1085 阅读 · 0 评论 -
LwIP和FreeRTOS的头文件冲突问题
LwIP和FreeRTOS都有一个timer.h头文件,可能会造编译错误(没有找到正确的头文件),lwip的作者似乎已经考虑到了这一点,在lwip的源码中,都是以#include “lwip/timer.h”的方式来包含头文件,这样就可以找到正确的头文件了原创 2016-09-25 15:05:39 · 1055 阅读 · 0 评论 -
netif的linkoutput和output
linkoutput实际指向low_level_output,由IP和ARP层调用, output实际指向etharp_output,由IP层调用 它们功能上的区别是:linkoutput是发送ETH包,output是发送IP包。 所以它们本质上的区别是,linkoutput是在已知目的MAC地址时调用,而output则相反。原创 2016-10-09 17:17:24 · 2321 阅读 · 0 评论 -
NETIF_FLAG_LINK_UP的意义和作用
NETIF_FLAG_LINK_UP字段主要由DHCP和IP模块使用: DHCP:在dhcp_start中,判断网卡是否link up来决定是否直接发discovery包 IP:在ip_route中,判断网卡是否link up来选择一个有效的网卡发IP包时会判断link up,收到IP包不用判断,因为既然能收到IP包,那就说明网卡一定是link up的原创 2016-09-19 10:07:58 · 1989 阅读 · 0 评论 -
LwIP调试输出
LwIP调试输出有3个开关: LWIP_DBG_ON:总开关 LWIP_DBG_TYPES_ON:类型开关 LWIP_DBG_MIN_LEVEL:等级开关 LWIP_DBG_TYPES_ON和LWIP_DBG_MIN_LEVEL是在lwipopt.h由用户定义的 一个调试类型的debug值可以是这样形式定义的: LWIP_DBG_ON | LWIP_DBG_TYPES_ON | LWIP原创 2016-09-14 23:06:12 · 3804 阅读 · 0 评论 -
dhcp_start
dhcp_start会检查当前网卡的链路是否active,若是,则直接调用dhcp_discovery,否则,设置dhcp的state为INIT。 用户应该在在网卡active后调用netif_set_link_up,netif_set_link_up判断网卡是否设置了DHCP的flag来调用dhcp_network_changed,dhcp_network_changed内判断网卡当前的DHCP原创 2016-09-14 09:45:35 · 2192 阅读 · 0 评论 -
netif_set_link_up和netif_set_up的区别
netif_set_up是使能网卡,设置NETIF_FLAG_UP标志位,必须在网卡被使用前用户来调用 netif_set_link_up是当网卡链路层active时由网卡驱动来设置的,如,station关联上AP后就应该调用netif_set_link_up原创 2016-09-14 09:36:34 · 5854 阅读 · 0 评论 -
LwIP代码目录结构
所有的内核头文件都放在include目录下,而需要port的部分则由用户自己组织。FreeRTOS也是这样,这样的好处是便于管理和使用。原创 2016-09-29 16:34:15 · 1171 阅读 · 0 评论