Skip to main content
Graduate II
January 18, 2025
Solved

STM8 vs Cortex-M0/0+ in a new project

  • January 18, 2025
  • 3 replies
  • 2797 views

 


I am studying a project that requires a very small microcontroller. It will only drive analog and digital ports, but we need the I2C protocol and maybe even CAN. I was advised to use the STM8, but I am not comfortable with this choice. And I wanted to adopt something that was Cortex-M0.

What would be better? The STM8 or an STM32F0 or even another Cortex-M+. What is the future of the STM8 family?

Would it be advisable to mix architectures in a new project?

 

    This topic has been closed for replies.
    Best answer by Uwe Bonnes

    STM32C0 is now the recent low budget/low feature line to concure against 8 bit. My opinion: If you intende to do rally high numbers, maye STM8 will be cheaper. But on 32 bit , programming is easier and so the startup/. development cost . You must know your boundary conditions...

    3 replies

    Graduate II
    January 18, 2025

    STM32C0 is now the recent low budget/low feature line to concure against 8 bit. My opinion: If you intende to do rally high numbers, maye STM8 will be cheaper. But on 32 bit , programming is easier and so the startup/. development cost . You must know your boundary conditions...

    Graduate II
    January 18, 2025

    I didn't understand what "rally high numbers" would be

    Graduate II
    January 18, 2025

    Really High, probably 100K units or 1M units, sort of levels where you can get aggressive pricing.

    ST has been somewhat mixed about long term of STM8, as best I can tell most of the chip and tools teams have been redeployed. Clearly not an accendant technology choice.

    The 32-bit CM0(+) have an easier debug model, and are available in very small parts. At 16KB FLASH you're perhaps struggling to do much if the float libraries are needed.

    KEIL/STM have a free version of the MDK tools for CM0(+) parts

    https://www.st.com/en/partner-products-and-services/free-arm-keil-mdk-for-stm32c0-stm32f0-stm32l0-and-stm32g0.html

    Visitor II
    January 19, 2025

    If Your only priority is 'very small microcontroller', STM32F0 has smaller package WLCSP12 (1.70 × 1.42 mm) vs STM8' WFQFPN20 3x3mm

    and the same 8- & 20-pins packages

    But there are other priorities: are You ready to use so small but not so convenient for prototyping WLCSP package, is it available, how much it costs, should Your device decrease power consumption (if it is battery powered) and so on.

    Sometimes even the projects fully in assembler are required (for example, for lowest power consumption or strictly defined time intervals with low jitter). For such specific tasks other types of uC is more convenient, for example, AVR.

    To have skill in different series, including different uC producers, and different IDEs only will be Your advantage.

     

    Graduate II
    January 19, 2025

    I thought about the atmega line (AVR) but I also wondered if it was becoming obsolete, but it is still an excellent µC.

    But I am leaning towards something like Cortex-M0, especially if I don't need another IDE for development and maintenance. I am very comfortable with CubeIDE (Eclipse)

    Visitor II
    January 19, 2025

    Where are now MCS-51 uCs or AVR AT90S series?

    Compare the price ATmega8 (AVR ATmega series) vs ATmega808 (relatively new megaAVR 0-series. better parameters, 1-wire programmer - very simple if DIY): $1.90 vs $0.80. It seems, microchip tries to replace its own, but old ATmega series.

    All uC series stay old fast enough.

    The same tendency may be expected concerning  STM8 & Cortex-M0 and even IDE.

    Well known problem when a prgrammer stays a hostage of the favorite uC series.

    The cure: ability to master new/other uC series and IDEs fast.

     

    Graduate II
    January 19, 2025

    I thought that the ATxmega, from the ATmel era, would be the replacement for the old atmega, but apparently the stm32f0 line will be the best choice.

    Graduate II
    January 19, 2025

    Why do you prefer F0 and not C0?