Перейти к содержанию

Совместимость по выводам (pin-to-pin)

Нужная микросхема пропала из продажи, а у другого производителя есть похожая в том же корпусе. Встанет ли она на ту же плату и заработает ли с той же прошивкой? Ответ складывается из нескольких уровней совместимости, и совпадение корпуса — только первый из них.

Обновлено Редакция GAW

Совместимость по выводам (pin-to-pin, pin compatibility) — свойство микросхемы встать на место другой без переделки печатной платы: тот же корпус, те же сигналы на тех же выводах, то же питание. Когда к этому добавляется полная функциональная совместимость, говорят о прямой замене (drop-in replacement).

Уровни совместимости

  1. Механическая: корпус и посадочное место совпадают — обычно это корпус одного стандарта JEDEC.
  2. По выводам: на каждом выводе тот же сигнал, питание и земля на тех же местах, неиспользуемые выводы не мешают.
  3. Электрическая: диапазон питания, логические уровни, допустимое напряжение на входах (например, устойчивость к 5 В), токи и временные параметры подходят к остальной схеме.
  4. Программная — для микроконтроллеров: та же прошивка запускается, регистры и периферия ведут себя так же, программатор узнаёт кристалл.

Отказ на любом уровне превращает «аналог» в переделку.

Пример: ATmega328P и ATmega328PB

Atmel в записке AT15007 прямо пишет, что ATmega328PB — не прямая замена ATmega328, а новое устройство, хотя функции обратно совместимы и прошивка для 328 работает на 328PB. Причина — выводы. В корпусе TQFP32 у семейства ATmega48/88/168/328 земля на выводах 3 и 5, питание на 4 и 6 (DS40002061B). У 328PB выводы 3 и 6 стали линиями нового порта PE0 и PE1, а выводы 19 и 22 получили функции PE2 и PE3.

Сравнение относится к 32-выводным корпусам: в DIP-28 ATmega328PB не выпускается вовсе (DS40001906C), так что на плату под ATmega328P в DIP он не встанет даже механически.

Вывод TQFP32ATmega328PATmega328PB
3GNDPE0 / ACO
6VCCPE1
19ADC6ADC6 / PE2
22ADC7ADC7 / PE3

Плата под 328P соединяет выводы 3 и 6 с землёй и питанием, и на 328PB эти линии порта окажутся закорочены на шины. Вдобавок сигнатура у 328PB другая — 1E 95 16 вместо 1E 95 0F, — и программатор с настройками для 328P откажется работать. Подробная распиновка — на странице ATmega328P. Сравнить распиновки STM32 и AVR в одном корпусе и найти замену по выводам можно в инструменте подбора совместимых микроконтроллеров.

Где совместимость по выводам — норма

Некоторые классы микросхем исторически выпускаются с общей цоколёвкой: например, 8-выводные трансиверы RS-485 многих производителей повторяют назначение выводов классического 75176. Но и тогда стоит сверить питание, скорость и защиту от разрыва линии: совпадение выводов не гарантирует совпадения характеристик.

Частые вопросы

Можно ли поставить ATmega328PB на плату Arduino вместо ATmega328P?

На Arduino Uno с микросхемой в DIP-28 — никак: ATmega328PB выпускается только в 32-выводных TQFP и QFN/MLF (DS40001906C). На платах с TQFP32, как Nano, — не напрямую. Atmel в AT15007 прямо называет ATmega328PB не прямой заменой: в корпусе TQFP32 выводы 3 и 6, которые у ATmega328P были GND и VCC, стали линиями порта PE0 и PE1. На плате под 328P они соединены с землёй и питанием. Кроме того, у 328PB другая сигнатура (1E 95 16), и программатор с настройками для 328P откажется его прошивать.

Чем совместимость по выводам отличается от функциональной?

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

Что проверить перед заменой микросхемы на аналог?

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

Источники

  1. Atmel (Microchip). AT15007: Differences between ATmega328/P and ATmega328PB, Atmel-42559C (11/2016) — введение: ATmega328PB — не прямая замена (not a drop-in replacement) ATmega328, а новое устройство, но функции обратно совместимы, и код для ATmega328 работает на ATmega328PB; обратная совместимость кода не гарантируется; разд. 1.1, табл. 1-1: в корпусах TQFP32 и MLF32 вывод 3 (GND у ATmega328) стал PE0/ACO, вывод 6 (VCC) — PE1, выводы 19 и 22 (ADC6, ADC7) получили функции PE2 и PE3; разд. 3.6, табл. 3-5: сигнатура ATmega328 — 1E 95 14, ATmega328P — 1E 95 0F, ATmega328PB — 1E 95 16
  2. Microchip. ATmega48A/PA/88A/PA/168A/PA/328/P Data Sheet, DS40002061B, 2020 — общая распиновка ATmega48/88/168/328 в TQFP32: GND на выводах 3 и 5, VCC на выводах 4 и 6 — поэтому платы под ATmega328P соединяют выводы 3 и 6 с землёй и питанием
  3. Microchip. ATmega328PB Data Sheet, DS40001906C, 2018 — Features: корпуса — только 32-выводные TQFP и QFN/MLF; распиновка TQFP32 с PE0–PE3 на выводах 3, 6, 19 и 22

Нашли ошибку?