아두이노 우노 R4를 시작하는 방법
이 튜토리얼에서는 아두이노 우노 R4 미니마/와이파이를 시작하는 방법을 배우게 됩니다. 다음 단계를 통해 배워볼 것입니다:
- Arduino IDE에 Arduino Uno R4 Minima/WiFi용 패키지 설치하기
- 시리얼 모니터에 Hello World를 출력하기 위해 Arduino Uno R4 Minima/WiFi 프로그래밍하기
- 매우 간단한 웹 서버를 생성하기 위해 Arduino Uno R4 WiFi 프로그래밍하기
준비물
| 1 | × | Arduino UNO R4 Wifi | 쿠팡 | 아마존 | |
| 1 | × | Arduino UNO R4 Minima | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-A to 타입-C (USB-A PC용) | 쿠팡 | 아마존 | |
| 1 | × | USB 케이블 타입-C to 타입-C (USB-C PC용) | 아마존 | |
| 1 | × | (추천) 아두이노 우노 R4용 스크루 터미널 블록 쉴드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) Sensors/Servo Expansion Shield for Arduino UNO R4 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 우노 R4용 브레드보드 쉴드 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 우노 R4용 케이스 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 우노 R4용 전원 분배기 | 쿠팡 | 아마존 | |
| 1 | × | (추천) 아두이노 우노용 프로토타이핑 베이스 플레이트 & 브레드보드 키트 | 아마존 |
공개: 이 포스팅 에 제공된 일부 링크는 아마존 제휴 링크입니다. 이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
아두이노 우노 R4 패키지 설치하기
아두이노 우노 R3와 달리, 아두이노 우노 R4 Minima/WiFi를 아두이노 IDE와 함께 사용하기 위해서는 아두이노 IDE에 아두이노 우노 R4 보드를 설치해야 합니다. 따라서, 먼저 아두이노 IDE에 아두이노 우노 R4 패키지를 설치하는 단계를 따르세요:
- 아두이노 IDE를 엽니다
- 아래 이미지와 같이 Board Manager 아이콘으로 이동하세요:

아래 이미지와 같이 검색 상자에 Arduino Uno R4를 입력하세요:

Install 버튼을 클릭하세요.
이 과정은 아두이노 우노 R4 미니마 및 WiFi 모두에 적용됩니다.
Hello World 프로그램 실행
- Arduino Uno R4 Minima 또는 WiFi를 USB Type-C 케이블을 사용하여 PC에 연결하세요.
- Arduino IDE에서 아래 이미지와 같이 Arduino Uno R4 Minima 또는 WiFi에 연결된 COM 포트를 선택하세요.

아래의 Hello World 코드를 복사하여 아두이노 IDE에 붙여넣으세요.
/*
* 이 아두이노 코드는 newbiely.kr 에서 개발되었습니다
* 이 아두이노 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다.
* 상세한 지침 및 연결도에 대해서는 다음을 방문하세요:
* https://newbiely.kr/tutorials/arduino/how-to-get-started-with-arduino-uno-r4
*/
void setup() {
// 여기에 설정 코드를 입력하세요. 한 번만 실행됩니다:
Serial.begin(9600);
}
void loop() {
// 여기에 주요 코드를 입력하세요. 반복적으로 실행됩니다:
Serial.println("Hello World!");
delay(1000);
}
Arduino IDE에서 코드를 Arduino로 업로드하려면 Upload 버튼을 클릭하세요.

시리얼 모니터 아이콘을 클릭하여 시리얼 모니터를 열어주세요.

시리얼 모니터에서 결과를 확인하세요. 아래와 같습니다:
8
Serial.println("Hello World!");
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
Hello World!
아두이노 우노 R4 와이파이를 위한 웹 서버 예제 실행
/*
* 이 아두이노 코드는 newbiely.kr 에서 개발되었습니다
* 이 아두이노 코드는 어떠한 제한 없이 공개 사용을 위해 제공됩니다.
* 상세한 지침 및 연결도에 대해서는 다음을 방문하세요:
* https://newbiely.kr/tutorials/arduino/how-to-get-started-with-arduino-uno-r4
*/
#include "WiFiS3.h"
char ssid[] = "Your_WiFi"; // 네트워크 SSID(이름)을 변경하세요
char pass[] = "Your_WiFi_password"; // 네트워크 비밀번호를 변경하세요 (WPA에 사용하거나 WEP의 키로 사용)
int keyIndex = 0; // 네트워크 키 인덱스 번호 (WEP에만 필요)
int status = WL_IDLE_STATUS;
WiFiServer server(80);
void setup() {
// 시리얼을 초기화하고 포트가 열릴 때까지 기다립니다:
Serial.begin(9600);
while (!Serial) {
; // 시리얼 포트가 연결될 때까지 기다립니다. 네이티브 USB 포트만 해당됩니다
}
// WiFi 모듈이 있는지 확인:
if (WiFi.status() == WL_NO_MODULE) {
Serial.println("Communication with WiFi module failed!");
// 진행하지 마세요
while (true)
;
}
String fv = WiFi.firmwareVersion();
if (fv < WIFI_FIRMWARE_LATEST_VERSION) {
Serial.println("Please upgrade the firmware");
}
// WiFi 네트워크에 연결을 시도합니다:
while (status != WL_CONNECTED) {
Serial.print("Attempting to connect to SSID: ");
Serial.println(ssid);
// WPA/WPA2 네트워크에 연결합니다. 오픈 네트워크나 WEP 네트워크를 사용하는 경우 이 줄을 변경하세요:
status = WiFi.begin(ssid, pass);
// 연결이 될 때까지 10초간 기다립니다:
delay(10000);
}
server.begin();
// 이제 연결되었으니 상태를 출력하세요:
printWifiStatus();
}
void loop() {
// 들어오는 클라이언트를 기다립니다
WiFiClient client = server.available();
if (client) {
Serial.println("new client");
// HTTP 요청은 빈 줄로 끝나는데
boolean currentLineIsBlank = true;
while (client.connected()) {
if (client.available()) {
char c = client.read();
Serial.write(c);
// 줄의 끝에 도달했고 (newline 문자를 받았고) 줄이 비어있다면 HTTP 요청이 끝났으므로
// 응답을 보낼 수 있습니다
if (c == '\n' && currentLineIsBlank) {
// 표준 HTTP 응답 헤더를 보냅니다
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("Connection: close"); // 응답이 완료된 후 연결이 닫힙니다
client.println("Refresh: 5"); // 페이지를 자동으로 5초마다 새로 고칩니다
client.println();
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.print("Hello from Arduino Web Server");
client.println("</html>");
break;
}
if (c == '\n') {
// 새로운 줄을 시작했습니다
currentLineIsBlank = true;
} else if (c != '\r') {
// 현재 줄에서 문자를 받았습니다
currentLineIsBlank = false;
}
}
}
// 웹 브라우저가 데이터를 받는데 시간을 줍니다
delay(1);
// 연결을 끊습니다:
client.stop();
Serial.println("client disconnected");
}
}
void printWifiStatus() {
// 보드의 IP 주소를 출력합니다:
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");
}
- 위의 코드를 복사하여 아두이노 IDE로 열기
- 코드에서 와이파이 정보(SSID와 비밀번호)를 자신의 것으로 변경하기
- 아두이노 IDE에서 Upload 버튼을 클릭하여 코드를 아두이노에 업로드하기
- 시리얼 모니터 열기
- 시리얼 모니터에서 결과를 확인하기
8
Serial.println("Hello World!");
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Attempting to connect to SSID: Your_WiFi
IP Address: 192.168.0.2
signal strength (RSSI):-39 dBm
- IP 주소를 볼 수 있습니다. 이것은 아두이노 웹 서버의 IP 주소입니다.
- IP 주소를 복사하여 웹 브라우저의 주소 표시줄에 붙여넣으세요.
- 아래와 같이 웹 브라우저에서 아두이노 보드의 웹페이지를 볼 수 있습니다.

시리얼 모니터에서 아래 출력도 볼 수 있습니다.
8
Serial.println("Hello World!");
Message (Enter to send message to 'Arduino Uno' on 'COM15')
New Line
9600 baud
Attempting to connect to SSID: Your_WiFi
IP Address: 192.168.0.2
signal strength (RSSI):-39 dBm
new client
GET /favicon.ico HTTP/1.1
Host: 192.168.0.2
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
Referer: http://192.168.0.2/
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
client disconnected