初级会员 
  
	- 积分
 - 88
 
        - 金钱
 - 88 
 
       - 注册时间
 - 2017-2-8
 
      - 在线时间
 - 12 小时
 
 
 
 | 
 
1金钱 
udp_demo.c中 
void udp_demo_senddata(struct udp_pcb *upcb) 
{ 
        struct pbuf *ptr; 
        ptr=pbuf_alloc(PBUF_TRANSPORT,strlen((char*)tcp_demo_sendbuf),PBUF_POOL); //éêÇëÄú′æ 
        if(ptr) 
        { 
                ptr->payload=(void*)tcp_demo_sendbuf;  
                udp_send(upcb,ptr);        //udp·¢Ëíêy¾Y  
                pbuf_free(ptr);//êí·ÅÄú′æ 
        }  
}  
 
想把这个函数修改为发送Ram中的数据 
void SendData_UDP(struct udp_pcb *upcb,u8*ps,u16 len) 
{ 
        struct pbuf *ptr; 
        ptr=pbuf_alloc(PBUF_TRANSPORT,len,PBUF_RAM); 
        if(ptr) 
        { 
                ptr->payload=(void*)ps;  
                //ptr->len=len; 
                //ptr->tot_len=len; 
                udp_send(upcb,ptr);        //udp·¢Ëíêy¾Y  
                pbuf_free(ptr);//êí·ÅÄú′æ 
        }  
}  
 
实际调试中更换PBUF_TRANSPORT和PBUF_RAM多次,现象是能发送1~2次,之后就出现了硬件错误,不知道是和原因: 
1\申请内存出了错误, 
2\内存释放出了错误 
3\内存申请后,初始化不完全 
 
 
新手,对LWIP了解很少,求大神帮忙 
 |   
 
 
 
 
 
 |