Научная литература
booksshare.net -> Добавить материал -> Физика -> Александров Е.К. -> "Микропроцессорные системы" -> 335

Микропроцессорные системы - Александров Е.К.

Александров Е.К., Грушвицкий Р.И., Купрянов М.С., Мартынов О.Е. Микропроцессорные системы — Спб.: Политехника, 2002. — 935 c.
ISBN 5-7325-0516-4
Скачать (прямая ссылка): mikroprocessorniesistemi2002.djvu
Предыдущая << 1 .. 329 330 331 332 333 334 < 335 > 336 337 338 339 340 341 .. 528 >> Следующая

принимает решение, принимать ли дальнейшие данные, если они адресованы
ему, или игнорировать их, если проверка адресов завершилась неудачно.
593
КОММУНИКАЦИОННЫЕ МИКРОКОНТРОЛЛЕРЫ И СИСТЕМЫ НА ИХ ОСНОВЕ
При работе с UART-контроллером пользователю предоставлена возможность
временно остановить передачу и возобновить ее с точки останова через
некоторое время. Остановкой передачи управляет бит FRZ. Если бит FRZ = 0,
то передатчик работает в нормальном режиме. Если бит FRZ = 1, то
передатчик передает все данные из FIFO канала и останавливает передачу.
После сброса бита FRZ = 0 передача будет продолжена со следующего
символа. Значение бита FRZ не влияет на работу приемника.
При работе с UART-протоколом пользователь может также управлять работой
сигналов управления CTS и RTS и сигналами тактовой частоты.
При значении бита FLC = 1 производится контроль сигнала "разрешение
передачи" cts ПРИ передаче символов. Если во время передачи символа
сигнал CTS = 1, то передатчик передает текущий символ до конца и
останавливает передачу. Генерируется ошибка "потеря CTS -сигнала",
признак этой ошибки отмечается в бите CTS в слове состояния BD. Передача
возобновляется после установки сигнала CTS = 0. Если сигнал CTS = 1, то
возможна передача только IDLE-символов. Если бит FLC = 0, то UART-
контроллер не анализирует состояние сигнала CTS при передаче.
При значении бита DRT = 1 пользователь может запретить совместную
одновременную работу приемника и передатчика. Этот режим часто
применяется в многоточечной конфигурации, когда пользователь не желает
принимать данные, которые он сам передает. Для этого он на время работы
своего передатчика запрещает работу приемника. При значении DRT = 0
обеспечивается совместная работа приемника и передатчика.
Пользователь может при работе настраивать работу UART-контроллера или в
асинхронном режиме, если бит SYN = 0, или в синхронном режиме, если бит
SYN = 1. При работе в асинхронном режиме коэффициент внутреннего
увеличения тактовой частоты в 8х, 16х или 32х раза устанавливается при
программировании соответствующих битов в регистре GSMR модуля СРМ.
Если канал работает с синхронным UART-протоколом и требуется увеличение
скорости передачи (например, при работе с V.14 устройствами), то при
программировании бита RZS = 1 может быть включен режим прием кадра данных
без стоп-битов. На практике это реализуется как передача нулевого стоп-
бита. Для ускорения работы канала нулевой стоп-бит может рассматриваться
и как старт-бит следующего кадра данных. Получив кадр данных с нулевым
стоп-битом, приемник продолжает свою работу, регистрирует ошибку кадра
(так как кадр принят без стоп-бита), но генерирует прерывание по ошибке,
только когда примет два BREAK-символа без стоп-битов.
Работа UART-контроллера. При передаче данные выставляются на TXDx-
контакт, при приеме данные читаются с RXDx-контаюга. При передаче LSB-
биты в поле данных передаются первыми.
Данные для передачи и данные, которые приняты из сети, хранятся в буфере
памяти. В буферах хранится только содержимое поля данных. Старт-бит,
стоп-бит, бит контроля и бит адреса добавляются при передаче и удаляются
при приеме самим SCC-каналом и в памяти не хранятся. При работе в
многоточечном соединении допускается хранение в памяти адреса, принятого
в кадре данных. Данные одного кадра могут занимать несколько буферов.
Если при приеме или передаче символа произошли ошибки, то будет
установлен соответствующий бит ошибки в слове состояния BD.
Размер FIFO SCC-канала при работе с UART-протоколом равен 32 байтам для
приема и 32 байтам для передачи, если используется канал SCC1, и по 16
байт, если используются другие SCC-каналы. Размер ячейки буфера FIFO
устанавливается равным 8 битам при программировании регистра GSMR. В СРМ
пользователь может ускорить передачу данных из FIFO-буфера передачи,
сократив число ячеек FIFO до одной, установив соответствующее значение в
бите TFL в регистре GSMR.
594
ПОДДЕРЖКА ПРОТОКОЛОВ В КОММУНИКАЦИОННЫХ КОНТРОЛЛЕРАХ
Если SCC-канал настроен на работу с UART-протоколом, то параметры
конкретного протокола хранятся в протокол-ориентированной области
parameter RAM (табл. 5.72).
Таблица 5.72
Память параметров UART-контроллера в микроконтроллере МРС860
Адрес Название Размер, бит Описание
SCC base+30 - 32 Зарезервировано
SCC base+34 - 32 Зарезервировано
SCC base+38 MAXJDL 16 Максимальное число IDLE-символов
SCC base+3A IDLC 16 Счетчик IDLE-символов
SCC base+3C BRKCR 16 Регистр передаваемого BREAK-символа
SCC base+3E PAREC 16 Счетчик ошибок четности
SCC base+40 FRMEC 16 Счетчик ошибок формата кадра
SCC base+42 NOSEC 16 Счетчик ошибок шума
SCC base+44 BRKEC 16 Счетчик полученных BREAK-символов
SCC base+46 BRKLN 16 Длина принятой BREAK-последовательности
SCC base+48 UADDR1 16 Первый адрес
SCC base+4A UADDR2 16 Второй адрес
SCC base+4C RTEMP 16 Временная память приемника
SCC base+4E TOSEQ 16 Передаваемый служебный символ
SCC base+50 CHAR1 16 Контрольный символ 1
Предыдущая << 1 .. 329 330 331 332 333 334 < 335 > 336 337 338 339 340 341 .. 528 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed