- •Конспект лекций оглавление
- •Общие с ведения о микроконтроллерах
- •Обобщенная структурная схема микроконтроллера
- •Система прерываний
- •Работа системы прерываний
- •Стек данных
- •Микроконтроллеры Intel, Motorola и Microchip
- •Краткое описание особенностей микроконтроллеров
- •Работа сср в режиме шим
- •Примеры контроллеров 18еххх, 16еххх. Характеристики 16 и 18 серии.
- •Периферийные модули
- •Основные характеристики микроконтроллеров
- •Рекомендации по схематическому решению для портов (16 серия)
- •Структура памяти
- •Банк памяти быстрого доступа
- •Регистр выбора банка памяти данных bsr (18 серия)
- •Косвенная адресация, регистра indf и fsr
- •Операция косвенной адресации
- •Механизм косвенной адресации
- •Работа с памятью рiс16fххх
- •Чтение из еерrом-памяти
- •Запись еерrом данных
- •Управление прерываниями Серия рiс16ххх
- •Система прерывании рiс18fхх2
- •Обработка прерываний
- •Контроллеры pic16f87x
- •Карта памяти микроконтроллеров:
- •Структурная схема микроконтроллеров pic16f87x:
- •Служебные регистр:
- •Контроллеры 18 серии
- •Карта памяти микроконтроллеров рiс18f242/442:
- •Регистры конфигурации контроллера:
- •Аппаратный умножитель 8х8
- •Модуль ацп
- •Конфигурация выводов модуля ацп (рiс16f873/76)
- •Источник опорного напряжения
- •Параллельные порты ввода/вывода
- •Последовательный синхронный порт (мssр)
- •Временные диаграммы работы mssp
- •Пример соединения двух мк через spi
- •Режим i2c последовательного порта mssp.
- •Асинхронно-синхронный последовательный порт (usart)
- •Временные диаграммы работы usart в асинхронном режиме
- •Ведомый параллельный порт (psp)
- •Временные диаграммы порта psp
- •Способы кодирования данных
- •Универсальная последовательная шина (usb) Краткий обзор шины
- •Протоколы передачи
- •Питание
- •Оконечные точки
- •Нумерация устройств
- •Описатели
- •Классы устройств / Драйверы класса
- •Микроконтроллеры с модулем usb
- •Приемопередатчик
- •Регистры управления и состояния модуля usb
- •Регистр флагов прерываний модуля usb (uir)
- •Регистр разрешения прерываний модуля usb (uie)
- •Регистр флагов ошибок модуля usb (ueir)
- •Регистр разрешения прерывания по ошибкам модуля usb (ueie)
- •Регистр состояния модуля usb (ustat)
- •Регистр управления модулем usb (uctrl)
- •Регистр адреса usb (uaddr)
- •Регистр состояния программного обеспечения usb
- •Регистры управления оконечными точками (uepn)
- •Буферы оконечных точек
- •Программирование модуля usb
- •Программное обеспечение usb
- •Основные функции и подпрограммы
- •Ресурсы процессора
- •Уровни стека
- •Память программ
- •Память данных
- •Буферные регистры
- •Выбор страниц/Выбор банков
- •Интегрирование подпрограмм usb в программу
Основные характеристики микроконтроллеров
Параметры |
18F242 |
18F452 |
18F873 |
18F877 |
|
Тактовая частота |
40 МГц |
40 МГц |
20МГц |
20МГц |
|
Память программ |
16 к*8 |
16 к*8 |
4 к*14 |
4 к*14 |
|
Память данных |
768*8 |
1536*8 |
92*8 |
368*8 |
|
Прерывания |
17 |
17 |
13 |
14 |
|
Порты |
А, В, С |
А, В, С,D,E |
А, В, С |
А, В, С,D,E |
|
Таймеры |
4 |
4 |
3 |
3 |
|
Модуль ССР |
2 |
2 |
2 |
2 |
|
Последовательный интерфейс |
MSSP, USART (адресуемый) |
MSSP, USART (анонимный) |
|||
Параллельный интерфейс |
- |
PSP |
- |
PSP |
|
АЦП |
5 каналов |
8 каналов |
5 каналов |
8 каналов |
|
Команд в микроконтроллере |
75 |
75 |
35 |
35 |
|
Зависимость тактовой частоты от напряжения питания для контроллеров PIC18LFXXX и PIC18FXXX
В серию PIC18FXXX встроено умножение тактовой частоты на 4.
Рекомендации по схематическому решению для портов (16 серия)
Порт А (РОRТА): цифровой ввод-вывод, входы АЦП и таймеров. Выходы с открытым коллектором для управления нагрузкой (6 выводной).
Все каналы РОRTA имеют соответствующие биты направления в регистре TRISA, позволяющие настраивать канал как вход или выход. Запись '1' в TRISA переводит соответствующий выходной буфер в 3-е состояние. Запись '0' в регистр ТRISА определяет соответствующий канал как выход, содержимое защелки РОRТА передается на вывод микроконтроллера (если выходная защелка подключена к выводу микроконтроллера).
Порт В (РОRТВ): управление клавиатурой, внешнее прерывание, низковольтное программирование.
РОRТВ – 8-разрядный двунаправленный порт ввода/вывода. Биты регистра ТRISB определяют направление каналов порта. Установка бита в ‘1’ регистра ТRISB переводит выходной буфер в 3-е состояние. Запись '0' в регистр ТRISB настраивает соответствующий канал как выход, содержимое защелки РОRТВ передается на вывод микроконтроллера (если выходная защелка подключена к выводу микроконтроллера).
Три вывода РОRТВ мультиплицированы со схемой низковольтного программирования: RВЗ/РGМ, RВ6/РGС, RВ7/РGD.
Порт С (РОRТС): цифровой ввод-вывод (байтовый). Шины SPI, I2C, USART.
Биты регистра TRISC определяют направление каналов порта. Установка бита в ‘1’ регистра TRISC переводит выходной буфер в 3-е- состояние. Запись ‘0’ в регистр TRISC настраивает соответствующий канал как выход, содержимое защелки РОRТС передается на вывод микроконтроллера (если выходная защелка подключена к выводу микроконтроллера).
Выводы РОRТС мультиплицированы с несколькими периферийными модулями. На каналах РОRТС присутствует входной буфер с триггером Шмидта.
Порты D и Е (РОRТD, РОRТЕ): программно реализуемый параллельный порт.
Структура памяти
Вся память контроллеров делится на регистры
• общего назначения (РОН)
• специальные
• конфигурационные
Cспециальные регистры предназначены для обслуживания контроллера.
Конфигурационные регистры являются специальными регистрами, которые изменяют конфигурацию контроллера.
Память делится на разные области:
• память программ
• память данных
• энергонезависимая память (ЕЕРRОМ)
Виды адресации:
• прямая или непосредственная
• относительная
• косвенная
При прямой адресации адрес заключен в команде.
Относительная: GОТО $+2; переход на две строки ниже.
Косвенная: FSR [адрес]
INDF [значение по адресу]
