amiller 2 29 марта, 2017 Опубликовано 29 марта, 2017 · Жалоба Приветствую! Возникло желание реализовать на устройствах на базе STM8S возможность удаленной загрузки. Причём встроенные загрузчики не устраивают из-за необходимости шифрования (уже есть готовый механизм, который хочу портировать). Соответственно для работы собственного загрузчика нужно, чтобы было две таблицы векторов и возможность переключения между ними. Что-то быстро не смог найти такую возможность в документации. Если кто знает, подскажите, куда смотреть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amiller 2 30 марта, 2017 Опубликовано 30 марта, 2017 · Жалоба Похоже расположение таблицы векторов у этих контроллеров жестко определено. Это можно было бы обойти, если сделать безусловные переходы из этой таблицы в другую таблицу в ОЗУ. А таблицу в ОЗУ уже заполнять по мере надобности векторами обработчиков. Вопрос даст ли мне в этом вопросе ИАР достаточную свободу... Я весь ИАР перерыл, не могу найти что-то похожее на стартап, где бы прописывались адреса обработчиков, происходила инициализация переменных и т.п. Где то это всё очень глубоко зарыто. Вероятно будет проще закончить копания в этих камнях и переписать код под Cortex-M3. Цена практически одинаковая для одинаковых корпусов, но сразу всё упрощается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Obam 38 30 марта, 2017 Опубликовано 30 марта, 2017 · Жалоба "Это можно было бы обойти, если сделать безусловные переходы из этой таблицы в другую таблицу в ОЗУ." STM8 из ОЗУ код может исполнять? А то разбаловались фон-неймановской (MSP430, ARM7TDMI) архитектурой… ;) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 234 31 марта, 2017 Опубликовано 31 марта, 2017 · Жалоба А таблицу в ОЗУ уже заполнять по мере надобности векторами обработчиков. Вопрос даст ли мне в этом вопросе ИАР достаточную свободу... А IAR-то тут при чём??? Если не можете найти где у Вас в коде задаётся эта таблица - открываете мануал на проц, смотрите по каким адресам она должна располагаться, затем - открываете map-файл с выхода компоновщика и смотрите какой символ он разместил с этого адреса. Ищете этот символ своих в исходниках. всё. Элементарно может быть что эта таблица берётся даже из какой-нить библиотеки. Но не IAR её туда пихает, а только программист. IAR - это всего-лишь инструмент. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться