Топ-12 самых лучших мониторов для компьютера 2021. самый полный гайд по выбору
Содержание:
- Общее описание
- Установка драйверов
- Описание пинов Arduino Mega 2560
- Физические характеристики и совместимость с «шилдами»
- Особенности
- Supported microcontrollers:
- Автоматический (программный) сброс
- Проекты на основе плате
- Как преодолеть аппаратные ограничения
- Входные и выходные контакты
- Аналоговые, цифровые и шим пины Ардуино
- Платы расширения
- Getting started with MegaCore
- Характеристики
- Arduino mega 2560 описание выводов
Общее описание
ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561 — маломощный 8-разр. КМОП микроконтроллер, выполненный на основе AVR-ядра с RISC-архитектурой. За счет выполнения большинства инструкций за один машинный цикл ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561 достигает производительности 1 млн. операций в секунду при тактовой частоте 1 МГц.
AVR ядро объединяет богатый набор инструкций с 32 рабочими регистрами общего назначения. Все 32 регистра непосредственно подключены к АЛУ (арифметико-логическое устройство), что позволяет указывать два регистра в одной инструкции и выполнить ее за один цикл. Данная архитектура обладает большей эффективностью кода и в 10 раз большей производительностью по сравнению с CISC микроконтроллерами.
ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561 содержит следующие узлы: 64/128/256 кбайт внутрисхемно-программируемой флэш-памяти с возможностью чтения во время записи, 4 кбайт ЭСППЗУ, 8 кбайт статического ОЗУ, 54/86 линий ввода-вывода, 32 рабочих регистра общего назначения, часы реального времени, шесть гибких таймеров-счетчиков с режимами сравнения и ШИМ , 4 УСАПП, 2-проводной последовательный интерфейс с побайтной передачей, 16-канальный 10-разрядный АЦП с опциональным дифференциальным входным каскадом и программируемым усилением, программируемый сторожевой таймер с внутренним генератором, последовательный порт SPI, JTAG интерфейс для сканирования адресного пространства, реально-временной отладки и программирования, а также шесть программно настраиваемых режимов управления энергопотреблением. Режим холостого хода (Idle) останавливает ЦПУ, но оставляет в работе статическое ОЗУ, таймеры-счетчики, порт SPI и систему прерываний. Режим пониженного потребления (Power-down) сохраняет содержимое регистров, но останавливает генератор, выключает все встроенные функции до появления следующего запроса на прерывание или аппаратного сброса. В экономичном режиме (Power-save) асинхронный таймер продолжает работать, позволяя пользователю его использовать, а остальные устройства отключены. В режиме снижения шумов АЦП (ADC Noise Reduction) останавливается ЦПУ и все модули ввода-вывода, за исключением асинхронного таймера и АЦП, тем самым минимизируется влияние цифрового шума на результат преобразования В дежурном режиме (Standby) генератор на кварцевом резонаторе запущен, а остальная часть отключена. Данный режим позволяет реализовать быстрый запуск в комбинации с малым потреблением. В расширенном дежурном режиме (Extended Standby) и основной генератор и асинхронный таймер продолжают работать.
Микроконтроллеры выпускается по разработанной Atmel технологии энергонезависимой памяти высокой емкости. Встроенная ISP флэш-память может внутрисхемно перепрограммироваться через последовательный интерфейс SPI, обычным программатором энергонезависимой памяти или запущенной программой в секторе начальной загрузки AVR ядра. Программа в секторе начальной загрузки может использовать любой интерфейс для записи программы. Программа в секторе начальной загрузки выполняется даже при обновлении флэш-памяти приложения, обеспечивая действительную возможность чтения во время записи. За счет комбинирования 8-разрядного RISC ЦПУ с внутрисхемно самопрограммируемой флэш-памятью на одном кристалле, позволило ATmega640, ATmega1280, ATmega1281, ATmega2560, ATmega2561 быть мощным микроконтроллером, обеспечивающего высокую универсальность и обладающего низкой стоимостью, что делает его применение идеальным для построения встроенных систем управления.
Установка драйверов
Если вы использовали установщик, Windows — от XP до 10 — автоматически установит драйверы, как только вы подключите свою плату. Если вы загрузили и распаковали Zip архив или по какой-то причине плата неправильно распознана, выполните приведенную ниже процедуру.
- Нажмите на меню «Пуск» и откройте панель управления.
- Перейдите в раздел «Система и безопасность» (System and Security). Затем нажмите «Система» (System). Затем откройте диспетчер устройств (Device manager).
- Посмотрите под Порты (COM и LPT) (Ports (COM & LPT)). Вы должны увидеть открытый порт с именем «USB Serial Device». Если раздел COM и LPT отсутствует, просмотрите раздел «Другие устройства», «Неизвестное устройство».
- Щелкните правой кнопкой мыши по порту USB Serial Device и выберите опцию «Обновить драйверы…».
- Затем выберите опцию «Выполнить поиск драйверов на этом компьютере».
- Наконец, найдите файл драйвера с именем «arduino.inf», который находится в папке «Drivers» программы Arduino (а не подкаталог «FTDI USB Drivers»).
- После этого Windows завершит установку драйвера.
Описание пинов Arduino Mega 2560
Цифровые пины платы Mega
Пины с номерами от 0 до 53 являются цифровыми. Это означает, что вы можете считывать и подавать на них только два вида сигналов: HIGH и LOW. С помощью ШИМ также можно использовать цифровые порты для управления мощностью подключенных устройств.
Пин | Адресация | Специальное назначение | ШИМ |
---|---|---|---|
RX (Serial) | |||
1 | 1 | TX (Serial) | |
2 | 2 | Вход для прерываний 0 | ШИМ |
3 | 3 | Вход для прерываний 1 | ШИМ |
4 | 4 | ШИМ | |
5 | 5 | ШИМ | |
6 | 6 | ШИМ | |
7 | 7 | ШИМ | |
8 | 8 | ШИМ | |
9 | 9 | ШИМ | |
10 | 10 | ШИМ | |
11 | 11 | ШИМ | |
12 | 12 | ШИМ | |
13 | 13 | Встроенный светодиод | ШИМ |
14 | 14 | TX (Serial3) | |
15 | 15 | RX (Serial3) | |
16 | 16 | TX (Serial2) | |
17 | 17 | RX (Serial2) | |
18 | 18 | TX (Serial1) Вход для прерываний 5 |
|
19 | 19 | RX(Serial1) Вход для прерываний 4 |
|
20 | 20 | I2C SDA Вход для прерываний 3 |
|
21 | 21 | I2C SCL Вход для прерываний 2 |
|
22-43 | 22-43 | ||
44 | 44 | ШИМ | |
45 | 45 | ШИМ | |
46 | 46 | ШИМ | |
47 | 47 | ||
48 | 48 | ||
49 | 49 | ||
50 | 50 | MISO | |
51 | 51 | MOSI | |
52 | 52 | SCK | |
53 | 53 | SCL |
Аналоговые пины платы
На платформе Mega2560 имеется 16 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения). Стандартно выводы имеют диапазон измерения до 5 В относительно земли, тем не менее имеется возможность изменить верхний предел посредством вывода AREF и функции .
Пин | Адресация | Специальное назначение |
---|---|---|
A0 | A0 или 54 | |
A1 | A1 или 55 | |
A2 | A2 или 56 | |
A3 | A3 или 57 | |
A4 | A4 или 58 | TCK |
A5 | A5 или 59 | TMS |
A6 | A6 или 60 | TDO |
A7 | A7 или 61 | TDI |
A8 | A8 или 62 | PCINT16 |
A9 | A9 или 63 | PCINT17 |
A10 | A10 или 64 | PCINT18 |
A11 | A11 или 65 | PCINT19 |
A12 | A12 или 66 | PCINT20 |
A13 | A13 или 67 | PCINT21 |
A14 | A14 или 68 | PCINT22 |
A15 | A15 или 69 | PCINT23 |
Дополнительные пины на плате
- AREF — Опорное напряжение для аналоговых входов. Используется с функцией .
- Reset — Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.
Выводы питания
- Vin: Входное напряжение платы Arduino при использовании внешнего источника (если отсутствует напряжение 5 вольт на USB-соединении или от другого источника питания). Можно подавать питание на этот вывод, или же, если питание подается на 2.1 мм разъем, то можно с этого вывода получить к питающему входному напряжению.
- 5V: Напряжение на этих выводах регулируется встроенным в плату регулятором напряжения. Плата может быть запитана либо через 2.1 мм разъем питания (7-12 В), через USB-подключение (5 В), или же через вывод VIN (7-12 В) на плате. Подача питания через выводы 5 В или 3.3 В обходит регулятор и может привести к выходу платы из строя. Так делать не рекомендуется.
- 3.3V: Напряжение 3.3 вольта формируется при помощи встроенного в плату регулятора. Максимальный ток потребления не должен превышать 50 мА.
- GND: Выводы земли.
- IOREF: Этот вывод обеспечивает опорное напряжение, с которым работает микроконтроллер. Для правильной конфигурации внешних плат, можно считывать напряжение с этого вывода и выбирать соответсвующий источник питания или включать преобразователи напряжений для работы с 5 В или 3.3 В.
Физические характеристики и совместимость с «шилдами»
Максимальная длина и ширина печатной платы Mega 2560 – 10,16 и 5,33 см соответственно, однако USB-коннектор и разъем для питания немного выходят за пределы ширины. Кроме того, в плате есть несколько отверстий для шурупов, позволяющих прикрепить ее к какой-нибудь поверхности
Обратите внимание, что расстояние между 7-ым и 8-ым контактом составляет 0,406 см, а между остальными контактами – 0,254 см.
Плата Mega 2560 совместима с большинством «шилдов», разработанных для Arduino Uno и старых Diecimila и Duemilanove. Цифровые контакты с 0-го по 13-ый (и прилегающие к ним AREF и GND), аналоговые контакты с 0-го по 5-ый, гребешок для питания и ICSP-гребешок находятся на тех же местах. Более того, главный UART (последовательный порт) расположен на тех же контактах (0-ом и 1-ом); то же касается и внешних прерываний и 1 (на 2-ом и 3-ем контактах соответственно). Интерфейс SPI доступен через гребешок ICSP – и на Mega 2560, и на платах Duemilanove/Diecimila
Но обратите внимание, что интерфейс I2C расположен у Mega 2560 в другом месте, а точнее – на 20-ом и 21-ом контактах, тогда как у Duemilanove и Diecimila он расположен на 4-ом и 5-ом входных аналоговых контактах.
Особенности
По datasheet (описанию), все контроллеры Atmega обладают следующими особенностями:
- Низкомощным высокопроизводительным 8-зарядным микроконтроллером типа AVR (причем, и у моделей класса Atmega168 20au, и Atmega168 20au).
- Усовершенствованной архитектурой типа RISC (плата всегда ей соответствует).
- Микроконтроллером. Datasheet (описание) говорит, что их 135 у каждой модели.
- Платой и распиновкой, которые обеспечивают выполнение практически всех инструкций в течение 1 цикла.
- Каждый микроконтроллер серии, от самых первых, например, Atmegar3, до наиболее современных (Atmega328 или Atmega2561 rev3), характеризуется полностью статическими темпами работы.
- Огромной производительностью, как утверждает datasheet (описание). При частоте в 16 мегагерц производительность будет равняться 16 миллионам операций за 1 секунду.
Контроллер Atmega2560
- Встроенным 2-тактным устройством для умножения.
- Платой и распиновкой, позволяющими содержание опционального сектора для загрузки с раздельными защитными битами.
- Внутрисистемно программируемой флеш-памятью. Согласно информации из datasheet (описанию), ее объем может равняться 64, 128 или 256 килобайтам.
- Износостойкостью памяти, составляющей 10 000 циклов типа «запись/уничтожение».
- Возможностью платы самопрограммироваться любой другой программой, которая находится в загрузочном секторе.
- Способностью микропроцессора поддерживать режим чтения во время записи.
- Ёмкостью внешнего пространства для программирования одного микропроцессора — 64 килобайта.
- Микрочипом, позволяющим пользователю самостоятельно программировать его защиту (актуально для всех версий: от первых, например, Atmegar3, до современных: Atmega328 или Atmega2561 rev3).
Supported microcontrollers:
- ATmega2561
- ATmega2560
- ATmega1281
- ATmega1280
- ATmega640
- ATmega128
- ATmega64
- AT90CAN128
- AT90CAN64
- AT90CAN32
(All variants — A, L, V)
Can’t decide what microcontroller to choose? Have a look at the specification table below:
Mega2560 | Mega1280 | Mega640 | Mega2561 | Mega1281 | Mega128CAN128 | Mega64CAN64 | CAN32 | |
---|---|---|---|---|---|---|---|---|
Flash | 256kB | 128kB | 64kB | 256kB | 128kB | 128kB | 64kB | 32kB |
RAM | 8kB | 8kB | 8kB | 8kB | 8kB | 4kB | 4kB | 2kB |
EEPROM | 4kB | 4kB | 4kB | 4kB | 4kB | 4kB | 2kB | 1kB |
IO pins | 70/86 * | 70/86 * | 70/86 * | 54 | 54 | 53 | 53 | 53 |
PWM pins | 15 | 15 | 15 | 8 | 8 | 7 | 7 | 7 |
LED pin | PB7 | PB7 | PB7 | PB5 | PB5 | PB5 | PB5 | PB5 |
* pin 70-85 is not broken out on the Arduino Mega. Make sure to check out the for a cleaner an more logical pinout.
Автоматический (программный) сброс
Плата Mega 2560 устроена таким образом, что вам необязательно нажимать на физическую кнопку сброса перед загрузкой скетча – сброс делается при помощи ПО, которое запущено на компьютере, подключенном к Mega 2560. Одна из аппаратных линий ATmega8U2, отвечающая за управление потоками (DTR), через 100-нанофарадный конденсатор подключена к линии сброса на ATmega2560. Когда на эту линию подается значение LOW, значение на линии RESET падает настолько, что этого хватает для перезагрузки чипа. IDE Arduino использует эту возможность, чтобы позволить вам загружать новый код, просто нажав на кнопку загрузки, которая находится на панели инструментов. Это значит, что у загрузчика будет более короткий таймаут, поскольку передачу на DTR значения LOW можно привязать к началу загрузки.
Эта особенность влияет на работу Mega 2560 и в другом. Когда плата Mega 2560 подключена к компьютеру на Mac OS X или Linux, то сбрасывается каждый раз, когда программа настраивает соединение через USB.
Следующие полторы секунды на чипе ATmega2560 запускается загрузчик. Хотя он запрограммирован, чтобы игнорировать все дефектные данные (т.е. все, что не касается загрузки нового кода), он все же перехватит несколько первых байтов, отправленных на плату после открытия соединения. Поэтому, если при первом запуске скетча плата получает одноразовые настройки или другие данные, убедитесь, что программа, с которой он коммуницирует, подождала секунду перед открытием соединения и отправкой этих данных.
Кроме того, плата Mega 2560 обладает линией, обрезав которую, можно отключить автосброс. Чтобы заново его включить, нужно припаять друг к другу контактные площадки, находящиеся по обе стороны этой линии.
Проекты на основе плате
Использование Arduino Mega 2560 дало возможность сделать по-настоящему большую и сложную микроконтроллерную систему.
Например, есть очень интересный проект, который получил поддержку в РФ и активно развивается – это Arduino Mega Server. Микроконтроллер настолько мощный, что может стать целым сервером для интернета сайтов или облака.
Единственное ограничение на таком сервере – это объём памяти, ведь в качестве накопителя можно использовать micro SD-карты памяти, а Ethernet поддерживает максимальный объём памяти 32 гб.
Arduino Mega Server – это серьезный проект с широким функционалом, в котором поддерживаются все нужные для веб-мастера технологии:
- HTML;
- CSS;
- Javascript и другие.
На страницах, которые вы создадите, а их количество ограничено только их размером и объёмом вашей карты памяти, можно отслеживать в реальном времени состояние контроллера и управлять его входами и выходами с помощью кнопок на веб интерфейсе сайта.
Поддержка многих библиотек Javascript позволит сделать интерфейс красивым и современным.
С помощью Arduino Mega Server вы можете сделать мощные разветвленные системы автоматизированного управления с удаленным управлением и мониторингом всех параметров или домашнее облачное хранилище.
На рисунке ниже вы видите скриншот страницы управления умным домом с официального сайта проекта.
Вот небольшой перечень проектов, реализуемых с Arduino Mega Server:
- Умный дом – стал уже классической областью применения ардуино.
- Автоматизированная котельная.
- Тепличное хозяйство с автоматической поддержкой влажности и солевого состава почвы.
- Метеостанция.
- И многое другое.
Вы получаете операционную систему для работы с Ардуино с компьютера или смартфона по web интерфейсу.
Однако стоит осознавать возможности и мощность микроконтроллера Arduino Mega 2560, хоть и сама плата мощнее своих предшественников, но по современным меркам морально устарела.
Это все те же 8 бит и 8 кб ОЗУ. Скорость, с которой вы скачиваете данные с сервера, будет небольшой, но для веб-страниц вполне хватит.
Как преодолеть аппаратные ограничения
Большинство распространённых плат имеют аналогичные характеристики, среди них:
- Uno;
- Nano;
- Pro mini;
- и подобные.
Но с развитием ваших навыков разработки в этой среде появляется проблема нехватки мощности и быстродействия этой платформы. Первым шагом для преодоления ограничений является использование языка C AVR.
С его помощью вы ускорите на порядок скорость обращения к портам, частоту ШИМ и размер кода. Если вам и этого недостаточно, то вы можете воспользоваться мощными моделями с аналогичным подходом к разработке. Для этого подойдёт плата Arduino Mega2560. Еще более мощная – модель Due. В противном случае вам стоит ознакомиться с разновидностями одноплатных компьютеров и STM микроконтроллеров.
Ардуино Uno R3 – отличная плата для большинства проектов, которая служит для изучения устройств цифровой электроники.
Входные и выходные контакты
Каждый из 54 контактов Mega 2560 можно использовать и в качестве входного, и в качестве выходного контакта – при помощи функций pinMode(), digitalWrite() и digitalRead(). Они работают на 5 вольтах.
Рекомендуемой силой тока (принимаемого и отдаваемого) для каждого контакта является 20 миллиампер. Кроме того, каждый контакт оснащен подтягивающим резистором на 20-50 кОм (по умолчанию он отключен).
Максимально допустимая сила тока – 40 миллиампер, и если ее превысить, это может привести к повреждению микроконтроллера.
Кроме того, некоторые контакты Mega 2560 имеют специальные функции:
Последовательная передача данных. Класс Serial: 0-ой (RX) и 1-ый (TX) контакты; класс Serial1: 19-ый (RX) и 18-ый (TX) контакты; класс Serial2: 15-ый (RX) и 14-ый (TX) контакты. Используются для приема (RX) и передачи (TX) последовательных TTL-данных. Кроме того, 0-ой и 1-ый контакты подключены к соответствующим контактам на чипе ATmega16U2, конвертирующем USB в TTL.
Внешние прерывания: 2-ой (прерывание 0), 3-ий (прерывание 1), 18-ый (прерывание 5), 19-ый (прерывание 4), 20-ый (прерывание 3) и 21-ый (прерывание 2) контакты. Эти контакты настроены таким образом, что запускают прерывание при переключении в состояние LOW, при нарастающем/убывающем фронте импульса и при изменении вольтовой логики. Более подробно читайте в статье о функции attachInterrupt().
ШИМ: со 2-го по 13-ый, с 44-ого по 46-ой. На этих контактах возможна 8-битная ШИМ при помощи функции analogWrite().
Интерфейс SPI: 50-ый (MISO), 51-ый (MOSI), 52-ой (SCK) и 53-ий (SS) контакты. На них поддерживается SPI-коммуникация при помощи библиотеки SPI. Контакты для SPI также имеются на ICSP-гребешке, который физическим совместим с Arduino/Genuino Uno и старыми Duemilanove и Diecimila.
Встроенный светодиод: 13-ый цифровой контакт. Если он находится в состоянии HIGH, то светодиод включается, а если в LOW, то выключается.
Интерфейс TWI: 20-ый (SDA) и 21-ый (SCL) контакты. На них поддерживается TWI-коммуникация при помощи библиотеки Wire
Обратите внимание, что эти контакты находятся не там, где находятся контакты для TWI у плат Duemilanove и Diecimila.
Плата Mega 2560, помимо прочего, оснащена 16 входными аналоговыми контактами, каждый из которых поддерживает 10-битное разрешение (т.е. значения в диапазоне от 1 до 1024). По молчанию вольтовый диапазон в них составляет от «земли» до 5 вольт, однако вы можете поменять верхнюю границу этого диапазона при помощи контакта AREF и функции analogReference().
На плате есть еще несколько специальных контактов:
- AREF – эталонное напряжение для входных аналоговых контактов. Используется с analogReference().
- Reset – если подать на эту линию LOW, это сбросит микроконтроллер. Обычно используется, если к плате подключен «шилд», т.к. он блокирует кнопку сброса, расположенную на самой плате.
Аналоговые, цифровые и шим пины Ардуино
Все пины можно разделить на несколько видов, различие будет только в количестве данных выводов на различных платах. Например, на Arduino Mega 2560 цифровых и аналоговых портов, значительно больше, чем на Uno или Nano из-за большего размера платы и производительности микроконтроллера. В остальном характеристики и способы программирования пинов не отличаются друг от друга.
- Power Pins — порты питания, режим их работы нельзя запрограммировать или изменить. Они выдают стабилизированное напряжение 5V или 3,3V, Vin выдает напряжение от источника питания, а GND — это заземление (общий минус);
- PWM Pins — порты с ШИМ модуляцией, которые можно запрограммировать, как цифровой выход/вход. Данные порты обозначены на плате знаком тильда (˜);
- Analog In — порты, принимающие аналоговый сигнал от датчиков, работают на вход. Данные порты тоже можно запрограммировать, как цифровой вход/выход. Данные пины не поддерживают ШИМ модуляцию.
Режим пинов назначается в процедуре void setup с помощью pinMode(), например:
void setup() { pinMode(10, OUTPUT); // объявляем пин 10 как выход pinMode(A2, OUTPUT); // объявляем пин A2 как выход pinMode(12, INPUT); // объявляем пин 12 как вход pinMode(A1, INPUT); // объявляем пин A1 как вход }
Пояснения к коду:
- к выходу 10 и A2 можно подключить светодиод, который будет включаться и выключаться при вызове команды в программе;
- пин 10 может использоваться для ШИМ сигнала, например, чтобы плавно включить светодиод, а пин A2 может выдавать только цифровой сигнал (0 или 1);
- к входу 12 и A1 можно подключить цифровой датчик и микроконтроллер будет проверять наличие сигнала на этих пинах (логический нуль или единицу);
- к входу A1 можно подключить аналоговый датчик тогда микроконтроллер будет получать не только сигнал но и узнавать характеристику сигнала.
Мы не случайно разделили пины с ШИМ модуляцией (PWM Pins) и аналоговые. PWM пины создают аналоговый сигнал, к ним подключают сервопривод, шаговый двигатель и другие устройства, где требуется подавать сигнал с разными характеристиками. Аналоговые пины (Analog In) используются для подключения аналоговых датчиков, с них входящий сигнал преобразуется в цифровой с помощью встроенного АЦП.
Ардуино Uno пины: шим, аналоговые, цифровые
Arduino UNO распиновка платы на русском
ШИМ (PWM) порты (Analog Out) | 3, 5, 6, 9, 10, 11 |
Аналоговые порты (Analog In) | A0, A1, A2, A3, A4, A5 на некоторых платах: A6, A7 |
Цифровые порты (Digital In/Out) | все порты со 2 по 13 пин можно использовать: A0 — A7 |
Из таблицы видно, какие пины на Arduino UNO поддерживают шим. Аналоговые пины (Analog In) используют, как цифровые если недостаточно портов общего назначения, например, вы хотите подключить к плате 15 светодиодов. Кроме того, на плате Arduino Uno и Nano порты A4 и A5 используются для I2C протокола (SDA и SCL пины) — они работают параллельно с пинами A4 и A5. Об этом мы расскажем чуть позже.
Ардуино Nano пины: шим, аналоговые, цифровые
Arduino Nano распиновка платы на русском
ШИМ (PWM) порты (Analog Out) | 3, 5, 6, 9, 10, 11 |
Аналоговые порты (Analog In) | A0, A1, A2, A3, A4, A5 на некоторых платах: A6, A7 |
Цифровые порты (Digital In/Out) | все порты со 2 по 13 пин можно использовать: A0 — A7 |
Если вы заметили, то пины на Arduino Nano и Uno имеют одинаковое количество и назначение. Платы отличаются лишь своими габаритами. Nano — более компактная и удобная плата, для экономии места на нее не ставят разъем питания, для этого используются пины Vin и GND на которое подается питание от источника.
Ардуино Mega пины: шим, аналоговые, цифровые
Схема распиновки платы Arduino Mega 2560 r3
ШИМ (PWM) порты (Analog Out) | все порты со 2 по 13 пин дополнительно: 44, 45, 46 пин |
Аналоговые порты (Analog In) | с A0 до A15 |
Цифровые порты (Digital In/Out) | все порты со 2 по 13, со 22 по 52 пин можно использовать: A0 — A15 |
Пины коммуникации нежелательно использовать, как обычные цифровые порты. Особенно при таком количестве портов общего назначения, как на Mega 2560. Более подробную информацию о рассмотренных платах, а также о других микроконтроллерах семейства Arduino (Pro Mini, Leonardo, Due и пр.): характеристики, описание пинов, габариты и т.д. можно узнать в разделе Микроконтроллеры на нашем сайте.
Платы расширения
В магазинах, специализирующихся на робототехнике и микроконтроллерах, можно встретить слово «шилд». Это специальная плата, которая напоминает Arduino Uno. Совпадает она с ней не только по форме, но и по количеству выводов.
Шилд устанавливается в клеммные колодки, при этом часть их них задействуется под функции шилда, а другая часть остаётся свободной для использования в проекте. В результате вы можете получить такой себе многоэтажный «бутерброд» из плат, которые реализуют множество функций.
Одним из самых популярных является Arduino Ethernet Shield. Он нужен для связи с Ардуино по обычному сетевому кабелю, витой паре. На нём расположен разъём rj45.
С подобным шилдом можно управлять вашим микроконтроллером по сети через веб-интерфейс, а также считывать параметры с датчиков, не отрываясь от компьютера. Существуют проекты с использованием такого комплекта в домашнем облачном хранилище, с ограничением по скорости, всё-таки Атмега328 слабовата для таких задач, и для этого лучше подойдут одноплатные компьютеры типа Raspberry pi.
Getting started with MegaCore
Ok, so you’re downloaded and installed MegaCore, but how to get started? Here’s a quick start guide:
- Hook up your microcontroller as shown in the .
- Open the Tools > Board menu item, and select ATmega64, ATmega128, ATmega1281, ATmega2561, ATmega640, ATmega1280, ATmega2560, AT90CAN32, AT90CAN64 or AT90CAN128.
- Select your preferred clock frequency. 16 MHz is standard on most Arduino boards.
- Select what kind of programmer you’re using under the Programmers menu.
- Hit Burn Bootloader. If an LED is connected to pin PB5/PB7, it should flash twice every second.
- Now that the correct fuse settings is sat and the bootloader burnt, you can upload your code in two ways:
- Disconnect your programmer tool, and connect a USB to serial adapter to the microcontroller, like shown in the . Then select the correct serial port under the Tools menu, and click the Upload button. If you’re getting some kind of timeout error, it means your RX and TX pins are swapped, or your auto reset circuity isn’t working properly (the 100 nF capacitor on the reset line).
- Keep your programmer connected, and hold down the button while clicking Upload. This will erase the bootloader and upload your code using the programmer tool.
Your code should now be running on the microcontroller!
Характеристики
В основе платы лежит процессор ATmega 328. Кроме него на плате находится модуль USB для связи с компьютером и прошивки. Этот модуль называется «USB-TTL преобразователь». На фирменных платах Arduino Uno для этой целей используется дополнительный микроконтроллер ATmega16U2.
Характеристики | Arduino Uno R3 |
Микроконтроллер | ATmega328 |
Рабочее напряжение | 5В |
Напряжение питания (рекомендуемое) | 7-12В |
Напряжение питания (предельное) | 6-20В |
Цифровые входы/выходы | 14 (из них 6 могут использоваться в качестве ШИМ-выходов) |
Аналоговые входы | 6 |
Максимальный ток одного вывода | 40 мА |
Максимальный выходной ток вывода 3.3V | 50 мА |
Flash-память | 32 КБ (ATmega328) из которых 0.5 КБ используются загрузчиком |
SRAM | 2 КБ (ATmega328) |
EEPROM | 1 КБ (ATmega328) |
Тактовая частота | 16 МГц |
Особенность этого чипа заключается в аппаратной поддержке USB, что позволяет организовывать связь без дополнительных преобразователей. В то время как ATmega328 не поддерживает такой функции, поэтому 16u2 выступает в роли преобразователя данных из USB в последовательный порт для МК AVR. В него залита программа для выполнения этой задачи.
Однако так происходит не всегда: в более мелких платах, таких как Arduino Nano, используют преобразователи уровней на базе различных микросхем, например FT232, CP21XX, Ch340g и подобных. Это решение является более дешевым и не требует прошивки дополнительного связывающего контроллера, как описано выше.
Внимание! Не всё так однозначно с DCcduino UNO r3 на ch340g. В ней как раз и использован более дешевый, чем в оригинале, вариант преобразователя USB-TTL
На плате есть выход 3.3 В, он нужен для подключения периферии и некоторых датчиков, его пропускная способность по току равна 50 мА.
ATmega328 работает на частоте 16 МГц. Она фиксирована кварцевым резонатором, который вы можете, по желанию, заменить, тем самым ускорив работу Uno r3.
Важно! После замены кварцевого резонатора функции, связанные со временем, такие как Delay, не будут соответствовать введенным значениям. Это функция задержки времени, по умолчанию её аргументом является требуемое время задержки в мс
Функция прописана в библиотеках Ардуино, с учетом стандартной тактовой частоты в 16 МГц. Поэтому после замены кварца заданное время не будет соответствовать написанному. Для этого нужно либо подбирать опытным путем и устанавливать зависимости, либо править файлы библиотек.
Arduino mega 2560 описание выводов
Как уже говорилось ранее, мозгом Arduino Mega является ATmega2560. Благодаря ATmega2560 и связанному с ним кварцевому генератору, Мега обладает тактовой частотой 16 МГц, а также 256 КБ флэш-памяти, 8 КБ SRAM и 4 КБ EEPROM. Mega имеет 54 цифровых вывода, 15 из которых возможно использовать в качестве широтно-импульсной модуляции (ШИМ). Также 16 аналоговых выводов, что практически в четыре раза больше, чем у его младшего брата, Uno.
Элементы платы
Микроконтроллер ATmega2560.
Это основной контроллер, используемый для программирования и запуска задачи системы. ATmega2560 — мозг Меги, необходимый для управления всеми другими устройствами на борту.
Микроконтроллер ATmega16U2.
Этот контроллер используется для связи между главным контроллером ATmega2560 и USB-портом.
Световая индикация.
Светодиоды RX и TX. Эти светодиоды визуально отображают процесс обмена данными между платой и компьютером.L — встроенный светодиод, подключённый к 13 выводу микроконтроллера. При выходе с этого вывода 5 вольт (HIGH-высоки уровень сигнала) светодиод горит, если же сигнал низкого уровня 0 вольт (LOW) светодиод гаснет.
ON Индикатор питания.
Загорается при подаче питания на плату.
USB.
USB Type-B используется для питания и подключения платы Mega 2560 к ПК. Подключение к ПК используется для прошивки микроконтроллера.
Разъём Power jack.
Разъём для подключения блока питания постоянного тока с напряжением от 7 В до 12 В.
Кнопка сброса (Reset)
Аналог кнопки RESET ПК. Служит для перезапуска микроконтроллера.
Разъёмы ICSP, ICSP1.
Разъёмы имеют функцию программирования с использованием последовательной шины с помощью программатора AVR. ATmega2560 запрограммирован для запуска системы через ICSP, а ATmega16U2 через ICSP1 — для последовательной связи и программирования. Это значит, что в случае повреждения прошивок этих микроконтроллеров мы не сможем через usb залить программный код. В то же время эти два разъёма позволяют восстановить прошивки.
Arduino Mega, SPI интерфейс.
Через разъём ICSP с помощью библиотеки SPI можно осуществить подключение периферийных устройств через интерфейс SPI. Также контакты SPI продублированы на цифровых пинах платы: 50(MISO), 51(MOSI), 52(SCK) и 53(SS).
У Ардуино Мега 2560 распиновка выполнена как на картинке ниже.
Распиновка Arduino Mega 2560
Пины питания
VIN: Пин для подключения источника питания 7–12 вольт, например, аккумулятор. Так же контакты VIN можно использовать как источник питания, когда плата запитана через Power jack
Напряжение на VIN будет равно напряжению на Power jack.5V: Пин с выходом 5 В и максимальным током 800 мА.3.3V: Пин с выходом 3,3 В и максимальным током 150 мА.
Использовать пины 5V и 3.3V в качестве питания нужно осторожно. Подключение более мощной нагрузки, чем выдают пины неизбежно приведёт к повреждению микроконтроллера.GND: Выводы заземления.IOREF: Контакт информирует платы расширения о номинале рабочего напряжения микроконтроллера
В зависимости от напряжения, плата расширения переключается на необходимый источник питания, либо включает в работу преобразователи напряжения.AREF: Входной пин используется для подключения опорного напряжения аналого-цифрового преобразователя (АЦП).
Цифровые входы/выходы: пины 0–53
Максимальное входное/выходное напряжение 5 вольт. Максимальный ток выхода — 40 мА. У каждого контакта есть подтягивающий резистор. По умолчанию он выключен, при необходимости включается программно.ШИМ: контакты 2–13 и 44–46
Используется для плавного регулирования мощности. Например, для диммирования источника света или управления скоростью вращения двигателя.