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

Глава 8

Листинг 8.1. Продолжение

пор

rcall pered nov r4, tmp2 .-больше 360=168h? els

nop

cpi

brlt

nop

els

cpi

brlt

nop

rjmp

si, $01

gg

s, $68

gg

nStart

;Настройка АЦП adcn

nop

 

nop

 

clr

tmp

nop

 

cpi

tmp, $04

brsh

ass

clr

tmp3

ldi

tmp3, $83

out

ADMUX, tmp3

clr

tmp2

clr

tmp3

ldi

tmp2, $C4

out

ADCSR, tmp2

некие

данных АЦП

i n

tmp2, ADCL

in

tmp3, ADCH

mov

r2, tmp2

mov

r3, tmp3

mov

r4, r2

mov

r5, r3

mov

r6, r4

mov

r7, r5

inc

tmp

rjmp

awe

;подпрограмма передачи з ЦАП

;проверка переполнения ст. байта

;проверка переполнения мл. байта :возвращение на начало цикла

;внутренний источник, зход ADC3 ;коммутация зходоз АЦП

.•одиночное, запуск, 1/16

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

;среднее арифметическое дейстзие ass: пор

clr гЗ

clc

add -mp2, r2 adc г9, гЗ

Микроконтроллерный генератор

191

Листинг 8.1, Продолжение

add

tmp2,

r4

adc

r9, r8

 

ad'd

tipp2,

r6

adc

r9, r8

 

clc

   

Isr

r9

 

ror

tmp2

 

Isr

r9

 

ror

tmp2

 

clr

r9

 

clc

   

add

tmp3,

r3

adc

r9, r8

 

add

tmp3,

r5

adc

r9, r8

 

add

tmp3,

r7

adc

r9, r8

 

clc

   

Isr

r9

 

ror

tmp3

 

Isr

r9

 

ror

tmp3

 

nop

   

ret

   

;подпрограмма передачи данных в ЦАП ;младший байт s ;старший байт si

pered:

nop

 
 

ldi

tmp2, $08

 

cbi

PORTB, 1

wer:

nop

 
 

dec

tmp2

 

cpi

tmp2, $01

 

brlt

vor

 

cbi

P0RT3, 2

; зреме.

нная

задержка

 

nop

 
 

wdr

 
 

ldi

ZL, $E7

 

ldi

ZH, $03

ddd: sbiw ZL, 1

brne ddd

sbi PORTB, 1 clc

rol si /сдвиг злезо через перенос

brcs poi ;переход, если перенос установлен

192

Глава 8

Листинг 8.1. Продолжение

cbi P0RT3, О

poi:

redw:

ddd2:

wdr

ddd3:

vor: wer3

nop

sbi

nop

nop

wdr

ldi

ldi

sbiw

brne

cbi

nop

nop

nop

nop

nop

nop

nop

nop

nop

nop

nop

nop

nop

nop

cbi

P0RT3, 0

ZL, $E7 ZH, $03 ZL, 1 ddd2

PORTB, 1

PORTB, 0

ldi ZL, $E7 ldi ZH, $03 sbiw ZL, 1 brne ddd3 rjmp wer nop nop dec cpi brl cbi

;временная задержка nop wdr ldi ldi

ddd6: sbiw ZL, 1 brne ddd6

tmp2

tmp2, $01 vor2

PORTB, 2

ZL, $E7 ZH, $03

Микроконтроллерный генератор 193

Листинг 8.1. Продолжение

sbi P0RT3, 1

poll:

ddd7:

ddd8:

vor2 :

clc

rol

brcs

cbi

rjmp

nop

redw2 : nop wdr ldi ldi sbiw brne cbi nop nop nop nop nop nop nop nop nop nop nop nop nop nop cbi wdr ldi ldi sbiw brne rjmp nop sbi nop ret

s

poi 1

PORTB, 0 redw2

ZL, $E7 ZH, $03 ZL, 1 ddd7

PORTB, 1

PORTB, 0

ZL, $E7 ZH, $03 ZL, 1 ddd8 wer3

PORTB, 0

;сдвиг влево через перенос .■переход, если перенос установлен

;Подпрограмма задержки включения zader: пор wdr

clr М clr Y

194

Глава 8

Листинг 8.1. Продолжение

 

ldi

Y, $AF

 

cpi

tmp3, $00

 

brne

goo

 

ldi

M, $01

 

add

M, tmp3

 

nop

 

goo:

nop

 
 

mov

M, tmp3

dm:

nop

 
 

cpi

tmp2, $00

 

brne

goq

 

ldi

X, $01

 

add

X, tmp2

 

nop

 

goq:

nop

 
 

mov

X, tmp2

dv:

nop wdr nop

 

dx:

dec

Y

 

brpl

dx

 

cln

 
 

dec

X

 

brpl

dv

 

cln

 
 

dec

M

 

brne

dm

 

ret

 

;Подпрограмма

задержки

zaderl

wdr

nop

 

clr

M

 

clr

Y

 

ldi

Y, $CF

 

cpi

tmp3, $00

 

brne

gool

 

ldi

M, $01

 

add

M, tmp3

 

nop

 

gool:

nop

 
 

mov

M, tmp3

dml:

nop

 
 

cpi

tmp2, $00

 

brne

goql

 

ldi

X, $01

 

add

X, tnro2

Микроконтроллерный генератор


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






Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book8_77.html on line 1596

Warning: include(./news.php) [function.include]: failed to open stream: No such file or directory in /var/www/picprof/data/www/picprof.com/book/book8_77.html on line 1596

Warning: include() [function.include]: Failed opening './news.php' for inclusion (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/picprof/data/www/picprof.com/book/book8_77.html on line 1596