512.65K
Категория: ЭлектроникаЭлектроника

Этап инициализации аппаратных средств

1.

Этап инициализации аппаратных средств
outportb('282' , '0'); % запрет работы АЦП
outportb('287' , '0'); % запрет работы таймера
outportb('284' , 'F7');% загрузка коэффициента счёта,
% младший байт
outportb('284' , '1B');% старший байт
outportb('282' , '90');% запуск 12-разрядного АЦП в работу
outportb('287' , '80');% запуск таймера ST0 в работу
% режим программного опроса готовности

2.

REF
ADC
STS
1
UREF
ТА
KI = 2800
R2
22000
R1
1000

Z АЦП
+5V
S
DA2
IN
DA1
C
-5V
i R1 (2 N 1 1) i 1000 2047
146,21429 i
K I U REF / 2
2800 10 / 2
Z11
Z10
Z9
Z8
Z7
Z6
Z5
Z4
Z3
Z2
Z1
Z0

3.

Этап обмена информацией,
Режим программного опроса готовности
for np = 1 : 1 : 250
s = 0;
for k = 1:1:40
flag = 0;
while flag ~= 1
flag = inportb ( '283' );
flag = bitand ( flag, 1 );
end
i ( k ) = inport ( '280' );
s = s + i ( k ) * i ( k );
end
I ( np ) = sqrt ( 0.025 *s ) / 146.21429;

4.

Инициализация МП и УСО
начало
Запрет работы таймера
Задание режима работы таймера
Задание коэффициента счёта
(частоты дискретизации)
Сброс флага АЦП
Z = 0; tрв = 0
1

5.

цикл
Разрешение работы таймера
k=0; k<40; k++
Флаг ST0 = 0
запрет работы таймера
S=0
нет
Флаг ST0=1
да
Считывание i[k]
k=0; k<40; k++
S = S + i[k]*i[k]
I = 0.025* S /m
2

6.

7.

цикл
конец
Разрешение работы таймера
k=0; k<40; k++
Флаг ST0 = 0
запрет работы таймера
S=0
нет
Флаг ST0=1
да
Считывание i[k]
k=0; k<40; k++
S = S + i[k]*i[k]
3
I = 0.025* S /m
2
English     Русский Правила