Chương 3: THIẾT KẾ HỆ THỐNG ĐIỀU KHIỂN
3.2. Lựa chọn thiết bị điện
3.2.6. Tìm hiểu về board arduino mega 2560
Thành phần Arduino Mega
Arduino là một board mạch vi xử lý, nhằm xây dựng các ứng dụng tương tác với nhau hoặc với môi trường một cách thuận lợi. Được giới thiệu vào năm 2005, nhóm
thiết kế Arduino đã cố gắng tạo ra một phương thức dễ dàng và chi phí không đáng kể để những người yêu thích, sinh viên và chuyên gia có thể tạo ra các thiết bị có khả năng tương tác với môi trường thông qua cảm biến và các cơ cấu thực hiện. Những ứng dụng
phổ biến cho người mới bắt đầu sử dụng Arduino bao gồm các robot đơn giản, hệ thống điều khiển nhiệt độ và cảm biến chuyển động. Môi trường phát triển tích hợp (IDE) đi kèm với Arduino chạy trên máy tính cá nhân thông thường và cho phép người dùng viết chương trình cho Arduino bằng ngôn ngữ C hoặc C++.
Ước tính vào giữa năm 2011, đã có trên 300 nghìn bo mạch Arduino chính thức được sản xuất thương mại, và vào năm 2013, con số này đã tăng lên khoảng 700 nghìn
bo mạch chính thức được phân phối đến người dùng.
Sơ đồ chân của Arduino Mega:
Hình 3. 12: Sơ đồ chân của Mega
Các chân điện VIN : Điện áp đầu vào cho Arduino khi nó sử dụng một nguồn điện bên ngoài (như trái
ngược với 5 volts từ các kết nối USB hoặc nguồn điện quy định khác). Người dùng có
thể cung cấp điện áp thông qua pin này, hoặc nếu cung cấp điện áp thông qua jack cắm điện thì cũng có thể sử dụng pin này.
GND : Chân nối đất.
Bộ nhớ
Bộ nhớ của các vi điều khiển ATmega2560 bao gồm 256 KB bộ nhớ flash dành cho lưu trữ mã (trong đó có 8 KB được sử dụng cho các bộ nạp khởi động), 8 KB SRAM, và 4
KB EEPROM (có thể được đọc và ghi bằng các thư viện EEPROM).
Đầu vào và đầu ra
Trong tổng số 54 chân kỹ thuật số trên Arduino Mega 2560, có thể sử dụng như đầ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 này hoạt động với điện áp 5 volts. Mỗi chân có khả năng cung cấp hoặc nhận tối đa 40 mA và đi kèm với một điện trở kéo lên bên trong (được kết nối ngắt mặc định) với giá trị từ 20-50 kOhms.
Serial
Cổng Serial bao gồm: 0 (RX) và 1 (TX); Cổng Nối tiếp 1: 19 (RX) và 18 (TX); Cổng Nối tiếp 2: 17 (RX) và 16 (TX); Cổng Nối tiếp 3: 15 (RX) và 14 (TX). Chúng được sử dụng để nhận (RX) và truyền (TX) dữ liệu nối tiếp TTL. Pins 0 và 1 cũng được liên kết với các chân tương ứng của vi chip USB-to-TTL ATmega16U2
Interrupt
External Interrupt: Các chân chức năng ngắt bao gồm 2, 3, 18, 19, 20 và 21. Các chân này có thể được cấu hình để kích hoạt một ngắt khi có giá trị thấp, một cạnh lên và xuống, hoặc khi có sự thay đổi trong giá trị.
PWM
Các chân PWM bao gồm 2-13 và 44 đến 46. Chúng cung cấp 8-bit đầu ra PWM thông qua chức năng analogWrite().
SPI
Các chân SPI là 50 (MISO), 51 (MOSI), 52 (SCK), và 53 (SS). Các chân này hỗ trợ giao tiếp SPI thông qua việc sử dụng thư viện SPI..
LED
Chân 13 có một đèn LED tích hợp, kết nối với pin kỹ thuật số 13. Nó có thể được điều khiển giá trị HIGH/LOW.
TWI
Chân TWI bao gồm 20 (SDA) và 21 (SCL). Chúng hỗ trợ giao tiếp TWI sử dụng thư viện Wire. Lưu ý rằng vị trí của chúng không giống như chân TWI trên Duemilanove hoặc Diecimila..
Arduino Mega2560 có tổng cộng 16 đầu vào analog, mỗi cái có độ phân giải 10 bit (tức là 1024 giá trị khác nhau). Mặc định, nó đo từ GND đến 5 volts, nhưng có thể thay đổi phạm vi bằng cách sử dụng pin Aref và chức năng analogReference().
Truyền thông
Arduino Mega2560 có nhiều phương tiện truyền thông cho việc kết nối với máy tính, một Arduino khác hoặc vi điều khiển khác. Cụ thể, các ATmega2560 cung cấp bốn
UARTs phần cứng cho giao tiếp nối tiếp TTL (5V). Một ATmega16U2 được sử dụng trên board để quản lý một cổng COM ảo, kết nối USB với máy tính và cung cấp một cổng COM ảo chạy phần mềm trên máy tính. Phần mềm Arduino bao gồm một giao diện nối tiếp để truyền dữ liệu văn bản đơn giản giữa board và máy tính. Đèn LED RX và TX trên board sẽ nhấp nháy để biểu thị truyền dữ liệu thông qua chip ATmega8U2/ATmega16U2 và kết nối USB với máy tính (nhưng không thông qua chân 0 và 1).
Để hỗ trợ việc giao tiếp nối tiếp trên các chân kỹ thuật số của Mega2560, có sẵn một thư viện SoftwareSerial. Ngoài ra, Mega2560 hỗ trợ các giao thức truyền thông TWI và SPI, với một thư viện Wire được tích hợp trong phần mềm Arduino giúp đơn giản hóa việc sử dụng bus TWI.
Chíp sử dụng trong Arduino Mega
Arduino Mega 2560 là một vi điều khiển bằng cách sử dụng Atmega 2560 bao gồm:
54 chân digital (15 chân có thể được sử dụng như các chân PWM) 16 đầu vào analog,
4 UARTs (cổng nối tiếp phần cứng), 1 thạch anh 16 MHz,
1 cổng kết nối USB, 1 jack cắm điện, 1 đầu ICSP, 1 nút reset.
Bốn cổng giao tiếp với phần cứng :
Thông số chân Arduino Mega
Arduino Mega có thể nhận nguồn từ kết nối USB hoặc từ một nguồn cung cấp điện bên ngoài, và việc chọn nguồn diễn ra tự động. Nếu nguồn điện bên ngoài không phải là USB, bạn có thể sử dụng một bộ chuyển đổi AC-to-DC hoặc pin để cung cấp điện.
Các bộ chuyển đổi này có thể kết nối thông qua một cổng jack có trung tâm dương và cắm vào jack điện trên hội đồng.
Chân VIN là nơi cung cấp điện áp vào cho board Arduino khi sử dụng nguồn điện bên ngoài, khác với 5 volts từ cổng USB hoặc nguồn điện quy định khác. Bạn có thể cấp
CỔNG SERIAL CHÂN RX CHÂN TX
Cổng 0 0 1
Cổng 1 19 18
Cổng 2 17 16
Cổng 3 15 14
nguồn điện qua chân này hoặc, nếu sử dụng jack cắm điện, cũng có thể truy cập thông qua chân này.
Chân 5V phát ra một điện áp 5V được điều chỉnh từ nguồn điện trên bo mạch.
Nguồn điện có thể đến từ jack cắm điện DC (7-12V), kết nối USB (5V), hoặc pin VIN của bo mạch (7-12V). Việc cung cấp điện áp qua các chân 5V hoặc 3.3V có thể đi qua bộ điều chỉnh và có thể làm hỏng bo mạch. Chúng tôi không khuyến khích kết nối nguồn điện vào các chân 5V hoặc 3.3V.
Chân GND là chân đất.
Chân IOREF trên bo mạch Arduino cung cấp thông tin về điện áp mà vi điều khiển đang hoạt động. Một lá chắn được cấu hình đúng có thể đọc thông tin từ chân điện áp
IOREF và chọn nguồn năng lượng phù hợp hoặc thực hiện điều chỉnh điện áp trên các chân đầu ra để làm việc với các mức điện áp 5V hoặc 3.3V.
Các thông số của Arduino Mega 2560 Vi điều khiển: ATmega2560
Điện áp làm việc: 5 V Điện áp đầu vào (đề nghị): 7-12 V Digital I / O pins: 70 chân (trong đó có 15 cung cấp sản lượng PWM) Chân đầu vào Analog: 16
DC hiện nay mỗi I / O pin: 40 mA DC hiện tại cho 3.3V pin: 50 mA SRAM: 8 KB
EEPROM: 4 KB Đồng hồ tốc độ: 16 MHZ 6 ngắt ngoài (so với 2 trên Arduino Uno) 15 chân PWM (so với 6 trên Arduino) 16 chân analog
Các Shield mở rộng tương thích với Arduino Uno có thể gắn lên Arduino Mega với thứ tự các chân không hề thay đổi.
Việc cài đặt driver và sử dụng hoàn toàn tương tự board Arduino Uno.