uint8_t dat[]="1234567890";
/*********这是一个回调函数,当TCP客户端请求的连接建立时被调用***********/
err_t TcpCli_Connected(void *arg,struct tcp_pcb *pcb,err_t err)
{
tcp_write(pcb,dat,sizeof(dat),0); //发送数据
tcp_close(pcb); //关闭控制块
return ERR_OK;
}
void TCP_Client_Init(void)
{
struct tcp_pcb *Clipcb;
struct ip_addr ipaddr;
IP4_ADDR(&ipaddr,192,168,1,16);
Clipcb=tcp_new(); //建立通信的TCP控制块(Clipcb)
tcp_bind(Clipcb,IP_ADDR_ANY,8180);
tcp_connect(Clipcb,&ipaddr,8180,TcpCli_Connected);
}
int main(void)
{
/*初始化 以太网SPI接口*/
uint16_t i=0;
for(i=0;i<1024;i++)
dat_AD[i]=i;
ENC_SPI_Init();
/*初始化systick,用于定时轮询输入或给LWIP提供定时*/
SysTick_Init();
/* 初始化LWIP协议栈*/
LwIP_Init();
/*初始化web server 显示网页程序*/
TCP_Client_Init();
/* Infinite loop */
while ( 1 )
{
/*轮询*/
LwIP_Periodic_Handle(LocalTime);
delay(0xfffff);delay(0xffffff);
}
}
|