
- •Отличительные особенности микроконтроллеров at91 на базе ядра arm® Thumb®
- •. Описание
- •2. Краткий обзор конфигурации семейства at91sam7s
- •3. Структурная схема
- •4. Назначение выводов
- •5. Назначение внешних выводов для различных корпусов
- •6. Питание
- •7. Порты ввода-вывода
- •8. Архитектура ядра процессора
- •9. Память
- •10. Системный контроллер
- •10.1 Организация памяти системного контроллера
- •10.2 Контроллер сброса
- •10.3 Тактовый генератор
- •10.4 Контроллер управления потребляемой мощностью
- •Расширенный контроллер прерываний и модуль внутрисхемной отладки
- •Таймеры, контроллер портов ввода-вывода и контроллер режимов стабилизатора напряжения питания
- •11. Периферийные модули
- •11.1 Организация памяти периферийных модулей
- •11.2 Дополнительные функции портов ввода-вывода
- •11.3 Функции портов pa0…pa31
- •11.4 Идентификаторы периферийных модулей
- •11.5 Последовательный периферийный интерфейс
- •Двухпроводной интерфейс, usart, spi
- •11.9 Таймер-счетчик (tc)
- •Шим контроллер, usb, ацп
- •12. Обзор процессора arm7tdmi
- •13. Отличительные способности средств отладки и тестирования Описание и структурная схема
- •13.3 Примеры применения
- •13.4 Описание выводов для отладки и тестирования
- •13.5 Функциональное описание
- •14. Контроллер сброса (rstc) Обзор и структурная схема
- •14.3 Функциональное описание
- •14.4 Пользовательский интерфейс контроллера сброса
- •15. Таймер реального времени (rtt)
- •15.3 Функциональное описание
- •15.4 Пользовательский интерфейс таймера реально времени
- •16. Интервальный таймер (pit)
- •16.3 Функциональное описание
- •16.4 Пользовательский интерфейс интервального таймера
- •17. Сторожевой таймер (wdt)
- •17.3 Функциональное описание
- •17.4 Пользовательский интерфейс сторожевого таймера
- •18. Контроллер режимов стабилизатора напряжения (vreg)
- •19. Контроллер памяти (mc)
- •19.3 Функциональное описание
- •19.4 Пользовательский интерфейс контроллера памяти
- •20. Контроллер встроенной флэш-памяти (efc)
- •20.3 Пользовательский интерфейс контроллера встроенной флэш-памяти
- •21. Интерфейс программирования флэш-памяти (ffpi)
- •21.3. Последовательный интерфейс программирования флэш-памяти
- •22. Стартовый загрузчик at91sam7 (бут загрузчик)
- •23. Контроллер пдп (dma) периферийных модулей
- •23.3 Функционирование контроллера dma
- •23.4 Контроллер пдп (pdc). Интерфейс работы
- •24. Расширенный Контроллер Прерываний (aic)
- •24.6 Особенности контроллеров at91 серии
- •24.7 Функциональное описание
- •24.8 Контроллер прерываний aic. Интерфейс пользователя
- •25. Тактовый генератор
- •26. Контроллер управления потребляемой мощности (pmc)
- •26.5 Контроллер тактовых сигналов периферийных модулей (Peripheral Clock Controller)
- •26.6 Контроллер программно управляемых внешних тактовых сигнала
- •6.7 Последовательность программирования
- •26.8 Переключение тактовых сигналов
- •26.9 Регистры контроллера управления потребляемой мощности
- •27. Модуль внутрисхемной отладки (dbgu)
- •27.4. Работа уапп (uart)
- •27.5 Пользовательский интерфейс модуля внутрисхемной отладки
- •28. Контроллер параллельного ввода-вывода
- •8.5 Функциональное описание
- •28.7. Пользовательский интерфейс контроллера параллельного ввода - вывода
- •9. Последовательный периферийный интерфейс (spi)
- •29.6 Функциональное описание
- •29.7 Пользовательский интерфейс последовательно - параллельного интерфейса (spi)
- •30. Двухпроводной интерфейс
- •30.5 Функциональное описание
- •30.6. Пользовательский интерфейс двухпроводного интерфейса
- •33. Таймер-счетчик (тс)
- •33.5 Функциональное описание
- •33.6 Пользовательский интерфейс таймера-счетчика (тс)
- •34. Контроллер широтно-импульсной модуляции (шим)
- •34.5 Функциональное описание
- •34.6 Пользовательский интерфейс шим-контроллера (pwm)
- •35. Порт usb-устройства (udp)
- •35.5. Функциональное описание
- •35.5.2.8 Транзакция "Статус"
- •35.6. Пользовательский интерфейс usb порта (udp)
- •36. Аналогово-цифровой преобразователь (ацп)
- •36.5 Функциональное описание
- •36.6 Пользовательский интерфейс ацп
36. Аналогово-цифровой преобразователь (ацп)
36.1 Обзор
АЦП выполнен по принципу последовательных приближений и обладает 10-разрядной разрешающей способностью. Он также интегрирует 8-входовой мультиплексор, который позволяет выполнить преобразование одного из 8 входов. Диапазон преобразования АЦП составляет 0В…ADVREF.
АЦП поддерживает два режима преобразования: 8-разрядный и 10-разрядный, а результат преобразования размещается в общем регистре для всех каналов, а также в отдельном для каждого канала регистре. Предусмотрена возможность выбора источников запуска преобразования: программный запуск, внешний запуск по нарастающему фронту на выводе ADTRG или внутренний перезапуск выходными сигналами таймера-счетчика.
АЦП также поддерживает режим сна, содержит блок упорядочивания преобразований и связан с каналом PDC. Данные особенности позволяют снизить потребляемую мощность и загрузку процессора.
Наконец, пользователь может настраивать временные характеристики АЦП, в т.ч. время запуска и время выборки-хранения.
36.2 Структурная схема
Рисунок
36.1. Структурная схема аналогово-цифрового
преобразователя
Таблица 36.1. Назначение выводов АЦП
Наименование выводов |
Описание |
VDDIN |
Напряжение питания аналоговых блоков |
ADVREF |
Опорное напряжение |
AD0 - AD7 |
Аналоговые входные каналы |
ADTRG |
Вход внешнего запуска преобразования |
36.4 Различия в реализации АЦП в семействе AT91SAM7S
36.4.1 Управление потреблением
АЦП автоматически синхронизируется после первого преобразования в нормальном режиме. В режиме сна синхронизация АЦП автоматически останавливается после каждого преобразования. Поскольку логическая часть является небольшой и модуль АЦП предусматривает возможность перевода в режим сна, контроллер управления потребляемой мощностью не оказывает никакого влияния на поведение АЦП.
36.4.2 Источники прерываний
Линия прерывания АЦП подключена к одному из внутренних источников расширенного контроллера прерываний. Для использования прерывания АЦП необходимо вначале настроить контроллер прерываний.
36.4.3 Аналоговые входы
Входы AD0-AD7 могут мультиплексироваться с линиями ввода-вывода. В этом случае присвоение функции входа АЦП выполняется автоматически сразу после разрешения работы соответствующего канала путем записи в регистр ADC_CHER. По умолчанию, сразу после сброса, линии ввода-вывода настраиваются на ввод с включенными подтягивающими к плюсу питания резисторами, а вход АЦП подключается к GND.
36.4.4 Линии ввода-вывода
Вывод ADTRG может использоваться совместно с другими периферийными модулями через контроллер ПВВ. Поэтому, для назначения выводу ADTRG совместной работы с модулем АЦП необходимо выполнить соответствующую установку контроллер ПВВ.
36.4.5 Запуск преобразования таймером
Таймеры-счетчики при необходимости могут выступать в качестве аппаратных источников запуска преобразования.
36.4.6 Характеристики преобразования
Характеристики модуля АЦП приведены в разделе 37.7 "Характеристики АЦП".
36.5 Функциональное описание
36.5.1 Аналогово-цифровое преобразование
Для выполнения преобразований АЦП тактируется собственным сигналом синхронизации АЦП. Для преобразования аналогового напряжения в 10-разрядный цифровой код требуется некоторое количество циклов на выборку-хранение, что задается в поле SHTIM "Регистра режима АЦП ", и 10 тактов синхронизации АЦП. Частота синхронизации АЦП выбирается в поле PRESCAL регистра режима (ADC_MR).
Диапазон частот синхронизации АЦП находится между MCK/2 (PRESCAL=0) и MCK/128 (PRESCAL=63 или 0x3F).
36.5.2 Диапазон преобразования
АЦП выполняет преобразование напряжений в диапазоне от 0В до уровня, заданного на входе опорного напряжения ADVREF. Аналоговые входы, напряжение на которых находится внутри указанных границ, преобразовываются в значения на основе линейного преобразования.
36.5.3 Разрешающая способность преобразования
АЦП поддерживает 8 или 10-разрядную разрешающую способность. Для выбора 8-разрядного разрешения необходимо установить бит LOWRES в регистре режима АЦП (ADC_MR). По умолчанию, сразу после сброса, выбирается максимальная разрешающая способность и поле DATA в регистре данных используется полностью. После установки бита LOWRES происходит переключение на минимальную разрешающую способность, после чего результат преобразования размещается в восьми младших разрядах регистра данных. Два старших разряда поля DATA в соответствующем регистре ADC_CDR и поле LDATA в регистре ADC_LCDR считываются с нулевыми значениями.
Кроме того, если канал PDC подключен к АЦП, то при использовании 10-разрядной разрешающей способности устанавливается 16-разрядный размер запроса передачи. После установки бита LOWRES происходит автоматическое переключение к 8-разрядной передаче данных. В этом случае, оптимизируются буферы назначения.
36.5.4 Результаты преобразования
После завершения преобразования 10-разрядный результат сохраняется в регистре данных канала (ADC_CDR) текущего канала и в регистре результата последнего преобразования (ADC_LCDR).
По завершении преобразования устанавливается бит канала EOC в регистре статуса (ADC_SR), а также устанавливается DRDY. В случае подключения канала PDC нарастающий фронт на DRDY запустит запрос на передачу данных. Любой из бит EOC и DRDY может служить источником запуска прерывания.
После считывания одного из регистров ADC_CDR сбрасывается соответствующий бит EOC. При считывании ADC_LCDR сбрасывается бит DRDY и бит EOC, соответствующий последнему преобразованному каналу.
Рисунок
36.2. Поведение флагов EOCx и DRDY
Если регистр ADC_CDR не будет считан до поступления новых данных после преобразования, то установится соответствующий флаг ошибки перезаполнения (OVRE) в регистре статуса (ADC_SR).
Аналогичным образом, при поступлении новых данных после преобразования, когда DRDY равен 1, устанавливается бит GOVRE (общая ошибка перезаполнения) в регистре ADC_SR.
Флаги OVRE и GOVRE автоматически сбрасываются после считывания ADC_SR.
Рисунок
36.3. Поведение флага GOVRE и OVREx
Предупреждение: если соответствующий канал отключается в ходе преобразования или если он был отключен, а затем активизирован в ходе преобразования, то связанные с ним данные и соответствующие флаги EOC и OVRE в регистре ADC_SR будут иметь непредсказуемые значения.
36.5.5 Запуск преобразования
Преобразование активных аналоговых каналов может инициироваться программно или аппаратно. Программный запуск выполняется путем записи регистра управления (ADC_CR) с установленным битом START.
Источником аппаратного запуска может выступать один из выходов TIOA каналов таймера-счетчика или вход внешнего запуска преобразования АЦП (ADTRG). Источник аппаратного запуска преобразования выбирается в поле TRGSEL в регистре режима (ADC_MR). Работа выбранного источника аппаратного перезапуска выбирается с помощью бита TRGEN в регистре режима (ADC_MR).
Если выбирается аппаратный способ запуска преобразования, то преобразование инициируется по каждому нарастающему фронту выбранного сигнала. Если выбирается один из выходов TIOA, то соответствующий канал таймера-счетчика должен быть запрограммирован на работу в режиме генератора.
Для инициации последовательности преобразования на всех каналах необходима только одна команда запуска. Аппаратная логика АЦП автоматически выполняет преобразования на активных каналах, а затем ожидает новый запрос. Регистры разрешения каналов (ADC_CHER) и отключения каналов (ADC_CHDR) позволяют раздельно включать или отключать аналоговые каналы.
Если АЦП используется с PDC, то данные передаются только из активных каналов. Поэтому, содержимое буферов данных необходимо интерпретировать соответствующим образом.
Предупреждение: включение аппаратных источников запуска преобразования не означает отключение программных способов запуска. Таким образом, если выбран аппаратный источник запуска преобразования, то оно может инициироваться аппаратно или программно.
36.5.6 Режим SLEEP и блок упорядочивания преобразований
Режим SLEEP позволяет существенно снизить потребляемый ток АЦП за счет отключения модуля АЦП на время, когда он не используется для преобразований. Режим сна выбирается путем установки бита SLEEP в регистре режима ADC_MR.
Управление режимом SLEEP автоматически выполняет блок упорядочивания преобразований, который может автоматически выполнить процесс преобразования всех каналов при минимальном уровне потребления. АЦП автоматически активизируется после поступления запроса на старт преобразования. Поскольку для возобновления работы аналогового модуля требуется определенное время, то первоначально вводится задержка, а затем инициируется преобразование на разрешенных каналах. По завершении преобразований АЦП отключается до следующего запуска. Запросы на запуск преобразования, которые возникают в ходе последовательности преобразования, игнорируются.
Блок упорядочивания преобразований позволяет автоматизировать процесс преобразования каналов при минимальной загрузке процессора и оптимизированном уровне потребления. Последовательности преобразований могут выполняться периодично с помощью выхода таймера-счетчика. Процессор может быть разгружен еще более, если использовать PDC для периодической передачи нескольких оцифровок.
Прим.: вход опорного напряжения остается всегда включенным, как в нормальном режиме, так и в режиме SLEEP.
36.5.7 Временные диаграммы АЦП
Каждый АЦП характеризуется собственным минимальным временем запуска, которое программируется в поле STARTUP в регистре режима ADC_MR.
Аналогичным образом, для достижения наилучших характеристик преобразования при переключении каналов вводится минимальная задержка выборки-хранения. Время выборки-хранения программируется в битовом поле SHTIM в регистре режима ADC_MR.
Предупреждение: в состав АЦП не входит входной буфер для изоляции АЦП от источника сигнала. Это необходимо принять во внимание для более точного выбора значения SHTIM (см. раздел "Статические характеристики").