На главную страницу | Новости  |  Ссылки | Контакты

Spyphy Farnsworth
Квантовая реальность. Кибернетика. Искусственный интеллект


Что такое ARDUINO. Разновидности Ардуино


Arduino - это специальная платформа для разработки простых электронных систем на базе микроконтроллеров AVR, что включает в себя как собственно платы, так и среду разработки IDE и свой язык программирования Processing/Wiring. Вообще говоря, это всё тот же C++, только используются дополнительные библиотеки и некоторые макроопределения. Ничего особенного, но упрощает написание кода.

Микроконтроллеры AVR относятся к семейству восьмибитных микроконтроллеров фирмы Atmel, использующих RISC-ядро.

Короче говоря, Arduino существенно упрощает работу с микроконтроллерами AVR, особенно когда нет времени заниматься травлением печатных плат. К тому же стоимость китайских плат Arduino не существенно отличается от стоимости самих микроконтроллеров AVR.

Смотри здесь описание наиболее популярных плат Arduino:


- Описание Arduino UNO

- Описание Arduino Nano

Основные платы Arduino и их сравнительная характеристика


Arduino UNO : на основе микроконтроллера ATmega328, имеет 14 цифровых и 6 аналоговых входов, 32 KB Flash-память, ОЗУ 2 Кб; USB-порт типа B; EEPROM 1 Кб; Частота 16 МГц. На Ali продается два варианта этой платы: первый на чипе CH340 стоит около $3 (слева на рис.) и второй оригинальный вариант - около $5 (справа на рис.):

uno uno

Arduino Nano : тоже, что и в UNO, но более компактная по размерам. Цена порядка $2.

nano

Arduino Leonardo : микроконтроллер ATmega32u4, 20 цифровых портов и 12 аналоговых входов, 32 KB Flash-память, MicroUSB порт. Стоимость порядка 7-8$.

leonardo

Arduino Mega 2560 : микроконтроллер Atmega2560, 54 цифровых порта, 16 аналоговых входов и 2 аналоговых выхода, 256 KB Flash-память, RAM 8 kb, UART 4 шт. Стоимость тоже порядка 7-8$.

mega

Arduino Due : микроконтроллер Coxter AT91SAM3X8E, 54 цифровых порта, в т.ч. 12 с ШИМ, 12 аналоговых входов и 2 аналоговых выхода, 512 KB Flash-память, RAM 96 kb, 2 MicroUSB порта. Самая мощная из ардуин. Вообще говоря, здесь уже не AVR контроллер стоит, а Coxter с архитектурой ARM, так что и рабочее напряжение здесь другое 3.3V (а не 5.0V), и программируется они немного по другому. Соответственно и цена у нее выше -- около 15$.

due

Вывод: Если вы только начали знакомство с Arduino, то плата UNO как раз то, что надо. Если нужна более компатная плата - смотри на NANO. Если, наоборот, стало нехватать выводов на плате, то берите MEGA. Если стало нехватать мощностей, то можно пробывать DUE, однако там уже стоит МК Coxter (а не AVR) и его нужно учиться программировать.

Дополнительная информация по платам Arduino:


По наличию USB-порта на платах ардуино:


USB-порта НЕ имеют платы: Arduino Mini, Pro, Pro Mini.

USB-порт имеют UNO, Leonardo, Due, Micro, Mega ADK, Mega 2560, Nano, Fio.

Нестандартным размером обладает Arduino Nano, но зато ее легко вставить в Breadboard - ее ножки находятся на нижней стороне платы.

Питание Arduino:


Выводы питания:

1) VIN. Вход используется для подачи питания от внешнего источника (в отсутствие 5 В от разъема USB или другого регулируемого источника питания). Подача напряжения питания происходит через данный вывод.

Входное напряжение (рекомендуемое): 7-12 В.

Входное напряжение (предельное): 6-20 В.

2) 5V. Регулируемый источник напряжения, используемый для питания микроконтроллера и компонентов на плате. Питание может подаваться от вывода VIN через регулятор напряжения, или от разъема USB, или другого регулируемого источника напряжения 5 В.

Ограничения на допустимый ток:


Постоянный ток через вход/выход 40 мА

Постоянный ток для вывода 3.3 В 50 мА

Подключение ардуино к ПК


Arduino Uno, Mega, Duemilanove и Arduino Nano получают питание автоматически от любого USB-подключения к компьютеру или другому источнику питания.

Проверка работоспособности платы Arduino


Скомпилируйте и залейте следующий код в Arduino (Uno или Nano):

int ledPin = 13;
void setup()
{
	pinMode(ledPin, OUTPUT);
}
void loop()
{
	digitalWrite(ledPin, HIGH);
	delay(1000);
	digitalWrite(ledPin, LOW);
	delay(1000);
}
 

Здесь delay(ms) приостанавливает программу на заданное время (в миллисекундах).

Если всё сделано правильно, то на плате Arduino будет моргать светодиод (с интервалом в 1 сек.)

 int ledPin = 13; 

 



galaxy