Linux下模拟FreeRTOS收发网络包
参考这个网址来实现:FreeRTOS simulator for Posix/Linux
- main_tcp_echo_client_tasks
- FreeRTOS_IPInit
- 初始化 ip,网关,mac等地址
- vNetworkSocketsInit() , Initialise the bound TCP/UDP socket lists
- prvIPTask
- 分支主题
- 分支主题
- vTaskStartScheduler
- FreeRTOS_IPInit
- 从linux中获取网络数据, 然后提供给RTOS的TCP/IP栈
- 跟另一个TCP Server通信
- 设置 configGATEWAY_ADDR0/3 constants in FreeRTOSConfig.h.
- 设置 MAC地址, The MAC address is set using the configMAC_ADDR0/5 constants in FreeRTOSConfig.h.
- 方法:
-
查看Software Setup
-
设置服务端server地址 configECHO_SERVER_ADDR0 to configECHO_SERVER_ADDR3
-
默认端口7, 修改一下, echoECHO_PORT
-
在不同机器上跑, 不然 ARP不会发送
-
Run the Networking demo
Run an echo server on a different machine
$ sudo nc -l 7
Run on your machine
$ sudo ./posix_demo
一个电脑跑的话, 就不用改mac地址了, 否则要确保两个电脑上的具有不同的虚拟mac地址
日志可以被发往一个udp客户端, 只要设置好即可.
-