=all>
ДОДАТОК 1.
Алгоритми управління САПЧ.
В
Рис.1. Головний алгоритм роботи системи.
В
Рис.2. Алгоритми процедури введення INPUT і процедури виведення OUTPUT.
p> Рис.3. Алгоритм обробки вхідних сигналів і підготовки результатів.
ДОДАТОК 2.
Програма роботи мікроконтролера.
N EQU 4
K EQU 31
INIT: SEL RB0; вибір банку регістрів
L1: MOV R2, N; занести номер каналу
L2: MOV R0, # 20H; занести в РПД адресу пам'яті для даних
АCALL INPUT, читання даних
MOV A, R2;
SUBB A, N;
MOV R2, A; R2 = R2-N
INC R0; збільшити адресу на 1
АCALL INPUT; читання даних
АCALL OBRAB; обробка даних
АCALL OUTPUT; висновок результату
MOV A, R2;
INC;
ADD A, N;
MOV R2, A; R2 = R2 +1 + N
MOV A, N;
MOV B, # 2;
MUL AB; A = 2 * N
SUBB A, R2;
JZ L1; порівняння A і R2
АJMP L2; перехід на L2
RET
INPUT: MOV A, R2; процедура читання даних з порту
SETB ACC.5
SETB ACC.4
OUT P0, A; висновок у Р0 адреси
SETB PO.3; запуск ПВЗ
CLR P0.3;
CLR P0.4; запуск АЦП
L3: IN A, P1; читання з Р1
JNB ACC.7 L3; перевірка готовності АЦП
CLR ACC.7; ст. біт акумулятора дорівнює 0
SETB PO.4 p> MOV @ R0, A; занести лічені дані в пам'ять
RET
OUTPUT: MOV A, R2; процедура виведення результатів
SETB ACC.4
OUT P1, R5; висновок у Р1
OUT P0, A; висновок у Р0 адреси
SETB P0.5
RET
OBRAB: DEC RO; адресу значення пульта оператора
MOV A, @ R0; значення пульта оператора в акк.
INC R0; адресу значення датчика
SUBB A, @ R0; відхилення між пультом оператора і датчиком p> MOV R4, A; відхилення в регістр 4
АCALL ANALIZ; процедура обробки та отримання сигналу управління
MOV A, R4; значення відхилення в акк.
MOV B, # 100;
MUL AB; помножити відхилення на 100%
DEC R0; адресу значення пульта оператора
MOV B, @ R0; значення пульта оператора в В
DIV AB; розділити відхилення на значення пульта оператора
JB ACC.7 NEG; перехід якщо похибка <0
SUB A, # 10; відняти 10% з похибки
JNB ACC.7 INDIK1; якщо похибка> 10% індикація
АSJMP INDIK2
NEG: ADD A, # 10
JB ACC.7 INDIK1; якщо похибка> 10% індикація
АJMP INDIK2
INDIK1: SETB P2.R2
АJMP KON
INDIK2: CRL P2.R2
KON: RET
ANALIZ: MOV B, K; в регістр B значення коефіцієнта пропорційності
MUL AB; помножити відхилення на коефіцієнт
ADD A, # 127; додати макс. зн-е результату поділене на 2 = 127
MOV R5, A; занести результат в регістр 5
RET