首先,直接去找一个ucosiii的例程, 这里选择的是正点原子的f429 开发板的<<例6-1 UCOSIII任务创建和删除>>,这里就直接改名字成ucosiii移植lwip2.1.2。ucosiii就不移植了,这里说一下,问啥要自己移植,因为我没找到这样的例程,野火的例程太杂乱了并且没有ucosiii的例程,原子的例程都是1.4.1版本的lwip,这个版本好像没有socket,自己搞吧,哎...
工程改完名字,编译一下,通过。 然后准备好了 lwip-2.1.2, contrib-2.1.0两个文件夹。
然后在MDK文件里新建一个文件夹LWIP,里面放了三个文件,其中arch lwip_app是自己创建的文件夹,lwip-2.1.2是直接拷贝放进来的。
然后在MDK工程中,先添加好lwip的源文件,和对应的路径。
然后在LWIP添加lwip-2.1.2 的源文件,
然后在contrib-2.1.0\examples\example_app拷贝lwipopts.h 到arch文件夹,在contrib-2.1.0\ports\unix\port\include\arch拷贝cc.h和pref.h到arch文件夹,然后自己创建sys_arch.c和sys_arch.h,这里我直接复制的原子的ucosiii+lwip1.4.1版本的这两个文件,目录如下:
这里做完编译一下,一大堆错误,先不截图,原子这里还要修改一个文件夹的名字,lwip里面有个sys.c 和 sys.h,和原子的文件名字冲突了,这里修改成 lwip_sys.c lwip_sys.h。
然后这些名字都要改掉。
OK啊,一键搞定。先编译一下,115个errors
从第一个error看起,未定义 sys_prot_t ,这里直接替换了cc.h文件里面的内容,代码先不贴出来,到时候整个工程发出来。
再编译一下,44个error。
看了一下,lwip_cpu.h里面就一句话,直接拷贝到了cc.h文件里面。
后面错误太多了,就没记录了。
把工程上传一下吧,还不知道有没有问题。
链接:https://pan.baidu.com/s/1IC4e-bLMkV5ovJ-Wdl6YbQ
提取码:62af
复制这段内容后打开百度网盘手机App,操作更方便哦