[an error occurred while processing this directive]
|
.section/dm watchdog;
.var wd_reg;
.section/pm program;
...
ay0 = dmpg1;
dmpg1 = page(wd_reg);
ar = 1;
dm(wd_reg) = ar; // На это собственно и ругается
...
Линкёр пишет:
[Error li1080] ".\Debug\misc.doj(program):0x2" address of '_wd_reg' (=0x10000) is out of range
Referenced from 0x276
Valid range is [0x0,0xffff]
в ldf всё ок...
...
mem_wd { TYPE(DM RAM) START(0x010000) END(0x010000) WIDTH(16) }
...
wd_dxe {INPUT_SECTIONS( $OBJECTS(watchdog)) } > mem_wd
Если сделать:
dm(address(wd_reg)) = ar;
то проходит...
но это-же изврат так делать каждый раз...
Как вернуть обращение к переменным/портам во внешней памяти без
address() ?
E-mail: info@telesys.ru