Перейти к содержанию
    

Keil. STM32. Обработчик прерывания

В файле startup_stm32f10x_hd.s имеется код:

__Vectors       DCD     __initial_sp            ; Top of Stack
                DCD     Reset_Handler        ; Reset Handler
...
                DCD     SysTick_Handler         ; SysTick Handler
...
SysTick_Handler PROC
                EXPORT  SysTick_Handler            [WEAK]
                B       .
                ENDP

В файле stm32f10x_it.c я создал следующий код:

/**
  * @brief This function handles SysTick Handler.
  * @param Каждую 1 ms декрементируется переменная TimerTicks до 0
  * @retval None
  */
void SysTick_Handler(void)
{
  if(TimerTicks) TimerTicks--;  
}

Вопрос - как в выходном коде появляется мой обработчик? Ведь в стартапе уже есть "заглушка", переход сам на себя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос - как в выходном коде появляется мой обработчик? Ведь в стартапе уже есть "заглушка", переход сам на себя.

Обратите внимание на [WEAK].

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обратите внимание на [WEAK].

Обращал, но понял смысл только после вашей подсказки :). Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...