PIC16F877A и PIC16F628A — два восьмибитных микроконтроллера Microchip одной архитектуры и одного набора из 35 команд, но разных размеров и назначений. PIC16F877A — большой чип в 40-выводном корпусе: 8 килослов флеш-памяти, 33 вывода общего назначения и восьмиканальный десятибитный АЦП. PIC16F628A — маленький чип в 18-выводном корпусе: 2 килослова флеш, 16 выводов и никакого АЦП, вместо него два аналоговых компаратора и встроенный точный генератор 4 МГц. Разница между ними — как между большим и малым инструментом: на 877A собирают учебные стенды и проекты с датчиками, а 628A ставят туда, где нужно мало ножек и минимум обвязки.
Содержание руководства (9 разделов)
Два чипа в сравнении
PIC16F877A — это 40-выводной корпус, флеш 8 килослов по 14 бит, оперативная память 368 байт, EEPROM 256 байт и 33 вывода общего назначения. Периферии много: восьмиканальный десятибитный АЦП, два модуля ШИМ, аппаратный USART и модуль MSSP, из которого делают и I2C, и SPI.
PIC16F628A — это 18-выводной корпус, флеш 2 килослова, оперативная память 224 байта, EEPROM 128 байт и 16 выводов общего назначения. АЦП у него нет, зато есть два аналоговых компаратора с программируемым опорным напряжением, аппаратный USART и встроенный генератор 4 МГц с точностью около одного процента.
Общее у них — архитектура, набор команд и способ программирования по ICSP. Код, написанный на ассемблере или Си для одного, переносится на другой с поправкой на выводы и периферию: у 628A нет АЦП, поэтому все аналоговые измерения переписывают.
Главное отличие: АЦП против компараторов
PIC16F877A умеет измерять напряжение: у него восемь каналов десятибитного АЦП. Это делает его стандартным выбором для учебных проектов и стендов с датчиками температуры, света и уровня, где надо читать аналоговый сигнал.
У PIC16F628A АЦП нет вообще. Вместо него стоят два аналоговых компаратора с внутренним опорным напряжением, поэтому чип умеет сравнивать сигнал с порогом, но не измерять его величину. Для датчика, который выдаёт только «выше порога / ниже порога», этого достаточно, для измерения — нет.
Именно по этому признаку и выбирают: нужен аналоговый вход — 877A или другой чип с АЦП, хватает сравнения с порогом и нужен маленький корпус — 628A.
Программирование и прошивка
Оба чипа программируются по внутрисхемному последовательному интерфейсу ICSP через те же два вывода, и оба поддерживают низковольтное программирование. Алгоритмы записи у них разные, поэтому в программаторе выбирают точную модель.
Подводный камень с суффиксом A: версии 877A и 628A отличаются от старых 877 и 628 без буквы. В частности, у 877A добавили модуль компаратора, и если его не отключить в коде, часть входов может вести себя непредсказуемо. При переносе старого кода это проверяют в первую очередь.
628A удобен тем, что встроенный генератор 4 МГц избавляет от внешнего кварца: чип работает без обвязки, и это одна из причин, по которой его берут в мелкие устройства.
Характеристики
- PIC16F877A: 40 выводов, 8 килослов флеш, 368 Б ОЗУ, АЦП 8 каналов 10 бит, 2 ШИМ, USART, MSSP.
- PIC16F628A: 18 выводов, 2 килослова флеш, 224 Б ОЗУ, без АЦП, 2 компаратора, внутренний генератор 4 МГц.
- Оба — 8 бит, набор 35 команд, тактовая до 20 МГц, программирование по ICSP.
- Разница в периферии: у 628A нет АЦП и SPI, у 877A есть всё перечисленное.
- Суффикс A — обновлённая версия, у 877A добавлен компаратор, который надо отключать в коде.
Частые вопросы
- Чем заменить PIC16F877A — внутри семейства на PIC16F887 или на AVR/STM32, если проект не привязан к PIC.
- Почему PIC16F628A не читает аналог — у него нет АЦП, только два компаратора.
- Чем отличается 877A от 877 — у A-версии добавлен компаратор, который отключают в коде.
- Нужен ли кварц для 628A — нет, у него встроенный генератор 4 МГц с точностью около 1 %.
- Переносится ли код с 877A на 628A — команды те же, но выводы и периферию сверяют заново.
Детали, названные в этом руководстве
КаталогКаждая позиция — это деталь или семейство, о которых идёт речь в руководстве, со ссылкой на карточку в каталоге: параметры, корпус, стадия жизненного цикла и datasheet, если он у нас локализован. Там, где в тексте названо семейство, в таблице стоит конкретный заказной партномер со склада. Если позиции из руководства в списке нет — значит, её у нас сейчас нет: пришлите номер, и она уйдёт в подбор вместе с остальными.
| Партномер | Производитель | Описание |
|---|---|---|
| PIC16F877A-I/PDatasheet | Microchip Technology | IC MCU 8BIT 14KB FLASH 40DIP |
| PIC16F628A-I/PDatasheet | Microchip Technology | IC MCU 8BIT 3.5KB FLASH 18DIP |
Примените это к своей спецификации
Отправьте партномера или файл спецификации (Excel / CSV). По каждой строке проверим складские остатки в Шэньчжэне, наличие заводской упаковки и проверенные аналоги — с отгрузкой единой партией.
Запрос успешно отправлен!
Ваш запрос по позиции (ICBOMS) зарегистрирован. Номер заявки:
1. Служба закупок в Шэньчжэне проверяет реальные физические остатки на складах и Data Code.
2. Официальный расчет с ценами, сроками и условиями DDP будет отправлен на в течение 2-24 ч.
Как написано это руководство
Руководство написано службой поставок ICBOMS в Шэньчжэне и выверено по документам производителей и стандартам, на которые ссылается текст. Формулировки ограничены тем, что делает эта служба, и тем, как оценивают деталь — без ориентировочных цен, сроков поставки и остатков: всё это считается по каждой строке отдельно, по факту проверки. Дата последней вычитки стоит в начале страницы.