ຈຸດປະສົງຂອງ app ນີ້ແມ່ນເພື່ອຄວບຄຸມຮາດແວຫ່າງໄກສອກຫຼີກເຊັ່ນ: Arduino, Netduino, Raspberry Pi ...
ອະນຸສັນຍາ TCP / IP (Client).
ເຖິງ: 0, ພະລັງງານ, 0
DOWN: 0, -POWER, 0
ຊ້າຍ: -POWER, ພະລັງງານ, 0
ຂວາ: ພະລັງງານ, ພະລັງງານ, 0
MIDDLE: 0, 0, 0 ເປັນ 0, 0, ພະລັງງານ (Zero ການເຄື່ອນໄຫວ)
Mode Byte: 3 ຕໍາແຫນ່ງມີການໂອນເປັນ 3 bytes (default)
ຮູບແບບ ASCII: 3 ຕໍາແຫນ່ງມີການໂອນເປັນຂໍ້ຄວາມ seperated ດ້ວຍເຄື່ອງຫມາຍຈຸດ (ສິ້ນສຸດລົງດ້ວຍ \ n)
inactive Session: ລະບົບສາຍສົ່ງໃນການເຊື່ອມຕໍ່ Serated ແຕ່ລະ
ກອງປະຊຸມການເຄື່ອນໄຫວ: ການເຊື່ອມຕໍ່ທີ່ບໍ່ເຄີຍປິດ, ແຕ່ຖ້າຫາກວ່າມີຄວາມຈໍາເປັນດະອັດຕະໂນມັດ (default)
ສູນ inactive: ບໍ່ມີຜົນຕອບແທນກັບຄຸນຄ່າສູນຫຼັງຈາກການປ່ອຍ
ສູນການເຄື່ອນໄຫວ: ຜົນຕອບແທນອັດຕະໂນມັດກັບຄຸນຄ່າສູນຫຼັງຈາກການປ່ອຍ
ລະຫັດຕົວຢ່າງສໍາລັບການເຄື່ອງແມ່ຂ່າຍຂອງກ່ຽວກັບ Raspberry Pi ເປັນ:
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "unistd.h"
#include "sys / types.h"
#include "sys / socket.h"
#include "netinet / in.h"
ຄວາມຜິດພາດ void (const char * msg)
{
perror (msg)
ການທ່ອງທ່ຽວ (1)
}
int main (int argc, char * argv [])
{
int sockfd, newsockfd, portno, n;
socklen_t clilen;
char buffer [256]
struct serv_addr sockaddr_in, cli_addr;
sockfd = socket (AF_INET, SOCK_STREAM, 0);
ຖ້າຫາກວ່າ (sockfd <0)
ຄວາມຜິດພາດ ( "ຄວາມຜິດພາດ socket ເປີດ");
bzero ((char *) & serv_addr, sizeof (serv_addr))
portno = 12345;
serv_addr.sin_family = AF_INET;
serv_addr.sin_addr.s_addr = INADDR_ANY;
serv_addr.sin_port = htons (portno)
ຖ້າຫາກວ່າ (bind (sockfd, (struct sockaddr *)
ແລະ Serv_addr, sizeof (serv_addr)) <0)
ຄວາມຜິດພາດ ( "ຄວາມຜິດພາດກ່ຽວກັບການຜູກມັດ");
ໃນຂະນະທີ່ (1)
{
ຟັງ (sockfd, 5)
clilen = sizeof (cli_addr)
newsockfd = ຍອມຮັບ (sockfd, (struct sockaddr *)
ແລະ Cli_addr, ແລະ clilen)
ຖ້າຫາກວ່າ (newsockfd <0)
ຄວາມຜິດພາດ ( "ຜິດພາດທີ່ສຸດຍອມຮັບ");
ໃນຂະນະທີ່ (1)
{
bzero (buffer, 256);
n = ອ່ານ (newsockfd, ກັນ, 3)
ຖ້າຫາກວ່າ (n <3)
{
ຄວາມຜິດພາດ ( "ຄວາມຜິດພາດການອ່ານຈາກ socket");
ທໍາລາຍ;
}
float tmp1 = (float) buffer [0]
ຖ້າຫາກວ່າ (tmp1> 127)
tmp1 - = 256
float tmp2 = (float) buffer [1]
ຖ້າຫາກວ່າ (tmp2> 127)
tmp2 - = 256
ເລື່ອນ TMP3 = (float) buffer [2]
ຖ້າຫາກວ່າ (TMP3> 127)
TMP3 - = 256
printf ( "% d% d% d \ n", (int) tmp1, (int) tmp2, (int) TMP3)
}
ໃກ້ (newsockfd)
}
ໃກ້ (sockfd)
ກັບຄືນ 0
}
ອັບເດດແລ້ວເມື່ອ
23 ມ.ນ. 2016