lwip连续发数据卡死_关于lwip+ucosII的不停发送数据死机的问题

在lwip+ucosII环境中,创建了一个TCP连接并试图持续发送串口接收到的数据。然而,程序在发送几帧数据后停止运行,无法继续进入TCP发送线程。当使用信号量等待串口发送时,线程出现卡死现象。如果切换为全局变量进行判断,程序则能正常工作。这个问题可能涉及到 lwip 的内部调度、缓冲区管理或信号量同步机制。
摘要由CSDN通过智能技术生成

void telnet_thread(void *arg)

{

#if OS_CRITICAL_METHOD == 3

OS_CPU_SR     cpu_sr = 0;

#endif

struct netconn *conn, *newconn;

struct ip_addr l_ip;

err_t err;

char strbuf[64], cmdbuf[30];

u16_t strlen;

s8_t cmd_c;

IP4_ADDR(&l_ip, 192,168,1,60);

/* Create a new connection identifier. */

conn = netconn_new(NETCONN_TCP);

/* Bind connection to well known port number 7. */

netconn_bind(conn, &l_ip, 150);

/* Tell connection to go into listening mode. */

netconn_listen(conn);

while(1)

{        struct netbuf *buf;

extern OS_EVENT         *Send_Flag;

extern uint8 Send_buf1[];

extern uint8 Flag;

newconn = netconn_accept(conn);

if(newconn != NULL)

{                 while(1)

{

OS

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值