Предыдущая Следующая

;коммутация входов АЦП

/запуск АЦП на преобразование

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 ? | ПРОГРАММАТОР | ПРОЕКТЫ | СТАТЬИ | ССЫЛКИ | КАРТА САЙТА
Hosted by uCoz