第五章(NO OS)和 第14章(OS) 分别讲了怎么移植 LWIP
1 移植
完成头文件的定义
cc.h
lwipopts.h
pref.h
根据使用的具体网卡情况完成 src/netif/ethernetif.c 的编写
2 应用
裸机中循环检测
main
tcpip_init
netif_add(ethernet_input)
int_config
while(1){
...
}
中断中
ethernetif_input
low_level_input
netif->input
裸机中中断检测
main
tcpip_init
netif_add(ethernet_input)
while(1){
if (网卡数据来了){
ethernetif_input
low_level_input
netif->input
}
...
}
1 移植
完成头文件的定义
cc.h
lwipopts.h
pref.h
根据使用的具体网卡情况完成 src/netif/ethernetif.c 的编写
完成 sys_arch.c 和 sys_arch.h 的编写,主要对接 mbox 和 sem
2 应用
os中中断检测
one task
tcpip_init
netif_add(tcpip_input);
int_config
sys_thread_new
...
中断中
ethernetif_input
low_level_input
netif->input
os中循环检测
one task
tcpip_init
netif_add(tcpip_input);
sys_thread_new
sys_thread_new
收数据线程
while(1){
if (网卡数据来了){
ethernetif_input
low_level_input
netif->input
}
}
http进程
....