-
- Дык и я о том. Падает в библиотечной функции memcpy(). Ее в Keil
(ARMCC) нет в исходниках - бинарная либа. Видимо косяк... Для ARM7
и пр. есть волшебные заклинания в командной строке компилятора,
предназнаеченные для memcpy(). В моем случае ни хрена не поиогли. - Гyдвин(23.07.2020 17:37)
- Кстати попробуй через DECONST-макро адреса передать, чтоб тип стереть. Может компилятор из типа выводит, что он выравненный, и дальше пошло поехало. Оптимизация. fk0(46 знак., 23.07.2020 18:13)
- A с чего ты решил, что падает из-за невыравненности? Обработчик
hard fault написал, который тебе чётко причину и адрес
распечатывает? (а так делал). Может у тебя на входе косячные
адреса. - fk0(23.07.2020 18:11)
- Нормальные адреса (это первое глянул). Вот такой вот грязный хак
прекрасно работает: Гyдвин(156 знак., 23.07.2020 18:24)
- А такой работает? И второй вопрос - что происходит, если вместо
memcpy написать __aeabi_memcpy? йцyкeн(308 знак., 24.07.2020 12:46)
- __aeabi_memcpy((char*)&IH.conag,(void*)&buffer[32],(4+2+7)); прекрасно работает... - Гyдвин(24.07.2020 12:52)
- У тебя длина упакованной IH 16, причем последний элемент U32, а гребёшь ты 13. То, что с техникой могут быть чудеса - верю, но с логикой, КМК, что-то не то. - Vit(23.07.2020 20:56)
- Ты напиши какие адреса. И что с DECONST? Помогает? А тип какой -- я
тебе говорил, приведи исходник. Заколебали загадками с секретными
исходниками и секретными схемами. Стыдно -- тогда не спрашивай
вообще. - fk0(23.07.2020 18:38)
- Какие там нах секретные исходники? Все уже привел здесь... DECONST сработал - генерится правильный вызов, соответственно не вылетает: Гyдвин(363 знак., 23.07.2020 19:00)
- А такой работает? И второй вопрос - что происходит, если вместо
memcpy написать __aeabi_memcpy? йцyкeн(308 знак., 24.07.2020 12:46)
- Нормальные адреса (это первое глянул). Вот такой вот грязный хак
прекрасно работает: Гyдвин(156 знак., 23.07.2020 18:24)
- Дык и я о том. Падает в библиотечной функции memcpy(). Ее в Keil
(ARMCC) нет в исходниках - бинарная либа. Видимо косяк... Для ARM7
и пр. есть волшебные заклинания в командной строке компилятора,
предназнаеченные для memcpy(). В моем случае ни хрена не поиогли. - Гyдвин(23.07.2020 17:37)