SWDesk/Firmware
[Nano 33 IoT] WiFi Client Example(1)
Bilient
2021. 11. 12. 16:01
#include <WiFiNINA.h>
#include <time.h>
#include <WiFiUdp.h>
#include <NTPClient.h>
#include "BConstants.h"
#define PIN_Tx0 0
#define PIN_Rx0 1
#define PIN_UARTCONTROL 2
#define PIN_LED 2
#define PIN_IRRx0 3
#define PIN_IRTx0 4
#define PIN_SWITCHIN 5
#define PIN_RELAYCONTROL 6
#define PIN_DRIVER1 7
#define PIN_DRIVER2 8
#define PIN_DRIVER3 9
#define PIN_DRIVER5 10
#define PIN_Rx1 11
#define PIN_Tx1 12
#define PIN_ADC0 A0
#define PIN_ADC1 A1
#define PIN_ADC2 A2
#define NTP_PACKET_SIZE 48
const char WiFi_SSID[] = SECRET_SSID;
const char WiFi_PW[] = SECRET_WIFIPW;
const int TimeZone = 3;
int status = WL_IDLE_STATUS;
char server[] = "www.google.com";
byte NTPPacketBuffer[NTP_PACKET_SIZE];
int Count1 = 0;
WiFiClient client;
void setup(){
Serial.begin(9600);
while(!Serial);
if(WiFi.status() == WL_NO_MODULE){
Serial.println("[?] Communication with WiFi module failed");
while(true);
}
String tv = WiFi.firmwareVersion();
if(tv < WIFI_FIRMWARE_LATEST_VERSION){
Serial.println("Please upgrade the firmmware");
}
while(status != WL_CONNECTED){
Serial.print("Attempting to connect to SSID: ");
Serial.println(WiFi_SSID);
status = WiFi.begin(WiFi_SSID, WiFi_PW);
delay(1000);
}
Serial.println("Connected to WiFi");
printWiFiStatus();
Serial.println("\nStarting connection to server ...");
if(client.connect(server, 80)){
Serial.println("connected to server ");
client.println("GET /search?q=nano33 HTTP/1.1");
client.print("Host: ");
client.print(server);
client.println("Connection: close");
client.println();
}
}
void loop(){
while(client.available()){
char c = client.read();
Serial.write(c);
}
if(!client.connected()){
Serial.println();
Serial.println("Disconnected from server.");
client.stop();
while(true);
}
}
void printWiFiStatus(){
Serial.print("SSID: ");
Serial.println(WiFi.SSID());
IPAddress ip = WiFi.localIP();
Serial.print("IP Address: ");
Serial.println(ip);
long rssi = WiFi.RSSI();
Serial.print("signal strength (RSSI): ");
Serial.print(rssi);
Serial.println(" dBm");
}
반응형