Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASSEMBLER / Пособие51GB / 3.описание особенностей GB.doc
Скачиваний:
132
Добавлен:
16.04.2015
Размер:
750.08 Кб
Скачать

3.8 Расширенный последовательный порт

Расширенный последовательный порт SEP увеличивает возможности микроконтроллера по управлению подключёнными к нему периферийными устройствами посредством последовательного кода, предоставляя средства для аппаратной реализации шины PC-bus. SEP имеет 4 режима работы и 3 источника тактирования. Для ввода/вывода информации через этот порт задействовано 2 вывода микросхемы: Р4.1-для ввода/вывода данных и Р4.0-дпя вывода частоты тактирования последовательной посылки. Передаваемый или принимаемый пакет состоит из 8-ми бит данных и занимает 8 тактов работы SEP. В отсутствие принимаемой или передаваемой информации тактовый сигнал и данные неактивны.

SEP имеет 3 SFR-регистра - SEPCON, SEPDAT и SEPSTAT (физические адреса, соответственно -0D7h, 0E7h и 0F7h). Регистры адресуются только побайтно, хотя и имеют символические обозначения отдельных битов. Четыре режима работы порта определяют неактивный уровень сигнала тактирования, а также фронт (передний или задний), используемый для передачи или приёма. Работа порта в различных режимах изображена на рис.

Для приёма или передачи байта пользовательская программа должна установить режим работы порта (биты CLKPOL и CLKPH), скорость передачи (биты SEPS1 и SEPS0), а также разрешить бит SEPE. Процесс передачи начинается при загрузке байта в регистр SEPDATA. Приём происходит при установленном бите SEPREN пока регистр SEPDATA пуст и нет передачи байта. После приёма 8-ми битов происходит аппаратная очистка бита SEPREN. Завершение передачи или приёма сопровождается установкой бита SEPIF (данный бит должен быть очищен программно). При установке соответствующего бита регистра разрешения прерывания SEPIF инициирует его.

При попытках программы записать или прочитать байт в регистре SEPDATA в процессе передачи или приёма им посылки устанавливается бит ошибки. Флаг SEPFWR устанавливается при наличии такой попытки в процессе передачи SEP байта, а флаг SEPFRD - в процессе приёма. Прерываний, связанных с этими битами ошибок, не существует. Все они остаются в установленном состоянии до их программной очистки.

Режимы работы порта sep

Регистр управления sepcon

MSB LSB

-

-

SEPE

SEPREN

CLKPOL

CLKPH

SEPS1

SEPS0

Бит

Поз.

Функция

-

SEPCON.7

Зарезервирован для дальнейшего использования

-

SEPCON.6

Зарезервирован для дальнейшего использования

SEPE

SEPCON.5

Бит разрешения SEP

SEPREN

SEPCON.4

Бит разрешения приёма в SEP

CLKPOL

SEPCON.3

Полярность тактирования SEP

CLKPH

SEPCON.2

Фаза тактирования SEP

SEPS1

SEPCON.1

Бит 1 выбора скорости SEP

SEPS0

SEPCON.0

Бит 0 выбора скорости SEP

CLKPOL

CLKPH

Режим SEP

0

0

SEPMODE0

0

1

SEPMODE1*

1

0

SEPMODE2

1

1

SEPMODE3*

*- не используются при приеме

SEPS1

SEPS0

Скорость SEP

0

0

Fosc/12

0

1

Fosc/24

1

0

Fosc/48

1

1

Fosc/96

Соседние файлы в папке Пособие51GB