Элементы систем электропривода (микроконтроллеры). Доманов А.В. - 34 стр.

UptoLike

Составители: 

Рубрика: 

33
out ADCL ,temp ; обнуление значения ADCL
out ADCH ,temp ; обнуление значения ADCH
out ADMUX ,temp ; выбор 0-го канала АЦП
ldi temp ,$E8 ; загрузка в temp числа $E8
out ADCSR ,temp ; загрузка в ADCSR значения temp
; $E8 = 11101000
ldi temp ,$80 ; загрузка в temp числа $80
out SREG ,temp ; запись в регистр SREG значения temp
; $80 = 10000000
LABEL:
rjmp LABEL ; переход на метку LABEL
Результат выполнения программы
При касании 0-го вывода порта А загораются светодиоды.
3. Работа с таймером-счетчиком
Текст программы
.include "8535def.inc" ; подключение файла описания МК
.device AT90S8535 ; задание конкретного МК
.def temp = r16 ; задание временной переменной temp
.def temp2 = r17 ; задание временной переменной temp2
.cseg ; установка адреса памяти программ
rjmp RESET ; переход на метку RESET
.org OC1Aaddr
rjmp TC1CA ; описание прерывания: при совпадении
; значения таймера-счетчика с заданным
; перейти на метку TC1CA
TC1CA:
dec temp2 ; уменьшить значение temp2 на 1
out PORTB ,temp2 ; вывести в порт В значение temp2
reti ; возврат из прерывания
RESET:
cli ; глобальный запрет прерываний
ldi temp,low(RAMEND) ; загрузка в temp младшего байта адреса
; последней ячейки оперативной памяти МК
out SPL,temp ; определение указателя стека
; (младший байт)
ldi temp,high(RAMEND); загрузка в temp старшего байта адреса