ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
6 мая
968607 Топик полностью
Nikolay_Po (04.01.2020 01:22 - 01:27, просмотров: 306) ответил SciFi на Правильно понимаю, что переменные в main() не статические, то есть память выделяется в стеке? А памяти хватает? Может быть, стек наехал на глобальные переменные - вот и "перекрытие". Ну и про такие переменные в .map ничего не пишется - это обычное
Вынес определения проблемных структур из функции обратно. Проблема остаётся с похожим повреждением - так же затёрты данные с конца массива структур, но уже меньше членов. В секции .bss появились адекватные записи. Всё соответствует, не перекрывается. Индексы/указатели перепроверял - не получается найти источник проблемы. Watchpoint на доступ к области памяти не ставится. Не уверен, поддерживает ли такое само ядро Cortex-M3 - OpenOCD пишет: "Error: can't add write watchpoint at 0x20000a84, resource not available" .bss 0x00000000200001e0 0x18ac load address 0x00000000080069b4 0x00000000200001e0 _sbss = . 0x00000000200001e0 __bss_start__ = _sbss *(.bss) .bss 0x00000000200001e0 0x1c /../lib/gcc/arm-none-eabi/9.2.1/thumb/v7-m/nofp/crtbegin.o *(.bss*) *fill* 0x00000000200001fc 0x4 .bss.ADCbuffer 0x0000000020000200 0x20 build/main.o 0x0000000020000200 ADCbuffer .bss.Debug 0x0000000020000220 0x4 build/main.o 0x0000000020000220 Debug *fill* 0x0000000020000224 0x4 .bss.Stage1Buff 0x0000000020000228 0x800 build/main.o 0x0000000020000228 Stage1Buff .bss.Stage1Flags 0x0000000020000a28 0x8 build/main.o 0x0000000020000a28 Stage1Flags .bss.Stage1Inst 0x0000000020000a30 0x60 build/main.o 0x0000000020000a30 Stage1Inst .bss.Stage1state 0x0000000020000a90 0x6e0 build/main.o 0x0000000020000a90 Stage1state .bss.Stage2Buff 0x0000000020001170 0x800 build/main.o 0x0000000020001170 Stage2Buff .bss.Stage2Flags 0x0000000020001970 0x8 build/main.o 0x0000000020001970 Stage2Flags .bss.__malloc_free_list 0x0000000020001978 0x4 /../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) 0x0000000020001978 __malloc_free_list .bss.__malloc_sbrk_start 0x000000002000197c 0x4 /../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libc_nano.a(lib_a-nano-mallocr.o) 0x000000002000197c __malloc_sbrk_start .bss.heap_end.4144 0x0000000020001980 0x4 /../lib/gcc/arm-none-eabi/9.2.1/../../../../arm-none-eabi/lib/thumb/v7-m/nofp/libnosys.a(sbrk.o)