• Главная • Назад •








Counter

 


Цифровой фильтр
 


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


Пример программы на ассемблере для PIC16 с учетом нахождения переменной zad_DPT  в "другом" банке памяти!.

zad_DPT       ; переменная формирующая задержку сигнала

#define     DPT              PORTB,6 ; физический порт
#define     temp_DPT     flag_6,0 ; бит предыдущего состояния
#define     DACH_DPT    flag_6,1 ; бит используемый в работе программы
 

ЭТОТ КУСОК НАДО ПОМЕСТИТЬ В ЦИКЛЕ ПРОГРАММЫ ИЛИ ЦИКЛЕ РАБОТЫ ТАЙМЕРА (ПРЕРЫВАНИЯ) ДЛЯ ФОРМИРОВАНИЯ ДЛИТЕЛЬНОСТЕЙ ЗАДЕРЖКИ.

; Цифровой фильтр

;========================================
    btfsc      DPT                   ; контроль входного состояния
goto $+.19                          ;
    btfss      temp_DPT          ;     
goto $+.8                            ;
    movlw    .20                     ; задержка на формирования "0"
    banksel    zad_DPT            ;
    movwf     zad_DPT             ;
    banksel   ind_1                 ;
    bcf          temp_DPT         ;
    banksel   zad_DPT            ;
    movf       zad_DPT,f         ;
    banksel   ind_1                 ;
    BNZ $+2                          ;
    bcf         DACH_DPT          ; сигнал "0"
goto $+.18                          ;
    btfsc      temp_DPT          ;
goto $+.8                            ;
    movlw    .20                    ; задержка на формирования "1"
    banksel   zad_DPT            ;
    movwf    zad_DPT             ;
    banksel   ind_1                 ;
    bsf temp_DPT                  ;
    banksel   zad_DPT            ;
    movf      zad_DPT,f           ;
    banksel   ind_1                 ;
    BNZ $+2                          ;
    bsf         DACH_DPT          ; сигнал "1"
;========================================

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


Для получения дополнительной информации используйте:

MAGETEX
Ukraine
Телефон: +380-50-575-98-63
Факс: +380-50-575-98-63
Интернет: invent-systems@ya.ru
 

Главная | Назад
 
Отправить сообщение для: gchernov@mail.ru с вопросами и замечаниями об этом веб-узле.
© 2007 MAGETEX
Дата изменения: 23.08.2013