ВУЗ:
Составители:
Рубрика:
31
Примеры программ
1. Работа с портами ввода-вывода
Текст программы
.include "8535def.inc" ; подключение файла описания МК
.device AT90S8535 ; задание конкретного МК
.def temp = r16 ; задание временной переменной temp
.cseg ; установка адреса памяти программ
rjmp RESET ; переход на метку RESET
RESET:
cli ; глобальный запрет прерываний
ldi temp,low(RAMEND) ; загрузка в temp младшего байта адреса
; последней ячейки оперативной памяти МК
out SPL,temp ; определение указателя стека
; (младший байт)
ldi temp,high(RAMEND); загрузка в temp старшего байта адреса
; последней ячейки оперативной памяти МК
out SPH,temp ; определение указателя стека
; (старший байт)
ldi temp,$ff ; загрузка в temp числа $FF
out DDRB,temp ; запись в регистр направления порта В
; значения temp ($FF – порт вывода)
ldi temp,$00 ; загрузка в temp числа $00
out DDRD,temp ; запись в регистр направления порта D
; значения temp ($00 – порт ввода)
LABEL:
in temp,PIND ; загрузка в temp значения уровней на
; выводах порта D
out PORTB,temp ; запись в порт В переменной temp
jmp LABEL ; переход на метку LABEL
Результат выполнения программы
При нажатии на кнопки SW0-SW7 на отладочной плате загораются
соответствующие светодиоды LED0-LED7.
Страницы
- « первая
- ‹ предыдущая
- …
- 30
- 31
- 32
- 33
- 34
- …
- следующая ›
- последняя »
