123456789101112131415161718192021222324252627282930 |
- ; Тут будут макросы ===========================================================
- ; Загрузка числа в порт
- .MACRO OUTI ; Это описание макроса. Везде где outi встретится в
- ; коде, то заменяется на этот кусок кода,
- LDI R17,@1 ; причем @0,@1 это параметры, они заменятся введенными
- ; параметрами макроса. Данный макрос тупо копирует
- OUT @0,R17 ; введенное число сначала в регистр R17, а из него регистр
- .ENDM
- ; сохраняем в стек SREG и R16
- .MACRO PUSHF
- PUSH R16
- IN R16,SREG
- PUSH R16
- .ENDM
- ; восстанавливаем из стека SREG и R16
- .MACRO POPF
- POP R16
- OUT SREG,R16
- POP R16
- .ENDM
- ; 16-ти разрядное сравнение регистровой пары R с числом
- .macro CPIW
- ldi R16,High(@0)
- cpi RL,Low(@0)
- cpc RH,R16
- .endm
|