Índice:
- Etapa 1: Placas com Core Arduino
- Etapa 2: STM32F746G DISCOVERY
- Etapa 3: Arduino Due X STM NUCLEO-L476RG
- Etapa 4: Dhrystone
- Etapa 5: STM32L432KC X Arduino Nano
- Etapa 6: STM32L432KC
- Etapa 7: Instale o Core Arduino para placas STM32L4
- Etapa 8: Instale o ST-Link - Programa que registra
- Etapa 9: Endereço Json
- Etapa 10: Conselhos: Gerente do Conselho
- Etapa 11: Bibliotecas: Gerenciador de bibliotecas
- Etapa 12: Baixe o PDF
Vídeo: O incrível STM32 L4 !: 12 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
Quero começar este artigo explicando que esta letra L (de L4) significa Baixo (ou, basicamente, Ultra Low Power). Assim, gasta pouca energia e mostra porque esse STM32 é incrível! Gasta microampères e possui um sistema interno que pode identificar o gasto de cada peça do chip. Isso permite uma gestão de energia muito eficiente e com alto desempenho.
Já falei sobre esse microcontrolador no vídeo, “A maneira mais fácil de programar um microcontrolador!” No vídeo, mostrei como programar o STM32 L4 com MBED. Mas enquanto pesquisava mais sobre o assunto, descobri algo que o fabricante STMicroelectronics não divulga. Ele implementou o Core Arduino no chip, que permite a programação por meio do IDE do Arduino.
Nesta imagem, temos duas versões de L4. O STM32L432KC é idêntico ao Arduino Nano e ao STM32L476RG, que possuem IOs equivalentes ao Arduino Uno. Então, enquanto trabalho com duas versões deste poderoso microcontrolador, vou mostrar como instalar o Arduino Core na família STM32. Além disso, explicarei as principais características dos Kits STM32.
Etapa 1: Placas com Core Arduino
Coloquei aqui uma lista sobre a diversidade. No entanto, vamos trabalhar com o STM32L432KC e o STM32L476RG.
STM32F0
- Nucleo F030R8
- Nucleo F091RC
- 32F0308DISCOVERY
STM32F1
- BluePill F103C8 (suporte básico, sem USB)
- MapleMini F103CB (suporte básico, sem USB)
- Nucleo F103RB
- STM32VLDISCOVERY
STM32F2
Nucleo F207ZG
STM32F3
- Nucleo F302R8
- Nucleo F303K8
- Nucleo F303RE
STM32F4
- Nucleo F401RE
- Nucleo F411RE
- Nucleo F429ZI
- Nucleo F446RE
- STM32F407G-DISC1
STM32F7
STM32F746G-DISCOVERY
STM32L0
- Nucleo L031K6
- Nucleo L053R8
- B-L072Z-LRWAN1
STM32L1
Nucleo L152RE
STM32L4
- Nucleo L432KC
- Nucleo L476RG
- NUCLEO-L496ZG-P
- NUCLEO-L496ZG-P
- B-L475E-IOT01A
Etapa 2: STM32F746G DISCOVERY
Só para ilustrar, apresento os detalhes de um STM32F746G DISCOVERY, que considero uma fera. Já encomendei este chip e espero falar sobre isso em breve.
Características:
Microcontrolador STM32F746NGH6 com 1 Mbytes de memória Flash e 340 Kbytes de RAM em um pacote BGA216
- ST-LINK / V2-1 integrado com suporte para recursos de reenumeração USB
- Habilitado para Mbed (mbed.org)
- Funções USB: porta COM virtual, armazenamento em massa e porta de depuração
- 4,3 polegadas 480 x 272 cores LCD-TFT com tela de toque capacitiva
- Conector de câmera
- Codec de áudio SAI
- Entrada e saída de linha de áudio
- Saídas de alto-falante estéreo
- Dois microfones ST MEMS
- Conector de entrada SPDIF RCA
- Dois botões (usuário e reset)
- Memória Flash Quad-SPI de 128 Mbits
- SDRAM de 128 Mbits (64 Mbits acessíveis)
- Conector para cartão microSD
- Conector RF-EEPROM da placa-filha
- USB OTG HS com conectores Micro-AB
- USB OTG FS com conectores Micro-AB
- Conector Ethernet compatível com IEEE-802.3-2002
- Cinco opções de fonte de alimentação:
- ST LINK / V2-1
- Conector USB FS
- Conector USB HS
- VIN do conector Arduino
- 5 V externo do conector
Saída da fonte de alimentação para aplicações externas:
- 3,3 V ou 5 V
Conectores Arduino Uno V3
Etapa 3: Arduino Due X STM NUCLEO-L476RG
Aqui está uma comparação com o Arduino Due, que é um ARM Cortex-M3. Usei este modelo em vídeos: Nema 23 Stepper Motor with Driver TB6600 com Arduino Due, e SpeedTest: Arduinos - ESP32 / 8266s - STM32, com STM NUCLEO-L476RG, que é um ARM Cortex-M4 Ultra Low Power, e está em a imagem do lado direito.
Arduino devido:
Microcontrolador: AT91SAM3X8E
Tensão operacional: 3,3 V
Tensão de entrada (recomendado): 7-12V
Tensão de entrada (limites): 6-16V
Pinos de E / S digital: 54 (dos quais 12 fornecem saída PWM)
Pinos de entrada analógica: 12
Pinos de saída analógica: 2 (DAC)
Corrente de saída DC total em todas as linhas de E / S: 130 mA
Corrente DC para pino de 3,3 V: 800 mA
Corrente DC para pino de 5 V: 800 mA
Memória Flash: 512 KB disponíveis para os aplicativos do usuário
SRAM: 96 KB (dois bancos: 64 KB e 32 KB)
Velocidade do relógio: 84 MHz
Comprimento: 101,52 mm
Largura: 53,3 mm
Peso: 36 g
STM NUCLEO-L476RG:
STM32L476RGT6 no pacote LQFP64
CPU ARM®32-bit Cortex®-M4
Acelerador adaptável em tempo real
(ART Accelerator ™) permitindo a execução do estado de espera 0 a partir da memória Flash
Frequência máxima da CPU de 80 MHz
VDD de 1,71 V a 3,6 V
1 MB Flash
SRAM de 128 KB
SPI (3)
I2C (3)
USART (3)
UART (2)
LPUART (1)
GPIO (51) com capacidade de interrupção externa
Sensor capacitivo com 12 canais
ADC de 12 bits (3) com 16 canais
DAC de 12 bits com 2 canais
FPU ou Unidade de Ponto Flutuante
* Destaco aqui o FPU separado do STM NUCLEO-L476RG, o que significa que o chip faz cálculos trigonométricos com velocidade incrível. É diferente do Arduino Due, que precisa de um processador genético para fazer isso.
Etapa 4: Dhrystone
Dhrystone é um programa de referência de computador sintético desenvolvido em 1984 por Reinhold P. Weicker, que se destina a ser representativo da programação de sistema (inteiro). Dhrystone se tornou um representante do desempenho geral do processador (CPU). O nome "Dhrystone" é um trocadilho com um algoritmo de benchmark diferente chamado Whetstone. Esta é uma medida tirada de algumas operações genéricas.
Este programa está aqui para compilar algo dentro desses microcontroladores no Arduino. E o resultado de dois testes que fiz, um com Dhrystone e outro do vídeo SpeedTest, são os seguintes:
Arduino devido: US $ 37,00
Dhrystone Benchmark, Versão 2.1 (Idioma: C)
A execução começa, 300.000 execuções em Dhrystone
Execução termina
Microssegundos para uma execução em Dhrystone: 10,70
Dhrystones por segundo: 93, 431,43
Classificação VAX MIPS = 53,18 DMIPS
Executando o teste Fernandok
Tempo total: 2, 458 ms
- Não tem FPU
- Software Dhrystone no Arduino
www.saanlima.com/download/dhry21a.zip
STM NUCLEO-L476RG: US $ 23,00
Dhrystone Benchmark, Versão 2.1 (Idioma: C)
A execução começa, 300.000 execuções em Dhrystone
Execução termina
Microssegundos para uma execução em Dhrystone: 9,63
Dhrystones por segundo: 103, 794,59
Classificação VAX MIPS = 59,07 DMIPS
Executando o teste Fernandok
Tempo total: 869 ms 2,8x MAIS RÁPIDO
- PI até 40Mbit / s, USART 10Mbit / s
- 2x DMA (14 canais)
- Até 80 MHz / 100 DMIPS com ART Accelerator
Etapa 5: STM32L432KC X Arduino Nano
A placa esquerda é a STM32L432KC, na qual a STMicroelectronics colocou a pinagem Arduino Nano idêntica na imagem à direita.
Etapa 6: STM32L432KC
Ultra-low-power Arm® Cortex®-M4 32 bits
MCU + FPU, 100DMIPS, Flash de até 256 KB, SRAM de 64 KB, USB FS, analógico, áudio
Até 26 IOs mais rápido, mais tolerante a 5V
- RTC com calendário HW, alarmes e calibração
- Até 3 canais de detecção capacitiva
- 11x Timers: controle de motor avançado de 1x16 bits
1x 32 bits e 2x 16 bits de uso geral, 2x 16 bits básicos, 2x timers de 16 bits de baixa potência (disponível no modo Stop), 2 watchdogs, SysTick timer
Memória:
- Flash de até 256 KB, proteção de leitura de código proprietário
- 64 KB SRAM incluindo 16 KB com verificação de paridade de hardware
- Interface de memória Quad SPI
Periféricos analógicos ricos (fornecimento independente)
- 1x ADC de 12 bits 5 Msps, até 16 bits com sobreamostragem de hardware, 200 μA / Msps
- 2 canais de saída DAC de 12 bits, baixo consumo de energia
- 1 amplificador operacional com PGA integrado
- 2x em comparação com interfaces de ultra-baixo consumo de energia
- 1x UPS (interface de áudio serial)
- 2x I2C FM + (1 Mbit / s), SMBus / PMBus
- 3 USARTs (ISO 7816, LIN, IrDA, modem)
- 1x LPUART (Stop 2 wake up)
- 2x SPI (e 1x SPI Quad)
- CAN (2,0B ativo)
- Protocolo mestre de fio único SWPMI I / F
- IRTIM (interface infravermelha)
- Controlador DMA de 14 canais
- Gerador de números aleatórios
Etapa 7: Instale o Core Arduino para placas STM32L4
- Instale o programa ST-Link que grava
- Endereço Json
- Placas: Card Manager
- Bibliotecas: Gerenciador de Bibliotecas
Etapa 8: Instale o ST-Link - Programa que registra
Baixe o arquivo em https://www.st.com/en/development-tools/stsw-link0…. Basta registrar, baixar e instalar o dispositivo.
Etapa 9: Endereço Json
Nas propriedades, inclua o seguinte endereço:
github.com/stm32duino/BoardManagerFiles/ra…
Etapa 10: Conselhos: Gerente do Conselho
No Arduino Board Manager, instale o STM32 Core, que tem cerca de 40 MB.
Etapa 11: Bibliotecas: Gerenciador de bibliotecas
Finalmente, instale as bibliotecas.
Gostei pessoalmente do grupo STM32duino.com, que tem vários exemplos, alguns dos quais instalei. Também baixei um FreeRTOS, do qual gostei muito. Achei rápido e confiável. Eu também instalei (mas ainda não testei) LRWAN. Em breve direi se é bom ou não.
Etapa 12: Baixe o PDF
Recomendado:
Incrível show de luzes do Dia das Bruxas com música !: 5 etapas
Incrível show de luzes de Halloween com música !: Para este projeto, fiz uma exibição de luzes de Halloween com algumas luzes especiais chamadas pixels RGB que são sincronizadas com 4 músicas de Halloween. Se você gostaria de ver esses shows de luzes e outros futuros, clique aqui. Este show de luzes pode ser difícil de construir
Como criar uma imagem de perfil incrível para seu Chromebook: 9 etapas
Como criar uma imagem de perfil incrível para o seu Chromebook: Olá a todos! Este é o Gamer Bro Cinema, e hoje vamos ensinar a você como fazer uma foto de perfil incrível para o seu canal do YouTube! Este tipo de foto de perfil só pode ser feito em um Chromebook. Vamos começar
Órgão / sintetizador analógico incrível usando apenas componentes discretos: 10 etapas (com imagens)
Órgão / sintetizador analógico incrível usando apenas componentes discretos: os sintetizadores analógicos são muito legais, mas também muito difíceis de fazer. Então, eu queria fazer um o mais simples possível, para que seu funcionamento fosse facilmente compreensível. Para que funcione, você precisa de alguns sub-circuitos básicos: Um oscilador simples com resis
Conversor de reforço baseado em Esp8266 com uma incrível interface de usuário Blynk com regulador de feedback: 6 etapas
Conversor de reforço baseado em Esp8266 com uma incrível interface do usuário Blynk com regulador de feedback: Neste projeto, vou mostrar uma maneira eficiente e comum de como aumentar as tensões CC. Vou mostrar como pode ser fácil construir um conversor boost com a ajuda de um Nodemcu. Vamos construir. Ele também inclui um voltímetro na tela e um feedback
INCRÍVEL lâmpada LED para exterior com energia solar DIY: 9 etapas
INCRÍVEL lâmpada LED para exterior com energia solar DIY: Olá! Neste Instructable, você pode aprender a construir uma lâmpada LED com energia solar barata e fácil! Ele carrega uma bateria durante o dia e acende um LED COB muito brilhante à noite! Basta seguir as etapas! Você consegue! É muito fácil e divertido! Este des