新手入门
- 积分
- 14
- 金钱
- 14
- 注册时间
- 2024-6-17
- 在线时间
- 5 小时
|
1金钱
128字节能正常ping通,设置512字节,ping一会就会出现程序卡死的情况,需要重启单片机才能恢复。打开lwip自己的debug功能,卡死的情况没有出现任务输出。不确定问题出在哪里,使用STM32CUBEMX+freertos,lwip配置如下:
- #define WITH_RTOS 1
- /*----- CHECKSUM_BY_HARDWARE enabled -----*/
- #define CHECKSUM_BY_HARDWARE 1
- /*-----------------------------------------------------------------------------*/
- /* LwIP Stack Parameters (modified compared to initialization value in opt.h) -*/
- /* Parameters set in STM32CubeMX LwIP Configuration GUI -*/
- /*----- Default value in ETH configuration GUI in CubeMx: 1524 -----*/
- #define ETH_RX_BUFFER_SIZE 1536
- /*----- Value in opt.h for MEM_ALIGNMENT: 1 -----*/
- #define MEM_ALIGNMENT 4
- /*----- Default Value for MEM_SIZE: 1600 ---*/
- #define MEM_SIZE 14336
- /*----- Default Value for H7 devices: 0x30004000 -----*/
- #define LWIP_RAM_HEAP_POINTER 0x30004000
- /*----- Value supported for H7 devices: 1 -----*/
- #define LWIP_SUPPORT_CUSTOM_PBUF 1
- /*----- Value in opt.h for LWIP_ETHERNET: LWIP_ARP || PPPOE_SUPPORT -*/
- #define LWIP_ETHERNET 1
- /*----- Value in opt.h for LWIP_DNS_SECURE: (LWIP_DNS_SECURE_RAND_XID | LWIP_DNS_SECURE_NO_MULTIPLE_OUTSTANDING | LWIP_DNS_SECURE_RAND_SRC_PORT) -*/
- #define LWIP_DNS_SECURE 7
- /*----- Value in opt.h for TCP_SND_QUEUELEN: (4*TCP_SND_BUF + (TCP_MSS - 1))/TCP_MSS -----*/
- #define TCP_SND_QUEUELEN 9
- /*----- Value in opt.h for TCP_SNDLOWAT: LWIP_MIN(LWIP_MAX(((TCP_SND_BUF)/2), (2 * TCP_MSS) + 1), (TCP_SND_BUF) - 1) -*/
- #define TCP_SNDLOWAT 1071
- /*----- Value in opt.h for TCP_SNDQUEUELOWAT: LWIP_MAX(TCP_SND_QUEUELEN)/2, 5) -*/
- #define TCP_SNDQUEUELOWAT 5
- /*----- Value in opt.h for TCP_WND_UPDATE_THRESHOLD: LWIP_MIN(TCP_WND/4, TCP_MSS*4) -----*/
- #define TCP_WND_UPDATE_THRESHOLD 536
- /*----- Default Value for LWIP_NETIF_STATUS_CALLBACK: 0 ---*/
- #define LWIP_NETIF_STATUS_CALLBACK 1
- /*----- Value in opt.h for LWIP_NETIF_LINK_CALLBACK: 0 -----*/
- #define LWIP_NETIF_LINK_CALLBACK 1
- /*----- Value in opt.h for TCPIP_THREAD_STACKSIZE: 0 -----*/
- #define TCPIP_THREAD_STACKSIZE 1024
- /*----- Value in opt.h for TCPIP_THREAD_PRIO: 1 -----*/
- #define TCPIP_THREAD_PRIO 24
- /*----- Value in opt.h for TCPIP_MBOX_SIZE: 0 -----*/
- #define TCPIP_MBOX_SIZE 6
- /*----- Value in opt.h for SLIPIF_THREAD_STACKSIZE: 0 -----*/
- #define SLIPIF_THREAD_STACKSIZE 1024
- /*----- Value in opt.h for SLIPIF_THREAD_PRIO: 1 -----*/
- #define SLIPIF_THREAD_PRIO 3
- /*----- Value in opt.h for DEFAULT_THREAD_STACKSIZE: 0 -----*/
- #define DEFAULT_THREAD_STACKSIZE 1024
- /*----- Value in opt.h for DEFAULT_THREAD_PRIO: 1 -----*/
- #define DEFAULT_THREAD_PRIO 3
- /*----- Value in opt.h for DEFAULT_UDP_RECVMBOX_SIZE: 0 -----*/
- #define DEFAULT_UDP_RECVMBOX_SIZE 6
- /*----- Value in opt.h for DEFAULT_TCP_RECVMBOX_SIZE: 0 -----*/
- #define DEFAULT_TCP_RECVMBOX_SIZE 6
- /*----- Value in opt.h for DEFAULT_ACCEPTMBOX_SIZE: 0 -----*/
- #define DEFAULT_ACCEPTMBOX_SIZE 6
- /*----- Value in opt.h for RECV_BUFSIZE_DEFAULT: INT_MAX -----*/
- #define RECV_BUFSIZE_DEFAULT 2000000000
- /*----- Value in opt.h for LWIP_STATS: 1 -----*/
- #define LWIP_STATS 0
- /*----- Value in opt.h for CHECKSUM_GEN_IP: 1 -----*/
- #define CHECKSUM_GEN_IP 0
- /*----- Value in opt.h for CHECKSUM_GEN_UDP: 1 -----*/
- #define CHECKSUM_GEN_UDP 0
- /*----- Value in opt.h for CHECKSUM_GEN_TCP: 1 -----*/
- #define CHECKSUM_GEN_TCP 0
- /*----- Value in opt.h for CHECKSUM_GEN_ICMP6: 1 -----*/
- #define CHECKSUM_GEN_ICMP6 0
- /*----- Value in opt.h for CHECKSUM_CHECK_IP: 1 -----*/
- #define CHECKSUM_CHECK_IP 0
- /*----- Value in opt.h for CHECKSUM_CHECK_UDP: 1 -----*/
- #define CHECKSUM_CHECK_UDP 0
- /*----- Value in opt.h for CHECKSUM_CHECK_TCP: 1 -----*/
- #define CHECKSUM_CHECK_TCP 0
- /*----- Value in opt.h for CHECKSUM_CHECK_ICMP6: 1 -----*/
- #define CHECKSUM_CHECK_ICMP6 0
- /*-----------------------------------------------------------------------------*/
复制代码 有接触过这方面的朋友能解答一下吗?
|
|