;коммутация входов АЦП
/запуск АЦП на преобразование
296
Глава 11
Листинг 11.1. Продолжение
Isr |
r9 |
|
ror |
tmp2 |
|
clr |
r9 |
|
clc |
||
add |
tmp3, |
r3 |
adc |
r9, rS |
3 |
add |
tmp3, |
r5 |
adc |
r9, rE |
! |
add |
tmp3, |
r7 |
adc |
r9, ri |
! |
clc |
||
Isr |
r9 |
|
ror |
tmp3 |
|
Isr |
r9 |
|
ror |
tmp3 |
|
nop |
||
ret |
;Подпрограмма задержки zader: nop wdr
ldi YL, low(305) ldi YL, high (305) ddd: sbiw YL, 1 brne ddd ret
/Подпрограмма определения мощности, сразнение mosh: nop osi: nop
mov dadcl, tmp2 /запись младшего байта АЦП мощности mov dadc2, tmp3 /запись старшего байта АЦП мощности ldi cxt, В /количество дискретных мощностей
/Чтение данных по мощности
пор |
||
cln |
||
ldi |
ZH, high (2 |
*prog0) |
ldi |
ZL, Low(2* |
progO) |
Add |
ZL, cxt |
/адрес указанной |
LPM |
||
mov |
digl, adr |
/младший байт |
dec |
cxt |
|
subi |
ZL, 1 |
/адрес указанной |
LPM |
||
mov |
dig2, adr |
/старший байт |
dec |
cxt |
Цифровое управление паяльником
297
Листинг 11.1. Продолжение |
||
brmi |
OSl |
/достигнут ноль мощности |
;Прозерха на |
более |
|
"clc |
/сброс флага переноса |
|
cln |
/сброс флага знака |
|
.•вычитание значения АЦП |
из набранного значения |
|
sub digl, dadcl |
/Вычитание младшего байта |
|
;прозерха на |
ноль старшего байта |
|
"clz |
||
cpi |
dig2, 0 |
|
breq |
loki |
|
clr |
tmp |
|
rol |
tmp |
|
sub |
dig2, dadc2 /Вычитание старшего байта с заемом |
|
sub |
dig2, tmp |
|
loki: nop |
||
brpl cik |
||
.•уровень АЦП1 |
зыше указанной мощности |
|
mov |
copy, cxt |
/копируем адрес кода |
nop |
||
mov |
dis2, cxt |
/запись младшего адреса мощности |
inc |
cxt |
|
mov |
disl, cxt |
/запись старшего адреса мощности |
nop |
||
;чтение хода |
мощности |
|
ldi |
ZH, high (2 |
*progl) |
ldi |
ZL, Low(2* |
progl) |
Add |
ZL, disl |
/адрес указанного кода мощности |
LPM |
||
mov |
disl, adr |
/младший байт |
ldi |
ZL, Low(2* |
progl) |
Add |
ZL, disl |
/адрес указанного кода мощности |
LPM |
||
mov |
dis2, adr |
/старший байт |
;вывод на дисплей данных |
||
mov |
cms, cxt |
/адрес дисплея |
subi |
cms, content>E |
/преобразование адреса -14 |
ldi |
ZH, high (2 |
*prog2) |
ldi |
ZL, Low(2* |
prog2) |
Add |
ZL, cms |
/адрес указанного кода мощности |
LPM |
||
mov |
poyl, adr |
/младший байт |
out |
PORTD, poyl ;displ |
ldi ldi Add LPM
ZH, high(2'ргодЗ) ZL, Low(2*prog3)
ZL, cms /адрес указанного кода мощностк
298
Глава 11
Листинг 11,1. Окончание
mov роу2, out PORTB, ret
adr poy2
;младший байт ;disp2
.org 0 |
||||||
;Код регулятора |
||||||
progO: |
||||||
.DB content>, , |
content>, |
B, |
content>, |
$A4, |
content>, |
$CD |
.DB , content>, |
, |
, |
, |
$A4, |
, |
content> |
.DB , , |
, |
$A4, |
, |
content>, |
, |
|
.DB , $A4, |
, |
content> |
||||
;Код мощности |
||||||
progl: |
||||||
.DB , content>, |
, |
, |
, |
, |
, |
|
.DB , , |
, |
, |
content>A, |
, |
content>A, |
$AA |
.DB content>B, A, |
content>D, |
$B6, |
content>E, |
$EE, |
content>F, |
B |
.DB content>F, $BF, |
content>F, |
$FF |
||||
;Код дисплея 1 |
||||||
prog2: |
||||||
.DB content>, , |
, |
B, |
B, |
F, |
, |
D |
.DB D, D, |
, |
F, |
F, |
F |
||
;Код дисплея 2 |
||||||
ргодЗ: |
||||||
.DB F, B, |
D, |
F, |
D, |
F, |
, |
F |
.DB F, D, |
D, |
F, |
, |
F |
Ыстинг 11 2 Шестнадцатиричный код управления паяльником
НА ГЛАВНУЮ | | ЧТО ТАКОЕ PIC ? | | ПРОГРАММАТОР | | ПРОЕКТЫ | | СТАТЬИ | | ССЫЛКИ | | КАРТА САЙТА |