Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
013-bot.docx
Скачиваний:
11
Добавлен:
01.05.2025
Размер:
382 Кб
Скачать
☆
  1. Расчет быстродействия фильтра

Быстродействие фильтра в рабочем режиме оценим как время, необ­ходимое для выполнения всех операций, требуемых для получения входного отсчёта,

вычисления выходного, выдачи его на периферийное устройство, подготовки следующе­го цикла. Для проектируемого фильтра это время складывается как сумма за­трат времени на преобразование аналогового входного отсчёта в код, обра­ботку прерывания от Т/С0 и обработку прерывания от входа INT0 .

Длительность машинного цикла МК (1 мкс) постоянная, поэтому за­траты времени на обработку прерываний можно оценивать количеством требуемых для этого машинных циклов. Число машинных циклов для каждой команды МК приведено в таблице команд.

При расчете суммарного количества машинных циклов для рабочего режима фильтра следует учесть, что разработанная программа содержит раз­ветвления по знаку обрабатываемого отсчёта (команды JC). Умножение от­рицательного отсчёта более длительно по времени. Время выполнения рабо­чего цикла фильтра максимально в том случае, когда все обрабатываемые программой отсчёты - отрицательные.

Таким образом, для выполнения одного цикла работы проектируе­мого фильтра Tф (с момента прерывания от Т/СО до выхода на метку STOP.) требуется время, равное ТФ = 87 ТМЦ + ТАЦП = 87·1·10-6 + 1.3·10-6 = 88.3 мкс < Тд = 125 мкс, где Тмц = 1 мкс - длительность машинного цикла, ТАЦП = 1,3 мкс - длитель­ность преобразования АЦП, Тд = 1 / Fд = 1 /8000 - интервал дискретизации фильтра.

Число 88 показывает количество циклов программы необходимых для выполнения всех операций заложенных в программе, вычислении выходного отсчёта, подготовки следующего цикла. Количество циклов считается после того как выполнена инициализация программы(период переполнения Т/С0, пуск Т/С0, разрешение прерываний от Т/С0 и INT0, порт РA РФ55-ввод, порт РВ РФ55 вывод. Все обрабатываемые отсчёты – отрицательные, так как умножение отрицательного отсчёта более длительно по времени. Условие фильтрации аналогового сигнала в реальном времени выполняется.

Команда

Число использований в программе

Количество затраченных циклов

MOV direct, A

4

4

MOV direct, #data

5

10

MOV direct, direct

4

8

MOV A, direct

6

6

MOVX

2

4

JC

3

6

RRC

3

3

RLC

3

3

INC

6

6

MUL

3

12

ADD

2

2

RETI

2

4

CPL

6

6

SUBB

1

1

CLR

3

3

SJMP

1

2

LJMP

3

6

SETB

1

1