Motorola MC68HC705C8

Последовательный периферийный интерфейс использует 4 вывода порта D (MISO и MOSI-ввод-вывод информации, SCK-системная синхронизация, SS-ведущий/ведомый). Последовательный интерфейс связи использует 2 вывода (RDI-прием данных, TDO-передача).

Рассмотрим подробнее последовательный интерфейс связи. Полно-дуплексный асинхронный последовательный интерфейс связи работает в стандартном NRZ формате с широким выбором скорости приема/передачи информации. Передатчик и приемник функционально независимы, но используют одинаковый формат данных и скорость работы.

Общие особенности интерфейса:

стандартный NRZ формат;

усовершенствованная система выявления ошибок, включающая фильтрацию помех с длительностью до 1/16 времени передачи 1 бита;

полно-дуплексное функционирование (одновременный прием и передача);

программирование на одну из 32 возможных скоростей обмена;

программно-изменяемая длина слова (8 либо 9 бит в слове);

отдельно расположенные биты управления приемом и передачей;

возможность управления по прерыванию;

различных условия возникновения прерывания;

Особенности приемника:

наличие функции активации передатчика (свободная линия или разряд адреса);

обнаружение свободной линии;

обнаружение ошибок кадрирования (см. ниже);

выявление шумов;

обнаружение переполнения;

флаг контроля за полнотой регистра данных;

Особенности передатчика:

флаг контроля за пустотой регистра данных;

флаг завершения передачи;

прерывание посылки;

Структура интерфейса представлена на рис. 2-9.

Пользователь имеет возможность задать режим работы интерфейса через первый управляющий регистр (SCCR1). Второй управляющий регистр (SCCR2) содержит биты контроля за приемом/передачей, разрешением/запретом прерываний и другие. Рассмотри работу SCI в различных режимах.

Передача данных начинается с записи в регистр передачи данных (SCDAT),который физически расположен в одной и той же ячейке памяти с регистром приема данных. При условии, что работа передатчика разрешена, данные передаются в сдвиговый регистр. Эта передача данных устанавливает бит TDRE (пуст регистр передачи данных) в регистре SCSR и генерирует прерывание, если прерывания разрешены. Передача данных в сдвиговый регистр синхронизируется по внутреннему генератору скорости. Данные передаются младшим битом вперед При завершении передачи данных, бит TC устанавливается и генерируется прерывание. Если передатчик блокирован, и были посланы либо данные, либо код останова, бит ТС также будет установлен. Если передатчик блокируется во время передачи, то происходит завершение передачи текущего байта, и затем останов передатчика.

Прием данных начинается с чтения из регистра SCDAT, содержащего последний полученный байт, при условии что приемник не блокирован. Бит RDRF в регистре SCSR устанавливается, если данные из сдвигового регистра перенесены в SCDAT, что может вызвать кроме того прерывание от периферийного интерфейса, если оно разрешено. Передача данных из сдвигового регистра в SCDAT синхронизируется по внутреннему генератору. Флаги переполнения (OR), обнаружения шумов (NF), либо FE устанавливаются, если происходит ошибка при приеме данных.

На рис. 2-10 представлена диаграмма обмена в упоминавшимся выше NRZ-формате, используемом в интерфейсе.

Рис. 2-9 Структурная схема последовательного интерфейса связи.

(1)-контрольный бит, задается программно.

Рис. 2-10 Диаграмма обмена по SCI.

Рассмотрим регистры, входящие в интерфейс.

Регистр скорости передачи данных (BAUD), расположенный по адресу 0DH, используется для задания скорости обмена по интерфейсу. Из таблиц 2-3 и 2-4 можно определить скорость приема/передачи информации, исходя из частоты кварцевого генератора.

Регистр скорости приема/передачи

Название

-

-

SCP1

SCP0

-

SCR2

SCR1

SCR0

Установка после RESET

0

0

0

0

0

0

0

0

SCP1, SCP0-предварительное деление на 1, 3, 4, 13.

SCR2, SCR1, SCR0-деление после предварительного делителя на 1, 2, 4, . ,128.

Таблица 2-3. Предделитель тактовой частоты.

SCP1

SCP0

Делитель тактовой частоты

4.19430

4.0

2.4576

2.0

1.8432

0

0

1

131072

125000

76800

62500

57600

0

1

3

43691

41666

25600

20833

19200

1

0

4

32768

31250

19200

15625

14400

1

1

13

10082

9600

5907

4800

4430

Таблица 2-4. Частота приема/передачи

SCR2

SCR1

SCR0

Делитель внутренней частоты

131.072

32768

76800

19200

9600

0

0

0

1

131072

32768

76800

19200

9600

0

0

1

2

65536

16384

38400

9600

4800

0

1

0

4

32768

8192

19200

4800

2400

0

1

1

8

16384

4096

9600

2400

1200

1

0

0

16

8192

2048

4800

1200

600

1

0

1

32

4096

1024

2400

600

300

1

1

0

64

2048

512

1200

300

150

1

1

1

128

1024

256

600

150

75


Страница: