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

 
 
> Hard Fault при выполнении malloc, но если выполняю пошагово - все ок
kt368
сообщение Dec 16 2013, 21:34
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 454
Регистрация: 13-10-10
Из: Киев
Пользователь №: 60 135



Здравствуйте!
Есть функция, которой передаётся указатель на указатель на структуру (**pIndZwithZ). В самой функции указателю на структуру присваивается выделяемое malloc'ом пространство для некоторого количества таких структур. В итоге мне нужно чтоб функция с помощью указателя возвращала массив структур, их количество рассчитывается в самой функции. Так вот, в функции есть код:
Код
*pIndZwithZ = malloc(CalData_str.nZ * (sizeof(float) + sizeof(uint8_t)));
Если я ставлю breackpoint на следующую за ним строку, то при её выполнении происходит Hard Fault, причиной которого, как я понял, является "data bus error". Это видно из того, что SCB.CFSR становится равным 0x400. А если я точку останова ставлю на этом злополучной malloc'е, и далее выполняю пошагово, то никаких проблем не возникает. Heap'a точно хватает, пробовал увеличить - не помогло.
Посоветуйте, как можно пытаться бороться с проблемой?

P.S. LPC1758, Keil.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
toweroff
сообщение Dec 18 2013, 14:24
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



По-любому в 0 записывать нельзя, если не было ремапа
0 - это начало Non-Volatile memory
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- kt368   Hard Fault при выполнении malloc   Dec 16 2013, 21:34
- - A. Fig Lee   Цитата(kt368 @ Dec 16 2013, 16:34) Здравс...   Dec 16 2013, 23:57
- - andrewlekar   Возможно дело в невыровненном доступе к памяти. По...   Dec 17 2013, 04:49
- - kt368   А как проверить хватает ли стека? Вот, что вижу в ...   Dec 17 2013, 06:03
|- - Сергей Борщ   Цитата(kt368 @ Dec 17 2013, 08:03) Как уз...   Dec 17 2013, 06:42
- - kt368   Я считал что аппаратный стек - это способность мик...   Dec 17 2013, 08:36
|- - Сергей Борщ   Цитата(kt368 @ Dec 17 2013, 10:36) Наприм...   Dec 17 2013, 10:31
|- - A. Fig Lee   Цитата(kt368 @ Dec 17 2013, 03:36) Я счит...   Dec 17 2013, 12:37
- - kt368   Цитата(Сергей Борщ @ Dec 17 2013, 12:31) ...   Dec 17 2013, 18:45
|- - A. Fig Lee   Цитата(kt368 @ Dec 17 2013, 13:45) Подска...   Dec 17 2013, 19:30
|- - Сергей Борщ   Цитата(kt368 @ Dec 17 2013, 20:45) Эта ко...   Dec 17 2013, 21:58
- - kt368   Цитата(A. Fig Lee @ Dec 17 2013, 21:30) А...   Dec 17 2013, 21:22
|- - A. Fig Lee   Цитата(kt368 @ Dec 17 2013, 16:22) Да вро...   Dec 17 2013, 21:52
- - kt368   Да, это были hex файлы. Для создания bin воспользо...   Dec 18 2013, 11:03
- - A. Fig Lee   Странное, непонятное мне распределение IRAM на кар...   Dec 18 2013, 13:54
- - kt368   Почему ж странное, вот скрин юзер мануала, у меня ...   Dec 18 2013, 14:07
- - kt368   Цитата(toweroff @ Dec 18 2013, 16:24) По-...   Dec 18 2013, 14:25
|- - A. Fig Lee   Цитата(kt368 @ Dec 18 2013, 09:25) Это по...   Dec 18 2013, 15:06
|- - toweroff   Цитата(kt368 @ Dec 18 2013, 18:25) Это по...   Dec 18 2013, 15:08
- - kt368   Я уже немного переделал СИ-шные файлы, и глюки пер...   Dec 18 2013, 19:24
|- - toweroff   Цитата(kt368 @ Dec 18 2013, 23:24) Я уже ...   Dec 18 2013, 20:37
|- - Сергей Борщ   Цитата(kt368 @ Dec 18 2013, 21:24) Подска...   Dec 19 2013, 08:41
- - kt368   С размещением в памяти уже вроде-бы разобрался (ис...   Dec 19 2013, 11:11


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

 


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


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