为采集某设备UDP 输出的不定长数据帧 如下44 41 54 41 2A 29 0 0 0 BF DE A0 41 BF DE A0 41 0 0 48 42 0 0 48 42 0 0 48 42 0 0 48 42 0 0 48 42 0 0 48 42 2A 0 0 0 17 F2 7C 42 17 F2 7C
因为成本限制硬件无法跑 os ,采用了裸机lwip udp 解析数据,但是回调函数void udp_input_recv(void *arg,struct udp_pcb *upcb,struct pbuf *p,struct ip_addr *addr,u16_t port)中如果用if(p!=NULL)接收只能收到
帧头数据,因为后续出现0x00,且帧不定长但是不超过200字节,帧尾无判断标志位。实在没有思路,求启发。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
在PBUF的结构体时每次回调后接收字节的长度
谢谢给位。我选择了这个方法,并将接收数据缓存区固定512byte,超过就丢弃。现在解决了!
再次感谢。
一周热门 更多>