本人最近在调试网络通信,处理器是TM4C129xnczad,用的是LwIP-1.4.1,无操作系统,使用UDP向PC机发送数据。在main函数中用pbuf_alloc(PBUF_RAW,200,PBUF_RAM)申请了一个数据包p3。每5ms在PWM中断服务程序中调用udp_send(upcb,p3)向上位机发送数据。程序运行1小时左右会死机,跳到FaultISR里。我把PWM定时改成20ms,程序能运行大概5个小时后死机,改成60ms,程序大概能运行28个小时后死机。想请教一下各位,这是什么原因导致的?
xyz549040622:
没有超时处理机制吧,不然为什么会死机呢?你的死机是跑飞呢?还是停在一个地方不动了,首先要确认这一点。
user4256184:
回复 xyz549040622:
1、程序卡死在FaultISR里,这里面一直是while(1)循环
2、程序应该避免出现到FaultISR里的情况,超时复位不可接受
TI中文支持网
