Arduino-LOGO

Hướng dẫn sử dụng bo mạch Arduino ATMEGA328 SMD

Arduino-ATMEGA328-SMD-Breadboard-SẢN PHẨM

Quaview

Arduino-ATMEGA328-SMD-Breadboard-FIG-1

Arduino Uno là một bảng vi điều khiển dựa trên ATmega328 (bảng dữ liệu). Nó có 14 chân đầu vào/đầu ra kỹ thuật số (trong đó 6 chân có thể được sử dụng làm đầu ra PWM), 6 đầu vào tương tự, bộ tạo dao động tinh thể 16 MHz, kết nối USB, giắc cắm nguồn, đầu ICSP và nút đặt lại. Nó chứa mọi thứ cần thiết để hỗ trợ vi điều khiển; chỉ cần kết nối nó với máy tính bằng cáp USB hoặc cấp nguồn cho nó bằng bộ chuyển đổi AC-to-DC hoặc pin để bắt đầu. Uno khác với tất cả các bảng trước đó ở chỗ nó không sử dụng chip trình điều khiển FTDI USB-to-serial. Thay vào đó, nó có Atmega8U2 được lập trình như một bộ chuyển đổi USB-to-serial. “Uno” có nghĩa là một trong tiếng Ý và được đặt tên để đánh dấu việc phát hành Arduino 1.0 sắp tới. Uno và phiên bản 1.0 sẽ là phiên bản tham chiếu của Arduino, trong tương lai. Uno là sản phẩm mới nhất trong loạt bo mạch USB Arduino và là mô hình tham chiếu cho nền tảng Arduino; để so sánh với các phiên bản trước, hãy xem chỉ mục của bo mạch Arduino.

Bản tóm tắt

  • Vi điều khiển ATmega328
  • Hoạt động Voltage 5V
  • Đầu vào Voltage (khuyên dùng) 7-12V
  • Đầu vào Voltage (giới hạn) 6-20V
  • Chân I/O kỹ thuật số 14 (trong đó có 6 chân cung cấp đầu ra PWM)
  • Chân đầu vào tương tự 6
  • Dòng DC trên mỗi chân I/O 40 mA
  • Dòng điện một chiều cho chân 3.3V 50 mA
  • Bộ nhớ Flash 32 KB (ATmega328) trong đó 0.5 KB được sử dụng bởi bộ nạp khởi động
  • SRAM 2KB (ATmega328)
  • EEPROM 1KB (ATmega328)
  • Tốc độ đồng hồ 16 MHz

Sơ đồ & Thiết kế tham khảo
CHIM ƯNG files: Arduino-uno-reference-design.zip
Sơ đồ: arduino-uno-schematic.pdf

Quyền lực

Arduino Uno có thể được cấp nguồn thông qua kết nối USB hoặc nguồn điện bên ngoài. Công suất của nguồn được chọn tự động. Nguồn ngoài (không phải USB) có thể đến từ bộ chuyển đổi AC-to-DC (mụn cóc trên tường) hoặc pin. Bộ điều hợp có thể được kết nối bằng cách cắm phích cắm dương ở giữa 2.1mm vào giắc cắm nguồn của bo mạch. Dây dẫn từ pin có thể được cắm vào đầu chân Gnd và Vin của đầu nối NGUỒN. Bảng có thể hoạt động trên nguồn cung cấp bên ngoài từ 6 đến 20 volt. Tuy nhiên, nếu được cung cấp ít hơn 7V, chân 5V có thể cung cấp ít hơn 12 volt và bo mạch có thể không ổn định. Nếu dùng hơn XNUMXV thì voltagbộ điều chỉnh điện tử có thể quá nóng và làm hỏng bo mạch. Phạm vi đề nghị là 7 đến 12 volt.
Các chân nguồn như sau:

  • VIN. âm lượng đầu vàotage với bo mạch Arduino khi nó sử dụng nguồn điện bên ngoài (trái ngược với 5 volt từ kết nối USB hoặc nguồn điện được quy định khác). Bạn có thể cung cấp voltage thông qua chân này, hoặc, nếu cung cấp voltage qua giắc nguồn, truy cập qua chân này.
  • 5V. Nguồn điện quy định được sử dụng để cấp nguồn cho vi điều khiển và các thành phần khác trên bo mạch. Điều này có thể đến từ số VIN thông qua bộ điều chỉnh trên bo mạch hoặc được cung cấp bởi USB hoặc nguồn cung cấp 5V được quy định khác.
  • 3V3. Nguồn cung cấp 3.3 volt được tạo ra bởi bộ điều chỉnh trên bo mạch. Dòng điện tối đa là 50 mA.
  • GND. Chân nối đất.

Ký ức
ATmega328 có 32 KB (với 0.5 KB được sử dụng cho bộ tải khởi động). Nó cũng có 2 KB SRAM và 1 KB EEPROM (có thể đọc và ghi bằng thư viện EEPROM).

Đầu vào và đầu ra

Mỗi trong số 14 chân kỹ thuật số trên Uno có thể được sử dụng làm đầu vào hoặc đầu ra, sử dụng các hàm pinMode(), digitalWrite() và digitalRead(). Chúng hoạt động ở mức 5 volt. Mỗi chân có thể cung cấp hoặc nhận tối đa 40 mA và có điện trở kéo lên bên trong (ngắt kết nối theo mặc định) là 20-50 kOhms. Ngoài ra, một số chân có
chức năng chuyên dụng:

  • Nối tiếp: 0 (RX) và 1 (TX). Được sử dụng để nhận (RX) và truyền (TX) dữ liệu nối tiếp TTL. Các chân này được kết nối với các chân tương ứng của chip ATmega8U2 USB-to-TTL Serial.
  • Ngắt ngoài: 2 và 3. Các chân này có thể được cấu hình để kích hoạt ngắt ở giá trị thấp, cạnh tăng hoặc giảm hoặc thay đổi giá trị. Xem hàm attachmentInterrupt() để biết chi tiết.
  • PWM: 3, 5, 6, 9, 10 và 11. Cung cấp đầu ra PWM 8 bit với chức năng analogWrite().
  • SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Các chân này hỗ trợ giao tiếp SPI sử dụng thư viện SPI.
  • LED: 13. Có một đèn LED tích hợp được kết nối với chân kỹ thuật số 13. Khi chân ở giá trị CAO, đèn LED sẽ sáng, khi chân ở mức THẤP, nó sẽ tắt.

Uno có 6 đầu vào tương tự, được dán nhãn từ A0 đến A5, mỗi đầu vào cung cấp 10 bit độ phân giải (tức là 1024 giá trị khác nhau). Theo mặc định, chúng đo từ mặt đất đến 5 vôn, tuy nhiên có thể thay đổi đầu trên của phạm vi của chúng bằng cách sử dụng chân AREF và hàm analogReference() không? Ngoài ra, một số chân có chức năng chuyên dụng:

  • I2C: 4 (SDA) và 5 (SCL). Hỗ trợ giao tiếp I2C (TWI) bằng thư viện Wire. Có một vài chân khác trên bảng:
  • AREF. tài liệu tham khảotage cho các đầu vào tương tự. Được sử dụng với analogReference().
  • Cài lại. Đưa dòng này về mức THẤP để reset vi điều khiển. Thường được sử dụng để thêm nút đặt lại vào tấm chắn chặn nút trên bảng.
  • Xem thêm ánh xạ giữa các chân Arduino và cổng ATmega328?.

Giao tiếp

Arduino UNO có một số phương tiện để giao tiếp với máy tính, Arduino khác hoặc các bộ vi điều khiển khác. ATmega328 cung cấp giao tiếp nối tiếp UART TTL (5V), khả dụng trên các chân kỹ thuật số 0 (RX) và 1 (TX). Một ATmega8U2 trên bo mạch truyền giao tiếp nối tiếp này qua USB và xuất hiện dưới dạng cổng com ảo cho phần mềm trên máy tính. Phần sụn '8U2 sử dụng trình điều khiển USB COM tiêu chuẩn và không cần trình điều khiển bên ngoài. Tuy nhiên, trên Windows, một .inf file bắt buộc. Phần mềm Arduino bao gồm một màn hình nối tiếp cho phép gửi dữ liệu văn bản đơn giản đến và đi từ bo mạch Arduino. Đèn LED RX và TX trên bo mạch sẽ nhấp nháy khi dữ liệu được truyền qua chip USB-to-serial và kết nối USB với máy tính (nhưng không dành cho giao tiếp nối tiếp trên chân 0 và 1). Thư viện SoftwareSerial cho phép giao tiếp nối tiếp trên bất kỳ chân kỹ thuật số nào của Uno. ATmega328 cũng hỗ trợ giao tiếp I2C (TWI) và SPI. Phần mềm Arduino bao gồm thư viện Dây để đơn giản hóa việc sử dụng bus I2C; Xem các tài liệu hướng dẫn để biết chi tiết. Để giao tiếp SPI, hãy sử dụng thư viện SPI.

Lập trình

Arduino Uno có thể được lập trình bằng phần mềm Arduino (tải xuống). Chọn “Arduino Uno từ menu Tools > Board (theo bộ vi điều khiển trên bo mạch của bạn). Để biết chi tiết, xem tài liệu tham khảo và hướng dẫn. ATmega328 trên Arduino Uno được cài sẵn bộ tải khởi động cho phép bạn tải mã mới lên nó mà không cần sử dụng phần mềm lập trình phần cứng bên ngoài. Nó giao tiếp bằng giao thức STK500 gốc (tham khảo, tiêu đề C fileS). Bạn cũng có thể bỏ qua bộ tải khởi động và lập trình vi điều khiển thông qua tiêu đề ICSP (Lập trình nối tiếp trong mạch); xem các hướng dẫn này để biết chi tiết. Mã nguồn phần sụn ATmega8U2 có sẵn. ATmega8U2 được nạp một bộ tải khởi động DFU, có thể kích hoạt bộ nạp này bằng cách kết nối dây nhảy hàn ở mặt sau của bo mạch (gần bản đồ của Ý) và sau đó đặt lại 8U2. Sau đó, bạn có thể sử dụng phần mềm FLIP của Atmel (Windows) hoặc trình lập trình DFU (Mac OS X và Linux) để tải chương trình cơ sở mới. Hoặc bạn có thể sử dụng tiêu đề ISP với một lập trình viên bên ngoài (ghi đè bộ tải khởi động DFU). Xem hướng dẫn do người dùng đóng góp này để biết thêm thông tin.

Đặt lại tự động (phần mềm)

Thay vì yêu cầu nhấn vật lý nút đặt lại trước khi tải lên, Arduino Uno được thiết kế theo cách cho phép thiết lập lại bằng phần mềm chạy trên máy tính được kết nối. Một trong các đường điều khiển lưu lượng phần cứng (DTR) của ATmega8U2 được kết nối với đường thiết lập lại của ATmega328 thông qua tụ điện 100 nano farad. Khi dòng này được xác nhận (ở mức thấp), dòng đặt lại giảm xuống đủ lâu để đặt lại chip. Phần mềm Arduino sử dụng khả năng này để cho phép bạn tải mã lên bằng cách chỉ cần nhấn nút tải lên trong môi trường Arduino. Điều này có nghĩa là bộ tải khởi động có thể có thời gian chờ ngắn hơn vì việc giảm DTR có thể được phối hợp tốt với thời điểm bắt đầu tải lên.

Thiết lập này có ý nghĩa khác. Khi Uno được kết nối với máy tính chạy Mac OS X hoặc Linux, nó sẽ đặt lại mỗi khi kết nối được thực hiện với nó từ phần mềm (qua USB). Trong khoảng nửa giây tiếp theo, bộ tải khởi động đang chạy trên Uno. Mặc dù nó được lập trình để bỏ qua dữ liệu không đúng định dạng (nghĩa là bất kỳ thứ gì ngoài việc tải mã mới lên), nhưng nó sẽ chặn một vài byte dữ liệu đầu tiên được gửi tới bảng sau khi kết nối được mở. Nếu một bản phác thảo chạy trên bảng nhận được cấu hình một lần hoặc dữ liệu khác khi nó khởi động lần đầu tiên, hãy đảm bảo rằng phần mềm mà nó giao tiếp sẽ đợi một giây sau khi mở kết nối và trước khi gửi dữ liệu này. Uno chứa một dấu vết có thể được cắt để tắt tính năng tự động đặt lại. Các miếng đệm ở hai bên của dấu vết có thể được hàn lại với nhau để kích hoạt lại nó. Nó được dán nhãn “RESET-EN”. Bạn cũng có thể tắt tính năng tự động đặt lại bằng cách kết nối điện trở 110-ohm từ 5V với đường dây đặt lại; xem chủ đề diễn đàn này để biết chi tiết.

Bảo vệ quá dòng USB
Arduino Uno có một cầu chì poly có thể đặt lại để bảo vệ các cổng USB của máy tính của bạn khỏi bị đoản mạch và quá dòng. Mặc dù hầu hết các máy tính đều cung cấp lớp bảo vệ bên trong riêng, nhưng cầu chì cung cấp thêm một lớp bảo vệ. Nếu hơn 500 mA được cấp vào cổng USB, cầu chì sẽ tự động ngắt kết nối cho đến khi tình trạng đoản mạch hoặc quá tải được loại bỏ.

Đặc điểm vật lý

Chiều dài và chiều rộng tối đa của Uno PCB lần lượt là 2.7 inch và 2.1 inch, với đầu nối USB và giắc cắm nguồn mở rộng ra ngoài kích thước cũ. Bốn lỗ vít cho phép bảng được gắn vào bề mặt hoặc vỏ. Lưu ý rằng khoảng cách giữa các chân kỹ thuật số 7 và 8 là 160 triệu (0.16″), không phải là bội số chẵn của khoảng cách 100 triệu của các chân khác.

Thiết kế tham khảo Arduino UNO

Các thiết kế tham khảo ĐƯỢC CUNG CẤP “NGUYÊN TRẠNG” VÀ “KHÔNG CÓ TẤT CẢ LỖI”. Arduino TỪ CHỐI TẤT CẢ CÁC BẢO ĐẢM KHÁC, RÕ RÀNG HAY NGỤ Ý, Arduino có thể thay đổi thông số kỹ thuật và mô tả sản phẩm bất kỳ lúc nào mà không cần thông báo trước. Khách hàng không được coi SẢN PHẨM, BAO GỒM NHƯNG KHÔNG GIỚI HẠN, BẤT KỲ BẢO ĐẢM NGỤ Ý NÀO VỀ KHẢ NĂNG BÁN ĐƯỢC HOẶC SỰ PHÙ HỢP CHO MỘT MỤC ĐÍCH CỤ THỂ dựa trên sự vắng mặt hoặc đặc điểm của bất kỳ tính năng hoặc hướng dẫn nào được đánh dấu là “dành riêng” hoặc “không xác định”. Arduino dành những điều này cho định nghĩa trong tương lai và sẽ không chịu trách nhiệm về bất kỳ xung đột hoặc sự không tương thích nào phát sinh từ những thay đổi trong tương lai đối với chúng. Thông tin sản phẩm trên Web Trang web hoặc Tài liệu có thể thay đổi mà không cần thông báo trước. Không hoàn thành một thiết kế với thông tin này.

Arduino-ATMEGA328-SMD-Breadboard-FIG-2

Tải PDF: Hướng dẫn sử dụng bo mạch Arduino ATMEGA328 SMD

Tài liệu tham khảo

Để lại bình luận

Địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *