- •Однокристальная микроЭвм
- •Содержание
- •1. Введение.
- •1.1 Характеристики.
- •1.2 Общее описание.
- •1.3 Программная модель.
- •1.4 Характеристики представителей семейства mc68hc11.
- •2. Описание сигналов и режимы работы.
- •2.1 Описание выводов.
- •2.1.1 Выводы питания (vdd) и земли (vss).
- •2.1.2 Сброс (reset/).
- •2.1.3 Входы внешней синхронизации (xtal и extal).
- •2.1.4 Вывод тактовой частоты синхронизации e (e).
- •2.1.5 Запрос прерывания (irq/).
- •2.1.6 Немаскируемое прерывание (xirq/).
- •2.1.7 Выводы moda/lir/ и modb/vstby.
- •2.1.8 Опорные напряжения ацп (vrLи vrh).
- •2.1.9 Строб b и чтение/запись (strb / r/w/).
- •2.1.10 Строб a и строб адреса (stra/as)
- •2.1.11 Сигналы портов.
- •2.2 Режимы работы.
- •2.2.1 Однокристальный режим.
- •2.2.2 Расширенный режим.
- •2.3 Специальный режим загрузки.
- •Примечание
- •Примечание
- •2.2.4 Дополнительные опции загрузчика программ.
- •2.2.5 Специальный режим теста.
- •3. Внутренняя память.
- •3.1 Карта памяти.
- •3.2 Озу и регистр отображения памяти (init).
- •3.5 Эсппзу.
- •3.5.1 Регистр управления эсппзу (pprog).
- •3.5.2 Регистр защиты эсппзу (bprot).
- •3.5.3 Программирование/стирание внутреннего эсппзу.
- •3.5.4 Регистр конфигурации системы (config).
- •Примечание: в этот момент недопустим сброс контроллера!!!
- •4. Параллельный ввод/вывод.
- •4.1 Порты ввода/вывода общего назначения (c и d).
- •4.2 Порты с фиксированным направлением ввода/вывода (a, b и e).
- •4.3 Простой стробируемый ввод/вывод.
- •4.3.1 Стробируемый ввод-порт c.
- •4.3.2 Стробируемый вывод-порт b.
- •4.4 Ввод/вывод с полным квитированием установления связи.
- •4.4.1 Протокол режима ввода с полным квитированием установления связи.
- •4.4.2 Протокол режима вывода с полным квитированием установления связи.
- •4.5 Регистр управления вводом/выводом (pioc).
- •5. Последовательный интерфейс связи (sci).
- •5.3 Особенности при работе в системах с несколькими приемниками.
- •5.4 Принимаемые данные (RxD).
- •5.5 Распознавание старт-бита.
- •5.6 Передаваемые данные (TxD).
- •5.7 Фунциональное описание.
- •5.8 Регистры sci.
- •5.8.1 Регистр данных последовательной связи (scdr).
- •5.8.2 Регистр управления 1 (sccr1).
- •5.8.3 Регистр управления 2 (sccr2).
- •5.8.4 Регистр статуса последовательной связи (scsr).
- •5.8.5 Регистр скорости приема/передачи (baud).
- •Примечание
- •Примечание
- •6. Последовательный периферийный интерфейс.
- •6.1 Общий обзор и характеристики.
- •6.2 Описание сигналов spi.
- •6.2.1 Вход ведущего-выход ведомого (miso).
- •6.2.2 Выход ведущего-вход ведомого (mosi).
- •6.2.3 Сигналы синхронизации (sck).
- •6.2.4 Выбор ведомого устройства (ss/).
- •6.3 Функциональное описание.
- •6.4 Регистры spi.
- •6.4.1 Регистр управления периферийным интерфейсом (spcr).
- •6.4.2 Регистр статуса поеледовательного периферийного интерфейса (spsr).
- •6.4.3 Регистр ввода/вывода spi.
- •7. Аналого-цифровой преобразователь.
- •7.1 Процесс преобразования.
- •7.2 Назначение каналов.
- •7.4 Работа в многоканальном режиме.
- •7.5 Работа в режимах stop и wait.
- •7.6 Регистр управления и статуса ацп (adctl).
- •Примечание:
- •Примечание:
- •7.7 Регистры результатов преобразований 1,2,3 и 4 (adr1, adr2, adr3 и adr4).
- •7.8 Подача питания на ацп и выбор источника синхронизации.
- •8. Программируемый таймер, прерывания реального времени и счетчик импульсов.
- •8.1 Программируемый таймер.
- •8.1.1 Счетчик.
- •8.1.2 Входная фиксация.
- •8.1.3 Выходное сравнение.
- •8.1.4 Управление вводом/выводом выходного сравнения 1.
- •8.1.5 Регистр принудительного сравнения таймера (cforc).
- •8.1.6 Регистр 1 маскирования выходного сравнения (oc1m).
- •8.1.7 Регистр данных выходного сравнения 1 (oc1d).
- •8.1.8 Регистр 1 управления таймером (tctl1).
- •8.1.9 Регистр 2 управления таймером (tctl2).
- •8.1.10 Регистр 1 маскирования прерываний таймера (tmsk1).
- •Примечание:
- •8.1.11 Регистр 1 флагов прерывания таймера (tflg1).
- •Примечание:
- •8.1.12 Регистр 2 маскирования прерываний таймера (tmsk2).
- •8.1.13 Регистр 2 флагов прерываний таймера (tflg2).
- •8.2 Прерывания реального времени.
- •8.3 Счетчик импульсов.
- •8.4 Регистр управления счетчиком импульсов (pactl).
- •9. Сброс, прерывания и режимы с пониженным потреблением энергии.
- •9.1 Варианты сброса.
- •9.1.1 Внешний вывод reset/.
- •9.1.2 Сброс при включении питания.
- •9.1.3 Сброс, вызываемый системой слежения.
- •9.1.4 Сброс тактового монитора.
- •9.1.5 Регистр выбора конфигурации (option).
- •9.2 Прерывания.
- •9.2.1 Программное прерывание (swi).
- •Примечание
- •9.2.2 Прерывание по неверному коду команды.
- •9.2.3 Биты маскирования прерываний регистра условий.
- •9.2.4 Структура приоритетов.
- •9.2.5 Регистр наивысшего приоритета I-прерывания (hprio).
- •9.3 Режимы пониженного энергопотребления.
- •9.3.1 Команда wait.
- •9.3.2 Команда stop.
- •10. Центральный процессор, режимы адресации и система команд.
- •10.1 Регистры цп.
- •10.1.1 Аккумуляторы a и b.
- •10.2 Режимы адресации.
- •10.2.1 Непосредственная адресация.
- •10.2.2 Прямая адресация.
- •10.2.3 Расширенная адресация.
- •10.2.4 Индексная адресация.
- •10.2.5 Неявная адресация.
- •10.2.6 Относительная адресация.
- •10.2.7 Байт префикса.
- •10.3 Система команд.
- •11. Электрические характеристики.
- •11.1 Максимальные диапазоны.
- •11.2 Температурные характеристики.
- •11.3 Энергопотребление.
- •11.4 Электрические характеристики.
- •11.5 Синхронизация.
- •11.7 Характеристики системы ацп.
- •11.8 Временные диаграммы шины расширенния.
- •11.9 Временные характеристики spi.
- •11.10 Характеристики эсппзу.
- •12. Корпус.
- •12.1 Расположение выводов.
- •12.2 Размеры корпуса.
6.4 Регистры spi.
Для управления, хранения текущего состояния системы и хранения данных SPI использует три регистра. Эти регистры называются: регистр управления SPI (SPCR), регистр статуса SPI (SPCR) и регистр ввода/вывода SPI (SPDR). Они описываются в последующих параграфах.
6.4.1 Регистр управления периферийным интерфейсом (spcr).
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
$1028 |
SPIE |
SPE |
DWOM |
MSTR |
CPOL |
CPHA |
SPR1 |
SPR0 |
SPCR |
Сброс |
0 |
0 |
0 |
0 |
0 |
1 |
U |
U |
|
SPIE -разрешение прерываний от SPI:
0=прерывания по флагу SPIF запрещены;
1=запрос прерывания от SPI если SPIF=1.
SPE -разрешение работы SPI:
0=система SPI запрещена;
1=система SPI разрешена.
DWOM -выбор режима работы линий порта D:
Бит DWOM влияет сразу на шесть выводов порта D.
0=выводы порта D являются нормальными КМОП-выводами;
1=выводы порта D-выводы с открытым стоком.
MSTR -выбор режима устройства:
0=режим ведомого устройства;
1=режим ведомого устройства.
CPOL -полярность сигналов синхронизации.
Если этот бит сброшен и данные не передаются, то на выводе SCK ведомого устройства находится постоянный сигнал с низким уровнем. Наоборот, если бит установлен, то на выводе присутствует сигнал высокого уровня. Этот бит также используется совместно с битом управления фазой для задания формы импульсов синхронизации между ведущим и ведомым устройствами. См. рисунок 6-1.
CPHA -фаза сигналов синхронизации.
Этот бит используется совместно с битом управления полярностью для задания формы импульсов синхронизации между ведущим и ведомым устройствами. Бит CPOL можно рассматривать также как простой инвертор, устанавливаемый на линии SCK. Бит CPHA позволяет выбирать один из двух фундаментально отличных протоколов обмена. Если бит CPHA=0, то импульсы сдвига представляют собой логическое ИЛИ между SCK и SS/. Как только на выводе SS/ появляется низкий уровень сигнала, передача данных начинается с первым фронтом SCK, включая в себя первый образец данных. При бите SPHA=1 вывод SS/ можно рассматривать просто как управляющий сигнал разрешения вывода. См. рисунок 6-1.
SPR1 и SPR0 -выбор частоты обмена SPI.
Эти два бита выбирают одну из четырех скоростей обмена по последовательному периферийному интерфейсу, которая используется ведущим устройством для генерации импульсов синхронизации по линии SCK. При работе в режиме ведомого устройства эти два бита не имеют никакого значения. Варианты скоростей обмена в зависимости от содержимого этих двух бит приведены в таблице 6-1.
|
SPR1 |
SPR0 |
Делитель для частоты внутренней синхронизации |
|
0 |
0 |
2 |
|
0 |
1 |
4 |
|
1 |
0 |
16 |
|
1 |
1 |
32 |
Таблица 6-1. Выбор скорости обмена по SPI.
6.4.2 Регистр статуса поеледовательного периферийного интерфейса (spsr).
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
$1029 |
SPIF |
WCOL |
0 |
MODF |
0 |
0 |
0 |
0 |
SPSR |
Сброс |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
|
SPIF -флаг завершения передачи.
Флаг завершения передачи по SPI устанавливается при завершении последовательности передачи между микроконтроллером и внешним устройством. Если флаг SPIF принимает значение 1, а бит SPIE установлен, то генерируется запрос на прерывание от последовательного периферийного интерфейса. Чтение значения регистра SPSR с последующим доступом к регистру SPDR (при условии, что флаг SPIF установлен) вызывает сброс этого флага. Если бит SPIF установлен, то все попытки записать в регистр SPDR любое значение без предшествующего чтения содержимог регистра SPSR игнорируются.
WCOL -ошибка записи.
Бит ошибки записи устанавливается при попытке произвести запись в регистр данных SPI во время передачи данных. Если CPHA=0, то передача начинается с возникновением сигнала низкого уровня на выводе SS/ и заканчивается с появлением на нем высокого уровня после восьми тактов синхронизации на SCK. Если же CPHA=1, то передача начинается как только SCK становится активным при низком уровне сигнала на выводе SS/ и заканчивается с установкой флага SPIF. Сброс бита WCOL производится аналогично сбросу бита SPIF.
Бит 5 -не используется, при чтении всегда возвращает ноль.
MODF -сбой режима.
Флаг сбоя режима индицирует возникновение возможного конфликта при одновременной работе нескольких устройств в режиме ведущих и допускает выход из текущего режима работы системы в состояние, определяемое по умолчанию или генерацию сброса. Бит MODF в обычном состоянии сброшен и устанавливается только в том случае, когда на входе SS/ ведущего устройства возникает низкий уровень сигнала. Установка бита MODF влияет на работы системы SPI следующим образом:
1) Если бит SPIE=1, то генерируется запрос на прерывание.
2) Очищается бит SPE, что запрещает работу системы SPI.
3) Очищается бит MSTR, что переводит устройство в работу как ведомого.
4) Четыре бита DDRD, соответствующие выводам SPI сбрасываются.
Флаг MODF очищается посредством чтения значения SPSR (при установленном флаге MODF) и последущей записью в регистр SPCR. После очистки флага MODF программа может восстановить исходное состояние битов SPE и MSTR. После сбоя необходимо также восстановить состояние регистра DDRD.
Биты 3-0 -не используется, при чтении всегда возвращают ноль.