Распиновки и описание процессоров ATmega установленных на ардуино и не только (+схемы пинмапинга )
Особенности
По datasheet (описанию), все контроллеры Atmega обладают следующими особенностями:
- Низкомощным высокопроизводительным 8-зарядным микроконтроллером типа AVR (причем, и у моделей класса Atmega168 20au, и Atmega168 20au).
- Усовершенствованной архитектурой типа RISC (плата всегда ей соответствует).
- Микроконтроллером. Datasheet (описание) говорит, что их 135 у каждой модели.
- Платой и распиновкой, которые обеспечивают выполнение практически всех инструкций в течение 1 цикла.
- Каждый микроконтроллер серии, от самых первых, например, Atmegar3, до наиболее современных (Atmega328 или Atmega2561 rev3), характеризуется полностью статическими темпами работы.
- Огромной производительностью, как утверждает datasheet (описание). При частоте в 16 мегагерц производительность будет равняться 16 миллионам операций за 1 секунду.
- Встроенным 2-тактным устройством для умножения.
- Платой и распиновкой, позволяющими содержание опционального сектора для загрузки с раздельными защитными битами.
- Внутрисистемно программируемой флеш-памятью. Согласно информации из datasheet (описанию), ее объем может равняться 64, 128 или 256 килобайтам.
- Износостойкостью памяти, составляющей 10 000 циклов типа «запись/уничтожение».
- Возможностью платы самопрограммироваться любой другой программой, которая находится в загрузочном секторе.
- Способностью микропроцессора поддерживать режим чтения во время записи.
- Ёмкостью внешнего пространства для программирования одного микропроцессора — 64 килобайта.
- Микрочипом, позволяющим пользователю самостоятельно программировать его защиту (актуально для всех версий: от первых, например, Atmegar3, до современных: Atmega328 или Atmega2561 rev3).
Купить на алиэкспресс http://ali.pub/1t11be
Наименование модели: ATMEGA8-16PI
Производитель: Atmel
Описание: Микроконтроллеры (MCU) AVR 8K FLASH 512B EE 1K SRAM ADC
Купить на алиэкспресс Attiny http://ali.pub/1t11gn
Справочная информация:
Буква V в названии микросхемы означает пониженное напряжение питания;
Буква A – микросхема имеет расширенный диапазон питания от 1.8 до 5.5 Вольт;
Буква P – PicoPower – пониженное потребление;
В столбце АЦП первое число суммы равно количеству несимметричных входов, второе – количеству дифференциальных пар. Если число только одно, значит, микросхема не поддерживает дифференциальные входы АЦП
Купить на алиэкспресс Atmega 2560 http://ali.pub/1t11li
Atmega2560, как и все его аналоги: Atmega2560 rev3, Atmega2560 16au, Atmega320 «Про Мини», Atmegach440g, Atmegach440g Pro Mini, Atmega640 Pro Mini, Atmega168 20au, Atmega328, Atmega2560 16au Pro Mini, Atmegar3 Pro Mini, Atmega168 20au «Про Мини» представляет собой 8-разрядный микроконтроллер низкой мощности, изготовленный на базе ядра типа AVR с архитектурой типа RISC. Он способен выполнять большое количество различных инструкций одновременно.
Купить на алиэкспресс atmega32u4 http://ali.pub/1t11pl
- Высокопроизводительный, малопотребляющий 8-битный микроконтроллер семейства AVR
- Передовая RISC архитектура
- 135 инструкций, большинство выполняется за один такт
- 32х8 регистров общего назначения
- Полностью статический режим работы
- Производительность до 16 MIPS (млн. операций в секунду) при тактовой частоте ядра 16 МГц
- Встроенный двухтактный умножитель
- Энергонезависимая память программ и память данных
- 32 КБайт самопрограммируемой в системе FLASH памяти
- 100000 циклов записи/стирания
- Встроенный загрузчик программ с независимыми битами защиты
- Загрузчик активируется после команды сброса
- Возможен режим чтения во время записи
- Все микроконтроллеры поставляются с “прошитым” USB загрузчиком
- 2.5 КБайт внутренней SRAM данных
- 1 КБайт внутренней EEPROM
- 100000 циклов записи/стирания
- Программная защита от считывания
- 32 КБайт самопрограммируемой в системе FLASH памяти
- JTAG интерфейс (совместимый с IEEE 1149.1)
- Сканирование периферии в соответствии стандарту JTAG
- Расширенный режим отладки
- Поддерживает программирование FLASH, EEPROM и битов защиты
- Высокоскоростной/низкоскоростной модуль USB 2.0 с функцией прерывания по окончании передачи
- Полностью соответствует спецификации Универсальной последовательной Шины версии 2.0
- Поддерживает скорость передачи данных 1.5 Мбит/с и 12 Мбит/с
- Шесть программируемых оконечных точек на вход или выход с возможность передачи сигнала прерывания, групповой и изохронной передачи данных
- Конфигурируемый размер оконечных точек до 256 Байт в режиме сдвоенного банка
- 832 Байта полностью независимой USB DPRAM для распределения оконечных точек
- Сигналы прерывания для останова/возобновления работы
- Возможность сброса ЦПУ по сигналу сброса USB шины
- Соединение/разъединение с USB шиной по запросу микроконтроллера
- Периферия
- Встроенный PLL для USB и высокоскоростного таймера: рабочая частота от 32 МГц до 96 МГц
- Два 8-битных таймера/счетчика с независимым предделителем и режимом сравнения
- Два 16-битных таймера/счетчика с независимым предделителем и режимом сравнения и захвата
- Один 10-битный высокоскоростной таймер/счетчик с PLL (64 МГц) и режимом сравнения
- Четыре 8-битных канала ШИМ
- Четыре канала ШИМ с программируемым разрешением от 2 до 16 бит
- Шесть каналов ШИМ для высокоскоростной работы с программируемым разрешением от 2 до 11 бит
- 12-канальный, 10-битный АЦП
- Программируемый последовательный USART
- Последовательный интерфейс SPI с режимами ведущий/ведомый
- Последовательный интерфейс I2C
- Программируемый сторожевой таймер с независимым встроенным генератором
- Встроенный аналоговый компаратор
- Встроенный датчик температуры
- Особенности микроконтроллера
- Сброс по включению питания и функция определения провалов напряжения питания
- Встроенный калиброванный генератор на 8 МГц
- Встроенный предделитель тактов и переключатель источника тактового сигнала (внутренний RC / внешний генератор) в безостановочном режиме (on-the-fly)
- Внешние и внутренние источники прерываний
- Шесть энергосберегающих режимов ожидание: Idle, ADC Noise Reduction, Power-save, Power-down, Standby и Extended Standby
- Линии ввода/вывода и типы корпуса
- Все линии ввода/вывода совместимы с CMOS и LVTTL уровнями сигнала
- 26 линий ввода/вывода
- 44-выводной корпус TQFP 10х10 мм
- 44-выводной корпус QFN 7х7 мм
- Диапазон напряжения питания 2.7…5.5 Вольта
- Рабочий диапазон температур -40°C…+85°C
- Максимальная тактовая частота
- 8 МГц при напряжении питания 2.7 Вольта
- 16 МГц при напряжении питания 5.5 Вольта
Купить на алиэкспресс ATmega328P http://ali.pub/1t11tv
- ATmega328P
Производитель Atmel Серия AVR® ATmega Процессор AVR Размер ядра 8-Bit Скорость 20MHz Тип подключения I²C, SPI, UART/USART Переферия Brown-out Detect/Reset, POR, PWM, WDT Число вводов/выводов 23 Размер программируемой памяти 32KB (32K x 8) Тип программируемой памяти FLASH EEPROM Size 1K x 8 Размер памяти 2K x 8 Напряжение источника (Vcc/Vdd) 1.8 V ~ 5.5 V Преобразователь данных A/D 6x10b Тип осцилятора Рабочая температура -40°C ~ 85°C Корпус 28-DIP
Похожие статьи
Как выиграть спор на Алиэкспресс. Причины и советы.
Перед тем, как оплатить товар, пообщайтесь с продавцом. Уточните у продавца, соответствует ли товар описанию, имеется ли товар в наличии, может ли продавец сфотографировать товар на телефон и выслать обычную необработанную фотографию. А также, соответствует ли товар размерной сетке, и какой размер продавец посоветовал бы вам выбрать, исходя из ваших параметров. Попросите продавца получше упаковать товар, если вещь хрупкая. Ответы продавца помогут вам либо избежать открытия спора, либо скрины переписки будут дополнительным докозательством во время ведения спора. Если продавец будет неохотно вам отвечать, или вообще не ответит, то заказывать у него лучше не стоит.
Простейший трекер для домашней солнечной электростанции
Трекер повышает КПД солнечных панелей
Как известно, солнечные панели имеют максимальный КПД в том случае, когда они расположены перпендикулярно падающим на них солнечным лучам. Но солнце перемещается по небосводу и стационарно установленные панели из-за этого теряют часть своей эффективности. Чтобы повысить их эффективность, используют трекеры — специальные устройства, которые поворачивают панели «вслед» за солнцем:
Распиновка самых популярных плат ардуино Arduino board pinmaping
В посте собраны практически все платы ардуино с распиновкой в хорошем качестве !
Arduino – это эффективное средство разработки программируемых электронных устройств, которые, в отличие от персональных компьютеров, ориентированы на тесное взаимодействие с окружающим миром. Ардуино – это открытая программируемая аппаратная платформа для работы с различными физическими объектами и представляет собой простую плату с микроконтроллером, а также специальную среду разработки для написания программного обеспечения микроконтроллера.
Ардуино может использоваться для разработки интерактивных систем, управляемых различными датчиками и переключателями. Такие системы, в свою очередь, могут управлять работой различных индикаторов, двигателей и других устройств. Проекты Ардуино могут быть как самостоятельными, так и взаимодействовать с программным обеспечением, работающем на персональном компьютере (например, приложениями Flash, Processing, MaxMSP). Любую плату Ардуино можно собрать вручную или же купить готовое устройство; среда разработки для программирования такой платы имеет открытый исходный код и полностью бесплатна.
Язык программирования Ардуино является реализацией похожей аппаратной платформы “Wiring”, основанной на среде программирования мультимедиа “Processing”.
Теги: ATTINY, Atmega2560 rev3, Atmega2560 16au, Atmega320 «Про Мини», Atmegach440g, Atmegach440g Pro Mini, Atmega640 Pro Mini, Atmega168 20au, Atmega328, Atmega2560 16au Pro Mini, Atmegar3 Pro Mini, Atmega168 20au, процессоры, описание, распиновки, даташит, набор, денис, гиик, китайчик, клуб, ардуино, клуб_ардуино, обзоры, алиэкспресс, denis_geek, denis, geek, chinagreat, club_arduino, arduino, club, aliexpress, денис гиик, denis geek, club arduino, electronica52, electronica52.in.ua,
www.electronica52.in.ua
распиновка, схема подключения и программирование [Амперка / Вики]
Arduino Nano — аналог флагманской Arduino Uno в миниатюрном размере. На Arduino Nano предусмотрено всё необходимое для удобной работы с микроконтроллером: 14 цифровых входов/выходов (6 из них могут использоваться в качестве ШИМ-выходов), 6 аналоговых входов, кварцевый резонатор на 16 МГц, разъём Mini-USB, разъём питания, разъём для внутрисхемного программирования (ICSP) и кнопка сброса.
Видеообзор
Подключение и настройка
Для запуска платформы скачайте и установите на компьютер интегрированную среду разработки Arduino — Arduino IDE.
При выборе платформы выбирайте Arduino Nano.
Если всё получилось — можете смело переходить к экспериментам.
Элементы платы
Микроконтроллер ATmega328P
Сердцем платформы Arduino Nano является 8-битный микроконтроллер семейства AVR — ATmega328P с тактовой частотой 16 МГц. Контроллер предоставляет 32 КБ Flash-памяти для хранения прошивки, 2 КБ оперативной памяти SRAM и 1 КБ энергонезависимой памяти EEPROM для хранения данных.
Микросхема FT232R
Микросхема FTDI FT232R обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера. При подключении к ПК Arduino Nano определяется как виртуальный COM-порт.
USB-UART преобразователь общается с микроконтроллером ATmega328P по интерфейсу UART через пины 0(RX)
и 1(TX)
. Рекомендуем не использовать эти контакты в своём проекте.
Светодиодная индикация
Имя светодиода | Назначение |
---|---|
RX и TX | Мигают при обмене данными между Arduino Nano и ПК. |
L | Пользовательский светодиод подключённый к 13 пину микроконтроллера. При высоком уровне светодиод включается, при низком – выключается. |
ON | Наличие питания на Arduino Nano. |
Разъём Mini-USB
Разъём Mini-USB предназначен для прошивки платформы Arduino Nano с помощью компьютера.
Регулятор напряжения 5 В
Линейный понижающий регулятор напряжения LM1117MPX-5.0 с выходом 5 вольт обеспечивает питание микроконтроллера ATmega328P и другой логики платформы. Максимальный выходной ток составляет 800 мА.
ICSP-разъём для ATmega328
ICSP-разъём предназначен для загрузки прошивки в микроконтроллер ATmega328 через программатор.
Через контакты ICSP Arduino Nano общается с платами расширения по интерфейсу SPI.
Распиновка
Пины питания
VIN: Входной пин для подключения внешнего источника питания с напряжением в диапазоне от 7 до 12 вольт.
5V: Выходной пин от регулятора напряжения на плате с выходом 5 вольт и максимальных током 800 мА. Питать устройство через вывод
не рекомендуется — вы рискуете спалить плату.3.3V: Выходной пин от стабилизатора микросхемы FT232R с выходом 3,3 вольта и максимальных током 50 мА. Питать устройство через вывод
3V3
не рекомендуется — вы рискуете спалить плату.GND: Выводы земли.
- AREF: Пин для подключения внешнего опорного напряжения АЦП относительно которого происходят аналоговые измерения при использовании функции analogReference() с параметром «EXTERNAL».
Порты ввода/вывода
Цифровые входы/выходы: пины
0
–13
Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.ШИМ: пины
,3
,5
,6
,9
10
и11
Позволяет выводить аналоговые значения в виде ШИМ-сигнала. Разрядность ШИМ не меняется и установлена в 8 бит.АЦП: пины
A0
–A7
Позволяет представить аналоговое напряжение в цифровом виде. Разрядность АЦП не меняется и установлена в 10 бит. Диапазон входного напряжения от 0 до 5 В. При подаче большего напряжения — вы убьёте микроконтроллер.- TWI/I²C: пины
A4(SDA)
иA5(SCL)
Для общения с периферией по интерфейсу I²C. Для работы используйте библиотеку Wire. - SPI: пины
11(MOSI)
,12(MISO)
,13(SCK)
и10(SS)
Для общения с периферией по интерфейсу SPI. Для работы — используйте библиотеку SPI. - UART: пины
0(RX)
и1(TX)
Используется для коммуникации платы Arduino с компьютером или другими устройствами по последовательному интерфейсу. Выводы
и1(TX)
соединены с соответствующими USB-UART преобразователя FT232R. Для работы с последовательным интерфейсом — используйте методы библиотеки Serial.
Принципиальная и монтажная схемы
Характеристики
Микроконтроллер: ATmega328P
Ядро: 8-битный AVR
Тактовая частота: 16 МГц
Flash-память: 32 КБ (2 КБ занимает загрузчик)
SRAM-память: 2 КБ
EEPROM-памяти: 1 КБ
Портов ввода-вывода всего: 20
Портов с АЦП: 8
Разрядность АЦП: 10 бит
Портов с ШИМ: 6
Разрядность ШИМ: 8 бит
Аппаратных интерфейсов SPI: 1
Аппаратных интерфейсов I²C / TWI: 1
Аппаратных интерфейсов UART / Serial: 1
Номинальное рабочее напряжение: 5 В
Максимальный выходной ток пина 5V: 800 мA
Максимальный выходной ток пина 3V3: 50 мA
Максимальный ток с пина или на пин: 40 мА
Допустимое входное напряжение от внешнего источника: 7–12 В
Габариты: 18×45 мм
Ресурсы
wiki.amperka.ru
схема, как сделать контроллер [Амперка / Вики]
В этот статье мы расскажем как своими руками собрать Arduino на обычной макетной плате.
Для этого нам понадобится микроконтроллер ATmega328 — такой же как и в оригинальной Arduino Uno.
Распиновка ATmega328
В начале работы с любым микроконтроллером необходимо изучить его распиновку. После этого уже можно приступать к сборке необходимой обвязки. Ниже представлена распиновка микроконтроллера ATmega328.
Сборка Arduino на макетной плате
Необходимые компоненты
Для работы с микроконтроллером понадобятся:
Конденсатор 22 пф
Схема сборки
Соберите на макетной плате компоненты по следующей схеме:
Эксперимент «маячок» из Матрёшки
Добавьте к схеме светодиод на 13
пине. Для этого повторите первый эксперимент из набора Матрёшка Z — маячок.
Обратите внимание, 13
пин Arduino, это не 13 ножка микроконтроллера. Чтобы найти нужный пин, воспользуйтесь распиновкой ATmega328
Схема эксперимента собрана. Осталось прошить нашу Arduino.
Прошивка ATmega328
У микроконтроллера нет собственного USB-порта. К компьютеру его можно подключить одним из двух способов:
Рассмотрим их подробнее.
Прошивка ATmega328 через USB-UART преобразователь
Для сборки программатора нам понадобится:
Собранная в предыдущем эксперименте схема
Соберите следующую схему
Аппаратная часть готова. Теперь скачайте и установите на компьютер интегрированную среду разработки Arduino — Arduino IDE — и прошейте свой контроллер.
Прошивка ATmega328 через Arduino Uno
Для сборки программатора нам понадобится:
Собранная в предыдущем эксперименте схема
Порядок сборки:
Аккуратно извлеките из платы Arduino Uno микросхему ATMega328P. Не беспокойтесь, вы сможете вставить её обратно позднее.
Соберите следующую схему
Аппаратная часть готова. Теперь скачайте и установите на компьютер интегрированную среду разработки Arduino — Arduino IDE и прошейте свою Arduino.
wiki.amperka.ru
распиновка, схема подключения и программирование [Амперка / Вики]
Arduino Uno — флагманская платформа для разработки на базе микроконтроллера ATmega328P. На Arduino Uno предусмотрено всё необходимое для удобной работы с микроконтроллером: 14 цифровых входов/выходов (6 из них могут использоваться в качестве ШИМ-выходов), 6 аналоговых входов, кварцевый резонатор на 16 МГц, разъём USB, разъём питания, разъём для внутрисхемного программирования (ICSP) и кнопка сброса.
Подключение и настройка
Для работы с платой Arduino Uno в операционной системе Windows скачайте и установите на компьютер интегрированную среду разработки Arduino — Arduino IDE.
Видеообзор платформы Arduino
Что-то пошло не так?
Элементы платы
Микроконтроллер ATmega328P
Сердцем платформы Arduino Uno является 8-битный микроконтроллер семейства AVR — ATmega328P.
Микроконтроллер ATmega16U2
Микроконтроллер ATmega16U2 обеспечивает связь микроконтроллера ATmega328P с USB-портом компьютера. При подключении к ПК Arduino Uno определяется как виртуальный COM-порт. Прошивка микросхемы 16U2 использует стандартные драйвера USB-COM, поэтому установка внешних драйверов не требуется.
Пины питания
VIN: Напряжение от внешнего источника питания (не связано с 5 В от USB или другим стабилизированным напряжением). Через этот вывод можно как подавать внешнее питание, так и потреблять ток, если к устройству подключён внешний адаптер.
5V: На вывод поступает напряжение 5 В от стабилизатора платы. Данный стабилизатор обеспечивает питание микроконтроллера ATmega328. Запитывать устройство через вывод
5V
не рекомендуется — в этом случае не используется стабилизатор напряжения, что может привести к выходу платы из строя.3.3V: 3,3 В от стабилизатора платы. Максимальный ток вывода — 50 мА.
GND: Выводы земли.
IOREF: Вывод предоставляет платам расширения информацию о рабочем напряжении микроконтроллера. В зависимости от напряжения, плата расширения может переключиться на соответствующий источник питания либо задействовать преобразователи уровней, что позволит ей работать как с 5 В, так и с 3,3 В устройствами.
Порты ввода/вывода
Цифровые входы/выходы: пины
0
–13
Логический уровень единицы — 5 В, нуля — 0 В. Максимальный ток выхода — 40 мА. К контактам подключены подтягивающие резисторы, которые по умолчанию выключены, но могут быть включены программно.ШИМ: пины
3
,5
,6
,9
,10
и11
Позволяют выводить 8-битные аналоговые значения в виде ШИМ-сигнала.АЦП: пины
A0
–A5
6 аналоговых входов, каждый из которых может представить аналоговое напряжение в виде 10-битного числа (1024 значений). Разрядность АЦП — 10 бит.TWI/I²C: пины
SDA
иSCL
Для общения с периферией по синхронному протоколу, через 2 провода. Для работы — используйте библиотекуWire
.SPI: пины
10(SS)
,11(MOSI)
,12(MISO)
,13(SCK)
.
Через эти пины осуществляется связь по интерфейсу SPI. Для работы — используйте библиотекуSPI
.UART: пины
0(RX)
и1(TX)
Эти выводы соединены с соответствующими выводами микроконтроллера ATmega16U2, выполняющей роль преобразователя USB-UART. Используется для коммуникации платы Arduino с компьютером или другими устройствами через классSerial
.
Светодиодная индикация
Имя светодиода | Назначение |
---|---|
RX и TX | Мигают при обмене данными между Arduino Uno и ПК. |
L | Светодиод вывода 13 . При отправке значения HIGH светодиод включается, при отправке LOW – выключается. |
ON | Индикатор питания на плате. |
Разъём USB Type-B
Разъём USB Type-B предназначен для прошивки платформы Arduino Uno с помощью компьютера.
Разъём для внешнего питания
Разъём для подключения внешнего питания от 7 В до 12 В.
ICSP-разъём для ATmega328P
ICSP-разъём предназначен для внутрисхемного программирования микроконтроллера ATmega328P.
С использованием библиотеки SPI
данные выводы могут осуществлять связь с платами расширения по интерфейсу SPI. Линии SPI выведены на 6-контактный разъём, а также продублированы на цифровых пинах 10(SS)
, 11(MOSI)
, 12(MISO)
и 13(SCK)
.
ICSP-разъём для ATmega16U2
ICSP-разъём предназначен для внутрисхемного программирования микроконтроллера ATmega16U2.
Распиновка
Принципиальная и монтажная схемы
Характеристики
Микроконтроллер: ATmega328
Тактовая частота: 16 МГц
Напряжение логических уровней: 5 В
Входное напряжение питания: 7–12 В
Портов ввода-вывода общего назначения: 20
Максимальный ток с пина ввода-вывода: 40 мА
Максимальный выходной ток пина 3.3V: 50 мА
Максимальный выходной ток пина 5V: 800 мА
Портов с поддержкой ШИМ: 6
Портов, подключённых к АЦП: 6
Разрядность АЦП: 10 бит
Flash-память: 32 КБ
EEPROM-память: 1 КБ
Оперативная память: 2 КБ
Габариты: 69×53 мм
Ресурсы
wiki.amperka.ru
Как перейти от Arduino к серийному образцу. Минимальная обвязка AtMega 328
Вот вы написали программу, и залили её в свой UNO. Всё великолепно работает, но такую громадную железку не запихнуть в миниатюрный корпус. Да и вдруг, вы хотите сделать 100 таких устройств, а зачем вам увеличение себестоимости, ведь на платах Arduino куча ненужного барахла.
Ну что же, попробуем. Для начала, как мы помним, в самых распространённых платах Nano и Mega, используется камень AtMega328P. Логично, что для его запуска, нам нужно подать питание на него. Для этого здесь достаточно много пинов VCC и GND, особенно в планарных типах корпуса. Связано это с топологией чипа на уровне производства, ведь каждый пин контроллера держит токовую нагрузку, поэтому МК должен быть запитан равномерно со всех сторон
Пин AREF отвечает за опорное напряжение АЦП, туда можно подать напряжение, относительно которого вы хотите читать результаты, или, если это будет 5в, или 2.5 от внутреннего делителя, то подтянуть конденсатором к питанию. Также, по классике, на линию питанию нужно повесить конденсаторы для сглаживанию питающего напряжения — от этого зависит стабильность микроконтроллера.
Знаете, на arduino, есть такая кнопка — Reset, от которой можно перезагрузить МК. Это такой выход i/o, на который на который вроде бы можно повесить периферию, но с большими ограничениями. Поэтому, если вам хватает ног, лучше не трогайте этот пин. Изначально он подтянут внутренним резистором, но лучше, для надёжности и стабильности сделать внешнюю подтяжку резистором 10кОм. Перезагружать готовое устройство нужды особой нет — кнопку ставить не будем.
Теперь нужно разобраться с тактированием. Arduino работает на частоте 16Мгц, т.е. от внешнего кварца. Если вы продолжаете работать на этой частоте, то этот кварц нужно установить на создаваемую плату, вместе с конденсаторами 22пФ.
Но если точность вычислений вам не сильно нужна, а хочется сэкономить в размерах, как иногда мне, то кварц можно вообще не ставить, а тактироваться от внутренней RC цепочки с 8Мгц. Как скомпилировать прошивку в arduino с другой частотой в 8Мгц, я расскажу позже. А пока рассмотрим самую важную часть — как программировать то голый микроконтроллер? Ведь usb выхода у него нет. Есть разные пути, но самый простой — использовать внутрисхемное программирование SPI. И купить дешёвый программатор USB ASP. Мой выглядит так, у него не подписаны контакты
Нарисовал удобную распиновку, если смотреть со стороны контактов. Для SPI нам важны 5 контактов, но я обычно беру и питание с программатора — MISO, MOSI, SCK, RST, GND
Также у меня лежит самодельный UsbAsp, но он громоздкий, и у него не сделан вывод 3.3в, поэтому я его давно не использую
Теперь рассмотрим, какие выводы мы будем использовать для программирования на принципиальной схеме МК.
Теперь если подать питание, и подключить выводы программатора MOSI, MISO, SCK, RESET, GND то можно приступать к программированию. Как помните, из предыдущей статьи, где мы рассказали как достать HEX файл из среды Arduino, IDE делает два файла — *.hex и *with_bootloader.hex. Загрузчик нам не нужен, поэтому будем использовать обычный *.hex. Есть один нюанс — при покупке голого кристалла, он запрограммирован на RC цепочку 1Мгц. Да и вообще у atmega, есть система фьюз-битов. Выглядит это обычно не очень понятно, но конечно в среде Arduino всё это вырезано, чтоб не смущать новичков. Чтобы добраться до этих конфигураций, полезно будет скачать программу AVRDUDE. Главное окно выглядит так, здесь нужно сразу выбрать нужный МК
Переходим во вкладку Fuses — здесь, чтобы не наделать бед, а если вы запишите неправильные данные, контроллер можно превратить почти в кирпич (что не очень удобно на распаянной smd плате), я сначала СЧИТЫВАЮ биты, заодно можно убедиться в правильности подключения программатора к МК. Если всё хорошо — получаем такую картинку
Чтобы правильно выставить fuse-биты, нужно воспользоваться помощью специального калькулятора. Я пользуюсь этим. Тут также нужно выбрать чип, способ тактирования и другие параметры. В принципе для смены частоты достаточно сменить блок CKSEL фьюзов. В данном случае я выбрал Int RC — 8Mhz.
Получил картинку фьюзов.
А теперь переносим параметры в AVR DUDE, также калькулятор включает делитель на 8, бит CKDIV8, он нам не нужен. Можете пользоваться нижеприведённым скриншотом, для запуска atmega 328p на 8Мгц от внутреннего RC осциллятора.
Жмём запись — и МК принимает необходимую конфигурацию. Теперь осталось залить прошивку, но ведь она у нас рассчитана на 16Мгц, но в Arduino IDE, есть простой путь скомпилировать прошивку для atmega 328, для частоты 8Мгц. Нужно выбрать плату arduino pro, и указать частоту 8mhz
Как вы заметили, напротив чипа, стоит напряжение 3.3В при пониженной частоте — всё верно, но это не означает, что нельзя запитать кристалл от 5В. Зато от 3.3В теперь можно). Теперь после компиляции нам осталось по знакомому пути найти файл прошивки в формате HEX, и вернуться в AVR DUDE. Выбрать файл прошивки — и нажать программирование.
Всё! Вы избавились от лишней периферии Arduino, можете сделать плату в своём дизайне PCB, а прошивку использовать с вашего прототипа. В следующей статье, мы сделаем свою плату игральных костей в размере 4х4 см, чтобы упаковать в маленький корпус, и проделаем эти шаги на практике.
wreckage.ru
Arduino Pro Mini – Описание, распиновка платы
Arduino Pro Mini одина из самых миниатюрных плат семейства Arduino и может использоваться в готовых проектах. Разработана и производится SparkFun Electronics. Построена на микроконтроллере ATmega168, а позже вышла плата на базе микроконтроллера ATmega328. Платформа содержит 14 цифровых входов и выходов (6 из которых могут использоваться как выходы ШИМ), 6 аналоговых входов, резонатор, кнопку перезагрузки и отверстия для монтажа выводов. Блок из шести выводов может подключаться к кабелю FTDI или плате-конвертеру Sparkfun для обеспечения питания и связи через USB. Arduino Pro Mini — это Arduino Nano без встроенного преобразователя FTDI FT232RL (или Ch440G).
Существует две версии платформы Pro Mini. Одна версия работает при напряжении 3.3 В и частоте 8 МГц, другая при напряжения 5 В и частоте 16 МГц.
Плата поставляется без впаянных разъемов. Это дает возможность выбрать свой способ подключения платы: впаять разъемы или выполнить соединение пайкой проводов.
Характеристики Arduino Pro Mini
Arduino Pro Mini ATmega168 3.3V/8MHz 5V/16MHz
Микроконтроллер | ATmega168PA |
Рабочее напряжение | 3.3 В или 5 В (в зависимости от модели) |
Напряжение питания (рекомендуемое) | 3.35-12 В (модель 3.3 В) или 5-12 В (модель 5 В) |
Напряжение питания (предельное) | 3.35-20 В |
Цифровые входы/выходы | 14 (6 из которых могут использоваться как выходы ШИМ) |
Аналоговые входы | 6 |
ШИМ (PWM) пины | 6 |
Постоянный ток через вход/выход | 40 мА |
Максимальный выходной ток вывода 3.3V | 50 мА |
Flash-память | 16 Кб из которых 2 Кб используются загрузчиком |
SRAM | 1 Кб |
EEPROM | 512 байт |
Тактовая частота | 8 МГц (модель 3.3 В) или 16 МГц (модель 5 В) |
Встроенный светодиод | 13 |
Длина | 33.0 мм |
Ширина | 18.0 мм |
Вес | 5 г |
Принципиальная схема
Arduino Pro Mini ATmega328 3.3V/8MHz 5V/16MHz
Микроконтроллер | ATmega328P |
Рабочее напряжение | 3.3 В или 5 В (в зависимости от модели) |
Напряжение питания (рекомендуемое) | 3.35-12 В (модель 3.3 В) или 5-12 В (модель 5 В) |
Напряжение питания (предельное) | 3.35-20В |
Цифровые входы/выходы | 14 (6 из которых могут использоваться как выходы ШИМ) |
Аналоговые входы | 6 |
ШИМ (PWM) пины | 6 |
Постоянный ток через вход/выход | 40 мА |
Максимальный выходной ток вывода 3.3V | 50 мА |
Flash-память | 32 Кб из которых 2 Кб используются загрузчиком |
SRAM | 2 Кб |
EEPROM | 1 Кб |
Тактовая частота | 8 МГц (модель 3.3 В) или 16 МГц (модель 5 В) |
Встроенный светодиод | 13 |
Длина | 33.0 мм |
Ширина | 18.0 мм |
Вес | 5 г |
Принципиальная схема
Распиновка Arduino Pro Mini
Каждый из 14 цифровых выводов Pro, используя функции pinMode()
, digitalWrite()
, и digitalRead()
, может настраиваться как вход или выход. Выводы работают при напряжении 3,3 В. Каждый вывод имеет нагрузочный резистор (стандартно отключен) 20-50 кОм и может пропускать до 40 мА. Некоторые выводы имеют особые функции:
- Последовательная шина: 0 (RX) и 1 (TX). Выводы используются для получения (RX) и передачи (TX) данных TTL. Данные выводы имеют соединение с выводами TX-0 и RX-1 блока из шести выводов.
- Внешнее прерывание: 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. Если значение на выводе имеет высокий потенциал, то светодиод горит.
На платформе Pro Mini установлены 6 аналоговых входов, каждый разрешением 10 бит (т.е. может принимать 1024 различных значения). Четыре из них расположены на краю платформы, а другие два (входы 4 и 5) ближе к центру. Измерение происходит относительно земли до значения VCC. Некоторые выводы имеют дополнительные функции:
- I2C: A4 (SDA) и A5 (SCL). Посредством выводов осуществляется связь I2C (TWI), для создания которой используется библиотека Wire.
Существует дополнительный вывод на платформе:
- Reset. Низкий уровень сигнала на выводе перезагружает микроконтроллер. Обычно применяется для подключения кнопки перезагрузки на плате расширения, закрывающей доступ к кнопке на самой плате Arduino.
Питание платы
Arduino Pro Mini может получать питание: через кабель FTDI FT232RL (или Ch440G), или от платы-конвертора, или от регулируемого источника питания 3.3 В или 5 В (зависит от модели платформы) через вывод Vcc, или от нерегулируемого источника через вывод RAW.
Выводы питания
- RAW. Для подключения нерегулируемого напряжения.
- VCC. Для подключения регулируемых 3.3 В или 5 В.
- GND. Выводы заземления.
Подключение платы Arduino Pro Mini
Для соединения с компьютером используется специальный кабель FTDI FT232RL (или Ch440G), содержащий преобразователь интерфейса USB–USART. Микроконтроллер содержит интерфейс USART, его сигналы RX и ТХ выведены на торцевую часть платы. Специальный кабель подключается к этим входам Arduino Pro Mini, а также к контактам VCC и GND. При этом питание 5 В поступает в модуль от персонально компьютера. Существуют соединители, имеющие также очень важный контакт DTR. Сигнал на этом контакте автоматически формирует сигнал сброса перед обновлением программы в МК. Без сброса в нужный момент в начале записи программы невозможно записать новую программу. Следует учитывать порядок подключения контактов. Правильно соединение USART выполняется по схеме:
/* DTR <——————> DTR TXD <——————> RXD RXD <——————> TXD VCC <——————> VCC GND НЕ ПОДКЛЮЧЁН CTS GND <——————> GND */
/* DTR <——————> DTR TXD <——————> RXD RXD <——————> TXD VCC <——————> VCC GND НЕ ПОДКЛЮЧЁН CTS GND <——————> GND */ |
Выбор платы и порта в IDE
Откройте Arduino IDE. Из меню Tools>Board выбирается Arduino Pro or Pro Mini.
Выберите микроконтроллер, на базе которого сделана ваша плата: ATmega328P (5V, 16MHz), ATmega328P (3.3V, 8MHz), ATmega128 (5V, 16MHz), ATmega168 (3.3V, 8MHz).
Выберите последовательный порт платы в меню Tools>Port. Скорее всего, это COM3 или выше (в моём случае — это COM5).
Если у вас преобразователь Ch440G, то лучше использовать программатор Arduino as ISP.
Материалы
arduino.ru
Arduino-Pro-Mini-schematic.pdf
arduino.cc
sparkfun.com
ProMini8MHzv1.pdf
Arduino-Pro-Mini-v14.pdf
adafruit.com
Купить Arduino Pro Mini на AliExpress
micro-pi.ru
Arduino ATtmega8: плата, характеристики, распиновка
Микроконтроллеры – отличная основа для большого количества устройств. По сути своей они напоминают компьютер: постоянная память; оперативная память; вычислительное ядро; тактовая частота.
Среди многих семейств и видов МК новички часто выбирают контроллеры AVR Atmega. Однако язык программирования может показаться сложным, поэтому преподаватель из Италии решил разработать простую и удобную плату для обучения.
Родилась Arduino ATmega8, на основе которой можно собрать очень удобное и простое устройство.
Arduino NG – вариант платы Arduino на микроконтроллере ATmega8С этими платами от Ардуино вы получаете целый ряд преимуществ:
- готовая разведенная печатная плата со всеми необходимыми компонентами и разъёмами;
- микроконтроллеры Atmega;
- возможность программировать без программаторов – через ЮСБ порт;
- питание от любого источника 5-20 вольт;
- простой язык программирования и возможность использования чистой C AVR без переделок платы и прошивки.
Характеристики чипа
- Частота ATmega8: 0-16 МГц
- Напряжение ATmega8: 5 В
- Частота ATmega8L: 0-8 МГц
- Частоат ATmega8A: 0-16 МГц
В реальности почти все микроконтроллеры при рабочем напряжении в 5 вольт работают с частотой 16 мегагерц, если участвует внешний кварцевый резонатор. Если брать внутренний генератор, то частоты составят: 8, 4, 2 и 1 МГц.
Распиновка Arduino ATmega8
Ниже приводим распиновку атмега8, которую можно также найти на официальном сайте производителя:
Добавление устройств АТмега
Есть один нюанс по работе с эти чипом – нам нужно внести некоторые изменений в один файл, чтобы дальше можно было бы программировать микроконтроллеры Arduino ATmega8.
Вносим следующие изменения в файл hardware/arduino/boards.txt:
atmega8o.name=ATmega8 (optiboot 16MHz ext) atmega8o.upload.protocol=arduino atmega8o.upload.maximum_size=7680 atmega8o.upload.speed=115200 atmega8o.bootloader.low_fuses=0xbf atmega8o.bootloader.high_fuses=0xdc atmega8o.bootloader.path=optiboot50 atmega8o.bootloader.file=optiboot_atmega8.hex atmega8o.bootloader.unlock_bits=0x3F atmega8o.bootloader.lock_bits=0x0F atmega8o.build.mcu=atmega8 atmega8o.build.f_cpu=16000000L atmega8o.build.core=arduino:arduino atmega8o.build.variant=arduino:standard ############################################################## a8_8MHz.name=ATmega8 (optiboot 8 MHz int) a8_8MHz.upload.protocol=arduino a8_8MHz.upload.maximum_size=7680 a8_8MHz.upload.speed=115200 a8_8MHz.bootloader.low_fuses=0xa4 a8_8MHz.bootloader.high_fuses=0xdc a8_8MHz.bootloader.path=optiboot a8_8MHz.bootloader.file=a8_8MHz_a4_dc.hex a8_8MHz.build.mcu=atmega8 a8_8MHz.build.f_cpu=8000000L a8_8MHz.build.core=arduino a8_8MHz.build.variant=standard ############################################################## a8_1MHz.name=ATmega8 (optiboot 1 MHz int) a8_1MHz.upload.protocol=arduino a8_1MHz.upload.maximum_size=7680 a8_1MHz.upload.speed=9600 a8_1MHz.bootloader.low_fuses=0xa1 a8_1MHz.bootloader.high_fuses=0xdc a8_1MHz.bootloader.path=optiboot a8_1MHz.bootloader.file=a8_1MHz_a1_dc.hex a8_1MHz.build.mcu=atmega8 a8_1MHz.build.f_cpu=1000000L a8_1MHz.build.core=arduino a8_1MHz.build.variant=standard ############################################################## a8noboot_8MHz.name=ATmega8 (no boot 8 MHz int) a8noboot_8MHz.upload.maximum_size=8192 a8noboot_8MHz.bootloader.low_fuses=0xa4 a8noboot_8MHz.bootloader.high_fuses=0xdc a8noboot_8MHz.build.mcu=atmega8 a8noboot_8MHz.build.f_cpu=8000000L a8noboot_8MHz.build.core=arduino a8noboot_8MHz.build.variant=standard
Таким образом, если мы перейдем в меню Сервис → Плата, то увидим устройства:
- ATmega8 (optiboot 16MHz ext)
- ATmega8 (optiboot 8 MHz int)
- ATmega8 (optiboot 1 MHz int)
- ATmega8 (no boot 8 MHz int)
Платы Arduino
Ардуино продаётся во множестве вариантов; главное, что объединяет платы, – это концепция готового изделия. Вам не нужно травить плату и паять все её компоненты, вы получаете готовое к работе изделие. Можно собирать любые устройства, не используя паяльник. Все соединения в базовом варианте выполняются с помощью макетной платы и перемычек.
Сердце платы – микроконтроллер семейства AVR. Изначально был применён микроконтроллер atmega8, но его возможности не безграничны, и плата подвергалась модернизации и изменениям. Стандартная плата, которая наиболее распространена у любителей – это плата версии UNO, существует много её вариаций, а её размеры сравнимы с кредитной карточкой.
Плата Arduino Nano – полный аналог большего собрата, но в гораздо меньших размерах, версия arduino atmega168 была самой популярной и недорогой, но её сменила другая модель – arduino atmega328, стоимость которой аналогична, а возможности больше.
Следующей важной деталью является печатная плата. Разведена и запаяна на заводе, позволяет избежать проблем с её созданием, травлением и пайкой. Качество платы зависит от производителя конкретного экземпляра, но, в основном, оно на высоком уровне. Питание платы осуществляется с помощью пары линейных стабилизаторов, типа L7805, или других LDO стабилизаторов напряжения.
Клеммная колодка – отличный способ сделать надёжное разъёмное соединение и быстро выполнить изменения в схеме прототипов ваших устройств. Для тех, кому не хватает стандартных разъёмов, есть более крупные и мощные платы, например, на atmega2560, у которой доступно полсотни портов для работы с периферией.
На фото изображена плата Arduino Mega 2560. На её основе можно собрать довольно сложного робота, систему умного дома или 3d-принтер на ардуино.
Не стоит думать, что младшие версии слабы, например, микроконтроллер atmega328, на котором построены модели Uno, nano, mini и другие, имеет вдвое больше памяти по сравнению с 168 моделью – 2 кб ОЗУ и 32 кб Flash памяти. Это позволяет записывать более сложные программы в память микроконтроллера.
Проекты на основе Arduino ATmega
Микроконтроллер в современной электронике – основа для любого устройства, начиная от простой мигалки на светодиодах, до универсальных измерительных приборов и даже средств автоматизации производства.
Пример 1
Можно сделать тестер с 11 функциями на микроконтроллере atmega32.
Устройство имеет крайне простую схему, в которой использовано немногим более дюжины деталей. Однако вы получаете вполне функциональный прибор, которым можно производить измерения. Вот краткий перечень его возможностей:
- Прозвонка цепи с возможностью измерять падение напряжения на переходе диода.
- Омметр.
- Измеритель ёмкости.
- Измерение активного сопротивления конденсатора или ESR.
- Определение индуктивности.
- Возможность счёта импульсов.
- Измерение частоты – пригодится в диагностике, например, для проверки ШИМ источника питания.
- Генератор импульсов – тоже полезен в ремонте.
- Логический анализатор позволит просмотреть содержимое пачек цифровых сигналов.
- Тестер стабилитронов.
Пример 2
Для радиолюбителей будет полезно иметь качественное оборудование, но станция стоит дорого. Есть возможность собрать паяльную станцию своими руками, для этого нужна плата Arduino, имеющая в своем составе микроконтроллер atmega328.
Пример 3
Для продвинутых радиолюбителей есть возможность собрать более чем бюджетный осциллограф. Мы опубликуем данный урок в дальнейших статьях.
Для этого вам понадобится:
- Arduino uno или atmega
- Tft дисплей 5 дюйма.
- Небольшой набор обвязки.
Или его упрощенный аналог на плате Nano и дисплее от nokia 5110.
Такой осциллографический пробник станет полезным для автоэлектрика и мастера по ремонту радиоэлектронной аппаратуры.
Пример 4
Бывает, что управляемые модули удалены друг от друга или возможностей одной ардуино не хватает – тогда можно собрать целую микроконтроллерную систему. Чтобы обеспечить связь двух микроконтроллеров стоит использовать стандарт RS 485.
На фото приведен пример реализации такой системы и ввода данных с клавиатуры.
Цветомузыка на микроконтроллере Arduino ATmega8
Для школьной дискотеки можно собрать ЦМУ на 6 каналов.
Транзисторы VT1-VT6 нужно подобрать с учетом мощности ваших светодиодов. Это силовые компоненты – они нужны, потому что мощности микроконтроллера не хватит, чтобы запустить мощные лампы или светодиоды.
Если вы хотите коммутировать сетевое напряжение и собрать цветомузыку на лампах накаливания, вместо них нужно установить симисторы и драйвер. Дополнить каждый канал ЦМУ вот такой конструкцией:
Ардуино своими руками
Atmega2560 – хоть и мощный и продвинутый контроллер, но проще и быстрее собрать первую плату на atmega8 или 168.
Левая часть схемы – это модуль связи по USB, иначе говоря, USB-UART/TTL конвертер. Его, вместе с обвязкой, можно выбросить из схемы, для экономии места, собрать на отдельной плате и подключать только для прошивки. Он нужен для преобразования уровней сигнала.
DA1 – это стабилизатор напряжения L7805. В качестве основы можно использовать целый ряд avr микросхем, которые вы найдете, например, серии, arduino atmega32 или собрать arduino atmega16. Для этого нужно использовать разные загрузчики, но для каждого из МК нужно найти свой.
Можно поступить еще проще, и собрать всё на беспаечной макетной плате, как это показано здесь, на примере 328-й атмеги.
Микроконтроллеры – это просто и весело – вы можете сделать кучу приятный и интересных вещей или даже стать выдающимся изобретателем, не имея при этом ни образования, ни знаний о низкоуровневых языках. Ардуино – шаг в электронику с нуля, который позволяет перейти к серьезным проектам и изучению сложных языков, типа C avr и других.
arduinoplus.ru