Скачиваний:
34
Добавлен:
01.05.2014
Размер:
2.88 Mб
Скачать

1.2.3. Задание 80хc196kс - совместимого или независимого конфигурируемого времени преобразования

Регистр IOC2 выбирает чем определяется время аналогово-цифрового преобразования регистром AD_TIME, или битом AD_FAST (IOC2.4). Установка бита AD_TIME_ENA допускает использование регистра AD_TIME и преобразователь использует времена выборки и преобразования, определенные в AD_TIME. Очистка бита AD_TIME_ENA выбирает 80ХC196KС - совместимый режим. В этом режиме, бит AD_FAST подключает или отключает делитель частоты для полной совместимости с медленным и быстрым режимами преобразования 80ХC196KС.

Очистка AD_FAST допускает 80ХC196KС медленный режим, который использует 15 времен состояния для времени выборки и общее количество 158 времен состояния для всего преобразования. Установка AD_FAST допускает 80ХC196KС быстрый режим, который использует 8 времен состояния для времени выборки и общее количество 91 времен состояния для преобразования.

Изменение режимов во время процесса преобразования будет вызывать непредсказуемые результаты.

1.2.4. Программирование регистра ad_command

Регистр AD_COMMAND выбирает:

- канал для преобразования;

- выбирает 8 или 10 -битное преобразование;

- выбирает : или непосредственно начинать преобразование или определить быстродействующий модуль вывода (HSO) как устройство запуска преобразования.

Запишите номер канала в AD_CHAN_SEL биты (биты 0-2,

канал ACH0 - 000, канал ACH7 - 111).

Чтобы выбрать 10-битное преобразование, очистите бит AD_MODE (бит 4). Чтобы выбрать 8-битное преобразования, установите бит AD_MODE. Очистите биты 5-7.

Установите GO бит (бит 3), если хотите немедленно начать преобразование. Преобразования, инициализированные установкой бита GO , будут начинаться через 3 такта после выполнения команды.

Очистите бит GO, если хотите, чтобы в дальнейщем преобразование инициализировал HSO модуль.

HSO модуль вызывает преобразование , выполняя команду (CMD_TAG =0FH). Процесс преобразования начинается, когда значение Таймера 1 увеличилось до запрограммированного значения. Это помогает прикладным программам попытаться приблизиться к спектрально чистому осуществлению выборки, поскольку последовательные выборки, предоставляемые Таймером 1 будут происходить с дисперсией около 50 нс (при стабильной частоте на XTAL1).

Обратите внимание: запись в бит GO активизирует преобразователь, даже если бит уже содержит значение. Поэтому, чтобы начать новое преобразование, Вы должны снова записать байт в регистрAD_COMMANDтребуемое значение преобразование.

Следующий код показывает, как использовать HSO модуль, чтобы он инициализировал преобразование.

LDB AD_COMMAND, XXXX1XXXB ; установить GO бит

LDB HSO_COMMAND, #START_AD ; Загрузить команду ;начала AD преобразования в регистр HSO_COMMAND.

;Добавить 16-битную константу к текущему cодержимому ;TIMER1 ADD HSO_TIME, TIMER1, #TIME_DELAY

; и поместить результат в HSO_TIME

Регистр HSO позволяет нескольким командам START_AD загружаться в SAM. Однако, будьте внимательными при записи команд HSO. Если содержимое Таймера 1 увеличилось и начинается новое преобразование, в то время как предыдущее еще не закончилось, то старое преобразование прерывается и начинается новое.

PTS может начинать новое преобразование по прерыванию “Завершение аналогово-цифрового преобразования” (INT01).

Соседние файлы в папке Лабораторные работы по МПС