Site Loader

Содержание

PIC16F84A схема, распиновка, аналоги, замена, Datasheet



PIC16F84A схема, распиновка, аналоги, замена, Datasheet

Ремонт телевизоров в Новосибирске Устройства на микроконтроллере PIC16F84A

PIC16F84A схема, распиновка, аналоги, замена, Datasheet

Основные характеристики:
Microchip Technology Inc.Microchip Technology Inc.
Корпус DIP-18
Ядро PIC, 8-бит
Flash-память 1.75 КБайт
EEPROM-память 64 Байт
RAM-память 68 Байт
Кол-во каналов АЦП 0
Напряжение питания ядра 2…6 В
Напряжение питания периферии 2…6 В
Рабочая температура -40…85 °C

Высокопроизводительный RISC-процессор:
Всего 35 команд
Все команды исполняются за один такт (200 нс), кроме инструкций перехода, выполняемых за два такта
Скорость работы:
тактовая частота до 20 МГц
минимальная длительность такта 200 нс
14 битовые команды
8 — битовые данные
15 аппаратных регистров специального назначения

8-уровней аппаратный стек
Прямой, косвенный и относительный режимы адресации для данных и инструкций
четыре источника прерывания:
внешний вход RB0/INT
переполнение таймера TMR0
прерывание при изменении сигналов на линии порта B (PORTB)
по завершению записи данных в EEPROM
1000 циклов записи/стирания FLASH памяти программы
1 000 000 циклов записи/стирания памяти данных EEPROM
Период хранения данных EEPROM > 40 лет
Периферия:
13 линий ввода/вывода с индивидуальным контролем направления
Сильноточные схемы для непосредственного управления светодиодными индикаторами:
25 мА макс. вытек. ток
Timer0: 8-разрядный таймер/счетчик с 8-разрядным программируемым предварительным делителем
Особенности микроконтроллера:
Программирование на плате через последовательный порт (ICSPT) (с использованием двух выводов)
Сброс при включении питания (POR)
Таймер включения питания (PWRT) и таймер запуска генератора (OST)
Сброс по падению напряжения питания
Сторожевой таймер (WDT) с собственным встроенным RC-генератором для повышения надежности работы
Программируемая защита кода
Режим экономии энергии (SLEEP)
Выбираемые режимы тактового генератора
Технология КМОП:
Экономичная, высокоскоростная технология КМОП ЭППЗУ/ЭСППЗУ
Полностью статическая архитектура
Широкий рабочий диапазон напряжений питания — от 2,0В до 5,5В
Коммерческий, промышленный и расширенный температурный диапазоны
Низкое потребление энергии:
15 мкА (типичное значение) при 2 В, 32 кГц

PIC16f84A схема, распиновка, аналоги, замена, Datasheet

Схема управления шаговым двигателем на микроконтроллере pic16f84a

Схема управления шаговым двигателем на микроконтроллере pic16f84a

Следующая программа предназначена для управления шаговым двигателем. За основу взята свободно распространяемая программа для PIC12C509, которую написал Слав Славов (Slav Slavov) из Болгарии. Программа переписана для микроконтроллера PIC16F84, добавлен фрагмент кода, фиксирующий ротор двигателя после включения питания. Шаговые двигатели имеют различные параметры, и характеризуются количеством шагов на 360°, количеством фаз (2 или 4) и т.д. Существуют двигатели с точностью 100 шагов/рад, 200 шагов/рад и другим количеством шагов на один радиан, но принцип работы у всех одинаков.

Наша программа предназначена для управления 4-фазцым двигателем, для подключения двигателя понадобится пять проводов. Двигатель может иметь либо пять выводов, если общие выводы каждой пары обмоток соединены вместе, либо шесть, если общие выводы пар выведены раздельно. Для экспериментов можно разобрать старый дисковод 5,25″ и взять моторчик, перемещающий головку. При помощи тестера, или разобрав мотор, определите разводку выводов. На рисунке 3-7 показана схема включения мотора. LI, L2 и L3, L4 представляют собой пары рабочих обмоток, имеющих по одному общему выводу. Эти пары абсолютно равнозначны и, если поменять их местами, изменится только направление вращения. Направление вращения также изменится, если поменять местами выводы у одной пары.

Чтобы мотор начал вращаться (циклически перемещаться по шагам) надо организовать на его выводах определенную последовательность изменения напряжения:

Таким образом, чтобы мотор начал вращаться по часовой стрелке, надо, чтобы уровни на соответствующих выводах микроконтроллера изменялись в соответствии с порядком шагов 1, 2, 3, 4, 1. Для обратного вращения порядок следования шагов должен быть обратным : 4, 3, 2,1,4.

Отличительной особенностью шагового двигателя является то, что в промежутке между шагами его ротор неподвижен и зафиксирован магнитным полем катушек. Ротор может сколь угодно долго находитсья в неподвижном состоянии. Потребляемый ток почти не зависит от того, вращается ротор, или нет.

Схема включения микроконтроллера показана на рис. 1, а транзисторные ключи, управляющие током в обмотках, на рис. 2.

Рис. 1. Схема для управления шаговым двигателем

Рис. 2. Схема включения шагового двигателя

При нажатии кнопок L и R мотор вращается соответственно либо против часовой стрелки, либо по часовой стрелке. Транзисторы работают в режиме насыщения и практически не нагреваются, поэтому им не нужны радиаторы. Защитные диоды предохраняют транзисторы от пробоя выбросами обратного напряжения на обмотках, которые возникают в момент отключения тока в обмотке. Вместо транзисторов можно использовать очень распространенную микросхему, набор

ключей ULN2003A. Она может оказаться в том же дисководе, из которого вы вынули двигатель. Микросхема имеет встроенные защитные диоды.

Программа циклически опрашивает состояние кнопок и, если одна из кнопок нажата, выполняет процедуру перемещения ротора на один шаг. Если нажаты две кнопки одновременно, то кнопка вращения вправо имеет приоритет. Поскольку опрос кнопок происходит быстро, то при нажатии кнопки двигатель будет вращаться, пока вы не отпустите кнопку.

Имейте в виду, что обычные шаговые двигатели имеют относительно небольшую скорость вращения. Если менять состояние обмоток слишком часто, то двигатель может не вращаться. Поэтому в программе дважды вызывается подпрограмма задержки между обращениями к кнопкам.

Поэкспериментируйте с имеющимся у вас двигателем, изменяя величину задержки в базовом значении del программы. Программа, текст которой приведен в листинге 6, очень проста и ее работа вполне понятна из комментариев. Если будете изменять схему и подключите кнопки к порту А, не забудьте про внешние подтягивающие резисторы. Можете использовать программу обработки сенсоров из предыдущего примера.

Источник: В.С.Яценко. Микроконтроллеры MicroCHIP. Практическое руководство. Стр.249-253

Источник

PIC-контроллер управляет электродвигателем

В этой подборке рассказывается о двух конструкциях на PIC-контроллере, описанных на веб-сайте японского радиолюбителя Seiichi Inoue. Первая из них предназначена для управления частотой вращения электродвигателя постоянного тока, вторая — шагового электродвигателя.

Принципиальная схема регулятора частоты вращения вала электродвигателя постоянного тока показана на рис. 1

Устройство выполнено на микроконтроллере (МК) PIC16F873. Его тактовую частоту (10 МГц) задает кварцевый резонатор ZQ1. Питание на основной электродвигатель М1 подается через мощный полевой транзистор VT2, на затвор которого через согласующий каскад на транзисторе VT1 поступают прямоугольные импульсы с выхода ССР1 микроконтроллера. Частота импульсов постоянна, а скважность можно изменять, регулируя, таким образом, частоту вращения ротора двигателя.

Вал электродвигателя М1 механически (через зубчатую двухступенчатую передачу 1:1) связан со вторым электродвигателем, который используется в качестве генератора. Вырабатываемое им напряжение через диодный мост VD1 и делитель напряжения R1 — R3 поступает на вход AN0 аналого-цифрового преобразователя, входящего в состав МК. Стабилитрон VD2 с напряжением стабилизации 5 В защищает этот вход от повреждения, конденсатор С5 сглаживает пульсации выпрямленного напряжения.

Требуемую частоту вращения устанавливают переменным резистором R2 с функциональной характеристикой А.

Рост напряжения, поступающего на вход AN0, свидетельствует о том, что частота вращения вала двигателя увеличивается. В ответ на это МК уменьшает длительность импульсов на выходе ССР1, и частота вращения возвращается к прежнему значению. При уменьшении напряжения, вырабатываемого двигателем-генератором, длительность импульсов возрастает и частота вращения повышается.

Линейка светодиодов HL1 — HL8 позволяет визуально контролировать частоту вращения вала двигателя: число светящихся светодиодов растет с ее увеличением.

Питается устройство стабилизированным напряжением 5 В, снимаемым с выхода интегрального стабилизатора DA1. На двигатель М1 поступает нестабилизированное напряжение от отдельного источника. Регулятор собран на макетной плате размерами 70×45 мм.

Устройства управления шаговым двигателем обычно содержат сдвиговые регистры, формирующие необходимую последовательность импульсов, поступающих на обмотки.

Предлагаемое устройство на PIC-контроллере позволяет также изменять направление и регулировать частоту вращения ротора. Описание конструкции, чертеж монтажной платы и комментированные исходные коды программы микроконтроллера размещены по этой ссылке

Принципиальная схема устройства изображена на рис. 2.

Основной служит МК PIC16F84A. Тактовую частоту (4 МГц) задает кварцевый резонатор ZQ1. На элементах R8-R10, С6 и транзисторе VT5 собран генератор, частоту которого можно плавно изменять переменным резистором R9 с функциональной характеристикой А. Напряжение с конденсатора С6 поступает на вход RB5 МК DD1. После того как оно превысит пороговое, на выходе RB7 появляется напряжение высокого уровня. Открывшийся транзистор VT5 разряжает конденсатор, после чего цикл повторяется.

При перемещении движка резистора R9 из одного крайнего положения в другое частота вращения двигателя М1 изменяется от 27 до 128 мин-1. Следует учесть, что при увеличении частоты вращения снижается момент на валу двигателя. Устройство не имеет обратной связи, поэтому частота вращения зависит как от сопротивления введенной части резистора R9, так и от нагрузки на валу.

Выходы RA0 — RA3 МК через ключи, выполненные на составных транзисторах VT1 — VT4, коммутируют напряжения на обмотках шагового двигателя. Диоды VD1 — VD4 защищают транзисторы от пробоя импульсами напряжения, возникающими в момент их закрывания.

К первым трем разрядам порта RB (RB0 — RB2) МК подключены кнопки SB1 — SB3, с помощью которых изменяют направление вращения вала двигателя и останавливают его.

Стабилизаторы 78L05 и 7805 заменимы отечественными КР142ЕН5А (В), транзистор 2SC1815 — любым из серии КТ3102, стабилитрон RD-5A — отечественным КС147А. Транзисторы VT1-VT4 (см. рис. 2) должны выдерживать ток обмоток двигатели и иметь коэффициент передачи тока базы около 4000. Выпрямительный мост VD1 (см. рис. 1) — КЦ407А или собранный из маломощных кремниевых диодов. Светодиоды HL1 — HL8 — любые из серии АЛ307.

C этой схемой также часто просматривают:

ГЕНЕРАТОР ИМПУЛЬСОВ НА PIC-КОНТРОЛЛЕРЕ
Контроллер шагового двигателя
Как сделать простой программатор для PIC-ов и AVR-ов
Универсальный велосипедный путевой прибор на PIC контроллере
Передача отладочной информации из PIC-контроллера через COM-порт
PIC-контроллер в автомобильных часах
LCD-термометр на микроконтроллере
DDS генератор на микроконтроллере
Светодиодные «наперстки» на микроконтроллере

Источник

Контроллер шагового двигателя

В радиолюбительской литературе было опубликовано много описаний устройств управления шаговыми двигателями, я решил предложить ещё одно, имеющее ряд отличий и достоинств. Предлагаемый контроллер биполярного шагового двигателя построен из небольшого числа легкодоступных дешёвых деталей, имеет маленький потребляемый ток и может быть адаптирован для применения в различных устройствах.

Применение двухполярного питания выходных электронных ключей дало возможность вдвое уменьшить их число и получить режим остановки двигателя, в котором через его обмотки не течёт ток. Управляющая программа обеспечивает фиксированную длительность рабочих импульсов при любой частоте шагов, что избавило ключевые транзисторы от излишнего нагрева. Использование для управления ключами оптронов даёт развязку по питанию, возможность независимого питания узла управления и ключей, коммутирующих обмотки двигателя.

Схема контроллера изображена на рис. 1. Узел управления построен на микроконтроллере DD1 (PIC16F84A-04/P). Назначение кнопок управления следующее: SB1 — вращение по часовой стрелке; SB2 — вращение против часовой стрелки; SB3 — увеличение частоты шагов; SB4 — уменьшение частоты шагов; SB5 — стоп. Значения напряжения питания шагового двигателя +Uшд и -Uшд зависят от его типа, но не должны по абсолютному значению превышать 27 В — половины допустимого для фототранзисторов применённых оптронов напряжения коллектор-эмиттер.

Рис. 1. Схема контроллера

Чертёж печатной платы устройства и размещение деталей на ней показаны на рис. 2. Для микроконтроллера на плате устанавливают панель, в которую его вставляют уже запрограммированным.

Рис. 2. Чертёж печатной платы контроллера и размещение деталей на ней

Исходный текст программы микроконтроллера содержит все необходимые комментарии, и при необходимости её можно изменять, например, ввести полушаговый режим управления двигателем или, используя свободные порты микроконтроллера, добавить конечные выключатели для ограничения сектора вращения, или задавать нужное число шагов. Стоит отметить, что необходимая очерёдность открывания транзисторов VT1-VT4 реализована в программе с учётом трассировки печатной платы.

Правильно собранное устройство не требует налаживания. В нём в качестве VT1-VT4 можно использовать любые комплементарные пары транзисторов средней мощности, например, серий КТ814 и КТ815, КТ816 и КТ817, КТ972 и КТ973 или аналогичные импортные. Подходящие транзисторные оптроны можно найти в любом импульсном блоке питания, где их широко используют.

Файл печатной платы в формате Sprint Layout 6.0 и программа микроконтроллера можно скачать здесь.

Автор: Н. Каменев, г. Москва

Мнения читателей

Нет комментариев. Ваш комментарий будет первый.

Вы можете оставить свой комментарий, мнение или вопрос по приведенному выше материалу:

Источник

Управление шаговым двигателем с помощью микроконтроллера.

После первого запуска стало понятно, что хотели получить одно, а получили другое, после того как транзистор закрывался, двигатель продолжал вращаться ещё не один оборот, оно и понятно, для того чтобы вал остановился, энергия, которую он накопил пока вращался, должна быть израсходована.

Вот мы и подошли к одному из основных преимуществ шагового двигателя — возможность точного позиционирования.

Шаговые двигатели бывают трёх основных типов:

  • двигатели с переменным магнитным сопротивлением
  • двигатели с постоянными магнитами
  • гибридные двигатели

В двигателях с переменным магнитным сопротивлением, ротор изготовлен из магнитомягкого материала, то есть материала, который способен быстро намагничиваться и быстро терять магнитные свойства при снятии магнитного поля. Вращающий момент создаётся магнитными потоками статора, причём ротор всегда становится так, чтобы магнитный поток создаваемый статором замкнулся. Для того чтобы ротор повернулся надо, выключить ток в одной обмотке и включить в другой обмотке.

Гибридные двигатели обладают преимуществами вышеописанных двигателей и лучшими характеристиками: меньшей величиной шага, большим моментом, большей скоростью и как следствие стоят дороже.

Перейдём к практике, для эксперимента возьмём шаговый двигатель MITSUMI M42SP-5 с шагом 7.5°, изображённый на картинке.

Из таблицы понятно, что такие двигатели бывают двух типов:

  • 12 вольтовые с сопротивлением обмотки 50 Ом
  • 24 вольтовые с сопротивлением обмотки 120 Ом

Схема двигателя изображена на картинке ниже.

Из двигателя выходит 5 проводов: 4 фазы и один общий. Общий провод можно найти с помощью мультиметра, сопротивление между ним и оставшимися 4 проводами равно сопротивлению фазы, в нашем случае 50 Ом.

Как писалось выше, необходим посредник, который примет от микроконтроллера 20mA и отдаст двигателю 259mA. Можно как раньше взять полевой транзистор, но есть одно, но фаз здесь целых четыре штуки и для этого случая есть более простое решение — это использовать микросхему ULN2003.

Транзистор Дарлингтона или пара Дарлингтона, представляет собой два соединённых транзистора, его отличительной особенностью является высокий коэффициент усиления, который равен произведению коэффициентов усиления каждого из транзисторов(βс = β1 ∙ β2).

Вращать двигатель можно, подавая питание по очереди на обмотки, при этом в любой момент времени включена лишь одна обмотка, в этом случае двигатель будет работать в режиме шага, то есть при одном переключении обмоток будет поворачиваться на 7.5°.

Для удобства управления можно создать массив в котором номер элемента массива будет обозначать номер шага, а значение элемента массива — какие обмотки должны быть включены.

Если передавать последовательно элементы этого массива в порт микроконтроллера, двигатель будет работать в режиме полушага, если через один — в режиме полного шага. Для передачи значений в порт удобно использовать прерывание от таймера по переполнению, таким образом, изменяя время между прерываниями, мы можем регулировать скорость вращения двигателя.

Источник

Расчет принципиальной схемы устройства на базе микроконтроллера PIC16F84A


⇐ ПредыдущаяСтр 6 из 7Следующая ⇒

 

MPLAB — интегрированная среда разработки, представляющая собой набор программных продуктов, предназначенная для облегчения процесса создания, редактирования и отладки программ для микроконтроллеров семейства PIC, производимых компанией Microchip Technology. Среда разработки состоит из отдельных приложений, связанных друг с другом и включает в себя компилятор с языка ассемблер, текстовый редактор, программный симулятор и средства работы над проектами, также среда позволяет использовать компилятор с языка C. MPLAB работает под управлением операционных систем семейства Windows. Текущая версия среды разработки — MPLAB IDE v8 (8.92).

MPLAB состоит из следующих основных модулей:

— MPLAB Project Manager — средства работы на проектами;

— MPLAB-SIM Software Simulator — моделирование поведения программы с целью поиска и удаления ошибок в алгоритме;

— MPLAB Editor — полноценный текстовый редактор файлов ASM;

— MPASM Universal Macro Assembler — компилятор с ассемблера, компоновщик;

— MPLAB-ICE 2000 — моделирование поведения программы в реальном времени.

Assembler — машинно-ориентированный язык низкого уровня с командами, не всегда соответствующими командам машины, который может обеспечить дополнительные возможности вроде макрокоманд; автокод, расширенный конструкциями языков программирования высокого уровня, такими как выражения, макрокоманды, средства обеспечения модульности программ.
Автокод — язык программирования, предложения которого по своей структуре в основном подобны командам и обрабатываемым данным конкретного машинного языка.

Язык ассемблера — система обозначений, используемая для представления в удобочитаемой форме программ, записанных в машинном коде. Язык ассемблера позволяет программисту пользоваться алфавитными мнемоническими кодами операций, по своему усмотрению присваивать символические имена регистрам ЭВМ и памяти, а также задавать удобные для себя схемы адресации (например, индексную или косвенную). Кроме того, он позволяет использовать различные системы счисления (например, десятичную или шестнадцатеричную) для представления числовых констант и даёт возможность помечать строки программы метками с символическими именами с тем, чтобы к ним можно было обращаться (по именам, а не по адресам) из других частей программы (например, для передачи управления).

Перевод программы на языке ассемблера в исполнимый машинный код (вычисление выражений, раскрытие макрокоманд, замена мнемоник собственно машинными кодами и символьных адресов на абсолютные или относительные адреса) производится ассемблером — программой-транслятором, которая и дала языку ассемблера его название.

В расчетной части необходимо произвести расчет и обоснование электронных компонентов, подключенных к микроконтроллеру.

Для работы МК необходимо подать напряжение в диапазоне 9-12В на стабилизатор КР142ЕН5А, который понижает напряжение до фиксированного значения 5В. Конденсатор С1 емкостью 470мкФ сглаживает пульсации напряжения, а С4 — конденсатор развязки емкостью 0.1 мкФ между шинами питания Vdd и земли GND, так как при переключении больших выходных токов в схеме могут возникать значительные импульсные помехи. Схема питания PICMicro представлена на рисунке 2.2.1.

Рисунок 2.2.1 – Схема питания PICMicro

 

Светодиод надо подключать через резистор. Прямое сопротивление светодиода очень мало, если не ограничивать ток через него, то он просто может сгореть. Либо, что вероятней, пожечь вывод микроконтроллера. А для нормального свечения обычному светодиоду надо около 3…15мА.

Напряжение на выводе МК около 5 вольт, падение напряжения на светодиоде около 2 вольт.

Для подключения к МК будут использоваться 3 светодиода красного цвета АЛ112А с параметрами:

Uпр= 2В Iпр = 10mA

Таким образом, напряжение которое должен взять на себя ограничительный резистор будет 5-2= 3В.

Ток 10мА

По закону Ома рассчитаем номинал ограничительного резистора:

R=U/I= 3/10 = 300Ом.

R1=R2=R3 = 300Ом

Исходя из расчетов для резисторов R1-8 должны быть по 300 Ом.

Разработанная схема с номиналами компонентов приведена на рисунке 2.2.3.

Рисунок 2.2.2 – Принципиальная схема устройства разработанная в среде Splan.

 

Рисунок 2.2.3 – Принципиальная схема устройства разработанная в среде DipTrace.

 


Рекомендуемые страницы:

Microchip Technology — PIC16F84A-20E/SS Интернет-дистрибьютор

Введение

PIC16F84A-20E/SS — это IC MCU 8BIT 1.75KB FLASH 20SSOP, это часть серии PIC® 16F. они предназначены для работы как Встраиваемые микроконтроллеры.

PIC16F84A-20E/SS с контактными деталями производства Microchip Technology. PIC16F84A-20E/SS доступен в пакете 20-SSOP, он является частью электронного компонента Chips. Включает серию PIC® 16F. они предназначены для работы как Встраиваемые микроконтроллеры. Это с рабочей температурой -40°C ~ 125°C (TA).

PIC16F84A-20E/SS с оригинальным запасом производства Microchip Technology. PIC16F84A-20E/SS доступен в пакете 20-SSOP. Как правило, микросхемы IC предлагают функции стиля монтажа, такие как SMD / SMT, корпус пакета PIC16F84A-20E/SS предназначен для работы в 20-SSOP (0.209″, 5.30mm Width), его рабочая температура составляет -40°C ~ 125°C (TA).
PIC16F84A-20E/SS доступен в пакете 20-SSOP (0.209″, 5.30mm Width), является частью Встраиваемые микроконтроллеры и относится к Интегральные схемы (ИС).

PIC16F84A-20E/SS с моделями EDA / CAD производства Microchip Technology. PIC16F84A-20E/SS доступен в 20-SSOP
Пакет, является частью Интегральные схемы (ИС).
PIC16F84A-20E/SS — это Встраиваемые микроконтроллеры с пакетом 20-SSOP (0.209″, 5.30mm Width), изготовленной Microchip Technology. PIC16F84A-20E/SS доступен в пакете 20-SSOP, является частью IC MCU 8BIT 1.75KB FLASH 20SSOP.

Вопросы и ответы

Q: Это это мой первый заказ из Интернета, как я могу заказать эту деталь PIC16F84A-20E/SS?

A: Пожалуйста отправьте предложение или отправьте нам электронное письмо, наш отдел продаж поможет вам как сделать.

Q: Как платить деньги?

О: Обычно мы принимаем банковский перевод, PayPal, кредитную карту и Western Union.

Q: Есть детали PIC16F84A-20E/SS с гарантией?

A: с Гарантия качества не менее 90 дней для каждого заказа. Просто напишите нам, если вы столкнетесь любая проблема качества.

Q: делать вы поддерживаете таблицу данных PIC16F84A-20E/SS или модели САПР?

A: Да, Наш технический инженер расскажет, какие таблицы или модели САПР у нас есть.

В: Является ли эта деталь оригинальной заводской упаковкой?

А: Да, как правило, если вы заказываете детали с SPQ (стандартная упаковка), мы отправим Детали в заводской упаковке. Если вы заказываете не полную упаковку, мы отправляйте детали в стандартной вакуумной упаковке нашей компании.

Вопрос: Можете ли вы доставить детали PIC16F84A-20E/SS напрямую на наш завод OEM.

A: Да, мы Могу отправить детали по адресу вашего корабля.

Q: Я просто нужен один кусок PIC16F84A-20E/SS, могу ли я заказать?

У него Зависит от MOQ PIC16F84A-20E/SS, большинство деталей мы можем поддержать заказ образца.

Q: Как Долго Могу ли я получить PIC16F84A-20E/SS после оплаты?

А: Мы отправляем заказы через FedEx, DHL или UPS, обычно это занимает 2 или 5 дней, чтобы прибыть к вам в руки.

МИКРОКОНТРОЛЛЕРЫ НАЧИНАЮЩИМ

МИКРОКОНТРОЛЛЕРЫ НАЧИНАЮЩИМ

Светодиодное информационное табло PIC16F84A, PIC16F628

В наше время трудно переоценить роль всевозможных видов рекламы, таких, как телевидение, плакаты, разные виды информационных табло, типа бегущей рекламной строки и т.д. Данная разработка является всего лишь упрощенным вариантом информационной бегущей строки, которую можно с легкостью повторить в любительских условиях. Такое информационное табло может с успехом применяться в качестве броской вывески над любой дверью аудиторий, классов, кабинетов и т.д. Изучение микроконтроллерной техники развивает навыки элементарного программирования на аппаратном уровне, а в дальнейшем и способность решать более сложные радиотехнические задачи.

  1. Бегущая строка
  2. Автомат световых эффектов
  3. Макетная плата для PIC16F84, PIC16F628

Включение и режим работы микроконтроллера соответствует типовому включению PIC16F84. На страницах журнала «РадиоАматор» публиковали обучающие статьи по ПИК микроконтроллерам, поэтому заострять детальное внимание на элементах обвязки и его включении в схеме нет смысла. Как видно из принципиальной схемы, в микроконтроллере задействованы все (RB) порты, их 8. Как раз хватает для того чтобы зажечь 8 светодиодов если это просто эффект бегущего огня или 8, 16 букв если это информационное табло. В данной разработке было реализовано информационное табло со словом (РАДИОЭЛЕКТРОНИКА) где зажигались по две буквы, что составило 8 каналов.

Каждая буква была составлена примерно из двадцати светодиодов и имела размер приблизительно; высота 80мм., ширина в зависимости от выбранного шрифта. Шаблон для любого слова удобно проектировать в программе CorelDraw, где можно выбрать оптимальный шрифт и выложить вдоль контуров окружности, которые должны соответствовать диаметру применяемых светодиодов. Таким образом, мы получим готовый шаблон выбранного слова, для дальнейшего изготовления экрана информационного табло. Так же нетрудно посчитать общее количество светодиодов требующихся для реализации задуманного эффекта. В данном табло применялись самые дешевые 5мм. диоды, красного свечения их примерно 380 шт.

Описание схемы.

Схема построена на основе микроконтроллера PIC16F84 но как было выше сказано можно применить и PIC16F628, 628A. Исходный файл и файл прошивки для PIC16F84 (Blink.asm), (Blink.hex), для PIC16F628, 628A (Blink_2.asm), (Blink_2.hex). Для питания схемы подойдет любой понижающий трансформатор, у которого на вторичной обмотке напряжение может быть от 8 до 15в. В данной разработке был применен трансформатор мощностью 45Вт. с напряжением на вторичной обмотке 9в, потребление тока диодами составило приблизительно 1,8А, на кана Как видно из схемы, диоды запитываються прямо от диодного моста VD1, поэтому напряжение на вторичной обмотке и мощность трансформатора выбирается в зависимости от применяемых светодиодов и их количества. Когда загораются все светодиоды, потребление тока возрастает, поэтому трансформатор и диодный мост лучше взять с запасом по мощности. Для суперярких светодиодов и при большом количестве диодный мост должен быть более мощным, например КЦ410 и др. Транзисторные ключи VT1-VT8, могут быть любые, КТ 815, КТ817 и др., в зависимости от потребляемого тока применяемых светодиодов и их количества. Резисторы R2 — R9 защищают порты микроконтроллера от перегрузки по току, мощность этих резисторов может быть 0.125, 0.25Вт. Резисторы R10, R17 являются токоограничительными резисторами для светодиодов и подбираются эксперементально, в зависимости от применяемых светодиодов и их количества на один канал. Мощность этих резисторов варьируется от 0.5 до 2Вт. Печатная плата разрабатывалась в PCB редакторе SprintLayout 4.0, рисунок на пластину одностороннего стеклотекстолита наносился с помощью лазерно утюговой технологии, о которой можно найти информацию в разделе сайта «Радиолюбительские технологии». Размеры печатной платы 80\70, файл в формате (Lay) прилагается (файл StingPIC16F84.lay). Налаживание схемы заключается в подборе величины напряжения на вторичной обмотке трансформатора и номинальной мощности. Так же мощности и номиналов резисторов R10, R17. При заведомо запрограммированном и исправном микроконтроллере схема работает сразу при подключении питания. Как дополнительная информация, нужно сказать, что данная конструкция была разработана на базе кружка радиоэлектроники, преподавателем которого я и являюсь. Так же описание даной конструкции, можно найти на страницах журнала «Радиоаматор № 4 — 2007г».

Макетная плата для PIC16F84, PIC16F628

Печатная плата

На схеме одна панелька под PIC, другая под микросхему дешифратора К555ИД10. Схему не привожу т. к. все используется в типовом включении в соответствии с datasheet на PIC16F84. Плата в формате Sprint_Layout_5

Вверх | Главная

Обсудить на форуме

Доводчик стёкол автомобиля на микроконтроллере PIC16F84A — Статьи по автоэлектрике — Статьи


Сигнальный провод с выхода блока охранной сигнализации, управляющий  центральным замком для отпирания дверей, также подключается к одному из двух входов прерывания работы доводчика (конт.5 и конт.2 разъёма Х2), активным сигналом для каждого из которых соответственно является положительный или отрицательный импульс относительно общего провода.

 Подключение сигнального провода на разблокировку центрального замка автомобиля к соответствующему входу прерывания работы доводчика позволит в любой момент прекратить работу механизмов  стеклоподъёмников. Например, в случае,  если в проёме окна оказался  ребёнок, оставленный в автомобиле.  Также запретом для начала работы механизмов стеклоподъёмников могут служить следующие сигналы, —  от замка зажигания, ключ в первом положении («АСС» – аккумулятор) и от концевых выключателей дверей. При открытых дверях сигнал, поступающий  с их концевых выключателей на соответствующий вход доводчика должен быть отрицательной полярности относительно общего провода. Для использования этой функции сигнальные провода от дверей и замка зажигания подключаются к  соответствующим контактам доводчика. Для подключения функции подсветки замка зажигания необходимо подключить сигнальный провод от дверей к конт.1 разъёма Х2, а также подключить дополнительные элементы к доводчику в соответствии со схемой изображённой на рис.3.

 Сигналом для отключения каждого электродвигателя стеклоподъёмников служит прекращение коллекторного шума электродвигателя в бортовой сети автомобиля.
На фото показана осциллограмма этого шума, измеренная осциллографом (пределы измерения амплитуды сигнала -10мкВ/дел и временного интервала -5мс/дел) на зажимах аккумуляторной батареи автомобиля. 

Осцилограмма шума коллекторного двигателя представлена на рисунке:

Также условием отключения электродвигателей является превышение установленного времени его непрерывной работы — 9 с. 
Алгоритм работы устройства

 Алгоритм работы устройства следующий: при поступлении сигнала  от блока охранной сигнализации на  запирание дверей, через контакты К1.1 реле К1 на электродвигатель стеклоподъёмника двери водителя поступает питание на время  0,75 с, из которых, в течение последних 0,25 с, микроконтроллер DD2 измеряет частоту сигнала коллекторного шума электродвигателя усиленного элементом DD1.5.  Резистор R2 в цепи обратной связи элемента переводит его транзисторы на линейный участок входной характеристики. Через буфер на элементе DD1.2 усиленный сигнал поступает на вход микроконтроллера DD2, настроенного как вход импульсов  таймера – счетчика.  Если частота шума превышает 480 Гц, т.е. электродвигатель работает,  реле питающее электродвигатель остаётся подключенным. 
 Если же электродвигатель остановится, т.е. стекло поднято до предела, реле К1 отпускает якорь, электродвигатель отключается и срабатывает реле К2, алгоритм работы повторяется, и так до тех пор, пока микроконтроллер не проверит состояние стёкол всех дверей и люка. Иначе говоря, на каждый электродвигатель стеклоподъёмника сначала питание подаётся на время 0,75с.  Задержка в 0,5 с перед началом измерения частоты шума сделана для того, чтобы электродвигатель стеклоподъёмника после пуска вышел на устойчивый режим работы. Если электродвигатель не работает (стеклоподъёмник поднят до предела и коллекторного шума электродвигателя в бортовой сети питания автомобиля нет), то соответствующее реле отключает поданное на него напряжение питания и процедура повторяется уже со следующим электродвигателем. Время работы каждого электродвигателя стеклоподъёмника в любом случае не будет превышать  9 с.  

 При снятии автомобиля с охранной сигнализации, сигнал на разблокировку замков дверей с  блока охранной сигнализации,  поступает также на вход прерывания работы доводчика. После чего микроконтроллер DD2 переходит на выполнение подпрограммы прерывания, которая в свою очередь даёт команду остановить электродвигатель в случае его работы. Затем программа переходит в режим ожидания нового импульса на закрытие стёкол. 

 Как  видно из схемы (рис.1) к разъёму Х1 подключается источник питания. Так как питание  двигателей стеклоподъёмников в момент работы доводчика осуществляется через этот разъём, то необходимо устройство подключать к бортовой сети через предохранитель на 20 А (установлен до разъёма Х1),  при  этом учитывая, что сечение  медных проводов питания должно быть не менее 1,5 кв.мм.  Применение предохранителя на такой ток обусловлено тем, что в рабочем режиме каждый из двигателей  потребляет значительный ток (до 10 А),  учитывается также бросок тока при  включении двигателя.  Контакты разъёма Х3 подсоединяются в разрыв проводов, питающих электродвигатели стеклоподъёмников. Их необходимо подключать строго по схеме.  Подвижный контакт реле к электродвигателю, а его замкнутый контакт – к кнопке. Классическая схема управления двигателями стеклоподъёмников показана на рис.2. 

Схема подключения к двигателю стеклоподъёмника представлена на рисунке:

Если же схема управления стеклоподъёмниками автомобиля такова, что при нажатии на штатную кнопку стеклоподъёмника через неё на электродвигатель поступает минусовой сигнал источника питания, то разомкнутый контакт каждого исполнительного реле необходимо подключить к минусу бортовой сети автомобиля.
  
 Линия RB1 (выв. 7) микроконтроллера DD2 предназначена для управления электродвигателем люка (опция). Для её использования необходимо дополнить схему доводчика дополнительным транзистором и реле, включив их по такой же схеме, как и другие исполнительные реле.  

 При условии подключения к датчику дверей линия RA1 (выв. 18) микроконтроллера может быть использована  для подсветки замка зажигания при открывании дверей и в течение 6 с после их закрывания. Схема включения дополнительных элементов в этом случае показана на рис.3.  Вместо лампы накаливания HL1, не устанавливая транзистор, можно использовать подходящий по цвету и яркости светодиод, включив его анодом к точке подключения базы и катодом к точке подключения эммитера.  Для получения  достаточной яркости, номинал резистора R1 (рис.3) в этом случае, возможно, придётся снизить до необходимой величины.

Схема подсветки замка зажигания автомобиля представлена на рисунке:

 При регулировке устройства на автомобиле, возможно,  потребуется подборка резистора R2. При указанных на схеме номиналах элементов цепи С1R1R2 устройство, установленное на автомобиль «Хонда» работает чётко,  без каких-либо ложных срабатываний. 
Думаю, будет не лишней установка тумблера, позволяющего при необходимости отключить доводчик, к примеру,  зимой, когда стёкла автомобиля практически всегда закрыты. Функция подсветки замка зажигания в этом случае также будет отключена. Если же  эта функция используется и необходима постоянно, то установленный тумблер должен отключать не питание доводчика, а разрывать сигнальный провод, поступающий на задействованный контакт 3 или 6 разъёма Х2.

 В устройстве использован  микроконтроллер  PIC16F84A-04I/P, стабилизатор 78L05 (можно использовать любой пятивольтный стабилизатор с учётом разницы в цоколёвке). В качестве  исполнительных устройств использованы реле BS-115c фирмы «Bestar». Возможна замена на отечественные автомобильные реле (например, 711.3747-02) с корректировкой размеров печатной платы и её рисунка. Микросхема  К561ЛН2 заменима на CD4049. Входы этих микросхем способны работать с напряжением, превышающим напряжение питания микросхемы (в нашем случае – 5 В). Конденсаторы С4 и С5 устанавливаются со стороны печати. Стабилитрон   1N4734A заменим  КС156А, а стабилитрон 1N4744A можно заменить  отечественным КС515А. Стабилитрон VD5 предназначен для ограничения выбросов напряжения в бортовой сети.  Стабилитрон VD4 предназначен для защиты элементов схемы при непредвиденном повреждении стабилизатора DA1. При нормальном режиме работы эти стабилитроны закрыты. Размеры платы 55мм х100мм. Доводчик помещён в пластмассовую коробку, обёрнутую для защиты от влаги скотчем, и  установлен под обшивкой  водительской двери. Плата закреплена в коробке с помощью термоклея. 

Печатная плата:

Дублирующий электронный счетчик показаний использования воды (PIC16F84A)

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

Его же можно применить и для других целей, например, как счётчик витков, деталей на конвейере или подсчёта посетителей.

Неудобство считывания показаний механических счётчиков воды привело меня к решению создать их электронный повторитель. Это устройство я решил собрать на имеющихся у меня микроконтроллере PIC16F84A-04/P и двухстрочном ЖКИ MT-16S2D.

Принципиальная схема

Схема повторителя показана на рис. 1.

Рис. 1. Принципиальная схема дублирующего счетчика расхода хлодной и горячей воды, построен на PIC16F84A-04.

Бытовые счётчики холодной и горячей воды, имеющие в названии индекс И, уже оборудованы герконом, замыкающимся и размыкающимся при прохождении через счётчик определённой порции воды. Например, у счётчиков СВ-15ИХ и СВ-15ИГ это происходит через каждые десять литров.

Последовательно с герконом и параллельно ему в каждом датчике установлены резисторы, поэтому сопротивление контрольной цепи при разомкнутом герконе — около 6 кОм, а при замкнутом — около 1 кОм. Это сделано для того, чтобы при дистанционном считывании показаний можно было автоматически определить обрыв или короткое замыкание соединительной линии.

В рассматриваемом приборе возможность автоматического контроля неисправности не использована. Но чтобы обеспечить надёжную фиксацию микроконтроллером состояния герконов, пришлось включить последовательно в их цепи резисторы R1 и R2.

Так как имеющиеся в микроконтроллере резисторы, соединяющие его входы с плюсом питания, имеют значительный разброс сопротивления, резисторы R1 и R2, возможно, придётся подобрать.

Детали и печатная плата

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

Накопленные значения выводятся на индикатор в кубических метрах (рис. 2).

Рис. 2. Внешний вид индикатора дублирующего счетчика на микроконтроллере.

Предусмотрены также кнопки (SB1, SB2 — для счётчика холодной воды и SB3, SB4 — для счётчика горячей воды), нажатиями на которые в начале работы повторителя добиваются совпадения его показаний с показаниями механических счётчиков.

Питают прибор от батареи GB1 из четырёх гальванических элементов типоразмера АА. Он потребляет от них ток 2,5 мА.

Работоспособность микроконтроллера, согласно его паспортным данным, сохраняется при напряжении питания от 3 до 6 В. Одного комплекта элементов хватает на два-три года непрерывной работы (без использования подсветки индикатора). Накопленного в конденсаторе С4 заряда достаточно, чтобы сохранить работоспособность прибора в течение 30 с после отключения батареи питания.

Этого времени вполне достаточно для замены её израсходованных элементов. Питать прибор можно и от любого источника напряжения 5 В. Повторитель собран на односторонней печатной плате, чертёж которой показан на рис. 3.

Рис. 3. Печатная плата для счетчика на микроконтроллере.

Её длина и ширина совпадают с размерами использованного ЖКИ, для подключения которого на ней предусмотрен разъём. Кнопки управления можно установить на плату или вынести их на лицевую панель корпуса прибора.

Собранное без ошибок устройство начинает работать сразу. Нужно лишь отрегулировать подстроенным резистором R4 контрастность изображения на его индикаторе, а кнопками SB1-SB4 установить на нём значения, равные показаниям счётчиков воды на данный момент.

Прошивка для МК — Скачать.

Н. Камнев, г. Москва. Р-12-2015.

Microchip PIC16F84A Подробное описание учебной платы микроконтроллера (схема печатной платы и принципиальная схема) Информация о встроенных технологиях EmbedIc

Введение в PIC16F84A

Микроконтроллер PIC16F84A представляет собой пластиковый корпус с двумя линиями (DIP) с максимальной тактовой частотой 4 МГц. Микроконтроллер Microchip PIC16F84A имеет центральный процессор (ЦП), память программ (ПЗУ), регистр данных (ОЗУ) и два порта ввода / вывода (порты ввода / вывода). ЦП — это « мозг » микроконтроллера, он считывает и выполняет инструкции из памяти программ.При выборке и выполнении регистр данных также может быть извлечен одновременно (PIC16F84A был представлен ранее со структурой Гарварда). Память программ и память данных имеют шину, подключенную к ЦП. Программная память программатора PIC16F84A состоит из Flash EPROM, которую можно использовать для записи и стирания с помощью электричества, и ее содержимое может сохраняться даже при выключенном питании. Некоторые модели микроконтроллеров PIC используют EPROM для памяти программ, и их необходимо стирать в ультрафиолетовом свете; некоторые модели являются продуктами с однократным программированием (OTP) (их нельзя стереть после программирования).

PIC16F84A имеет два порта ввода / вывода, а именно порт A и порт B. Каждый вывод каждого порта можно индивидуально настроить как вход или выход. Биты каждого порта нумеруются, начиная с 0. Когда порт A является режимом вывода, его 4-й бит (то есть RA4) является выходом с открытым коллектором (или открытым стоком), в то время как порт B и другие биты порта A являются обычными полными CMOS. схемы привода. На эти функции необходимо обратить внимание, иначе при программировании возникнут ошибки. ЦП обрабатывает каждый порт как 8 бит на байт, но порт A имеет только 5 контактов .

Вход PIC

совместим с COMS, поэтому выход PIC может управлять логическими микросхемами TTL или CMOS. Каждый выходной контакт может выдавать или потреблять 20 мА, даже если одновременно используется только один контакт. Схема PIC16F84A также имеет 64 байтовых блока EEPROM для длительного хранения данных, модулей таймера / счетчика, систем прерывания и т. Д.

В Microcontrolador PIC16F84A имеется 68 байт ОЗУ общего назначения с адресами от 0CH до 4FH. Помимо регистров данных общего назначения, есть несколько специальных регистров, среди которых наиболее часто используемым рабочим регистром является «регистр W».ЦП хранит рабочие данные в регистре W. Функция регистра W аналогична «аккумулятору A» в других микроконтроллерах. Кроме того, есть несколько специальных регистров, которые определенным образом контролируют работу PIC.

Описание платы микроконтроллера PIC16F84A

Это новый дизайн, основанный на популярной учебной плате программируемого микроконтроллера PIC16F84A . Он имеет 8 одиночных светодиодов, 7-сегментный дисплей, ЖК-дисплей и пять кнопок.Это идеальное решение для новичка, чтобы сделать первый шаг в программировании в мире микроконтроллеров. Имеется заголовок внутрисхемного программирования (ICP), который можно легко перепрограммировать без необходимости каждый раз отключать микроконтроллер PIC16F84A Circuit Diagram. Предоставляются программисты для поддержки этой функции.

соединение

Описание функции

-При включении и выключении платы переключателя S1 загорается светодиодный индикатор LED9

— S2 сбрасывает микроконтроллер.

— S8 включает и выключает ЖК-дисплей

Переключатель

-S9 имеет восемь отдельных светодиодов и семисегментный дисплей и выключен.

-Кнопки S3, S6, соответствующие RA0-RA3, включены. Их DIP-переключатель SW2 включает или отключает.

-SW1 DIP-переключатель включает или отключает следующие функции:

1. Подключите RB0 (как выход) к LED1.

2. Подключите RB0 (используется как вход прерывания) к S7

.

3. Включите схему устранения дребезга S7 переключателя прерывания.

4. Подключите RB0 (как выход), зуммер.

DIP Переключатель должен быть 1000 или 0100, или 0110, или 0001.

— 7-сегментный дисплей всегда подключен к одному светодиоду. Его семь подразделений соответствуют LED1 (RB0), LED2, LED8 (RB1 до RB7) и десятичной запятой. Эта переписка может работать вместе. Это 7-сегментный дисплей, подключенный к переключателю прерывания S7 RB0.

— JP4 — это внешний интерфейс ввода RA0-RA4 с 6 винтами.При использовании соответствующие входные переключатели S3-S6 должны быть замкнуты переключателем SW2. Наконец прикрутите землю.

— JP2 — это 14-контактный тестовый терминал. Вольтметр или логический анализатор можно подключить для контроля прохождения сигнала в цепи в любое время. Последний вывод заземлен

— JP1 — заголовок ICP. Когда выполняется программирование схемы, плата должна быть замкнута (S1), а также ЖК-дисплей (S8) и светодиод (S9)

— JP3 — это 14-контактный разъем, ЖК-модуль. Контрастность можно отрегулировать для точной настройки R21.

-Плата может питаться от батареи 9 В или от источника питания 6-12 В.

включает PDF-версию схемы и печатной платы. Плата была успешно сконструирована и основана на следующем описании

На фотографии ниже показана помощь заголовка ICP в процедуре программирования схемы с соответствующей функцией программатора. Чтобы программа работала нормально, в процессе программирования ЖК-модуль должен быть отключен от розетки.

PIC16F84A — микроконтроллер для начинающих

Мы начнем с PIC16F84A — он же микроконтроллер для начинающих. Этот микроконтроллер от Microchip существует с 1998 года и является преемником самого первого серийно программируемого PIC, PIC16C84. PIC16F84A часто является отправной точкой для изучения микроконтроллеров PIC, потому что в нем всего 35 инструкций на языке ассемблера, и он стоит менее 5 долларов за штуку.Создание последовательного программатора для этого микроконтроллера также не займет много времени.

PIC16F84A

Вот характеристики PIC16F84A:

  • Ширина шины — 8 бит
  • Количество контактов — 18 (PDIP, SOIC) / 20 (SSOP)
  • Программная память — 1750 байт
  • Скорость процессора — 5 миллионов инструкций в секунду
  • Размер ОЗУ — 68 байт
  • Размер EEPROM — 64 байта

PIC16F84A — это 8-битное устройство , что означает, что почти все его регистры имеют ширину 8 бит.

Размер программной памяти показывает, сколько кода вы можете записать внутри микроконтроллера. 1750 байт программной памяти достаточно для простых приложений, в которых обычно используется PIC16F84A.

Пять миллионов инструкций в секунду (MIPS) кажутся большими, если сравнивать их с современными процессорами. Например, Intel Core i7 5960x рассчитан на 238 310 MIPS.

Размер ОЗУ

— это примерно количество регистров, которые вы можете свободно использовать, как переменные в программировании на языках высокого уровня (C ++, Java и т. Д.).).

Размер EEPROM

сообщает вам объем данных, которые вы можете сохранить в микроконтроллере, которые он сохранит даже при отключении питания. Например, если вы хотите, чтобы PIC16F84A сохранял пароль, он может хранить до 64 (ASCII) символов.

Недостатком PIC16F84A является отсутствие ряда важных периферийных устройств микроконтроллера, таких как аналого-цифровое преобразование и последовательная связь. Количество булавок также может быть ограничивающим фактором для некоторых.

Вот схема контактов для пакета PDIP / SOIC:

Для работы этого микроконтроллера вам понадобится кварцевый генератор, подключенный к контакту №16 и контактам №15 и конденсаторам 22 пФ от этих контактов к земле (см. Схему ниже).Если вы не можете найти кварцевый генератор, есть другие варианты. Подтягивающий резистор 10 кОм Ом подключается к выводу №4; это предотвратит случайный сброс PIC, который произойдет, если контакт № 4 (кратковременно) заземлен.

Простая программа мигания светодиодами

На этом этапе мы попытаемся создать очень простую программу для PIC16F84A. Мы будем мигать светодиодом, подключенным к выводу №6 (RBO / INT), используя язык ассемблера. Для объяснения кода прочтите его здесь.

Если вы не можете приобрести PIC16F84A и другие физические компоненты, я предлагаю вам использовать программное обеспечение для моделирования, такое как Proteus ISIS.

Сначала мы подключим эту принципиальную схему:

Код нашей первой сборки

; ВСТАВЬТЕ КОД КОНФИГУРАЦИИ ЗДЕСЬ, ИСПОЛЬЗУЯ ГЕНЕРАТОР КОНФИГУРАЦИОННЫХ БИТОВ #INCLUDE RES_VECT CODE 0x0000; вектор сброса процессора НАЧАТЬ; перейти к началу программы ; ДОБАВИТЬ ПРЕРЫВАНИЯ ЗДЕСЬ, ЕСЛИ ИСПОЛЬЗУЕТСЯ CBLOCK 0x0C COUNT1 COUNT2 ENDC КОД MAIN_PROG; позвольте компоновщику разместить основную программу НАЧНИТЕ СТАТУС BSF, RP0 MOVLW 0xFE MOVWF TRISB СТАТУС BCF, RP0 ГЛАВНЫЙ ЧФ ПОРТБ, 0 ЗАДЕРЖКА ВЫЗОВА БЦФ ПОРТБ, 0 ЗАДЕРЖКА ВЫЗОВА НА ГЛАВНУЮ ЗАДЕРЖИВАТЬ LOOP1 DECFSZ COUNT1, 1 GOTO LOOP1 DECFSZ COUNT2,1 GOTO LOOP1 ВОЗВРАЩЕНИЕ КОНЕЦ

1

2

3

4

5

6

7

8

9

10

11

12

13

140004

14

18

19

20

21

22

23

24

25

26

27

28

29

30

34

35

36

37

; TODO ВСТАВЬТЕ КОД КОНФИГУРАЦИИ ЗДЕСЬ, ИСПОЛЬЗУЯ ГЕНЕРАТОР КОНФИГУРАЦИОННЫХ БИТОВ

#INCLUDE

RES_VECT CODE 0x0000; вектор сброса процессора

GOTO START; перейти к началу программы

; ТОДО ДОБАВИТЬ ПРЕРЫВАНИЯ ЗДЕСЬ, ЕСЛИ ИСПОЛЬЗУЕТСЯ

CBLOCK 0x0C

COUNT1

COUNT2

ENDC

MAIN_PROG CODE; разрешить компоновщику разместить основную программу

START

BSF STATUS, RP0

MOVLW 0xFE

MOVWF TRISB

BCF STATUS, RP0

MAIN BSF

,

0

ЗАДЕРЖКА ВЫЗОВА

ЗАДЕРЖКА ВЫЗОВА

ЗАДЕРЖКА

LOOP1 DECFSZ COUNT1, 1

GOTO LOOP1

DECFSZ COUNT2,1

RESTO4

Скомпилируйте эту программу, загрузите ее на свой PIC в симуляции ISIS (или загрузите прямо на PIC с помощью Pickit3) и посмотрите результаты!

Далее >> Введение в программирование на языке ассемблера

Microchip PIC16F84A Управление двигателем с Н-мостом


PIC16F84A Контроллер мотора H-Bridge.

by Lewis Loflin

См. Также схему управления двигателем H-Bridge и схему PIC16F84A.

Видео YouTube: Использование Velleman K8048 PIC Development Board
YouTube для этой страницы: Использование Velleman K8048 PIC Development Board

PIC16F84A — это микроконтроллер низкого уровня RISC (компьютер с сокращенным набором команд), подходящий для обучения и базовых функций управления. Он использует внешний кристалл до 20 мГц. Он также имеет 13 двунаправленных контактов ввода / вывода с программируемыми подтяжками на PORTB.

Примечание: не нужен H-мост и не используется плата разработки Velleman, подключите указанное выше к макетной плате и подключите светодиоды к PB0 и PB1.

Диаграмма выше взята с макетной платы Velleman PIC, используемой в связанных видео. Контакты PA0 — PA3 запитываются резисторами 10 кОм, а 4 переключателя подключены к + 5 В. Когда переключатель нажат, штифт переходит в ВЫСОКИЙ уровень и указывает на замыкание переключателя. Есть внешний выключатель (SW6 на плате), подключенный к земле. использование внутреннего программируемого подтягивающего резистора исключает использование внешнего резистора.В этом случае замыкание переключателя генерирует НИЗКИЙ.

Для получения дополнительной информации о плате разработки Velleman PIC см. Http://www.vellemanusa.com/products/view/?country=us&lang=enu&id=500373. Помните, что это комплект, который нужно спаять.

Полный код сборки — F84A_hb.asm. Давайте рассмотрим несколько разделов этого кода, который работает одинаково на PIC16F628A. Я использую компилятор MPLAB 8.88 и полагаю, что кто-то знает, как использовать подобное программное обеспечение, и может запрограммировать PIC-чип.

Сначала давайте посмотрим, как активировать наши подтягивающие резисторы — это работает почти одинаково на многих микроконтроллерах. Если кто-то новичок в программировании PIC, просмотрите эту карту регистров PIC16F84A, и следующее имеет больше смысла. Давайте сначала определим несколько вещей:

 
; БАНК 0
PORTA EQU H'0005 '
PORTB EQU H'0006 '
; БАНК 1
OPTION_REG EQU H'0081 '
TRISA EQU H'0085 '
TRISB EQU H'0086 '
  

Пять 8-битных регистров, которые мы будем использовать, существуют в двух «банках», и банк должен быть выбран для чтения-записи регистра.Вместо устаревших адресов регистров мы дали им имена, которые мы можем лучше понять. Снова просмотрите карту регистров. Мы также можем определить наши переключатели и светодиоды на плате Velleman, которые относятся к отдельным портам и соединениям контактов:

 
; ВХОДЫ
SW1 EQU H'00 '; SW1 запускает RA0
SW2 EQU H'01 '; SW2 запускает RA1
SW3 EQU H'02 '; SW3 запускает RA2
SW4 EQU H'03 '; SW4 запускает RA3
; ВЫХОДЫ
LD1 EQU H'00 '; LD1 подключен к RB0
LD2 EQU H'01 '; LD2 подключен к RB1
LD3 EQU H'02 '; LD3 подключен к RB2
LD4 EQU H'03 '; LD4 подключен к RB3
; Я добавил эти
SW5 EQU H'04 '
SW6 EQU H'05 '
  

Также относится к этому: Понимание портов ввода-вывода микроконтроллера

Изучите схему вверху страницы и свяжите эти символы с контактом на PIC16F84A.Обратите внимание на все, что находится после «;» является комментарием и игнорируется компилятором. Теперь мы собираемся настроить аппаратные функции для PIC16F84A:

.
 
ORG 0; Установка вектора сброса 000h в PIC16F84
GOTO SETUP; перейти к процедуре настройки
; при загрузке устройства PIC.

НАСТРАИВАТЬ
BSF STATUS, RP0; Перейти к банку 1 PIC16F84
MOVLW B'00001111 '; Port A - RA0 - RA3 - входы,
MOVWF TRISA; Установить конфигурацию ввода / вывода для PORTA
MOVLW B'11110000 '; Port B, RB4 - RB7 - входы,
; RB0 - RB3 - выходы.MOVWF TRISB; Установить конфигурацию ввода / вывода для PORTB
BCF OPTION_REG, NOT_RBPU; включить подтягивания PORTB

BCF STATUS, RP0; вернуться в банк 0 PIC.
BSF PORTB, SW6; потяните вверх переключатель PB5 N.O. подключен к GND
ОТОЗВАТЬ ; очистить выходы B0-B3
  

Когда PIC сбрасывается, он переходит на адрес 0x00 во флэш-памяти, откуда затем переходит на адрес «SETUP». (Не волнуйтесь, компилятор знает, где находится адрес.) RP0 — это бит 5 в регистре STATUS, который, когда «установлен» или 1, позволяет получить доступ к банку 1.Мы загружаем 0x0F в регистр W, затем перемещаем это значение в TRISA, регистр направления данных PORTA. 1 в выбранном бите делает вывод INPUT, а 0 делает вывод выходом. Таким образом, порты A — RA0 — RA3 являются входами, мы не используем старшие 4 бита, поскольку доступен только PA4.

То же самое делается с TRISB регистром направления данных PORTB, но на этот раз PB0-PB3 — это выходы, а PB4-PB7 — входы. Строка «BCF OPTION_REG, NOT_RBPU» устанавливает бит 7 в регистре OPTION_REG в 0, разрешая внутренние подтягивающие резисторы в PORTB.Но мы еще не закончили.

«BCF STATUS, RP0» очищает (0 с) бит 5 в регистре STATUS, возвращая нас обратно в банк 0. Чтобы включить подтягивающий резистор на выбранном выводе, он должен быть сначала запрограммирован как вход, затем мы устанавливаем соответствующий бит HIGH с помощью «BSF PORTB, SW6». Наконец, мы «ВЫЗЫВАЕМ» подпрограмму, которая проверяет, что все PB0-PB3 имеют нулевые значения и отсутствие выходного напряжения — 1 выводит 5 В, а 0 переключает контакт на землю.

Теперь у нас есть основная часть программы. Идея состоит в том, чтобы обнаружить замыкание переключателя и управлять PB0 и PB1 для управления двигателем H-моста.Мы должны иметь возможность запускать двигатель вперед, назад и останавливаться. См. Следующую таблицу истинности:

 
PB0 1; PB1 0 вперед;
PB0 0; PB1 1 реверс;
PB0 0; PB1 0 стоп.
  

См. Этот пример схемы H-Bridge, которая при использовании PIC16F628A работает почти идентично, за исключением переключателей. Также см. H-мост MOSFET для Arduino 2. Следующая основная программа не требует пояснений:

 
ПЕТЛЯ ; Цикл начинается здесь !!!

BTFSC PORTA, SW1; Проверить, находится ли SW1 в ВЫСОКОМ состоянии
GOTO $ + 2; да SW1 HIGH пропустить следующую строку
GOTO $ + 3; перейти к проверке SW2
ОТОЗВАТЬ ; задержка выключения выходов 500 мс
BSF PORTB, 0; PB0 HIGH вперед

BTFSC PORTA, SW2; Проверить, если SW2 HIGH
GOTO $ + 2; да SW2 HIGH пропустить следующую строку
GOTO $ + 3; нет перехода к проверке SW6
ОТОЗВАТЬ ; задержка выключения выхода 500 мс
ЧФ ПОРТБ, 1; PB1 ВЫСОКИЙ

BTFSS PORTB, SW6; Проверить НИЗКИЙ Пропустить следующую строку, если ВЫСОКИЙ
ОТОЗВАТЬ ; задержка выключения выхода 500 мс

GOTO LOOP
  

Связано: Введение PIC12F683 Programming Circuits Tutorial

Для получения дополнительной информации по этой теме и шагу вперед от PIC16F84A см. Microchip PIC16F628A H-Bridge Motor Control.Повеселись.


Веб-сайт Авторские права Льюис Лофлин, Все права защищены.
Если вы используете этот материал на другом сайте, пожалуйста, дайте обратную ссылку на мой сайт.

pic16f84% 2f16c84 техническое описание и примечания по применению

2000 — pic16f84

Аннотация: Примеры кодов PIC16F84 PIC16F84 последовательный разъем pic16f84 3-проводной дисплей pic16f84 конфигурация контактов приложения pic16f84 PIC16f84 MICROCHIP PIC16F84 и схема сопряжения параллельного порта PIC16F84 16 микроконтроллер pic16f84
Текст: нет текста в файле


Оригинал
PDF Ан-561 AD7416 PIC16F84 PIC16F84, 25-ходовой 36-ходовой AD7416 PIC16F84 Примеры кодов PIC16F84 Последовательный разъем PIC16F84 pic16f84 3-проводной дисплей приложение pic16f84 конфигурация контактов pic16f84 МИКРОЧИП PIC16f84 Схема взаимодействия PIC16F84 и параллельного порта PIC16F84 16 pic16f84 микроконтроллер
2001-PIC16F84A

Аннотация: pic16f84 PIC16f84 MICROCHIP Microchip PIC16F84 PIC PIC16F84 Programming Specification pic16f84 application PIC16F84 wafer pic16f84 icsp PIC16F84A timer pic16f84A circuit
Текст: нет текста в файле


Оригинал
PDF PIC16F84 PIC16F84A PIC16F84 PIC16F84A.D-81739 D-82152 DS30072B-страница МИКРОЧИП PIC16f84 Микрочип PIC16F84 PIC Спецификация программирования PIC16F84 приложение pic16f84 Пластина PIC16F84 pic16f84 icsp Таймер PIC16F84A pic16f84A схема
PIC16F84 Бесплатные проекты LED

Аннотация: программирование PIC16F84 Бесплатные проекты светодиодов PIC16F84 Примеры кодов программирования PIC16F84 Free Project running LED pic16f84 Руководство по программированию сборки PIC PIC16F84 Projects pic 84 Техническое описание микроконтроллера руководство для начинающих по приложению микрочип pic pic16f84
Текст: нет текста в файле


Оригинал
PDF 14-битный PIC16F84 PIC16F84 Бесплатные проекты светодиодов программирование PIC16F84 Free Projects of LED Примеры кодов PIC16F84 программирование PIC16F84 Free Project running LED Руководство по программированию сборки PIC PIC16F84 Проекты Таблица данных микроконтроллера pic 84 руководство для начинающих по микрочипу приложение pic16f84
1997 — блок-схема и pic16f84

Аннотация: pic16f84 PIC16F84 spi PIC16f84 MICROCHIP pic16F84 series PIC16F84 16 pic16f84 application PIC16F84 Примеры кодов 16c84 блок-схема и описание pic16f84
Текст: нет текста в файле


Оригинал
PDF CS5525 / 6/9 PIC16F84 PIC16 PIC16F84 500 нс AN88Rev2 блок-схема и pic16f84 PIC16F84 spi МИКРОЧИП PIC16f84 pic16F84 серии PIC16F84 16 приложение pic16f84 Примеры кодов PIC16F84 16c84 блок-схема и описание pic16f84
1996 — PIC16F844

Аннотация: приложение pic16f84 pic16f84 pic16F84 series PIC16F84 spi PIC16F84 16 16c84 cs5526 PIC16 AN88REV1
Текст: нет текста в файле


Оригинал
PDF CS5525 CS5526 PIC16F84 CS5525 / 26 PIC16 PIC16F84 500 нс PIC16F844 приложение pic16f84 pic16F84 серии PIC16F84 spi PIC16F84 16 16c84 AN88REV1
1999 — PIC16F84A

Аннотация: Спецификация программирования PIC16F84 Замечания по применению PIC16F84A Схема pic16f84A pic16f84 PIC16f84 МИКРОЧИП PIC16F84 Пластина D043A Таймер PIC16F84A Приложение pic16f84
Текст: нет текста в файле


Оригинал
PDF PIC16F84 PIC16F84A PIC16F84 PIC16F84A.Спецификация программирования PIC16F84 Замечания по применению PIC16F84A pic16f84A схема МИКРОЧИП PIC16f84 Пластина PIC16F84 D043A Таймер PIC16F84A приложение pic16f84
2001 — 00756a

Аннотация: PIC16F84 пример кода дистанционного управления ПРОГРАММА PIC16F84 pic16f84 icsp PIC16F84 Programming Specification pic16f84 application PIC16F84 wafer AREG D10 PIC16f84 MICROCHIP P16F84.inc
Текст: нет текста в файле


Оригинал
PDF AN756 MCP2120 D-81739 D-82152 DS00756A-страница 00756a Примеры кодов PIC16F84 пульт дистанционного управления PROGRAM PIC16F84 pic16f84 icsp Спецификация программирования PIC16F84 приложение pic16f84 Пластина PIC16F84 AREG D10 МИКРОЧИП PIC16f84 P16F84.inc
1X16 ЖК-модуль HD44780

Аннотация: ЖК-модуль 1X16 P16F84.inc EIA3216 Rotary Encoder switch pic Murata DSS306-55FFZ103N100, 0,01 мкФ veroboard IC2 7805 ad9850 ЖК-дисплей для приложений 1X16
Текст: нет текста в файле


Оригинал
PDF AD9832 PIC16F84 IQXO-22) 1N4007 DSS306-55FFZ103N100, ad9832 p16f84 p16c84 vfo5x10f vfo5x10c 1X16 ЖК-модуль HD44780 1X16 ЖК-модуль P16F84.inc EIA3216 Переключатель поворотного энкодера рис. Murata DSS306-55FFZ103N100, 0,01 мкФ вероборд IC2 7805 ad9850 Приложение ЖК-дисплей 1X16
стабилитрон 5v6

Аннотация: elektor free circuit eeprom programmer elektor circuit PIC16F84 программатор схема мини-проект с использованием микроконтроллера PIC универсальный программатор PIC программирование схем PIC16F84 Бесплатные проекты светодиодов pic16f84 DIODE 5V6
Текст: нет текста в файле


Оригинал
PDF PIC16F84 / 16C84 PIC16F84 PIC16C84 1N4148 100 нФ стабилитрон 5v6 электор программатор свободной схемы eeprom схема электор Схема программатора PIC16F84 мини-проект с использованием микроконтроллера PIC универсальная схема программатора PIC программирование PIC16F84 Free Projects of LED pic16f84 ДИОД 5V6
1998-PIC16f84 МИКРОЧИП

Аннотация: pic16f84 PIC16F84 вафли PIC16F84 примеры кодов 200B D122 PIC16F8X RG41
Текст: нет текста в файле


Оригинал
PDF PIC16F84 PIC16F84 DS30430C) DS30430C / F84 / E1A1-стр. МИКРОЧИП PIC16f84 Пластина PIC16F84 Примеры кодов PIC16F84 200B D122 PIC16F8X RG41
1997-PIC16f84 МИКРОЧИП

Аннотация: PIC16F84
Текст: нет текста в файле


Оригинал
PDF PIC16F84 PIC16F8X DS30430B) PIC16F84 D12ation DS30430B / F84 / A6E1-стр. МИКРОЧИП PIC16f84
1997 — схемы программатора 24cxx eeprom

Аннотация: 25cxx 93CXX 24cxx схема программатора и программное обеспечение 24cxx схема программатора 24cxx PG306001 PIC16f84 MICROCHIP 24LCxx EEPROM 24Cxx
Текст: нет текста в файле


Оригинал
PDF PIC12C508 * PIC12C509 * PIC12C671 PIC12C672 PIC14C000 PIC16C52 PIC16C54 PIC16C54A PIC16C55 PIC16C554 Схемы программатора 24cxx eeprom 25cxx 93CXX Схема программатора 24cxx и программное обеспечение Схема программатора 24cxx 24cxx PG306001 МИКРОЧИП PIC16f84 24LCxx EEPROM 24Cxx
2001 — Цифровые весы

Аннотация: Цифровые весы с использованием микроконтроллера PIC. Цифровые весы. Схема подключения заголовка цифровых весов PIC. Блок-схема источника pic16F84 и описание дистанционного управления последовательным разъемом pic16f84 PIC16F84 ПРОГРАММА PIC16F84 Код весов серии pic16F84 с использованием микроконтроллера
Текст: нет текста в файле


Оригинал
PDF AN758 MCP2150 MCP2150 18-контактный) D-81739 D-82152 DS00758A-страница Цифровые весы Цифровые весы с использованием микроконтроллера PIC Цифровые весы PIC Схема подключения заголовка цифровых весов pic16F84 источник блок-схема и описание pic16f84 Последовательный разъем PIC16F84 пульт дистанционного управления PROGRAM PIC16F84 pic16F84 серии код весов с использованием микроконтроллера
Intel 8250 UART

Аннотация: 8250 uart intel PIC16F84 spi 8250 intel uart PIC16F84 usb схема 8250 uart UART аннотация uart 8250 Intel 8250 8250 uart таблица данных
Текст: нет текста в файле


Оригинал
PDF MAX3100, MAX3100: MAX3100 MAX3100 921кбд.com / an3025 AN3025, APP3025, Intel 8250 UART 8250 uart intel PIC16F84 spi 8250 intel uart Схема USB PIC16F84 8250 uart Аннотация UART uart 8250 Intel 8250 8250 uart лист данных
pic16c628

Аннотация: Бесплатные проекты PIC16F877 Бесплатные проекты PIC 16F84A 3,2768 МГц Crystal PIC16F877 Бесплатные проекты с языком ассемблера PIC16F877 Проекты с кодовым кодом на языке ассемблера PIC16F877 Бесплатные проекты датчик температуры 16F84 ЖК-дисплей PIC16c627
Текст: нет текста в файле


Оригинал
PDF 16F84, г. 16Ф84А, PIC16C620, PIC16C620A, PIC16CR620A, PIC16C621, PIC16C621A, PIC16C622, PIC16C622A, PIC16CE623, pic16c628 PIC16F877 Бесплатные проекты Бесплатные проекты PIC 16F84A 3.Кристалл 2768 МГц PIC16F877 Бесплатные проекты с языком ассемблера PIC16F877 Проекты на ассемблере код потока PIC16F877 Датчик температуры Free Projects 16F84 ЖК-дисплей PIC16c627
2002 — Микрочип AN849

Аннотация: PIC16F84 ONE SHOT TIMER AN849 базовый PIC PIC16F84A 16-контактный IC инвертор pic16f84 AN849 PIC16F84 подробно DS00849A-страница pic16f84A принципиальная схема pic16f84a
Текст: нет текста в файле


Оригинал
PDF AN849 D-85737 DS00849A-страница Микрочип AN849 PIC16F84 ТАЙМЕР ОДНОГО КАДРА AN849 базовый ПОС PIC16F84A 16-контактная микросхема pic16f84 инвертор AN849 PIC16F84 деталь pic16f84A принципиальная схема pic16f84a
Схема выводов IC 7805

Аннотация: datasheet ic 7805 REGULATOR IC 7805 транзистор конфигурации контактов BC547 89c8252 16F84 LCD IC1 7805 lc 7805 PIC16F84 Бесплатные проекты светодиодного мини-проекта с использованием микроконтроллера
Текст: нет текста в файле


Оригинал
PDF PIC16F84 на базе PIC16F84 89C8252 16F84 Схема выводов IC 7805 лист данных ic 7805 РЕГУЛЯТОР IC 7805 конфигурация выводов транзистора BC547 89c8252 16F84 ЖК-дисплей IC1 7805 lc 7805 PIC16F84 Бесплатные проекты светодиодов мини-проект с использованием микроконтроллера
1999 — инфракрасная система безопасности

Реферат: схема лифта ПРОЕКТ ИНФРАКРАСНЫЙ ДИСТАНЦИОННЫЙ ПЕРЕКЛЮЧАТЕЛЬ ИСПОЛЬЗОВАНИЕМ ДУ МИКРОКОНТРОЛЛЕРА ПРОГРАММА PIC16F84 PIC16F84 Примеры кодов 78L05 TO-92 PIC16F84 16 Дистанционная система без ключа pic16f84 регулятор напряжения проекта 78L05
Текст: нет текста в файле


Оригинал
PDF PIC16F84 12 вольт инфракрасная система безопасности схема лифта ПРОЕКТНЫЙ ИНФРАКРАСНЫЙ ДИСТАНЦИОННЫЙ ПЕРЕКЛЮЧАТЕЛЬ С МИКРОКОНТРОЛЛЕРОМ пульт дистанционного управления PROGRAM PIC16F84 Примеры кодов PIC16F84 78L05 TO-92 PIC16F84 16 Удаленная система без ключа pic16f84 проект 78L05 регулятор напряжения
2001-7 сегментный дисплей pic16f877 пример сборки

Аннотация: бесплатное приложение pic16f84 Программа PIC16F877 для сканирования клавиатуры Принцип взаимодействия с клавиатурой PIC16F877 Принцип работы микрочипа pic16f877 rs232 pic16f84 Жк-дисплей PIC16F874 PIC16F877 Интерфейс с ЖК-клавиатурой PIC16F84 rs232 программирование pic16f877 пример кода сборки usart
Текст: нет текста в файле


Оригинал
PDF DS00104F-страница PIC16F84 RS-232 Пример сборки 7-сегментного дисплея pic16f877 приложение pic16f84 бесплатная программа PIC16F877 для сканирования клавиатуры Интерфейс клавиатуры PIC16F877 Принцип работы pic16f877 rs232 pic16f84 микрочип PIC16F874 жк Интерфейс жк-клавиатуры PIC16F877 Программирование PIC16F84 RS232 pic16f877 пример кода сборки usart
1997 — pic16f84

Аннотация: PIC16f84 MICROCHIP prc 406 PIC16F8X RG41 200B D122
Текст: нет текста в файле


Оригинал
PDF PIC16F84 PIC16F84 PIC16F8X DS30430B) DS30430B / F84 / A7E1-стр. МИКРОЧИП PIC16f84 prc 406 RG41 200B D122
1998 — проект рис 16f84.asm

Аннотация: проект pic 16f84 PIC PROJECT C MPASMWIN.EXE 16f84 проект Microchip PIC16F84 PIC 17C756 MPASM 16F84 P17C756 16c77
Текст: нет текста в файле


Оригинал
PDF MPLAB-C17 MPLABC17 проект pic 16f84 .asm проект ПИК 16f84 ПИК ПРОЕКТ C MPASMWIN.EXE Проект 16f84 Микрочип PIC16F84 PIC 17C756 MPASM 16F84 P17C756 16c77
1999 — PIC18F84

Аннотация: программатор ds33023 PIC16x8x PIC16F84 деталь 16f84 * max232 PIC16X8X ds33014 pic16f84 учебник 16F84 демонстрационная плата последовательный разъем PIC16F84
Текст: нет текста в файле


Оригинал
PDF
1999 — плата демонстрационная 16F84

Аннотация: PIC18F84 pic16f84 учебное пособие PIC16x8x PIC16F84 часы реального времени picdem 2 плюс примеры демонстрационных плат Схема программатора eeprom Схема программатора MPASM 16F84 UV-eprom последовательный разъем PIC16F84
Текст: нет текста в файле


Оригинал
PDF DS33015C-страница Демонстрационная плата 16F84 PIC18F84 pic16f84 учебник PIC16x8x PIC16F84 часы реального времени picdem 2 plus примеры демонстрационных плат схема программатора eeprom MPASM 16F84 Схема программатора UV-eprom Последовательный разъем PIC16F84
2000 — RS232 pic16f84

Аннотация: синусоида pic16f84 Генератор синусоидальной волны pic pic16f84 3-проводной дисплей MIJ2MM-06 LLSD103ACT PIC16F84 rs232 программирование PIC16F84 spi 62BL104 2JM-G
Текст: нет текста в файле


Оригинал
PDF DEM-ADS7870 DEM-ADS7870 ADS7870 rs232 pic16f84 синусоида pic16f84 Генератор синусоидальной волны рис. pic16f84 3-проводной дисплей MIJ2MM-06 LLSD103ACT Программирование PIC16F84 RS232 PIC16F84 spi 62BL104 2JM-G
PIC16F84

Аннотация: PIC16F83 PIC16LCR8X PIC16LF8X источник pic16F84
Текст: нет текста в файле


Сканирование OCR
PDF PIC16F8X PIC16F83 PIC16CR83 PIC16F84 PIC16CR84 PIC16LF8X, PIC16LCR8X) PIC16LCR8X PIC16LF8X pic16F84 источник

PIC16F84A Лист данных от Microchip Technology

PIC16F84A

DS35007C-page 82  2001-2013 Microchip Technology Inc.

SUBWF ……………………………………….. …………………… 41

SWAPF …………………. …………………………………………. 41

XORLW ……………………………………….. …………………… 42

XORWF …………………. …………………………………………. 42

Сводная таблица ………………………………………. …………. 36

INT Прерывание (RB0 / INT) ………………………………………………. 29

Регистр INTCON …………………………… 7, 10, 18, 20, 25, 29

EEIE Немного…………………………………………. …………………. 29

Бит GIE ………………….. ……………………………………. 10, 29

INTE бит ………………………………………….. ………….. 10, 29

INTF Бит ……………………….. ……………………………..10, 29

Бит PEIE ……………………………………. ………………………. 10

Бит RBIE …………….. ………………………………………. 10, 29

бит RBIF ……………………………………….. ……….. 10, 17, 29

T0IE Бит ………………………… ……………………………. 10, 29

Бит T0IF ……… …………………………………………. 10 , 20, 29

Адрес в Интернете…………………………………………… …………… 85

Источники прерываний ………………………… ………………………. 21, 29

Блок-схема …………… ………………………………………. 29

Данные Завершение записи EEPROM ……………………… 29, 32

Прерывание при изменении (RB7: RB4) ….. ………. 4, 17, 29, 32

Вывод RB0 / INT, внешний ……………………. …… 4, 18, 29, 32

TMR0 Переполнение…………………………………………… 20, 29

Прерывания, сохранение контекста во время ………………………………… 30

Прерывания, биты разрешения

Разрешение полной записи данных EEPROM (бит EEIE) ….. 29

Разрешение глобального прерывания (бит GIE) …………….. …………… 10

Разрешение прерывания при изменении (RB7: RB4) (бит RBIE) …. 10

Разрешение периферийного прерывания (бит PEIE) … ………………… 10

Разрешение RB0 / INT (бит INTE)………………………………….. 10

Разрешение переполнения TMR0 (бит T0IE) …………………………. 10

Прерывания, биты флагов ………… …………………………………………. 29

Флаг завершения записи EEPROM данных (бит EEIF) ………. 29

Флаг прерывания при изменении (RB7: RB4) (бит RBIF) …….. 10

Флаг RB0 / INT (бит INTF) …………………………………… …. 10

Флаг переполнения TMR0 (бит T0IF) …………………………….. 10

бит IRP ……………………… ………………………………………….. …… 8

M

Master Clear (MCLR)

Вывод MCLR ……………………….. ………………………………….. 4

Сброс MCLR, нормальная работа. ………………………….. 24

Сброс MCLR, SLEEP ……….. ………………………….. 24, 32

Организация памяти ……….. …………………………………………. 5

Память EEPROM данных ……………………… ………………. 13

Память данных …………………….. ……………………………….. 6

Память программ ……. ………………………………………….. .5

Интернет-сайт Microchip …………………………………… …… 85

Миграция с базовых устройств на устройства среднего уровня ……………… 80

Ассемблер MPLAB ASM30, компоновщик, библиотекарь………………… 44

Программное обеспечение интегрированной среды разработки MPLAB …. 43

Программатор устройств MPLAB PM3 ……….. ………………………. 46

Система внутрисхемного эмулятора MPLAB REAL ICE ……….. …….. 45

Компоновщик объектов MPLINK / Библиотекарь объектов MPLIB ……………… 44

O

Описания полей OPCODE ….. …………………………………… 35

OPTION Register … ……………………………………………………… 9

Бит INTEDG ………………. ………………………………………… 9

PS2: биты PS0 ……………………………………… ………………. 9

Бит PSA …………………….. ………………………………………… 9

бит RBPU ……………………………………….. …………………… 9

T0CS Bit ………………… ………………………………………….. .9

Бит T0SE…………………………………………… ………………… 9

OPTION_REG Регистр …………………… ………… 7, 18, 20, 25

Бит INTEDG ……………………… ……………………………….. 29

PS2: Биты PS0 ….. ………………………………………….. ……. 19

Бит PSA ……………………………….. …………………………… 19

Контакт OSC1 ………… ………………………………………………………… 4

Контакт OSC2 ………… ………………………………………….. ……………. 4

Конфигурация осциллятора ……………………….. ………………. 21, 22

Блок-схема …………………… ………………………… 22, 23

Выбор конденсатора для керамических резонаторов ………. …. 22

Выбор конденсатора для кварцевого генератора ………………. 23

Кристаллический осциллятор / керамические резонаторы………………….. 22

HS …………………… …………………………………………. 22 , 28

LP ……………………………………… ………………………. 22, 28

Типы осцилляторов …………… ……………………………………. 22

RC … ………………………………………….. ………… 22, 23, 28

XT ………………………… ……………………………………. 22, 28

п

Информация об упаковке…………………………………………… ….. 69

Маркировка ………………………………….. ………………………… 69

PD бит …………… ………………………………………….. ………………. 8

Описание выводов …………………….. ………………………………. 4

Указатель, FSR ……. ………………………………………….. ………….. 11

ПОР. См. Сброс при включении

PORTA…………………………………………… …………………… 4, 15

Ассоциированные регистры ………………. …………………………. 16

Функции …………… ………………………………………….. … 16

Инициализация ……………………………………. ……………………. 15

Регистр PORTA ……………….. ………………. 7, 15, 16, 25

RA3: Блок-схема RA0 …………….. ……………………… 15

Блок-схема RA4 ……………………. ……………………… 15

Контакт RA4 / T0CKI ……………. ………………………….. 4, 15, 19

Регистр TRISA ……… …………………….. 7, 15, 16, 20, 25

PORTB ………… ………………………………………….. …………. 4, 17

Ассоциированные регистры ………………………… ……………….. 18

Функции ………………………………………………………… .. 18

Инициализация …………………………………….. …………………… 17

Регистр PORTB ………………… ……………… 7, 17, 18, 25

Бит разрешения подтягивания (бит RBPU) ………….. ……………………. 9

RB0 / INT Edge Select (INTEDG Bit) …………. ……………. 9

Вывод RB0 / INT, внешний ……………………. …………. 4, 18, 29

RB3: Блок-схема RB0…………………………………….. 17

RB7: Блок RB4 Схема …………………………………….. 17

RB7: RB4 Прерывание при изменении …………………… 4, 17, 29

RB7: Разрешение прерывания при изменении RB4 (бит RBIE) …… 10

RB7: Флаг прерывания при изменении RB4 (бит RBIF) ….. 10, 17

Регистр TRISB ……………. ……………………. 7, 17, 18, 25

Постскейлер, WDT

Назначение (бит PSA) …… ……………………………………… 9

Выбор скорости (PS2: PS0 Bits). ………………………………….. 9

Постскейлер. См. Раздел Предварительный делитель

Бит отключения питания (PD). См. Сброс при включении питания (POR)

Режим пониженного энергопотребления. См. SLEEP

Сброс при включении питания (POR) ………………………………… … 21, 24, 26

Таймер запуска генератора (OST) ………………………. 21, 26

PD Бит ……………………………………….. ..8, 24, 28, 32, 33

Таймер включения (PWRT)……………………………….. 21, 26

Последовательность тайм-аута …. ………………………………………… 28

Последовательность тайм-аута при включении питания ……………………. 27, 28

Бит TO ……… …………………………… 8, 24, 28, 30, 32, 33

Прескейлер … ………………………………………….. …………………… 19

Назначение (бит PSA) ……………… …………………………. 19

Блок-схема…………………………………………… ……… 20

Выбор скорости (PS2: PS0 Bits) ………………………… ………. 19

Назначение переключателя предделителя ………………………….. 20

Microchip PIC16F84A и MT8870 Контроллер повторителя DTMF

RPC2 — A

Основные характеристики:

1. Использует MT8870

2. Винтовые выходные клеммы

3.Питание от клемм или разъема 2,1 мм

Повторитель на базе PIC16F84a (DTMF) контроллер очень просто & экономичный строить. Это также дает вам руку на опыт использования & программирование ПИК Микро контроллеры. Контроллер измеряет 10 см X 6 см и может быть размещен в корпусе вашего репитера

Контроллер вот на основе дизайнерская идея от Дэйв Робинзон / Вторая мировая война у кого есть предоставлена необходимо программное обеспечение & аппаратное обеспечение Информация на этом контроллер.

Дизайн это Контроллер основан на MT8870 DTMF получатель, а Микрочип 16F84A Микроконтроллер а также ан Реле ULN2803A Водитель .

Контроллер имеет 8 OC выходы водить 8 реле. Выходы находятся доступный на 12pin заголовок розетка или винтовой клеммный блок, где Лента кабель может быть связаны.В добавление до 8 OC выходы, заголовок / терминал разъем также обеспечивает 12 В, Земля & 5 В (для подтягивания Только).

Контроллер без реле & предназначен для размещения в существующем проект, где DTMF контроль требуется. Это буду водить машину 5 / 12В реле любого типа, без проблемы.

Прошивка для ПОС доступный здесь для скачать в .ASM файл с участием пароль 1234, который может быть изменено в время из программирование фотка. Эта прошивка была протестирована и контроллер работал отлично, не пропуская ни одной команды.

Другая предполагаемая версия Прошивки «запомнить» последнее состояние реле после сбоя питания, также возможно, но Еще не тестировал.

PIC16F84A MemoSound Game


Этот пример покажет вам, как построить простую игровую систему запоминания на основе PIC.

Имея только PIC16F84A и несколько дешевых компонентов, вы сначала потренируете свой мозг, чтобы понять некоторые основы PIC, а затем поиграть в непростую игру на память!

PIC Sleep Mode и Wake-Up from PORTB Change являются ключевыми моментами программного обеспечения.

Правила игры

Вам необходимо запомнить мелодию, состоящую из 62 шагов.
Шаг — это один из четырех тонов, доступных в игровой системе.
Чтобы помочь вам, каждый тон связан с цветным светодиодом (желтый, зеленый, оранжевый, красный), который загорается при каждом воспроизведении звука.
Игровая система проигрывает мелодию, затем необходимо правильно ее повторить, нажав кнопку светодиода тона. В начале у мелодии только один шаг.
В случае неудачи воспроизводится мелодия ошибки, мелодия воспроизводится снова, и вы можете попробовать еще раз, чтобы повторить ее.
В случае успеха к мелодии добавляется новый тон.
Самая длинная мелодия — 62 шага, сможете ли вы выучить ее наизусть?

Если вам надоедает одна мелодия, нажмите одновременно кнопки RB4 и RB5, игровая система создаст новую мелодию.

Если вы хотите изменить ритм мелодии, одновременно нажмите кнопки RB6 и RB7 и выберите новый ритм, нажав клавишу, когда горит светодиод:
RA0: очень быстро
RA1: быстро
RA2: медленно
RA3: очень медленно (по умолчанию)

Схема

Схема

Игра работает от батареи, а схема питается от LP2950CZ-5.0 с некоторыми разделительными конденсаторами. Главный выключатель отсутствует, потому что схема находится в спящем режиме, когда ничего не происходит. Стандартная батарея на 9 В должна работать неделями.
Четыре переключателя подключены к старшему полубайту PORTB, чтобы разрешить пробуждение при смене PORT PIC, когда игрок нажимает кнопку. Нет подтягивающих резисторов, потому что используется внутренняя слабая подтяжка PIC.
Вывод RB0 PIC напрямую управляет маленьким пьезо-динамиком.
Младший полубайт PORTA управляет четырьмя светодиодами через резисторы ограничения тока.
Дешевый кристалл 8 МГц используется для синхронизации PIC, вы можете добавить два конденсатора 15pf от кристалла к земле, чтобы следовать рекомендациям Microchip, но PIC работает очень хорошо без него, просто сделайте это, если у вас есть ленивый PIC, который не запускает генератор .

Увеличить схему

Исходный код PIC C

Этот проект создан для микроконтроллера PIC16F84A, но может быть изменен на любой другой микроконтроллер PIC с очень небольшими настройками.
Поскольку этот проект соответствует лимиту демонстрации 2k компилятора mikroC, вы можете использовать его бесплатно, загрузите его по адресу:
http://www.mikroe.com/en/compilers/mikroc/pic/

 / *
 * Проект: memosound
 * Автор: Бруно Гаванд
 * Дата: август 2006 г.
 * Описание: Игра для запоминания звука и света
 *
 * Цель: PIC16F84A @ 8 МГц
 * Флаги: генератор HS, без сторожевого таймера, без таймера включения
 *
 * IDE: mikroC V6.0
 *
 * игрок должен запомнить и воспроизвести мелодию:
 * PIC создает новую мелодию для каждой новой игры
 * мелодия до 63 шагов
 * каждый шаг - это тон, соответствующий цвету
 * есть 4 тона (A, B, C, D), а затем 4 светодиода (красный, зеленый, оранжевый, желтый)
 *
 * запуск: PIC играет приветственную мелодию и тайно создает новую мелодию
 * PIC играет первый шаг мелодии, и игрок должен воспроизвести ее
 * если он хороший, то PIC проигрывает мелодию с самого начала с еще одним шагом
 * игрок должен повторить ту же мелодию
 * если проигрыватель выходит из строя, проигрывается мелодия ошибки, и PIC снова воспроизводит ту же мелодию
 * когда все 63 шага мелодии правильно воспроизведены игроком,
 * PIC проигрывает выигрышную мелодию и создает новую.* в любой момент игрок может нажать две кнопки одновременно, чтобы отказаться от текущей мелодии
 * и начните с нового.
 *
 * RA0 ... RA3: светодиоды
 * RB0: зуммер Piezzo
 * RB4 ... RB7: кнопки
 *
 * подробнее см. на http://www.micro-examples.com/
 *
 * /

/ *
 * определения макросов
 * /
#define NBFREQ 7 // размер таблицы частот
#define NBCYCLES (freq) (2000 / f) // продолжительность звука

#define EEPROM_SIZE 64 // размер EEPROM P16F84A: шаги сохраняются в EEPROM
#define NBSTEPS (EEPROM_SIZE - 2) // максимальное количество шагов
#define ADDR_NBSTEPS (EEPROM_SIZE - 2) // адрес в EEPROM счетчика шагов
#define ADDR_SPEED (EEPROM_SIZE - 1) // адрес в EEPROM скорости игры

/ *
 * таблица частот: периоды в тысячах мс
 * /
const беззнаковый символ t_period [NBFREQ] =
        {
        132,
        148,
        165,
        176,
        198,
        220,
        247
        };

скорость беззнакового символа; // скорость игры

/ *
 * задержки выполняются как функция, а не как макрос
 * для экономии места в ПЗУ
 *
 * 1 секунда задержки
 * /
пустая задержка1000 мс ()
        {
        Delay_ms (1000);
        }

/ *
 * Задержка 10 мс
 * /
пустая задержка 10 мс ()
        {
        Delay_ms (10);
        }

/ *
 * воспроизвести один звук со светодиодом
 *
 * s: индекс звука в таблице частот
 * d: продолжительность звука в количестве периодов
 * t: продолжительность тишины после звука (умножается на 10 мс)
 * /
void playSound (символ без знака s, символ без знака d, символ без знака n, символ без знака t)
        {
        беззнаковый символ c;
        
        c = t_период [с];
        ПОРТА = 1 << (s & 3); // загорается светодиод, соответствующий звуковому индексу
        в то время как (п-)
                {
                в то время как (d--)
                        {
                        беззнаковый символ cc;
                        
                        ПОРТБ.= 1;
                        для (cc = 0; cc  0; i--)
                {
                playSound (i - 1, 50, 1, 0);
                }
        }

/ *
 * заполнить EEPROM новой мелодией
 * /
пусто fillEEPROM ()
        {
        беззнаковый символ i;

        for (i = 0; i 

Определение EEPROM:

В этом проекте используется внутренняя PIC EEPROM, вы должны добавить это определение EEPROM в свой проект:

0x00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
0x10 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF
0x30 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF 04

Вы можете скачать.

alexxlab

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *