- •Установка и подготовка к работе mplab
- •Создание проекта и подключение файла с программой
- •Структура текста программы
- •Правила оформления программы
- •Особенности сопоставления имен и чисел. Прямая и косвенная адресация
- •Циклическая концепция программы
- •Модульная структура программы
- •Понятие о времени исполнения программы
- •Компиляция и устранение ошибок
- •Глава 4. Макетная плата. Программатор
- •Задержки в программе и их расчёт
- •Обозначение ножек микроконтроллера
- •Функциональное назначение ножек
- •Назначение ножек
- •Макетная плата и её назначение
- •Инструкция по прошивке микроконтроллера
- •Глава 5. Элементарные базовые проекты
- •Теория и практика работы портов мк
- •1 (Input) – работа на вход
- •0 (Output) – работа на выход
- •Пример 1. Мигающие светодиоды
- •Пример 2. "Бегущий огонь" и "бегущая тень"
- •Пример 3. Включение символов на индикаторе
- •Пример 4. Отслеживание нажатия кнопки
- •Пример 5. Кнопка в режиме переключателя. Антидребезг
Обозначение ножек микроконтроллера
Этот раздел было решено поставить первым именно здесь, т.к. набравшись опыта, перед решением задачи целесообразно сначала для себя определиться с чем мы будем работать, и какой МК отвечает нашим задачам. Для этого, как минимум, надо знать, что умеет тот или иной МК и какие ножки отвечают за те или иные функции.
Для описания "ножек" МК в качестве примера мы будем использовать микроконтроллер типа PIC16F84A. Основная задача этого раздела – научить понимать классический набор ножек МК. Вторая задача – показать рисунок МК с описанием ножек для того, что бы вы могли наиболее оптимально разводить рисунок своих будущих печатных плат для конкретных устройств, а лишь затем "под рисунок" составлять свои программы.
Обучение : Программирование на Ассемблере для PIC
Обозначение ножек микроконтроллера
Этот раздел было решено поставить первым именно здесь, т.к. набравшись опыта, перед решением задачи целесообразно сначала для себя определиться с чем мы будем работать, и какой МК отвечает нашим задачам. Для этого, как минимум, надо знать, что умеет тот или иной МК и какие ножки отвечают за те или иные функции.
Для описания "ножек" МК в качестве примера мы будем использовать микроконтроллер типа PIC16F84A. Основная задача этого раздела – научить понимать классический набор ножек МК. Вторая задача – показать рисунок МК с описанием ножек для того, что бы вы могли наиболее оптимально разводить рисунок своих будущих печатных плат для конкретных устройств, а лишь затем "под рисунок" составлять свои программы.
Мы видим разнонаправленные стрелки у ножек МК. Направления стрелок указывают нам, как может работать ножка: только на вход (т.е. в МК), только на выход (т.е. из МК), на вход или на выход (в зависимости от настройки).
Также мы видим, что у некоторых ножек обозначения записаны через дробь, например RB0/INT. Это означает, что ножка, в зависимости от настройки может выполнять одну из нескольких функций. В более сложных процессорах, некоторые ножки могут выполнять одну из трёх, или даже четырех функций, например, вход АЦП или выход ШИМ.
Для начала важно чётко различать направление работы ножек.
Направления работы ножек МК и выполняемые функции
задаются в регистрах специального назначения.
Этот вопрос рассмотрен в разделе теории и практики работы портов.
Функциональное назначение ножек
Кратко опишем функциональное назначение ножек МК PIC16F84A.
Питание МК. Vdd (14) + 5 вольт; Vcc (5) – минус питания.
Аппаратный сброс. MCLR(4) – микроконтроллер сбрасывается, когда уровень сигнала на этой ножке достигает 0 вольт. Как правило, в схемах эту ножку соединяют с линией +5 вольт.
Опорный генератор. OSC1(16) и OSC2(15) – для подключения кварцевого резонатора. Также вход CLKIN(16) может использоваться для внешнего тактового сигнала, например, для синхронизации работы с другим МК. Выход CLKOUT(16) может использовать для вывода тактового сигнала.
Порт А – RA0, RA1, RA2, RA3, RA4 (соответственно, 17, 18, 1, 2, 3) ножки ввода-вывода. Также ножка 3 может работать как вход частоты для таймера/счетчика TMR0.
Порт В – RB0, RB1, RB2, RB3, RB4, RB5, RB6, RB7 (соответственно, 6, 7, 8, 9, 10, 11, 12, 13) ножки ввода-вывода. Также 6-я ножка INT используется как внешний вход прерывания (о прерываниях позже).
Дополнительными функциями пока не будем забивать голову. Сейчас достаточно знать, что порты в режиме "на выход" могут устанавливать на ножках логические уровни сигналов (0 вольт и +5 вольт), а в режиме "на вход" могут отследить установленные на них логические уровни от других устройств, т.е. вести двухсторонний диалог с внешним миром.
Документация на микроконтроллер PIC16F84A
1 18
PIC16F84
9 10
RA2
RA3
RA4/ T0CKI
Vss
RBO/INT
RB1
RB2
RB3
RA1 RA0
OSC1/CLKIN
OSC2/CLKOUT
Vdd
RB7
RB6
RB5
RB4
