4、4G杂项:lwip_ 卡简述(以8910平台为例)

目录

??点击这里查看所有博文

??随着自己工作的进行,接触到的技术栈也越来越多。给我一个很直观的感受就是,某一项技术/经验在刚开始接触的时候都记得很清楚。往往过了几个月都会忘记的差不多了,只有经常会用到的东西才有可能真正记下来。存在很多在特殊情况下有一点用处的技巧,用的不多的技巧可能一个星期就忘了。

??想了很久想通过一些手段把这些事情记录下来。也尝试过在书上记笔记,这也只是一时的,书不在手边的时候那些笔记就和没记一样,不是很方便。

??很多时候我们遇到了问题,一般情况下都是选择在搜索引擎检索相关内容,这样来的也更快一点,除非真的找不到才会去选择翻书。后来就想到了写博客,博客作为自己的一个笔记平台倒是挺合适的。随时可以查阅,不用随身携带。

??同时由于写博客是对外的,既然是对外的就不能随便写,任何人都可以看到。经验对于我来说那就只是经验而已,公布出来说不一定我的一些经验可以帮助到其他的人。遇到和我相同问题时可以少走一些弯路。

??既然决定了要写博客,那就只能认真去写。不管写的好不好,尽力就行。 ,写的多了慢慢也会变好的。权当是记录自己的成长的一个过程,等到以后再往回看时,就会发现自己以前原来这么菜??。

简介

络接口(如以太 接口)是硬件接口,如何和软件进行无缝衔接尼件中是通过定义了一个netif的结构体来描述 卡设备。
lwip中实现 卡驱动的模块是ethernetif.c,可以看成是链路层的驱动封装模块。

netif结构体

对于单 卡设备只有一个netif结构体,多 卡中对应着多个netif结构体。

启动步骤

1.初始化

  1. net_init

建立net_thread线程,接收PDP的消息上 ,如:ACT,DEACT等消息。

  1. tcpip_init

lwip协议栈的初始化,主要内容包括建立邮箱,建立tcpip_task,超时函数的初始化,以及在lwip_init里面各个 络协议的初始化。

  1. ip4_nat_init

初始化nat表管理定时器,定时检查更新nat表。

2.注册上

1. 创建 卡

PDP激活后,向net_thread发送EV_TCPIP_CFW_GPRS_ACT消息,会携带cid和simid的消息。使用判断该通道是否打开了NAT转换功能。默认cid5通道是打开的。

  1. 主要功能

创建一个LAN的netif,创建的过程与WAN的过程差不多,只是绑定的参数有些不一样。LAN的netif都维护在gprs_netif全局变量中,根据

  1. 主要功能函数
  1. 初始化NAT上下文,维护在全局变量中
  1. 主要功能

该函数实现的功能和上面两个差不多,都是初始化netif,只不过因为上面开通了NAT功能,所以要经过NAT层转换一下。注意

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年9月21日
下一篇 2022年9月21日

相关推荐