新手上路
- 积分
- 39
- 金钱
- 39
- 注册时间
- 2020-2-10
- 在线时间
- 15 小时
|
1金钱
需要将数组Date[100][1024]中的数据发送出去;
每一个数据的大小为2字节;
array_rows为数组行数、array_columns_twice为数组列数的两倍;
err_t tcp_server_usersent(struct tcp_pcb *tpcb)
{
err_t ret_err;
struct tcp_server_struct *es;
es=tpcb->callback_arg;
if(es!=NULL) //连接处于空闲可以发送数据
{
for(i=0,i<array_rows,i++)
{
es->p=pbuf_alloc(PBUF_TRANSPORT, array_columns_twice,PBUF_POOL);//申请内存,一个数据为两字节
pbuf_take(es->p,&Date[i][0],array_columns_twice); //把需要发送的数据copy到es->p_tx中
tcp_server_senddata(tpcb,es); //发送数据
tcp_server_flag&=~(1<<7); //清除发送标志
if(es->p!=NULL)
{
pbuf_free(es->p); //释放内存
}
}
ret_err=ERR_OK;
}
else
{
tcp_abort(tpcb); //终止连接,删除pcb控制块
ret_err=ERR_ABRT;
return ret_err;
}
}
|
|