[an error occurred while processing this directive]
|
Во-первых, так не пишут. Пишут так:
.macro My_M_write_in_AY_Br16 address bit_no
ldi yh,high(@0)
ldi yl,low(@0)
ldi r16,(1 << @1)
st y,r16
.endm
;
.listmac
My_M_write_in_AY_Br16 $1234, 7 ;Для проверки - результат увидишь в листинге
Во-вторых, макропараметры после имени макро перечислять совсем даже не обязательно, а в новых версиях AVRASM2 - вообще недопустимо.
В-третьих, так вообще не делают. Делают так - дают меткам, переменным и макросам нормальные, понятные имена, а не Doctor_Tuam_Oses_My_Macro_In_Zopa_RAM, а вместо четырех команд для достижения той же цели обходятся двумя:
.macro STMASK ;;Stores position decoded mask to direct RAM
ldi r16,(1 << @1)
sts @0,r16
.endm
;
.listmac
STMASK $1234,5
И в-последних - изволь пользоваться тегами <pre> и </pre>, когда постишь сюда код. Уважай собеседников
E-mail: info@telesys.ru