我现在有一组信号采集到的数据,由于数据较多,内部sram放不下,所以我把数据(包含几万个点的数组)暂时存在了外部SDRAM里面,现在我需要将改数据通过网口传输至电脑处理,由于受到内存池的限制,我将数据分100次传输,每次传1200个字节的数据,但是发现网络调试助手接收不到数据,请问是为什么呢,求帮助!下面是我UDP通信网口传输的部分函数:
for(SendCount=0;SendCount<100;SendCount++)
{
p = pbuf_alloc(PBUF_TRANSPORT,1200, PBUF_POOL);
if (p != NULL)
{
/* copy data to pbuf */
pbuf_take(p, (char*)RevBuff+SendCount*1200, 1200);
/* send udp data */
udp_send(upcb, p);
/* free pbuf */
pbuf_free(p);
}
else
{
/* free the UDP connection, so we can accept new clients */
udp_remove(upcb);
#ifdef SERIAL_DEBUG
printf("
can not allocate pbuf ");
#endif
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>