LWIP有3种编程接口,分别为:RAW、NETCONN和SOCKET
RAW:RAW编程接口不需要操作系统的支持,可以直接裸机使用LWIP,但是RAW编程接口比较复杂!RAW使用的是回调机制,需要大家了解回调函数。
NETCONN和SOCKET:这两种编程接口都需要有操作系统的支持,否则的话没法使用,但是这两种接口使用起来比较简单。
至于究竟使用哪一个就看自己的需求了,建议在实际项目中使用NETCONN或SOCKET编程接口,开发难度低。
LWIP中使用UDP控制块来描述UDP,UDP控制块是UDP协议最核心的东西,UDP控制块是一个结构体,这个结构体在udp.h中定义。
struct udp_pcb
{
IP_PCB; //宏IP_PCB中的各个字段
struct udp_pcb *next; //指向udp_pcb,用于将控制块组织成链表
u8_t flags; //控制块状态字段