[uquote="Dimon456",url="/forum/viewtopic.php?p=4321957#p4321957"]
VladislavS, я так и сделал, одно удалил, другое добавил и получил идеальную прошивку.[/uquote]Ну вы же не мой старатап взяли, а
Eddy_Em. Это я вам про
__VECTOR_TABLE_ATTRIBUTE, рассказывал, линкерскрипты приложил. А он вам просто свинью подложил
Код: Выделить всё
vector_table_t vector_table __attribute__ ((section(".vector_table")))
[uquote="Dimon456",url="/forum/viewtopic.php?p=4321957#p4321957"]Может где-то этот startup.S прописывается и просто так startup.С не добавить.[/uquote]Не придумывайте фигни.
[uquote="Dimon456",url="/forum/viewtopic.php?p=4321957#p4321957"]К сожалению в моей ИДЕ это не доступно, а переходить на другой как-то не хочется.[/uquote]Я такого даже представить не могу. Название IDE ?
[uquote="Dimon456",url="/forum/viewtopic.php?p=4321957#p4321957"]Единственный вариант, пока не начал изучать книжку по asm, в startup.S удалить набор asm инструкций и сделать тупо вызов на функции в startup.С, но это как вариант, еще не пробовал.[/uquote]Может просто разобраться раз и навсегда как работают компилятор и линкер? Тогда название IDE не будет вообще принципиально.
Добавлено after 8 minutes 32 seconds:
[uquote="COKPOWEHEU",url="/forum/viewtopic.php?p=4321975#p4321975"]целый курс по ассемблеру с переходом на Си, правда на RISC-V.[/uquote]Дело, конечно, хорошее, но вот с такими перлами лучше не обучать.
Код: Выделить всё
void SystemInit(void){} //зачем-то используется в gcc. Ну и пусть, мне оно не мешает
Добавлено after 4 minutes 7 seconds:
[uquote="MLX90640",url="/forum/viewtopic.php?p=4321971#p4321971"]
Dimon456, найдите поиском функцию SystemInit и в её начале напишите чтение одного байта из адреса на пару десятков байт назад от конца SRAM. Там ничего не затирается и не перезапичывается в на еле раьоты[/uquote]У него в стартапе SystemInit вызывается после инициализации сегментов данных. Закладываться, что она ничего не упорядочила уже, я бы не стал.