Микропроцессоры и микроконтроллеры

 
 
 
«Трудность работы с програмистом заключается в том, что вы не можете понять что он делает до тех пор пока не стало слишком поздно.»
Seymour Cray
Русский | Українська


Микропроцессоры и микроконтроллеры :: Микроконтроллерные вычислители :: 9.4 Варианты программной реализации измерения периода импульсов.Часть вторая

9.4 Варианты программной реализации измерения периода импульсов.Часть вторая

Второй способ измерения периода внешних импульсов базируется на том, что в микроконтроллерах 80х52 есть возможность автоматической фиксации текущего состояния таймера Т2. При этом входные импульсы, период которых измеряется, нужно подавать на вход T2EX (линия Р1.1). По срезу сигнала на этом входе происходит копирование текущего состояния таймера Т2 в регистры RCAP2H, RCAP2L. После каждого копирования таймер нужно обнулить.

Для настройки таймера Т2 в регистре T2CON нужно установить биты EXEN2 (разрешения приема среза сигнала по входу T2EX) и CP_RL2 (режим фиксации – захват). Байт для настройки таймера Т2 будет иметь вид 00001001b.

Частота измеряемых импульсов может быть выражена через количество подсчитанных импульсов К от ГТИ МК как FИ = 1 / (К×ТМЦ), причем
ТМЦ= ТГТИ.

Максимальное значение измеряемой частоты составляет
FИ max = 1 / ТМЦ, а минимальное – FИ min=1 /(Nmax×ТМЦ), где Nmax = 65535 для
16-битового таймера.

Программная реализация второго способа измерения пери ода внешних импульсов может быть такой:

FdataL  equ  40h   ; Результат измерения (2 байта)

FdataH  equ  41h

org 0

jmp   start       ; Вектор стартового перехода

org 002Bh    ; Обработка прерывания от входа T2EX

mov  FdataL,RCAP2L ; Копирование значений

mov  FdataH,RCAP2H ; из регистров фиксации

mov  TL2,#0        ; Обнуление таймера Т2

mov  TH2,#0       

clr  EXF2          ; Сброс флага прерывания

reti                ; Возврат в основную программу

org XXXX

start:           ; Основная программа

mov  T2CON,#00001001b  ; Настройка таймера Т2

mov  IE,#10100000b ; Настройка прерываний

mov  TL2,#0        ; Обнуление таймера

mov  TH2,#0

setb TR2           ; Запуск таймера Т2

main_calc:           ; Вычисления по алгоритмам,

  . . .            ; выполняемые циклически

jmp  main_calc

Важно, что в приведенном примере использован только таймер Т2. Фактическая максимальная измеряемая частота ограничена временем выполнения процедуры обработки прерывания (14 машинных циклов с учетом вызова) и составляет 
FИФ max = 1 / (14 ТГТИ).

1.4 Восстановление значения физического параметра

1.4  Восстановление значения физического параметра

При измерении физического параметра на основе ЧИМ для восстановления значения физического параметра нужно знать диапазон значений частоты или периода импульсов, которые определяются схемотехникой модулятора (рис.1.1). Необходимо также знать минимальное и максимальное значения измеряемого параметра .

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

Необходимо экспериментально определить количество импульсов N для граничных значений измеряемого параметра: . Тогда значение измеренного физического параметра P можно восстановить як

где   и  .

Важно, что коэффициенты  в данном случае учитывают как характеристику датчика, так и коэффициент преобразования ЧІМ. Их значения должны быть подставлены в окончательный вариант программы управления объектом или оборудованием в виде констант.




Следующая статья >>
«10.1 Ввод аналоговых сигналов в МК»