Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

IV. Примеры конкретных применений. Таблица частот DTMF: в таблице содержится число тактов MCLK на полупериод




Таблица частот DTMF: в таблице содержится число тактов MCLK на полупериод. Значения скорректированы для действующей частоты MCLK в процессе ассемблиро­вания и округлены с минимально возможной ошибкой частоты



FDTMFLO .word
  .word
  .word
  .word
FDTMFHI .word
  .word
  .word
  .word

((TCLK/697)+l)/2

((TCLK/770)+l)/2 ((TCLK/852)+l)/2 ((TCLK/941)+l)/2 ((TCLK/1209)+l)/2

((TCLK/1336)+1)/2 ((TCLK/1477)+1)/2 ((TCLK/1633)+1)/2


Нижняя частота DTMF 697Hz 770Hz 852Hz 941Hz

Верхняя часто­та DTMF1209Hz 1336Hz 1477Hz 1633Hz


; Таблица содержит число полупериодов для длительности

сигнала DL (мс).

; Для подсчёта используется нижняя частота DTMF


Число полупериодов для DL в мс

DTMFL.byte 2*697*DL/100C

.byte 2*770*DL/100C

.byte 2*852*DL/1000;

.byte 2*941*DL/1000;

.sect «TIMVEC»,OFFFOh

.word TIM_HND

.word TIMMODC

.sect «INITVEC»,OFFFEh

.word INIT


Вектора преры­ваний таймера Timer_A

Вектор модулей 1..4 таймера Вектор модуля О таймера Вектор сброса Reset


Ниже приведено несколько более быстрое решение. Однако, при этом оно требует большего объёма ОЗУ т.к. данные, получаемые из таблиц не пересчитываются каждый раз, а хранятся в двух словах в ОЗУ DTMFLO и DTMFHI. Чтение производится из подпрограмм обработки прерываний тай­мера Timer_A. Используемые таблицы идентичны приведенным в предыду­щем примере.





Дата публикования: 2014-11-18; Прочитано: 338 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.005 с)...