перетворення);
- вхід CS;
, 16 - входи CLK і ALE - синхронізація і запуск АЦП відповідно; 17-19 - адресні входи А0-А2 (вибір каналу); 20-27 - цифрові виходи.
На вивід 14 подається напруга живлення +5 В, на 28 - 0В.
В
Малюнок 9. Умовне графічне позначення К572ПВ4
За заданим алгоритмом АЦП виробляє послідовне опитування і вибір каналу з наступним перетворенням вхідної напруги. Операція здійснюється з вироблення сигналу STAT. Дані надходять в регістр адреси при високому рівні логічного сигналу ALE і фіксується при нульовому рівні. br/>
Додаток А. Лістинг програми
LXI SP, 010Fh; в стек адресу останньої комірки пам'яті
MVI D, 4; лічильник
MET1: MVI A, 28h; запускаємо АЦП
OUT 01h; виводимо через порт 01h
MVI B, 6500; організуємо паузу
PAUSE: DCX B; декремент BC
MOV A, C; A = CB; A = A or B
JNZ PAUSE; цикл поки не буде A = 0
MVI A, 01h; читаємо значення першого каналу
OUT 01h; виводимо через порт 01h
IN 00h; вводимо через порт 00h
MOV C, A; C = A
LDA 0100h; завантажуємо попередню суму
ADD C; складаємо з попередніми значеннями
STA 0100h; зберігаємо суму
MVI A, 02h; читаємо значення 2-го каналу
OUT 01h; виводимо через порт 01h
IN 00h; вводимо через порт 00h
MOV C, A; C = A
LDA 0101h; завантажуємо попередню суму
ADD C; складаємо з попередніми значеннями
STA 0101h; зберігаємо суму
MVI A, 03h; читаємо значення 3-го каналу
OUT 01h; виводимо через порт 01h
IN 00h; вводимо через порт 00h
MOV C, A; C = A
LDA 0102h; завантажуємо попередню суму
ADD C; складаємо з попередніми значеннями
STA 0102h; зберігаємо суму
DCR D; декремент лічильника
JNZ MET1; цикл поки не 0
MVI H, 0; старший байт діленого
MVI C, 3; дільник
LDA 0100h; завантажуємо першу суму
MOV L, A, L = A
CALL Д16; ділимо для осереднення на 3
CALL Д16; ділимо ще раз на 3 (за алгоритмом)
MOV A, L; A = L
STA 0100h; зберігаємо осредненное значення
LDA 0101h; завантажуємо 2 сум...