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

 
 
> ARM, C++, IAR. Проблема., STM32F4
Geniok
сообщение Nov 11 2012, 22:02
Сообщение #1





Группа: Новичок
Сообщений: 8
Регистрация: 15-07-12
Пользователь №: 72 756



Всем добрый день!
Возникла проблема следующего рода. При компиляции проекта на С++, программа стопорится при попытке вызова системного прерывания.
Используется IAR версии 6.40.2, стандартные библиотеки CMSIS.

Конкрентно виснет на функции delay(), которая реализована следующим образом:

Код
// Функция задержки (паузы) в работе
void Delay(__IO uint32_t nTime)
{
    TimingDelay = nTime;

    // Крутимся в бесконечном цикле, пока счетчик
    // оставшегося времени не станет равным нулю.
    // Уменьшение счетчика происходит с помощью
    // прерываний системного таймера.
    while(TimingDelay != 0);
}

// Функция уменьшения счетчика задержки (паузы)
void TimingDelay_Decrement(void)
{
    if (TimingDelay != 0x00)
    {
        TimingDelay--;
    }
}

В файле stm32f4xx_it.c определяем функцию

Код
void SysTick_Handler()
{
    TimingDelay_Decrement();
}


Виснет в файле startup_stm32f4xx.s в блоке

Код
PUBWEAK SysTick_Handler
        SECTION .text:CODE:REORDER(1)
SysTick_Handler
        B SysTick_Handler    ///  !!!!!!!!   Вот тут останавливается исполнение.


То есть как я понимаю, не может найти реализацию функции SysTick_Handler().

Когда проект был на С, данный код работал. Может кто знает, как его заставить работать на С++ ?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Geniok   ARM, C++, IAR. Проблема.   Nov 11 2012, 22:02
- - _Артём_   Цитата(Geniok @ Nov 12 2012, 00:02) То ес...   Nov 11 2012, 22:27
|- - Geniok   Цитата(_Артём_ @ Nov 12 2012, 02:27) Что-...   Nov 11 2012, 22:43
- - ReAl   Цитата(Geniok @ Nov 12 2012, 00:02) В фай...   Nov 11 2012, 22:30
|- - _Артём_   Цитата(ReAl @ Nov 12 2012, 00:30) Странно...   Nov 11 2012, 22:44
|- - Geniok   Цитата(ReAl @ Nov 12 2012, 02:30) Странно...   Nov 11 2012, 23:30
||- - Сергей Борщ   QUOTE (Geniok @ Nov 12 2012, 01:30) Скоре...   Nov 12 2012, 07:50
|- - Непомнящий Евгений   Цитата(ReAl @ Nov 12 2012, 02:30) Странно...   Nov 12 2012, 07:12
- - MK2   Что бы не плодить лишних тем, рушил написать сюда....   Nov 22 2012, 18:25
|- - _Артём_   Интересно, в чём смысл этих макросов: Цитата(MK2 ...   Nov 22 2012, 20:23
|- - Сергей Борщ   QUOTE (MK2 @ Nov 22 2012, 20:25) далее te...   Nov 22 2012, 20:26
- - MK2   Цитата(_Артём_ @ Nov 22 2012, 23:23) Инте...   Nov 22 2012, 21:14
|- - _Артём_   Цитата(MK2 @ Nov 22 2012, 23:14) Да, main...   Nov 22 2012, 21:33
- - MK2   Программа завелась... правда подвели макросы... Сп...   Nov 23 2012, 11:58
- - _Артём_   Цитата(MK2 @ Nov 23 2012, 13:58) посмотри...   Nov 23 2012, 21:04
- - MK2   Цитата(_Артём_ @ Nov 24 2012, 00:04) Реаг...   Nov 29 2012, 15:18
- - _Артём_   Цитата(MK2 @ Nov 29 2012, 17:18) так же н...   Nov 29 2012, 15:26
- - AHTOXA   Вот так точно работает: Кодextern "C" void...   Nov 29 2012, 16:36


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

 


RSS Текстовая версия Сейчас: 3rd August 2025 - 06:30
Рейтинг@Mail.ru


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