0
\$\begingroup\$

I'm a kind of a newbie to STM32/STM8 controllers. All my experience was with 8051, PIC and AVR controllers. And the typical development chain was like this:

  • Make PCB
  • Debug this PCB with my program.

Nowadays there are many of convenient development tools available.

So if I make and debug my program on any STM evaluation board (discovery, nucleo and so on). What should I do next?

I can make my own PCB with the same controller and the same pin assignment. Can I use exactly the same .BIN file to load it to my board through SWD (SWIM) interface?

What if I need to take slightly different controller? Or use another pins?

If I search Stack Exchange for the answer I will find this question with particulary this answer.

Which state (looks like) that this should be fine. However, what if I change the controller or pin assignment? Is the same thing can be applied to STM8 series?

Another one thing is what come in the controller from the manufacturer? Is there any bootloader in the flash or something?

\$\endgroup\$

closed as too broad by Chris Stratton, Edgar Brown, Warren Hill, Elliot Alderson, Sean Houlihane Feb 21 at 15:38

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

1
\$\begingroup\$

I can make my own PCB with the same controller and the same pin assignment. Can I use exactly the same .BIN file to load it to my board through SWD (SWIM) interface?

Yes, assuming you use the same power supply scheme and oscillators (and other peripherals), how would anything in your microcontroller know the difference?

What if I need to take slightly different controller? Or use another pins?

You'll have to adjust your code to initialize the new controller instead of the old one (often, that just boils down to either just changing a config header file, or re-generating the project from your IDE), and recompile.

\$\endgroup\$

Not the answer you're looking for? Browse other questions tagged or ask your own question.