ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
26 апреля
965454 Топик полностью
zzz-spider (17.12.2019 05:38, просмотров: 100) ответил zzz-spider на Неужели с подобным никто не сталкивался? Господа, программеры...
Описываю проблему... При написании проекта, все шло штатно. Проект содержит достаточно много массивов с сохранением во флеш с директивой const. Компилятор и дебаггер вели себя ровно до тех пор, пока загрузчик не начал писать во флеш выше адреса 0х08080000. Изначально это выражается в том, что после прошивки, дебаггер автоматически стартует, а не предлагает запустить дебаггинг. По сути, старт заключается в том, что камень виснет на прерывании NMI_Handler. После включении верификации записи и лога, обнаружилось, что во всех ячейках, с адресами, старше указанного, содержимое отличается от того, что должно быть по проекту. То есть каким то образом, либо не происходит предварительное стирание страницы. Выход из положения - стирание блока вручную, с помощью STM32 ST-LINK Utility. Стираю первый банк целиком, и тогда прошивка ложится нормально. Плохо, когда у тебя на борту имеется flash на 2 mb, а ты не можешь штатными средствами запихнуть туда больше 512 kb. Обидно, слушай....