Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.93/14: Рейтинг темы: голосов - 14, средняя оценка - 4.93
disoddir
0 / 0 / 0
Регистрация: 12.11.2012
Сообщений: 4
1

Связка FreeRTOS+ST32F217. Помогите разобраться.

15.11.2012, 14:03. Просмотров 2584. Ответов 2
Метки нет (Все метки)

Начал осваивать ARM. Есть плата с ST32F217VT, как всегда попробовал тестовый проект с миганием светодиодами. Успешно. После чего решил выполнить аналогичную задачу с использованием FriiRTOS и тут грабли. Дабы не разговаривать о пустом приведу все как есть в хронологическом порядке.
1. Среда - Eclipse IDE + ARM Plugin + CodeSourcery Lite.
2. Структура проекта включает в себя (из важного) gcc_cs.ld из CodeSourcery и stortup_ARMCM3.S из CMSIS.
3. В main.c (без RTOS):
Код
int main(void)
{
LEDInit();
LEDOn();

if (SysTick_Config(SystemCoreClock / 1000)) {
/* Capture error */
while (1)
;
}

while (1) {
LEDToggle();
Delay(150);
}
}
3. Проект настроен соответствующе, в настройках линкера указанный линкер-файл.
4. Все работает отлично.
5. Добавил файлы FriiRTOS. Изменения в main.c:
Код
int main(void)
{

LEDInit();
LEDOn();

if (SysTick_Config(SystemCoreClock / 1000)) {
/* Capture error */
while (1)
;
}

int i = 50;
while (i--) {
Delay(150);
LEDToggle();
}

xTaskCreate(ToggleLedTask, "LED", configMINIMAL_STACK_SIZE, NULL,
LED_TASK_PRIO, NULL);

vTaskStartScheduler();

return 1;
}
6. FriiRTOS как я понял требует использования "своего" стартап-файла (подсмотрел в демо проекте от STM). Заменил указанные .S и соответственно .ld файлы на файлы из демо проекта.
7. Собственно на этом грабли и начались. Проект собирается нормально, но не запускается.

На ум приходят только эти файлы. Точнее несоответствие им тулчейнов (ld и .s брал для True Studyo,которая тоже под gcc, но есть подозрение что собака тут покопалась).

Написал наверное запутанно. Если чего не хватает (исходников например), допишу.
В содержимом .ld и .s не очень-то разбираюсь пока, но есть желание понять. Как думаю проблема именно там. Подскажите, пожалуйста, где копать и что не так.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2012, 14:03
Ответы с готовыми решениями:

Помогите: вылет default handler, FreeRTOS + stm32f100
Доброго времени суток. Начал осваивать эстемки, ковыряю по малому. Решил...

помогите разобраться с таймерами
Всем добра. Требуется усыпить ради энергосбережения микроконтроллер на...

Помогите разобраться с Timer0
Добрый день уважаемые форумчане. Начал изучать PICи. Набросал небольшую...

Помогите разобраться с 74НС595
ДИСКЛАЙМЕР: Да, я пытался гуглить, да, находил решения, но копировать-вставлять...

Помогите разобраться с таймерами.
Прочитал и посмотрел достаточно много роликов по таймерам но не нашёл общего...

2
IvytKrimtym
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 3
16.11.2012, 00:41 2
Гм... для начала, что у вас предполагаемый код таска делает в main? Там до РТОС не дойдёт выполнение даже. Лучше взять кокос, чтоб про тулчейны голова не болела и читать доки. Хотя бы вот, неплохой такой справочник, мне очень помог: http://microsin.net/programming/ARM/freertos-part1.html
0
disoddir
0 / 0 / 0
Регистрация: 12.11.2012
Сообщений: 4
16.11.2012, 02:23 3
Цитата Сообщение от IvytKrimtym
что у вас предполагаемый код таска делает в main?
Не-не. Таск определен отдельно (ToggleLedTask). То, что перед xTaskCreate - тупая проверка, что контроллер запустился. Он не запускается кстати. За справочник спасибо!

P.S. Проблему решил, кстати. На мысль натолкнула статья http://we.iosyitistromyss.ru/STM32/stm32-freertos.html, спасибо автору. Как ее сразу не нашел. Там правда контроллер STM32F103. Но помогла разобраться, все работает. Если кому интересно - систематизирую мысли и расскажу.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.11.2012, 02:23

Помогите разобраться с STM32F103ZET6
Доброго времени уважаемые форумчане. Возникла необходимость написать с нуля...

Помогите с кодом разобраться
Всем привет. Подскажите, где ошибся? Код в контроллер заливается, но с...

Помогите разобраться с PIC
Для расширения кругозора решил изучить PIC (уже имею некоторый опыт работы с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru