Чтение онлайн

на главную - закладки

Жанры

Встраиваемые системы. Проектирование приложений на микроконтроллерах семейства 68HC12/HCS12 с применением языка С

Пак Дэниэл Дж.

Шрифт:

4.17. Обмен информацией в последовательном коде: многофункциональный последовательный интерфейс 

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

В МК семейства 68HC12/HCS12

обмен в последовательном коде обеспечивает модуль многофункционального последовательного интерфейса (MSI — Multiple Serial Interface). Этот модуль содержит в себе две независимых подсистемы последовательного обмена: контроллер асинхронного обмена SCI (Serial Communication Interface) и контроллер синхронного обмена SPI (Serial Peripheral Interface). Каждый из контроллеров обслуживают линии порта S, для которых эта функция является альтернативной.

Рис. 4.54. Два наиболее распространенных типа последовательных интерфейсов

Контроллер SCI поддерживает полнодуплексный обмен в асинхронном режиме с форматом кадра, который совместим с последовательным интерфейсом персонального компьютера RS-232. Термин полнодуплексный означает, что в один и тот же момент времени один и тот же контроллер SCI может как принимать, так и передавать информацию. Термин асинхронный характеризует способ передачи данных, при котором дополнительный сигнал синхронизации, подтверждающий наличие очередного бита данных на линии, не используется. Следовательно, синхронизация между обменивающимися устройствами отсутствует. Для однонаправленной асинхронной передачи информации между двумя устройствами потребуется всего линия связи, что отражено на рис. 4.54.

Синхронный интерфейс SPI поддерживает синхронный последовательный обмен между МК и другими ИС, установленными на плате изделия. Эти интегральные схемы дополняют функции периферии микропроцессорной системы, которые не могут быть реализованы средствами встроенных модулей МК. Именно поэтому в названии этого интерфейса присутствует термин «периферийный». Интерфейс SPI также используют для связи двух МК, однако такое решение встречается в разработках не столь часто, как обмен с периферийными ИС.

Рис. 4.55. Сопряжение МК с ЦАП по параллельному и последовательному интерфейсу

При обмене в синхронном режиме в одном направлении (рис. 4.54) используются две линии связи между устройствами. По одной линии передаются данные, на другой в это время формируются сигналы синхронизации. То устройство, которое формирует импульсы синхронизации, называется ведущим или «master», а то устройство, которое использует эти сигналы синхронизации — ведомым или «slave».

Теоретически скорость обмена в синхронном режиме значительно превышает скорость обмена в асинхронном режиме.

При обмене между двумя устройствами информация передается порциями, которые в терминологии последовательного обмена принято называть кадрами. Каждый кадр содержит определенное число бит данных и дополнительные биты, которые используются для установления надежной связи между передающим и принимающим устройствами. Одной из задач по обеспечению надежной связи является задача синхронизации обмена. Принимающее устройство должно по определенной комбинации сигналов на линиях связи распознать начало каждого нового кадра. В противном случае одна ошибка при передаче какого-либо кадра вызовет нарушение приема всех последующих кадров сеанса связи.

Интерфейсы последовательного обмена используют различные способы синхронизации обмена. Формат кадра асинхронного обмена представлен на рис. 4.56. В асинхронном режиме с использованием интерфейса SCI данные передаются байтами в стандартном американском

коде ASCII (American Standard Code for Information Interchange). Кроме восьми битов данных кадр обмена содержит также стартовый и стоповый биты, отмечающие начало и конец кадра, и необязательный бит паритета. Стартовый и стоповый биты участвуют в процессе синхронизации между передатчиком и приемником, бит паритета (если он присутствует в кадре) используется для контроля на стороне приемника за наличием ошибок в принятом байте данных.

Рис. 4.56. Форма кадра асинхронного обмена

Контроллер интерфейса SCI в составе МК 68HC12 обслуживают две линии ввода/вывода: TxD — выход передатчика контроллера SCI, RxD — вход приемника контроллера SCI. При использовании асинхронного интерфейса SCI взаимодействующие устройства перед сеансом обмена должны обязательно «договориться» о скорости передачи данных. Если передатчик находится в неактивном состоянии (Idle), то на его выходе устанавливается сигнал высокого логического уровня (рис. 4.56). В это время приемник аналогичного контроллера SCI на другом конце линии постоянно сканирует уровень сигнала на входе RxD. Если приемник обнаруживает, что сигнал на линии изменил состояние с 1 на 0, то он производит несколько контрольных выборок сигнала, чтобы убедиться в наличии на линии низкого логического уровня. Если низкий уровень присутствует на линии в течение времени, равного интервалу передачи одного бита для установленной скорости обмена, то приемник распознает такое состояние как старт-бит (рис. 4.56) и начинает прием последующих бит данных. В процессе приема аппаратные средства приемника формируют метки времени, которые должны соответствовать середине интервала присутствия на линии каждого бита. По каждой метке производятся три выборки уровня сигнала на линии. По результатам выборки методом мажоритарной логики определяется значение очередного принятого бита информации. Если все три значения равны, то прием бита полностью успешный. Если значения разные, то аппаратные средства приемника устанавливают бит звона на линии, который затем может быть использован программистом при оценке надежности приема. После приема восьми (при использовании бита паритета девяти) бит данных приемник контролирует наличие на линии логической 1. Это стоп-бит, который завершает прием одного кадра. Если аппаратные средства приемника не обнаружили на линии стоп-бита, будет установлен бит ошибки формата кадра. Тогда весь кадр должен быть воспринят программой как ошибочный.

В синхронных последовательных интерфейсах передача по линии каждого бита сопровождается сигналом подтверждения по другой вспомогательной линии. Эту линию в интерфейсе SPI обозначают как SCK (Shift Clock). Такой способ передачи данных позволяет достичь очень высоких скоростей обмена. Именно он и используется в контроллерах SPI в составе МК 68HC12.

4.17.1. Термины последовательного обмена

На рис. 4.57 представлена обобщенная временная диаграмма обмена в последовательном коде. Эта диаграмма позволит нам познакомиться с терминами, которые принято использовать при описании последовательного обмена.

Рис. 4.57. Временные диаграммы синхронного последовательного обмена

Синхронизация (clock): Сигнал, который определяет скорость обмена данными в последовательных синхронных интерфейсах. Как следует из рис. 4.57, каждый бит передаваемых данных сопровождается одним импульсом синхронизации.

Скорость обмена (bit rate): Число бит, которые передаются по линии в одну секунду (бит/с). Скорость обмена в бит/с равна частоте сигнала синхронизации в Гц.

Поделиться:
Популярные книги

Неудержимый. Книга VIII

Боярский Андрей
8. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
6.00
рейтинг книги
Неудержимый. Книга VIII

Законы Рода. Том 6

Flow Ascold
6. Граф Берестьев
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Законы Рода. Том 6

Восход. Солнцев. Книга I

Скабер Артемий
1. Голос Бога
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Восход. Солнцев. Книга I

Попаданка

Ахминеева Нина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Попаданка

Возлюби болезнь свою

Синельников Валерий Владимирович
Научно-образовательная:
психология
7.71
рейтинг книги
Возлюби болезнь свою

Кодекс Крови. Книга III

Борзых М.
3. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга III

Ротмистр Гордеев 2

Дашко Дмитрий
2. Ротмистр Гордеев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Ротмистр Гордеев 2

Идеальный мир для Лекаря 5

Сапфир Олег
5. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 5

Адвокат Империи 3

Карелин Сергей Витальевич
3. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Адвокат Империи 3

Жребий некроманта 3

Решетов Евгений Валерьевич
3. Жребий некроманта
Фантастика:
боевая фантастика
5.56
рейтинг книги
Жребий некроманта 3

Город драконов

Звездная Елена
1. Город драконов
Фантастика:
фэнтези
6.80
рейтинг книги
Город драконов

Убивать, чтобы жить

Бор Жорж
1. УЧЖ
Фантастика:
героическая фантастика
боевая фантастика
рпг
5.00
рейтинг книги
Убивать, чтобы жить

Инквизитор Тьмы 2

Шмаков Алексей Семенович
2. Инквизитор Тьмы
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Инквизитор Тьмы 2

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец