Материал: 6798

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Часть II. Ввод-вывод в МК «Миландр» - 5

102

5Последовательный обмен данными. Лабораторная работа №10

5.1Краткий обзор последовательных «стандартных» интерфейсов МК.

Все МК имеют набор стандартных интерфейсов последовательного обмена данными. Исторически первым интерфейсом является универсальный приёмо-передатчик (Universal Synchronous Asynchronous Receiver Transmitter) [1], который реализует базовую логику обмена данными по стандартам EIA RS-232-C, EIA-422-B, EIA RS-485.

Интерфейс UART часто используется для реализации связи по COM-порту, также может использоваться для связи нескольких МК и организации сетевого обмена данными.

В начале 80-х компания Philips разработала интерфейс I2C (он же IIC или TWI в документации фирмы Atmel). Сокращение расшифровывается как «Inter-Integrated Circuit», т.е. интерфейс для передачи данных между микросхемами (а не модулями или блоками).

Интерфейс SPI (Serial Peripheral Interface Bus ) также предназначен для обмена данными между микросхемами. Изначально он был придуман компанией Motorola, а в настоящее время используется в продукции многих производителей.

Интерфейсы SPI и I2C нашли широкое применение в различных микросхемах, таких как ЦАП, АЦП, память (Flash, EEPROM, FRAM, MRAM, ШИМ-контроллеры….), таймеры реального времени (RTC) и др. и применяются для расширения функциональных возможностей микропроцессорной техники или для возможности программного управления током, напряжением, потребляемой мощностью….

Любой интерфейс в МК реализуется посредством отдельного устройства — контролера. Хотя любой из этих интерфейсов можно, при большом желании, реализовать программно. Так же необходимо отметить тенденцию унификации, когда в одном блоке реализуется сразу несколько интерфейсов, например USI в МК AVR фирмы Atmel.

В изучаемом Вами МК контроллер SSP (Synchronous Serial Port) реализует несколько сходных протоколов:

−интерфейс SPI фирмы Motorola;

−интерфейс SSI фирмы Texas Instruments;

−интерфейс Microwire фирмы National Semiconductor.

5.1.1Базовые понятия последовательной передачи данных

Интерфейс - совокупность возможностей взаимодействия двух систем, устройств или программ, определённая их характеристиками, характеристиками соединения, сигналов обмена и т. п. Совокупность унифицированных технических и программных средств и правил (описаний, соглашений, протоколов), обеспечивающих взаимодействие устройств и/или программ в вычислительной системе или сопряжение между системами [1].

Протокол (передачи данных) - набор соглашений интерфейса логического уровня, которые определяют обмен данными между различными программами. Эти соглашения задают единообразный способ передачи сообщений и обработки ошибок при взаимодействии программного обеспечения разнесённой в пространстве аппаратуры, соединённой тем или иным интерфейсом.

Сеть (вычислительная) - система связи компьютеров или компьютерного оборудования (серверы, маршрутизаторы и другое оборудование). Для передачи информации могут быть использованы различные физические явления, как правило — различные виды электрических сигналов, световых сигналов или электромагнитного излучения.

Семиуровневая модель OSI - Для единого представления данных в сетях с неоднородными устройствами и программным обеспечением международная организация по

ТУСУР, "Миландр"

Каф. ЭСАУ

Недяк С.П., Шаропин Ю.Б

Февраль 2017 г.

Часть II. Ввод-вывод в МК «Миландр» - 5

103

стандартам ISO (International Standardization Organization) разработала базовую модель связи открытых систем OSI (Open System Interconnection). Эта модель описывает правила и процедуры передачи данных в различных сетевых средах при организации сеанса связи. Основными элементами модели являются уровни, прикладные процессы и физические средства соединения.

Последовательная передача данных - передача бит за битом. Может осуществятся, как младшими битами вперед (LSB) так и старшими битами вперед (MSB).

Асинхронная передача - передача данных, при которой интервалы времени между направляемыми блоками данных не являются постоянными. Для выделения в потоке данных блоков в начале и конце каждого из них записываются старт/стопные биты. При асинхронной передаче передатчик и приемник данных работают не зависимо друг от друга. Сигнал синхронизации отсутствует.

Синхронная передача – подразумевается передача сигнала синхронизации. Дуплексная передача – прием информации и передача одновременно. Полудуплексная – прием и передача по очереди.

Симплексная – однонаправленная передача данных

Ведущий (Master) – устройство задающие режим передачи информации в сети или между устройствами.

Ведомый, подчиненный (Slave) – устройство

Адрес устройства (узла) — уникальный двоичный код в сети, идентифицирующий узел

сети.

5.2Контроллер UART

Контроллер UART является многофункциональным устройством, может обеспечивать разные режимы передачи данных (? очень похоже что в синхронном режиме он не работает ?) обеспечивает работу с модемами и работу по стандарту IrDA SIR.

В демопроекте реализована простая задачка «эхо»: принять то что сам передал. При этом выход приёмника (RXD) подключают ко входу передатчика (TXD) внутри самого UART, но обычно это делается перемычкой (проволочкой, пинцетом) на разъеме.

5.2.1Ход работы

1.Изучите с работой контроллера UART (стр. 363 spec_seriya_1986BE9x.pdf). Изучить программный код Menu_uart.c демонстрационного проекта и ознакомиться с драйвером MDR32F9Qx_uart.c.

2.Изучите функционирование микросхемы ADM3232.

3.Запустите проект ревизию номер 5, изучите работу программы. Найдите каким способом приёмник подключен к передатчику. Разомкните невидимую цепь соединяющую приёмник и передатчик. Пересоберите программу, запустите в МК, оцените результат. Установите видимую цепь, соединяющую приемник и передатчик. Запустите программу оцените результат.

4.Добейтесь приема информации ПК и приема информации МК от ПК.

5.3Контроллер I2C

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

ТУСУР, "Миландр"

Каф. ЭСАУ

Недяк С.П., Шаропин Ю.Б

Февраль 2017 г.

Часть II. Ввод-вывод в МК «Миландр» - 5

104

на стр. 327.

5.4Контроллер SSP (SPI)

Данный контроллер реализует несколько схожих интерфейсов передачи данных. Мы с вами познакомимся с самым широко распространенным – SPI. Интерфейс дуплексный, синхронный, трех проводной MISO, MOSI, SCLK (не считая линии выбора кристалла CS). Очень простой! В технической документации на МК смотри дальнейшее описание в спецификации на МК на стр. 333.

5.4.1Ход работы

1.Изучите принципы организации интерфейса SPI. Найдите в демопроекте, где используется контроллер SSP?.

2. Изучите принципы организации интерфейса I2C. Найдите в демопроекте где используется контроллер I2C?

3.Приведите конкретные примеры микросхем с интерфейсами I2C и SPI. Укажите наименование, производителя и стоимость (воспользуйтесь efind.ru).

4.Изобразите схему подключения к МК двух микросхем AD5326

5.Изобразите схему подключения к МК двух микросхем DAC8581

6.Изучите примеры (Examples/SSP). Подключите их себе в проект. Организуйте передачу данных по SPI.

7.Изучите примеры (Examples/I2C). Подключите их себе в проект. Организуйте передачу данных по I2C.

8.Сфотографируйте осциллограммы работы интерфейсов UART, SPI и I2C.

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

5.5Контроллер CAN

Вотличие от предыдущих интерфейсов, CAN (Controller Area Network) разрабатывался в 1980-х годах, как сетевой высоконадежный интерфейс и протокол для автомобильного применения, предназначенный для объединения в одну сеть нескольких контроллеров, исполнительных устройств или датчиков. Режим передачи — последовательный, широковещательный, пакетный. Общую ознакомительную информацию вы легко найдете в Интернете на gaw.ru или в Википедии.

CAN получил широкое распространение не только в автомобильной электронике, но и во многих других отраслях: станкостроение, АСУ ТП, авионика, медицинские приборы...и др. Такое широкое распространение обусловлено в первую очередь надежностью передачи данных и универсальностью разработки. Наличие контроллера CAN в современном МК - это стандарт.

Впримерах (Examples) есть три проекта: два из них (LoopBack_Interrupt, LoopBack_Polling) реализуют «эхо» в режиме прерывания и в режиме программного вводавывода. Третий (LoopBack_RTR) реализует режим запроса на удаленную передачу.

5.5.1Ход работы

1.Изучить основы организации сети CAN.

2.Запустить и изучить два первых примера передачи данных по CAN.

3.Добиться связи по CAN между двумя отладочными платами.

ТУСУР, "Миландр"

Каф. ЭСАУ

Недяк С.П., Шаропин Ю.Б

Февраль 2017 г.

Часть II. Ввод-вывод в МК «Миландр» - 5

105

5.5.2Контрольные вопросы

1.Поддерживает ли контроллер I2C режим обмена ПДП ?

2.Чего не хватает на демоплате для организации связи по I2C?

3.Что такое арбитраж и как он выполняется в I2C?

4.Изобразите структуру кадра передачи данных по I2C.

5.С каким устройством на демоплате реализована связь по SPI ?

6.Чем отличаются интерфейсы Microware, SPI и SSI.

7.Изобразите структуру кадра по SPI.

8.Какие уровни OSI реализованы аппаратно в контроллере CAN?

9.Изобразите структуру кадра сети CAN.

10.Каких интерфейсов не хватает в лабораторной работе? Какие интерфейсы вы знаете, кроме приведенных в работе?

5.6Литература

1.Интерфейсы RS232, RS485, I2C, IrDA … URL: http://www.gaw.ru/html.cgi/txt/interface/index.htm.

2.Краткий обзор протокола CAN. Часть I URL: http://www.micromax.ru/articles/article.shtml/rewrite/Can_kvazer_1.

ТУСУР, "Миландр"

Каф. ЭСАУ

Недяк С.П., Шаропин Ю.Б

Февраль 2017 г.

Часть II. Ввод-вывод в МК «Миландр» - 5

106

ТУСУР, "Миландр"

Каф. ЭСАУ

Недяк С.П., Шаропин Ю.Б

Февраль 2017 г.

Источник: https://studfile.net/preview/16438538/