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

• Приемник модуля SCI имеет специальный режим ожидания, который позволяет организовать локальную сеть в мультипроцессорных системах. В таких системах на основе асинхронного интерфейса одно устройство является ведущим, а все остальные — ведомыми. В каждый момент времени может происходить обмен между ведущим и одним из ведомых. Остальные ведомые при этом не должны воспринимать сигналы на общей линии связи. Это достигается путем перевода приемника контроллера SCI в состояние ожидания «Sleep Mode». Перевод приемника в это состояние осуществляется установкой бита RWU в регистре управления. Выход из состояния ожидания может происходить по двум сценариям. По первому сценарию аппаратные средства приемника должны распознать отсутствие обмена на линии связи (состояние Idle). Это состояние характеризуется наличием высокого логического уровня на линии в течение 10 или 11 интервалов передачи бита при назначенной скорости обмена. Если приемник обнаружил состояние Idle на линии, то это означает, что сеанс обмена с другим ведомым в сети окончен, ведущий может начать новый сеанс, поэтому ведомый должен стать активным, чтобы не пропустить обращение ведущего к нему. По второму сценарию ведущий посылает первый кадр обмена со специальным маркером, который информирует приемник о том, что в кадре указан адрес устройства, с которым ведущий будет производить сеанс связи. Аппаратные средства приемника реагируют на этот маркер в режиме ожидания, и при его поступлении переходят в активный режим работы. Бит WAKE в регистре управления модулем определяет выбор сценария для перевода приемника в активный режим работы.

• Аппаратные средства контроллера устанавливают четыре флага, которые могут генерировать запросы на прерывание от контроллера SCI.

 1. TDRE — бит готовности буфера передатчика к приему новых данных. Устанавливается в момент, когда предварительно загруженные в регистр буфера передатчика данные автоматически переписываются в сдвиговый регистр передатчика.

 2. TC — бит завершения передачи данных. Устанавливается, если данные для передачи в сдвиговом и буферном регистре данных передатчика отсутствуют. Бит TC информирует МК об отсутствии процесса передачи данных в текущий момент времени. В это время на линии TxD установлен высокий логический уровень сигнала (состояние IDLE).

 3. RDRF — бит завершения приема байта данных. Устанавливается в момент, когда принятые по линии RxD данные автоматически переписываются в буферный регистр данных приемника.

 4. IDLE — бит неактивного состояния линии связи. Устанавливается в 1, если на линии RxD диагностируются 10 или 11 (в зависимости от формата кадра) последовательных единиц.

• Аппаратные средства приемника диагностируют три типа ошибок:

 1. Наличие шума на линии RxD. Диагностируется в случае, если при выборке очередного бита информационного кадра, включая стартовый и стоповый биты, не все три детектированные значения бита оказались равными. При обнаружении этого типа ошибки в регистре состояния устанавливается бит NF.

 2. Нарушение формата принимаемого кадра. Диагностируется, если поступающая на вход RxD последовательность битов не соответствует меткам синхронизации, формируемым внутренним счетчиком приемника. Аппаратные средства приемника распознают состояние нарушения синхронизации по признаку наличия на линии нулевого логического уровня в то время, когда должен присутствовать стоповый бит с высоким логическим уровнем сигнала. При обнаружении этого типа ошибки в регистре состояния устанавливается бит FE.

 3. Нарушение логики паритета кадра. Диагностируется, если функция паритета при обмене разрешена, и в принятом кадре значение бита паритета не удовлетворяет принятой логике формирования паритета: при назначенном нечетном паритете число единиц в слове четное, и наоборот. При обнаружении этого типа ошибки в регистре состояния устанавливается бит PF.

Теперь, когда Вы познакомились с общими характеристиками контроллера асинхронного обмена SCI, следует перейти к изучению его аппаратных средств и программно-логической модели. Это позволит Вам разрабатывать программы управления для контроллера SCI. А пока несколько вопросов.

Вопросы для самопроверки

1. Каково назначение бита паритета?

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

2. По какому правилу определяется значения бита паритета? Поясните разницу между четным и нечетным паритетом.

Ответ: Существенной разницы нет. Правило формирования бита паритета:

 • В передаваемом слове данных подсчитывается число единиц;

 • Если это число четное (при четном паритете) или нечетное (при нечетном паритете), то бит паритета устанавливается равным 0;

Перейти на страницу:

Похожие книги

C# 4.0: полное руководство
C# 4.0: полное руководство

В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки. Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию

Герберт Шилдт

Программирование, программы, базы данных
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьёрн Страуструп , Ирина Сергеевна Козлова , Бьерн Страуструп , Валерий Федорович Альмухаметов

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT