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

Модуль ATD может работать как в режиме однократного преобразования, так и в режиме многократного преобразования. При однократном преобразовании модуль выполняется одно преобразование сигнала с заданным номером канала, после чего модуль ожидает следующего программного запуска. При многократном преобразовании модуль ATD ведет непрерывную оцифровку входного сигнала с заданным номером. После завершения одного преобразования немедленно автоматически запускается следующее. Третий режим работы модуля ATD — режим измерительной сессии. В этом режиме в регистры управления модуля ATD записывается последовательность номеров каналов, которые подлежат оцифровке. После поступления от программы сигнала запуска сначала оцифровывается канал с первым указанным номером. Затем аналоговый мультиплексор автоматически подключает ко входу АЦП канал со вторым запрограммированным номером. Запускается следующее преобразование. И так до окончания запрограммированной последовательности каналов.

Для управления процессом оцифровки восьми аналоговых сигналов предназначены регистры специальных функций модуля ATD, которые объединены в массив из 32 однобайтовых ячеек памяти. Диапазон измерения может варьироваться разработчиком, поскольку выводы для подключения опорных напряжений VHL и VRL выведены на ножки корпуса МК.

4.22.1 Структура и порядок функционирования

Модуль ATD использует линии порта AD в качестве входов AN0…AN7 для подключения измеряемых аналоговых сигналов. Обслуживание модуля ATD — альтернативная функция линий PAD0…PAD7 порта AD. Поэтому на рисунках функциональной схемы МК и модуля ATD (рис. 4.83) эти линии обозначаются AN0/PAD0… AN7/PAD7.

Аналоговые сигналы поступают на вход аналогового мультиплексора. Мультиплексор коммутирует один из аналоговых сигналов на вход АЦП последовательного приближения. Номер коммутируемого канала выбирается программно посредством установки определенных битов в регистрах специальных функций модуля ATD.

Запуск АЦП на преобразование осуществляется программной установкой бита в регистре управления ATDCTL5. После завершения преобразования полученный код загружается в один из регистров результата ADR0H…ADR7H. Номер регистра результата для каждого преобразования выбирается в соответствии с номером измеряемого канала. После завершения преобразования также устанавливаются флаги в регистре состояния ATDSTAT.

АЦП тактируется импульсной последовательностью с выхода делителя частоты fBUS. Выводы VRH и VRL предназначены для подключения внешних источников прецизионного напряжения. Разность напряжений на этих входах URHURL определяет напряжение полной шкалы преобразования модуля ATD. Если напряжение входного аналогового сигнала UINP=URL, то на выходе АЦП будет формироваться код $00. При UINP>=URH, результирующий код АЦП будет равняться $FF. Формат представления кода — прямой однобайтовый беззнаковый.

При изучении модуля ATD сначала может показаться, что процесс управления аналого-цифровым преобразованием достаточно сложен и состоит из многих операций. Мы покажем Вам, что это не так, и для этого проведем аналогию между изучаемым процессом и процессом выпечки пирожных. Для выпечки пирожных (или преобразования измеряемого напряжения в код) проделайте следующие действия:

• Включите духовку (для включения модуля ATD бит ADPU в регистре ATDCTL2 следует установить в 1);

• Прогрейте духовку в течение некоторого времени (после включения ATD следует организовать задержку на 100 мкс для завершения переходных процессов в аналоговых цепях и стабилизации системы тактирования АЦП);

• Определите, какую начинку Вы будете добавлять в пирожные: — грецкие орехи, мармелад и т.д. (определите, какой режим аналого-цифрового преобразования Вы будете использовать, и установите соответствующие биты регистров ATDCTL4 и ATDCTL5);

• Положите пирожные в духовку (установите биты регистра ATDCTL5). Они будут готовы через некоторое заранее установленное таймером время. Об окончании приготовления сообщит звуковой сигнал (В регистре ATDSTAT установится флаг SCF).

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

4.22.2. Регистры управления модуля ATD

Ранее мы отметили, что все регистры специальных функций модуля ATD объединены в блок из шестнадцати 16-разрядных слов. Этот блок занимает в памяти 32 однобайтовых ячейки с последовательными адресами. По смысловому назначению все регистры можно разбить на четыре группы:

• Регистры управления. Эти регистры используются для выбора режима работы модуля ATD, для указания номера подлежащего оцифровке канала, для запуска АЦП на преобразование.

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже