11.3.8. Регистры модуля SCI

(Руководство разработчика по микроконтроллерам семейства HCS08)

Для настройки модуля SCI используется 8 регистров специальных функций:

  • SCIC1 — первый регистр управления модуля SCI;
  • SCIC2 — второй регистр управления модуля SCI;
  • SCIC3 — третий регистр управления модуля SCI;
  • SCIS1 — первый регистр состояния модуля SCI;
  • SCIS2 — второй регистр состояния модуля SCI;
  • SCID — регистр данных модуля SCI;
  • SCIBD — регистр скорости обмена модуля SCI:
    • SCIBDH — старший байт регистра скорости обмена;
    • SCIBDL — младший байт регистра скорости обмена.

В МК серий Ax, Dx, Gx, JM, QE присутствуют 2 модуля SCI и, соответственно, по два регистра специальных функций каждого типа. Например, первому регистру управления SCIC1 соответствует SCI1C1 в первом модуле SCI и SCI2C1 во втором модуле SCI.

11.3.8.1. Регистр управления SCIC1

Для МК серий Ax, Dx, EN, Gx, JM, QE, Rx, EL, LC, QG*, Sx
РегистрРежимD7D6D5D4D3D2D1D0
SCIC1ЧтениеLOOPSSCISWAIRSRCMWAKEILTPEPT
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
LOOPSБит разрешения «замкнутого» режима работы контроллера SCI.
Бит выбора между «замкнутым», или однопроводным, режимом работы и стандартным режимом работы.
0 — стандартный режим дуплексного обмена, линия TxD работает на вывод, линия RxD работает на ввод;
1 — «замкнутый», или однопроводный режим (в зависимости от состояния бита RSRC). Линия RxD не используется модулем SCI и действует как линия порта ввода/вывода.
bLOOPS
SCISWAIБит выбора режима работы модуля SCI в режиме ожидания МК:
0 — модуль SCI продолжает работать во время режима ожидания МК и может генерировать запрос на прерывание, который выведет МК из режима ожидания;
1 — модуль SCI перестает тактироваться во время режима ожидания МК.
bSCISWAI
RSRCБит выбора источника сигнала для приемника, когда вывод RxD не используется.
Когда модуль SCI работает в «замкнутом» режиме, приемник внутренними средствами подключается к выходу передатчика TxD и бит RSRC осуществляет выбор между однопроводным режимом и внутренним «замкнутым» режимом.
0 — внутренний «замкнутый» режим. Вход приемника подключен к выходу передатчика этого же модуля SCI.
1 — однопроводный режим работы SCI. Линия TxD подключена к выходу передатчика и входу приемника. Направление передачи определяется битом SCIC3:TXDIR.
bRSRC
MБит выбора формата кадра обмена:
0 — 10-битный формат кадра: 1 старт-бит, 8 бит данных, 1 стоп-бит;
1 — 11-битный формат кадра: 1 старт-бит, 9 бит данных, 1 стоп-бит.
bM
WAKEБит выбора способа выхода приемника из режима ожидания модуля SCI:
0 — состояние Idle на линии (11 последовательных единиц на линии RDI при M = 0 или 12 последовательных единиц при M = 1) переводит приемник в активный режим работы;
1 — установка маркера адреса (бит D7 = 1 при M = 0 или бит D8 = 1 при M = 1) переводит приемник в активный режим работы.
bWake
ILTБит выбора режима распознавания неактивного состояния линии RxD:
0 — отсчет начинается после идентификации старт-бита;
1 — отсчет начинается после идентификации стоп-бита.
bILT
PEБит разрешения работы схемы контроля четности:
0 — функция контроля четности для передатчика и для приемника отключена;
1 — формирование бита контроля четности передатчиком и его анализ приемником включено.
bPE
PTБит выбора логики формирования бита контроля четности;
0 — бит контроля четности формируется из условия четного числа единиц в слове, включая бит контроля четности;
1 — бит контроля четности формируется из условия нечетного числа единиц в слове, включая бит контроля четности.
Действует, только если PE = 1.
bPT

11.3.8.2. Регистр управления SCIC2

Для МК серий Ax, Dx, EN, Gx, JM, QE, Rx, EL, LC, QG*, Sx
РегистрРежимD7D6D5D4D3D2D1D0
SCIC2ЧтениеTIETCIERIEILIETERERWUSBK
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
TIEБит разрешения прерывания от передатчика контроллера SCI. Этот бит разрешает генерацию запроса на прерывание при установке флага TDRE — буфер передатчика пуст.
0 — прерывания от передатчика по флагу TDRE запрещены;
1 — прерывания от передатчика по флагу TDRE разрешены.
bTIE
TCIEБит разрешения прерывания от передатчика контроллера SCI. Этот бит разрешает генерацию запроса на прерывание при установке флага завершения работы передатчика TC:
0 — прерывания от передатчика по флагу TC запрещены.
1 — прерывания от передатчика по флагу TC разрешены.
bTCIE
RIEБит разрешения прерывания от приемника контроллера SCI. Этот бит разрешает генерацию запроса на прерывание при установке флага завершения приема очередного байта TDRF:
0 — прерывания от приемника по флагу TDRF запрещены;
1 — прерывания от приемника по флагу TDRF разрешены.
bRIE
ILIEБит разрешения прерывания от приемника по флагу IDLE. Этот бит разрешает генерацию запроса на прерывание при установке флага неактивного состояния линии RxD:
0 — прерывания по флагу IDLE запрещены;
1 — прерывания при установленном флаге IDLE разрешены.
bILIE
TEБит разрешения работы передатчика контроллера SCI:
0 — передача запрещена;
1 — передача разрешена.
Если TE изменили с 1 на 0 в то время, когда передача еще ведется, то очередной байт сначала будет выдан на линию TxD, а затем работа передатчика будет запрещена.
bTE
REБит разрешения работы приемника контроллера SCI:
0 — прием запрещен;
1 — прием разрешен.
Учтите, что линия RxD используется модулем SCI, только если бит SCIC1:LOOPS = 0.
bRE
RWUБит управления режимом ожидания приемника контроллера SCI:
0 — приемник модуля SCI работает в активном режиме;
1 — приемник модуля SCI работает в режиме ожидания. Способ перевода приемника в активный режим работы определяет бит WAKE в регистре SCIC1.
bRWU
SBKБит управления сообщением «конец сеанса обмена». Установка этого бита в 1 вызывает выдачу на линию TxD сообщения Break.
0 — на линии TxD формируется обычный кадр данных со старт-битом и стоп-битом;
1 — на линию выдается сообщение Break.
Если бит SBK установили в 1 в то время, когда передача еще ведется, то она сначала будет завершена, а затем на линию будет выставлен сигнал Break.
bSBK

11.3.8.3. Регистр управления SCIC3

Для МК серий Ax, Dx, EN, JM, QE, EL, LC, QG, Sx
РегистрРежимD7D6D5D4D3D2D1D0
SCIC3ЧтениеR8T8TXDIRTXINVORIENEIEFEIEPEIE
Запись
Сброс00000000

Для МК серий GB, GT, Rx
РегистрРежимD7D6D5D4D3D2D1D0
SCIC3ЧтениеR8T8TXDIR0ORIENEIEFEIEPEIE
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
R8Бит D8 принимаемого 9-битного слова 11-битного кадра обмена. Бит доступен только для чтения. Он должен быть прочитан после установки флага RDRF и до чтения регистра SCID.bR8
T8Бит D8 передаваемого 9-битного слова 11-битного кадра обмена. Он определяет состояние 9-го бита передаваемого слова. Должен быть записан перед записью регистра SCID.bT8
TXDIRНаправление передачи по линии TxD в однопроводном режиме работы (SCIC1 :LOOPS = l и SCIC1:RSRC = 1):
0 — линия TxD настроена на ввод;
1 — линия TxD настроена на вывод.
bTXDIR
TXINVБит разрешения формирования инверсных уровней сигналов на выходе передатчика TxD:
0 — работа в инверсном режиме запрещена. Обычный режим работы передатчика (старт-бит нулевой, стоп-бит единичный);
1 — работа в инверсном режиме разрешена.
bTXINV
ORIEБит разрешения прерывания от приемника по флагу ошибки OR:
1 — прерывания при установленном флаге OR разрешены;
0 — прерывания по флагу OR запрещены.
bORIE
NEIEБит разрешения прерывания от приемника по флагу ошибки NE:
1 — прерывания по флагу NE разрешены;
0 — прерывания по флагу NE запрещены.
bNEIE
FEIEБит разрешения прерывания от приемника по флагу ошибки FE:
1 — прерывания по флагу FE разрешены;
0 — прерывания по флагу FE запрещены.
bFEIE
PEIEБит разрешения прерывания от приемника по флагу ошибки PE:
1 — прерывания по флагу PE разрешены;
0 — прерывания по флагу PE запрещены.
bPEIE

11.3.8.4. Регистр состояния SCIS1

Для МК серий Ax, Dx, EN, Gx, JM, QE, Rx, EL, LC, QG, Sx
РегистрРежимD7D6D5D4D3D2D1D0
SCIS1ЧтениеTDRETCRDRFIDLEORNFFEPF
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
TDREБит готовности буфера передатчика к приему новых данных. Устанавливается в момент, когда предварительно загруженные в регистр буфера передатчика данные автоматически переписываются в сдвиговый регистр передатчика, и буфер передатчика готов к приему новых данных.
0 — буфер передатчика полон;
1 — буфер передатчика пуст.
Бит TDRE сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите TDRE;
запись в регистр буфера передатчика SCID нового байта данных.
bTDRE
TCБит завершения передачи данных. Устанавливается, если данные для передачи в сдвиговом и буферном регистре данных передатчика отсутствуют.
0 — идет процесс передачи данных;
1 — передатчик свободен (передача данных закончена).
Бит TC сбрасывается в 0 автоматически при выполнении последовательности из следующих операций:
чтение регистра состояния SCIS1 при установленном бите TC;
запись в регистр буфера передатчика SCID нового байта данных
bTC
RDRFБит завершения приема байта данных. Устанавливается в момент, когда принятые по линии RxD данные автоматически переписываются в буферный регистр данных приемника.
0 — регистр данных приемника пуст;
1 — регистр данных приемника полон.
Бит RDRF сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите SCRF;
чтение из регистра данных SCID принятого байта данных.
bRDRF
IDLEБит неактивного состояния линии RxD. Устанавливается в 1, если на линии RxD диагностируются 10 или 11 (в зависимости от формата кадра) последовательных единиц.
0 — линия активна;
1 — линия в неактивном состоянии.
Бит IDLE сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите IDLE;
чтение регистра данных SCID.
bIDLE
ORБит ошибки приема: переполнение буфера приемника:
0 — ошибки приема не произошло;
1 — обнаружена ошибка приема.
Бит OR сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите OR;
чтение из регистра данных SCID первого принятого байта данных.
bOR
NFБит ошибки приема: шум на линии RxD:
0 — ошибки приема не произошло;
1 — обнаружена ошибка приема.
Бит NF сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите NF;
чтение из регистра данных SCID первого принятого байта данных.
bNF
FEБит ошибки приема: нарушение формата кадра.
0 — ошибки приема не произошло;
1 — обнаружена ошибка приема.
Бит FE сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
Чтение регистра состояния SCIS1 при установленном бите FE;
Чтение из регистра данных SCID первого принятого байта данных.
bFE
PFБит ошибки приема: нарушение паритета кадра:
0 — ошибки приема не произошло;
1 — обнаружена ошибка приема.
Бит PF сбрасывается в 0 автоматически при выполнении последовательности из двух операций:
чтение регистра состояния SCIS1 при установленном бите PF;
чтение из регистра данных SCID первого принятого байта данных.
bPF

11.3.8.5. Регистр состояния SCIS2

Для МК серий Gx, Rx
РегистрРежимD7D6D5D4D3D2D1D0
SCIS2Чтение0000000RAF
Запись
Сброс00000000

Для МК серий LG, QG, AW
РегистрРежимD7D6D5D4D3D2D1D0
SCIS2Чтение00000BRK130RAF
Запись
Сброс00000000

Для МК серий AC, Dx, JM, QE, EL, EN, Sx
РегистрРежимD7D6D5D4D3D2D1D0
SCIS2ЧтениеLBKDIFRXEDGIF0RXINVRWUIDBRK13LBKDERAF
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
RAFБит, который показывает, что приемник находится в процессе приема очередного слова данных:
0 — приемник простаивает;
1 — приемник в процессе приема.
bRAF
BRK13Бит выбора формата команды «конец сеанса обмена», которую посылает передатчик:
0 — сигнал Break равен 10 бит (M = 0) или 11 бит (M = 1);
1 — сигнал Break равен 13 бит (M = 0) или 14 бит (M = 1).
bBRK13
LBKDIFФлаг обнаружения на линии RxD сигнала Break:
0 — сигнал Break не обнаружен;
1 — сигнал Break детектирован на линии.
bLBKDIF
RXEDGIFФлаг обнаружения на линии RxD активного фронта сигнала:
0 — активный фронт не обнаружен;
1 — активный фронт детектирован.
bRXEDGIF
RXINVБит выбора полярности сигнала на входе RxD:
0 — обычная полярность сигнала (старт-бит нулевой, стоп-бит единичный);
1 — инверсная полярность сигнала.
bRXINV
RWUIDБит выбора реакции на событие неактивной линии Idle в режиме ожидания приемника:
0 — флаг IDLE не устанавливается, если приемник находится в режиме ожидания и на линии обнаружено состояние Idle;
1 — флаг IDLE устанавливается, если приемник находится в режиме ожидания и на линии обнаружено состояние Idle.
bRWUID
LBKDEБит выбора формата команды «конец сеанса обмена», которую распознает приемник:
0 — сигнал Break равен 10 бит (M = 0) или 11 бит (M = 1);
1 — сигнал Break равен 13 бит (M = 0) или 14 бит (M = 1).
bLBKDE

11.3.8.6. Регистр данных SCID

Для МК серий Gx, Rx
РегистрРежимD7D6D5D4D3D2D1D0
SCIDЧтениеПринятый байт данных
ЗаписьБайт данных для передачи
Сброс00000000

11.3.8.7. Регистр скорости обмена SCIBD

Для МК серий LG, QG
РегистрРежимD7D6D5D4D3D2D1D0
SCIBDHЧтение000SBR12SBR11SBR10SBR9SBR8
Запись
Сброс00000000

Для МК серий LG, QG, AW
РегистрРежимD7D6D5D4D3D2D1D0
SCIBDHЧтениеLBKDIERXEDGIE0SBR12SBR11SBR10SBR9SBR8
Запись
Сброс00000000

Для всех МК с модулем SCI
РегистрРежимD7D6D5D4D3D2D1D0
SCIBDLЧтениеSBR7SBR6SBR5SBR4SBR3SBR2SBR1SBR0
Запись
Сброс00000000

Описание битов:
Имя битаОписаниеСимвол в языке С
SBR12... SBR0Коэффициент деления BR. Выбирается в соответствии с Табл.11.9...11.12.
LBKDIEБит разрешения прерывания по событию обнаружения на линии RxD сигнала Break, т.е. по флагу LBKDIF:
0 — прерывание по флагу LBKDIF запрещено;
1 — прерывание по флагу LBKDIF разрешено.
bLBKDIE
RXEDGIEБит разрешения прерывания по событию обнаружения на линии RxD активного фронта сигнала, т.е. по флагу RXEDGIF:
0 — прерывание по флагу RXEDGIF запрещено;
1 — прерывание по флагу RXEDGIF разрешено.
bRXEDGIE

Электронные компоненты Freescale >>>
Подробнее о компании Freescale >>>