[an error occurred while processing this directive]
|
При написании обработчиков прерываний в CodeComposer 4.12
оказалось, что cи компилятор сам не заполняет
таблицу переходов к обработчикам прерываний.
Поэтому до тех пор пока я не добавил к проекту ассемблерный файл
.sect "vectors"
rset: B _c_int0 ;00h reset
int1: B _c_int1 ;02h INT1
int2: B _c_int2 ;04h INT2
int3: B _c_int3 ;06h INT3
int4: B _c_int4 ;08h INT4
int5: B _c_int5 ;0Ah INT5
int6: B _c_int6 ;0Ch INT6
прерывания не вызывались.
Добавление такого ассемблерного файла обязательное действие или можно как-то заставить это делать компилятор автоматически? Прочитав раздел о прерываниях в SPRU024 я был убежден, что это лежит на совести компилятора.
И еще одна непонятка.
Если не вставлять в проект этот ассемблерный файл,
вся таблица переходов (включая нулевое прерывание) не инициализирована. Однако, при выполнении команд ResetDSP,Restart,Gomain управление передается функции main. Откуда процессор узнал куда ему переходить при сбросе?
E-mail: info@telesys.ru