Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
378
Добавлен:
21.05.2015
Размер:
7.55 Mб
Скачать
    1. Прерывания и события

АЦП может генерировать как прерывания, так и события. Каналы АЦП предусматривают раздельную настройку прерываний. Запросы прерываний и события генерируются либо при завершении преобразования АЦП, либо если результат преобразования АЦП больше или меньше значения в регистре сравнения АЦП.

    1. Калибровка

Модуль АЦП оснащен механизмом калибровки. Для выполнения калибровки АЦП необходимо сосчитать соответствующее калибровочное значение из сигнатурного кода производителя (определяется на фазе производственных испытаний производителем) и записать его в регистр калибровки АЦП. Такая калибровка позволяет добиться 12-битной точности преобразования.

    1. Приоритет каналов

Поскольку системная синхронизация может быть быстрее, чем синхронизация АЦП, имеется возможность запуска преобразований установкой соответствующих бит в нескольких каналах АЦП в течение одного и того же периода синхронизации АЦП. События также могут запустить преобразования в нескольких каналах по такому же сценарию. В таком случае, приоритет будет отдаваться каналу с наименьшим номером. Это отражено на временных диаграммах, представленных на рисунках 25.13…25.18.

    1. Синхронизация выборок

После запуска преобразования АЦП может возникнуть неизвестная по длительности задержка между программным запуском или событием и фактическим запуском преобразования. Такая ситуация может возникнуть, когда одновременно запускается другое более высокоприоритетное преобразование или используется системная синхронизация, частота которой существенно больше частоты синхронизации АЦП. Чтобы преобразование запустить сразу при поступлении события, предусмотрена возможность отмены всех преобразований АЦП, сбросить синхронизацию АЦП и запустить преобразование во время следующего цикла синхронизации УВВ, который предшествует следующему циклу синхронизации АЦП. Если это выполнить, все выполняющиеся преобразования на конвейере АЦП будут потеряны. Отмена преобразований может быть выполнена либо программно, либо автоматически при поступлении входящего события (требует соответствующей настройки). При использовании отмены преобразований, важно, чтобы промежуток времени между запусками каждого преобразования был больше задержки распространения. Это необходимо для гарантирования завершения одного преобразования перед инициацией очистки конвейера и запуском следующего преобразования. В микроконтроллерах с двумя модулями АЦП, имеется возможность синхронного запуска преобразований в обоих АЦП. Для этого, необходимо для каждого из АЦП выбрать один и тот же источник запуска.

    1. Описание регистров модуля ацп

      1. Ctrla - регистр управления а модуля ацп

Бит

7

6

5

4

3

2

1

0

 

+0x00

DMASEL[1:0]

CH[3:0]START

FLUSH

ENABLE

CTRLA

Чтение/запись

Чт/Зап

Чт/Зап

Чт/Зап

Чт/Зап

Чт/Зап

Чт/Зап

Чт/Зап

Чт/Зап

Нач значение

0

0

0

0

0

0

0

0

  • Биты 7:6 - DMASEL[1:0]: настройка запроса на DMA-передачу

В дополнение к генерации запроса на DMA-передачу каждым каналом АЦП, модуль АЦП поддерживает возможность настройки объединенных запросов для нескольких каналов. Объединенный запрос настраивается битами DMASEL. Подробности см. в таблице 25.1.

Таблица 25.1. Настройка запроса на DMA-передачу

DMASEL[1:0]

Групповая конфигурация

Описание

00

OFF

Объединенный запрос на DMA-передачу не выбран

01

CH01

Запрос на DMA-передачу генерируют канал АЦП 0 или 1

10

CH012

Запрос на DMA-передачу генерируют канал АЦП 0, 1 или 2

11

CH0123

Запрос на DMA-передачу генерируют канал АЦП 0, 1, 2 или 3

  • Биты 5:2 - CH[3:0]START: запуск одиночного преобразования в канале АЦП

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

  • Бит 1 - FLUSH: очистка конвейера АЦП

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

  • Бит 0 - ENABLE: разрешение работы АЦП

Установка данного бита активизирует работу АЦП.

Соседние файлы в папке Архитектура ЭВМ