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

г сравниваем младшие байты

;задаем режим без синхронизации .•проверяем, достиг ли таймер значения

гзызод одного кадра 10 раз

:сравниваем 150 раз

кадра

.•Подпрограмма опроса DIP DIP: nop

in tmp, PORTB

clr tp ;очистка регистра

sbis PINB, 0 ;пропустить, если не нажат DIP1

rjmp qqO si: nop

sbis PINB, 1 ; пропустить, если :-:e нажат DIP2

rjmp qql

156

Глава 7

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

s2:

in nop

tmp, PORTC

   
 

sbis

PINC, 5

/пропустить, если не

нажат

 

rjmp

qq2

   

s3:

nop clr clz

tmp

•; сброс флага нуля

 
 

cp

tp, tmp

/проверяем, были ли

нажаты

 

breq

fff

   
 

rjmp

ex

   

fff:

nop

     
 

ldi

tp, $1E

;по умолчанию 30

 
 

rjmp

ex

   
 

nop

     

qqO:

nop ldi

tmp, $01

   
 

add

tp, tmp

;к регистру добавить

1

 

rjmp

SI

   

qql:

nop ldi

tmp, $05

   
 

add

tp, tmp

;к регистру добавить

5

 

rjmp

S2

   

qq2:

nop ldi

tmp, $0A

   
 

add

tp, tmp

;к регистру добавить

10

 

rjmp

S3

   
 

nop

     

ex:

nop ret

     

time: пор пор ret

;подпрограмма АЦП1, настройка АЦП1 adcnl: пор пор

clr tmp awe: пор

cpi tmp, $04 /считывание АЦП 4-раза

brsh ass ;более 4-х раз

пор

out ADMUX, tmp2 /коммутация входов АЦП

/Подпрограмма задержки 125 мкС пор

clr Y

Световой эффект "Призма"

157

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

ldi Y, $24 ;задаем цикл

cln ;сброс флага знака dx3: пор

dec Y ;цикл начало пор

brpl dx3 ;проверка условия ■ пор

clr tmp2

clr tmp3

ldi tt2, $C5 ;одиночное, запуск, 1/32

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

/Сохранение данных АЦП

in tmp2, ADCL /чтение младшего байта АЦП

in tmp3, ADCH /чтение старшего байта АЦП

mov r2, tmp2 /запомнить временно

mov гЗ, tmp3 /запомнить временно

mov г4, г2 /запомнить временно

mov г5, гЗ /запомнить временно

mov гб, г4 /запомнить временно

mov г7, г5 /запомнить временно

inc tmp /увеличить на 1

rjmp awe

/среднее арифметическое действие

ass: пор

clr г8

/для младшего байта

clc /сброс флага переноса

add tmp2, г2 /сложение с предыдущим

adc г9, г8 /сложение с переносом

add tmp2, r4 /сложение с предыдущим

adc г9, г8 /сложение с переносом

add tmp2, г6 /сложение с предыдущим

adc г9, г8 /сложение с переносом clc


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






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_64.html on line 659

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_64.html on line 659

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_64.html on line 659