8-bit MCUs are still found in many designs, but with the new low-cost 48MHz STM32C0 32-bit Arm Cortex-M0+ microcontroller, STMicroelectronics aims to displace 8-bit microcontrollers thanks to “a limited impact on the cost structure” and the improved support provided by the STM32 ecosystem.
The cheapest ever STM32 microcontroller offers up to 32 KB flash, 6 or 12 KB RAM, and I/O interfaces such as UART, I2C, SPI, 12-bit ADC, and so on. The STM32C0 MCUs are available in 8- to 48-pin packages such as WLCSP12, UFQFPN, and the ridiculously tiny 1.70 x 1.42 mm WLCSP12 package.
STMicro STM32C0 key features and specifications:
- MCU Core -Arm 32-bit Cortex-M0+ CPU @ up to 48 MHz
- Memory – 6KB (STM32C011x4/x6) or 12KB (STM32C031x4/x6) SRAM with HW parity check
- Storage – 32KB flash with protection
- Peripheral interfaces
- Up to 45x fast I/Os some of which are 5V tolerant; Note: up to 18x fast I/Os for STM32C011x4/x6
- 3-channel DMA controller
- 12-bit, 0.4 µs ADC (up to 13 ext. channels); range: 0 to 3.6 V
- I2C up to 1 Mbps
- 2x USARTs with master/slave synchronous SPI; one supporting ISO7816 interface, LIN, IrDA capability, auto baud rate detection, and wakeup feature
- 1x SPI up to 24 Mbps with 4- to 16-bit programmable bitframe; multiplexed with I2S audio interface
- 16-bit for advanced motor control
- 4x 16-bit general-purpose
- 2x watchdogs,
- SysTick timer
- Calendar RTC with alarm
- Debugging – Serial wire debug (SWD)
- CRC calculation unit
- Clock management
- 4 to 48 MHz crystal oscillator
- 32 kHz crystal oscillator with calibration
- Internal 48 MHz RC oscillator (±1 %)
- Internal 32 kHz RC oscillator (±5 %)
- Reset and power management
- Voltage range: 2.0 V to 3.6 V
- Power-on/Power-down reset (POR/PDR)
- Programmable Brownout reset (BOR)
- Low-power modes: Sleep, Stop, Standby, Shutdown
- SO8N (4.9 x 6 mm)
- WLCSP12 (1.70 x 1.42 mm)
- TSSOP20 (6.4 x 4.4 mm)
- UFQFPN20 (3 x 3 mm)
- TSSOP20 (6.4 × 4.4 mm)
- LQFP32 (7 × 7 mm)
- LQFP48 (7 × 7 mm)
- UFQFPN28 (4 × 4 mm)
- UFQFPN32 (5 × 5 mm)
- UFQFPN48 (7 × 7 mm)
- Temperature Ranges – -40°C to 85°C/105°C/125°C
The current STM32C0 portfolio includes two sub-family the STM32C011 with 6KB SRAM and up to 18 I/Os, and the STM32C031 with 12KB SRAM and up to 45 I/Os. STMicro says the STM32C0x1 shares the platform as the STM32G0 and “benefits from a consistent pinout mapping” which I suppose means pin-to-pin compatibility for equivalent packages.
The new 32-bit Cortex-M0+ microcontroller family is supported by the same tools as other STM32 MCUs with the STM32CubeC0 package including the STM32Cube HAL and low-layer (LL) APIs peripheral drivers, plus a set of middleware components (Azure RTOS, USB, USB Power Delivery, FatFS, graphics, and STM32 touch sensing). Embedded software utilities come with examples running on the STM32C0 boards shown below.
On the left side, we have the NUCLEO-C031C6 prototyping board with Arduino and ST Morpho headers, and on the right the STM32C0116-DK wired sample board (MB1684A) and the STM32C0316-DK mini evaluation board (MB1716A).
STMicro STM32C0 microcontrollers are in mass production now, and unit pricing for 500 pieces starts at $1.02 on STMicro’s eStore. The NUCLEO-C031C6 development board can be purchased for $20.69, while the STM32C0116-DK and STM32C0316-DK boards go for $22.05 and $34.08 respectively. More details can be found on the product page.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.