Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МвСУ_16.11.2011.doc
Скачиваний:
12
Добавлен:
01.04.2025
Размер:
7 Мб
Скачать
☆

6.2.3 Синхронный последовательный обмен

При реализации синхронного обмена вместе с данными посылается синхросигнал, который используется приемником для стробирования данных (рис. 44).

Рис. 44. Форма сигналов при синхронной передаче данных

При синхронной передаче данных можно осуществить преобразование последовательных данных в параллельные.

Существует два основных протокола для синхронной связи Microwire и SPI. Эти методы применяются для взаимодействия с различными микросхемами, например универсальные 8-16-ти битные аналого-цифровые преобразователи фирмы Maxim ИС MAX1036-MAX1039 и MAX1236-MAX1239, Flash-память AT25, AT45 производства Atmel, 25хх производства Microchip по протоколу SPI и 93х по протоколу Microwire.

Если синхронный последовательный порт встроен в МП, то передающая схема имеет вид, показанный на рис. 45.

Данные протоколы чаще используются для синхронной последовательной передачи данных. Если сигнал разрешения выборки (CS) устройства не активен, то это устройство игнорирует линии данных и синхронизации. В каждый момент времени только одно из подключенных к шине устройств может быть ведущим.

Рис. 45. Схема синхронного вывода данных

Протокол MICROWIRE. Протокол Microwire обеспечивает передачу данные со скоростью до 1 Мбит в секунду. В одном пакете передается шестнадцать бит данных. На рис. 46 показана форма сигналов при чтении 16 бит данных.

Рис. 46. Чтение данных в протоколе Microwire

После выбора микросхемы и посылки старт-бита передается 8-разрядная команда (обозначена как «ОР1», «ОР2», «А5» – «АО»), затем следуют 16-разрядный адрес (его наличие не является обязательным) и 16 бит данных. При максимальной скорости передачи 1 Мбит в секунду тактовый сигнал изменяется каждые 500 нс. Передаваемые биты должны выдаваться на линию за 100 нс до поступления переднего фронта тактового сигнала. Чтение данных должно происходить за 100 нс до поступления заднего фронта тактового сигнала.

Для организации USB интерфейса по протоколу Microwire можно применить ИС USBN9603/4. Пример подключения ИС к МК представлен на рис 47.

Для управления ИС предназначены следующие выводы: MODE1-0 – Интерфейсный режим Microwire; SI – Последовательный вход Microwire; SO – Последовательный выход Microwire; SK – тактовый сигнал.

Рис. 47. Подключение интегральной схемы USBN9603/4

по протоколу Microwire

Протокол SPI. Протокол SPI похож на протокол Microwire, но имеет несколько отличий (рис. 48):

- протокол SPI способен передавать данные со скоростью до 3 Мбит в секунду;

- разрядность данных в SPI пакете равна 8 бит;

- передатчик в SPI имеет возможность приостановить передачу данных;

- данные в SPI могут передаваться в виде множества байтов, которые называются «блок» или «страница».

Рис. 38. Запись данных в протоколе SPI

Как и в протоколе Microwire, в SPI сначала передается байт, который содержит команду для принимающего устройства. Затем идет необязательный 16-разрядный адрес, после чего следуют 8 разрядные данные.

В случае обмена данными по интерфейсу SPI МК работает в режиме ведущего устройства (Master), взаимодействуя с одним или несколькими ведомыми блоками (Slave). Схема передачи данных по интерфейсу SPI МК AVR/PIC показана на рис. 39 (MSB – старший разряд, a LSB – младший разряд передаваемого байта).

Если ведомое устройство активизируется ведущим по линии /SS, то начинается обмен данными: Master записывает подлежащий передаче байт в свой сдвиговой регистр данных (для МК AVR – регистр SPDR, для МК PIC – регистр SSPBUF). С помощью каждого выработанного тактового импульса Master перемещает один бит данных на выход MOSI/SDO, a Slave одновременно в обратном направлении передает один бит на вход MISO/SDI ведущего блока. Таким образом, в течение цикла SPI, состоящего из восьми тактовых импульсов, Master и Slave обмениваются байтом данных.

Рис. 39. Схема передачи данных по интерфейсу SPI микроконтроллеров AVR/PIC

Н а рис. 40 показано, как АЦП МАХ1242 может быть соединен с МК при помощи встроенного SPI/Microwire интерфейса.

Рис. 40. Соединение АЦП МАХ1242 с микроконтроллером

Сигнал SCLK с АЦП МАХ 1242 поступает на вывод SCK SPI МК, а выход DOUT АЦП МАХ 1242 соединяется с SPI входом данных МК. Один из выводов порта МК генерирует сигнал CS для выбора ИС МАХ1242. Заметим, что по сигналу CS начинается преобразование и CS должен оставаться низким до тех пор, пока преобразование не завершится. Шина SPI будет недоступна для соединения с другими периферийными устройствами до тех пор, пока не закончится преобразование, и не будет прочитан результат.

Как завершится АЦП, МК генерирует прерывание. Вывод DOUT АЦП МАХ1242 соединяется с выводом INTR (прерывание) МК. Когда на CS низкий уровень, и преобразование завершено, сигнал DOUT перейдет в высокий уровень, генерируя прерывание на МК.

На рис. представлена схема устройства, которое позволяет записывать, хранить и воспроизводить звук, используя любой МК AVR с АЦП и память AT45DBххх. Данная память использует последовательный интерфейс SPI для последовательного доступа к данным. Этот интерфейс облегчает подключение аппаратных средств, повышает надёжность системы, уменьшает помехи переключения, а также позволяет уменьшить габаритные размеры и количество задействованных выводов МК.

Рис. 41. Схема программирования флэш-памяти AT45 по протоколу SPI

Память AT45DBххх позволяет проигрывать данные либо напрямую из основной страницы памяти, либо путём копирования страницы в один из двух буферов и последующим чтением из буфера.

Пользователь может управлять звуковой системой через три кнопки, которые: «Очистка», «Запись» и «Воспроизведение». Если кнопки не нажаты, то внутренний нагрузочный резистор обеспечивает напряжение питания на выводах PD0…PD2.

Для программирования интегральной схемы AT45 (рис. 41) предназначены следующие выводы: CS – вход выбора кристалла; SCK – последовательный тактовый сигнал; SI – последовательный вход; SO – последовательный выход; WP – вход аппаратной защиты записи страницы памяти; RESET – инициализация; RDY/BUSY – Готовность/ занятость.

Аналоговое напряжение, AVсс, подключается к Vсс через RC-фильтр нижних частот.