Microcontroladores da série STM32G4 MCUs de alto desempenho

A série STM32G4 foi lançada em junho de 2019 como uma atualização da série F3, oferecendo desempenho aprimorado e recursos analógico-digitais. Ela apresenta atualizações em termos de desempenho, periféricos e segurança.

Sobre o STM32G4

O microcontrolador de alto desempenho STM32G4 é uma criação exclusiva de última geração da ST, com desempenho excepcional adequado para aplicações como controle de motores, equipamentos industriais, energia digital, controle de ponta e muito mais. Ele possui um núcleo Cortex-M4 de 170 MHz com unidade de ponto flutuante integrada, unidade de multiplicação e acumulação de instrução única, Cordic (cálculo de função trigonométrica baseado em hardware), comparadores de alta velocidade, amplificadores operacionais de alta velocidade, ADCs de alta velocidade, DACs de alta velocidade, suporte a CAN FD, capacidade de atualização online, suporte a AES e segurança da informação, USB Type-C PD3.0 integrado e combina alto desempenho com características de baixo consumo de energia.

Arquitetura do STM32G4

A nova arquitetura do STM32G4 baseia-se no DNA geral do STM32F3, mas incorpora recursos inovadores e otimizados para atender às necessidades específicas de vários mercados. Por exemplo, a inclusão de um acelerador matemático melhora significativamente o desempenho em aplicações FOC (Field-Oriented Control) de controle de motores. O CAN FD oferece grande suporte a aplicações de energia digital em ambientes industriais. Ao integrar mais componentes analógicos e digitais no chip, o STM32G4 pode criar fontes de alimentação mais densas e potentes para centros de servidores e atender a produtos de consumo econômicos que exigem soluções de energia digital. O STM32G4 também abre caminho para projetos futuros, como o surgimento de dispositivos de carboneto de silício (SiC) ou nitreto de gálio (GaN) no setor automotivo, que exigem temporizadores mais precisos para acomodar frequências de comutação mais altas. Com seus temporizadores de alta resolução de 12 canais, o STM32G4 pode impulsionar projetos envolvendo esses componentes, permitindo o desenvolvimento de produtos eletrônicos de ponta.

Especificações do STM32G4

Os dispositivos STM32G431x6/x8/xB são baseados no núcleo RISC Arm® Cortex®-M4 de 32 bits de alto desempenho, operando em frequências de até 170 MHz. O núcleo Cortex-M4 inclui uma unidade de ponto flutuante de precisão simples (FPU) e suporta todas as instruções e tipos de dados de processamento de dados de precisão simples da Arm.

Esses dispositivos fornecem dois ADCs rápidos de 12 bits (5 MSPS), quatro comparadores, três amplificadores operacionais, quatro canais DAC (dois externos e dois internos), um buffer de referência de tensão interno, um RTC de baixa potência, um temporizador de 32 bits de uso geral, dois temporizadores PWM de 16 bits dedicados ao controle do motor, sete temporizadores de 16 bits de uso geral e um temporizador de 16 bits de baixa potência.

en.obn stm32g4 series ss2024
(Crédito da imagem: ST)

O microcontrolador STM32G4 no pacote LQFP64 (Arm® Cortex®-M4 a 170 MHz) inclui:

  • STM32G431RBT6: 128 KB de Flash e 32 KB de SRAM;
  • STM32G491RET6: 512 KB de Flash e 96 KB de SRAM;
  • STM32G474RET6: 512 KB de Flash e 128 KB de SRAM;
  • Totalmente compatível com STM32G473RET6 (512 KB de Flash e 128 KB de SRAM).
  • 1 LED de usuário;
  • 1 botão de usuário e 1 botão de reinicialização;
  • Oscilador de cristal LSE de 32,768 kHz; 
  • Oscilador HSE de 24 MHz;
  • Conectores da placa de circuito:
  • USB com Micro AB;
  • Conector de depuração MIPI®;
  • Conector de expansão ARDUINO® Uno V3;
  • Conector de pinos de extensão ST morpho para acesso total a todas as E/S STM32G4;
  • Opções de alimentação flexíveis: ST-LINK, USB VBUS ou alimentação externa;
  • Depurador/programador STLINK-V3E com recurso de renumeração USB: grande capacidade de armazenamento, porta COM virtual e porta de depuração;
  • O pacote de software MCU STM32CubeG4 oferece uma biblioteca de software gratuita abrangente e exemplos;
  • Suporte para vários ambientes de desenvolvimento integrado (IDEs), incluindo MDK-ARM e STM32CubeIDE.

Bancos de memória flash duplos e área de armazenamento segura

Uma característica essencial do MCU STM32G47x são os bancos duplos de memória flash. Essencialmente, o MCU divide a memória flash em duas áreas físicas de armazenamento com capacidades de leitura e gravação (RWW). Isso permite baixar, instalar e executar novos firmwares sem qualquer interferência. O sistema opera em um banco de memória, enquanto o outro recebe o novo firmware. O sistema pode então trocar os bancos de memória e fazer a transição perfeita para a execução do novo código. Os desenvolvedores também podem proteger a operação de download usando novos recursos de segurança disponíveis no STM32G4, como áreas de armazenamento seguro. Essas áreas de armazenamento seguro podem armazenar chaves ou partes do código para rotinas de software e executá-las apenas uma vez após uma reinicialização, tornando-as invisíveis para o código do usuário a partir de então.

Um temporizador de alta resolução e três temporizadores avançados de controle do motor

A série STM32G4 é a primeira a incluir temporizadores com resoluções inferiores a 200 picossegundos na arquitetura ST MCU. Uma vantagem notável é que o G4 pode acionar fontes de alimentação de alta precisão em topologias ressonantes LLC. Com sete bases de tempo disponíveis, os desenvolvedores podem combiná-las para uma modulação extremamente precisa, e o temporizador também oferece modulação por largura de pulso (PWM) altamente flexível. O temporizador de alta resolução vem equipado com manipuladores de eventos, facilitando aos engenheiros a configuração e invocação de temporizadores ou o uso deles para gerar interrupções.

Características do STM32G4

Desempenho robusto

O STM32G4, baseado no núcleo Arm® Cortex®-M4, suporta o conjunto de instruções FPU e DSP, com uma frequência de núcleo de até 170 MHz. Esta é uma melhoria significativa em relação à frequência de núcleo de 72 MHz das séries STM32F3 e STM32F1. Além disso, o STM32G4 introduz três aceleradores de hardware: acelerador ART (cache dinâmico), CCM-SRAM (cache estático) e um acelerador de cálculo matemático.

Em termos de rendimento computacional, o STM32G4 é comparável à série STM32F4. Como membro do domínio de microcontroladores de "sinal misto", o STM32G4 oferece recursos novos e otimizados para aplicações digitais e analógicas. Seu núcleo Cortex-M4 opera a uma frequência máxima de 170 MHz, com 213 DMIPS e uma pontuação CoreMark de até 550. A arquitetura do produto incorpora inúmeras melhorias de otimização para aumentar a conveniência e os recursos de desenvolvimento durante o processo de design.

STM32G4 Features
STM32G4 Features

Periféricos analógicos-digitais integrados avançados

Uma das características mais marcantes do STM32G4 é seu rico conjunto de periféricos analógicos integrados, incluindo ADCs, DACs, amplificadores operacionais e comparadores. A série STM32G4 oferece até 25 periféricos analógicos em sua configuração MCU mais alta.

Funções otimizadas

Além de seus abundantes periféricos analógicos, o STM32G4 também integra funções otimizadas para processamento de sinais. Por exemplo, os conversores analógico-digitais incluem compensação de ganho e desvio no hardware, reduzindo a carga da CPU e melhorando o desempenho. Da mesma forma, o sistema pode lidar de forma automática e contínua com exceções de hardware até oito vezes. Quando o sistema amostra sinais além de sua janela de watchdog, uma rotina é normalmente projetada para reamostrar o sinal para avaliar se é uma falha ou um problema sistêmico. Devido ao alto nível de integração de hardware no STM32G4, os desenvolvedores podem gerenciar eventos excepcionais com mais eficiência.

Baixo consumo de energia

Quando uma MCU universal enfrenta baixos requisitos de energia, os modos dinâmicos de eficiência energética do STM32G4 reduzem o consumo de energia em mais de duas vezes em comparação com DSPs concorrentes com desempenho semelhante.

Integração de sistemas em chip

Com pacotes menores e menos componentes externos, o STM32G4 integra todas as funções analógicas no chip, reduzindo o tamanho da placa de circuito impresso (PCB) e os custos da lista de materiais (BOM).

Novos aceleradores matemáticos

O STM32G4 é o primeiro STM32 a apresentar dois aceleradores matemáticos: um para cálculos trigonométricos (Computador Digital de Rotação de Coordenadas ou CORDIC) e outro para funções de filtragem digital (Acelerador Matemático de Filtragem ou FMAC). O CORDIC é particularmente vantajoso para operações vetoriais, comumente usadas no controle orientado por campo (FOC) do controle do motor. Ele também fornece aceleração de hardware para funções trigonométricas frequentemente encontradas no controle do motor, metrologia, processamento de sinais e outras aplicações. Por outro lado, o FMAC pode ser usado para gerar compensadores de três pólos e três zeros (3p3z) (potência digital), moduladores Sigma-Delta e modeladores de ruído no processamento de sinais. Ele também suporta a implementação de dois filtros digitais primários no processamento de sinais: filtros de resposta impulsional finita (FIR) e resposta impulsional infinita (IIR).

Novos aceleradores matemáticos

O STM32G4 é o primeiro STM32 a apresentar dois aceleradores matemáticos: um para cálculos trigonométricos (Computador Digital de Rotação de Coordenadas ou CORDIC) e outro para funções de filtragem digital (Acelerador Matemático de Filtragem ou FMAC). O CORDIC é particularmente vantajoso para operações vetoriais, comumente usadas no controle orientado por campo (FOC) do controle do motor. Ele também fornece aceleração de hardware para funções trigonométricas frequentemente encontradas no controle do motor, metrologia, processamento de sinais e outras aplicações. Por outro lado, o FMAC pode ser usado para gerar compensadores de três pólos e três zeros (3p3z) (potência digital), moduladores Sigma-Delta e modeladores de ruído no processamento de sinais. Ele também suporta a implementação de dois filtros digitais primários no processamento de sinais: filtros de resposta impulsional finita (FIR) e resposta impulsional infinita (IIR).

Aplicações do STM32G4

O STM32G4, como um produto baseado na arquitetura Arm Cortex-M4, destina-se a aplicações MCU convencionais. Ele foi projetado principalmente para controle de motores, equipamentos industriais, instrumentos de medição, aplicações de consumo de alta tecnologia e energia digital, oferecendo uma combinação de processamento de sinais digitais e analógicos para atender às necessidades dos usuários. Os mercados-alvo incluem conversão de energia digital, abrangendo carregamento sem fio, energia para telecomunicações, acionamento de motores, controle de LED, máquinas de solda, aplicações industriais, sistemas UPS, correção do fator de potência, servidores, centros de dados, inversores fotovoltaicos e muito mais.

STM32G4 Applications
STM32G4 Applications

Ramos do STM32G4

STM32G4 Series Model
STM32G4 Series Model

STM32G4x1 e STM32G4x3 são voltados para aplicações gerais e de controle de motores.

O STM32G4x1 é a série básica, com uma configuração inicial de periféricos analógicos e banco de memória flash único. Os tamanhos de memória flash suportados variam de 32 KB a 512 KB.

O STM32G4x3 é a série aprimorada, oferecendo mais periféricos analógicos em comparação com os dispositivos básicos, juntamente com bancos de memória flash duplos. Os tamanhos da memória flash também foram aumentados, variando de 128 KB a 512 KB, tornando-o adequado para aplicações mais avançadas.

O STM32G4x4 visa mercados específicos, como energia digital, e é a série de alta resolução. Além do rico conjunto de periféricos analógicos e recursos de memória disponíveis na série aprimorada, a série STM32G4x4 também inclui temporizadores de alta resolução, um gerador de forma de onda complexo e um manipulador de eventos, tornando-a particularmente adequada para aplicações de energia digital, como fontes de alimentação digitais comutadas, iluminação, soldagem, energia solar e carregamento sem fio.

Ecossistema de desenvolvimento STM32G4

O STM32G4 continua a se basear no ecossistema STM32 e ARM Cortex-M4, oferecendo recursos de hardware como:

  • Placas de desenvolvimento NUCLEO para suporte ao MCU STM32G4.
  • Placas de avaliação completas: STM32G474E-EVAL e STM32G484E-EVAL, com criptografia e acelerômetros integrados.
  • Ferramentas completas de desenvolvimento de controle de motor: placa de desenvolvimento dedicada ao controle de motor Nucleo (P-NUCLEO-IHM03).
  • Kits de descoberta: B-G474E-DPOW1*, B-G431B-ESC1*.

Essas ferramentas e recursos permitem que os desenvolvedores explorem e desenvolvam aplicativos com eficiência usando a família de microcontroladores STM32G4.

STM32G4 Hardware Tools
STM32G4 Hardware Tools

As ferramentas de software STM32G4 incluem: STM32CubeMX, compilação e depuração de IDEs e ferramentas de programação STM32.

STM32G4 Software Tools
STM32G4 Software Tools

Projeto da placa de desenvolvimento STM32G4 - Acendendo o LED

A placa de desenvolvimento STM32G431 possui um botão de usuário e uma luz LED. De acordo com o diagrama esquemático, LD2 está conectado a PA5. Se você deseja acender o LED, PA5 deve estar em nível alto. O botão de usuário B1 está conectado a PC13 e fica em nível alto quando pressionado.

STM32G431 Development Board Schematic Diagram
STM32G431 Development Board Schematic Diagram

Seletor MCU

O modelo de chip utilizado neste exemplo é: STM32G431RBT6; 128 KB de memória flash e 32 KB de SRAM, com uma frequência de operação de até 170 MHz.

MCUMPU Selector-STM32G4 Series STM32G431RB STM32CubeMX
MCUMPU Selector-STM32G4 Series STM32G431RB STM32CubeMX

Configuração do relógio

Clock Configuration-High Speed Clock(HSE) CrystalCeramic Resonator STM32CubeMX
Clock Configuration-High Speed Clock(HSE) CrystalCeramic Resonator STM32CubeMX
Clock Configuration Input frequency STM32CubeMX
Clock Configuration-Input frequency STM32CubeMX

Configuração dos pinos GPIO

GPIO Setting-Pins Configuration (PA5) STM32CubeMX
GPIO Setting-Pins Configuration (PA5) STM32CubeMX
GPIO Setting-Pins Configuration (PC13) STM32CubeMX
GPIO Setting-Pins Configuration (PC13) STM32CubeMX

Gerente de Projetos

Project Manager-Project Settings STM32CubeMX
Project Manager-Project Settings STM32CubeMX
Project Manager-Code Generator STM32CubeMX
Project Manager-Code Generator STM32CubeMX

Configuração dos pinos LED e botão

LED and Button Pin Configuration STM32CubeMX
LED and Button Pin Configuration STM32CubeMX

Função do botão

				
					/*Get key value*/
uint8_t Get_KeyVal(void)
{
   uint8_t static stat=0;
   if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==1 && stat==0)//Determine whether the button is pressed
   {
     HAL_Delay(20);//Delay debounce
     stat=1;
     if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin))return 1;
   }
   else if(HAL_GPIO_ReadPin(USER_GPIO_Port,USER_Pin)==0)
   {
     stat=0;
   }
   return 0;
}
				
			

Função principal:

				
					uint8_t key;
   /* USER CODE END 2 */

   /* Infinite loop */
   /* USER CODE BEGIN WHILE */
   while (1)
   {
     /* USER CODE END WHILE */

     /* USER CODE BEGIN 3 */
     key=Get_KeyVal();
     if(key)
     {
       HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
     }
   }
				
			

Compartilhar em:

Rolar para cima

Cotação instantânea

Instant Quote