Болл С.Р. Аналоговые интерфейсы микроконтроллеров (2007) (1264220), страница 11
Текст из файла (страница 11)
ИСМАХ1242 фирмы МАХ1М1Оа!!аз является типичным примером АЦП с интерфейсом 8Р1. МАХ1242 — !О-битный АЦП последовательного приближения с УВХ в одном 8-выводном корпусе. На Рис. 2.15 показаны вре- 2 9. Последовательные интерфейсы ° 59 Временные диаграммы интерфейса ВР)/М)сгоюге Тактовые (Сск) сигналы Данные (ОАТА) вывор криств~ла (св) )аис. 2.14. Шина БР! менные диаграммы работы последовательного интерфейса ИС МАХ1242.
По спаду сигнала СЗ начинается преобразование, которое длится максимум 7.5 мкс. Когда на СЗ НИЗКИЙ логический уровень, ИС МАХ1242 переволит сигнал на выводе «выход данных» (дата оц)рш) также в О. После завершения преобразования на выводе (дага ошрцг) устанавливается ВЫСОКИЙ логический уровень. Процессор затем может считать ланные бит за битом, синхронизируя чтение сигналами «такты» на линии тактовых импульсов (с!осй йпе) и управляя выводом данных на контакте РО()Т (с)ага оцгрц)) микросхемы МАХ1242. После того, как 10 бит данных прочитаны, ИС МАХ! 242 формирует два служебных бита (вцЬ-Ь))з) 51 и БО.
После прохождения 13 тактов синхронизации ИС устанавливает выход в О, что означает окончание выдачи данных с вывода !)013т (дата ошрш). На Рис. 2.15 показано, как АЦП МАХ!242 может быть соединен с микроконтроллером при помощи встроенного ЯР!/М(сгочг(ге интерфейса. Сигнал ЗСМК с АЦП МАХ1242 поступает на вывод ИСК ЯР! микроконтроллера, а выход РО()Т АЦП МАХ1242 соединяется с БР! входом данных микроконтроллера. Один из выводов порта МК генерирует сигнал СЗ для выбора ИС МАХ1242.
Заметим, что по сигналу С5 начинается преобразование и СЗ лолжен оставаться НИЗКИМ до тех пор, пока преобразование не завершится. Зто значит, что шина БР1 будет недоступна для соединения с другими периферийными устройствами до тех пор, пока не закончится преобразование, и не будет прочитан результат. Если есть подпрограммы обработки прерываний, использующие ЯР!-устройства, они должны быть запрещены во время преобразования.
Для избегания связанных с прерываниями проблем, АЦП МАХ1242 мог бы обращаться к МК с помощью специализированной (нестандартной) 5Р1-шины. Такой подход потребует использования дополнительно трех выводов микроконтроллера. Поскольку большинство микроконтроллеров, если и имеют, то только один БР1-интерфейс. Все необходимые временные диаграммы спе- 60 ° Глава 2. Аггатого-цифровые преобразователи сгк— одтд — 7 ОЗ Оа От Об 05 04 ОЗ 02 О! ОО 81 80 АЦП МДХ1242 устанавливает на выводе ОООТ ВЫСОКИЙ уровен», когда преобразование завершено Цикл преобразования начинается с установки НИЗКОГО уровня на входе б$ Микроконтроллер МЛХ1242 Это соединение обеспечивает формирование прерывания, когда преобразование закончено Рос.
2.15. Интерфейс АЦП МАХ1242 циализированной БР1-шины должны быть выполнены программно и выведены на другой порт (вывод) микроконтроллера. Наконец, возможно генерировать прерывание МК, после того, как аналого-цифровое преобразование завершится. Специальное соединение для выполнения такой функции показано на Рис. 2.15. Вывод ОООТ АЦП МАХ!242 соединяется с выводом Пч)ТК («прерывание») микроконтроллера. Когда на С5 НИЗКИЙ уровень, и преобразование завершено, сигнал 130()Т перейдет в ВЫСОКИЙ уровень, генерируя прерывание на МК. Для использования данного метода программное обеспечение должно запретить или игнорировать прерывания во время АЦ-преобразования.
Другим примером АЦП с 5Р! интерфейсом является ИСА07823 фирмы Апа108 Рергсек Как и в ИС МАХ1242, в АЦП АО7823 для обеспечения интерфейса используется 3 вывода: 5С1 К («такты»), ОО~ЗТ («выход данных») и СО)ч('тг5Т («преобразование»), которое по функции соответствует сигналу С5 ИС АЦП МАХ1242.
ИС АО7823 — это 8-битное АЦП последо- 2.9. Последовательные интерфейсы ° 61 вательного приближения с встроенным УВХ. Преобразование начинается по спаду СО|чЧБТ и занимает 5.5 мкс. Отрицательный фронт сигнала СОЫЧВТ служит разрешением для осушествления связи по последовательному интерфейсу. В отличие от МАХ! 242, АЦП АР?823 не изменяет логический уровень на выводе данных, пока микроконтроллер не станет считывать результат, так что шина интерфейса 8Р1 может использоваться другими устройствами пока идет преобразование.
Так как нет изменения уровня на выводе данных, то и нет специального сигнала для МП о том, что преобразование завершилось. Процессор сам должен дать старт преобразованию, потом подождать какое-то время до завершения преобразования, и, наконец, считать результат. Один из методов управления этим процессом — использование регулярных прерываний таймера. С каждым прерыванием результат считывается, и начинается новое преобразование. 2.9.2. Шина 1~С В двунаправленной шине 1зС используется только 2 линии: последовательная линия синхронизации БСЪ (БСЪос!с) и последовательная линия данных ВРА (8РА|а).
Сигнал на линии 8СЬ формируется процессором для синхронизации данных периферийного устройства. Оба вывода (8РА и БСЪ) обычно выполняются с открытым коллектором (ОК) или открытым стоком (ОС), что определяется типом микросхемы: биполярная и КМОП. Они соединены с положительным источником питания через нагрузочный резистор по схеме «Монтажное И» и, таким образом, несколько устройств могут одновременно использовать шины 8С| и БРА.
При передаче данных сигнал 8 РА можно менять, только тогда пока на 8СЪ установлен НИЗКИЙ уровень. Когда на ЯСЪ ВЪ|СОКИЙ уровень, перепады на линии ЯРА из одного уровня в другой интерпретируются как условия «СТАРТ» и «СТОП». Если ЯРА переходит в НИЗКИЙ, в то время как на линии ЯСЪ ВЫСОКИЙ уровень, все периферийные устройства на шине будут воспринимать это событие как СТАРТ-условие. Если ЯРА переходит в ВЫСОКИЙ, когда на ВСЕ ВЫСОКИЙ уровень, генерируется СТОП-условие. На Рис.
2.16 показан пример типичной передачи данных по шине 1 С. Процессор генерирует СТАРТ-условие, а затем посьиает одновременно всем периферийным устройствам адрес длиной? бит, сообшая устройствам, какое из них выбрано, и восьмой бит чтения/записи (Π— запись, 1 — чтение). 7-битный адрес позволяет подключать по 1зС-шине 2', или 128, периферийных устройств при одном условии: емкость шины не должна превышать 400 пФ. 62 ° Глава 2 Аналого-цифровые преобразователи Временные диаграммы ~ЗС Старт Стоп Зсс ЗОА Синхронизация бита данных Передача типового формата данных 7-битное поле выбора устроиства, которое будет приемником Поле адресадпя выбора внугреннегоывзеса устройства.
Длина поля мажет быта различной в зависимости от устройства Рис. 2.16. Временные диаграммы работы шины )зС Во время передачи в первом байте восьмого бита чтения/записи (тк/тт') процессор устанавливает направление передачи: программирует тк/тйу на запись (передачу) данных от микропроцессора к периферийному устройству, если этот бит равен О. В противном случае (1) микропроцессор сконфигурирован на чтение (прием) данных от периферийного устройства с адресом, указанным в семи битах.
Замечу, что первые 7 бит передаются, начиная со старшего бита и кончая младшим битом, н восьмым битом передается бит й/%К После приема каждого байта, включая адресный байт, выбранное периферийное устройство (приемная сторона) по линии БРА посылает сигнал подтверждения на выполнение функции приема переводом уровня на линии ЯзА в НИЗКИЙ, чтобы показать, что оно приняло адрес и условие чтения/записи. После приема бита подтверждения, процессор устанавливает адрес другого периферийного устройства, с которым он желает установить связь. Длина этого поля зависит от периферийного устройства. Затем принимается бит подтверждения, и передаются данные.
При выполнении операции записи процессор синхронизирует выходные 8 бит, а прн чтении МП устанавливает вывод ЗОА как вход и синхронизирует входную 8-битную последовательность. Данные завершаются битом подтверждения. 2 9. Последовательные интерфейсы ° 63 Некоторые периферийные устройства разрешают считывать или записывать по несколько байтов за олпу передачу. Процессор повторяет последовательность команд «данные/бит подтверждения» (бага/ас)свои!ее)8е) до тех пор, пока все байты не будут переданы.
Периферийное устройство будет увеличивать свой внутренний адрес после каждой передачи. Известно, что недостаток шины! С вЂ” это низкая скорость. Тактовая 3 частота шины ограничена на уровне около 100 кГц. Скорость приема/передачи составляет ! 00 Кбит/с. Однако вторая модификация интерфейса 1зС, называемая скоростной /Раве), работает со скоростью до 400 Кбит/с. В третьей модификации — высокоскоростнои /Н(8а-вреес/) — скорость по шине 1зС доходит до 3.4 Мбит/с. Обе — Равг и )з(8)з-вреег) — шины поддерживают 1О-битное адресное пространство, таким образом может быть адресовано до 1024 устройств. Эти (з18й-вреег) и РааГ-устройства способны функционировать и в старых спецификациях шины 1 С, однако старые периферийные устройства нельзя использовать в системах с повышенной скоростью.