Índice:
Vídeo: Configurando o Blue Pill Board no STM32CubeIDE: 8 etapas
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
A Blue Pill é uma placa de desenvolvimento ARM muito barata. Tem como processador um STM32F103C8 que possui 64 kbytes de memória flash e 20 kbytes de memória RAM. Ele roda a até 72 MHz e é a maneira mais barata de entrar no desenvolvimento de software embarcado ARM.
A maioria dos projetos de exemplo e como descrever a programação da placa Blue Pill usando o ambiente Auduino. Embora funcione e seja uma maneira de começar, tem suas limitações. O ambiente do Arduino protege você um pouco do hardware subjacente - esse é seu objetivo de design. Por causa disso, você não poderá tirar proveito de todos os recursos que o processador oferece, e a integração de um sistema operacional em tempo real não é realmente suportada. Isso significa que o ambiente Arduino não é amplamente utilizado na indústria. Se você deseja fazer carreira no desenvolvimento de software embarcado, o Arduino é um bom ponto de partida, mas você precisa seguir em frente e usar um ambiente de desenvolvimento que seja usado industrialmente. A ST oferece um ambiente de desenvolvimento totalmente gratuito para seus processadores, chamado STM32CubeIDE. É amplamente utilizado na indústria, por isso é uma boa opção para seguir em frente.
No entanto, e este é o grande no entanto, STM32CubeIDE é terrivelmente complicado e é um software difícil de usar. Ele suporta todos os recursos de todos os processadores ST e permite que eles sejam configurados intimamente, o que você não encontra no IDE do Arduino porque é tudo feito para você.
Você precisa configurar sua placa como uma primeira etapa no STM32CubeIDE. O IDE conhece as próprias placas de desenvolvimento do ST e as configura para você, mas o Blue Pill, embora use um processador ST, não é um produto ST, então você está sozinho aqui.
Este manual orienta você no processo de configuração de sua placa Blue Pill, habilitando uma porta serial e escrevendo algum texto. Não é muito, mas é um primeiro passo importante.
Suprimentos
STM32CubeIDE - download do site da ST. Você precisa se registrar e o download demora um pouco.
Uma placa de comprimido azul. Você pode obtê-los no ebay. Você precisa de um que tenha um processador ST genuíno, o que alguns não têm. No ebay, amplie a imagem e procure o logotipo ST no processador.
Um depurador / programador ST-LINK v2 disponível no ebay por alguns quilos.
Um cabo serial FTDI TTL para USB 3.3V para saída e 2 fios conector macho para fêmea para conectá-lo.
Um programa de terminal serial como PuTTY.
Etapa 1: Criação de um novo projeto
- Inicie o STM32CubeIDE e, a partir do menu, escolha Arquivo | Novo | Projeto STM32.
- Na caixa Pesquisar número de peça, digite STM32F103C8.
- Na lista de MCUs / MPUs você deve ver STM32F103C8. Selecione esta linha como na imagem acima.
- Clique em Avançar.
- Na caixa de diálogo Configuração do projeto, dê a você um nome para o projeto.
- Deixe tudo como está e clique em Concluir. Seu projeto aparecerá à esquerda no painel Project Explorer.
Etapa 2: Configurando o Processador
- No painel Project Explorer, abra seu projeto e clique duas vezes no arquivo.ioc.
- Na guia Projeto e configuração, expanda Núcleo do sistema e selecione SYS.
- Em SYS Mode and Configuration na lista suspensa Debug, escolha Serial Wire.
- Agora selecione RCC na lista System Core logo acima de SYS que você selecionou acima.
- Em RCC Mode & Configuration do menu suspenso High Speed Clock (HSE), selecione Crystal / Ceramic Resonator.
- Agora em Categorias novamente, abra Conectividade e selecione USART2.
- Em Modo USART2 e Configuração na lista suspensa Modo, selecione Assíncrono.
- Agora selecione a guia Clock Configuration e vá para a próxima etapa.
Etapa 3: Configurando os Relógios
Agora você pode ver um diagrama de relógio bastante assustador, mas ele só precisa ser configurado uma vez. Isso é o mais difícil de descrever aqui, pois o diagrama é complexo. Todas as coisas que você precisa mudar estão destacadas na imagem acima.
- A placa Blue Pill vem com um cristal de 8 MHz e é esse o padrão do diagrama de configuração do clock, então não precisamos mudar isso.
- Em PLL Source Mux, selecione a opção inferior, HSE.
- Apenas à direita defina PLLMul para X9.
- À direita novamente em System Clock Mux, selecione PLLCLK.
- À direita novamente em APB1 Prescalar, selecione / 2.
- É isso. Se você vir alguma parte do diagrama destacada em roxo, você fez algo errado.
Etapa 4: Salvar e construir
- Salve a configuração.ioc com Ctrl-S. Quando for perguntado se você deseja gerar o código, selecione Sim (e marque Lembrar minha decisão para que você não seja questionado todas as vezes). Você pode fechar o arquivo.ioc.
- Agora faça uma construção a partir do menu Projeto | Construir Projeto.
Etapa 5: Adicionando Algum Código
Agora vamos adicionar algum código para usar a porta serial que configuramos.
- No Project Explorer, abra Core / Src e clique duas vezes em main.c para editá-lo.
- Role para baixo até encontrar a função main () e adicione o código mostrado abaixo logo abaixo do comentário / * USER CODE BEGIN 3 * / então faça uma compilação novamente.
HAL_UART_Transmit (& huart2, (uint8_t *) "Olá, mundo! / R / n", 15U, 100U);
Em seguida, é necessário conectar o hardware e experimentar.
Etapa 6: Conectando o Hardware
Conectando o ST-LINK v2
O ST-LINK v2 deve ter vindo com um cabo de fita de 4 fios fêmea para fêmea. Você precisa fazer as seguintes conexões:
Pílula Azul para ST-LINK v2
GND para GND
CLK para SWCLK
DIO para SWDIO
3,3 a 3,3 V
Veja a primeira imagem acima.
Conectando o cabo serial
Se você voltar ao arquivo.ioc e olhar o diagrama do chip à direita, verá que a linha Tx do UART2 está no pino PA2. Portanto, conecte o pino com a etiqueta PA2 na placa Blue Pill à conexão com o fio amarelo no cabo serial FTDI. Conecte também um dos pinos de aterramento do Blue Pill (identificado como G) ao fio preto no cabo serial FTDI.
Veja a segunda imagem acima.
Etapa 7: depuração
Conecte seu cabo serial FTDI e acione um terminal serial a 115200 baud. Em seguida, conecte seu ST-LINK v2 e você está pronto para começar.
- Em STM32CubeIDE, escolha Executar | Depurar. Quando uma caixa de diálogo Depurar como for exibida, escolha Aplicativo STM32 Cortex-M C / C ++ e OK.
- Quando uma caixa de diálogo Editar configuração for exibida, pressione OK.
- O depurador será interrompido na primeira linha de main (). No menu, escolha Run | Resume e verifique as mensagens no terminal serial.
Etapa 8: fazer mais
É isso, seu primeiro aplicativo STM32CubeIDE está configurado e funcionando. Este exemplo não faz muito - apenas envia alguns dados pela porta serial.
Para usar outros periféricos e escrever drivers para dispositivos externos, você precisa lidar com aquele editor de configuração assustador novamente! Para ajudar, eu produzi uma série de projetos de exemplo STM32CubeIDE que configuram e exercitam todos os periféricos no processador do Blue Pill em pequenos projetos fáceis de entender. Eles são todos de código aberto e você é livre para fazer o que quiser com eles. Cada periférico é configurado e, em seguida, tem um código de amostra para exercitá-lo isoladamente (quase!) Para que você possa se concentrar em colocar apenas um periférico em funcionamento por vez.
Existem também drivers para dispositivos externos desde chips simples EEPROM até sensores de pressão, LCDs de texto e gráficos, modem SIM800 para TCP, HTTP e MQTT, teclados, módulos de rádio, USB e também integração com FatFS, cartões SD e FreeRTOS.
Todos eles podem ser encontrados no Github aqui …
github.com/miniwinwm/BluePillDemo