Arduino UNO R3 là gì?

Nhắc tới dòng mạch Arduino dùng để lập trình, cái tiên phong mà người ta thường nói tới chính là dòng Arduino UNO. Hiện dòng mạch này đã tăng trưởng tới thế hệ thứ 3 ( R3 ). Bạn sẽ mở màn đến với Arduino qua thứ này. Bạn hoàn toàn có thể dùng Arduino Nano cũng được nhưng mình khuyên bạn nên dùng cái này .

Một vài thông số của Arduino UNO R3

Vi điều khiển
ATmega328 họ 8bit

Điện áp hoạt động
5V DC (chỉ được cấp qua cổng USB)

Tần số hoạt động
16 MHz

Dòng tiêu thụ
khoảng 30mA

Điện áp vào khuyên dùng
7-12V DC

Điện áp vào giới hạn
6-20V DC

Số chân Digital I/O
14 (6 chân hardware PWM)

Số chân Analog
6 (độ phân giải 10bit)

Dòng tối đa trên mỗi chân I/O
30 mA

Dòng ra tối đa (5V)
500 mA

Dòng ra tối đa (3.3V)
50 mA

Bộ nhớ flash
32 KB (ATmega328) với 0.5KB dùng bởi bootloader

SRAM
2 KB (ATmega328)

EEPROM
1 KB (ATmega328)

Vi điều khiển

Bạn đang đọc: Arduino UNO R3 là gì?

Arduino UNO hoàn toàn có thể sử dụng 3 vi điều khiển và tinh chỉnh họ 8 bit AVR là ATmega8, ATmega168, ATmega328. Bộ não này hoàn toàn có thể xử lí những tác vụ đơn thuần như điều khiển và tinh chỉnh đèn LED nhấp nháy, xử lí tín hiệu cho xe tinh chỉnh và điều khiển từ xa, làm một trạm đo nhiệt độ – nhiệt độ và hiển thị lên màn hình hiển thị LCD, … hay những ứng dụng khác mà bạn đã được xem ở đây .
Thiết kế tiêu chuẩn của Arduino UNO sử dụng vi tinh chỉnh và điều khiển ATmega328 với giá khoảng chừng 90.000 đ. Tuy nhiên nếu nhu yếu phần cứng của bạn không cao hoặc ví tiền không được cho phép, bạn hoàn toàn có thể sử dụng những loại vi tinh chỉnh và điều khiển khác có tính năng tương tự nhưng rẻ hơn như ATmega8 ( bộ nhớ flash 8KB ) với giá khoảng chừng 45.000 đ hoặc ATmega168 ( bộ nhớ flash 16KB ) với giá khoảng chừng 65.000 đ .
Ngoài việc dùng cho board Arduino UNO, bạn hoàn toàn có thể sử dụng những IC tinh chỉnh và điều khiển này cho những mạch tự chế. Vì sao ? Vì bạn chỉ cần board Arduino UNO để lập trình cho vi tinh chỉnh và điều khiển. Trên trong thực tiễn, bạn không cần phải dụng Arduino UNO trên những loại sản phẩm của mình, thay vào đó là những mạch tự chế để giảm ngân sách như hình dưới đây :

Chế tạo thủ công

Sử dụng mạch in

Năng lượng

Arduino UNO hoàn toàn có thể được cấp nguồn 5V trải qua cổng USB hoặc cấp nguồn ngoài với điện áp khuyên dùng là 7-12 V DC và số lượng giới hạn là 6-20 V. Thường thì cấp nguồn bằng pin vuông 9V là hợp lý nhất nếu bạn không có sẵn nguồn từ cổng USB. Nếu cấp nguồn vượt quá ngưỡng số lượng giới hạn trên, bạn sẽ làm hỏng Arduino UNO .

Các chân năng lượng

  • GND (Ground): cực âm của nguồn điện cấp cho Arduino UNO. Khi bạn dùng các thiết bị sử dụng những nguồn điện riêng biệt thì những chân này phải được nối với nhau.
  • 5V: cấp điện áp 5V đầu ra. Dòng tối đa cho phép ở chân này là 500mA.
  • 3.3V: cấp điện áp 3.3V đầu ra. Dòng tối đa cho phép ở chân này là 50mA.
  • Vin (Voltage Input): để cấp nguồn ngoài cho Arduino UNO, bạn nối cực dương của nguồn với chân này và cực âm của nguồn với chân GND.
  • IOREF: điện áp hoạt động của vi điều khiển trên Arduino UNO có thể được đo ở chân này. Và dĩ nhiên nó luôn là 5V. Mặc dù vậy bạn không được lấy nguồn 5V từ chân này để sử dụng bởi chức năng của nó không phải là cấp nguồn.
  • RESET: việc nhấn nút Reset trên board để reset vi điều khiển tương đương với việc chân RESET được nối với GND qua 1 điện trở 10KΩ.

Lưu ý:

  • Arduino UNO không có bảo vệ cắm ngược nguồn vào. Do đó bạn phải hết sức cẩn thận, kiểm tra các cực âm – dương của nguồn trước khi cấp cho Arduino UNO. Việc làm chập mạch nguồn vào của Arduino UNO sẽ biến nó thành một miếng nhựa chặn giấy. mình khuyên bạn nên dùng nguồn từ cổng USB nếu có thể.
  • Các chân 3.3V và 5V trên Arduino là các chân dùng để cấp nguồn ra cho các thiết bị khác, không phải là các chân cấp nguồn vào. Việc cấp nguồn sai vị trí có thể làm hỏng board. Điều này không được nhà sản xuất khuyến khích.
  • Cấp nguồn ngoài không qua cổng USB cho Arduino UNO với điện áp dưới 6V có thể làm hỏng board.
  • Cấp điện áp trên 13V vào chân RESET trên board có thể làm hỏng vi điều khiển ATmega328.
  • Cường độ dòng điện vào/ra ở tất cả các chân Digital và Analog của Arduino UNO nếu vượt quá 200mA sẽ làm hỏng vi điều khiển.
  • Cấp điệp áp trên 5.5V vào các chân Digital hoặc Analog của Arduino UNO sẽ làm hỏng vi điều khiển.
  • Cường độ dòng điện qua một chân Digital hoặc Analog bất kì của Arduino UNO vượt quá 40mA sẽ làm hỏng vi điều khiển. Do đó nếu không dùng để truyền nhận dữ liệu, bạn phải mắc một điện trở hạn dòng.

Khi mình nói rằng bạn “có thể làm hỏng”, điều đó có nghĩa là chưa chắc sẽ hỏng ngay bởi các thông số kĩ thuật của linh kiện điện tử luôn có một sự tương đối nhất định. Do đó hãy cứ tuân thủ theo những thông số kĩ thuật của nhà sản xuất nếu bạn không muốn phải mua một board Arduino UNO thứ 2.Khi mình nói rằng bạn “có thể làm hỏng”, điều đó có nghĩa là chưa chắc sẽ hỏng ngay bởi các thông số kĩ thuật của linh kiện điện tử luôn có một sự tương đối nhất định. Do đó hãy cứ tuân thủ theo những thông số kĩ thuật của nhà sản xuất nếu bạn không muốn phải mua một board Arduino UNO thứ 2.

Bộ nhớ

Vi điều khiển và tinh chỉnh Atmega328 tiêu chuẩn cung ứng cho người dùng :

  • 32KB bộ nhớ Flash: những đoạn lệnh bạn lập trình sẽ được lưu trữ trong bộ nhớ Flash của vi điều khiển. Thường thì sẽ có khoảng vài KB trong số này sẽ được dùng cho bootloader nhưng đừng lo, bạn hiếm khi nào cần quá 20KB bộ nhớ này đâu.
  • 2KB cho SRAM (Static Random Access Memory): giá trị các biến bạn khai báo khi lập trình sẽ lưu ở đây. Bạn khai báo càng nhiều biến thì càng cần nhiều bộ nhớ RAM. Tuy vậy, thực sự thì cũng hiếm khi nào bộ nhớ RAM lại trở thành thứ mà bạn phải bận tâm. Khi mất điện, dữ liệu trên SRAM sẽ bị mất.
  • 1KB cho EEPROM (Electrically Eraseble Programmable Read Only Memory): đây giống như một chiếc ổ cứng mini – nơi bạn có thể đọc và ghi dữ liệu của mình vào đây mà không phải lo bị mất khi cúp điện giống như dữ liệu trên SRAM.

Các cổng vào/ra

Arduino UNO có 14 chân digital dùng để đọc hoặc xuất tín hiệu. Chúng chỉ có 2 mức điện áp là 0V và 5V với dòng vào / ra tối đa trên mỗi chân là 40 mA. Ở mỗi chân đều có những điện trở pull-up từ được thiết lập ngay trong vi điều khiển và tinh chỉnh ATmega328 ( mặc định thì những điện trở này không được liên kết ) .
Một số chân digital có những công dụng đặc biệt quan trọng như sau :

  • 2 chân Serial: 0 (RX) và 1 (TX): dùng để gửi (transmit – TX) và nhận (receive – RX) dữ liệu TTL Serial. Arduino Uno có thể giao tiếp với thiết bị khác thông qua 2 chân này. Kết nối bluetooth thường thấy nói nôm na chính là kết nối Serial không dây. Nếu không cần giao tiếp Serial, bạn không nên sử dụng 2 chân này nếu không cần thiết
  • Chân PWM (~): 3, 5, 6, 9, 10, và 11: cho phép bạn xuất ra xung PWM với độ phân giải 8bit (giá trị từ 0 → 28-1 tương ứng với 0V → 5V) bằng hàm analogWrite(). Nói một cách đơn giản, bạn có thể điều chỉnh được điện áp ra ở chân này từ mức 0V đến 5V thay vì chỉ cố định ở mức 0V và 5V như những chân khác.
  • Chân giao tiếp SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK).  Ngoài các chức năng thông thường, 4 chân này còn dùng để truyền phát dữ liệu bằng giao thức SPI với các thiết bị khác.
  • LED 13: trên Arduino UNO có 1 đèn led màu cam (kí hiệu chữ L). Khi bấm nút Reset, bạn sẽ thấy đèn này nhấp nháy để báo hiệu. Nó được nối với chân số 13. Khi chân này được người dùng sử dụng, LED sẽ sáng.

Arduino UNO có 6 chân analog (A0 → A5) cung cấp độ phân giải tín hiệu 10bit (0 → 210-1) để đọc giá trị điện áp trong khoảng 0V → 5V. Với chân AREF trên board, bạn có thể để đưa vào điện áp tham chiếu khi sử dụng các chân analog. Tức là nếu bạn cấp điện áp 2.5V vào chân này thì bạn có thể dùng các chân analog để đo điện áp trong khoảng từ 0V  → 2.5V với độ phân giải vẫn là 10bit.

Đặc biệt, Arduino UNO có 2 chân A4 ( SDA ) và A5 ( SCL ) tương hỗ tiếp xúc I2C / TWI với những thiết bị khác .

Lập trình cho Arduino

Các thiết bị dựa trên nền tảng Arduino được lập trình bằng ngôn riêng. Ngôn ngữ này dựa trên ngôn từ Wiring được viết cho phần cứng nói chung. Và Wiring lại là một biến thể của C / C + +. Một số người gọi nó là Wiring, 1 số ít khác thì gọi là C hay C / C + +. Riêng mình thì gọi nó là “ ngôn từ Arduino ”, và đội ngũ tăng trưởng Arduino cũng gọi như vậy. Ngôn ngữ Arduino bắt nguồn từ C / C + + phổ cập lúc bấy giờ do đó rất dễ học, dễ hiểu. Nếu học tốt chương trình Tin học 11 thì việc lập trình Arduino sẽ rất dễ thở so với bạn .

Để lập trình cũng như gửi lệnh và nhận tín hiệu từ mạch Arduino, nhóm phát triển dự án này đã cũng cấp đến cho người dùng một môi trường lập trình Arduino được gọi là Arduino IDE (Intergrated Development Environment)  như hình dưới đây.

Đoạn mã nguồn như trong hình sẽ tinh chỉnh và điều khiển một đèn LED nhấp nháy với chu kì 1 giây. Bạn có thấy nó đơn thuần không ?

Lời kết

Nền tảng Arduino thật sự rất có ích cho những ai đang và muốn tìm hiểu và khám phá về điện tử, lập trình, điều khiển và tinh chỉnh, đặc biệt quan trọng là robot. Với nền tảng này, mọi người hoàn toàn có thể thuận tiện tạo ra được những dự án Bất Động Sản vô cùng mê hoặc. Bạn đã có ý tưởng sáng tạo gì cho mình chưa nào ? Nếu chưa, hãy cùng làm với chúng mình nhé !

Alternate Text Gọi ngay