STM32F10x как стартует камень

Очередная тема с наитупейшими вопросами от недопрограммиста.

Значицца как написано в мануале, проц при старте загружает в регистр SP значение, которое находится по адресу 0х0800_0000 , далее в регистр PC загружается значение по адресу 0х0800_0004 и пошло-поехало, верно?

Помогаем всем телом мозгу не получить вывих и … начинаем…
1 _reset_handler
2 System_Init
3 Loop_Copy_Data_Init
4 LoopFillZerobss
5 dbg.main
Это не я , это IDA дала…

Для извращенцев-обфускантов самым интимным местом может быть вектор Hard_Fault не правда ли?
Или есть ещё более извращенные методы запуска проца???

Есть у кого возможность скомпилить любую шнягу (да хоть blynk) под камень 32f105 c RtOS на разных версиях С+ компиляторах???

поцчему остановился?

А также на Паскале, Бейсике, Лиспе, Фортране, Рапире.
Желающим выразим большое челевеческое спасибо.

Паскакаль использует С - подобный компилятор, тоесть переменные толкаются в стек и болтаются там до конца функции
Вот так:
push {r7}
sub sp, sp, #12
add r7, sp, #0
str r0, [r7, #4]
ldr r3, [r7, #4]
mul r3, r3, r3
mov r0, r3
adds r7, r7, #12
mov sp, r7
ldr r7, [sp], #4
bx lr
По крайней мере если писать на Паскакале для х64, будет примерно как на С.
Бейсики вообще отдельная тема, всякие там турбо, ковбой, баском имеют примерно одинаковый компилятор и там очень удобно писать на ассемблере.
И в том-же протеусе абсолютно любая 8 аврка эмулируется влёт.
Другое дело стм, даже 103 камень нихрена там не эмилируется, не говоря о 4хх сериях.
Мне просто надо таблицу векторов от 105 или 107 (или оба) камня в елф формате. Само тело прошивки мне не нужно. Пусть там будет while (1) , пофиг.

никому нельзя верить, говорил жеж что только аглицкий )))

@ua6em , знать и использовать это разные вещи
)))
Вот я прочитал много книжек по богатству и чего? )

это твоя главная ошибка

1 лайк

Так, понимание процесса вроде как стало приходить в мой моцк.
Да, ядро кортекс-м3 это гораздо сложнее ядра авр.
Всё, тему можно закрывыать.
Спасибо за за картинки…