私はLwIP_HTTP_Server_Netconn_RTOS(STM32CubeMX)というプロジェクトを作成し、ここに表示するようにTCPサーバーコードを変更しました。しかし、クライアント側で私はこのような結果を得る:STM32 LWIP netconn_writeがサイクル中にあります
S:SET/ のNum:1 のNum:6 のNum:6 のNum:6 のNum:6 のNum:7 のNum:7
を何が間違っていますか?
void http_server_serve(struct netconn *conn)
{
struct netbuf *inbuf;
char* buf;
u16_t buflen;
size_t len;
unsigned int call_times = 0;
#define SIZE_ARRAY 21
char data[SIZE_ARRAY]={0};
while(netconn_recv(conn, &inbuf) == ERR_OK)
{
netbuf_data(inbuf, (void**)&buf, &buflen);
if ((buflen >=5) && (strncmp(buf, "SET /", 5) == 0))
{
for(int i=0;i<7;i++)
{
if(conn->state == NETCONN_NONE)
{
sprintf(data, " Num: %d\n", ++call_times);
len = strlen(data);
printf(" Num: %d\n", call_times);
netconn_write(conn, (const unsigned char*)(data), (size_t)len, NETCONN_NOFLAG);
}
}
netbuf_delete(inbuf);
}
}
netconn_close(conn);
netbuf_delete(inbuf);
}
ありがとうございます!今それは動作します – Eugene