初级会员

- 积分
- 53
- 金钱
- 53
- 注册时间
- 2017-8-2
- 在线时间
- 17 小时
|
发表于 2017-8-3 11:18:18
|
显示全部楼层
flj1234 发表于 2017-8-3 10:58
http://www.openedv.com/forum.php?mod=viewthread&tid=83741&highlight=%CD%F8%C2%E7%C9%E3%CF%F1%CD%B7这 ...
char *tcp_server_sendbuf=NULL;
u8 res123=0;
void tcp_server_test(void)
{
err_t err;
struct tcp_pcb *tcppcbnew;
struct tcp_pcb *tcppcbconn;
u8 *tbuf;
u8 key;
u8 res=0;
u8 t=0;
u32 **tbuf_data;
LCD_Clear(WHITE); //ÇåÆá
POINT_COLOR=RED; //oìé«×Öìå
LCD_ShowString(30,30,200,16,16,"Apollo STM32F4/F7");
LCD_ShowString(30,50,200,16,16,"TCP Server Test");
LCD_ShowString(30,70,200,16,16,"ATOM@ALIENTEK");
LCD_ShowString(30,90,200,16,16,"KEY0:Send data");
LCD_ShowString(30,110,200,16,16,"KEY_UP uit");
tbuf=mymalloc(SRAMIN,200);
if(tbuf==NULL)return ;
sprintf((char*)tbuf,"Server IP:%d.%d.%d.%d",lwipdev.ip[0],lwipdev.ip[1],lwipdev.ip[2],lwipdev.ip[3]);
LCD_ShowString(30,130,210,16,16,tbuf);
sprintf((char*)tbuf,"Server Port:%d",TCP_SERVER_PORT);
LCD_ShowString(30,150,210,16,16,tbuf);
tcppcbnew=tcp_new();
if(tcppcbnew)
{
err=tcp_bind(tcppcbnew,IP_ADDR_ANY,TCP_SERVER_PORT);
if(err==ERR_OK)
{
tcppcbconn=tcp_listen(tcppcbnew);
tcp_accept(tcppcbconn,tcp_server_accept);
}
else
res=1;
}
else
res=1;
POINT_COLOR=BLUE;//à¶é«×Öìå
camera_init(); //×Ô¼oìí¼óμÄ
while(res==0)
{
if(tcp_server_flag&1<<6)
{
tcp_server_flag&=~(1<<6);
}
if(tcp_server_flag&1<<5)
{
res123=netcam_fifo_read(tbuf_data);
if(res123)
{
tcp_server_sendbuf=(char *)(*tbuf_data);
tcp_server_usersent(tcppcbnew);
}else
{
delay_ms(2);
}
}
else if((tcp_server_flag&1<<5)==0)
{
LCD_Fill(30,170,lcddev.width-1,lcddev.height-1,WHITE);//ÇåÆá
}
lwip_periodic_handle();
delay_ms(2);
t++;
if(t==200)
{
t=0;
LED0_Toggle;
}
}
tcp_server_connection_close(tcppcbnew,0);
tcp_server_connection_close(tcppcbconn,0);
tcp_server_remove_timewait();
memset(tcppcbnew,0,sizeof(struct tcp_pcb));
memset(tcppcbconn,0,sizeof(struct tcp_pcb));
myfree(SRAMIN,tbuf);
LCD_Clear(WHITE);
POINT_COLOR = RED;
LCD_ShowString(30,30,200,16,16,"Apollo STM32F4/F7");
LCD_ShowString(30,50,200,16,16,"TCP Server Test");
LCD_ShowString(30,70,200,16,16,"ATOM@ALIENTEK");
POINT_COLOR=BLUE;
LCD_ShowString(30,90,200,16,16,"Connect break£¡");
LCD_ShowString(30,110,200,16,16,"KEY1:Connect");
}
我的这个程序就是没有操作系统的,但是不能在 串口&网络摄像头软件 中显示图像。
|
|