STM32F103C8T6 Blue Pill Development Board

The STM32F103C8T6 is one of the mid-range microcontroller units of the STM32F103x8 series based on RISC architecture. As an alternative to STMicroelectronics STM discovery boards, the integrated Blue Pill development board is launched as a low-cost development board. The market price of Blue Pill is around 2-3 dollars.

STM132F103C8T6 microcontroller with GPIO pins, processor, memory, USB port, analog-to-digital converter and other peripherals. In addition, it also has ARM Cortex core with amazing speed of 72MHz and excellent power efficiency.

In this article, we will introduce the STM32F103C8T6 Blue Pill development board, including its features, specifications, pin configuration, GPIO pins and peripherals, and applications.

STM32F103C8T6 Blue Pill Development Board

The STM32F103C8T6 Blue Pill development board contains a 32-bit Cortex-M3 RISC ARM core with an internal oscillator of 4-16MHz, which is a CMOS flash memory technology chip. The chip has 37 GPIO pins and 10 analog pins.

The STM32F103C8T6 has some modern communication interfaces such as CAN and USB ports. Since it runs at very low voltage, peripherals can have excellent control of the board, making it suitable for low power applications. It also comes with an integrated watchdog and a windowed watchdog timer for proper instruction execution.

Pin Configuration

The figure below shows the pinout of the STM32F103C8T6 Blue Pill development board:

Pinout of STM32F103C8T6
Pinout of STM32F103C8T6

Pin Description

Pin Type Pin Number Pin Function
Power -3.3V -5V -GND 1. Working output voltage 2. Powered by USB or 5V external power pin 3. ground pin
Analog PAO-PA7, PBO-PB1 10, 12-bit resolution ADC pins
Input/Output PAO-PA15, PBO-PB15, PC13-PC15 37 general purpose I/O pins
External Interrupt PAO-PA15, PBO-PB15, PC13-PC15 Interrupt Pin
PWM PAO-PA3,PA6-PA10, PBO-PB1,PB6-PB9 15 Pulse Width Modulation
Serial Communication (UART) TX1, RX1, TX2, RX2, TX3, RX3 RTS、CTS USART pins
SPI MISO0, MOSI0, SCK0, MISO1, MOSI1, SCK1, CS0 2 serial peripheral interface pins
CAN CAN0TX,CAN0RX Controller Area Network bus pins
I2C SCL1, SCL2, SDA1, SDA2 Inter-IC serial data and clock pins
Built-in LED PC13 LED indication

STM32F103C8T6 Features

1. High performance: The operating frequency is up to 72MHz, with high-performance computing and floating-point computing capabilities, suitable for real-time applications and computing-intensive applications.

2. Rich peripherals: Built-in multiple peripherals, such as up to 39 GPIO, UART, SPI, I2C, timer, PWM, etc., can adapt to different application scenarios.

3. Low power consumption: Built-in a variety of low power consumption modes, including standby, hibernation, shutdown, etc., which can effectively extend battery life and are suitable for low power consumption scenarios.

4. Abundant software support: ARM Cortex-M3 core is adopted, and various development tools and software packages are supported, such as Keil, IAR, CubeMX, etc., and the development efficiency is high.

5. High cost-effectiveness: High cost-effectiveness, which can better meet the needs of economical and affordable applications, and can be widely used in many fields, such as smart home, Internet of Things, embedded systems, etc.

STM32F103C8T6 Specifications

Aattribute Value
Architecture Reduced Instruction Set
Pins 47
SRAM 20KB
Serial line debugging 1
Flash memory 64/128Kbytes
Processor speed 72 MHz (maximum)
USB connector Micro
Analog to Digital Converter 2
Number of timers 7
Communication interface 9
USB module support
12C 2
SPI 2
Working temperature -40℃~+105℃
Source/sink current 6mA
Working voltage 2.0V-3.6V
Serial port module 3
Internal Oscillator 4-16 MHz
Window Watchdog Timer (WWDT) Support
JTAG debug interface 1

How to Program the STM32F103C8T6 Development Board?

There are currently two ways to program the STM32F103C8T6 development board:

  • STLink USB dongle
  • External USB or serial converter

While there are many compiler options and IDEs available to write program and flash code to STM32F10C8T6 Blue Pill. But these are two of the most popular and easy to use compilers.
In addition, the software of Kiel/CubeMX and STLink is also used for compiling and uploading the program. This is done through a single-wire debug interface, designed for ARM cores, for transfers and memory accesses.

Development Environment

This MCU is compatible with Arduino software, it can be programmed using Arduino compiler. Arduino uses two compilers, avr-g++ and arm-none-eabi-g++. The code can be programmed to the MCU via external USB using the UART1 pin.

To program the STM32F10C8T6 through the Arduino software, the desired board must be selected from the board menu provided by the software. Then download the appropriate files for the board for efficient programming. Example sketches for Arduino such as Blink can be uploaded to MCU as the development has integrated LEDs.

STM32F103C8T6 Package Design

STM32F103C8T6 has two packages, namely LQFP48 and UFQFPN48. The figure below gives an example of the LQFP48 package top view:

LQFP48 package topview of STM32F103C8T6
LQFP48 package topview of STM32F103C8T6

STM32F103C8T6 Application

  • Robotics
  • Medical system
  • Home automation system
  • Low-cost embedded system
  • Consumer equipment
  • Global Positioning System
  • Industrial application

STM32F103C8T6 Vs Other MCU

MCU CPU Frequency Flash Memory RAM Package
STM32F103C8T6 72 MHz 64 KB 20 KB 48-pin LQFP
STM32F103ZET6 72 MHz 512 KB 64 KB 144-pin LQFP
STM32F103RCT6 72 MHz 256 KB 48 KB 64-pin LQFP
STM32F103C6T6 72 MHz 32 KB 10 KB 48-pin LQFP
STM32F103VET6 72 MHz 256 KB 64 KB 100-pin LQFP

SUBSCRIBE

Join our subscribers list to get monthly blog update