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

 
 
> Настройки FreeRTOS
Jenya7
сообщение Jul 25 2018, 09:28
Сообщение #1


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

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Создаю таски
Код
FRTOS1_xTaskCreate((TaskFunction_t)operation_task, (signed char*) "tx", 1024, NULL, 1, NULL);  
FRTOS1_xTaskCreate((TaskFunction_t)log_managment_task, (signed char*) "rx", 512, NULL, 1, NULL);
Все работает.Но если увеличиваю размер стэка
Код
FRTOS1_xTaskCreate((TaskFunction_t)operation_task, (signed char*) "tx", 1024, NULL, 1, NULL);  
FRTOS1_xTaskCreate((TaskFunction_t)log_managment_task, (signed char*) "rx", 1024, NULL, 1, NULL);
Заходит в исключение FRTOS1_vApplicationMallocFailedHook.
А где увеличить стэк?
В FreeRTOSConfig.h есть #define configMINIMAL_STACK_SIZE (200) /* stack size in addressable stack units */ - это для каждого таска или общий размер?

Сообщение отредактировал Jenya7 - Jul 25 2018, 09:28
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
juvf
сообщение Jul 25 2018, 11:33
Сообщение #2


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



а что дает xPortGetFreeHeapSize() до xTaskCreate()?
Go to the top of the page
 
+Quote Post
Jenya7
сообщение Jul 25 2018, 11:55
Сообщение #3


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

Группа: Участник
Сообщений: 1 778
Регистрация: 29-03-12
Пользователь №: 71 075



Цитата(juvf @ Jul 25 2018, 17:33) *
а что дает xPortGetFreeHeapSize() до xTaskCreate()?


меня такого не - xPortGetFreeHeapSize()падает тут
Код
       StackType_t *pxStack;

       /* Allocate space for the stack used by the task being created. */
       pxStack = ( StackType_t * ) pvPortMalloc( ( ( ( size_t ) usStackDepth ) * sizeof( StackType_t ) ) );



Цитата(Arlleex @ Jul 25 2018, 17:37) *
Ну дык может это говорит о том, что имеет смысл увеличивать? Создали семафор - заняли heap, создали задачу - заняли heap и т.д.
Ваши 2 задачи уже 8кБ памяти будут отжирать сразу.


увеличил до 32кило - он не заходит в FRTOS1_vApplicationMallocFailedHook но где то бродит по функциям FreeRTOS. Иногда попадает в функции тасков но программа не работает.

ой. заработало. спасибо.

Сообщение отредактировал Jenya7 - Jul 25 2018, 12:00
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Jenya7   Настройки FreeRTOS   Jul 25 2018, 09:28
- - SyncLair   Цитата(Jenya7 @ Jul 25 2018, 13:28) В Fre...   Jul 25 2018, 09:46
- - juvf   Цитата(Jenya7 @ Jul 25 2018, 14:28) В Fre...   Jul 25 2018, 09:51
- - Jenya7   тогда я ничего не понимаю - у меня - #define confi...   Jul 25 2018, 11:18
|- - Arlleex   Цитата(Jenya7 @ Jul 25 2018, 15:18) тогда...   Jul 25 2018, 11:37
- - juvf   какой хип? heap_1.c, heap_2.c...or heap_4.c?   Jul 25 2018, 11:57
|- - Jenya7   Цитата(juvf @ Jul 25 2018, 17:57) какой х...   Jul 25 2018, 12:02
- - x893   Отладчиком религия не позволяет пользоваться ?   Jul 25 2018, 12:04
|- - Jenya7   Цитата(x893 @ Jul 25 2018, 18:04) Отладчи...   Jul 25 2018, 12:06
|- - x893   Цитата(Jenya7 @ Jul 25 2018, 15:06) отлад...   Jul 25 2018, 12:54
|- - Arlleex   Цитата(x893 @ Jul 25 2018, 16:54) Даже не...   Jul 25 2018, 12:58
- - Grigorij   Чтобы бездумно не увеличивать размер стека под зад...   Jul 25 2018, 12:06
|- - Jenya7   Цитата(Grigorij @ Jul 25 2018, 18:06) Что...   Jul 25 2018, 12:19
- - juvf   какая-то кастомная FreeRTOS. Добавлена какая-то co...   Jul 25 2018, 12:14
- - juvf   В чем ртос поставяется? в исходниках? тогда для де...   Jul 25 2018, 13:50
- - Jenya7   Цитата(juvf @ Jul 25 2018, 19:50) В чем р...   Jul 25 2018, 14:51


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

 


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


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