–PAGE_BREAK–
–PAGE_BREAK–
3.2 Расчёт.
Частота настройки контура зависит от управляющего напряжения следующим образом:
Fk=Fk0+S(Uупр-Uупр) (1)
где Fk— начальное значение частоты контура при Uупр=Uупр0
S— крутизна характеристики преобразования.
DUупр=Uупр2-Uупр1 (2)
Из (1) следует, что
Т.к Df=3кГц, то при
F1=Fmin+Df=1000+3=1003 (кГц), Þ (В)
F2=Fmin+2Df=1006 (кГц) Þ (В)
ÞDUупр=Uупр2-Uупр1=1,24-1,12=0,12 (В)
(В) — минимальное значение напряжения на входе, которое даёт 1 в младшем разряде кода.
DUупр>UЦАПÞдесятиразрядный ЦАП подходит для выполнения данной задачи. DUЦАП=0,01 В Þна вход надо подавать по 12kимпульсов (как бы проскакивая по 12 импульсов сразу), где k— номер шага . 1210 = 00000011002, Þ2 первых разряда всегда равны 0, Þих можно заземлить, Þк порту подключается 8 разрядов (старших) и вместо 12 на ЦАП подается 3 (112=310). Þможно охватить весь диапазон без использования дополнительных разрядов.
— количество шагов для того чтобы пройти всю область настройки.
12∙Kn=2004 — нужно 10 разрядов
8∙Kn=501 — нужно 8 разрядов.
(В)
Если Ukвозрастает на постоянно на всей области настройки, то (В)
DUk>DUАЦПÞ8-ми разрядный ЦАП подходит для решения данной задачи.
4. Распределение ресурсов МП системы
Регистр ОЭВМ R2 будет хранить значения Uупр, в R3 помещаются значения предыдущего шага Uk-1, а в A(аккумулятор) — значения последующего шага Uk. В R4 в процессе работы программы будем помещать только N— параметр программной задержки. В Bбудет храниться количество шагов для прогона всей области настройки. Выбираем N=135, т.к время программной задержки равно 400 мкс, а вся процедура реализуется в 3 цикла, Þ.
5. Подробная структурная схема алгоритма.
6. Программа работы МК.
–PAGE_BREAK–
–PAGE_BREAK–
7. Контрольный пример.
Для просмотра результатов вместо порта P1 будем значения Uk, будут помещаться во внутреннюю память, начиная с адреса 20H и заканчивая адресом 27H, Þ в R0 будет размещаться адрес внутренней памяти и “MOVA, P1” заменяется на “MOVA, @R0”. Так же уменьшим количество шагов и время программной задержки.
–PAGE_BREAK–
8. Определение быстродействия программы.
Найдём, сколько времени потребуется для поиска станции, которая находится в середине диапазона. F=1,25 мГц и при условии что придётся делать один шаг назад.
T=Nц1tц1+Nц2tц2+tпер+tд
Nц1=250 — количество шагов в первом цикле
Nц2=1 — количество шагов во втором цикле
tц1=417 мкс
tц2=414 мкс
tпер=424 — время перехода из одного цикла в другой
tд=4 мкс — время ввода начальных данных
ÞT=250×417+1×414+424+4=104717 мкс
9. Листинг отлаженной программы.
A51 MACRO ASSEMBLER 78 24/12/01 13:46:28 PAGE 1
DOS MACRO ASSEMBLER A51 V5.10
OBJECT MODULE PLACED IN 78.OBJ
ASSEMBLER INVOKED BY: M:\KEILTEST\BIN\A51.EXE 78.A51 DB EP
A51 MACRO ASSEMBLER 78 24/12/01 13:46:28 PAGE 2
SYMBOL
TABLE
LISTING
————
————-
————
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
–PAGE_BREAK–