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

 
 
> STM32F4+FreeRTOS+Keil=HardFault
Marto
сообщение Jun 9 2013, 18:04
Сообщение #1


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

Группа: Свой
Сообщений: 103
Регистрация: 17-05-09
Из: Ижевск
Пользователь №: 49 190



Здравствуйте, имею следующую проблему
на stm32f4-discovery пытаюсь запустить FreeRTOS, компилятор - keil.

Если шедулер пустой - все работает.

Если создаю какой-либо таск - проц улетает в HardFault.
Например вот так:
Код
#include "stm32f4xx.h"
#include "FreeRTOS.h"
#include "task.h"

void vInitGPIO(void *pvParameters);
int main()
{
  xTaskCreate(vInitGPIO,(signed char*)"LED1",configMINIMAL_STACK_SIZE,NULL,2,(xTaskHandle*)NULL);
  vTaskStartScheduler();
  for(;;){}
  return 1;
}
void vInitGPIO(void *pvParameters)
{
  GPIO_InitTypeDef gpio_init;
  RCC_AHB1PeriphClockCmd (RCC_AHB1Periph_GPIOD, ENABLE);
  gpio_init.GPIO_Pin = GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14| GPIO_Pin_15;
  gpio_init.GPIO_Speed = GPIO_Speed_50MHz;
  gpio_init.GPIO_Mode = GPIO_Mode_OUT;
  gpio_init.GPIO_PuPd = GPIO_PuPd_DOWN;
  GPIO_Init(GPIOD, &gpio_init);
}

размер стека задачи
Код
#define configMINIMAL_STACK_SIZE        ( ( unsigned short ) 130 )

размер стека контроллера
Код
Stack_Size      EQU     0x00000200


Ходил отладчиком по диспетчеру - вывалится может в любом месте.
Кто сталкивался?
на 100-ой серии FreeRTOS юзаю без проблем. а здесь какое-то попадалово, может есть какие либо нюансы, о которых следует знать?


--------------------
Шизоидный холерик
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Marto
сообщение Jun 9 2013, 18:42
Сообщение #2


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

Группа: Свой
Сообщений: 103
Регистрация: 17-05-09
Из: Ижевск
Пользователь №: 49 190




Если Вас не затруднит, скиньте пожалуйста шаблон проекта. Постараюсь "найти 10 отличий".[code][/code]


--------------------
Шизоидный холерик
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Marto   STM32F4+FreeRTOS+Keil=HardFault   Jun 9 2013, 18:04
- - Xeon   Сразу сказать не могу, скинь проект гляну, если хо...   Jun 9 2013, 18:09
- - AHTOXA   А в чём задаётся стек? Если в байтах, то его малов...   Jun 9 2013, 20:20
- - Marto   В байтах. Пробовал делать 0x0000A00. Результат тот...   Jun 10 2013, 03:58
|- - AHTOXA   16 регистров общего назначения + 32 плавучих регис...   Jun 10 2013, 06:06
- - Marto   точно хех, стереотипы   Jun 10 2013, 07:15
- - DASM   Floating Point сопроцессор включили аппаратно ?   Jun 10 2013, 07:37
- - Marto   Эмммм... нет. Это обязательно? Даже если я с ним р...   Jun 10 2013, 07:42
- - DASM   Ну как только проц встретит первую попавшуюся кома...   Jun 10 2013, 07:49
|- - AHTOXA   Или же можно компилить под M4 просто (без F), тогд...   Jun 10 2013, 07:53
|- - adnega   Еще можно обратить внимание на регистры NVIC->I...   Jun 10 2013, 09:47
- - _NB   [quote name='Marto' date='Jun 9 2013, ...   Jun 10 2013, 14:37
- - Marto   Благодарю всех за помощь. В частности ув. DASM, пр...   Jun 12 2013, 13:19


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

 


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


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