Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
САПР_ЗВ(лек7-RS232).doc
Скачиваний:
3
Добавлен:
30.08.2019
Размер:
815.1 Кб
Скачать

Сапр зв Лекція № 7

  1. Структура, робота з послідовним інтерфейсом (портом) оеом. Зв’язок з пеом.

  • Поняття інтерфейсу. Типи інтерфейсів;

  • Призначення, принцип послідовної передачі даних згідно RS232;

  • Фізичні характеристики послідовного інтерфейсу RS232 та RS485. Параметри;

  • Схема послідовного інтерфейсу в стенді і зв’язок з ПЕОМ;

  • Програмування

Рис.7.1 — Внутрішня структура МК сімейства MCS-51

Рис. – Функціональна схема ADuC841

Опис послідовного інтерфейсу

Універсальний асинхронний приймач-передавач (УАПП, англ. UART – Universal Asynchronous Receiver-Transmitter) – периферійний пристрій мікроконтролера який дозволяє послідовно передати та приймати дані по двох однопровідних лініях. УАПП може працювати в режимі повного дуплексу і не використовує при цьому додаткової лінії для синхронізації. Часто УАПП застосовують в парі з інтерфейсом RS-232 для зв’язку периферійного пристрою з персональним комп’ютером. Сигнали УАПП та RS-232 відрізняються в основному рівнями логічної одиниці та нуля. Якщо УАПП використовує рівні стандартні для КМОН чи ТТЛ логіки, то стандарт RS-232 передбачає використання напруги від -3 В до -25 В для кодування логічної одиниці та напруги від 3 В до 25 В для кодування логічного нуля.

Передача даних відбувається пакетами по 8 або 9 біт (молодші біти передаються першими). Синхронізація приймача та передавача відбувається таким чином. В спокої лінія утримується передавачем в стані логічної одиниці. Якщо виникає необхідність передати дані то передавач передає нульовий старт-біт, вісім або дев’ять інформаційних біт, та обов’язковий одиничний стоп-біт, що повертає лінію в стан очікування. Дев'ятий інформаційний біт можна використати для перевірки цілісності байта. Для цього передавач встановлює його так, щоб сума всіх одиничних бітів посилки була парна (або непара). Приймач може виявити помилку передачі перевіривши кількість одиничних бітів на парність (непарність).

Рисунок 21. Часова діаграма передачі даних УАПП

Приймання посилки відбувається так. Приймач постійно прослуховує лінію RXD і в момент переходу з одиничного в нульовий стан (прийом старт-біта) внутрішній таймер прийому скидається в нуль, щоб синхронізувати його із таймером передавача (це вирівнює моменти опитування лінії із моментами передачі біт). Далі, по синхронізованому внутрішньому таймеру контролер за період передачі кожного інформаційного біта тричі опитує лінію RXD, а у вхідний буфер записується значення, отримане шляхом "мажоритарного голосування" – записуватиметься значення отримане принаймні в двох вимірах із трьох. Після прийому всіх інформаційних біт та стоп-біта приймач переходить в стан очікування нового старт-біту.

Рисунок 22. Часова діаграма прийому даних УАПП

Для успішного обміну приймач і передавач має бути налаштований на одну й ту ж швидкість передачі та довжину посилки. Допустиме відхилення частоти передавача та приймача визначається з умови недопущення розсинхронізації за час передачі посилки і не може перевищувати 3%. Значення швидкості передачі вибирають із ряду 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200 Бод (у випадку використання УАПП 1 Бод рівний 1 біт/с).

УАПП мікроконтролерів MCS51 передбачає роботу в чотирьох режимах, які вибираються регістром SCON. В нульовому, синхронному, режимі дані передаються та приймаються через вивід RXD, вивід TXD передає синхроімпульси. В першому-третьому режимах дані передаються асинхронно виводом TXD, а приймаються виводом RXD. В першому режимі передається старт-біт, 8 біт даних та стоп-біт. В другому та третьому старт-біт, 9 біт даних, і стоп-біт.

Таблиця 11. Регістр SCON

біта

Назва

Призначення

7

SM0

Біти вибору режиму роботи УАПП

SM0 SM1 Режим роботи

0 0 0: Синхронний, швидкість рівна fclk/12

0 1 1: 8-бітний асинхронний, швидкість змінна

1 0 2: 9-бітний асинхронний, швидкість fclk·2SMOD/64

1 1 3: 9-бітний асинхронний, швидкість змінна

6

SM1

5

SM2

В режимі 0 SM2 має бути скинутий.

В режимі 1, якщо SM2 встановлений, то RI не спрацьовує доки не було отримано коректного стоп-біта.

В режимі 2 та 3, якщо SM2 встановлений, то RI не спрацьовує доки не отримано пакет із встановленим дев'ятим бітом.

Якщо SM2 скинутий, то RI спрацьовує зразу ж після завершення приймання біт даних.

4

REN

Біт дозволу приймача. Встановлюється/скидається програмно.

3

TB8

Дев'ятий біт даних для передавача.

2

RB8

Дев'ятий біт даних для приймача. Приймач заносить сюди прийнятий дев'ятий біт.

1

TI

Ознака закінчення передачі байта. Встановлюється УАПП після завершення передачі бітів даних. Скидається програмно.

0

RI

Ознака закінчення прийому байта. Встановлюється після завершення приймання посилки. Скидається програмно.

Частота передачі в нульовому режимі фіксована і рівна 1/12 тактової частоти f=fclk/12. В другому режимі частота передачі залежить від значення біта SMOD РСФ PCON і визначається залежністю f=fclk·2SMOD/64. В першому і третьому режимі частота передачі визначається залежністю

f=fT1·2SMOD/32,

де f – частота передачі

fT1 – частота спрацювання таймера 1,

SMOD – значення біта SMOD регістра спеціальних функцій PCON.

Найзручніше для керування частотою передачі в першому та третьому режимі налаштовувати таймер 1 в режимі 8-ми бітного таймера із автоматичним перезавантаженням. Тоді частота передачі буде рівна

В таблиці 12 приведені значення регістра TH1 та біта SMOD для встановлення заданої частоти передачі для резонатора 7.3728 МГц

Таблиця 12. Частота передачі в 1 та 3 режимах для резонатора 7.3728 МГц

Частота, б/с

38400

19200

9600

4800

2400

SMOD

1

0

0

0

0

TH1

255

255

254

252

248

Для доступу до регістрів як передавача так і приймача використовують РСФ SBUF. При цьому запис даних в SBUF заносить байт в регістр передавача та ініціює передачу, читання SBUF повертає останній байт, отриманий приймачем. Щоб не допустити втрат, отримані дані слід вийняти із SBUF до завершення приймання наступного байта.