我正在Visual Studio 2017(c ++)中设置服务器,并从raspberry pi(python)中设置客户端。我使用TCP / IP将传感器值从树莓派发送到Windows,数据已成功发送,但值很奇怪。在树莓派的命令行中,它说数据长度为25,所以我将服务器中的接收数据代码修改为char25。这是我的新手,请帮帮我。非常感谢!!
服务器端
char rbuf1[25];
int n = recv(clientsocket, rbuf1, 25, 0);
for (int i = 25; i >= 1; i--)
{
if (rbuf1[i] == '\n' && rbuf1[i - 1] == '\r')
{
rbuf1[i - 1] = '\0';
break;
}
}
CString strRecvData;
strRecvData.Format("%s\r\n%s %d\r\n%s\r\n\r\n", (const char*)CTime::GetCurrentTime().Format("%B %d, %Y %H:%M:%S"), p, portno, rbuf1);
m_data += strRecvData;
m_bRefershData = true;
客户端
humidity, temperature = Adafruit_DHT.read_retry(11, 18)
print client.send('Temp={}* Humidity={}%'.format(temperature, humidity))
结果图片: