Atmega328p u th что это
Компания Atmel применяет довольно неудобную систему именования чипов AVR, которая часто приводит в недоумение даже опытных пользователей. Бывает трудно понять, с какой именно маркировкой следует использовать кристалл для разработки, если имеется несколько на первый взгляд незначительно отличающихся вариантов. В этой статье сделана попытка обобщить различия между ATmega328, ATmega328P, ATmega328PU.
1. Для обычных применений нет никакой разницы между Atmega328P и Atmega328. Так что можно просто заменить ATmega328 на ATmega328P или наоборот.
2. Atmega328P меньше потребляет энергии, чем Atmega328 (в чем можно убедиться, если посмотреть таблицы параметров даташита). Это означает, что для Atmega328P использовался более точный техпроцесс (60 нм у ATmega328P против 90 нм у ATmega328), и обычно эти чипы дороже. Микроконтроллеры AVR, которые меньше потребляют, обладают по терминологии Atmel классификацией PicoPower. Таким образом, в устройствах с батарейным питанием предпочтительнее использовать ATmega328P, и задействовать у них специальные режимы управления питанием с целью снижения энергопотребления.
3. Сигнатуры чипа для Atmega328P и Atmega328 отличаются. Так что если используются программы, читающие сигнатуру чипа (наподобие утилиты программирования avrdude в составе Arduino IDE), то Вы можете встретиться с сообщениями об ошибке, если неправильно укажете тип микроконтроллера.
4. Корпус микроконтроллера типа TQFP32 доступен только для Atmega328P, и его нет для Atmega328. Возможно это связано с тем, что толщина кристалла Atmega328 больше, и он не помещается в корпус TQFP32.
5. В Atmega328 нет фьюза для запрета детектора некачественного питания (Brown-out Detector, BOD). В Atmega328P этот фьюз есть, что позволяет дополнительно уменьшить энергопотребление, если отключить BOD.
Фьюз BOD имеется только в AVR с технологией picoPower ATmega48PA, ATmega88PA, ATmega168PA, ATmega328P. Фьюзы BODS и BODSE имеются только в AVR с технологией picoPower ATmega48PA, ATmega88PA, ATmega168PA, ATmega328P.
6. Есть незначительные отличия в системе команд, относящиеся к инструкциям перехода. Если компилировать для чипа ATmega328, то программа будет одинаково работоспособна и на ATmega328, и на ATmega328P.
| Мнемоника | Операнды | Описание | Операция | Действие на флаги | # циклов |
| JMP | adr | Прямой переход по адресу | PC ← adr | нет | 3 |
| CALL | adr | Прямой вызов подпрограммы по адресу | PC ← adr | нет | 4 |
Примечание: эти инструкции имеются только в ATmega168PA и ATmega328P.
Эти суффиксы обозначают тип корпуса микроконтроллера. PU соответствуют пластиковому DIP (PDIP), AU пластиковому TQFP, MU пластиковому QFN.
Устройство ATmega328P: распиновка, даташит и Old Bootloader
Компания Atmel производит множество чипов и 2 разновидности микроконтроллеров, которые были признаны радиолюбителями. Один из них — ATmega328P, рассматриваемый в этой статье. Рассмотрим его устройство, варианты программирования и ПО, требующееся для прошивки
ATmega328P — микроконтроллер группы AVR
Устройство atmega328p имеет 28 контактов. Его знает большинство владельцев конструктора Arduino, как главный элемент электронного комплекта. Но на самом деле, функционал устройства намного шире, чем применение в этом конструкторе. И это подтверждается в atmega328p datasheet.
Семейство микроконтроллеров AVR, куда входит atmega328p, сегодня широко применяется при конструировании электроники разного уровня. Среди них не только микроконтроллер ATmega328P, но и схожий по характеристикам 8-контактный ATtiny45, имеющий чуть меньше функций.
Микроконтроллер также является основой Arduino Nano — маленькой отладочной платы, очень распространённой в любительской среде программистов. Это устройство — компактное по размеру, но по характеристикам не уступающее всем известной Arduino Uno. Она запросто включается в проекты, где параметры очень важны.
Распиновка atmega328p
Как правило, программирование указанных устройств ведется с помощью SPI — последовательного периферийного интерфейса. Через шину данных идет ряд сигналов:
Последний — генерирует программатор и обеспечивает синхронное получение между двумя связанными устройствами. Можно сказать, что интерфейс SPI — это синхронная шина коммуникации.
Как выбрать физический программатор под ATmega328P
Для указанного микроконтроллера есть множество подходящий программаторов. Один из них производится той же фирмой, Atmel и разрабатывался профессионалами. Он называется «Atmel-ICE».
По мнению радиолюбителей, это лучший программатор для прошивки AVR и схожих микросхем. Его можно приобрести в интернет-магазинах наподобие AliExpress, по стоимости от 5 тысяч рублей. Устройство выглядит так:
К сожалению, такая версия не по карману простым любителям электроники. Рациональнее — остановить выбор на usb — программаторе AVR Pocket Programmer. Он стоит намного дешевше профессионального Atmel-ICE. На некоторых сайтах его можно приобрести даже за 200 р, правда, без проверки.
При отсутствии возможности купить простой программатор, можно изготовить его собственноручно. Основу такой схемы составляет чип ATtiny2313. Внешними элементами в ней являются:
Конструкция самодельного устройства — проста и доступна. Желательна буферизация сигнальных линий, но она не обязательна. Для нее в схеме должен находиться буфер. К примеру, его роль может сыграть устройство 74AC125. Оно же входит и в фирменную версию. Вместо него можно применить транзистор.
Программатор не функционирует без usb-драйвера. Поэтому, радиолюбители обзаводятся универсальным инсталлятором для Windows (7 и более высоких версий), который помогает устанавливать общие драйвера. Установка драйвера в ОС желательна до того, как физическая схема atmega328p подключится к компьютеру.
Как подключать и программировать микроконтроллер
Устройства группы AVR программируют с помощью интерфейса SPI, сигнальным прохождением сквозь 6 участкоа:
Чтобы все перечисленные сигналы перемещались через устройства, нужен 1 из 2 стандартных разъемов, с 6 или 10 контактами. Программаторная atmega328p плата соединяется с ними с помощью шлейфа-кабеля. Ее заводской вариант укомплектован всеми возможными дополнениями.
Для работы вместе с программным инструментом используются 2 вида контактных разъемов SPI.
Фирменная плата оборудована переключателем режимов электропитания. При его помещении в положение Power Target, она получает от usb напряжение 5 В. В противном случае, то есть, режиме No Power на контакте нет питания. Второй вариант применяется, чтобы программировать чипы с невысоким напряжением, от 1,8 до 3,3 В.
В каждый контроллер atmega328p для avrdude встраивается технология bootloader atmega328p. Она считается самым рациональным и правильным вариантом программирования. Так как специализированные программные адаптеры и набор знаний — не обязательны, необходимо подключение классического кабеля от ПК к плате и активацию программы.
При предварительной переконфигурации atmega328p nano или обычной, старт микроконтроллера идёт со специализированого адреса, где, как правило, располагается atmega328p old bootloader. Это является условием запуска, определяемым состоянием перемычки извне, которая подключается к ножке atmega328p для Ардуино.
Использование утилиты AVRDUDE
Эта комбинация помогает выяснить, подключен ли микроконтроллерный программатор к разъему usb. Чипы из других серий, соответственно, проверяются другими командами.
Если программатор подключен правильно, утилита выведет на экран следующее (см. Рисунок):
Если микроконтроллер изготавливается по стандартам, в нем присутствуют идентификаторы. Он определяется при первом запуске утилиты. AVRDUDE в ходе проверки сканирует идентификатор чипа.
Микросхемные идентификаторы имеют разный вид, согласно типу AVR. В частности, идентификация ATmega328P выглядит как 0x1E950F. Эти символы выводятся в специальное окно. После проверки работоспособности схемы, идет следующий шаг — чтение и запись программного кода посредством утилиты.
Участок памяти чипа, как правило, прошиваемый, является энергозависимой областью, местом для хранения программ (Flash). Прошивка atmega328p производится с помощью комбинации: avrdude c usbtiny p atmega328p U flash:w:test.hex. Имя файла здесь дано только как пример.
Чтобы записать flash-память, потребуется некоторое время, большее, чем для считывания информации atmega328p. Проверка устройства, чтение и запись, в свою очередь, меняют командную строку.
Взгляните на этот рисунок, чтобы увидеть, как читается информация в памяти устройства посредством утилиты. Она помещается в специальное окно.
Добавочный символ w указывает на запись, затем, через знак “:” идет имя и местонахождение документа, который и записывается в память.
Работа инструмента возможна лишь с теми документами, у которых есть расширение hex.
Отличия ATmega328 от ATmega328P и ATmega328PU
Обычному пользователю сложно понять, почему маркировка кристаллов отличается, и какой выбрать. Попробуем разобраться:
Можно изготовить Ардуино на основе atmega328p mini. Этот вариант — более простой, чем uno, так как там нет участка USB-to-Serial. Как мы знаем, atmega328p pro mini — это, как правило, вариант atmega328p au. Но для некоторых устройств этот вариант — слишком мал, и туда больше подходит PU.
На основе микроконтроллеров создаётся множество устройств, в том числе, atmega328p тестер-транзистор и контроллер atmega328p nano 3.0.
Led-матрица на основе ATmega328p (самодельный Arduino)
Этот прибор может украсить полку любого пользователя и радиолюбителя.
Составляющие элементы
Сначала нужно собрать все необходимые детали. Нам понадобится:
Обзаведитесь флюсом, припоем и паяльником, оптимальными проводами, например, МГТФ.
Регистр сдвига
Принцип действия микросхемы 74ch595 — довольно сложен для понимания. Ее основное предназначение — увеличение числа пинов.
В схеме есть несколько основных регулирующих контактов: вывода (DS), определения напряжения на выводе (SH), записи состояния в DC, открытия и закрытия микросхемы путем установки контактов в нужное положение (ST).
Последнее, что нужно узнать, — это код для функционирования микросхемы.
Как подготовить матрицу
Иногда светодиодам не хватает места на плате, и тогда нужна обточка мелкой окантовки. Делайте ее аккуратнее, так как световые диоды — довольно хрупкие элементы.
Не забудьте о конденсаторах! При их отсутствии световые диоды погаснут, что помешает оптимизации устройства.
Резисторов, как уже было указано, в конструкции — 7, но видно только 6, так как 1 расположен напрямую под микросхемой.
Вместо генератора с частотой 16 МГц можно использовать имеющий 24 МГц, для ускорения работы. Но такую корректировку можно сделать только в готовом устройстве. Дело в том, что прошивка ATmega328p на генераторе с большей частотой — невозможна.
Расположение светодиодов таково:»+» к 74ch595, «-» — ATmega328p.
Конечно, не прошитое устройство мгновенно не заработает, однако, можно попробовать воспользоваться классическим blink Arduino. При определённых условиях — может сработать. При мигании света в 1-м ряду можно считать, что эксперимент удался.
Для возможности влияния микроконтроллера на контакты, нужна их инициализация. В противном случае, актуально было бы использование массива и цикла для сокращения функционального кода.
В устройстве обязательно должна быть динамическая память, при отсутствии которой оно просто зависнет.
Как выбрать источник электропитания
Этот момент нужно учесть в первую очередь. Например, выбрать в качестве электроисточника ноут или персональный компьютер — не лучшая идея. Конечно, кое-как при таких пульсациях конструкция какое-то время поработает, но стабильности не ждите.
Конечно, слабая работа прибора, созданного на микроконтроллере, может объясняться неправильным прошивочным кодом, проблемой с контактами на плате. Но если вы меняете источник питания, и работа возобновляется, дело в нем.
Не все сетевые варианты здесь подходит, гораздо выгоднее — использование автономного питания. Например, подойдут и литий-ионные аккумуляторы для питания мобильников.
А поскольку, согласно технической инструкции, чтобы контроллер ATmega328p при 16 МГц, нужно напряжение около 5 В, здесь не обойтись без модуля преобразователя, который повышает напряжение.
Реверс-инжиниринг микроконтроллера Atmel Atmega328p
Микроконтроллер ( англ. Micro Controller Unit, MCU)-микросхема, на которой сочетается функции процессора и содержит ОЗУ и ПЗУ на одной системе на чипе. По сути, это однокристальный процессор, на котором размещены все внешние устройства.
Постоянное запоминающее устройство (ПЗУ) — энергонезависимая память, используется для хранения различной информации.
Оперативная память (англ. Random Access Memory, RAM (ОЗУ) —энергозависимая память, в которой во время работы компьютера хранится информация.
Существует несколько разновидностей ПЗУ, предназначенных для различных целей:
ROM — (Read-Only Memory, постоянное запоминающее устройство), к примеру, масочное ПЗУ, изготавливается фабричным методом. В дальнейшем нет возможности изменить записанные данные. ROM используется в микроконтроллерах для хранения кода, а также для других целей.
PROM — (Programmable Read-Only Memory, программируемое ПЗУ (ППЗУ)) — ПЗУ, однократно программируемое пользователем.
EPROM — (Erasable Programmable Read-Only Memory, перепрограммируемое ПЗУ (ПППЗУ)). Например, содержимое микросхемы К573РФ1 стиралось при помощи ультрафиолетовой лампы. Для прохождения ультрафиолетовых лучей к кристаллу в корпусе микросхемы было предусмотрено окошко с кварцевым стеклом.
EEPROM — (Electrically Erasable Programmable Read-Only Memory, электрически стираемое перепрограммируемое ПЗУ). Память такого типа может стираться и заполняться данными несколько десятков тысяч раз. Используется в твердотельных накопителях, микроконтроллерах, SPD. Из недостатков – долгое время стирания. Одной из разновидностей EEPROM является флеш-память (Flash Memory).
Кроме этого, в составе микроконтроллера чаще всего находятся порты ввода/вывода, таймеры, АЦП, последовательные и параллельные интерфейсы. В некоторых даже можно заметить Wi-Fi-/Bluetooth-модуль и даже поддержку NFC.
Первый патент на микроконтроллер был выдан в 1971 году компании Texas Instruments. Инженеры этой компании предложили размещать на кристалле не только процессор, но и память с устройствами ввода/вывода.
Микроконтроллер Atmel Atmega328p
Параметр
28 или 32 контакта:
Максимальная рабочая частота
Технические характеристики

Микроконтроллер состоит из нескольких вычислительных блоков:
Арифметико-логическое устройство (АЛУ) (англ. arithmetic logic unit, ALU) — блок процессора, который под управлением устройства управления служит для выполнения арифметических и логических преобразований над данными.
Блок управления процессором (УУ) (control unit, CU) — блок, устройство, компонент аппаратного обеспечения компьютеров. Представляет собой конечный дискретный автомат. Структурно устройство управления состоит из: дешифратора команд (операций), регистра команд, узла формирования (вычисления) текущего исполнительного адреса, счётчика команд. УУ современных процессоров обычно реализуются в виде микропрограммного автомата и в этом случае УУ включает в себя ПЗУ микрокоманд. УУ предназначено для формирования сигналов управления для всех блоков машины.
Сумматорами называют логические устройства, выполняющие арифметические суммирование кодов двоичного числа
Микроконтроллер Atmega328P и Arduino
В классической линейке устройств Arduino в основном применяются микроконтроллеры Atmel AVR. Следующие МК можно встретить на указанных распространённых платах:
ATmega2560 (16 МГц, 256к Flash, 8к RAM, 54 порта, из них до 15 с ШИМ и 16 АЦП). Платы Mega.
ATmega32U4 (16 МГц, 32к Flash, 2,5к RAM, 20 портов, из них до 7 с ШИМ и 12 АЦП). Платы Leonardo, Micro, Yun.
ATmega328 (16 МГц, 32к Flash, 2к RAM, 14 портов, из них до 6 с ШИМ и 8 АЦП). Платы UnoR3, Mini, NanoR2, Pro, Pro mini, различные варианты плат uno и nano, такие как Wifi Uno и nano + nrf42l01
ATtiny85 (20Мгц, 8к Flash, 512б RAM, 6 портов, из них 4 ШИМ и 4 аналоговых). Платы Digispark, также часто применяются вне плат.
ATmega168(16Мгц, 16к Flash, 1к RAM, порты и распиновка аналогично ATmega328) Платы Uno R1, Uno R2, Pro mini, NanoR1.
ATMEGA328P-PU как замена Arduino
Итак зачем все это нужно?
Ну во первых, это экономия в деньгах (Правда с ценами на Pro Mini очень сомнительная)
Во вторых, экономия места
В третьих, микросхемы без всяких преобразователей и светодиодов очень экономичны, что немаловажно в проектах с батарейным питанием.
В четвертых, проекты на Arduino весьма неопрятны из за мотка проводов вокруг платы. Микроконтроллеры же вполне можно паять на макетках или нормальных печатных платах.
Ну и в пятых, это ведь интересно и познавательно!
Заказ шел целых 97 дней. Трек быстро отозвался в Китае и завис, не дойдя до России. Я успел пообщаться с продавцом, открыть спор и выиграть его, когда нежданно посылка нарисовалась в Москве. Деньги я вернул продавцу на PayPal, видимо у него где-то есть еще и магазин.
Итак все довольны — продавец получил заслуженную прибыль, а я долгожданный товар.
Подробное описание ATMEGA328 можно посмотреть на сайте atmel.com.
Буковка «P» в названии означает низкое энергопотребление, а PU-корпус DIP28, который удобно паять обычным паяльником.
Сам товар:
Контроллер с панелькой и кварцем
Как это все готовить?
Для программирования взят очень дешевый программатор USBasp за 3.14 (Пи?) баксов.
Для простоты, используем ICSP разъем стандартной Arduino UNO 
В панельку Arduino вставляем наш микроконтроллер.
Далее качаем и устанавливаем драйвер для программатора. Запускам стандартную ArduinoIDE, выбираем в меню «Сервис->Программатор->USBasp», плату ArduinoUNO и нажимаем «Записать загрузчик». После окончания процесса загрузки мы получаем контроллер, такой же как и в UNO, в который можно уже в дальнейшем заливать программы через стандартный USB Ардуины.
Далее мне захотелось использовать встроенный кварцевый резонатор на 8МГц, чтобы иметь минимум деталей на плате.
Открываем файл с описанием микроконтроллера c:\Program Files (x86)\Arduino\hardware\arduino\boards.txt
Копируем блок с Uno и правим в нм Фьюзы. Это специальные биты для настроки контроллера. Прочитать про них можно здесь. Сконфигурировать при помощи онлайн-калькулятора. Загрузив в калькулятор значения от UNO я устанавливаю стандартное значение с встроенным кварцем на 8МГц.
Затем заменяю значение в файле с описанием плат и получаю такое описание:
Затем в среде Arduino выбираю свой микроконтроллер и снова прошиваю загрузчик.
Все, я получил микроконтроллер, в который можно заливать скетчи на Arduino UNO плате, а затем использовать его без внешнего кварца.
Можно не прошивать контроллеру загрузчик, но тогда заливать в него программы всегда придется через программатор.
Чтобы не соединять самому 10пинвый разъем на USBasp к 6-ти пиновому ICSP на Arduino заказал такой переходник
Потом подумал, и заказал такой переходник для программатора, позволяющий обходится без Arduino Uno. Так что надеюсь, следующие микросхемы буду шить с большим комфортом.
Где я все это планирую применять?
Хочу сделать сенсорные беспроводные выключатели света, вентиляторов и др. устройств, причем разместить их прямо в корпусах выключателей.
В люстрах, для получения радиокоманд от этих выключателей, а также для диммирования.
В миниатюрном погодном датчике на аккумуляторе за окном.
В контроллере управления вентилятором на кухне и в ванной.
Да мало ли сколько еще «нужных и полезных» устройств можно сделать?
А как же мозг не вскипел все это реализовывать?
Ну конечно же был помощник
Arduino.ru
Всем привет. Последнее время в своих платах стал ставить вместо atmega328P более современную версию PB.
Они побогаче периферией и банально дешевле. Шли они в TQFP32 маркированные Atmega328PB-AU
Но вот хотел приобрести новую партию на Алиэкспресс и увидел фотку с маркировкой на корпусе Atmega328-U
У микрочипа на сайте про такое ничего не нашел. Никто не сталкивался, что это может быть? Подделка? Отбраковка, работающая на более низкой частоте? Или что-то еще?
Они побогаче периферией и банально дешевле.
Огорчу Вас. Они абсолютно одинаковые. PB означает, если мне не изменяет склероз, безсвинцовое лужение выводов И ФСЕ!
Они побогаче периферией и банально дешевле.
Огорчу Вас. Они абсолютно одинаковые. PB означает, если мне не изменяет склероз, безсвинцовое лужение выводов И ФСЕ!
PB означает, если мне не изменяет склероз, безсвинцовое лужение выводов И ФСЕ!
PB означает, если мне не изменяет склероз, безсвинцовое лужение выводов И ФСЕ!
Кто-то эту тему удалил. Админы, восстановите, плиз
Ты б хоть почитал чонить, для начала.
Даташит ведь доступен. В чем проблема? Да ладно бы ещё начинающий какой. Вон лицо какое копчёное.)
https://www.microchip.com/wwwproducts/en/ATmega328PB
Вопрос не по 328P и 328PB. Разные МК с разными даташитами.
А вот дальше в маркировке темный лес. В даташите есть AU и AUR в TQFP32 и нармальным температурным режимом.
Натолкнулся на обсуждения аналогичной маркировки у 328P
Есть мнение, что маркировка U-TW означает производство на заводе в Тайване (всего вроде три завода). А еще существует маркировка до поглощения Атмела Микрочипом и после. Так что похоже нужно брать и пробовать.
Ты б хоть почитал чонить, для начала.
Даташит ведь доступен. В чем проблема? Да ладно бы ещё начинающий какой. Вон лицо какое копчёное.)
https://www.microchip.com/wwwproducts/en/ATmega328PB
Я это не ТС-у писал, а анатолию.ник, который в #2 сморозил.
Но вот хотел приобрести новую партию на Алиэкспресс и увидел фотку с маркировкой на корпусе Atmega328-U
У меня две партии по 10 шт. Там AU на корпусе написано
По ссылке выше на забугорный форум, Микрочип очень туманно ответил, что в связи с поглощением Атмел маркировка на микросхемах может меняться. И дал огромную таблицу маркировки, которая не прояснила ничего.
Более того, если китайцы перемаркировывают микросхемы, то кто им мешает делать маркировки такими же. Современные технологии лазерной гравировки и шелкографии это вполне позволяют.
Для себя решил не делить микросхемы на оригинал или подделку. особенно с Али. А делить на работающие и неработающие )))
Тем более у Atmela процент нерабочих довольно низкий. Вот БУ да. Попадаются.


























