我想從嵌入式設備的特定TCP端口讀取數據,然後將其發送到服務器。因此,我的整個設備都有一個連接到電路板的傳感器,例如,傳感器會在TCP端口6000上發送一些數據。我的代碼看起來像從嵌入式設備的TCP端口讀取數據
// create socket
int sockrd = socket(AF_INET, SOCK_STREAM,0);
if(sockrd < 0)
{
std::cout<<"Can't create socket\n"<<std::endl;
exit(1);
}
// Name and bind socket
struct sockaddr_in addressrd;
addressrd.sin_family = AF_INET;
addressrd.sin_addr.s_addr = inet_addr("127.0.0.1");//Provide ip of the board
addressrd.sin_port=htons(6000); // TCP port of the board
bind(sockrd,(struct sockaddr*)&addressrd, sizeof(addressrd));
if(bind < 0)
{
std::cout<<"Can't bind properly\n"<<std::endl;
}
// declare a buffer to read from the tcp port of the device
char buffer[1024];
read(sockrd,&buffer,sizeof(buffer));
close(sockrd);
我不必擔心服務器進程。我很難理解如何僅對嵌入式設備進行操作,這意味着只有我的嵌入式設備才能從各自的tcp端口讀取數據,然後將其發送到服務器。我的代碼將在嵌入了Linux內核的主板上的處理器上運行。
顯示你的代碼並解釋它做了什麼,不做什麼。如果您沒有任何代碼,請先閱讀教程。 – CodeCaster