|
Один добрый человек прислал мне библиотеку для работы с float для IAR C AVR. По его заверению, она гораздо эффективней штатной. Процедура подмены очень проста. Просто подключить этот ассемблерный файл к проекту. На счет эффективности пока сказать ничего не могу, но в симуляторе все идет как надо. Возникла надобность написать собственную функцию для работы с EEPROM. В качестве эксперимента хотел подменить функцию __eeget16_16. Сделал, что называется, по образу и подобию:
MODULE MY_EEPROM
public ?__eeget16_16
RSEG CODE:CODE:NOROOT
?__eeget16_16
nop
CBI 0x18,0x03
ret ENDMOD
В этом случае ничего нового не происходит. Если убрать «?», то ругается компилятор про переопределение меток. Пробовал изменить название модуля на имя штатного EEPROM_16. Ругани еще больше. А что собственно означает знак вопроса? Может быть, не случайно математические функции его имеют, а функции EEPROM нет. Может быть, авторы компилятора наложили вето на использование EEPROM, кроме, как посредством стандартных функций?
Спасибо!
E-mail: info@telesys.ru