Arduino Uno R4 Minima và Uno R4 WiFi khác gì Uno R3, có nên nâng cấp
So sánh Arduino Uno R4 Minima, Uno R4 WiFi với Uno R3: vi điều khiển RA4M1, bộ nhớ, ADC, DAC, dòng mỗi chân, Serial đổi chỗ, thư viện AVR, Wi-Fi ESP32-S3 và gợi ý có nên nâng cấp.
Năm 2023 Arduino ra mắt Uno R4 với hai bản Uno R4 Minima và Uno R4 WiFi, thay chip ATmega328P 8 bit quen thuộc bằng vi điều khiển ARM 32 bit, nhưng vẫn giữ khuôn mạch và mức logic 5 V của Uno R3. Người đang dùng Uno R3 thường băn khoăn: R4 khác gì, sketch và shield cũ có chạy không, có nên nâng cấp. Bài này so sánh Uno R3, Uno R4 Minima và Uno R4 WiFi, nêu những điểm dễ gây lỗi khi chuyển sang R4, và gợi ý chọn bo theo nhu cầu.
1. Uno R3, Uno R4 Minima và Uno R4 WiFi

Điểm chính của Uno R4 là vi điều khiển Renesas RA4M1 (lõi Arm Cortex-M4, 48 MHz): bộ nhớ chương trình gấp 8 lần, RAM gấp 16 lần Uno R3, tính toán số thực nhanh hơn nhiều nhờ bộ tính dấu phẩy động. Chip còn có DAC 12 bit (xuất điện áp analog thật ở chân A0), ADC tới 14 bit, op-amp, CAN bus (cần thêm mạch thu phát), RTC, và cổng USB-C có thể giả làm bàn phím, chuột (HID).
Uno R4 WiFi thêm một module ESP32-S3 cho Wi-Fi và Bluetooth LE, một ma trận LED 12 × 8 trên mạch để hiện chữ, hình đơn giản, và cổng Qwiic để cắm nhanh cảm biến I2C.
2. Điểm cần chú ý khi chuyển từ R3 sang R4

- Dòng mỗi chân chỉ khoảng 8 mA (Uno R3 là 20 mA). LED kèm điện trở 220–330 Ω vẫn ổn, nhưng thói quen cắm thẳng còi, LED công suất, relay vào chân là không được.
- Serial đổi chỗ: trên R4,
Seriallà cổng USB nối máy tính, còn chân 0, 1 làSerial1. Trên R3, hai thứ này là một. Sketch đọc module GPS, Bluetooth ở chân 0, 1 phải sửaSerialthànhSerial1; điều này lại có lợi: cắm module ở chân 0, 1 không còn làm hỏng việc nạp code. - Thư viện viết riêng cho chip AVR (dùng thẳng thanh ghi PORTB, TCCR1A, ngắt timer AVR) không biên dịch hoặc không chạy. Thư viện phổ biến viết theo hàm chuẩn của Arduino thì phần lớn đã hỗ trợ R4.
- Cài gói bo mới: trong Tools → Board → Boards Manager tìm "Arduino UNO R4 Boards".
- ADC 14 bit phải bật bằng
analogReadResolution(14); mặc định vẫn trả 0–1023 như R3 để code cũ chạy đúng. DAC dùnganalogWrite(A0, giá trị)sauanalogWriteResolution(12). - Shield cắm được vì cùng vị trí chân, cùng 5 V; shield lấy SPI từ đầu ICSP theo kiểu AVR cần kiểm tra lại.
3. Bên trong Uno R4 WiFi

Sketch của người dùng chạy trên RA4M1. ESP32-S3 làm cầu USB để nạp code và làm "module Wi-Fi": thư viện WiFiS3 gửi lệnh từ RA4M1 sang ESP32-S3. Cách này giữ được sự đơn giản của Uno (vẫn 5 V, vẫn chân 0–13, A0–A5) nhưng thêm Wi-Fi. Đổi lại, tốc độ mạng và các tính năng Wi-Fi nâng cao kém hơn khi lập trình thẳng một mạch ESP32. Cổng Qwiic dùng I2C 3,3 V riêng, truy cập bằng Wire1.
4. Có nên nâng cấp lên Uno R4

- Đang học theo giáo trình, sách: Uno R3 hoặc Arduino Nano vẫn là lựa chọn ít rắc rối nhất; mọi ví dụ trên mạng đều chạy.
- Dự án đụng giới hạn 2 KB RAM của Uno R3 (màn hình đồ họa, xử lý chuỗi, mảng lớn) nhưng vẫn cần 5 V: Uno R4 Minima.
- Lớp học muốn thêm Wi-Fi và hiệu ứng trực quan: Uno R4 WiFi với ma trận LED.
- Dự án IoT, cần nhiều chân, giá thấp: ESP32 DevKit mạnh hơn về không dây; lưu ý mức logic 3,3 V.
Với người đã có Uno R3 chạy tốt cho việc đang làm, không có lý do phải đổi ngay. Uno R4 đáng mua khi cần thêm bộ nhớ, tốc độ, DAC, hoặc Wi-Fi mà vẫn muốn giữ khuôn và shield Uno.
Xem thêm