
lwip
文章平均质量分 79
slj_win
这个作者很懒,什么都没留下…
展开
-
LWIP ethernetif.c分析
1、ethernetif_init()初始化底层接口err_tethernetif_init(struct netif *netif){ struct ethernetif *ethernetif; ethernetif 是一个结构体,用来描述底层硬件设备,该结构体唯一不可或缺的是MAC地址,它是LWIP用于相应ARP查询的核心数据。其他如果没有特殊需要,可以不添加转载 2013-11-16 21:44:14 · 5912 阅读 · 0 评论 -
lwIP移植工作
lwIP移植工作(一)cc.h 与CPU和编译器的相关接口Lwip的移植主要是三个接口部分:1、与CPU或编译器相关接口(include中cc.h文件)2、与操作系统的接口;3、与底层网卡驱动的接口。一、与CPU或编译器相关接口与CPU或编译器相关接口(include中cc.h文件),主要包括数据长度,字的高低位顺序,编译器对c语言中struct结构字节对齐问题(c语言中s转载 2013-11-15 15:24:43 · 10944 阅读 · 0 评论 -
lwIP配置文件opt.h和lwipopts.h初步分析
如何去配置lwip,使它去适合不同大小的脚,这就是本贴的主题lwIP的配置问题。尤其是内存的配置,配置多了浪费,配置少了跑不了或者不稳定(会出现的一大堆莫名奇妙的问题,什么打开网页的速度很慢啊?什么丢包啊,什么死机啦,什么跑到无限循环里边去了,总之很多)。 在这里先说一下这两个配置lwip协议栈文件opt.h和lwipopts.h的关系:转载 2013-11-25 13:50:04 · 1766 阅读 · 0 评论 -
lwip--有趣的数组定义(预处理)
alignmentstructtcpincludeoutput 在全局定义的宏和在一个函数内部定义的宏有什么不同?是不是和变量的定义含义差不多,作用域不同?还是有其他的什么差别? 宏定义的作用域是同文件内从定义开始起作用 直到取消定义 static u8_t memp_memory[MEM_ALIGNMENT - 1 #define LWIP_MEMPOOL(nam转载 2013-11-25 11:51:14 · 1562 阅读 · 0 评论 -
LwIP移植心得[转]
LwIP终于能跑了,总结下:平台是LPC2136+ENC28J60,32K的RAM,软件是uCOS-II 2.51+LwIP 1.1.1。感觉主要解决两个问题:操作系统仿真层的移植。这个基于uCOS-II的代码太多了。COPY下就行!1,设备驱动的移植.驱动的移植主要就是完成ethernetif.c的工作。作者已经给好了驱动的接口。struct netif { str转载 2013-11-16 21:14:17 · 2059 阅读 · 0 评论 -
lwIP配置文件opt.h和lwipopts.h初步分析
在这里先说一下这两个配置lwip协议栈文件opt.h和lwipopts.h的关系: opt.h是lwip“出厂”时原装的配置文件,它的作者是瑞士科学院的Adam等人,而lwipopts.h的作者是stellarisWare的工程师,它集合了opt.h中常常需要改动的部分和针对Stellaris所特有的配置选项添加进来了。这两个文件里边都配置的选项,以后者为准,不是共有的选项以它转载 2013-11-26 09:17:30 · 19371 阅读 · 2 评论 -
lwIP ARP协议分析
ARP 协议分析总的来说,lwip将链路层ethernet的协议分组格式分为ether和etherarp分开处理。ip分组先进入etharp_ip_input更新一下arp表项,然后直接进入netif的input传递给上层ip层。arp分组直接进入etharp_arp_input。不送如ip层。奇怪的是,lwip把ether header的结构定义在etharp中。-ARP转载 2013-11-26 09:39:33 · 1610 阅读 · 0 评论 -
实现lwip的DHCP自动获取ip地址
上个星期,在LM3S系列移植的lwip上,实现了自动获取ip的功能。 实现过程是:1)在opt.h上使能#define LWIP_ARP 1和#define LWIP_DHCP 1;2)在lwipopts.h上使能#define LWIP_DHCP 1 和 #define DHCP_DOES_ARP_CHECK 1;3)在lwiplib.c上增加#include "转载 2014-07-31 14:25:49 · 16640 阅读 · 1 评论