Микроконтроллер PIC16F877A: ключевые особенности и руководство по выбору для проектов
Микроконтроллер
Источник: Pixabay
Если вы ищете известный микроконтроллер, который быстро справится с вашими проектами, рассмотрите PIC16F877A. Кроме того, устройство удобно в использовании и легко программируется.
Плюс, у него технология памяти FLASH, позволяющая многократно перезаписывать данные. Хотите узнать больше об этом устройстве перед использованием в проектах на PIC или схемах цифровой электроники?
Хорошая новость: мы создали эту статью, чтобы расширить ваши знания о PIC16F877A, объяснив основы, применения, программирование и многое другое.
Начнем!
Микроконтроллер PIC16F877A: введение и особенности
Микроконтроллер PIC16F877A
Источник: Wikimedia Commons
PIC16F877A — легко программируемый и надежный 8-битный CMOS-микроконтроллер, совместимый с различными устройствами, такими как:
- PIC16C7X
- PIC16C5X
- PIC162CXXX
Устройство обладает большой мощностью в корпусе 40 или 44 выводов.
Также микроконтроллер имеет EEPROM для постоянного хранения важных данных: частот приемника, кодов передатчика и т.д.
Интересно, что PIC16F877A экономичен и прост в обращении. Благодаря гибкости он работает там, где вы никогда не использовали микроконтроллеры.
Особенности PIC16F877A
- Работает до 20 МГц.
- Не имеет встроенного генератора.
- Максимальный выходной ток: ~100 мА. Предел тока GPIO: 10 мА.
- Уменьшенный набор из 35 инструкций.
- Доступен в 4 корпусах: 44-пин QFN, 40-пин PDIP, 44-пин TQFP, 44-пин PLCC.
Рабочее напряжение: 4,2–5,5 В. Подача выше 5,5 В может навсегда повредить микроконтроллер.
Другие характеристики в таблице:
| Data EEPROM | 256 байт |
| Тип программной памяти | Flash |
| Коммуникационные периферия | MSSP (SPI/I2C), UART (1), I2C (1), SPI (1) |
| Таймеры | 8-бит (2), 16-бит (1) |
| RAM | 368 байт |
| CPU | 8-бит PIC |
| Кол-во I/O пинов | 33 |
| Скорость CPU (MIPS) | 5 MIPS |
| DAC модуль | Нет |
| Кол-во выводов | 40 |
| Программная память | 14 КБ |
| ADC модуль | 8 каналов, 10 бит |
| Компараторы | 2 |
Распиновка PIC16F877A
Краткая сводка распиновки:
Последовательный порт PIC16F877A
PIC16F877A эффективно работает для передачи данных благодаря последовательному порту. Передающий вывод RC6/Tx/CK обеспечивает последовательную связь и отправку данных. Для приема — принимающий вывод RC7/Rx/DT.
Компилятор для PIC16F877A
44-пин микроконтроллер PIC16F877A
Источник: Flickr
Существует несколько компиляторов для PIC16F877A. Выбрав понравившийся, напишите код и скомпилируйте его. Будет создан hex-файл, который можно загрузить в микроконтроллер с помощью программатора.
Схема мигания LED на PIC16F877A
Схема PIC16F877A
Источник: Pic Learning
Схема показывает правильное подключение LED к выводу. Нужен резистор ограничения тока, так как с одного вывода можно получить макс. 5 мА.
Как сделать:
- В библиотеках Proteus выберите PIC16F877A и остальные компоненты.
- Резистором 330 Ом подключите LED к выводу 16 PIC16F877A.
- Для генерации тактов подключите 4 МГц кварц к входу тактов (pin 13) и выходу (pin 14). По бокам от кварца поставьте два конденсатора (C1 и C2).
- К выводу MCLR подключите подтягивающий резистор, другой конец — к Vdd.
Как выбрать PIC микроконтроллер?
Перед выбором лучшего PIC для проекта ответьте на вопросы:
- Вы эксперт или новичок? Новичкам лучше подходит микроконтроллер с широкими возможностями и хорошей онлайн-поддержкой. Пример: PIC18F4520.
- Какое рабочее напряжение системы? Если 3,3 В — выбирайте 3,3 В микроконтроллер. Если ~5 В — 5-вольтовый.
- Ограничен бюджет и нужен малый размер? Возьмите маленькие 8-пиновые микроконтроллеры.
- Какие модули нужны? Цель — выбрать PIC с поддерживаемым разрешением и каналами ADC, если будете читать много аналоговых напряжений.
- Проект включает протоколы связи (CAN, UART, I2C)? Если да — выберите PIC, поддерживающий нужный протокол.
Как программировать PIC микроконтроллер?
Способы разные. Можно использовать устаревший ассемблер. Или современный метод: получите IDE (например, MPLAB X v3.35), компилятор (например, XC8) для преобразования в HEX, и IPE (MPLAB IPE v3.35) для прошивки. Все программы можно бесплатно скачать с сайта Microchip.
Применения PIC16F877A
- Замена модуля Arduino
- Проекты автоматизации
- Встраиваемые системы
- Робототехника
Заключение
PIC16F877A — один из лучших микроконтроллеров на рынке, удовлетворяющий простоту использования, множественную перезапись и простое программирование.
Идеален для А/Ц приложений в промышленности и автопроме. Отлично подходит для проектов, требующих множественные протоколы связи и I/O интерфейсы.
Что думаете о PIC16F877A? Планируете использовать в следующем проекте? Обращайтесь за помощью.
Промышленные технологии
- Основное руководство по выбору правильного DC разъема питания
- Понимание посадок валов: три типа и как выбрать правильный
- Мастерство фазы Discovery: почему она ведёт к успеху в проектах разработки
- Выбор идеального крана для вашего строительного проекта: практическое руководство
- Сравнение цен CMMS-софта — найдите идеальное решение для вашего бизнеса
- Intel Edison для IoT: обзор, спецификации, breakout-платы, проекты и альтернативы
- Выбор оптимального ЧПУ-режущего инструмента и программирования для пиковой производительности
- Выбор правильных материалов для производства гибких печатных плат: профессиональное руководство
- Точная оценка стоимости стали: пошаговое руководство для вашего проекта
- Почему пескоструйка улучшает проекты кастомной металлофаabricации