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

 
 
> STM32F101C8. Free RTOS, Hard Fault Exception
Aleksandr Barano...
сообщение Aug 30 2010, 15:53
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 169
Регистрация: 31-08-05
Из: New York
Пользователь №: 8 118



Здравствуйте.
У меня есть плата с STM32F101C8, на которой я успешно потренировался мигать светодиодами. То есть, очевидные аппаратные ошибки маловероятны. Я откомпилировал FreeRtos с двумя простыми задачами:
Код
static void vLCDTask( void *pvParameters )
{
  (void)(*pvParameters);
    for(;;)
    {
          GPIOB->ODR &= 0x03FF; // LED ON
                 vTaskDelay(10);
    }
}


static void vLSDTask( void *pvParameters )
{
  (void)(*pvParameters);

    for(;;)
    {
      GPIOB->ODR |= 0xFC00;//LED OFF
       vTaskDelay(10);
    }
}


Система работает несколько секунд, а потом улетает на Hard Fault Exception.
Кварц - 8МГц, множитель/ делитель PLL сконфигурирован как 6/2. Тактовая частота, по моим расчетам - 24МГц. На всякий случай Flash - с двумя wait states.
Нет ли каких-то идей, как помочь этой беде?


--------------------
ASB
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zltigo
сообщение Aug 30 2010, 18:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Ну так по минимуму,хотя-бы LR и NVIC_HARDFAULT посмотреть при вылетах. А вообще и порт может быть совсем не рабочий - я "для начала" решил как-то из комплекта поставки FreeRTOS залить проект для Stelaris, так не живой он был абсолютно. Потом уже тихонечко с чистого листа в меру понимания порт сделал - живет, естественно.




QUOTE (Forger @ Aug 30 2010, 21:08) *
По опыту скажу

Не морочьте сейчас этим человеку голову.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Forger
сообщение Aug 30 2010, 18:33
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831



Цитата
Не морочьте сейчас этим человеку голову.

Отчего ж морочу? Увидел явный ляп в коде, ткнул пальцем в слабое место.
В голове отложится. Может, когда-нить пригодится smile.gif


--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
Go to the top of the page
 
+Quote Post
zltigo
сообщение Aug 30 2010, 19:02
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



QUOTE (Forger @ Aug 30 2010, 21:33) *
Отчего ж морочу? Увидел явный ляп в коде

Нет там явного ляпа:
1. любая сколь угодно хаотичная работа с GPIO не есть причина вылета;
2. без известных приоритетов задач говорить проблемах доступа к ресурсам бессмысленно;
3. при двух микроскопических задачах из считанных команд, если системный таймер не разогнан до невменяемых
времен, эти задачи не будут прерывать друг друга.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 17:57
Рейтинг@Mail.ru


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