Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Схемотехника - презентации / Последовательные приемо-передатчики в МП.ppt
Скачиваний:
71
Добавлен:
22.03.2015
Размер:
6.12 Mб
Скачать

Последовательные приемо- передатчики в МП

Цель лекции: изучить принцип действия UART, SPI и способы организации последовательных интерфейсов на их базе.

Модуль полнодуплексного универсального асинхронного приемо-передатчика

Предназначен для обмена данными с различными внешними устройствами.

Способен обнаруживать и сигнализировать о нештатных ситуациях: переполнение; ошибка кадрирования; неверный старт- бит.

Для взаимодействия с программой предусмотрено три прерывания по событиям: передача завершена, регистр данных передатчика пуст; прием завершен.

Принцип последовательной асинхронной передачи

Формат кадра

Бодрейд – скорость передачи в бодах. Бод – 1 посылка в 1 секунду. Перед началом связи необходимо настроить приемо -передатчики на одинаковую скорость связи и формат кадра.

Структурная схема передатчика

Каждый регистр имеет свой адрес в памяти и его разряды предопределены

Формула вычисления скорости передачи

BAUD f clk

16 (UBR 1)

Организация программ для передачи данных UART AVR

Организация обмена данных с использованием прерываний и промежуточного кольцевого буфера

UDRIE

UDRE

 

 

Организуется в ОЗУ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Программа

 

 

 

 

Программа

Кольцевой

обработки

 

 

UDR

MovsBuf

буфер UART

прерываний

 

 

 

 

 

 

Out

Transint

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Программы работают асинхронно.

Доступ к кольцевому буферу последовательный или параллельный

Организация кольцевого буфера на передачу в UART

UART Out

 

Количество

 

байт

 

в очереди

 

Если они равны

Указатель хвоста очереди

то очередь

Указатель головы очереди

пуста

 

ОБЛАСТЬ ОЗУ

Начало буфера

Голова очереди

Хвост очереди

Конец очереди

Структурная схема приемника

Организация программ для приема данных UART AVR

Флаг

RXC разрешения Флаг MR B

приема

UDR

 

Подпрограмма

 

Буфер

 

управления

 

 

 

UART IN

 

 

вводом

 

 

 

 

 

 

Драйвер

Подтверждение Приема старт стоп

Подпрограмма

управления

записью

Организация буфера на прием данных в UART

UART In

Программа

проверяет

указатель на превышение буфера

При приеме очередного байта указатель Указатель хвоста очереди

увеличивается на единицу

Начало буфера

Хвост очереди

ОБЛАСТЬ ОЗУ