Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsii_kuznetsov_2.doc
Скачиваний:
4
Добавлен:
26.11.2019
Размер:
772.61 Кб
Скачать

12 Последовательный ввод-вывод информации

SPI – последовательный синхронный интерфейс. Для передачи по 3-х проводной системе в синхронном режиме, обеспечивает высокоскоростной синхронный обмен данными между МК и периферийными устройствами или между несколькими МК.

Особенности:

1) Полнодуплексный 3-проводный синхронный обмен данными (сначала младшими, затем старшими байтами). 2) Режим работы ведущий или ведомый. 3) Обмен данными с передаваемыми первыми старшим или младшим битами. 4) Четыре программируемые скорости обмена данными. 5) Флаг прерывания по окончании передачи. 6) Активация из Idle режима (только в режиме ведомого)

Структурная схема канала. MISO и MOSI – название соединения (обозначения контактов)

Структурная схема каждой из сторон этого канала

Регистр управления SPI - SPCR. Разряды

D7

SPIE

разрешение прерываний. Установка в 1 и приводит к установке SPIF бита SPSR, и при разрешении глобального прервывания, к выполнению прерывания SPI

D6

SPE

разрешение передачи SPI (самого канала). Установка в 1 разрешает подключение соответствующих контактов – разрешение альтернативной функции

D5

DORD

порядок данных (delta order) при установке в 1 передача идет младшими разрядами вперед, если 0 – старшими разрядами вперед.

D4

MSTR

выбор режима MS (master-slave) при установке в 1 работает в ведущем режиме соответствующая сторона, в состоянии 0 – в ведомом режиме.

D3

CPOL

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

D2

CPHA

фаза тактового сигнала (на временной диаграмме)

SPSL

SPR0

Выбор частоты тактового сигнала

0

0

- деление входной частоты на 4

0

1

- на 16

1

0

- на 64

1

1

- на 128

Регистр статуса SPI - SPSR

D7

SPIF

- флаг прерывания. По завершению обмена последовательными данными установка в 1, если бит SPIE в регистре SPCR установлен в 1 и разрешено глобальное прерывание. Этот бит очищается аппаратно при выполнении программы обслуживания прерывания.

D6

WCOL

- флаг ошибки при записи. Устанавливается в состояние 1 если в процессе передачи данных выполнялась запись в регистр данных (SPDR). Чтение содержимого регистра данных, как и запись в него, выполненные во время пересылки данных, могут привести к неверному результату Очищается аппаратно при первом считывании регистра статуса SPI.

Регистр данных SPI - SPDR

Адрес основного регистра $0F

Регистр данных SPI представляет собой регистр с возможностью чтения/записи и предназначен для пересылки данных между регистровым файлом и сдвиговым регистром SPI. Запись в регистр SPDR инициирует передачу данных, считывание регистра приводит к чтению сдвигового регистра приема

UART

Универсальный асинхронный приемо-передатчик.

Особенности: 1) Обеспечивает любую скорость передачи информации в бодах 2) Высокая скорость передачи при низкой частоте XTAL 3) 8-разрядный или 9-разрядный форматы данных 4) Фильтрация шума (многократное сканирование каждого бита информации) 5) Обнаружение переполнения 6) Обнаружение ошибок формирования кадров 7) Детектирование бита ложного старта 8) Три отдельных прерывания: по завершению передачи (TXC), по пустому регистру передаваемых данных (TXDRE) и по завершению приема (RXC).

9-й символ информации может быть как стоповый бит или контроль на четность.

Стартовый бит

9 кадр

байт

Строповый

бит

При обнаружении перехода из 1 в 0 начинается прием или передача.

Через 10 (11) разрядный сдвиговой регистр может происходить передача.

Прием и передача могут происходить в полном или в половинном дуплексном режиме. Интервал делится на 16: 8, 9 и 10 интервалы синхронизации обеспечивают выборку в середине каждого интервала. 2 импульса имеют одно и то же значение, происходит определение 0 или 1 (если они равны) – происходит выделение разряда.

Имеет 3 прерывания: 1) По завершению передачи 2) По пустому регистру передаваемых данных 3) По завершению приема

Подключение идет через порт Е РЕ0 – приемник.

РЕ1 – включается трансмиттер delta-передатчик

Структурная схема передатчика

UCR и USR – 8-и разрядные регистры

Неподключенные связи в UСR относятся к приемнику, подключенные – к передаче

Структурная схема приемника

USR – регистр статуса

D7

RxC

Прием завершен. Установка в 1 при пересылке соответствующего байта из сдвигового регистра приема в UDR. Дает сигнал прерывания по завершению приема.

D6

TxC

Передача завершена. Данный бит устанавливается в состояние 1 когда весь символ (включая стоповый бит) выведен из сдвигового регистра передачи и в UDR не записаны новые данные

D5

UDRE

Регистр данных пуст. Данный бит устанавливается в 1, когда регистр данных пуст. РД готов к получению нового бита для передачи.

D4

FE

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

D3

DOR

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

D2-D0

Зарезервированные биты. Обычно установлены в 0

Регистр управления UART – UCR

D7

RxCIE

разрешение прерывания по завершению приема. При установленном в состояние 1 бите и установленном разрешении глобального прерывания установка бита RXC в регистре USR приведет к выполнению прерывания по завершению приема.

D6

TxCIE

Разрешение прерывания по завершению передачи. При установленном в состояние 1 бите и установленном разрешении глобального прерывания установка бита TXC в регистре USR приведет к выполнению прерывания по завершению передачи.

D5

UDRIE

разрешение прерывания по пустому регистру данных. При установленном в состояние 1 бите и установленном разрешении глобального прерывания установка бита UDRE в регистре USR приведет к выполнению прерывания по пустому регистру данных UART.

D4

RxEN

Разрешение приемника. Установленный в состояние 1 бит разрешает приемник UART. Если приемник запрещен, то флаги статуса TXC, DOR и FE установить невозможно. Если эти флаги установлены, то очистка этого бита не приведет к очистке этих флагов

D3

TxEN

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

D2

CHR9

режим 9-разрядных символов. Если 1 передаются или принимаются 9-разрядные слова плюс стартовый и стоповый биты. Девятые биты читаются и записываются с использованием битов RXB8 и TXB8 регистра UCR. Девятый бит данных может использоваться как дополнительный стоповый бит или бит контроля четности.

D1

Rx8

Прием 8-разрядных данных. При установленном в состояние 1 бите CHR9 этот бит является девятым битом данных принятого символа.

D0

TxB8

Передача 8-разрядных данных. При установленном в состояние 1 бите CHR9 этот бит является девятым битом данных передаваемого символа

Бод-генератор представляет собой делитель, генерирующий импульсы передачи с частотой, определяемой выражением

fСК – частота в бодах

16– частота кварцевого генератора

UBRR – содержимое регистра (частота меняется от 0 до 255)

Частота в бодах может принимать значения от 2 400 до 115 200 Гц.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]