Seriell-till-WiFi med WizFi250-CSI (2 / 5 steg)
Steg 2: Skriv "C skriptfil" för seriell-till-WiFi
Se den nedan skriptfil.
< p > #include "WizFi250-CSI.h" < /p >< p > void main(void)
{
struct sockaddr_in stSockAddr;
int Res, resultatet; < /p >< p > / / gå till AP
om (resultatet = wifi_join ("WizFiDemoAP", "wpa2", "12345678", 0, 0, 0)! = 0)
{
printf ("wifi_join fel: %d", resultatet);
hemkomst.
} < /P >< p > / / TCP Socket
int SocketFD = socket (PF_INET, SOCK_STREAM, IPPROTO_TCP);
om (-1 == SocketFD)
{
printf kan inte ("skapa socket\r\n");
hemkomst.
} < /P >< p > / / Definiera Server IP, Port
MEMSET (& stSockAddr, 0, sizeof(stSockAddr));
stSockAddr.sin_family = AF_INET;
stSockAddr.sin_addr.s_addr = inet_addr("192.168.3.54");
stSockAddr.sin_port = htons(6000); < /p >< p > om (-1 == ansluta (SocketFD, (struct sockaddr *) & stSockAddr, sizeof(stSockAddr)))
{
printf ("ansluta failed\r\n");
Close(SocketFD);
hemkomst.
} < /p >< p > char szData [256];
int längd = 0; < /p >< p > / / Ange GPIO12 input-pin.
pinMode (GPIO12, 1); < /p >< p > while(1)
{
längd = uart_rx (0, szData, 256);
om (längd > 0)
{
pinut (GPIO12, 0);
resultat = skicka (SocketFD, szData, längd, 0);
pinut (GPIO12, 1);
om (resultatet < 0) bryta;
} < /p >< p > längd = recv (SocketFD, szData, sizeof(szData), MSG_DONTWAIT);
om (längd == 0)
{
bryta;
}
annars om (längd < 0)
{
om (sock_error == EAGAIN) fortsätta; < /p >< p > printf ("< %d, %d >", längd, sock_error);
bryta;
}
annat
{
pinut (GPIO12, 0);
uart_tx (0, szData, längd);
pinut (GPIO12, 1);
{} < /p >< p >} < /p >< p > printf ("frånkopplad (%d) \r\n", längd);
Close(SocketFD); < /p >< p > tillbaka;
} < /p >
Eller du kan se i länken nedan.