初级会员
- 积分
- 178
- 金钱
- 178
- 注册时间
- 2016-7-1
- 在线时间
- 28 小时
|
1金钱
这是f4开发板做客户端,电脑做服务器,有个疑问为何打印顺序是2222444443333333,按顺序执行程序就该是234啊
if(tcp_echoclient_pcb!=NULL)
{
printf("2222");
IP4_ADDR(&rmtipaddr,remoteip[0],remoteip[1],remoteip[2],remoteip[3]);
tcp_connect(tcp_echoclient_pcb,&rmtipaddr,TCP_CLIENT_PORT,tcp_client_connected);
printf("44444");
}
err_t tcp_client_connected(void *arg, struct tcp_pcb *tpcb, err_t err)
{
struct tcp_client_struct *es=NULL;
if(err==ERR_OK)
{
es=(struct tcp_client_struct*)mem_malloc(sizeof(struct tcp_client_struct)); //éêÇëÄú′æ
if(es) //Äú′æéêÇë3é1|
{
printf("33333333");
es->state=ES_TCPCLIENT_CONNECTED;//×′ì¬Îaᬽó3é1|
es->pcb=tpcb;
es->p=NULL;
tcp_arg(tpcb,es); //ê1óÃes¸üDÂtpcbμÄcallback_arg
tcp_recv(tpcb,tcp_client_recv); //3õê¼»ˉLwIPμÄtcp_recv»Øμ÷1|Äü
tcp_err(tpcb,tcp_client_error); //3õê¼»ˉtcp_err()»Øμ÷oˉêy
tcp_sent(tpcb,tcp_client_sent); //3õê¼»ˉLwIPμÄtcp_sent»Øμ÷1|Äü
tcp_poll(tpcb,tcp_client_poll,1); //3õê¼»ˉLwIPμÄtcp_poll»Øμ÷1|Äü
tcp_client_flag|=1<<5; //±ê¼Çᬽóμ½·tÎñÆ÷áË
err=ERR_OK;
printf("tcp_client_flag=%d",tcp_client_flag);
}else
{
tcp_client_connection_close(tpcb,es);//1رÕᬽó
err=ERR_MEM; //·μ»ØÄú′æ·ÖÅä′íÎó
printf("55555555");
}
}else
{
tcp_client_connection_close(tpcb,0);//1رÕᬽó
}
return err;
}
|
|