基于NETCONN编程接口实现LWIP—netconn简介

前言

使用lwip时可以裸机跑(RAW编程接口),也可以系统跑(NETCONN或SCOKET编程接口);

1、移植修改说明

1.1 修改 cc.h 文件(暂时不懂)

  在 LWIP 中支持针对关键代码的保护,比如申请内存等,而我们知道在 UCOS II 有临界区保护,因此我们就可以使用 UCOS II 中的临界区保护函数。在 cc.h 问文件中我们使用了宏定义来实现这一功能,代码如下所示:

//使用操作系统时的临界区保护,这里以 UCOS II 为例
//当定义了 OS_CRITICAL_METHOD 时就说明使用了 UCOS II
#if OS_CRITICAL_METHOD == 1
#define SYS_ARCH_DECL_PROTECT(lev)
#define SYS_ARCH_PROTECT(lev) CPU_INT_DIS()
#define SYS_ARCH_UNPROTECT(lev) CPU_INT_EN()
#endif
#if OS_CRITICAL_METHOD == 3
#define SYS_ARCH_DECL_PROTECT(lev) u32_t lev
//UCOS II 中进入临界区,关中断
#define SYS_ARCH_PROTECT(lev) lev = OS_CPU_SR_Save()
//UCOS II 中退出 A 临界区,开中断
#define SYS_ARCH_UNPROTECT(lev) OS_CPU_SR_Restore(lev)
#

你可能感兴趣的:(嵌入式,LWIP)