Descripción
Los microcontroladores STM32G030x6/x8 se basan en el núcleo RISC de 32 bits Arm Cortex-M0+ de alto rendimiento que funciona a una frecuencia de hasta 64 MHz. Al ofrecer un alto nivel de integración, son adecuados para una amplia gama de aplicaciones en los ámbitos del consumo, la industria y los electrodomésticos, y están preparados para las soluciones de Internet de las Cosas (IoT).
Los dispositivos incorporan una unidad de protección de memoria (MPU), memorias integradas de alta velocidad (8 Kbytes de SRAM y hasta 64 Kbytes de memoria de programa Flash con protección contra lectura y escritura), DMA, una amplia gama de funciones de sistema, E/S mejoradas y periféricos. Los dispositivos ofrecen interfaces de comunicación estándar (dos I²C, dos SPI / un I²S y dos USART), un ADC de 12 bits (2,5 MSps) con hasta 19 canales, un RTC de bajo consumo, un temporizador PWM de control avanzado, cuatro temporizadores de propósito general de 16 bits, dos temporizadores watchdog y un temporizador SysTick.
Los dispositivos funcionan a temperaturas ambiente de -40 a 85 °C y con tensiones de alimentación de 2,0 V a 3,6 V. El consumo dinámico optimizado, combinado con un completo conjunto de modos de ahorro de energía, permite diseñar aplicaciones de bajo consumo.
La entrada directa de batería VBAT permite mantener alimentados el RTC y los registros de respaldo.
Los dispositivos se presentan en paquetes de 8 a 48 pines.
Características
Núcleo: CPU Cortex-M0+ de 32 bits, frecuencia de hasta 64 MHz
Temperatura de funcionamiento de -40°C a 85°C
Recuerdos
- Hasta 64 Kbytes de memoria Flash con protección
- 8 Kbytes de SRAM con comprobación de paridad HW
Unidad de cálculo CRC
Reinicio y gestión de energía
- Rango de tensión: de 2,0 V a 3,6 V
- Reinicio de encendido/apagado (POR/PDR)
- Modos de bajo consumo: Reposo, Paro, Espera
- Alimentación VBAT para RTC y registros de reserva
Gestión del reloj
- Oscilador de cristal de 4 a 48 MHz
- Oscilador de cristal de 32 kHz con calibración
- RC interno de 16 MHz con opción PLL
- Oscilador RC interno de 32 kHz (±5 %)
Hasta 44 E/S rápidas
- Todas asignables a vectores de interrupción externos
- Múltiples E/S tolerantes a 5 V
controlador DMA de canal con asignación flexible
ADC de 12 bits y 0,4 μs (hasta 16 canales externos)
- Hasta 16 bits con sobremuestreo por hardware
- Rango de conversión: 0 a 3,6V
8 temporizadores: 16 bits para control avanzado del motor, cuatro de 16 bits de uso general, dos watchdogs, temporizador SysTick
Calendario RTC con alarma y despertador periódico desde Stop/Standby
Interfaces de comunicación
- Dos interfaces de bus I²C compatibles con Fastmode Plus (1 Mbit/s) con disipador de corriente adicional, una compatible con SMBus/PMBus y activación desde el modo de parada
- Dos USART con maestro/esclavo
SPI síncrono; uno compatible con la interfaz ISO7816, LIN, capacidad IrDA, detección automática de la velocidad en baudios y función de despertador
- Dos SPI (32 Mbit/s) con trama de bits programable de 4 a 16 bits, uno multiplexado con interfaz I²S
Soporte de desarrollo: depuración por cable serie (SWD)
Todos los envases cumplen ECOPACK 2
Resumen funcional
Unidad de protección de memoria
La unidad de protección de memoria (MPU) se utiliza para gestionar los accesos de la CPU a la memoria y evitar que una tarea corrompa accidentalmente la memoria o los recursos utilizados por cualquier otra tarea activa.
La MPU es especialmente útil para aplicaciones en las que hay que proteger algún código crítico o certificado contra el mal comportamiento de otras tareas. Suele estar gestionada por un RTOS (sistema operativo en tiempo real). Si un programa accede a una posición de memoria prohibida por la MPU, el RTOS puede detectarlo y tomar medidas. En un entorno RTOS, el núcleo puede actualizar dinámicamente la configuración del área MPU, en función del proceso que se vaya a ejecutar. La MPU es opcional y puede omitirse para aplicaciones que no la necesiten.
Memoria Flash integrada
Los dispositivos STM32G030x6/x8 disponen de hasta 64 Kbytes de memoria Flash integrada para almacenar código y datos.
Se pueden configurar protecciones flexibles gracias a los bytes opcionales:
Protección de lectura (RDP) para proteger toda la memoria. Hay tres niveles disponibles:
Nivel 0: sin protección de lectura
Nivel 1: protección de lectura de memoria: no se puede leer ni escribir en la memoria Flash si están conectadas las funciones de depuración, el arranque en RAM o el cargador de arranque está seleccionado.
Nivel 2: protección de lectura del chip: las funciones de depuración (cable serie Cortex-M0+), arranque en RAM y selección del cargador de arranque están desactivadas.