Vladimir_T (21.10.2008 16:19, просмотров: 2844)
Загрузка фукции в ОЗУ Проект создается в Кейл и для ускорения работы всей системы нужно запускать функцию фильтрации входного сигнала из ОЗУ. Для загрузки функции в ОЗУ использую scatter файл такого вида.
LR_IROM1 0x00000000
{ ; load region
ER_IROM1 0x00000000 0x00088000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
}
RW_IRAM1 0x04000000 0x00016000 { ; RW data
.ANY (+RW +ZI)
}
RW_IRAM2 0x0401600 0x00002000 {
dsp.o (+RO)
.ANY (+RW +ZI)
}
}
В листинге видно, что функция должна располагаться в ОЗУ.
Но при загрузке функции в ОЗУ имею ошибку:
*** error 65: access violation at 0x00401600 : no 'write' permission
Эта секция в скатер -файле описывается только как RO, и потому получаю такую ошибку. Но я считал, что скатер должен снять защиту, а после копирования снова установить. Пробовал поставить атрибут RW, и тогда линкер не располагает эту функцию в ОЗУ.
Бьюсь, эта ошибка не дает жизни. Вроде настройки все просмотрел, ограничений не увидел.