ВУЗ:
Составители:
<обработчики прерываний>
;подпрограмма-обработчик прерывания по сбросу МК
RESET:
; Инициализация стека:
ldi r16, high(RAMEND)
out SPH,r16
; значение RAMEND определено в .DEF-файле
ldi r16, low(RAMEND)
; загрузить непосредственно регистр ввода-вывода
out SPL,r16
; нельзя, надо через регистр быстрого доступа
; Другие настройки периферии:
…
reti
; выход из обработчика прерывания RESET
;подпрограмма-обработчик прерывания от вывода INT0
EXT_INT0:
…
; код обработчика
reti
;подпрограмма-обработчик прерывания от вывода INT1
EXT_INT1:
…
; код обработчика
reti
<Остальные подпрограммы-обработчики прерываний, если они необходимы>
ВАЖНО:
Программная инициализация стека обязательна (учтите: стек –
преддекрементный), без этого программа не будет работать.
Всё пространство данных (не EEPROM) доступно для прямой
адресации.
Регистры ввода-вывода, их адреса и функции сведены в таблицу 4.1.
В таблице 4.2 представлены все специальные регистры и их биты.
Регистры, необходимые для работы с UART, выделены жирным
шрифтом.
Таблица 4.1
Страницы
- « первая
- ‹ предыдущая
- …
- 27
- 28
- 29
- 30
- 31
- …
- следующая ›
- последняя »
