Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2019-окт-14 16:27

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
 Заголовок сообщения: Рабочий проект FreeRTOS под GCC
СообщениеДобавлено: 2016-авг-22 08:33 
Не в сети

Зарегистрирован: 2016-авг-22 08:26
Сообщения: 3
Добрый день. Используем микроконтроллер совместно с ОСРВ FreeRTOS под GCC. Время от времени (может через минуту, может и через сутки) вылетает в HardFault из-за невыровненного обращения к памяти. Нет ли у кого-нибудь реального большого проекта с FreeRTOS под GCC который можно использовать в качестве отправной точки?


Интересуют опции компилятора и линкера, особенности разработки под указанный микроконтроллер в целом, ассемблерный код переключения контекса и прочее.

Заранее спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рабочий проект FreeRTOS под GCC
СообщениеДобавлено: 2016-авг-22 08:54 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1342
Откуда: Тула
Подключен ли отладчик? Известно ли, что вызывает HardFault?
Если не возможно использовать отладчик, можно сделать так viewtopic.php?p=5391#p5391

_________________
сочувствующий…


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Рабочий проект FreeRTOS под GCC
СообщениеДобавлено: 2016-авг-22 09:04 
Не в сети

Зарегистрирован: 2016-авг-22 08:26
Сообщения: 3
prostoRoman писал(а):
Подключен ли отладчик? Известно ли, что вызывает HardFault?


Отладчик подключен. HardFault вызывается из-за невыровненного образения к памяти

Например вот так
Код:
1924              q[2]    =   x*(a[5] + a[7]);
6080ad88:   ldr     r3, [r7, #0]
6080ad8a:   adds    r3, #16
6080ad8c:   adds    r5, r3, #0
6080ad8e:   ldr     r3, [r7, #4]
6080ad90:   adds    r3, #40 ; 0x28
6080ad92:   ldr     r1, [r3, #0]

pc Hex:0x6080ad92
r3 0x3fbf84c1


При этом данная функция вызывется каждый цикл управления (1 раз в секунду) но при этом то падает, то не падает


Упало еще в этом месте
Код:
6081eb58:   ldr     r0, [r7, #8]
6081eb5a:   ldr     r1, [r7, #12]
6081eb5c:   adds    r2, r3, #0
6081eb5e:   adds    r3, r4, #0

pc 0x6081eb5c
r0 0
r1 0x80000000
r2 0x20
r3 0xee40ed1f


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB