Управление на USART модула - 10 лекция

Компютърна и комуникационна техника Презентация

Слайд 1

Управление на USART модула

Слайд 2

Функционални възможности на USART (универсален синхронен/ асинхронен приемникпредавател)
Модулът USART (сериен комуникационен интерфейс (SCI)) може да се конфигурира за работа в следните три режима:
Асинхронен (пълен дуплекс) – за връзка с CRT и PC;
Синхронен – управляващ (полудуплекс) - за връзка с АЦП и ЦАП, интегрални схеми, серийни EEPROM ;
Синхронен – управляван (полудуплекс).

Определение. Система пълен дуплекс позволява едновременно предаване и приемане на информация в двете посоки.
Определение. Системата полудуплекс позволява предаване само в едната посока в даден момент от времето.

Слайд 3

Генератор, определящ скоростта на предаване в бодове
Генераторът BRG[1] поддържа и двата режима: асинхронен и синхронен на модула USART. Той е реализиран като 8битов генератор, определящ скоростта на предаване в бодове. Регистърът SPBRG[2] управлява периода на свободно работещия 8битов таймер. В асинхронен режим, за управление скоростта на предаване в бодове се използва и бит BRGH[3] (TXSTA<2>). В синхронен режим битът BRGH се игнорира.

[1] BRG (Baud Rate Generator) – генератор, определящ скоростта на предаване в бодове.
[2] SPBRG (Serial Port BRG) – регистър за определяне скоростта на предаване на последователния порт.
[3] BRGH (BRG High) – бит за определяне на висока скорост на предаване.

Слайд 4

Асинхронен режим на USART модула
Данните от извода RC7/RX/DT се отчитат (sampling) три пъти близо до средата на всеки бит чрез верига за откриване нивото на входа RX (високо или ниско).

0 1 2 3 4 5 6 7

Стартов
бит
Стопов
бит
Бит за
проверка
Следващ стартов бит
Формат без връщане към нулата
Елементи на USART модула:
Генератор, определящ скоростта в бодове BRG;
Верига за отчитане на данните (Sampling Circuit);
Асинхронен предавател (Asynchronous Transmitter);
Асинхронен приемник (Asynchronous Receiver).

Слайд 5

Асинхронен USART предавател

TXIF
TXREG
TXREG
(8)
(0)

TXIЕ

TX9
TSR
MSb
LSb

SPBRG

Baud Rate Generator
Baud Rate CLK

TX9D

TXEN
Прекъсване
TRMT
SPEN
Буфер и управление

8
Шина данни
RC6/TX/CK

Слайд 6

Основни стъпки при пускане на aсинхронното предаване:

Инициализиране на регистъра SPBRG за подходяща скорост на предаване. Ако е необходима висока скорост на предаване, установяване на бита BRGH.
Разрешаване на асинхронния сериен порт чрез нулиране на бита SYNC и установяване на бита SPEN.
Ако се използват прекъсвания, установяване на разрешаващите битове TXIE (PIE1<4>), PEIE (INTCON<6>), и GIE (INTCON<7>), ако е необходимо.
Ако е необходимо 9-битово предаване, установяване на бита TX9.
Разрешаване на предаването чрез установяване на бита TXEN, който ще установи и флага TXIF.
Ако е избрано 9-битово предаване, деветият бит трябва да се зареди в бита TX9D.
Зареждане на TXREG регистъра, което стартира предаването.

Слайд 7

Асинхронен USART приемник
FERR

RCIЕ

SPBRG

Baud Rate Generator
х64 Baud Rate CLK

RX9D

RX9
Прекъсване
RCREG
SPEN

RC7/RX/DT

FOSC
64
или
16

Възстановяване на данните
Буфер и управление

OERR
START
STOP
(8)
7

1
0
LSb
MSb

RSR

FIFO

8
Шина данни

RCIF

Слайд 8

Основни стъпки при пускане на aсинхронното приемане:
Инициализиране на SPBRG регистъра за подходяща скорост на приемане. Ако е избрана висока скорост на приемане  установяване на бита BRGH.
Разрешаване на асинхронния сериен порт чрез нулиране на бита SYNC, и установяване на бита SPEN.
Ако се използва техниката на прекъсване  установяване на разрешаващите битове RCIE (PIE1<5>), PEIE (INTCON<6>), и GIE (INTCON<7>), ако е необходимо.
Ако се използва 9-битово приемане се установява бита RX9.
Разрешаване на приемането чрез установяване на бита CREN.
Флаговият бит RCIF ще се установи когато приемането завърши и ще се генерира прекъсване ако е разрешено (битът RCIE е установен).
Прочитане на регистъра RCSTA за да се получи деветия бит (ако е разрешен) и да се определи дали е възникнала грешка при приемането.
Прочитане на 8-битовите приети данни от RCREG регистъра.
Ако е възникнала грешка, тя се нулира чрез нулиране на разрешаващия бит CREN.

Преглед на началото - целият файл след изтегляне

Описание

Асемблер - машинен език! Дисциплина: Едночипови микрокомпютри

0 коментара

Все още няма коментари. Бъдете първият, който ще коментира.

За да коментирате, трябва да сте влезли в профила си.

Влезте