Copypaster 0 2 октября, 2009 Опубликовано 2 октября, 2009 · Жалоба Добрового времени суток. Возникла задача реализации самопрограммирования устройтва на базе MSP430f5438. В самом общем виде это выглядит так: код прошивки пересылается по байтам по UART'у другим устройством также реализавнном на базе контроллера нашему устройству, при этом происходит поблочная (либо запись двойными словами) запись информационной и программной памяти. Предполагаемтся, что функции перепрошивки флэш записываюся в оперативную память. Собствено вопрос состоит в том, как реализовать опрос UART, т.к. код обработчика прерывания храниться во флэш, то возможно ли разместить его в ОЗУ, либо исплозовать простой опрос флага? Или же есть опыт более рационального решения данной задачи. Выскажите свое мнение по этому вопросу. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 2 октября, 2009 Опубликовано 2 октября, 2009 · Жалоба При программировании Flash прерывания с вызовом функций из Flash недопустимы. Поэтому вам остается только работа из SRAM с опросом флагов готовности. Либо пакетная передача данных с запретом всех прерываний на время программирования. В последнем случае даже не обязательно из SRAM работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Copypaster 0 2 октября, 2009 Опубликовано 2 октября, 2009 (изменено) · Жалоба При программировании Flash прерывания с вызовом функций из Flash недопустимы. Поэтому вам остается только работа из SRAM с опросом флагов готовности. Либо пакетная передача данных с запретом всех прерываний на время программирования. В последнем случае даже не обязательно из SRAM работать. Спасибо за информацию. Но хотелось бы еще раз уточнить. Вы хотите сказать, что разместить функцию-обработчик прерывания в SRAM невозможно, так? Изменено 2 октября, 2009 пользователем Copypaster Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
rezident 0 2 октября, 2009 Опубликовано 2 октября, 2009 · Жалоба Функцию можно разместить где угодно. Нельзя вектор прерывания переместить из Flash в SRAM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Copypaster 0 2 октября, 2009 Опубликовано 2 октября, 2009 · Жалоба Функцию можно разместить где угодно. Нельзя вектор прерывания переместить из Flash в SRAM. Теперь мне все ясно. Спасибо за вашу помощь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться