kirill_ 0 20 июня, 2012 Опубликовано 20 июня, 2012 · Жалоба Добрый день. У меня мк TI на Cortex-M3. Защита кода на нем осуществляется запретом определенных страниц флэш-памяти на чтение. Однако при компиляции IAR создает после каждой функции некие области "??DataTable....", в которых хранится инфа по глобальным переменным. После установки защиты выполнение кода стопарится на инструкции, которая обращается к таким DataTable. Я попытался вынести функции в отдельную секцию, чтобы отделить код от данных, но DataTable переносятся туда вслед за ними, и программа опять же стопарится. Есть еще MPU, но он тоже не приносит счастья, а валится в fault. В случае MPU я указываю права: привелегированному RW, пользователю запрет доступа. Подскажите, пожалуйста, как мне защиту кода выставить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 121 20 июня, 2012 Опубликовано 20 июня, 2012 · Жалоба После установки защиты выполнение кода стопарится на инструкции, которая обращается к таким DataTable.Ищите причину в чем-то другом. После установки защиты запрещается чтение флеши извне, но никак не запрещается чтение из программы, исполняемой из этой самой флеши. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kirill_ 0 22 июня, 2012 Опубликовано 22 июня, 2012 · Жалоба Ищите причину в чем-то другом. После установки защиты запрещается чтение флеши извне, но никак не запрещается чтение из программы, исполняемой из этой самой флеши. Да вот в том-то и дело, что запрещается. С другой стороны, есть еще MPU. Но тут я прошу поддержки у знатоков: какие права выставить для региона памяти? Я поставил привелегированный RW, пользователь NO. В результате через JTAG код читается, а нужно, чтобы не читался. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться