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

 while ((SP0SR & 0x80) == 0x00) /*ожидать флага завершения передачи*/

 {

  ;

 }

 status = SP0SR /*прочитать регистр состояния с целью сброса флага SPIF*/

}

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

4.19.5 Периферийные ИС с интерфейсом SPI

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

• Память типа EEPROM или FLASH;

• Дополнительные порты ввода/вывода;

• Часы реального времени;

• АЦП высокого разрешения (число разрядов преобразования превышает 8 бит);

• Драйверы светодиодных и жидкокристаллических дисплеев;

• Многоканальные ЦАП;

• Схемы фазовой автоподстройки частоты.

4.20. Введение в теорию аналого-цифрового преобразования

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

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

Рис. 4.80. Временная диаграмма, поясняющая процесс преобразования аналогового сигнала в цифровой код.


Для представления некоторого изменяющего во времени аналогового сигнала в цифровом коде необходимо:

• Определить частоту дискретизации (выборки) аналогового сигнала;

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

• Преобразовать напряжение входного сигнала в многоразрядный двоичный код.

Далее мы рассмотрим каждую из перечисленных задач более подробно.

4.20.1. Частота дискретизации сигнала

В процессе преобразования непрерывно изменяющийся аналоговый сигнал представляется конечным числом отсчетов этого сигнала, взятых в определенные моменты времени (рис. 4.80). Такой способ преобразования называют дискретизацией по времени.

Как правило, моменты взятия отсчетов сигнала следуют с равными интервалами во времени. Поэтому можно говорить о частоте дискретизации сигнала или частоте выборки. Какова должна быть эта частота, чтобы на основе дискретных по времени отсчетов сигнала можно было безошибочно восстановить исходный сигнал? Итоги исследований, выполненных по этому вопросу, сформулированы в критерии Найквиста: 

Минимальная частота дискретизации сигнала равна удвоенной частоте высшей гармоники в представлении исследуемого сигнала: 

fS ≥ 2fh, где 

fS — частота дискретизации, fh — частота высшей гармоники при разложении исследуемого сигнала в гармонический ряд.

Одновременно с американским ученым Найквистом аналогичный результат был получен русским ученым академиком В.А. Котельниковым, поэтому теорему о минимальном значении частоты дискретизации в России именуют теоремой Котельникова (прим. переводчика).

Частота дискретизации определяет максимальный интервал времени TS между соседними отсчетами (рис. 4.80):

TS = 1/fS

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

Пример. Верхняя граница частотного диапазона голоса человека примерно равна 4 кГц. Поэтому частота дискретизации в оборудовании телефонной компании должна составлять не менее 8 кГц.

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

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

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