реклама на сайте
подробности

 
 
> Вектора прерываний в .ASM STM8 IAR, Создание обработчика прерывания на ASM
AShurick
сообщение May 27 2011, 15:22
Сообщение #1





Группа: Участник
Сообщений: 5
Регистрация: 4-10-09
Из: Киев Украина
Пользователь №: 52 743



Суть проблемы: Есть обработчик прерывания написанный на ассемблере. Как прописать вектор прерывания на обработчик в ASM файле? В IAR трансляторе ассемблера для AVR можно было сделать так:
Код
        NAME IntTable
        extern switch_int
        COMMON INTVEC(1)
        ORG TIMER0_OVF_vect
        JMP switch_int
        ENDMOD


А вот под STM8 вектора прерывания вставляются перед векторами размещенными С компилятором по коду:
Код
        section   .intvec:CODE
;-------------------------------------------------------------------------------
        DS32    1;RESET
        DS32    1;TRAP
        DS32    1;NMI
        DC32    $82000000 + switch_int
       .........................


Или вектора прерываний затираются векторами определенными в С программе
Код
        section   .intvec:CODE:NOROOT(2)
;-------------------------------------------------------------------------------
        DS32    1;RESET
        DS32    1;TRAP
        DS32    1;NMI
        DC32    $82000000 + switch_int


Сразу поясняю что нужно мне именно на ассемблере, т.к. это процедура переключения контентов в своей кооперативной ОС.

Сообщение отредактировал IgorKossak - May 27 2011, 20:05
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th July 2025 - 01:02
Рейтинг@Mail.ru


Страница сгенерированна за 0.01346 секунд с 7
ELECTRONIX ©2004-2016