Arduino, Eletrônica, Software

STM32F103C8T6

Comumente chamado de “Blue Pill” esta placa com microcontrolador ARM é uma interessante alternativa ao ATmega328P encontrado no Arduino UNO, Pro Mini ou Nano. Este post é uma anotação com detalhes para uso rápido, Informações mais detalhadas em STM32duino.com ou a diretamente na wiki do “blue pill

  • ARM Cortex M3
  • 72 MHz
  • 64 KB/128 KB Flash
  • 20 KB RAM
  • Botão de Reset
  • LED no pino PC13
  • “Real time clock” com cristal de 32 kHz
  • Jump nos pinos Boot0 e Boot1
  • Conector Micro USB para alimentação e dados
  • Conector ST-Link no topo da placa
  • 10 pinos ADC de 12bit

Diagrama dos pinos e suas funções:

Diagrama esquemático da placa:

Instalação rápida no IDE Arduino 1.8.9

  • Abra a IDE Arduino, vá em “Ferramentas> Placa> Gerenciador de placas” (Tools -> Boards -> Boards Manager). Instale o “Arduino SAM Boards” package (includes the Arduino Due) da lista de placas disponíveis. Com isso você instalou suporte à compilação para ARM Cortex-M3.
  • Faça download do arquivo .zip que contém as bibliotecas Arduino STM32 através do link
    github.com/rogerclarkmelbourne/Arduino_STM32/archive/master.zip .
  • Descompacte o arquivo, copie, vá em sua pasta de sketches do Arduino (geralmente fica em “meus documentos), crie uma pasta dentro dela com nome “hardware” e cole dentro dela a pasta “Arduino_STM32” que você copiou antes. Example: C:\Usuários\<user>\Documentos\Arduino\hardware\Arduino_STM32
  • Reinicie o Programa do Arduino.

Ligação elétrica / Primeiro Uso

As placas com o STM32F103C8T6 geralmente são fornecidas com bootloader via porta serial e não o bootloader via USB. Então provavelmente você vai precisar de um adaptador USB>Serial como o FTDI , CH340 ou Prolific 2303 etc… para fazer a gravação de seus programas. USB bootloader consome 20kB de 64KB da memória principal. Então se espaço não não for problema, bootloader com USB nativo é muto mais rápido e evita uso de adaptador e ficar mexendo no Jump da placa. Este vídeo mostra de forma concisa e didática como instalar o bootloader USB.

Opção 1: com serial Bootloader

Com adaptador USB> Serial, conecte:

  • GND > GND (STM32)
  • 3.3V > 3V (STM32)
  • TX > Pino A10 (STM32)
  • RX > Pino A9 (STM32)
  • Vá em (ferramentas->Placa) e escolha “Generic STM32103C series” depois em (ferramentas->Upload Method) escolha “Serial”
  • Antes de gravar qualquer programa nele, coloque o Jump BOOT 0 em “1”e pressione reset da placa.
  • Após feita a transferência do código, volte o Jump BOOT 0 para “0” e pressione reset da placa.

Opção 2: Utilizando o ST-LINK V2:

Conecte os pinos 2(swclk), 4(swdio), 6(GND), 8(3,3v) do ST-LINK nos 4 pinos próximos aos LEDs da placa conforme o “Diagrama dos pinos e suas funções” descrito na imagem acima.

  • Procure no site da STM os Drivers para o ST-LINK v2, “STSW-LINK009” baixe e instale.
  • Vá em (ferramentas->Placa) e escolha “Generic STM32103C series” depois em (ferramentas->Upload Method) escolha “STLink”