Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
18
Добавлен:
01.05.2014
Размер:
51.2 Кб
Скачать

Организация последовательного порта в iMCS96

Последовательный порт реализует синхронный обмен и асинхронный обмен информации последовательным кодом. Асинхронный обмен выполнен по стандарту UART (Unversal Asynchronous Receiver / Transmitter). Аналогичен 51-ой серии; в дополнении реализован контроль четности / нечетности при передаче информации и блок генерации частоты обмена не использует общие таймеры Т1 и Т2, позволяя воспроизводить частоту более точно.

* (BH, KB, KC)

Преобразование параллельного кода в последовательный

Информация передается на вывод TxD (Transmitt Data), принимается соответственно - на входе RxD (Receive Data)

SBUF_TX – при записи,

SBUF_RX – при чтении два разных регистра.

Полнодуплексный режим – запись и чтение могут происходить параллельно

SP_CON

SP_STAT

SP_BAVD – регистр частоты

15 бит содержит константу В, 16 старший содержит clock select

Протокол обмена

Режим «0» – синхронный обмен

Р2.0 – синхронизация, выдает тактовую частоту обмена

Р2.1 – мы имеем данные (входные – выходные; прием – передача)

Данные считаются действительными на фронте тактового сигнала

Передача:

Флаг REN = 0. передача начинается, когда записан байт в регистр SBUF_TX → TSR → P2.1 → → TI = 1 записан байт в регистр SBUF_TX – информация.

Прием:

Флаг REN = 1 и RI = 0 → RSR → SBUF_RX → RI = 1– параллельный прием в последовательном коде.

В режиме 1-3 порт функционирует как асинхронный приемо-передатчик UART.

TxD – передача; RxD – прием могут происходить одновременно. Пока на выводе 1 то, ничего не происходит; передача началась, когда происходит перепад из 1 в 0.

Режим «1»

Кадр 10 битный.

Режим «2» (11-битный кадр)

Режим «3» (11- битный кадр)

У 9го бита еще больше функций

Передача данных

SBUF_TX → TSR → P2.0 → TI = 1

Прием данных

Только если PEN = 1

RSR → SBUF_RX → RI = 1, прерывание, если

Соседние файлы в папке MPS_shprots