ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Воскресенье
19 мая
126785 Топик полностью
Alex B. (30.07.2008 10:42, просмотров: 293) ответил Гудвин на Люди добрые, мы сами не местные, памагите, кто чем может :)
ну наверное типа такого Начнем с того, что в таблицу прерываний записываются не инструкции, а собстно адрес обработчика прерывания. Поэтому, в скрипте линкера проекта бутлоадера в таблице векторов прерываний указываешь абсолютный адрес обработчика в целевом приложении /* LONG( DEFINED(__AltReservedTrap0) ? ABSOLUTE(__AltReservedTrap0) : (DEFINED(__ReservedTrap0) ? ABSOLUTE(__ReservedTrap0) : ABSOLUTE(__DefaultInterrupt))); */ LONG(0x1000); А в собстно приложении функцию обработчика пишешь как void __attribute__((__interrupt__, address (0x1000), auto_psv)) code_vector (void); только не надо использовать названия зарезервированных обработчиков. С30 ругнется, типа такого названия прерывания я не знаю, да и х.й то с ним. Этого хотелось? CodeGuard, это да, типа защита. Но не использовать ее для бутлоадера - это типа как кожурку от колбасы кушать, а саму колбасу выкидывать =)
Согласуйте импеданс!