Название: Микроконтроллеры PIC16X7XX, 3-е издание
Издательство: Солон-Пресс
Автор: Ульрих В.А.
ISBN: 5-89003-219-3
Год: 2005
Страниц: 320
Формат: pdf, djvu
Размер: 75,6 Мб
Серия или Выпуск: Библиотека ремонта
Язык: русский
О книге:
Книжка Микроконтроллеры PIC16X7XX написана с использованием технической документации компании MICROCHIP и является техническим руководством. В ней даны системы команд, описаны узлы и структура микроконтроллеров, а также назначение выходных контактов по разным типам корпусов и совместимость по контактам. В книге рассмотрены все новые микроконтроллеры компании MICROCHIP.
1. Общий обзор
1.1. Совместимость семейства
1.2. Поддержка при разработке
2. Варианты устройств PIC16X7XX
2.1. Устройства с ультрафиолетовым стиранием
2.2. Однократно программируемые устройства
2.3. Устройства с FLASH памятью программ
2.4. Устройства с масочным ПЗУ
2.5. Упаковка микроконтроллеров
3. Структура микроконтроллеров
3.1. Синхронизация командных циклов
3.2. Конвейерная обработка команд
3.3. Структурные схемы микроконтроллеров
4. Организация памяти
4.1. Память программ
4.2. Память данных
4.2.1. Файл универсальных регистров
4.2.2. Регистры специальных функций
4.2.2.1. Регистр состояния («STATUS»)
4.2.2.2. Регистр OPTION
4.2.2.3. Регистр INTCON
4.2.2.4. Регистр PIE 1
4.2.2.5. Регистр PIR1
4.2.2.6. Регистр PIE2
4.2.2.7. Регистр PIR2
4.2.2.8. Регистр PCON
4.3. Регистры PCL и PCLATH
4.3.1. Вычисляемые переходы
4.3.2. Стек
4.4. Страничная организация памяти программ
4.5. Косвенная адресация. Регистры INDF и FSR
4.6. Чтение памяти программ
4.6.1. Регистры PMDATH и PMDATL
4.6.2. Регистры PMCON1
4.6.3. Процедура чтения памяти программ
4.6.4. Операции при включенной защите памяти программ
5. Порты ввода/вывода (I/O)
5.1. Регистры PORTA и TRISA
5.2. Регистры PORTB и TRISB
5.3. Регистры PORTC и TRISC
5.4. Регистры PORTD и TRISD
5.5. Регистры PORTE и TRISE
5.6. Программирование портов I/O
5.6.1. Двунаправленные порты I/O
5.6.2. Последовательность операций на портах I/O
6. Параллельный ведомый порт
7. Модуль таймера TMR0
7.1. Прерывание от TMR0
7.2. Внешняя синхронизация TMR0
7.2.1. Синхронизация внешних трактов
7.2.2. Задержка приращения TMRO
7.3. Предделитель
7.3.1. Переключение назначения предделителя
8. Модуль таймера TMR1
8.1. Работа TMR1 в режиме таймера
8.2. Работа TMR1 в режиме счетчика
8.2.1. Режим синхронного счетчика
8.2.2. Режим асинхронного счетчика
8.3. Генератор таймера 1
8.4. Сброс TMR1 с использованием выхода ССР
8.5. Сброс регистров таймера 1 (TMR1H: TMR1L)
8.6. Чтение и запись таймера 1
9. Модуль таймера TMR2
9.1. Предделитель и постделитель таймера 2
9.2. Выход таймера 2
10. Модули ССР
10.1. Режим накопления
10.1.1. Предделитель
10.1.2. Модуль таймера 1 и режим накопления ССР
10.2. Режим сравнения
10.2.1. Модуль таймера 1 и режим сравнения ССР
10.2.2. Режим прерывания программы
10.2.3. Запуск специального события
10.3. Режим ШИМ
10.3.1. Период ШИМ
10.3.2. Ширина импульса ШИМ
10.3.3. Порядок программирования режима ШИМ
10.4. Модернизированный модуль ССР
10.4.1. Конфигурация выходов
10.4.2. Программирование активного уровня на выходах
10.4.3. Задержки при формировании выходных сигналов
10.4.4. Реверс в режиме четырехканального выхода
10.4.5. Реализация системы
10.4.6. Порядок программирования режима ШИМ
11. Модуль синхронного последовательного порта
11.1. Режим SPI
11.1.1. Режим ведущего SPI
11.1.2. Режим ведомого SPI
11.2. Описание интерфейса НС
11.2.1. Начало и конец передачи данных
11.2.2. Адресация устройств PC
11.2.3. Пересылка подтверждения
11.2.4. Режим с многими ведущими
11.2.4.1. Арбитраж
11.2.4.2. Синхронизация трактов
11.3. SSP в режиме l2C
11.3.1. Режим ведомого PC109
11.3.1.1. Адресация
11.3.1.2. Прием данных
11.3.1.3. Передача данных
11.3.2. Программный режим ведущего PC
11.3.3. Режим с многими ведущими
11.4. Усовершенствованный модуль SSP (MSSP)
11.4.1. Работа в режиме аппаратной реализации ведущего
11.4.2. Генератор скорости обмена
11.4.3. Формирование условия начала
11.4.4. Формирование условия повторное начало
11.4.5. Передача данных
11.4.6. Прием данных
11.4.7. Формирование подтверждения123
11.4.8. Формирование условия окончания
11.4.9. Режим с многими ведущими
11.4.9.1. Синхронизация трактов
11.4.9.2. Конфликт шины при формировании условия начала
11.4.9.3. Конфликт шины при формировании условия повторное начало
11.4.9.4. Конфликт шины при формировании условия окончания
11.4.10. Поддержка общего вызова в режиме ведомого PC
11.4.11. Подключение к шине PC
12. Универсальный синхронно-асинхронный приемопередатчик (USART)
12.1. Генератор скорости передачи USART (BRG)
12.1.1. Выборка принимаемых данных
12.2. Асинхронный режим USART
12.2.1. USART в режиме асинхронного передатчика
12.2.2. USART в режиме асинхронного приемника
12.2.3. Режим асинхронного приемника с детектированием адреса
12.3. Синхронный режим ведущего USART
12.3.1. Передача в синхронном режиме ведущего
12.3.2. Прием в синхронном режиме ведущего
12.4. Синхронный режим ведомого USART
12.4.1. Передача в синхронном режиме ведущего
12.4.2. Прием в синхронном режиме ведущего
13. Модуль опорного напряжения и контроля напряжения питания
13.1. Источник стабильного напряжения (BANDGAP)
13.2. Опорные напряжения для A/D-преобразователя
13.3. Контроль низкого напряжения питания (LVD)
13.3.1. Вход внешнего аналогового напряжения
14. Модуль аналого-цифрового преобразователя
14.1. Устройство выборки и хранения
14.2. Синхронизация A/D-преобразования
14.3. Программирование аналоговых входов
14.4. A/D-преобразование
14.4.1. Время преобразования и точность результата
14.5. A/D-преобразование во время останова
14.6. Ошибка и точность A/D-преобразования
14.7. Воздействие сброса
14.8. Запуск специальным событием ССР
14.9. Рекомендации при подключении
14.10. 10- и 12-разрядные A/D-преобразователи
14.10.1. Программирование аналоговых входов
14.10.2. Управление опорным напряжением
14.10.3. Выравнивание результата A/D-преобразования
15. Универсальная последовательная шина (USB)
15.1. Краткий обзор шины USB
15.1.1. Протоколы передачи
15.1.2. Кадры
15.1.3. Питание
15.1.4. Оконечные точки
15.1.5. Нумерация устройств
15.1.6. Описатели
15.1.7. Классы устройств/драйверы класса
15.1.8. Резюме
15.2. Микроконтроллеры с модулем USB
15.2.1. Приемопередатчик
15.2.2. Регистры управления и состояния модуля USB
15.2.2.1. Регистр флажков прерываний модуля USB (UIR)
15.2.2.2. Регистр разрешения прерываний модуля USB (UIE)
15.2.2.3. Регистр флажков ошибок модуля USB (UIR)
15.2.2.4. Регистр разрешения прерывания по ошибкам модуля USB (UEIE)
15.2.2.5. Регистр состояния модуля USB (USTAT)
15.2.2.6. Регистр управления модулем USB (UCTRL)
15.2.2.7. Регистр адреса USB (UADDR)
15.2.2.8. Регистр состояния программного обеспечения USB
15.2.2.9. Регистры управления оконечными точками (UEPN)
15.2.3. Таблица дескрипторов буферов (BDT)
15.2.3.1. Буферы оконечных точек
15.3. Программирование модуля USB
15.3.1. Программное обеспечение USB
15.3.2. Основные функции и подпрограммы
15.3.3. Ресурсы процессора
15.3.4. Уровни стека
15.3.4.1. Память программ
15.3.4.2. Память данных
15.3.4.3. Буферные регистры
15.3.4.4. Выбор страниц/выбор банков
15.3.5. Интегрирование подпрограмм USB в программу
16. Дополнительные возможности
16.1. Слово конфигурации
16.2. Конфигурации генератора
16.2.1. Режим генератора
16.2.2. Генераторы на кварцевых резонаторах
16.2.3. Внешние генераторы на кварцевом резонаторе
16.2.4. RC-генератор
16.2.5. Внутренний RC-генератор
16.2.6. Переключение частоты внутреннего RC-генератора
16.3. Сброс
16.3.1. Сброс при включении питания (POR)
16.3.2. Таймер включения питания (PWRT)
16.3.3. Таймер запуска генератора (OST)
16.3.4. Сброс при снижении питания
16.3.5. Временная последовательность сброса
16.3.6. Регистр состояния сброса (PCON)
16.3.7. Сброс при ошибках контроля по четности (PIR)
16.4. Прерывания
16.4.1. Внешнее прерывание INT
16.4.2. Прерывание TMR0
16.4.3. Прерывание по изменению состояния PORTB
16.5. Сохранение регистров при прерывании
16.6. Сторожевой таймер (WDT)
16.6.1. Период WDT
16.6.2. Рекомендации для программирования WDT
16.7. Режим низкого потребления (ОСТАНОВ)
16.7.1. Выход из режима останова
16.7.2. Вызов из режима останова прерыванием
16.8. Защита программы
16.9. Запись идентификатора
16.10. Внутрисхемное программирование
17. Система команд
17.1. Описание команды
18. Эксплуатационные характеристики
19. Применение микроконтроллеров
19.1. Портативный стереофонический усилитель с кнопочным регулятором уровня громкости и тембра
19.1.1. Аппаратная реализация
19.1.2. Описание программы
19.1.3 Программа портативного стереофонического усилителя с кнопочным регулятором уровня громкости и тембра
19.1.4. Файл для включения AMPLIFER. H
19.2. Часы реального времени с малым потреблением
19.2.1. Описание программы
19.2.2. Заключение
19.2.3. Исходный текст программы (CLOCK.ASM)
19.2.4. Файл для включения CL0CK. H
19.3. Импульсный преобразователь напряжения на базе PIC16C72A
19.3.1. Аппаратная реализация
19.3.2. Программная реализация
19.3.3. Исходный текст программы (APPNOTE. ASM)
19.4. ЦАП для генерации синусоидального сигнала и DTMF с использованием ШИМ и матрицы R-2R
19.4.1. Модуляция ширины импульса
19.4.2. Описание программы SINE.ASM
19.4.3. Программа формирования синусоидального сигнала (SINE.ASM)
19.4.4. Схема с использованием матрицы R-2R
19.4.5. Пример программы DTMF.ASM
19.4.6. Заключение
19.4.7. Программа формирования сигнала DTMF (DTMF.ASM)
Приложение
Назначение контактов микроконтроллеров
1. Серия микроконтроллеров в 18-контактных корпусах
2. Серия микроконтроллеров в 20-контактных корпусах
3. Серия микроконтроллеров в 28-контактных корпусах
4. Серия микроконтроллеров в 40-контактных корпусах
1.1. Совместимость семейства
1.2. Поддержка при разработке
2. Варианты устройств PIC16X7XX
2.1. Устройства с ультрафиолетовым стиранием
2.2. Однократно программируемые устройства
2.3. Устройства с FLASH памятью программ
2.4. Устройства с масочным ПЗУ
2.5. Упаковка микроконтроллеров
3. Структура микроконтроллеров
3.1. Синхронизация командных циклов
3.2. Конвейерная обработка команд
3.3. Структурные схемы микроконтроллеров
4. Организация памяти
4.1. Память программ
4.2. Память данных
4.2.1. Файл универсальных регистров
4.2.2. Регистры специальных функций
4.2.2.1. Регистр состояния («STATUS»)
4.2.2.2. Регистр OPTION
4.2.2.3. Регистр INTCON
4.2.2.4. Регистр PIE 1
4.2.2.5. Регистр PIR1
4.2.2.6. Регистр PIE2
4.2.2.7. Регистр PIR2
4.2.2.8. Регистр PCON
4.3. Регистры PCL и PCLATH
4.3.1. Вычисляемые переходы
4.3.2. Стек
4.4. Страничная организация памяти программ
4.5. Косвенная адресация. Регистры INDF и FSR
4.6. Чтение памяти программ
4.6.1. Регистры PMDATH и PMDATL
4.6.2. Регистры PMCON1
4.6.3. Процедура чтения памяти программ
4.6.4. Операции при включенной защите памяти программ
5. Порты ввода/вывода (I/O)
5.1. Регистры PORTA и TRISA
5.2. Регистры PORTB и TRISB
5.3. Регистры PORTC и TRISC
5.4. Регистры PORTD и TRISD
5.5. Регистры PORTE и TRISE
5.6. Программирование портов I/O
5.6.1. Двунаправленные порты I/O
5.6.2. Последовательность операций на портах I/O
6. Параллельный ведомый порт
7. Модуль таймера TMR0
7.1. Прерывание от TMR0
7.2. Внешняя синхронизация TMR0
7.2.1. Синхронизация внешних трактов
7.2.2. Задержка приращения TMRO
7.3. Предделитель
7.3.1. Переключение назначения предделителя
8. Модуль таймера TMR1
8.1. Работа TMR1 в режиме таймера
8.2. Работа TMR1 в режиме счетчика
8.2.1. Режим синхронного счетчика
8.2.2. Режим асинхронного счетчика
8.3. Генератор таймера 1
8.4. Сброс TMR1 с использованием выхода ССР
8.5. Сброс регистров таймера 1 (TMR1H: TMR1L)
8.6. Чтение и запись таймера 1
9. Модуль таймера TMR2
9.1. Предделитель и постделитель таймера 2
9.2. Выход таймера 2
10. Модули ССР
10.1. Режим накопления
10.1.1. Предделитель
10.1.2. Модуль таймера 1 и режим накопления ССР
10.2. Режим сравнения
10.2.1. Модуль таймера 1 и режим сравнения ССР
10.2.2. Режим прерывания программы
10.2.3. Запуск специального события
10.3. Режим ШИМ
10.3.1. Период ШИМ
10.3.2. Ширина импульса ШИМ
10.3.3. Порядок программирования режима ШИМ
10.4. Модернизированный модуль ССР
10.4.1. Конфигурация выходов
10.4.2. Программирование активного уровня на выходах
10.4.3. Задержки при формировании выходных сигналов
10.4.4. Реверс в режиме четырехканального выхода
10.4.5. Реализация системы
10.4.6. Порядок программирования режима ШИМ
11. Модуль синхронного последовательного порта
11.1. Режим SPI
11.1.1. Режим ведущего SPI
11.1.2. Режим ведомого SPI
11.2. Описание интерфейса НС
11.2.1. Начало и конец передачи данных
11.2.2. Адресация устройств PC
11.2.3. Пересылка подтверждения
11.2.4. Режим с многими ведущими
11.2.4.1. Арбитраж
11.2.4.2. Синхронизация трактов
11.3. SSP в режиме l2C
11.3.1. Режим ведомого PC109
11.3.1.1. Адресация
11.3.1.2. Прием данных
11.3.1.3. Передача данных
11.3.2. Программный режим ведущего PC
11.3.3. Режим с многими ведущими
11.4. Усовершенствованный модуль SSP (MSSP)
11.4.1. Работа в режиме аппаратной реализации ведущего
11.4.2. Генератор скорости обмена
11.4.3. Формирование условия начала
11.4.4. Формирование условия повторное начало
11.4.5. Передача данных
11.4.6. Прием данных
11.4.7. Формирование подтверждения123
11.4.8. Формирование условия окончания
11.4.9. Режим с многими ведущими
11.4.9.1. Синхронизация трактов
11.4.9.2. Конфликт шины при формировании условия начала
11.4.9.3. Конфликт шины при формировании условия повторное начало
11.4.9.4. Конфликт шины при формировании условия окончания
11.4.10. Поддержка общего вызова в режиме ведомого PC
11.4.11. Подключение к шине PC
12. Универсальный синхронно-асинхронный приемопередатчик (USART)
12.1. Генератор скорости передачи USART (BRG)
12.1.1. Выборка принимаемых данных
12.2. Асинхронный режим USART
12.2.1. USART в режиме асинхронного передатчика
12.2.2. USART в режиме асинхронного приемника
12.2.3. Режим асинхронного приемника с детектированием адреса
12.3. Синхронный режим ведущего USART
12.3.1. Передача в синхронном режиме ведущего
12.3.2. Прием в синхронном режиме ведущего
12.4. Синхронный режим ведомого USART
12.4.1. Передача в синхронном режиме ведущего
12.4.2. Прием в синхронном режиме ведущего
13. Модуль опорного напряжения и контроля напряжения питания
13.1. Источник стабильного напряжения (BANDGAP)
13.2. Опорные напряжения для A/D-преобразователя
13.3. Контроль низкого напряжения питания (LVD)
13.3.1. Вход внешнего аналогового напряжения
14. Модуль аналого-цифрового преобразователя
14.1. Устройство выборки и хранения
14.2. Синхронизация A/D-преобразования
14.3. Программирование аналоговых входов
14.4. A/D-преобразование
14.4.1. Время преобразования и точность результата
14.5. A/D-преобразование во время останова
14.6. Ошибка и точность A/D-преобразования
14.7. Воздействие сброса
14.8. Запуск специальным событием ССР
14.9. Рекомендации при подключении
14.10. 10- и 12-разрядные A/D-преобразователи
14.10.1. Программирование аналоговых входов
14.10.2. Управление опорным напряжением
14.10.3. Выравнивание результата A/D-преобразования
15. Универсальная последовательная шина (USB)
15.1. Краткий обзор шины USB
15.1.1. Протоколы передачи
15.1.2. Кадры
15.1.3. Питание
15.1.4. Оконечные точки
15.1.5. Нумерация устройств
15.1.6. Описатели
15.1.7. Классы устройств/драйверы класса
15.1.8. Резюме
15.2. Микроконтроллеры с модулем USB
15.2.1. Приемопередатчик
15.2.2. Регистры управления и состояния модуля USB
15.2.2.1. Регистр флажков прерываний модуля USB (UIR)
15.2.2.2. Регистр разрешения прерываний модуля USB (UIE)
15.2.2.3. Регистр флажков ошибок модуля USB (UIR)
15.2.2.4. Регистр разрешения прерывания по ошибкам модуля USB (UEIE)
15.2.2.5. Регистр состояния модуля USB (USTAT)
15.2.2.6. Регистр управления модулем USB (UCTRL)
15.2.2.7. Регистр адреса USB (UADDR)
15.2.2.8. Регистр состояния программного обеспечения USB
15.2.2.9. Регистры управления оконечными точками (UEPN)
15.2.3. Таблица дескрипторов буферов (BDT)
15.2.3.1. Буферы оконечных точек
15.3. Программирование модуля USB
15.3.1. Программное обеспечение USB
15.3.2. Основные функции и подпрограммы
15.3.3. Ресурсы процессора
15.3.4. Уровни стека
15.3.4.1. Память программ
15.3.4.2. Память данных
15.3.4.3. Буферные регистры
15.3.4.4. Выбор страниц/выбор банков
15.3.5. Интегрирование подпрограмм USB в программу
16. Дополнительные возможности
16.1. Слово конфигурации
16.2. Конфигурации генератора
16.2.1. Режим генератора
16.2.2. Генераторы на кварцевых резонаторах
16.2.3. Внешние генераторы на кварцевом резонаторе
16.2.4. RC-генератор
16.2.5. Внутренний RC-генератор
16.2.6. Переключение частоты внутреннего RC-генератора
16.3. Сброс
16.3.1. Сброс при включении питания (POR)
16.3.2. Таймер включения питания (PWRT)
16.3.3. Таймер запуска генератора (OST)
16.3.4. Сброс при снижении питания
16.3.5. Временная последовательность сброса
16.3.6. Регистр состояния сброса (PCON)
16.3.7. Сброс при ошибках контроля по четности (PIR)
16.4. Прерывания
16.4.1. Внешнее прерывание INT
16.4.2. Прерывание TMR0
16.4.3. Прерывание по изменению состояния PORTB
16.5. Сохранение регистров при прерывании
16.6. Сторожевой таймер (WDT)
16.6.1. Период WDT
16.6.2. Рекомендации для программирования WDT
16.7. Режим низкого потребления (ОСТАНОВ)
16.7.1. Выход из режима останова
16.7.2. Вызов из режима останова прерыванием
16.8. Защита программы
16.9. Запись идентификатора
16.10. Внутрисхемное программирование
17. Система команд
17.1. Описание команды
18. Эксплуатационные характеристики
19. Применение микроконтроллеров
19.1. Портативный стереофонический усилитель с кнопочным регулятором уровня громкости и тембра
19.1.1. Аппаратная реализация
19.1.2. Описание программы
19.1.3 Программа портативного стереофонического усилителя с кнопочным регулятором уровня громкости и тембра
19.1.4. Файл для включения AMPLIFER. H
19.2. Часы реального времени с малым потреблением
19.2.1. Описание программы
19.2.2. Заключение
19.2.3. Исходный текст программы (CLOCK.ASM)
19.2.4. Файл для включения CL0CK. H
19.3. Импульсный преобразователь напряжения на базе PIC16C72A
19.3.1. Аппаратная реализация
19.3.2. Программная реализация
19.3.3. Исходный текст программы (APPNOTE. ASM)
19.4. ЦАП для генерации синусоидального сигнала и DTMF с использованием ШИМ и матрицы R-2R
19.4.1. Модуляция ширины импульса
19.4.2. Описание программы SINE.ASM
19.4.3. Программа формирования синусоидального сигнала (SINE.ASM)
19.4.4. Схема с использованием матрицы R-2R
19.4.5. Пример программы DTMF.ASM
19.4.6. Заключение
19.4.7. Программа формирования сигнала DTMF (DTMF.ASM)
Приложение
Назначение контактов микроконтроллеров
1. Серия микроконтроллеров в 18-контактных корпусах
2. Серия микроконтроллеров в 20-контактных корпусах
3. Серия микроконтроллеров в 28-контактных корпусах
4. Серия микроконтроллеров в 40-контактных корпусах
Скачать Микроконтроллеры PIC16X7XX, 3-е издание