아두이노:WIFI
아두이노 관련 정보를 모으기 위한 틀. 틀:아두이노
- 아두이노:개요
- 아두이노:하드웨어
- 아두이노:코드
- 아두이노:핀 사용
- 아두이노:시리얼 통신
- 아두이노:편의함수
- 센서 사용
- 아두이노:LCD 사용
- 아두이노:스위치 사용
- 아두이노:릴레이
- 아두이노:WIFI
- 아두이노:해결되지 않은 다양한 의문들
- 수업용 간단 실습
- 분류:아두이노 프로젝트
개요[편집 | 원본 편집]
아두이노에서 현재 시간을 받거나 데이터를 보낼 때 와이파이를 다루어야 할 필요가 생긴다.
아두이노 기종별 와이파이 사용법[편집 | 원본 편집]
R4[편집 | 원본 편집]
아두이노 R4엔 ESP32-S3가 내장되어 있다.
아래는 와이파이를 이용해 현재시간을 불러오는 방법이다.
- 라이브러리에서 wifi 검색, Arduino Uno WIFI Dev Ed Library 설치.
- 라이브러리에서 NTPClient 설치.(시간을 가져오는 라이브러리)
#include <WiFi.h>
#include <WiFiUdp.h>
#include <NTPClient.h>
#include <time.h>
// WiFi 정보
const char* ssid = "kwsh";
const char* password = "khsh9700#";
// NTP 클라이언트 설정
WiFiUDP ntpUDP;
NTPClient timeClient(ntpUDP);
void setup() {
Serial.begin(9600); // 시리얼 통신 속도 설정
WiFi.begin(ssid, password);
// WiFi 연결 시도
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi...");
}
Serial.println("Connected to WiFi network");
timeClient.begin();
timeClient.setTimeOffset(32400); // 서울 시간(UTC+9)으로 변환하기 위한 오프셋 설정
}
void loop() {
timeClient.update();
String fromattedTime = timeClient.getFormattedTime();
Serial.print("Current time: ");
Serial.print(fromattedTime.substring(0,2));
Serial.print(":");
Serial.println(fromattedTime.substring(3,5));
delay(1000);
}