Микроконтроллеры MSP430. Руководство пользователя - часть 7

 

  Главная      Учебники - Разные     Микроконтроллеры MSP430. Руководство пользователя

 

поиск по сайту            правообладателям  

 

 

 

 

 

 

 

 

 

 

 

содержание      ..     5      6      7     

 

 

 

Микроконтроллеры MSP430. Руководство пользователя - часть 7

 

 

 

 

 

 

Раздел 18

АЦП10

Модуль АЦП10 представляет собой высокоэффективный 10-разрядный аналого-цифровой преобразователь. В этом разделе описывается АЦП10. АЦП10 реализован в устройствах MSP430x11x2 и MSP430x12x2.

18.1 Введение в АЦП10

Модуль АЦП10 обеспечивает быстрые 10-разрядные аналого-цифровые преобразования. Модуль имеет 10-разрядное ядро с регистром последовательного приближения SAR, схему выборки, опорный генератор и контроллер переноса данных (DTC).

DTC позволяет выборкам АЦП10 преобразовываться и сохраняться в любом месте памяти без вмешательства ЦПУ. Модуль может конфигурироваться программным обеспечением пользователя для поддержки разнообразных приложений.

АЦП10 обладает следующими возможностями:

  • Максимальная скорость преобразования свыше 200 ksps (200000 преобразований в сек.)
  • Монотонный 10-разрядный преобразователь без ошибочных кодов
  • Выборка и хранение с программируемыми периодами выборки
  • Преобразование инициируется программным обеспечением или таймером А
  • Программно выбираемый интегрированный генератор опорного напряжения (1,5 В или 2,5 В)
  • Программно выбираемый внутренний или внешний опорный источник
  • Восемь индивидуально конфигурируемых внешних входных каналов
  • Каналы преобразования для внутреннего температурного датчика, AVCC и внешних опорных источников
  • Выбираемый источник тактирования преобразований
  • Одноканальный, повторный одноканальный, последовательный и повторно-последовательный режимы преобразования
  • Ядро АЦП и опорное напряжение могут выключаться раздельно
  • Контроллер переноса данных для автоматического сохранения результатов преобразований

Блок-схема АЦП10 показана на рис.18-1.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments Рис.18-1 Блок-схема АЦП10
Рис.18-1 Блок-схема АЦП10

18.2 Функционирование АЦП10

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

18.2.1 10-разрядное ядро АЦП

Ядро АЦП преобразует аналоговый входной сигнал в 10-разрядное цифровое представление и сохраняет результат в регистре ADC10MEM. Ядро использует два программно выбираемых уровня напряжений (VR+ и VR-) для задания верхнего и нижнего пределов преобразования. Цифровой выход (NADC) составляет полную шкалу (03FFh), когда входной сигнал равен или выше VR+, и равен нулю, когда входной сигнал равен или ниже VR-. Входной канал и опорные уровни напряжений (VR+ и VR-) задаются в памяти управления преобразованиями. Результаты преобразования могут быть представлены в натуральном двоичном формате или формате с дополнением до двух. Формула преобразования для результата АЦП NADC с использованием натурального двоичного формата выглядит следующим образом:

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

Ядро АЦП12 конфигурируется двумя управляющими регистрами: ADC10CTL0 и ADC10CTL1. Ядро включается битом ADC10ON. За некоторыми исключениями биты управления АЦП10 могут быть модифицированы только когда ENC=0. ENC должен быть установлен в 1 перед выполнением любого преобразования.

Выбор тактирования преобразования

ADC10CLK используется как для тактирования преобразования, так и для генерации периода выборки. Для выбора источника тактирования АЦП10 используются биты ADC10SSELx, а частота этого источника может быть поделена на 1-8 с помощью битов ADC10DIVx. Возможны следующие источники ADC10CLK: SMCLK, MCLK, ACLK и внутренний осциллятор ADC10OSC.

Внутренне генерируемая частота ADC10OSC лежит в диапазоне 5 МГц, на варьируется в зависимости от конкретного устройства, напряжения питания и температуры. См. справочное руководство конкретного устройства для уточнения значения ADC10OSC.

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

18.2.2 Входы АЦП10 и мультиплексор

Восемь внешних и четыре внутренних аналоговых сигнала выбираются как канал для преобразования входным аналоговым мультиплексором. Входной мультиплексор имеет тип break-before-make (разрыв перед включением), что уменьшает инжекцию шумов от канала к каналу, возникающую при переключении каналов, как показано на рис.18-2. Входной мультиплексор также является Т-переключателем, минимизирующим взаимосвязь между каналами. Невыбранные каналы изолированы от АЦП, а промежуточный узел подключен к аналоговой земле (AVSS), поэтому паразитная емкость заземляется, что помогает устранить перекрестные помехи.

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

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-2 Аналоговый мультиплексор

Выбор аналогового порта

Внешние входы АЦП10 c A0 по А4, VeREF+ и VeREF- мультиплексированы с ножками порта Р2, являющимися цифровые КМОП ячейками. Опциональные входы с А5 по А7 являются у некоторых устройств общими с портом Р3 (см. справочные данные конкретного устройства). Когда аналоговые сигналы прикладываются к цифровым КМОП-схемам, может течь паразитный ток от VCC к GND. Этот паразитный ток появляется, когда величина входного напряжения находится около переходного уровня ячейки. Отключение буфера ножки порта устраняет протекание паразитного тока и вследствие этого уменьшает общий потребляемый ток. Биты ADC10AEx дают возможность отключать входные буфера ножек порта.

                        ; P2.3 конфигурируется как аналоговый вход
    BIS.B #4h,&ADC10AE  ; P2.3 включен как функция АЦП10
    BIC.B #3h,&P6DIR    ; P2.3 переведен на направление ввода
    

18.2.3 Генератор опорного напряжения

Модуль АЦП10 содержит встроенный генератор опорного напряжения с двумя выбираемыми уровнями напряжения: 1,5 В и 2,5 В. Любое из этих опорных напряжений может быть использовано внутренне или внешне на выводе VREF+.

Внутренний опорный источник включается при установке REFON=1. Когда REF2_5V=1, внутреннее опорное напряжение равно 2,5 В, при REF2_5V=0 опорное напряжение равно 1,5 В.

Внешние опорные источники могут быть задействованы для VR+ и VR- через выводы А4 и А3 соответственно.

Маломощные приложения

Внутренний генератор опорного напряжения АЦП10 разработан для маломощных приложений и имеет особые возможности для быстрого запуска. Для правильной работы не требуется внешнего накопительного конденсатора и связанного с ним времени смещения. Общее время включения опорного источника меньше 30 мкС. Для нормальной развязки источника питания требуется только комбинация параллельно включенных конденсаторов на 10 мкФ и 100 нФ.

  • Когда VCC и VSS используются как опорные напряжения, внутренний опорный источник должен быть полностью выключен установкой REFON=0.
  • Когда используется внешний опорный источник, внутренний источник должен быть полностью выключен. Внешние опорные источники могут быть задействованы для VR+ и VR- через выводы А4 и А3 соответственно.
  • Когда используется внутренний источник и максимальная скорость преобразования ниже 50 ksps, установка ADC10SR=1 уменьшает потребление тока внутренним опорным буфером примерно на 50%.
  • Когда оба бита REFOUT=1 и REFBURST=1, опорный источник представлен снаружи только во время периода выборки и преобразования. Когда REFOUT1=1, а REFBURST=0 очищен, опорное напряжение присутствует внешне постоянно.

18.2.4 Тактирование выборки и преобразования

Аналого-цифровое преобразование инициируется по нарастающему фронту входного сигнала выборки SHI. Источник для SHI выбирается с помощью битов SHSx и может быть таким:

  • Бит ADC10SC
  • Модуль вывода 1 таймера А
  • Модуль вывода 0 таймера А
  • Модуль вывода 2 таймера А

Полярность источника сигнала SHI может быть инвертирована битом ISSH. Биты SHTx выбирают период выборки tsample равным 4, 8, 16 или 64 цикла ADC10CLK. Таймер выборки устанавливает SAMPCON в высокий уровень для выбранного периода выборки после синхронизации с ADC10CLK. Общее время выборки составляет tsample плюс tsync. Переход SAMPCON с высокого уровня на низкий стартует аналого-цифровое преобразование, которому необходимо 13 циклов ADC10CLK, как показано на рис.18-3.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-3 Тактирование выборки

Определение длительности выборки

Когда SAMPCON=0, все входы Ax имеют высокое входное сопротивление. Когда SAMPCON=1, выбранный вход Ax можно смоделировать в виде RC фильтра нижних частот в течение периода выборки tsample, как показано на рис.18-4. Внутреннее сопротивление RI (около 2 кОм) мультиплексированного входа последовательно с конденсатором СI (максимум 40 пФ) представляется источником. Конденсатор СI должен быть заряжен напряжением VC в пределах ? младшего бита источника напряжения VS для получения точного 10-разрядного преобразования.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-4 Эквивалентная схема аналогового входа

Сопротивление источника RS и RI влияет на tsample. Следующее выражение может быть использовано для вычисления минимального времени выборки tsample при 10-разрядном преобразовании:

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

При подстановке значений RI и СI, указанных выше, уравнение приобретает следующий вид:

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

К примеру, если RS равно 10 кОм, tsample должно быть больше 1,83 мкС.

18.2.5 Режимы преобразования

ADC10 имеет четыре режима работы, выбираемые битами CONSEQx так, как описано в таблице 18-1.

Таблица 18-1. Сводный перечень режимов преобразования

CONSEQx Режим Операция
00 Одноканальный с одиночным преобразованием Выполняется одно преобразование в одном канале.
01 Последовательность каналов Выполняются однократные преобразования последовательности каналов.
10 Повторяющийся одноканальный Выполняется повторяющееся преобразование в одном канале.
11 Повторяющаяся последовательность каналов Выполняются повторяющиеся преобразования последовательности каналов.

Одноканальный режим с одиночным преобразованием

В одном канале, выбранном INCHx, однократно выполняется выборка и преобразование. Результат АЦП записывается в регистр ADC10MEM. На рис.18-5 показан процесс одноканального режима с одиночным преобразованием. Если преобразование запускается ADC10SC, поочередные преобразования могут быть запущены битом ADC10SC. Когда используется другой источник запуска, ENC должен переключаться между каждым преобразованием.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-5 Одноканальный режим одиночного преобразования

Режим последовательности каналов

В режиме последовательности каналов однократно выполняется выборка и преобразование. Последовательность запускается с выбранного INCHx каналом и декрементируется к каналу А0. Каждый результат АЦП записывается в ADC10MEM. Последовательность останавливается после преобразования в канале А0. На рис.18-6 показан режим последовательности каналов. Если последовательность запускается ADC10SC, поочередные преобразования могут запускаться битом ADC10SC. Когда используется любой другой источник запуска, ENC должен переключаться между каждой последовательностью.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-6 Режим последовательности каналов

Повторяющийся одноканальный режим

В одном канале, выбранном INCHx, непрерывно выполняются выборка и преобразование. Каждый результат АЦП записывается в ADC10MEM. На рис.18-7 показан повторяющийся одноканальный режим.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-7 Повторяющийся одноканальный режим

Режим повторяющейся последовательности каналов

Непрерывно выполняются выборка и преобразование последовательности каналов. Последовательность начинается с канала, выбранного INCHx и декрементируется к каналу А0. Каждый результат АЦП записывается в ADC10MEM. Последовательность останавливается после преобразования в канале А0, а следующий сигнал запуска стартует последовательность снова. На рис.18-8 показан режим повторяющейся последовательности каналов.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-8 Режим повторяющейся последовательности каналов

Использование бита MSC

Для конфигурирования преобразователя на выполнение автоматических поочередных преобразований с максимальной быстротой можно воспользоваться функцией множественных выборок и преобразований. Если MSC=1 и CONSEQx>1, первый фронт сигнала SHI запустит первое преобразование. Поочередные преобразования запускаются автоматически после завершения предыдущего преобразования. Дополнительные фронты на SHI игнорируются, пока последовательность не закончена в режиме одиночной последовательности или пока бит ENC не будет переключен в повторяющийся одноканальный режим или повторяющийся режим последовательностей. Функция бита ENC не изменяется, пока используется бит MSC.

Останов преобразований

Прекращение активности АЦП10 зависит от режима работы. Рекомендуются следующие способы останова активного преобразования или последовательности преобразований:

  • Сброс ENC в одноканальном режиме одиночного преобразования немедленно останавливает преобразование, при этом результат оказывается непредсказуемым. Для получения правильного результата необходимо опрашивать бит занятости ADC10BUSY до сброса перед очисткой ENC.
  • Сброс ENC во время повторяющегося одноканального преобразования останавливает преобразователь в конце текущего преобразования.
  • Сброс ENC во время последовательного или повторно-последовательного режимов останавливает преобразователь в конце последовательности.
  • Любой режим преобразования может быть немедленно остановлен установкой CONSEQx=0 и сбросом бита ENC. Данные преобразования будут ненадежны.

18.2.6 Котроллер переноса данных АЦП10

АЦП10 имеет контроллер переноса данных (DTC) для автоматического переноса результатов преобразования из ADC10MEM в другое место памяти на кристалле. DTC включается установкой регистра ADC10DTC1 в ненулевое значение.

Когда DTC включен, каждый раз по завершении преобразования АЦП10 и загрузки результата в ADC10MEM, запускается перенос данных. Вмешательства программного обеспечения для управления АЦП10 не требуется до тех пор, пока заданное количество данных преобразования не будет перемещено. Для каждого DTC-переноса требуется один такт MCLK ЦПУ. Во избежание любой конфликтной ситуации на шине во время DTC-переноса ЦПУ приостанавливается, если было активно, на один MCLK, необходимый для переноса.

DTC-перенос не должен инициироваться, пока АЦП10 занят. Программное обеспечение должно гарантировать, что никакое активное преобразование или последовательность не выполняется, когда DTC конфигурируется:

    ; Проверка активности АЦП10
    BIC.W #ENC,&ADC10CTL0			  ;
    busy_test BIT.W #BUSY,&ADC10CTL1  ;
    JNZ busy_test                     ;
    MOV.W #xxx,&ADC10SA               ; Безопасность
    MOV.B #xx,&ADC10DTC1              ;
    ; продолжение настройки
    

Режим одноблочного переноса

Одноблочный режим выбирается, если ADC10TB сброшен. Значение n в ADC10DTC1 определяет общее количество переносов для блока. Стартовый адрес блока задается где-либо в адресном диапазоне MSP430 с помощью 16-разрядного регистра ADC10SA. Блок заканчивается на адресе ADC10SA+2n-2. Режим одноблочного переноса показан на рис.18-9.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-9 Одноблочный перенос

Внутренний указатель адреса первоначально равен ADC10SA, а внутренний счетчик перенос первоначально равен «n». Внутренний указатель и счетчик не видимы для программного обеспечения. DTC переносит значение слова ADC10MEM по адресу, находящемуся в адресном указателе ADC10SA. После каждого DTC-переноса внутренний адресный указатель инкрементируется на два, а внутренний счетчик переносов декрементируется на один.

DTC переносы продолжаются с каждой загрузкой ADC10MEM, пока внутренний счетчик переносов не станет равным нулю. Дополнительные DTC переносы происходить не будут до записи в ADC10SA. Когда DTC используется в одноблочном режиме, флаг ADC10IFG устанавливается только после завершения переноса полного блока. На рис.18-10 показана диаграмма состояний одноблочного режима.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-10 Диаграмма состояний управления переносом данных в одноблочном режиме переноса

Режим двухблочного переноса

Двухблочный режим выбирается, если бит ADC10TB установлен. Значение n в ADC10DTC1 определяет количество переносов для одного блока. Адресный диапазон первого блока задается в любом месте диапазона адресов MSP430 с помощью 16-разрядного регистра ADC10SA. Первый блок заканчивается на адресе ADC10SA+2n-2. Адресный диапазон для второго блока задается с SA+2n по SA+4n-2. Режим двухблочного переноса показан на рис.18-11.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-11 Двухблочный перенос

Внутренний указатель адреса первоначально равен ADC10SA, а внутренний счетчик переносов первоначально равен «n». Внутренний указатель и счетчик являются невидимыми для программного обеспечения. DTC переносит значение слова ADC10MEM по адресу, находящемуся в адресном указателе ADC10SA. После каждого DTC-переноса внутренний адресный указатель инкрементируется на два, а внутренний счетчик переносов декрементируется на один.

DTC переносы продолжаются с каждой загрузкой ADC10MEM, пока внутренний счетчик переносов не станет равным нулю. К этому моменту блок один полон и оба бита ADC10IFG и ADC10B1 установлены. Пользователь может проверить бит ADC10B1 для определения, что блок один полон.

DTC продолжает с блока два. Во внутренний счетчик переносов автоматически перезагружается значение «n». При следующей загрузке ADC10MEM контроллер DTC начинает перенос результатов преобразований в блок два. После завершения n переносов блок два полон. Флаг ADC10IFG устанавливается, а бит ADC10B1 очищается. Программное обеспечение пользователя может проверить очистку бита ADC10B1 для определения, что блок два полон. На рис. 18-12 показана диаграмма состояний двухблочного режима.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-12 Диаграмма состояний для управления переносом данных в двухблочном режиме переноса

Непрерывный перенос

Режим непрерывного переноса выбирается, если установлен бит ADC10CT. DTС не будет останавливаться после завершения переноса блока один (в одноблочном режиме) или блока два (в двухблочном режиме). Внутренний адресный указатель и счетчик переносов устанавливаются на значения ADC10SA и n соответственно. Переносы продолжаются, начиная с блока один. Если бит ADC10CT сброшен, DTC прекращает переносы после завершения текущих переносов в блоке один (в одноблочном режиме) или блоке два (в двухблочном режиме).

Длительность цикла DTC переноса

Для каждого переноса ADC10MEM контроллеру DTC требуется один или два тактовых цикла MCLK для синхронизации, один для выполнения собственно переноса (пока ЦПУ приостановлено) и один цикл времени ожидания. Поскольку DTC использует MCLK, длительность цикла DTC определяется рабочим режимом MSP430 и настройками системы тактирования.

Если источник MCLK активен, но ЦПУ выключено, DTC использует источник MCLK для каждого переноса без включения ЦПУ. Если источник MCLK выключен, DTC временно рестартует MCLK, с использованием в качестве источника тактирования для MCLK частоту DCOCLK, но только во время переноса. ЦПУ остается выключенным и после DTC переноса, MCLK снова выключается. Максимальная длительность цикла DTC для всех рабочих режимах показана в таблице 18-2.

Таблица 18-2. Максимальная длительность цикла DTC

Режим работы ЦПУ Источник тактирования Максимальная длительность цикла DTC
Активный режим MCLK=DCOCLK 3 цикла MCLK
Активный режим MCLK=LFXT1CLK 3 цикла MCLK
Режим пониженного энергопотребления LPM0/1 MCLK=DCOCLK 4 цикла MCLK
Режим пониженного энергопотребления LPM3/4 MCLK=DCOCLK 4 цикла MCLK + 6 мкС*
Режим пониженного энергопотребления LPM0/1 MCLK=LFXT1CLK 4 цикла MCLK
Режим пониженного энергопотребления LPM3 MCLK=LFXT1CLK 4 цикла MCLK
Режим пониженного энергопотребления LPM4 MCLK=LFXT1CLK 4 цикла MCLK + 6 мкС*

* Дополнительные 6 мкС необходимы для запуска DCOCLK. Этот параметр в справочном руководстве называется t(LPMx).

18.2.7 Использование интегрированного температурного датчика

При использовании имеющегося на кристалле температурного датчика пользователь выбирает входной аналоговый канал INCHx=1010. Любая другая конфигурация рассматривается как выбор внешнего канала, включая выбор опорного источника, выбор памяти преобразований и т.д.

Типичная передаточная функция температурного датчика показана на рис.18-13. При использовании температурного датчика, период выборки должен быть больше 30 мкС. Ошибка смещения температурного датчика может быть большой и для большинства приложений может потребоваться калибровка. См. справочные данные конкретного устройства для выяснения подробностей.

При выборе температурного датчика автоматически запускается расположенный на кристалле опорный генератор в качестве источника напряжения для температурного датчика. Однако это не включает выход VREF+ и не влияет на выбор опорного источника для преобразования. Процедура выбора источника для преобразования информации с температурного датчика подобна процедуре выбора любого другого канала.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-13 Типичная передаточная функция температурного датчика

18.2.8 Заземление АЦП и рассмотрение влияния помех

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

Паразитные общие петли формируются, когда ток возврата от АЦП проходит совместно с токами других аналоговых и цифровых схем. Если не принимать специальных мер, этот ток может генерировать небольшие нежелательные напряжения смещения, которые могут прибавляться или вычитаться из опорного или входного напряжений аналого-цифрового преобразователя. Способ подключения, показанный на рис.18-14 позволяет этого избежать.

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

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-14. Заземление АЦП10 и устранение помех

18.2.9 Прерывания АЦП10

Одно прерывание и один вектор прерываний связаны с АЦП10, как показано на рис.18-15. Когда DTC не используется (ADC10DTC1=0), флаг ADC10IFG устанавливается, когда результаты преобразования загружаются в ADC10MEM. Когда DTC используется (ADC10DTC1>0), флаг ADC10IFG устанавливается, когда завершается перенос блока и внутренний счетчик переносов «n»=0. Если оба бита ADC10IE и GIE установлены, флаг ADC10IFG генерирует запрос прерывания. Флаг ADC10IFG автоматически сбрасывается, когда запрос прерывания обработан, кроме того, он может быть сброшен программно.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.18-15. Система прерываний АЦП10

18.3 Регистры АЦП10

Регистры АЦП10 приведены в таблице 18-3.

Таблица 18-3. Регистры АЦП10

Регистр Краткое
обозначение
Тип
регистра
Адрес Исходное
состояние
Регистр включения входа АЦП10 ADC10AE Чтение/запись 04Ah Сброс с POR
Управляющий регистр 0 АЦП10 ADC10CTL0 Чтение/запись 01B0h Сброс с POR
Управляющий регистр 1 АЦП10 ADC10CTL1 Чтение/запись 01B2h Сброс с POR
Память АЦП10 ADC110MEM Чтение 01B4h Не изменяется
Регистр 0 управления переносом данных АЦП10 ADC10DTC0 Чтение/запись 048h Сброс с POR
Регистр 1 управления переносом данных АЦП10 ADC10DTC1 Чтение/запись 049h Сброс с POR
Стартовый адрес переноса данных АЦП10 ADC10SA Чтение/запись 01BCh 0200h c POR

ADC10CTL0, управляющий регистр 0 АЦП10

15 14 13 12 11 10 9 8
SREFx ADC10SHTx ADC10SR REFOUR REFBURST
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
7 6 5 4 3 2 1 0
MSC REF2_5V REFON ADC10ON ADC10IE ADC10IFG ENC ADC10SC
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)

Модифицируется, только когда ENC=0

SREFx Биты
15-13
Выбор опорного источника
    000  VR+ = AVCC и VR- = AVSS
    001  VR+ = VREF+ и VR- = AVSS
    010  VR+ = VeREF+ и VR- = AVSS
    011  VR+ = VeREF+ и VR- = AVSS
    100  VR+ = AVCC и VR- = VREF-/VeREF-
    101  VR+ = VREF+ и VR- = VREF-/VeREF-
    110  VR+ = VeREF+ и VR- = VREF-/VeREF-
    111  VR+ = VeREF+ и VR- = VREF-/VeREF-
ADC10SHTx Биты
12-11
Время выборки-хранения АЦП10
    00  4 х ADC10CLKs
    01  8 х ADC10CLKs
    10  16 х ADC10CLKs
    11  64 х ADC10CLKs
ADC10SR Бит 10 Скорость выборки АЦП10. Этот бит определяет приблизительную максимальную скорость выборки АЦП10.
    0  ~200 ksps (200000 выборок /сек)
    1  ~50 ksps (50000 выборок /сек)
REFOUT Бит 9 Выход опорного источника
    0  Выход опорного источника выключен
    1  Выход опорного источника включен
REFBURST Бит 8 Кратковременное включение опорного источника. REFOUT также должен быть установлен.
    0  Опорное напряжение подается постоянно
    1  Опорное напряжение подается только во время выборки-преобразования
MSC Бит 7 Множественная выборка и преобразование. Справедливо только для последовательного и повторяющегося режимов.
    0  Процедуре выборки необходим фронт сигнала SHI для запуска каждой выборки-преобразования
    1  Первый фронт сигнала SHI запускает таймер выборки, а последующие выборки-преобразования выполняются автоматически по завершении предыдущего преобразования
REF2_5V Бит 6 Генератор опорного напряжения. REFON также должен быть установлен.
    0  1.5 В
    1  2.5 В
REFON Бит 5 Включение опорного генератора
    0  Опорный генератор выключен
    1  Опорный генератор включен
ADC10ON Бит 4 Включение АЦП10
    0  АЦП10 выключен
    1  АЦП10 включен
ADC10IE Бит 3 Разрешение прерывания от АЦП10
    0  Прерывание запрещено
    1  Прерывание разрешено
ADC10IFG Бит 2 Флаг прерывания АЦП10. Этот бит устанавливается, если в ADC10MEM загружается результат преобразования. Он автоматически сбрасывается после приема запроса прерывания или может быть сброшен программно. Когда используется DTC, этот флаг устанавливается, когда завершен перенос блока.
    0  Прерывание не ожидается
    1  Ожидается прерывание
ENC Бит 1 Включение преобразования
    0  АЦП10 отключен
    1  АЦП10 включен
ADC10SC Бит 0 Старт преобразования. Программно-управляемый старт выборки-преобразования. ADC10SC и ENC могут быть установлены вместе в одной команде. ADC10SC сбрасывается автоматически.
    0  Нет старта выборки-преобразования
    1  Старт выборки-преобразования

ADC10CTL1, управляющий регистр 1 АЦП10

15 14 13 12 11 10 9 8
INCHx SHSx ADC10DF ISSH
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
7 6 5 4 3 2 1 0
ADC10DIVx ADC10SSELx CONSEQx ADC10
BUSY
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) r-(0)

Модифицируется, только когда ENC=0

INCHx Биты
15-12
Выбор входного канала
    0000  A0
    0001  A1
    0010  A2
    0011  A3
    0100  A4
    0101  A5
    0110  A6
    0111  A7
    1000  VeREF+
    1001  VREF-/VeREF-
    1010  Температурный диод
    1011  (AVCC - AVSS)/2
    1100  (AVCC - AVSS)/2
    1101  (AVCC - AVSS)/2
    1110  (AVCC - AVSS)/2
    1111  (AVCC - AVSS)/2
SHSx Биты
11-10
Выбор источника выборки-хранения
    00  Бит ADC10SC
    01  Выход 1 Таймера А
    10  Выход 0 Таймера А
    11  Выход 2 Таймера А
ADC10DF Бит 9 Формат данных АЦП10
    0  Натуральный двоичный
    1  С дополнением до двух
ISSHx Бит 8 Инвертирование сигнала выборки-хранения
    0  Сигнал выборки-хранения не инвертирован 1  Сигнал выборки-хранения инвертирован
ADC10DIVx Биты
7-5
Тактовый делитель АЦП10
    000  /1
    001  /2
    010  /3
    011  /4
    100  /5
    101  /6
    110  /7
    111  /8
ADC10SSELx Биты
4-3
Выбор источника тактирования АЦП10
    00  ADC10OSC
    01  ACLK
    10  MCLK
    11  SMCLK
CONSEQx Биты
2-1
Выбор режима преобразования
    00  Одноканальный, с одним преобразованием
    01  Последовательность каналов
    10  Повторный одноканальный
    11  Повторяющаяся последовательность каналов
ADC10BUSY Бит 0 Занятость АЦП12. Этот бит показывает активность операций выборки и преобразования.
    0  Действия не выполняются
    1  Выполняется последовательность, выборка или преобразование

ADC10AE, управляющий регистр включения аналогового входа

7 6 5 4 3 2 1 0
ADC10AE7 ADC10AE6 ADC10AE5 ADC10AE4 ADC10AE3 ADC10AE2 ADC10AE1 ADC10AE0
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
ADC10AEx Биты
7-0
Включение аналогового входа
    0  Аналоговый вход выключен
    1  Аналоговый вход включен

ADC10MEM, регистр памяти преобразования, двоичный формат

15 14 13 12 11 10 9 8
0 0 0 0 0 0 Результаты
преобразования
r0 r0 r0 r0 r0 r0 r r


 
7 6 5 4 3 2 1 0
Результаты преобразования
r r r r r r r r


 
Результаты
преобразования
Биты
15-0
10-разрядные результаты преобразования выравниваются по правому краю в натуральном двоичном формате. Бит 9 является старшим битом (MSB). Биты 15-10 всегда равны 0.

ADC10MEM, регистр памяти преобразования, формат с дополнением до двух

15 14 13 12 11 10 9 8
Результаты
преобразования
r r r r r r r r


 
7 6 5 4 3 2 1 0
Результаты
преобразования
0 0 0 0 0 0
r r r0 r0 r0 r0 r0 r0


 
Результаты преобразования Биты
15-0
10-разрядные результаты преобразования выравниваются по левому краю в формате дополнения до двух. Бит 15 является старшим значащим разрядом (MSB). Биты 5-0 всегда равны 0.

ADC10DTC0, регистр 0 управления переносом данных

7 6 5 4 3 2 1 0
Зарезервировано ADC10TB ADC10CT ADC10B1 ADC10
FETCH
r0 r0 r0 r0 rw-(0) rw-(0) rw-(0) rw-(0)


 
Зарезервировано Биты 7-4 Зарезервированы. Всегда читаются как 0.
ADC10TB Бит 3 Двухблочный режим АЦП10.
    0  Одноблочный режим переноса 1  Двухблочный режим переноса
ADC10CT Бит 2 Непрерывный перенос АЦП10.
    0  Перенос данных останавливается, когда перенос одного блока (одноблочный режим) или двух блоков (двухблочный режим) завершен.
    1  Перенос данных выполняется непрерывно. Функционирование DTC останавливается только если ADC10CT очищен или произведена запись в ADC10SA.
ADC10B1 Бит 1 Блок один АЦП10. Этот бит указывает в двухблочном режиме, какой блок заполнен результатами преобразований АЦП10. Значение ADC10B1 справедливо только после установки ADC10IFG в первый раз во время функционирования DTC. ADC10TB также должен быть установлен.
    0  Заполнен блок 1 1  Заполнен блок 2
ADC10FETCH Бит 0 Этот бит обычно должен быть сброшен.

ADC10DTC1, регистр 1 управления переносом данных

7 6 5 4 3 2 1 0
Переносы DTC
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
Переносы DTC Биты
7-0
Переносы DTC. Эти биты задают количество переносов в каждом блоке.
 
    0 DTC отключен
    01h-0FFh Количество переносов в блоке

ADC10SA, регистр стартового адреса для переноса данных

15 14 13 12 11 10 9 8
ADC10SAx
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
7 6 5 4 3 2 1 0
ADC10SAx 0
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) r0


 
ADC10SAx Биты
15-1
Стартовый адрес АЦП10. Эти биты являются стартовым адресом для DTC. Запись в регистр ADC10SA необходима для инициирования DTC переносов.
Не используется Бит 0 Не используется, только чтение. Всегда читается как 0.

 

Раздел 19

ЦАП12

Модуль ЦАП12 представляет собой 12-разрядный цифро-аналоговый преобразователь. В этом разделе описывается ЦАП12. В устройствах MSP430x15x и MSP430x16x реализовано два модуля ЦАП12.

19.1 Введение в ЦАП12

Модуль АЦП12 представляет собой 12-разрядный ЦАП на основе матрицы резисторов R-2R. ЦАП12 может быть сконфигурирован в 8-ми или 12-разрядном режиме и может использоваться совместно с контроллером DMA. Когда в устройстве представлено несколько модулей ЦАП12, они могут быть сгруппированы вместе для синхронного обновления.

ЦАП12 обладает следующими возможностями:

  • 12-разрядный монотонный выход
  • 8-ми или 12-разрядное разрешение выходного напряжения
  • Программируемое время установки в зависимости от потребляемой мощности
  • Выбор внутреннего или внешнего опорного источника
  • Натуральный двоичный формат данных или формат с дополнением до двух
  • Опция самокалибровки для корректировки смещения
  • Возможность синхронного обновления при наличии нескольких модулей ЦАП12
  • Несколько модулей ЦАП12 могут быть сгруппированы для одновременного обновления
Примечание: Множество модулей ЦАП12
Некоторые устройства могут содержать более одного модуля ЦАП12. В случае, когда в устройстве представлено более одного ЦАП12, все модули ЦАП12 работают идентично.
Везде в этом разделе терминология типа DAC12_xDAT или DAC12_xCTL используется для описания имен регистров. При этом x используется для указания, о каком модуле ЦАП12 идет речь. В случае, если операция одинакова для всех модулей, регистр упоминается просто как DAC12_xCTL.

Блок-схема двух модулей ЦАП12 в устройствах MSP430F15x/16x показана на рис.19-1.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments Рис.19-1 Блок-схема ЦАП12
Рис.19-1 Блок-схема ЦАП12

19.2 Функционирование ЦАП12

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

19.2.1 Ядро ЦАП12

ЦАП12 может быть сконфигурирован на работу в 8-ми или 12-разрядном режиме с помощью бита DASC12RES. Кроме того, полный диапазон вывода программируется через бит DAC12IR и может быть 1х или 3х-кратен выбранному опорному напряжению. Эта возможность позволяет пользователю управлять динамическим диапазоном ЦАП12. Когда используется внутренний опорный источник, полный диапазон вывода всегда равен 1х опорного напряжения. Бит DAC12DF позволяет пользователю выбирать для ЦАП натуральные двоичные данные или данные с дополнением до двух. Когда используется натуральный двоичный формат данных, справедлива формула для выходного напряжения, представленная в таблице 19-1.

Таблица 19-1. Полный диапазон ЦАП12 (Vref = VeREF+ или VREF+)

Разрешение DAC12RES DAC12IR Формула выходного напряжения
12 бит 0 0 msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
12 бит 0 1 msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
8 бит 1 0 msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
8 бит 1 1 msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments

В 8-разрядном режиме максимальное используемое значение для DAC12_xDAT равно 0FFh, а в 12-разрядном режиме максимальное используемое значение для DAC12_xDAT равно 0FFFh. Значения, превышающие указанные величины могут быть записаны в регистр, но все первые биты будут проигнорированы.

Выбор порта ЦАП12

Выходы ЦАП12 мультиплексированы с ножками порта Р6 и аналоговыми входами АЦП12. Когда DAC12AMPx>0, для ножек автоматически выбирается функция ЦАП12, независимо от состояния связанных с ними битов P6SELx и P6DIRx.

19.2.2 Опорный источник ЦАП12

Опорный источник для ЦАП12 конфигурируется для использования либо двух внешних опорных напряжений, либо внутреннего опорного источника 1.5В/2.5В от модуля АЦП12 с помощью битов DAC12SREFx. Когда DAC12SREFx={0,1}, как опорный используется сигнал VREF+, а когда DAC12SREFx={2,3}, в качестве опорного используется сигнал VeREF+.

При использовании внутреннего опорного источника АЦП12, он должен быть включен и сконфигурирован через соответствующие управляющие биты АЦП12 (см. раздел «АЦП12»). Как только опорный источник АЦП12 сконфигурирован, опорное напряжение подается на VREF+.

Буферы входного опорного сигнала и выходного напряжения ЦАП12

Буферы входного опорного сигнала и выходного напряжения ЦАП12 могут быть сконфигурированы для оптимизации времени установки1 в зависимости от потребляемой мощности. Восемь возможных комбинаций выбираются с помощью битов DAC12AMPx. При низкой/низкой установке время установки наибольшее, а потребляемый обеими буферами ток наименьший. Средние и высокие настройки позволяют получить быстрое время установки, однако потребляемый ток возрастет. См. справочное руководство конкретного устройства для выяснения подробных параметров.

19.2.3 Обновление выходного напряжения ЦАП12

Регистр DAC12_xDAT может быть напрямую подключен к ядру ЦАП12 или дважды буферизирован. Источник запуска для обновления выходного напряжения ЦАП12 выбирается с помощью битов DAC12LSELx.

Когда DAC12LSELx=0, защелка данных открыта, и регистр DAC12_xDAT напрямую подключен к ядру ЦАП12. Выход ЦАП12 обновляется немедленно, как только новые данные ЦАП12 записаны в регистр DAC12_xDAT, независимо от состояния бита DAC12ENC.

Когда DAC12LSELx=1, данные ЦАП12 защелкнуты и поступают к ядру ЦАП12 после записи новых данных в DAC12_хDAT. Когда DAC12LSELx=2 или 3, данные защелкиваются по фронту сигнала с выхода таймера А CCR1 или с выхода таймера В CCR2 соответственно. DAC12ENC должен быть установлен, чтобы новые данные защелкивались, когда DAC12LSELx>0.

Примечание: Время установки:
Под временем установки понимается время, необходимое ЦАП для установки выходного напряжения, соответствующего его цифровому представлению на входе и при изменении входного значения.

19.2.4 Формат данных DAC12_xDAT

ЦАП12 поддерживает два формата данных: натуральный двоичный и формат с дополнением до двух. Когда используется натуральный формат данных, полный диапазон вывода равен 0FFFh в 12-разрядном режиме (0FFh в 8-разрядном режиме), как показано на рис.19-2.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.19-2 Зависимость выходного напряжения от данных ЦАП12 в 12-разрядном режиме в натуральном двоичном формате

Когда используется формат данных с дополнением до двух, диапазон сдвигается так, что при значении DAC12_xDAT равному 0800h (0080h в 8-разрядном режиме), выходное напряжение будет равно нулю, при 0000h – выходное напряжение составит половину шкалы, а при 07FFh (007Fh для 8-разрядного режима) выходное напряжение достигнет полного диапазона, как показано на рис.19-3.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.19-3 Зависимость выходного напряжения от данных ЦАП12 в 12-разрядном режиме в формате дополнения до двух

19.2.5 Калибровка смещения выходного усилителя ЦАП12

Напряжение смещения выходного усилителя ЦАП12 может быть положительным или отрицательным. Когда смещение отрицательное, выходной усилитель пытается управлять отрицательным напряжением, но не может этого сделать. Выходное напряжение остается равным нулю, пока цифровой вход ЦАП12 не обеспечит достаточного для преодоления отрицательного напряжения смещения положительного выходного напряжения. Получающаяся передаточная функция показана на рис.19-4.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.19-4 Отрицательное смещение

Когда выходной усилитель имеет положительное смещение, ноль на цифровом входе не позволяет получить нулевое выходное напряжение. Выходное напряжение ЦАП12 достигает максимального выходного сигнала до того момента, когда данные на входе ЦАП12 достигнут максимального кода. Это показано на рис.19-5.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.19-5 Положительное смещение

ЦАП12 имеет возможность калибровки напряжения смещения выходного усилителя. Установка бита DAC12CALON инициирует калибровку смещения. Калибровка должна быть завершена до использования ЦАП12. Когда калибровка выполнена, бит DAC12CALON автоматически сбрасывается. Биты DAC12AMPx должны быть сконфигурированы до калибровки.

19.2.6 Группировка нескольких модулей ЦАП12

Несколько ЦАП12 могут быть сгруппированы вместе битом DAC12GRP для синхронного обновления каждого выхода ЦАП12. Аппаратно гарантируется, что все модули ЦАП12 в группе обновляются одновременно, независимо от любого прерывания или NMI-события.

В устройствах MSP430x15x и MSP430x16x модули DAC12_0 и DAC12_1 группируются установкой бита DAC12GRP модуля DAC12_0. Бит DAC12GRP модуля DAC12_1 не используется. Когда DAC12_0 и DAC12_1 группируются, необходимо:

  • Биты DAC12LSELx модуля DAC12_1 выбирают источник запуска обновления для обоих ЦАПов;
  • Биты DAC12LSELx для обоих ЦАП должны быть > 0
  • Биты DAC12ENC обоих ЦАП должны быть установлены в 1.

Когда DAS12_0 и DAC12_1 сгруппированы, оба регистра DAC12_xDAT должны быть записаны перед обновлением выходов – даже если данные для одного или обоих ЦАП не изменились. На рис.19-6 показан пример тактирования защелкивания-обновления для сгруппированных модулей DAC12_0 и DAC12_1.

Когда бит DAC12GRP=1 модуля DAC12_0 и оба бита DAC12LSELx>0 модулей DAC12_x и любой DAC12ENC=0, никакой ЦАП12 не обновляется.

msp430 Микроконтроллеры семейства MSP430 фирмы Texas Instruments
Рис.19-6 Пример обновления группы ЦАП12, запуск от таймера_А3

19.2.7 Использование ЦАП12 с контроллером DMA

Устройства MSP430 с интегрированным контроллером DMA могут автоматически перемещать данные в регистр DAC12_xDAT. DMA-переносы выполняются без вмешательства ЦПУ и независимо от любого режима пониженного энергопотребления. Контроллер DMA увеличивает пропускную способность модуля ЦАП12 и расширяет область приложений с малым потреблением, поскольку ЦПУ во время выполнения переноса данных остается выключенным.

Приложения, нуждающиеся в генерации периодических колебаний, могут получить преимущества от использования контроллера DMA с ЦАП12. К примеру, приложение, вырабатывающее синусоидальное колебание может сохранит значения синуса в таблице. Контроллер DMA может непрерывно автоматически переносить эти значения в ЦАП12 через заданные интервалы, создавая синусоиду без участия ЦПУ. См раздел «Контроллер DMA» для получения большей информации о контроллере DMA.

Примечание: Время установки ЦАП12
Контроллер DMA позволяет переносить данные в ЦАП12 быстрее времени установки их на выходе ЦАП12. Пользователь должен гарантировать, что время установки не будет нарушено при использовании контроллера DMA. См. справочные данные конкретного устройства для выяснения конкретных параметров.

19.2.8 Прерывания ЦАП12

Вектор прерываний ЦАП12 является общим с контроллером DMA. Программное обеспечение должно проверять флаги DAC12IFG и DMAIFG для определения источника прерывания.

Бит DAC12IFG устанавливается, когда DAC12xLSELx>0 и данные ЦАП12 защелкнуты от регистра DAC12_xDAT в защелке данных. Когда DAC12xLSELx=0, флаг DAC12IFG не устанавливается.

Установленный бит DAC12IFG показывает, что ЦАП12 готов для приема новых данных. Если установлены оба бита DAC12IE и GIE, DAC12IFG генерирует запрос прерывания. Флаг DAC12IFG не сбрасывается автоматически. Его должно сбрасывать программное обеспечение.

 

 

19.3 Регистры ЦАП12

Регистры ЦАП12 приведены в таблице 19-2.

Таблица 19-2. Регистры ЦАП12

Регистр Краткое
обозначение
Тип
регистра
Адрес Исходное
состояние
Управление DAC12_0 DAC12_0CTL Чтение/запись 01C0h Сброс с POR
Данные DAC12_0 DAC12_0DAT Чтение/запись 01C8h Сброс с POR
Управление DAC12_1 DAC12_1CTL Чтение/запись 01C2h Сброс с POR
Данные DAC12_1 DAC12_1DAT Чтение/запись 01CAh Сброс с POR

DAC12_xCTL, управляющий регистр ЦАП12

15 14 13 12 11 10 9 8
Резерв DAC12SREFx DAC12RES DAC12LSELx DAC12
CALON
DAC12IR
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
7 6 5 4 3 2 1 0
DAC12AMPx DAC12DF DAC12IE DAC12IFG DAC12ENC DAC12 GRP*
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)

Модифицируется, только когда DAC12ENC=0

* Не используется в устройствах MSP430x15x и MSP430x16x

Зарезервирован Бит 15 Зарезервирован
DAC12
SREFx
Биты
14-13
Выбор опорного напряжения ЦАП12
00 VREF+
01 VREF+
10 VeREF+
11 VeREF+
DAC12RES Бит 12 Выбор разрешения ЦАП12
0 12-разрядное разрешение
1 8-разрядное разрешение
DAC12
LSELx
Биты
11-10
Выбор загрузки ЦАП12. Выбирается сигнал запуска загрузки защелки ЦАП12. Для обновления ЦАП должен быть установлен DAC12ENC, за исключением случая, когда DAC12LSELx=0.
00 Загрузка в защелку ЦАП12 выполняется при записи в DAC12_xDAT (DAC12ENC игнорируется)
01 Загрузка в защелку ЦАП12 выполняется при записи в DAC12_xDAT, или, когда используется группировка, при записи во все регистры DAC12_xDAT группы
10 Фронт сигнала c Таймера_А3.Выход1 (TA1)
11 Фронт сигнала c Таймера_B7.Выход2 (TB2)
DAC12
CALON
Бит 9 Включение калибровки ЦАП12. Этот бит инициирует последовательность калибровки смещения ЦАП12 и сбрасывается автоматически после завершения калибровки.
0 Калибровка не выполняется
1 Инициирование калибровки / выполняется калибровка
DAC12IR Бит 8 Входной диапазон ЦАП12. Этот бит устанавливает диапазон входного опорного напряжения и выходного напряжения.
0 Полный диапазон выходного напряжения ЦАП12 равен 3-х кратному опорному напряжению
1 Полный диапазон выходного напряжения ЦАП12 равен 1-но кратному опорному напряжению
DAC12
AMPx
Биты
7-5
Настройка усилителя ЦАП12. Эти биты выбирают время установки в зависимости от потребляемого тока для входного и выходного усилителей ЦАП12
DAC12AMPx Входной буфер Выходной буфер
000 Выключен ЦАП12 выключен, выход в высокоимпедансном состоянии
001 Выключен ЦАП12 выключен, на выходе 0В
010 Низкая скорость/ток Низкая скорость/ток
011 Низкая скорость/ток Средняя скорость/ток
100 Низкая скорость/ток Высокая скорость/ток
101 Средняя скорость/ток Средняя скорость/ток
110 Средняя скорость/ток Высокая скорость/ток
111 Высокая скорость/ток Высокая скорость/ток
DAC12DF Бит 4 Формат данных ЦАП12
0 Натуральный двоичный
1 Формат с дополнением до двух
DAC12IE Бит 3 Разрешение прерывания от ЦАП12
0 Запрещено
1 Разрешено
DAC12IFG Бит 2 Флаг прерывания ЦАП12
0 Прерывание не ожидается
1 Прерывание ожидается
DAC12ENC Бит 1 Включение преобразования ЦАП12. Этот бит включает модуль ЦАП12, когда DAC12LSELx>0. Когда DAC12LSELx=0, бит DAC12ENC игнорируется.
0 ЦАП12 выключен
1 ЦАП12 включен
DAC12GRP Бит 0 Группировка ЦАП12. Группируется DAC12_x с DAC12_х, имеющий следующий более высокий порядковый номер.
0 Нет группировки
1 ЦАП`ы сгруппированы

DAC12_xDAT, регистр данных ЦАП12

15 14 13 12 11 10 9 8
0 0 0 0 Данные ЦАП12
r(0) r(0) r(0) r(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
7 6 5 4 3 2 1 0
Данные ЦАП12
rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0) rw-(0)


 
Не используется Биты
15-12
Не используется. Эти биты всегда равны 0 и не влияют на ядро ЦАП12.
Данные ЦАП12 Биты
11-0
Данные ЦАП12
Формат данных ЦАП12 Данные ЦАП12
12-разрядный двоичный Данные ЦАП12 выровнены по правому краю. Бит 11 является старшим значащим битом (MSB).
12-разрядный с дополнением до двух Данные ЦАП12 выровнены по правому краю. Бит 11 является старшим значащим битом MSB (знак).
8-разрядный двоичный Данные ЦАП12 выровнены по правому краю. Бит 7 является старшим значащим битом (MSB). Биты 11-8 не имеют значения и не влияют на ядро ЦАП12.
8-разрядный с дополнением до двух Данные ЦАП12 выровнены по правому краю. Бит 7 является старшим значащим битом MSB (знак). Биты 11-8 не имеют значения и не влияют на ядро ЦАП12.

 

 

Замечания по ошибкам в оригинале MSP430

№ п/п Местонахождение в оригинале В оригинале Должно быть Комментарий
1 стр.74, строка 11 снизу «range EDE to EDE+0FEh» «range EDE to EDE+01FСh» (в тексте переводе это не исправлено) В этом примере выполняется обработка 255 слов, поэтому диапазон «неперекрытия» должен быть в два раза больше (сравните с примером обработки 255 байт для предыдущей команды )
2 стр.97, строка 4 сверху «RRC dst» «RRC.B dst»  
3 стр.98, строка 1 и 2 сверху «Subtract source and borrow/.NOT. carry from destination» «Subtract borrow/.NOT. carry from destination»  
4 стр.103, строка 1 сверху «SUBC[.W]SBB[.W]» «SUBC[.W], SBB[.W]»  
5 стр.105, строка 3 снизу «R7 is then added to R6»   Эта строка не относится ни к чему. Её быть не должно.
Очевидно, пример содержал какую-то команду, описание действия которой приводится в этом выражении. Но впоследствии она была удалена из примера, а ставшее ненужным описание её действия осталось.
6 стр.115, строка 1 сверху «Figure 4–2. Basic Clock Block Diagram» «Figure 4–1. Basic Clock Block Diagram» Т.к. Figure 4-1 в тексте вообще отсутствует, а ссылка на него производится (стр.114), нумерация рисунков в оригинале смещена. В тексте перевода смещение устранено для всех рисунков.
7 стр.206, Абзац 1 сверху Читаем перевод:
Захваты могут быть инициированы программно. Биты CMx могут быть установлены для выполнения захвата по обоим фронтам. В этом случае программное обеспечение устанавливает CCI=1 и переключает бит CCISO для переключения сигнала захвата между VCC и GND, инициируя захват каждый раз, когда CCISO изменяет состояние...

Но бит CCI read only! Значит, софт его поставить не могет.(Да и правильно, иначе есть опасность столкновения сигналов, см. Блок-схему).
В английском оригинале аналогично. Переводчик не ошибся.

Но нужно не CCI ставить, а CCIS1.
Об этом говорит и рядомрасположенный ассемблерный пример, и аналогичный фрагмент в описании Таймера В. Там не CCI ставится, а CCIS1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

содержание      ..     5      6      7