Lập trình vi điều khiển bằng arduino mega 2560. Cách làm một ngôi nhà thông minh bằng Arduino bằng chính đôi tay của bạn

Có lẽ tất cả những ai quan tâm đến vấn đề này đều biết về Arduino. Đối với phần còn lại - các bo mạch trên chip ATMega (hầu hết) thuận tiện cho việc phát triển và tạo mẫu.
Cái hay của hệ sinh thái Arduino là có các bo mạch với các đầu nối thuận tiện cho việc tạo mẫu, với một lượng lớnđầu vào và đầu ra có thể lập trình, được kết nối qua USB với máy tính. IDE miễn phí để viết chương trình và chương trình cơ sở flash board. Một số lượng đáng kể các card mở rộng (tấm chắn) kết nối trực tiếp với các đầu nối bo mạch. VÀ số lượng lớn tất cả các loại cảm biến, động cơ servo, bộ truyền động và màn hình.

Ngoài ARDUINO (hai công ty - một ở Ý, thứ hai ở Mỹ), còn có một số lượng lớn bảng tương thích được sản xuất tại Trung Quốc.

Hôm nay tôi có trong tay mẫu bo mạch cũ hơn - Arduino Mega 2560.
Đến trong một hộp và túi chống tĩnh điện.

Đánh giá theo dòng chữ, nó được sản xuất tại Ý.

Nhìn từ trên cao.

Bảng được làm bằng sợi thủy tinh, phủ sơn bóng màu xanh, chữ khắc được sơn màu trắng. Mọi thứ đều được hàn rất cẩn thận, không có dấu vết của chất trợ dung. Những điểm yếu nhỏ - trồng hơi cong bộ cộng hưởng thạch anh.
Kết nối với máy tính bằng cáp máy in USB.
Để nộp cung cấp điện bên ngoài Có giắc cắm 2,1 mm. Thêm vào liên hệ nội bộ.

Đặc trưng

Chiều dài 100 mm
Chiều rộng 53 mm
Chiều cao 15 mm

Vi điều khiển ATmega2560
Điện áp hoạt động 5V
Điện áp cung cấp (khuyến nghị) 7-12V
Điện áp cung cấp (giới hạn) 6-20V
I/O kỹ thuật số 54 (trong đó 15 có thể được sử dụng làm đầu raPWM)
Đầu vào tương tự 16
Dòng điện tối đa trên mỗi chân 40 mA
Dòng điện đầu ra pin tối đa 3,3V 50mA
Bộ nhớ flash 256 KB trong đó 8 KB được sử dụng cho bộ nạp khởi động
SRAM 8 KB
EEPROM 4 KB
Tần số đồng hồ 16 MHz

Kiểm tra

Bo mạch được cung cấp trực tiếp từ nhà máy với bộ tải khởi động chương trình cơ sở và chương trình nhấp nháy, giúp tần số khác nhau nhấp nháy với đèn LED được hàn vào chân 13.
Trên một số bảng, tần số này là 1 Hz, trên bảng của tôi là khoảng 5 Hz.
Để kiểm tra chức năng, tôi đã kết nối nó với Arduino thông qua đăng kí ca 8 đèn LED và nhấp nháy chúng. Và sau đó ở đầu ra, xung điện là một miliampe quay số. Video bên dưới

Trong một vòng lặp, chúng ta đếm từ 0 đến 255

Cứ sau 1/4 giây chúng ta lại tăng độ rộng xung.

Về tính năng kết nối. Trên Mac và Linux, trước khi khởi động Arduino IDE, bạn cần kết nối bo mạch với máy tính, sau đó trong Arduino IDE chọn cổng mà bo mạch của chúng ta được kết nối.

Tổng cộng.
Với số tiền hợp lý, tôi đã nhận được thanh toán từ đặc điểm tối đa. Tôi khuyên bạn nên.

Sản phẩm được cửa hàng cung cấp để viết đánh giá. Đánh giá được công bố theo khoản 18 của Quy tắc trang web.

Tôi đang định mua +11 Thêm vào mục yêu thích Tôi thích bài đánh giá +3

Arduino Mega được xây dựng trên bộ vi điều khiển ATmega2560 (). Bảng mạch có 54 đầu vào/đầu ra kỹ thuật số (14 trong số đó có thể được sử dụng làm đầu raPWM), 16 đầu vào analog, 4 cổng nối tiếp UART, bộ tạo dao động tinh thể 16 MHz, đầu nối USB, đầu nối nguồn, đầu nối ICSP và thiết lập lại cái nút. Để hoạt động, bạn cần kết nối nền tảng với máy tính của mình thông qua cáp USB hoặc cấp nguồn bằng bộ chuyển đổi AC/DC, hoặc ắc quy. Arduino Mega 2560 tương thích với tất cả các bo mạch mở rộng được thiết kế cho nền tảng hoặc Duemilanove.

Lược đồ và dữ liệu ban đầu

Đặc điểm tóm tắt
vi điều khiển ATmega2560
Điện áp hoạt động 5V
Điện áp đầu vào (Khuyến nghị) 7-12V
Điện áp đầu vào (giới hạn) 6-20V
Đầu vào/Đầu ra kỹ thuật số 54 (14 trong số đó cũng có thể hoạt động như đầu raPWM)
Đầu vào analog 16
Dòng điện một chiều qua đầu vào/đầu ra 40 mA
Dòng điện không đổi cho đầu ra 3,3V 50 mA
Bộ nhớ flash 256 KB (trong đó 8 KB dùng cho bootloader)
ĐẬP 8 KB
Bộ nhớ không bay hơi 4 KB
Tần số đồng hồ 16 MHz
Dinh dưỡng

Arduino Mega có thể được cấp nguồn thông qua kết nối USB hoặc từ nguồn bên ngoài dinh dưỡng. Nguồn điện được chọn tự động.

Nguồn điện bên ngoài (không phải USB) có thể được cấp qua bộ chuyển đổi điện áp AC/DC (nguồn điện) hoặc pin. Bộ chuyển đổi điện áp được kết nối thông qua giắc cắm 2,1 mm với cực dương ở chân giữa. Các dây từ pin được kết nối với chân Gnd và Vin của đầu nối nguồn (POWER).

Nền tảng có thể hoạt động với nguồn điện bên ngoài từ 6V đến 20V. Khi điện áp cung cấp dưới 7V, chân 5V có thể xuất ra dưới 5V và nền tảng có thể không ổn định. Nếu bạn sử dụng điện áp cao hơn 12V, bộ điều chỉnh điện áp có thể bị quá nhiệt và làm hỏng bo mạch. Phạm vi khuyến nghị là 7V đến 12V.

Bảng Mega2560, không giống như những phiên bản trước bo mạch, không sử dụng bộ vi điều khiển USB FTDI. Để trao đổi dữ liệu qua USB, bộ vi điều khiển Atmega8U2 được sử dụng, được lập trình dưới dạng bộ chuyển đổi USB sang nối tiếp.

Các chân nguồn:

  • số VIN. Đầu vào được sử dụng để cấp nguồn từ nguồn bên ngoài (trong trường hợp không có 5 V từ đầu nối USB hoặc thiết bị khác). nguồn quy địnhđồ ăn). Điện áp cung cấp được cung cấp thông qua kết luận này. Nếu nguồn được cấp cho đầu nối 2.1mm thì đầu vào này có thể được cấp nguồn.
  • 5V. Nguồn điện áp được điều chỉnh dùng để cấp nguồn cho bộ vi điều khiển và các bộ phận trên bo mạch. Nguồn có thể được cấp từ chân VIN thông qua bộ điều chỉnh điện áp hoặc từ đầu nối USB hoặc nguồn 5V được điều chỉnh khác.
  • 3V3.Điện áp chân 3,3V được tạo ra bởi chip FTDI trên nền tảng. Tiêu thụ tối đa hiện tại 50mA.
  • GND. Thiết bị đầu cuối nối đất.
Ký ức

Bộ vi điều khiển ATmega2560 có: bộ nhớ flash 256 kB để lưu trữ mã chương trình (4 kB được sử dụng để lưu trữ bộ nạp khởi động), 8 kB RAM và 4 kB EEPROM (được đọc và ghi bằng thư viện EEPROM).

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

Mỗi trong số 54 chân kỹ thuật số của Mega có thể được cấu hình làm đầu vào hoặc đầu ra bằng cách sử dụng các hàm pinMode() , digitalWrite() và digitalRead() . Các chân hoạt động ở điện áp 5 V. Mỗi chân có điện trở tải (bị vô hiệu hóa tiêu chuẩn) từ 20-50 kOhm và có thể truyền tới 40 mA. Một số chân có chức năng đặc biệt:

  • Bus nối tiếp: 0 (RX) và 1 (TX); Bus nối tiếp 1: 19 (RX) và 18 (TX); Bus nối tiếp 2: 17 (RX) và 16 (TX); Bus nối tiếp 3: 15 (RX) và 14 (TX). Các chân được sử dụng để nhận dữ liệu TTL (RX) và truyền (TX). Chân 0 và 1 được kết nối với các chân tương ứng của chip bus nối tiếp ATmega8U2.
  • Ngắt ngoài: 2 (ngắt 0), 3 (ngắt 1), 18 (ngắt 5), 19 (ngắt 4), 20 (ngắt 3) và 21 (ngắt 2). 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 khi giá trị thay đổi. thông tin chi tiết nằm trong phần mô tả hàm AttachInterrupt().
  • PWM: 2 đến 13 và 44-46. Một trong hai chân đều cung cấp tín hiệu điều khiển 8 bit bằng cách sử dụng hàm analogWrite().
  • SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Giao tiếp SPI được thực hiện thông qua các chân này, ví dụ như sử dụng thư viện SPI. Ngoài ra, các chân SPI có thể được xuất ra trên khối ICSP, tương thích với các nền tảng Uno, Duemilanove và Diecimila.
  • ĐÈN LED: 13.Đèn LED tích hợp được kết nối với chân kỹ thuật số 13. Nếu giá trị chân cao, đèn LED sẽ sáng.
  • I2C: 20 (SDA) và 21 (SCL). Các chân cung cấp giao tiếp I2C (TWI). Để tạo nó, thư viện Wire được sử dụng (thông tin trên trang web Wires). Bố cục chốt trên nền tảng Mega không khớp với bố cục của Duemilanove hoặc Diecimila.

Nền tảng Mega2560 có 16 đầu vào tương tự, mỗi đầu vào có độ phân giải 10 bit (tức là có thể nhận 1024 giá trị khác nhau). Các chân tiêu chuẩn có phạm vi đo lên tới 5 V so với mặt đất, tuy nhiên có thể thay đổi giới hạn trên bằng cách sử dụng chân ISF và hàm analogReference().

Cặp chân nền tảng bổ sung:

  • ISF.Điện áp tham chiếu cho đầu vào analog. Được sử dụng với hàm analogReference().
  • Cài lại. Tín hiệu thấp trên chân sẽ đặt lại bộ vi điều khiển. Thường được sử dụng để kết nối nút đặt lại trên bảng mở rộng, nút này chặn quyền truy cập vào nút trên chính bảng mạch Arduino.
Sự liên quan

Một số thiết bị được cài đặt trên nền tảng Arduino Mega2560 để giao tiếp với máy tính, các thiết bị khác Thiết bị Arduino hoặc vi điều khiển. ATmega2560 hỗ trợ 4 cổng dữ liệu nối tiếp UART cho TTL. Chip ATmega8U2 được cài đặt trên bo mạch định tuyến một trong các giao diện qua USB, cung cấp một giao diện ảo cổng COM các chương trình trên máy tính (máy Windows dành cho hoạt động chính xác với cổng COM ảo thì cần có file .inf, hệ thống chạy OSX và Linux thì mình tự động nhận diện cổng COM). Tiện ích giám sát môi trường Serial Monitor phát triển Arduino cho phép bạn gửi và nhận dữ liệu văn bản khi được kết nối với nền tảng. Đèn LED RX và TX trên nền tảng sẽ nhấp nháy khi dữ liệu được truyền qua chip ATmega8U2 và kết nối USB(nhưng không phải khi sử dụng truyền nối tiếp qua chân 0 và 1).

Lập trình

Bộ vi điều khiển ATmega2560 đi kèm với bộ tải khởi động được viết sẵn, giúp bạn dễ dàng viết chương trình mới mà không cần sử dụng bộ lập trình bên ngoài. Giao tiếp được thực hiện bằng giao thức STK500 ban đầu.

Có thể không sử dụng bộ nạp khởi động và lập trình bộ vi điều khiển thông qua các chân của khối ICSP (lập trình trong mạch). có trong sách hướng dẫn này.

Mã chương trình cơ sở cho bộ điều khiển ATmega8U2 có sẵn để tải xuống miễn phí. Bộ điều khiển ATmega8U2 có bộ tải khởi động DFU riêng, có thể được kích hoạt bằng cách rút ngắn jumper tới mặt sau board (cạnh bản đồ nước Ý) và khởi động lại bộ điều khiển. Cho việc thu âm phần mềm mới Có thể sử dụng FLIP của Atmel (trong Windows) hoặc (trên Mac OS X hoặc Linux). Bạn cũng có thể viết lại chương trình cơ sở bằng một lập trình viên bên ngoài bằng cách sử dụng đầu vào ISP.

Tự động khởi động lại (mềm)

Mega được thiết kế theo cách mà trước khi viết mã mới, việc khởi động lại sẽ được thực hiện bởi chính chương trình chứ không phải bằng cách nhấn nút trên nền tảng. Một trong các đường điều khiển luồng dữ liệu (DTR) ATmega8U2 được kết nối với chân reset của bộ vi điều khiển ATmega2560 thông qua tụ điện 100 nF. Kích hoạt dòng này, tức là. đưa ra tín hiệu cấp thấp, khởi động lại bộ vi điều khiển. Chương trình Arduino sử dụng Chức năng này, tải mã lên chỉ bằng một cú nhấp chuột vào nút Tải lên trong chính môi trường lập trình. Tín hiệu mức thấp trên đường DTR được phối hợp với quá trình bắt đầu ghi mã, giúp giảm thời gian chờ của bộ nạp khởi động.

Chức năng này có một ứng dụng khác. Mega2560 khởi động lại mỗi khi được kết nối với chương trình Arduino trên máy tính Mac X hoặc Linux (qua USB). Trong nửa giây tiếp theo sau khi khởi động lại, bộ nạp khởi động sẽ hoạt động. Trong quá trình lập trình, một vài byte đầu tiên của mã bị trì hoãn để ngăn nền tảng nhận dữ liệu không chính xác (mọi thứ ngoại trừ mã chương trình mới). Nếu bạn đang thực hiện gỡ lỗi một lần cho bản phác thảo được ghi vào nền tảng hoặc nhập bất kỳ dữ liệu nào khác vào lần đầu tiên bạn chạy nó, bạn cần đảm bảo rằng chương trình trên máy tính của bạn đợi một giây trước khi truyền dữ liệu.

Trên Mega2560 có thể vô hiệu hóa dòng khởi động lại tự động bằng cách ngắt dòng tương ứng. Sau đó, các điểm tiếp xúc chip ở cả hai đầu đường dây có thể được kết nối cho mục đích khôi phục. Dòng được đánh dấu "RESET-EN". Vô hiệu hóa tự động khởi động lại Cũng có thể bằng cách kết nối điện trở 110 ohm giữa nguồn 5V và đường dây này.

Bảo vệ dòng điện đầu nối USB

Arduino Mega2560 có một liên kết cầu chì có thể cài đặt lại được tích hợp để bảo vệ cổng USB máy tính khỏi dòng điện ngắn mạch và quá dòng. Mặc dù hầu hết tất cả các máy tính đều có khả năng bảo vệ tương tự, nhưng cầu chì này vẫn cung cấp thêm một rào cản. Cầu chì tự động ngắt trao đổi dữ liệu khi có dòng điện lớn hơn 500 mA đi qua cổng USB.

Đặc tính vật lý và khả năng tương thích với thẻ mở rộng

Chiều dài và chiều rộng bảng mạch in Mega2560 lần lượt là 10,2 và 5,3 cm. Đầu nối USB và đầu nối nguồn vượt quá các kích thước này. Ba lỗ trên bảng cho phép nó được gắn trên một bề mặt. Khoảng cách giữa các chân số 7 và 8 là 0,4 cm, mặc dù giữa các chân còn lại là 0,25 cm.

Arduino Mega2560 tương thích với tất cả các bo mạch mở rộng được thiết kế cho nền tảng Uno, Duemilanove hoặc Diecimila. Cách bố trí các chân 0 - 13 (và AREF và GND liền kề), đầu vào analog 0 - 5, đầu nối nguồn, khối ICSP, cổng nối tiếp UART (chân 0 và 1) và ngắt ngoài 0 và 1 (chân 2 và 3) trên Mega tương ứng với vị trí trên các nền tảng trên. Giao tiếp SPI có thể được thực hiện thông qua khối ICSP, cả trên nền tảng Duemilanove/Diecimila và Mega2560. Tuy nhiên, bố cục chân (20 và 21) của giao tiếp I2C trên nền tảng Mega không khớp với bố cục chân (đầu vào tương tự 4 và 5) trên Duemilanove/Diecimila.

Arduino Mega 2560- đây là một phiên bản mở rộng. Arduino Mega được xây dựng trên một vi điều khiển ATmega2560. Bảng mạch có 54 đầu vào/đầu ra kỹ thuật số (14 trong số đó có thể được sử dụng làm đầu raPWM), 16 đầu vào analog, 4 cổng nối tiếp UART, bộ tạo dao động tinh thể 16 MHz, đầu nối USB, đầu nối nguồn, đầu nối ICSP và thiết lập lại cái nút. Để vận hành, bạn cần kết nối nền tảng với máy tính thông qua cáp USB hoặc cấp nguồn bằng bộ chuyển đổi AC/DC hoặc pin. Arduino Mega 2560 tương thích với tất cả các bo mạch mở rộng được thiết kế cho nền tảng Arduino Uno hoặc Duemilanove.

Đặc điểm của Arduino Mega 2560

vi điều khiển ATmega2560
Điện áp hoạt động 5V
Điện áp đầu vào (Khuyến nghị) 7-12V
Điện áp đầu vào (giới hạn) 6-20V
Đầu vào/Đầu ra kỹ thuật số 54 (14 trong số đó cũng có thể hoạt động như đầu raPWM)
Đầu vào analog 16
Dòng điện một chiều qua đầu vào/đầu ra 40 mA
Dòng điện không đổi cho đầu ra 3,3V 50 mA
Bộ nhớ flash 256 KB (trong đó 8 KB dùng cho bootloader)
ĐẬP 8 KB
Bộ nhớ không bay hơi 4 KB
Tần số đồng hồ 16 MHz

Nguồn cấp cho Arduino Mega 2560

Arduino Mega có thể được cấp nguồn thông qua kết nối USB hoặc từ nguồn điện bên ngoài. Nguồn điện được chọn tự động.

Nguồn điện bên ngoài (không phải USB) có thể được cấp qua bộ chuyển đổi điện áp AC/DC (nguồn điện) hoặc pin. Bộ chuyển đổi điện áp được kết nối thông qua giắc cắm 2,1 mm với cực dương ở chân giữa. Các dây từ pin được kết nối với chân Gnd và Vin của đầu nối nguồn (POWER).

Nền tảng có thể hoạt động với nguồn điện bên ngoài từ 6V đến 20V. Khi điện áp cung cấp dưới 7V, chân 5V có thể xuất ra dưới 5V và nền tảng có thể không ổn định. Nếu bạn sử dụng điện áp cao hơn 12V, bộ điều chỉnh điện áp có thể bị quá nhiệt và làm hỏng bo mạch. Phạm vi khuyến nghị là 7V đến 12V.

Bo mạch Mega2560, không giống như các phiên bản bo mạch trước đó, không sử dụng bộ vi điều khiển USB FTDI. Để trao đổi dữ liệu qua USB, bộ vi điều khiển Atmega8U2 được sử dụng, được lập trình dưới dạng bộ chuyển đổi USB sang nối tiếp.

Các chân nguồn:

  • số VIN. Đầu vào được sử dụng để cấp nguồn từ nguồn bên ngoài (trong trường hợp không có 5V từ đầu nối USB hoặc nguồn điện được quy định khác). Điện áp nguồn được cung cấp qua chân này. Nếu nguồn được cấp cho đầu nối 2.1mm thì đầu vào này có thể được cấp nguồn.
  • 5V. Nguồn điện áp được điều chỉnh dùng để cấp nguồn cho bộ vi điều khiển và các bộ phận trên bo mạch. Nguồn có thể được cấp từ chân VIN thông qua bộ điều chỉnh điện áp hoặc từ đầu nối USB hoặc nguồn 5V được điều chỉnh khác.
  • 3V3.Điện áp chân 3,3V được tạo ra bởi chip FTDI trên nền tảng. Mức tiêu thụ hiện tại tối đa 50 mA.
  • GND. Thiết bị đầu cuối nối đất.

So sánh Arduino Mega 2560 và UNO

Uno Siêu cấp
vi điều khiển ATmega328p ATmega2560
Số lượng đầu vào/đầu ra kỹ thuật số 14 54
...trong đó có hỗ trợ điều khiển từ xa 6 15
Số lượng đầu vào tương tự 6 16
Số lượng chân cho ngắt phần cứng 2 6
Dung lượng bộ nhớ flash (kB) 32 256
Dung lượng bộ nhớ SRAM (kB) 2 8
Dung lượng bộ nhớ EEPROM (kB) 1 4
Tần số đồng hồ (MHz) 16 16
Số cổng nối tiếp phần cứng 1 4

Kích thước của Arduino Mega 2560

Kích thước bảng là 10,16 × 5,3 cm (so với 6,9 × 5,3 cm của mẫu cơ bản). Các ổ cắm cho nguồn điện bên ngoài và USB nhô ra ngoài ranh giới được chỉ định vài mm. Bảng có chỗ để gắn bằng vít hoặc ốc vít. Khoảng cách giữa các tiếp điểm là 0,1” (2,54 mm), nhưng trong trường hợp tiếp điểm thứ 7 và thứ 8 thì khoảng cách là 0,16”.

Mua Arduino ở đâu

Bộ dụng cụ Arduino có thể được mua trên trang web chính thức và trong nhiều cửa hàng trực tuyến.

Giá cả hấp dẫn nhất, khuyến mãi đặc biệt liên tục và miễn phí vận chuyển trên các trang web Cửa hàng Trung Quốc AliExpress và DealExtreme. Nếu bạn không có thời gian chờ đợi bưu kiện từ Trung Quốc, chúng tôi khuyên bạn nên sử dụng cửa hàng trực tuyến

ATmega2560. Bảng mạch có 54 chân I/O kỹ thuật số, 15 trong số đó có thể được sử dụng làm đầu raPWM, 16 đầu vào analog, 4 cổng nối tiếp phần cứng UART, tinh thể thạch anh có tần số 16 MHz, cổng USB, đầu nối nguồn, đầu nối ISCP (Trong lập trình nối tiếp mạch, lập trình trong thiết bị bằng giao thức nối tiếp) và nút đặt lại cho vi điều khiển. Để bắt đầu làm việc với bảng này, bạn chỉ cần kết nối nó bằng giao diện USB vào máy tính hoặc đơn giản là cấp nguồn từ nguồn dòng điện một chiều, cũng có thể là pin. Arduino Mega 2560 tương thích với hầu hết các thẻ mở rộng (tấm chắn) được thiết kế cho Arduino UNO , Duemilanove hoặc Diecimila.

Arduino Mega 2560 thay bo mạch Arduino Mega.

Mega 2560 khác với tất cả các bo mạch trước đó ở chỗ nó không sử dụng cầu nối phần cứng USB nối tiếp các công ty FTDI. Thay vào đó, nó có một bộ vi điều khiển ATmega16U2 (ATmega8U2 trong phiên bản bo mạch 1 và 2), được lập trình để hoạt động như USB nối tiếp bộ chuyển đổi
Trong lần sửa đổi thứ hai Mega2560 có một điện trở kéo lên 8U2 HWB xuống đất, giúp đơn giản hóa việc chuyển sang DFU.

TRONG Arduino Mega 2560 trong phiên bản 3 những thay đổi sau đã được thực hiện:

  • Pinout 1.0: thêm chân S.D.A.SCL nằm cạnh các nhà ga AREF và hai chân mới khác được đặt bên cạnh đầu ra CÀI LẠI. IOREF cho phép các tấm chắn thích ứng với điện áp được cung cấp từ bo mạch. Trong tương lai, các tấm chắn sẽ tương thích với các bo mạch dựa trên vi điều khiển AVR, hoạt động với điện áp 5 V và có bảng mạch Arduino đến hạn , hoạt động với điện áp 3,3 V.
  • Chuỗi gia cố CÀI LẠI.
  • Đã thực hiện thay thế ATmega 8U2 TRÊN 16U2.

Sơ đồ, bảng dữ liệu, sơ đồ chân

Tải xuống hướng dẫn kỹ thuật cho vi điều khiển ATmega 640/1280/1281/2560/2561:

Tải xuống sơ đồ TRÊN Arduino Mega 2560:

Sơ đồ chân của bảng Arduino Mega 2560(Click vào hình để phóng to).

Đặc trưng Arduino Mega 2560

vi điều khiểnATmega2560
Điện áp hoạt động5 V
Điện áp đầu vào (Khuyến nghị)7-12V
Điện áp đầu vào (giới hạn)6-20V
Đầu vào/đầu ra kỹ thuật số54 (trong đó 15 có thể hoạt động như đầu raPWM)
Đầu vào analog16
Dòng điện đầu vào/đầu ra tối đa40 mA
Dòng điện tối đa cho đầu ra 3,3V50 mA
Bộ nhớ flash256 KB trong đó 8 KB được sử dụng bởi bootloader
RAM (SRAM)8 KB
Bộ nhớ không bay hơi (EEPROM)4 KB
Tần số đồng hồ16 MHz

Dinh dưỡng

Arduino Mega có thể nhận được năng lượng từ USB-port hoặc nguồn bên ngoài. Nguồn điện được chọn tự động.

Nguồn điện bên ngoài (không USB) có thể được cung cấp từ nguồn điện hoặc pin. Nguồn điện kết nối với đầu nối 2,1 mm trên bo mạch, đầu nối này có chân dương ở giữa. Nguồn pin có thể được kết nối với các thiết bị đầu cuối GNDsố VINđầu nối nguồn QUYỀN LỰC.

Bảng mạch có thể hoạt động từ nguồn điện áp bên ngoài trong khoảng từ 6 đến 20 volt. Nếu điện áp nguồn nhỏ hơn 7 V, chân 5 V có thể nhỏ hơn 5 V và bo mạch có thể không ổn định. Nếu điện áp nguồn bên ngoài vượt quá 12 V, bộ điều chỉnh điện áp có thể quá nóng và làm hỏng bo mạch. Phạm vi điện áp cung cấp được đề nghị là 7-12 volt.

Các chân nguồn:

  • số VIN. Điện áp đầu vào của bảng Arduino khi sử dụng nguồn bên ngoài (nếu không có điện áp 5 volt trên USB-kết nối hoặc từ nguồn điện khác). Bạn có thể cấp nguồn cho chân này hoặc nếu nguồn được cấp cho giắc 2,1 mm thì bạn có thể lấy điện áp đầu vào nguồn từ chân này.
  • 5V. Điện áp ở các chân này được điều chỉnh bởi bộ điều chỉnh điện áp được tích hợp trong bo mạch. Bảng mạch có thể được cấp nguồn thông qua đầu nối nguồn 2,1 mm (7-12 V), thông qua USB-kết nối (5 V), hoặc thông qua đầu ra số VIN(7-12 V) trên bảng. Việc cấp nguồn qua chân 5V hoặc 3,3V sẽ bỏ qua bộ điều chỉnh và có thể làm hỏng bo mạch. Điều này không được khuyến khích.
  • 3V3. Điện áp 3,3 volt được tạo ra bằng bộ điều chỉnh tích hợp trong bo mạch. Mức tiêu thụ hiện tại tối đa không được vượt quá 50 mA.
  • GND. Kết luận của trái đất.
  • IOREF. Chân này cung cấp điện áp tham chiếu mà vi điều khiển hoạt động. Vì cấu hình đúng bảng bên ngoài, bạn có thể đọc điện áp từ chân này và chọn nguồn điện thích hợp hoặc cho phép bộ chuyển đổi điện áp hoạt động với điện áp 5 V hoặc 3,3 V.

Ký ức

ATmega có 256 KB bộ nhớ flash để lưu trữ Mã chương trình(trong đó 8 KB dùng cho bootloader), RAM 8 KB và 4 KB bộ nhớ không bay hơi (EEPROM có thể được đọc và viết bằng thư viện có tên - EEPROM).

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

Mỗi trong số 54 chân kỹ thuật số trên Arduino Mega có thể làm việc ở chế độ đầu vào hoặc đầu ra bằng các chức năng pinChế độ, Viết kỹ thuật sốkỹ thuật sốĐọc. Đầu ra hoạt động ở mức 5 V. Mỗi chân có thể gửi hoặc nhận tối đa 40 mA và có điện trở kéo lên bên trong 20-50 kOhm (bị tắt theo mặc định). Ngoài ra, một số chân có chức năng đặc biệt:

  • nối tiếp: 0 (RX) và 1 ( TX); nối tiếp 1: 19 (RX) và 18 ( TX); nối tiếp 2: 17 (RX) và 16 ( TX); nối tiếp 3: 15 (RX) và 14 ( TX). Để gửi dữ liệu qua cổng nối tiếp với cấp độ TTL-logic được sử dụng RX, để có được - TX. Chân 0 và 1 cũng được nối với chân tương ứng của chip chuyển đổi USB-to-TTL ATmega16U2
  • Các ngắt ngoài: 2 (ngắt 0), 3 (ngắt 1), 18 (ngắt 5), 19 (ngắt 4), 20 (ngắt 3) và 21 (ngắt 2). Các chân này có thể được đặt ở cạnh thấp, cạnh tăng hoặc giảm hoặc cạnh. Để biết thêm chi tiết, xem mô tả chức năng đính kèmNgắt.
  • xung điện: 2 đến 13 và 44 đến 46. Cung cấp đầu ra tín hiệu xung 8 bit bằng chức năng này tương tựViết.
  • SPI: 50 (MISO), 51 (MOSI), 52 (SCK), 53 (SS). Các chân này hỗ trợ truyền dữ liệu qua SPI sử dụng thư viện SPI. Ghim SPI cũng có thể được xuất ra khối ISCP, đang bật trình độ thể chất tương thích với Uno, Duemilanovediecimilia.
  • DẪN ĐẾN: 13. Đây là đèn LED được tích hợp sẵn trong bo mạch, được kết nối với chân 13. Khi giá trị CAOở đầu ra, đèn LED bật, khi ở mức thấp, nó tắt.
  • TWI (I2C): 20 (S.D.A.) và 21 ( SCL). Cung cấp kết nối không dây bằng thư viện Wire. Vị trí của các chân này khác nhau trên bo mạch Duemilanove hoặc diecimila.

Có một vài chân nữa trên bảng:

  • AREF. Điện áp tham chiếu cho đầu vào analog. Được sử dụng với analogReference.
  • CÀI LẠI. Tín hiệu thấp ở đầu vào này sẽ đặt lại bộ vi điều khiển. Thường được sử dụng nút bổ sungđặt lại trên các tấm chắn chặn nút đặt lại trên bảng Arduino.

Sự liên quan

Arduino Mega 2560 có một số nhiều khả năng khác nhauđể giao tiếp với một máy tính khác, một bảng mạch khác Arduino, hoặc vi điều khiển khác. ATmega2560 có 4 cổng phần cứng UARTđể kết nối qua cổng nối tiếp với TTL-cấp (5 volt). ATmega16U2 (ATmega 8U2 trên bảng sửa đổi 1 và 2) chuyển hướng một trong các kênh thông qua USB và cung cấp ảo COM-port cho phần mềm trên máy tính (dành cho máy tính chạy các cửa sổ tập tin được yêu cầu. thông tin, nhưng máy tính đang ở dưới Mac OS XLinux công nhận bảng là COM-port tự động). Arduino IDE có một màn hình cổng cho phép bạn gửi và nhận lên bảng Arduino dữ liệu văn bản đơn giản đèn LED RX và TX nhấp nháy, báo hiệu việc truyền dữ liệu qua chip ATmega8U2/ATmega16U2USB-kết nối với máy tính (nhưng không phải khi truyền dữ liệu qua cổng nối tiếp sử dụng chân 0 và 1).

Thư viện Phần mềm nối tiếp Cho phép bạn làm việc với kết nối cổng nối tiếp cho mọi đầu ra kỹ thuật số Siêu cấp 2560 .

ATmega2560 cũng hỗ trợ kết nối giao thức tôi 2 CSPI. Để đơn giản hóa việc sử dụng trao đổi giao thức tôi 2 C thư viện được sử dụng Dây điện, để kết nối qua SPI- thư viện có cùng tên SPI.

Lập trình

Arduino Mega có thể được lập trình bằng cách sử dụng Arduino IDE.

vi điều khiển ATmega2560 trên bảng Arduino Megađi kèm với bộ tải khởi động chương trình cơ sở cho phép bạn khởi động Mã mới vào bộ vi điều khiển mà không cần sử dụng bộ lập trình phần cứng bên ngoài. Bộ nạp khởi động sử dụng giao thức gốc STK500 ().

Bạn không cần phải sử dụng bộ nạp khởi động và lập trình bộ vi điều khiển thông qua các chân khối ISCP sử dụng Arduino ISP hoặc tương tự.

Mã nguồn phần mềm ATmega16U2(hoặc 8U2 trong phiên bản bo mạch 1 và 2) có sẵn để tải xuống trong kho Arduino . ATmega16U2/8U2 khởi động bằng bootloader DFU, được kích hoạt như sau:

  • Trên bảng phiên bản 1: đóng jumper ở mặt sau bảng (cạnh bản đồ nước Ý) và khởi động lại 8U2.
  • Trên bo mạch phiên bản 2 trở lên: có điện trở kéo lên 8U2/16U2 HWB xuống đất, điều này làm cho việc chuyển sang trạng thái dễ dàng hơn DFU. Bạn có thể sử dụng phần mềm từ Atmelđược phép Lật(Vì các cửa sổ) hoặc DFU lập trình viên ( Mac OS XLinux). Bạn cũng có thể viết lại chương trình cơ sở bằng bộ lập trình bên ngoài bằng đầu nối ISP(bằng cách ghi đè bộ nạp khởi động DFU). Chi tiết.

Tự động (thiết lập lại mềm)

Thay vì nhấn phím reset trước khi khởi động, Arduino Mega 2560 được thiết kế theo cách mà nó cho phép thiết lập lại mềm từ một máy tính được kết nối. Một trong những dòng điều khiển luồng dữ liệu ATmega8U2 -đường kẻ DTR, được kết nối với dòng thiết lập lại ATmega2560 qua tụ điện 100 nF. Kích hoạt đường dây này bằng mức điện áp thấp cho phép thiết lập lại chip. Phần mềm Arduino tận dụng tính năng này bằng cách cho phép bạn tải xuống mã chỉ bằng cách nhấp vào nút tải xuống trong môi trường Arduino. Tín hiệu mức thấp được đồng bộ hóa khi bắt đầu ghi mã, giúp giảm thời gian chờ của bộ nạp khởi động.

Điều này có một ứng dụng khác. Khi Mega 2560 kết nối với một máy tính đang chạy Mac OS X hoặc Linux, mỗi lần khởi động lại mềm (thông qua USB). Chương trình nạp khởi động Mega 2560 mất khoảng nửa giây. Trong quá trình lập trình, một vài byte đầu tiên của mã bị trì hoãn để tránh nhận dữ liệu không chính xác (tất cả ngoại trừ mã của chương trình mới). Nếu bạn đang thực hiện gỡ lỗi một lần cho bản phác thảo được ghi vào nền tảng hoặc nhập bất kỳ dữ liệu nào khác ở lần khởi chạy đầu tiên, bạn cần đảm bảo rằng chương trình trên máy tính đợi một giây trước khi truyền dữ liệu.

Trên Mega2560 có thể vô hiệu hóa dòng khởi động lại tự động bằng cách ngắt dòng tương ứng. Để khôi phục đường dây, cần kết nối lại tiếp điểm khi bị đứt. Dòng được đánh dấu là " THIẾT LẬP LẠI-EN" Cũng có thể tắt tính năng tự động khởi động lại bằng cách kết nối điện trở 110 Ohm 5 V và đường dây này. Chi tiết.

Bảo vệ quá dòng USB

Arduino Mega 2560 có cầu chì tự phục hồi để bảo vệ các cổng USB 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 biện pháp bảo vệ bên trong riêng, cầu chì cung cấp thêm một lớp bảo vệ. Với mức tiêu thụ hiện tại thông qua USB hơn 500 mA, cầu chì sẽ tự động ngắt kết nối cho đến khi ngắn mạch hoặc tình trạng quá tải sẽ không được loại bỏ.

Đặc tính vật lý và khả năng tương thích với thẻ mở rộng

Chiều dài và chiều rộng PCB Mega2560 lần lượt là 10,2 và 5,3 cm. Đầu nối USB và đầu nối nguồn vượt quá các kích thước này. Ba lỗ trên bảng cho phép nó được gắn trên một bề mặt. Khoảng cách giữa các chân số 7 và 8 là 0,4 cm, mặc dù giữa các chân còn lại là 0,25 cm.

Arduino Mega2560 Tương thích với tất cả các card mở rộng được thiết kế cho nền tảng Uno, Duemilanove hoặc Diecimila. Vị trí các chân 0 – 13 (và liền kề) AREFGND), đầu vào analog 0 – 5, đầu nối nguồn, khối ICSP, cổng nối tiếp UART(chân 0 và 1) và ngắt ngoài 0 và 1 (chân 2 và 3) bật Siêu cấp tương ứng với vị trí trên các nền tảng trên. Sự liên quan SPI có thể được thực hiện thông qua khối ICSP, cả trên nền tảng Duemilanove/Diecimila và trên Mega2560. Tuy nhiên, vị trí của các chân giao tiếp (20 và 21) tôi 2 C trên nền tảng Siêu cấp không tương ứng với vị trí của các chân giống nhau (đầu vào analog 4 và 5) trên Duemilanove/Diecimila.

Đánh giá/Thiết kế/Chỉnh sửa: Myakishev E.A.

Giới thiệu Arduino Mega 2560

Arduino Mega 2560được thiết kế cho các dự án cần nhiều hơn Vào/ra liên lạc, thêm bộ nhớ cho bản phác thảo và hơn thế nữa bộ nhớ truy cập tạm thời. Cô bé có 54 vào/ra liên hệ, 16 chân đầu vào tương tự và được khuyến nghị sử dụng trong các dự án máy in 3D và robot. Bài viết này giải thích cách kết nối bảng Mega 2560 vào máy tính của bạn và tải lên bản phác thảo đầu tiên của bạn.

Bo mạch Arduino Mega 2560 lập trình bằng cách sử dụng IDE Arduino – một môi trường phát triển tích hợp được sử dụng cho tất cả các bảng Arduino. Nó có sẵn cả ngoại tuyến và trực tuyến. Thêm chi tiết từ IDE Arduino có thể được tư vấn.

Sử dụng Arduino Mega 2560 với Arduino Online IDE

Sử dụng Arduino Mega 2560 với Arduino Computer IDE

Nếu bạn muốn lập trình Arduino Mega 2560 trong khi ngoại tuyến, bạn cần cài đặt phiên bản ngoại tuyến của Arduino IDE.

Kết nối bảng

Kết nối của bạn Arduino Mega 2560 với sự giúp đỡ USB-loại cáp "A-B"(nó còn được gọi là "máy in").

USB-kết nối với máy tính cần thiết không chỉ cho việc cung cấp điện mà còn cho việc lập trình bảng mạch. Mega 2560 sẽ tự động nhận nguồn điện từ một trong hai USB hoặc từ nguồn điện bên ngoài. Kết nối bo mạch với máy tính bằng cách sử dụng USB-cáp. Kết quả là đèn LED màu xanh lá cây (được gọi là LÒ NÒ).

Mở bản phác thảo

Mở bản phác thảo ví dụ "Chớp mắt". Để thực hiện việc này, hãy nhấp vào IDE Arduino TRÊN Tệp > Ví dụ > 01.Basics > Nhấp nháy (Tệp > Ví dụ > 01.Basics > Nhấp nháy).

Chọn loại bo mạch và cổng

Bấm vào Công cụ > Bảng và trong menu xuất hiện, chọn mục tương ứng với bo mạch Arduino/Genuino của bạn. Chúng ta có Mega 2560, nên mặc định bộ xử lý sẽ được chọn ATmega2560.

Tiếp theo bấm vào Công cụ > Cổng và chọn mục mong muốn. Rất có thể nó sẽ như vậy COM3 hoặc cao hơn ( COM1COM2, thường dành riêng cho các cổng nối tiếp phần cứng). Để tìm đúng cổng, hãy rút phích cắm bo mạch và mở lại menu này - mục bị biến mất sẽ là cổng mà bo mạch Arduino/Genuino của bạn được kết nối. Kết nối lại bo mạch và chọn cổng nối tiếp mong muốn.

Tải lên bản phác thảo của bạn

Bây giờ chỉ cần nhấp vào nút IDE Arduino. Chúng tôi đợi vài giây - bạn sẽ thấy đèn LED trên bảng nhấp nháy RXTX. Nếu quá trình tải xuống thành công, một thông báo sẽ xuất hiện trong bảng trạng thái.

Vài giây sau khi khởi động xong, bạn sẽ thấy đèn LED được kết nối với ngày 13 liên hệ. Nếu bạn nhìn thấy nó, xin chúc mừng! Bảng đang hoạt động thành công. Nếu bạn có bất kỳ vấn đề gì, hãy xem