Цитата(igorle @ Mar 17 2013, 12:34)

Я взялся за изучение STM32.
Почитав теорию, развел небольшую пробную плату под stm32f103, отослал в производство и заказал детали. Плата прибудет через две-три недели.
Пока упражняюсь с кодом. И вот тут засада. Я читал, что вся линейка кортексов совместима. То есть все, что написано для меньшего варианта, заработает и на большей версии.
У меня есть stm32f3discovery. Если я пишу код для f303 - все работает. Если пишу для 103 и прожигаю в discovery - не бежит
Вопрос - так должно быть, или я туплю? Достаточно ли инициализации, которую я делаю для 103-го, для того, чтобы использовать в 303-м функциональность 103-го.
У этих контроллеров разные ядра: M3 и M4, но если писать под M3, то должно исполняться и на M4.
У контроллеров разная память, соответственно линкеру нужно указать разницу. В 303 заявляется 48кБ ОЗУ, но 8кБ из них "особенные" и лежат в "особенном" месте. Соответственно можно поиметь проблемы с неправильным указанием начала стека. По периферии тоже могут отличаться: вроде, RCC у них отличаются.