Next: , Previous: , Up: Top   [Contents][Index]


uControllers - stm32f030c8 - Nucleo f030r8 - stm32g071kb - stm32g474ce - STM DevTools - STM32CubeIDE - STM32CubeProgrammer - STlinkV3set - STlinkV2 - Arduino IDE for STM32 - Microchip PIC - Microchip Atmel

STM32 - family


The stm32f030c8 is similar to ATmega328, but comes with greater speed, more ram and offers greater peripheral capabilities, while being cheaper (≡1.3€/pcs.). So in my opinion this contoller is good replacement for Atmega328. The only downside, it does not really fit into the Arduino development environment. There is a STM32 nucleo Board, that comes with a stm32f030c8, but that is sort of different in some ways, including the missing STLink. So using the ArduinoIDE might turn out not to work with the bare metall variation I use, but I didn’t try that one yet.
The only pity for me personally, some years ago I got a number of extremly cheap pic24fj016ga02 for as little as 0.42€/pcs. and I am not sure if I will ever use them in the numbers I got.

Nucleo f030r8

The stm32f030r8 that comes with a Nucleo f030r8 is in some ways my testbed for the stm32f030c8 that I use in bare metall development. But that is pretty much what I do with it after all. I guess that is kind of what STM had in mind when the brought Nucleo boards into the market anyways, while many use then as kind of a fast Arduino-Uno clone. This board seems to work well along with the ArduinoIDE for testing some of the capabilities of the controller, but is in my opinion pretty much useless for any applications itself.


When I used ATmega family controllers, there was a point many years ago when I turned towards Microchip controllers for a specific reasons. While ATmega family was mostly faster compared with it equivalent family from Microchip there still were some major differences, when it comes to peripheral capabilities. Microchip did offer some more capabilities, like NCO (Numeric Controlled Oscillator), DAC (Digital to Analog Converter). Such additional built in components where not so easy to replace without additional effort and expenses for external components and the code that had to be written to make use of them.
The only gap in all this was computing power, when it comes to more demanding calculus and requirements for fast SRAM (Static Random Access Memory) to be used. At that point the choice for me was to make use of the 32bit MIPS family controllers from Microchip, like the pic32mx150f128. They do not come with DAC, nor peripherals like a NCO, but have great computational speed as well as quite large SRAM sizes. The replacement for them when choosen from the stm32g0 family is certainly something like the stm32g071kb.
In a pretty similar way I turned towards stm32 microcontrollers, since they offer across the spectrum a homogene assembly language architecture, and that is that of the ARM processor family. Pretty simple choice ...


stm32g474ce /*todo*/

STM development tools

STM32 Cube IDE


STM32 Cube Programmer


STLink-V3 Set

Well, there is no way to get around using a real device programmer / debugger along with stm32 devices, since they come without ST-Link when not using a Nucleo board of course. So somehow stuff needs to get into the chip, which can be done via bootloader, but not the debugging part of the job of course. And at least at that point there is no way around using debugging hardware. The ST-LinkV3 is pretty fast in programming as well as in debugging, which makes it kind of a near perfect choice to use. The low price also makes it quite attractive.
The only real remaining question, whether to use it with or without the extension that comes with the Set. Because the connectors of the base STLinkV3 come in half pin pitch I personally would recommend using the Set that has an addon board which offers normal pin pitch (2.56mm). The cables that are available for half pin pitch (1.28mm) tend to have their wires breaking already after a short amount of time, and by that half pin pitch are imo kind of unreliable for regular real world use.


The alternative for the STLink-V3Set is the STLink-V2. It comes with normal pitch (2.54mm) pins on its JTAG interface and an also quite common connector for the SWIM programming / debugging interface.

Arduino IDE


Microchip PIC32 / PIC24 / PIC16 / PIC 15 - families

Microchip ATmega / AT85xx - families

uControllers - stm32f030c8 - Nucleo f030r8 - stm32g071kb - stm32g474ce - STM DevTools - STM32CubeIDE - STM32CubeProgrammer - STlinkV3set - STlinkV2 - Arduino IDE for STM32 - Microchip PIC - Microchip Atmel

Copyright © 2019, 2020 Andreas Gruber-Kersting, Berlin, Germany
Published under Creative Commons CC-BY (
Created by GNU Texinfo 6.6,

Next: , Previous: , Up: Top   [Contents][Index]