Ардуино-совместимые платы

Описание:
Arduino — это электронный конструктор бля быстрой разработки электронных устройств.
Доступные действия
Введите защитный код для скачивания файла и нажмите "Скачать файл"
Защитный код
Введите защитный код

Нажмите на изображение для генерации защитного кода

Текст:

Государственное бюджетное образовательное учреждение

Среднего профессионального образования Московской области

 Жуковский авиационный техникум имени В.А. Казакова

Специальность 230113:

«Компьютерные системы

и комплексы»

Предмет:

«Проектирование цифровых устройств»

Курсовой проект

«Ардуино-совместимые платы»

Выполнил студент гр. ЭВМ -110

 ___________ Земенков А. С.

Проверил преподаватель:

____________Клочкова Е. С.

г. Жуковский 2016 г.

Введение

Arduino — это электронный конструктор бля быстрой разработки электронных  устройств. Ардуино пользуется популярностью во всем мире, благодаря удобству и простате языка программирования, а так же открытой  архитектуре и программного кода.

Arduino — это открытая платформа, которая позволяет собирать всевозможные электронные устройства. Arduino будет интересен креативщикам, дизайнерам, программистам и всем пытливым умам, желающим собрать собственный гэджет. Устройства могут работать как автономно, так и в связке с компьютером. Всё зависит от идеи.

Устройство программируется по USB без использования программаторов. Устройства могут получать информацию об окружающей среде по средствам датчиков, а так же могут управлять различными исполняющими устройствами.

Платы можно собрать самостоятельно или купить в сборе, программное обеспечение плат доступно бесплатно для скачивания, архитектура и чертежи являются общедоступны. Существует несколько версий платформ Ардуино.

Программинг микроконтроллеров

У микроконтроллеров AVR есть различные языки программирования, наиболее подходящими являются ассемблер и Си, поскольку в этих языках в лучше реализованы все необходимые возможности по управлению аппаратными средствами микроконтроллеров.

Ассемблер - это низкоуровневый язык программирования, использующий непосредственный набор инструкций микроконтроллера. Создание программы на этом языке требует хорошего знания системы команд программируемого чипа и достаточного времени на разработку программы. Ассемблер проигрывает Си в скорости и удобстве разработки программ, но имеет заметные преимущества в размере конечного исполняемого кода, а соответственно, и скорости его выполнения.

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

Основные преимущества Си перед ассемблером: высокая скорость разработки программ; универсальность, не требующая досконального изучения архитектуры микроконтроллера; лучшая документируемость и читаемость алгоритма; наличие библиотек функций; поддержка вычислений с плавающей точкой.

Архитектура Arduino

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

Ардуино способен выполнять:

·         команды логических операций;

·         команды арифметических операций и команды сдвига;

·         команды операции с битами;

·         команды пересылки данных;

·         команды передачи управления;

·         команды управления системой.

Аналоги плат ардуино

Из-за полной открытости документации существует множество аналогов, полностью или частично совместимых с ардуино.

Freeduino

Freeduino - программируемая через USB порт микро-ЭВМ, в которую можно загрузить любую программу и получить компактное автономное микропроцессорное устройство с заложенными в него Вашими функциями.

Семейство микроконтроллеров Freeduino представлено несколькими вариантами плат, имеющих в общем идентичный функционал, и полностью совместимых с аналогичными вариантами Arduino.

Модули Freeduino основаны на микросхеме ATmega328 (либо ATmega168 в ранних версиях), и легко программируютcя через USB порт (либо COM порт в варианте MaxSerial) при помощи бесплатного программного обеспечения.

Модуль имеет 14 контактов цифрового ввода/вывода, шесть из которых могут быть использованы для вывода сигналов ШИМ, и шесть аналоговых входов АЦП с дискретностью в 1024 значений. Модуль также содержит: кварцевый резонатор на 16 МГц, разъем USB (либо COM в варианте MaxSerial), разъем питания типа Mini-Jack, разъем для подключения внешнего программатора ICSP и кнопку сброса.

Приобретенный в готовом виде модуль содержит все необходимое для разработки микроконтроллерных устройств. Нужно просто подсоединить модуль к компьютеру при помощи стандартного USB кабеля.

В качестве периферии могут быть подключены любые устройства - от светодиодов и простейших датчиков до механизмов радиуоправляемых моделей и роботов. Программы пишутся на простом и интуитивно понятном си-подобном языке (c возможностью подключения сторонних библиотек, например, для управления LCD-дисплеями или двигателями), компилируются и загружаются в устройство одной кнопкой, после чего вы тут же получаете работающее автономное устройство.

Память

Микроконтроллер ATmega328 имеет 32 К программной памяти (из которых 2 К используются для хранения загрузчика). Кроме того, микросхема имеет 2 Кбайт ОЗУ (SRAM), 1 Кбайт байт долговременной памяти данных (EEPROM).

В ранних версиях применялся микроконтроллер ATmega168 с меньшими объемами памяти: память программ - 16 К (2 К заняты загрузчиком), ОЗУ - 1 Кбайт, EEPROM - 512 байт.

Программное обеспечение

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

В микроконтроллер записан загрузчик, осуществляющий запись в программную память микроконтроллера программ без использования специального програматора.

Автоматический (программный) сброс

Кроме обычного аппаратного сброса модуль Freeduino имеет возможность производить программный сброс, выполняемый по команде от компьютера. Для этого, один из сигналов (DTR), поступающих с соответствующего выхода микросхемы USB адаптера FT232RL, подключен к входу сброса микроконтроллера через конденсатор 0,1 мкф. В тот момент, когда уровень сигнала на этой линии меняется с высокого на низкий, на входе сброса микроконтроллера появляется короткий отрицательный импульс, длительности которого достаточно для перезагрузки микроконтроллера. Программное обеспечение использует это свойство для автоматического сброса микроконтроллера перед тем, как начать процесс загрузки программы из компьютера в модуль. Это позволяет начать процесс загрузки нажатием всего одной кнопки "Отправить" в окне управляющей программы.

Ввод и вывод данных

Каждый из 14 выводов модуля можно использовать как вход или как выход данных. Эти выводы работают с сигналами уровнем 0...5В. Каждый из выводов рассчитан на входной (или выходной) ток до 20 мА и имеет внутренний программно отключаемый подтягивающий резистор сопротивлением 20-50 кОм, который по умолчанию отключен. Выводы 3, 5, 6, 9, 10 и 11 могут работать в режиме выходов сигналов широтно-импульсного модулирования. Если вы хотите подключить внешние устройства к выводам 1 или 2, то вы должны помнить, что эти выводы совмещены с цепями, работающими в режиме обмена по USB/COM каналу. Поэтому в момент записи программы и при других операциях обмена данными с компьютером внешние цепи нужно будет отключать.

Модуль также имеет 6 аналоговых входов (АЦП), каждый из которых обеспечивает 10 разрядное аналого-цифровое преобразование (т.е. различает 1024 значений уровня сигнала). По умолчанию входы настроены на диапазон входного напряжения от 0 до 5В. Но вы можете снижать верхнюю границу этого диапазона при использовании внешнего источника опорного напряжения и соответствующим образом составленной программы.

Каналы связи

Модуль Freeduino имеет целый ряд возможностей для обмена информацией с компьютером, другими модулями Freeduino/Arduino и любыми микроконтроллерными устройствами. Входящий в модуль микроконтроллер ATmega328 имеет встроенный последовательный интерфейс UART работающий с сигналами TTL уровней (0...+5В), сигналы которого выведены на контакты 1 (RxD) и 2 (TxD) модуля.

USB версии модулей имеют в своем составе USB конвертор FT232RL фирмы FTDI, который обеспечивает работу через создаваемый автоматически виртуальный COM-порт при подключении модуля к компьютеру. Freeduino MaxSerial оснащена преобразователем MAX232 для преобразования TTL уровней к стандарту RS232.

Управляющая программа для компьютера, служащая средой разработки приложений для модулей Freeduino, имеет простые средства, позволяющие получать простые текстовые данные, посылаемые из модуля на компьютер через тот же COM-порт, через который происходит управление и программирование модуля.

Входящая в комплект программного обеспечения библиотека прикладных функций имеет в своем составе несколько функций, позволяющих организовать последовательный канал связи на любом цифровом выходе модуля.

Микроконтроллер ATmega328 также поддерживает I2C (TWI) шину и шину SPI. Библиотека Freeduino содержит функции для работы с I2C. Для реализации работы с SPI можно обратиться к фирменной документации на микроконтроллер.

Питание

Питание USB версий модуля Freeduino можно осуществлять как от шины USB, так и от внешнего источника питания. Питание Freeduino MaxSerial осуществляется от внешнего источника.

Внешнее питание может осуществляться либо от сетевого блока питания, либо от батареи. На центральный контакт разъема питания подается плюс, а на общий провод минус.

Внешнее напряжение питания может быть от 6 до 20 В. Однако, при входных напряжениях менее 7В напряжение на микроконтроллере может упасть ниже 5В что приведет к нестабильной работе модуля. При напряжениях более 12 В встроенный стабилизатор напряжения может перегреваться, что приведет к снижению надежности. При перегреве он даже может выйти из строя. Рекомендуемый диапазон напряжения питания 7...12 В.

Защита от перегрузок шины USB

USB версии Freeduino имеют защиту, которая предохраняет USB порт вашего компьютера от коротких замыканий и перегрузок по току. Если ток по любой из цепей канала USB превысит 500 мA, то срабатывает устройство защиты – встроенный предохранитель разрывает цепь.

Габаритные размеры

Размеры самой платы составляют 68,5 X 53 мм. Разъемы USB/COM и разъем питания выступают за эти размеры. Плата имеет три крепежных отверстия, при помощи которых вы можете закрепить модуль в любом необходимом месте.

Freeduino 2013 - полный аналог Arduino UNO.

Модуль является полным аналогом Arduino UNO, с некоторыми изменениями для улучшения функционала:

неудобная перемычка автоматического сброса заменена на классический «джампер»

USB интерфейс на чипе Atmega32u2 (с увеличенным в 2 раза объемом Flash-памяти)

возможность выбора питания ATmega328 от 3.3В (Atmel сообщает о возможной нестабильной работе)

Freeduino 2009

Модуль является полным аналогом Arduino Duemilanove, с той разницей, что неудобная перемычка автоматического сброса, требующая перерезания ножом дорожки на плате для отключения программного сброса и запаивания двух контактных площадок для его включения, заменена на классический «джампер».

Модуль автоматически выбирает питание – от USB, или от внешнего источника.

Genuino Micro

Genuino Micro - подходит для разработки устройств на макетных платах. По своим габаритам Genuino Micro немного больше чем Arduino Nano 3.0, но имеет больше выводов (как цифровых, так и аналоговых). Платы Arduino на территории РФ распространяется под торговой маркой Geniuno. Полной копией данной платы является Arduino Micro.

Genuino Micro - это устройство на основе микроконтроллера ATmega32u4. В его состав входит все необходимое для удобной работы с микроконтроллером: 20 цифровых входов/выходов (из них 7 могут использоваться в качестве ШИМ-выходов, 12 - в качестве аналоговых входов), кварцевый резонатор на 16 МГц, разъем micro-USB, разъем ICSP для внутрисхемного программирования и кнопка сброса. Для начала работы с устройством достаточно просто подключить его к компьютеру посредством USB-кабеля. Устройство разработано таким образом, чтобы его можно было удобно размещать на макетной плате.

В Genuino Micro используется микропроцессор ATmega32u4 со встроенным контроллером USB. Такое решение исключает необходимость использования дополнительного контроллера, и при подключении к компьютеру позволяет Genuino Micro определяться в системе как обычная мышь, клавиатура или виртуальный COM-порт.

Спецификация:

·         Микроконтроллер: ATmega32u4

·         Разрядность: 8 бит

·         Напряжение питания: 5 В

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

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

·         Цифровые выводы I/0: 20 линий (7 из них - ШИМ)

·         Аналоговые входы: 12 (АЦП)

·         Максимальный ток на выводе I/0: 40 мА (для каждого вывода)

·         Максимальный ток на выводе 3,3V: 50 мА

·         Flash-память: 32 Кб (из них 4 Кб используются под загрузчик)

·         SRAM-память: 2,5 Кб

·         EEPROM-память: 1 Кб

·         Тактовая частота: 16 МГц

·         Длина: 48 мм

·         Ширина: 18 мм

·         Вес: 13 г.

 

Arduino Duemilanove

Общие сведения

Arduino Duemilanove («2009») построена на одном из микроконтроллеров: ATmega168 (техническое описание) или ATmega328 (техническое описание). Платформа содержит 14 цифровых вход/выходов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых входов, кварцевый генератор 16 МГц, разъем USB, силовой разъем, разъем ICSP и кнопку перезагрузки. Для работы необходимо подключить платформу к компьютеру посредством кабеля USB или подать питание при помощи адаптера AC/DC, или батареи.

Duemilanove (в переводе с итальянского – 2009) была названа в честь года своего выпуска – 2009 год. Данная платформа является последней из серии Arduino с USB. Для сравнения с предыдущими версиями необходимо обратиться к полному списку плат Arduino.

Питание

Arduino Duemilanove может получать питание через подключение USB или от внешнего источника питания. Источник питания выбирается автоматически.

Внешнее питание (не USB) может подаваться через преобразователь напряжения AC/DC (блок питания) или аккумуляторной батареей. Преобразователь напряжения подключается посредством разъема 2.1 мм с центральным положительным полюсом. Провода от батареи подключаются к выводам Gnd и Vin разъема питания.

Платформа может работать при внешнем питании от 6 В до 20 В. При напряжении питания ниже 7 В, вывод 5V может выдавать менее 5 В, при этом платформа может работать нестабильно. При использовании напряжения выше 12 В регулятор напряжения может перегреться и повредить плату. Рекомендуемый диапазон от 7 В до 12 В.

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

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

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

3V3. Напряжение на выводе 3.3 В генерируемое микросхемой FTDI на платформе. Максимальное потребление тока 50 мА.

GND. Выводы заземления.

Память

Микроконтроллер ATmega168 имеет 16 кБ флеш-памяти для хранения кода программы, а микроконтроллер ATmega328, в свою очередь, имеет 32 кБ (в обоих случаях 2 кБ используется для хранения загрузчика). ATmega168 имеет 1 кБ ОЗУ и 512 байт EEPROM (которая читается и записывается с помощью библиотеки EEPROM), а ATmega328 – 2 кБ ОЗУ и 1 Кб EEPROM.

Входы и Выходы

Каждый из 14 цифровых выводов Duemilanove, используя функции pinMode(), digitalWrite(), и digitalRead(), может настраиваться как вход или выход. Выводы работают при напряжении 5 В. Каждый вывод имеет нагрузочный резистор (стандартно отключен) 20-50 кОм и может пропускать до 40 мА. Некоторые выводы имеют особые функции:

·         Последовательная шина: 0 (RX) и 1 (TX). Выводы используются для получения (RX) и передачи (TX) данных TTL. Данные выводы подключены к соответствующим выводам микросхемы последовательной шины FTDI USB-to-TTL.

·         Внешнее прерывание: 2 и 3. Данные выводы могут быть сконфигурированы на вызов прерывания либо на младшем значении, либо на переднем или заднем фронте, или при изменении значения. Подробная информация находится в описании функции attachInterrupt().

·         ШИМ: 3, 5, 6, 9, 10, и 11. Любой из выводов обеспечивает ШИМ с разрешением 8 бит при помощи функции analogWrite().

·         SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Посредством данных выводов осуществляется связь SPI, которая, хотя и поддерживается аппаратной частью, не включена в язык Arduino.

·         LED: 13. Встроенный светодиод, подключенный к цифровому выводу 13. Если значение на выводе имеет высокий потенциал, то светодиод горит.

На платформе Duemilanove установлены 6 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения). Стандартно выводы имеют диапазон измерения до 5 В относительно земли, тем не менее имеется возможность изменить верхний предел посредством вывода AREF и функции analogReference(). Некоторые выводы имеют дополнительные функции:

·         I2C: 4 (SDA) и 5 (SCL). Посредством выводов осуществляется связь I2C (TWI), для создания которой используется библиотека Wire.

Дополнительная пара выводов платформы:

·         AREF. Опорное напряжение для аналоговых входов. Используется с функцией analogReference().

·         Reset. Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.

Связь

На платформе Arduino Duemilanove установлено несколько устройств для осуществления связи с компьютером, другими устройствами Arduino или микроконтроллерами. ATmega168 и ATmega328 поддерживают последовательный интерфейс UART TTL (5 В), осуществляемый выводами 0 (RX) и 1 (TX). Установленная на плате микросхема FTDI FT232RL направляет данный интерфейс через USB, а драйверы FTDI (включены в программу Arduino) предоставляют виртуальный COM порт программе на компьютере. Мониторинг последовательной шины (Serial Monitor) программы Arduino позволяет посылать и получать текстовые данные при подключении к платформе. Светодиоды RX и TX на платформе будут мигать при передаче данных через микросхему FTDI или USB подключение (но не при использовании последовательной передачи через выводы 0 и 1).

Библиотекой SoftwareSerial возможно создать последовательную передачу данных через любой из цифровых выводов Duemilanove.

ATmega168 и ATmega328 поддерживают интерфейсы I2C (TWI) и SPI. В Arduino включена библиотека Wire для удобства использования шины I2C. Более подробная информация находится в документации. Для использования интерфейса SPI обратитесь к техническим данным микроконтроллеров ATmega168 и ATmega328.

Программирование

Платформа программируется посредством ПО Arduino. Из меню Tools > Board выбирается «Arduino Diecimila или Duemilanove w/ ATmega168» или «Arduino Duemilanove w/ ATmega328» (согласно установленному микроконтроллеру). Подробная информация находится в справочнике и инструкциях.

Микроконтроллеры ATmega168 и ATmega328 поставляются с записанным загрузчиком, облегчающим запись новых программ без использования внешних программаторов. Связь осуществляется оригинальным протоколом STK500.

Имеется возможность не использовать загрузчик и запрограммировать микроконтроллер через выводы ICSP (внутрисхемное программирование). Подробная информация находится в данной инструкции.

Автоматическая (программная) перезагрузка

Duemilanove разработана таким образом, чтобы перед записью нового кода перезагрузка осуществлялась самой программой, а не нажатием кнопки на платформе. Одна из линий FT232RL, управляющих потоком данных (DTR), подключена к выводу перезагрузки микроконтроллеров ATmega168 или ATmega328 через резистор 100 нФ. Активация данной линии, т.е. подача сигнала низкого уровня, перезагружает микроконтроллер. Программа Arduino, используя данную функцию, загружает код одним нажатием кнопки Upload в самой среде программирования. Подача сигнала низкого уровня по линии DTR скоординирована с началом записи кода, что сокращает таймаут загрузчика.

Функция имеет еще одно применение. Перезагрузка Duemilanove происходит каждый раз при подключении к программе Arduino на компьютере с ОС Mac X или Linux (через USB). Следующие полсекунды после перезагрузки работает загрузчик. Во время программирования происходит задержка нескольких первых байтов кода во избежание получения платформой некорректных данных (всех, кроме кода новой программы). Если производится разовая отладка скетча, записанного в платформу, или ввод каких-либо других данных при первом запуске, необходимо убедиться, что программа на компьютере ожидает в течение секунды перед передачей данных.

На Duemilanove имеется возможность отключить линию автоматической перезагрузки разрывом соответствующей линии.   Контакты микросхем с обоих концов линии могут быть соединены с целью восстановления. Линия маркирована «RESET-EN». Отключить автоматическую перезагрузку также возможно подключив резистор 110 Ом между источником 5 В и данной линией. Подробная информация находится в соответствующей ветке форума.

Токовая защита разъема USB

В Arduino Duemilanove встроен самовостанавливающийся предохранитель (автомат), защищающий порт USB компьютера от токов короткого замыкания и сверхтоков. Хотя практически все компьютеры имеют подобную защиту, тем не менее, данный предохранитель обеспечивает дополнительный барьер. Предохранитель срабатыват при прохождении тока более 500 мА через USB порт и размыкает цепь до тех пока нормальные значения токов не будут востановлены.

Физические характеристики

Длинна и ширина печатной платы Duemilanove составляют 6.9 и 5.3 см соответственно. Разъем USB и силовой разъем выходят за границы данных размеров. Три отверстия в плате позволяют закрепить ее на поверхности. Расстояние между цифровыми выводами 7 и 8 равняется 0,4 см, хотя между другими выводами оно составляет 0,25 см.

Информация о файле
Название файла Ардуино-совместимые платы от пользователя Гость
Дата добавления 10.5.2020, 19:57
Дата обновления 10.5.2020, 19:57
Тип файла Тип файла (zip - application/zip)
Скриншот Не доступно
Статистика
Размер файла 227.12 килобайт (Примерное время скачивания)
Просмотров 404
Скачиваний 69
Оценить файл