El STM32F103C8T6 lleva años figurando en las listas de materiales (BOM) de los ingenieros, pero sigue provocando errores pequeños, aunque costosos. El nombre del componente parece sencillo. Pero en cuanto empiezas a comprobar el tamaño de la memoria Flash, el encapsulado, las funciones alternativas de los pines, el uso compartido de USB/CAN, los sufijos de temperatura y los posibles sustitutos, los detalles cobran mucha más importancia que el titular ’MCU Cortex-M3 a 72 MHz“.”
Desde el punto de vista de la selección de proveedores, suelo analizar este dispositivo desde dos perspectivas. El ingeniero quiere saber si el STM32F103C8T6 dispone de suficiente memoria, GPIO, temporizadores, canales ADC e interfaces de comunicación. El equipo de compras necesita saber si la pieza presupuestada es exactamente el dispositivo aprobado en la lista de materiales (BOM). Esas dos preguntas deben responderse conjuntamente.
Esta guía explica la disposición de pines del STM32F103C8T6, sus especificaciones, las funciones de sus periféricos, sus aplicaciones, los dispositivos STM32F1 relacionados y los aspectos que conviene comprobar antes de realizar un pedido. Si aún estás dudando entre diferentes familias de microcontroladores o capacidades de memoria, nuestra guía sobre Cómo elegir un microcontrolador para un sistema embebido ofrece un marco de selección más amplio.
1. ¿Qué es el STM32F103C8T6?
El STM32F103C8T6 es un microcontrolador de 32 bits perteneciente a la gama de alto rendimiento STM32F1 de STMicroelectronics. Incorpora un núcleo Arm Cortex-M3 y funciona a una frecuencia de hasta 72 MHz. La versión C8 ofrece 64 KB de memoria Flash integrada y 20 KB de SRAM. El código de encapsulado ’T» identifica un encapsulado LQFP, mientras que el código de número de pines «C» indica que tiene 48 pines.
Se sitúa en un interesante punto intermedio. Ofrece mayor capacidad de procesamiento y flexibilidad en cuanto a periféricos que muchos microcontroladores básicos de 8 bits, pero el dispositivo sigue siendo lo suficientemente sencillo como para utilizarse en placas de control, interfaces de sensores, diseños de control de motores, nodos de comunicación y hardware embebido en general.
La familia STM32F103 es compatible con USB, CAN, ADC, PWM, temporizadores, UART/USART, SPI e I²C. Para los dispositivos STM32F103Cx de 48 pines, ST especifica 37 GPIO, dos ADC de 12 bits con 10 canales externos, tres USART, dos interfaces SPI, dos interfaces I²C, USB y CAN.
Esa combinación explica por qué el STM32F103C8T6 se utiliza en tantos productos embebidos. Es capaz de leer sensores analógicos, controlar motores, comunicarse con varios dispositivos externos, ejecutar un bucle de control en tiempo real y, aun así, dejar margen para LED de estado, interruptores, interrupciones e interfaces de diagnóstico.
El STM32F103C8T6 de un vistazo
Hay un detalle que conviene recordar antes de profundizar más: STM32F103C8T6 significa oficialmente 64 KB de memoria Flash. Es posible que encuentres placas de desarrollo, herramientas de software o listados de terceros que sugieran una mayor capacidad de memoria. Para el diseño y la compra de productos de serie, utiliza el número de referencia definido por el fabricante en lugar de dar por sentado que se garantiza una memoria Flash adicional. El sistema de pedidos de ST define el código de memoria “8” como 64 KB y “B” como 128 KB.
Esa distinción resulta útil más adelante a la hora de comparar el C8 con el STM32F103CBT6.

2. Características y especificaciones principales del STM32F103C8T6
Para la mayoría de los ingenieros, el verdadero valor del STM32F103C8T6 radica en el equilibrio entre el rendimiento de la CPU, la memoria, las funciones analógicas, los temporizadores y los periféricos de comunicación.
| Especificaciones | STM32F103C8T6 |
|---|---|
| Fabricante | STMicroelectronics |
| Familia MCU | Gama Performance de STM32F1 |
| Núcleo de la CPU | Arm Cortex-M3 de 32 bits |
| Frecuencia máxima de la CPU | 72 MHz |
| Memoria flash | 64 KB |
| SRAM | 20 KB |
| Paquete | LQFP-48, 7 × 7 mm |
| GPIO | 37 |
| ADC | 2 convertidores analógico-digitales (ADC) de 12 bits |
| Canales ADC externos | 10 |
| Temporizadores de uso general | 3 × 16 bits |
| Temporizador de control avanzado | 1 × 16 bits |
| USART | 3 |
| SPI | 2 |
| I²C | 2 |
| CAN | CAN 2.0B activo |
| USB | USB 2.0 de velocidad máxima |
| DMA | 7 canales |
| Depuración | SWD y JTAG |
| Suministro operativo | 2,0–3,6 V |
| Rango de temperatura para T6 | De –40 °C a +85 °C |
| Funciones adicionales | RTC, circuitos de vigilancia, CRC, identificador único de 96 bits |
Estas especificaciones se ajustan a la documentación de ST sobre el STM32F103 de densidad media.
La frecuencia de reloj de 72 MHz es lo que más llama la atención, pero suelen ser la memoria y los periféricos los que determinan si este microcontrolador se adapta a un diseño concreto.
64 KB de memoria Flash Es suficiente para muchas tareas de control, detección, comunicación e interfaces de usuario integradas. El firmware que incluya grandes pilas de protocolos, múltiples capas de middleware, sistemas de archivos, gráficos o ampliaciones frecuentes de funcionalidades puede alcanzar ese límite antes de lo esperado. Si tu código ya se acerca al límite durante el desarrollo del prototipo, pasar al STM32F103CBT6 de 128 KB puede ser una solución más limpia que diseñar en torno a un espacio no utilizado que no forma parte de la especificación oficial C8.
20 KB de SRAM También hay que tenerlo en cuenta desde el principio. Los búferes para la comunicación en serie, el tráfico USB, los datos de los sensores, las tareas del RTOS y las estructuras de datos locales compiten por la misma memoria RAM.
El STM32F103C8T6 incluye un controlador DMA de 7 canales. El DMA permite a los periféricos compatibles transferir datos sin que la CPU tenga que gestionar directamente cada byte o muestra del ADC. Esto puede suponer una gran diferencia en aplicaciones que recopilan datos repetidos del ADC, reciben flujos en serie o controlan periféricos mientras el procesador se encarga de la lógica de control.
La flexibilidad del reloj es otro aspecto útil del diseño. La MCU incluye un oscilador RC interno de 8 MHz y una fuente RC interna de baja velocidad de 40 kHz. También puede utilizar un cristal externo de alta velocidad de 4 a 16 MHz y un cristal de baja velocidad de 32,768 kHz para funciones relacionadas con el RTC.
3. Descripción de la disposición de pines del STM32F103C8T6
Buscar el “esquema de pines del STM32F103C8T6” suele implicar algo más que encontrar un esquema de 48 pines. La verdadera pregunta es: ¿Qué pines puedo asignar sin problema a cada función sin que surjan conflictos más adelante?
El STM32F103C8T6 utiliza la configuración LQFP de 48 pines. El esquema de conexión de ST muestra las funciones de alimentación, oscilador, reinicio, arranque, GPIO, analógicas, de comunicación, temporizador y depuración distribuidas por todo el paquete.
El problema radica en la multiplexación de pines. Un pin como el PA11 no es simplemente el GPIO número 11. También puede desempeñar funciones relacionadas con USB, CAN, el temporizador o el USART, dependiendo de la configuración. Puede parecer que tu esquema tiene pines suficientes hasta que dos periféricos necesarios intentan utilizar la misma conexión física.
Pines GPIO, de alimentación y de comunicación
Los principales grupos de E/S digitales son: PA0–PA15, PB0–PB15 y PC13–PC15, aunque varios pines tienen funciones específicas de arranque, oscilador o depuración y no pueden considerarse simplemente como GPIO sin restricciones.
Las conexiones de alimentación merecen una atención especial. Los pines VDD alimentan la sección digital, mientras que los pines VSS proporcionan la tierra digital. Los pines VDDA y VSSA dan servicio al dominio analógico. Si tienes previsto utilizar el ADC con una precisión significativa, la disposición de la alimentación analógica, la conexión a tierra, el desacoplamiento y el trazado de las señales son tan importantes como la configuración de los registros del ADC.
El VBAT proporciona alimentación de reserva para el RTC y los registros de respaldo. Esto resulta útil cuando es posible que se interrumpa el suministro principal, pero es necesario que el reloj siga funcionando.
PD0 y PD1 se utilizan como entrada y salida del oscilador externo de alta velocidad en la versión LQFP-48. PC14 y PC15 admiten el oscilador de baja velocidad de 32,768 kHz. PC13 también cuenta con funcionalidades relacionadas con el RTC y la protección contra manipulaciones.
BOOT0 es otro pin que siempre compruebo al revisar una placa. El PB2 puede actuar como BOOT1 en el dispositivo STM32F103 de densidad media. Su estado de arranque influye en la ruta de arranque, por lo que la configuración de las resistencias en torno a estos pines debe ajustarse al proceso de programación y producción previsto.
Las conexiones de comunicación requieren la misma planificación.
El USART1 suele utilizar el pin PA9 para la transmisión (TX) y el pin PA10 para la recepción (RX). El SPI1 suele utilizar los pines del PA4 al PA7 para NSS, SCK, MISO y MOSI. El I²C1 puede utilizar los pines PB6 y PB7 para SCL y SDA. El dispositivo también ofrece opciones alternativas de reasignación para varios periféricos.
Hay un conflicto entre pines que merece una atención especial: PA11 y PA12 son los pines predeterminados para la recepción y transmisión CAN, así como los pines DM/DP del USB.. Si tu producto necesita tanto USB como CAN, no puedes considerar esas funciones como independientes a la hora de planificar la asignación predeterminada de pines. El CAN se puede reasignar a PB8 y PB9, lo que puede resolver el conflicto siempre que el resto de la configuración de la placa permita esa opción.
Este es el tipo de detalle que resulta más fácil de corregir durante la fase de diseño esquemático que después del trazado de la placa de circuito impreso.
Pines de ADC, PWM y depuración
En el caso del STM32F103C8T6, las principales entradas externas del ADC se encuentran en PA0–PA7 y PB0–PB1, lo que ofrece 10 canales disponibles en la configuración Cx de 48 pines. Estos pines también pueden desempeñar otras funciones alternativas, por lo que la planificación de los canales analógicos debe realizarse antes de asignar los GPIO restantes.
Las dos unidades ADC son convertidores de 12 bits. ST especifica una capacidad de conversión de hasta aproximadamente 1 µs en las condiciones de reloj indicadas. El rango de conversión de entrada abarca desde 0 V hasta el rango de alimentación analógica, que en la especificación de la familia alcanza los 3,6 V.
No interpretes la frase “casi todas las E/S son compatibles con 5 V” como una autorización para aplicar 5 V a todos los pines del STM32F103C8T6. La ficha técnica identifica por separado los pines digitales compatibles con 5 V, mientras que varios pines analógicos y pines dedicados no llevan esa designación FT. Comprueba el pin concreto antes de conectar una fuente lógica de 5 V.
En cuanto al PWM y la sincronización, la MCU incluye tres temporizadores de 16 bits de uso general y un temporizador de control avanzado. El temporizador avanzado resulta especialmente útil para tareas de control de motores, ya que admite funciones como salidas PWM complementarias, generación de tiempo muerto y funciones de parada de emergencia. Los temporizadores de uso general también pueden gestionar la captura de entradas, la comparación de salidas, el recuento de pulsos, el PWM y las señales de codificadores en cuadratura.
Para la depuración se suele utilizar PA13 para SWDIO y PA14 para SWCLK. El JTAG completo también ocupa los pines PA15, PB3 y PB4. Si solo se utiliza SWD, algunos de esos pines JTAG pueden liberarse para otras funciones una vez establecida la configuración de depuración. Sigo prefiriendo mantener el SWD accesible en las placas de producción por si fuera necesario realizar programación in situ, recuperación del firmware o diagnósticos técnicos.

4. Interfaces de comunicación y funciones periféricas
La evaluación del STM32F103C8T6 resulta mucho más sencilla cuando se relaciona cada periférico con un requisito de diseño real.
USART Funciona bien para la depuración de terminales, módulos GNSS, sensores serie, módulos inalámbricos, enlaces serie industriales y la comunicación con otra MCU. Los sistemas RS-232 y RS-485 siguen requiriendo un transceptor externo adecuado para la capa física.
SPI Es compatible con periféricos locales de mayor velocidad, como memorias Flash externas, pantallas, sensores de alta velocidad, convertidores analógico-digitales (ADC), convertidores digital-analógicos (DAC) y controladores de comunicación. El STM32F103C8T6 ofrece dos interfaces SPI capaces de alcanzar hasta 18 Mbit/s, según las especificaciones de ST.
I²C Resulta útil cuando varios dispositivos de baja velocidad necesitan compartir dos líneas de señal. Los sensores de temperatura, las EEPROM, los dispositivos RTC, las pantallas pequeñas, los monitores de batería y otros circuitos integrados a nivel de placa suelen utilizar esta interfaz.
CAN 2.0B Esto hace que el MCU sea adecuado para redes de control distribuido en máquinas, equipos de automatización y sistemas relacionados con los vehículos. El STM32 incorpora el controlador CAN, pero tu placa sigue necesitando un transceptor CAN externo para la conexión física al bus.
USB 2.0 de velocidad máxima permite que la MCU se comunique directamente con un host USB cuando el diseño del hardware y del reloj cumple los requisitos de la interfaz. Esto permite la comunicación con el dispositivo, su configuración, la transferencia de datos y otras funciones USB integradas.
Los ADC, el DMA, los temporizadores, las interrupciones y los periféricos de comunicación también pueden funcionar de forma conjunta. Una arquitectura integrada típica podría permitir que un temporizador activara el muestreo del ADC, utilizara el DMA para transferir las muestras a la memoria, procesara los datos en el firmware y, a continuación, enviara la información seleccionada a través de UART, USB o CAN. Esa combinación suele ser más importante que la frecuencia de la CPU por sí sola.
Si estás seleccionando microcontroladores para placas relacionadas con PLC, controladores de motores, interfaces de máquinas o nodos de sensores, nuestros aplicaciones de automatización industrial Esta sección ofrece más información sobre los requisitos de los componentes en los sistemas industriales.
5. Aplicaciones habituales del STM32F103C8T6
El STM32F103C8T6 funciona mejor cuando la aplicación se adapta a su capacidad de memoria y a su número de pines. No debe elegirse simplemente porque se trate de un componente con el que se está familiarizado.
| Solicitud | Por qué el STM32F103C8T6 es la opción adecuada |
|---|---|
| Sistemas de control industrial | Los temporizadores, el ADC, el CAN, el USART, el GPIO, los watchdogs y la compatibilidad con interrupciones se adaptan a numerosas funciones de las placas de control |
| Control de motores | El temporizador PWM avanzado, el control de tiempo muerto, las entradas ADC y la compatibilidad con encoders resultan útiles para el control de accionamientos de motores |
| Sensores y adquisición de datos | El convertidor analógico-digital (ADC) de 12 bits, DMA, SPI, I²C y USART permiten la recopilación de datos de los sensores y su transferencia. |
| Robótica | El PWM, las entradas de encoder, la comunicación en serie, el ADC y el GPIO permiten gestionar actuadores e interfaces de sensores. |
| Dispositivos IoT Edge | La MCU puede gestionar la detección y el control locales, mientras que un módulo de comunicación externo (Wi-Fi, móvil, LoRa u otro) se encarga de la conectividad. |
| Electrónica de consumo | Se pueden integrar puertos USB, botones, LED, pantallas, sensores y periféricos serie en torno a un único controlador |
| Placas de desarrollo integradas | El paquete de 48 pines ofrece suficientes periféricos accesibles para el aprendizaje, la creación de prototipos, el desarrollo de firmware y la realización de pruebas. |
La propia ST incluye entre los usos más generales de la familia STM32F103 de densidad media los accionamientos de motor, el control de aplicaciones, los equipos médicos y portátiles, los sistemas industriales, los PLC, los inversores, los periféricos de PC, los sistemas de alarma y los equipos de climatización.
La idoneidad de una aplicación sigue dependiendo del sistema final. Un controlador industrial puede necesitar CAN y varios temporizadores, pero poca memoria Flash. Un registrador de datos puede necesitar más memoria. Una pequeña interfaz hombre-máquina (HMI) puede quedarse sin memoria Flash o SRAM mucho antes de quedarse sin GPIO.
Por eso prefiero seleccionar el microcontrolador (MCU) a partir del mapa completo de periféricos, en lugar de partir de la premisa de que “72 MHz deberían ser suficientes”.”
6. STM32F103C8T6 frente a microcontroladores STM32 similares
Los modelos STM32F103C8T6, STM32F103CBT6 y STM32F103RCT6 comparten la arquitectura Cortex-M3 y una frecuencia máxima de la CPU de 72 MHz, pero no son intercambiables en el mismo sentido.
| Dispositivo | STM32F103C8T6 | STM32F103CBT6 | STM32F103RCT6 |
|---|---|---|---|
| Núcleo | Cortex-M3 | Cortex-M3 | Cortex-M3 |
| Frecuencia máxima | 72 MHz | 72 MHz | 72 MHz |
| Flash | 64 KB | 128 KB | 256 KB |
| SRAM | 20 KB | 20 KB | 48 KB |
| Paquete | LQFP-48 | LQFP-48 | LQFP-64 |
| GPIO | 37 | 37 | 51 |
| ADC | 2 | 2 | 3 |
| Canales ADC externos | 10 | 10 | 16 |
| USART | 3 | 3 | 5 |
| SPI | 2 | 2 | 3 |
| I²C | 2 | 2 | 2 |
| USB | Sí | Sí | Sí |
| CAN | Sí | Sí | Sí |
| DAC | No | No | 2 × 12 bits |
ST define el STM32F103CB como la versión de 128 KB de la misma familia C de densidad media y 48 pines. Esto hace que el El STM32F103CBT6 es el dispositivo más adecuado para analizar cuando el principal problema es la capacidad de la memoria Flash C8.. Mantiene el paquete LQFP-48 y la misma clase de 37 GPIO. Aún es necesario actualizar la configuración de la memoria del firmware y se debe volver a validar el diseño completo antes de la sustitución.
El STM32F103RCT6 supone un avance aún mayor. Pasa a formar parte de la familia STM32F103 de alta densidad con 256 KB de memoria Flash, 48 KB de SRAM, 51 GPIO, tres ADC, más temporizadores, más interfaces serie, dos canales DAC y un encapsulado LQFP-64. No se trata de un sustituto directo del C8, ya que cambian el tamaño del circuito impreso y la configuración de los periféricos.
La elección es bastante práctica. Si la placa de circuito impreso es fija y el firmware necesita principalmente más memoria Flash, opta por el CBT6. Si el diseño requiere más memoria, más E/S, salidas DAC o un conjunto más amplio de periféricos, el RCT6 puede resultar una opción más adecuada en la fase de arquitectura.

7. Cómo elegir y adquirir el STM32F103C8T6
Es aquí donde la información técnica se convierte en información de compras.
Cuando reviso una solicitud de presupuesto de un MCU, lo primero que busco es el número de referencia completo del fabricante. “STM32F103” no es suficiente. “STM32F103C8” sigue sin especificar los detalles de la compra. «STM32F103C8T6» te da mucha más información.
ST’s ordering code breaks down this way: C = 48 pins, 8 = 64 KB Flash, T = LQFP, 6 = industrial temperature range from –40°C to +85°C. A “TR” suffix identifies tape-and-reel packing.
This part-number check is simple, but it prevents a surprising number of BOM problems. A C8 and CB may look almost identical in a spreadsheet. A T6 and another package suffix can create a physical assembly problem. A temperature suffix can matter once the end product leaves a laboratory environment.
Next, confirm that the documentation matches the actual quoted part. Check manufacturer marking, package type, packing method, labels, lot or date information, lifecycle status, and traceability information available from the supply channel.
Photos are useful, but I do not treat a clean top marking as proof of authenticity. Procurement teams should judge the complete supply chain. Depending on risk level, order quantity, end application, and sourcing channel, incoming inspection may include packaging and label review, marking inspection, electrical testing, X-ray analysis, or more detailed laboratory work.
Date code needs sensible treatment too. An older date code does not automatically mean a component is unsuitable, just as a recent date code does not prove authenticity. Storage history, packaging condition, moisture handling, traceability, and the customer’s own manufacturing requirements should be considered together.
Compliance documentation also needs to match the destination market and finished product requirements. For equipment sold into the EU, buyers may need material information related to the EU RoHS restrictions on hazardous substances. The European Commission states that RoHS restricts ten hazardous substances in electrical and electronic equipment.
REACH is a separate regulatory framework. When your customer or compliance team asks about substances of very great concern, the Lista de sustancias candidatas de la ECHA is the appropriate official reference point.
A component material declaration can support downstream compliance work, but it should not be treated as proof that the complete finished product automatically complies with every applicable regulation. Product-level compliance still depends on the full bill of materials, manufacturing process, market, and applicable legal scope.
For ST parts, you can also review our STMicroelectronics component selection when checking related MCUs and electronic components. The key is still the same: match the exact MPN to the engineering requirement before accepting a sourcing alternative.
Conclusión
The STM32F103C8T6 remains a practical 32-bit microcontroller for control systems, sensors, motor-control designs, robotics, embedded communication, and many general-purpose MCU projects. Its Cortex-M3 core, 72 MHz clock, 64 KB Flash, 20 KB SRAM, 37 GPIOs, ADCs, timers, USB, CAN, SPI, I²C, and USART interfaces give engineers a useful set of functions in a compact LQFP-48 package.
The part becomes easier to use once you stop looking at each feature separately. Check pin multiplexing before PCB routing. Watch the PA11/PA12 USB and CAN overlap. Keep the official 64 KB Flash specification in mind. Decide whether the 20 KB SRAM leaves enough headroom for future firmware. When you move from prototype to purchasing, verify the entire STM32F103C8T6 part number rather than ordering from a shortened description.
If you are also sourcing electronic components, Duolink Electronics is an independent electronic components supplier providing integrated circuits, semiconductors, passive components, connectors, and other electronic parts. We support BOM sourcing, part-number checking, inventory inquiries, and sourcing for difficult-to-find components. If you have an STM32F103C8T6 requirement or another electronic component on your BOM, you can leave your requirements through our website and contact our team for sourcing support.
Preguntas frecuentes
Is the STM32F103C8T6 a 64 KB or 128 KB Flash MCU?
The official specification for STM32F103C8T6 is 64 KB Flash. In ST’s ordering code, “8” represents 64 KB. The STM32F103CBT6 uses “B” and provides 128 KB. For production designs, do not rely on undocumented extra memory.
Can I replace STM32F103C8T6 with STM32F103CBT6?
The CBT6 is the closest option when you need 128 KB Flash while staying in the 48-pin LQFP STM32F103C family. Check firmware memory settings, peripheral configuration, approved BOM data, and the latest manufacturer documentation before releasing the substitution.
Which pins are used for SWD programming?
PA13 is used for SWDIO and PA14 for SWCLK. Keeping these signals accessible on the PCB makes programming, debugging, and firmware recovery much easier.
Can STM32F103C8T6 use USB and CAN together?
Yes, but pin planning matters. USB uses PA11 and PA12, which are also the default CAN RX and TX pins. CAN can be remapped to PB8 and PB9, allowing both interfaces to be used when the hardware and firmware are designed around that configuration.
What information should I include when requesting an STM32F103C8T6 quotation?
Send the complete MPN, required quantity, packing preference, delivery requirement, acceptable date-code conditions if your project has them, and any traceability, inspection, RoHS, or REACH documentation requirements. For an approved BOM, state whether substitutions are allowed before the supplier proposes another STM32 device.