Indholdsfortegnelse:

Opsætning af Blue Pill Board i STM32CubeIDE: 8 trin
Opsætning af Blue Pill Board i STM32CubeIDE: 8 trin

Video: Opsætning af Blue Pill Board i STM32CubeIDE: 8 trin

Video: Opsætning af Blue Pill Board i STM32CubeIDE: 8 trin
Video: Programmering af STM32 Blue Pill med LDmicro PLC Ladder Logic 2024, November
Anonim
Opsætning af Blue Pill Board i STM32CubeIDE
Opsætning af Blue Pill Board i STM32CubeIDE
Opsætning af Blue Pill Board i STM32CubeIDE
Opsætning af Blue Pill Board i STM32CubeIDE

The Blue Pill er et meget billigt ARM -udviklingsbræt med bare ben. Den har en STM32F103C8 som processor, der har 64 kbyte flash og 20 kbytes RAM -hukommelser. Det kører op til 72 MHz og er den billigste måde at komme ind på ARM -integreret softwareudvikling på.

De fleste eksempler på projekter og hvordan man beskriver programmering af Blue Pill -kortet ved hjælp af Auduino -miljøet. Selvom dette virker og er en måde at komme i gang på, har det sine begrænsninger. Arduino -miljøet beskytter dig lidt fra den underliggende hardware - det er dets designmål. På grund af dette vil du ikke være i stand til at drage fordel af alle de funktioner, processoren tilbyder, og integrering af et real -time operativsystem understøttes ikke rigtigt. Det betyder, at Arduino -miljøet ikke er meget udbredt i industrien. Hvis du ønsker at gøre karriere inden for integreret softwareudvikling, er Arduino et godt udgangspunkt, men du skal videre og bruge et udviklingsmiljø, der bruges industrielt. ST giver hjælpsomt en helt gratis udviklingsmiljøpakke til deres processorer kaldet STM32CubeIDE. Dette er meget udbredt i industrien, så det er godt at gå videre til.

Men dette er den store, men STM32CubeIDE er frygteligt kompliceret og er et skræmmende stykke software at bruge. Det understøtter alle funktioner i alle ST's processorer og giver dem mulighed for at blive intimt konfigureret, som du ikke støder på i Arduino IDE, fordi det hele er gjort for dig.

Du skal konfigurere dit bord som et første trin i STM32CubeIDE. IDE kender til ST's egne udviklingstavler og opretter dem til dig, men den blå pille, mens du bruger en ST -processor, er det ikke et ST -produkt, så du er alene her.

Denne instruktive tager dig igennem processen med at konfigurere dit Blue Pill -kort, aktivere en seriel port og skrive noget tekst ud. Det er ikke meget, men det er et vigtigt første skridt.

Forbrugsvarer

STM32CubeIDE - download fra ST's websted. Du skal registrere, og det tager et stykke tid at downloade.

Et Blue Pill bord. Du kan få dem fra ebay. Du har brug for en, der har en ægte ST -processor på, som nogle ikke gør. Zoom ind på ebay på billedet og se efter ST -logoet på processoren.

En ST-LINK v2 debugger/programmer tilgængelig fra ebay for et par pund.

Et FTDI TTL til USB 3.3V serielt kabel til output og 2 han til hun header ledninger til at forbinde det.

Et serielt terminalprogram som PuTTY.

Trin 1: Oprettelse af et nyt projekt

Oprettelse af et nyt projekt
Oprettelse af et nyt projekt
Oprettelse af et nyt projekt
Oprettelse af et nyt projekt
  1. Start STM32CubeIDE, og vælg derefter Filer | Ny | STM32 -projekt i menuen.
  2. Indtast STM32F103C8 i feltet Søgning efter delenummer.
  3. På listen over MCU'er/MPU'er skal du se STM32F103C8. Vælg denne linje som på billedet ovenfor.
  4. Klik på Næste.
  5. Giv projektet et navn i dialogboksen Projektopsætning.
  6. Lad alt andet være som det er, og klik på Afslut. Dit projekt vises til venstre i ruden Project Explorer.

Trin 2: Konfiguration af processoren

Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
Konfiguration af processoren
  1. Åbn dit projekt i ruden Project Explorer, og dobbeltklik på.ioc -filen.
  2. Udvid System Core på fanen Projekt og konfiguration, og vælg derefter SYS.
  3. Vælg Serial Wire under SYS-tilstand og konfiguration i rullemenuen Debug.
  4. Vælg nu RCC i System Core -listen lige over SYS, du valgte ovenfor.
  5. Vælg Crystal/Ceramic Resonator under RCC Mode & Configuration fra rullemenuen High Speed Clock (HSE).
  6. Nu under Kategorier igen, skal du åbne Forbindelser og vælge USART2.
  7. Vælg Asynkron under USART2-tilstand og konfiguration fra rullemenuen Tilstand.
  8. Vælg nu fanen Urkonfiguration og gå til næste trin.

Trin 3: Konfiguration af urene

Konfiguration af urene
Konfiguration af urene

Du kan nu se et ret skræmmende urdiagram, men det skal kun konfigureres én gang. Dette er det sværeste at beskrive her, da diagrammet er komplekst. Alle de ting, du skal ændre, fremhæves på billedet ovenfor.

  1. Blue Pill -kortet leveres med en 8 MHz krystal på tavlen, og det er hvad urkonfigurationsdiagrammet som standard er, så vi behøver ikke ændre det.
  2. Under PLL Source Mux vælges det lavere valg, HSE.
  3. Lige til højre indstil PLLMul til X9.
  4. Til højre igen under System Clock Mux vælg PLLCLK.
  5. Til højre igen under APB1 Prescalar vælg /2.
  6. Det er det. Hvis du ser nogle dele af diagrammet fremhævet med lilla, har du gjort noget forkert.

Trin 4: Gem og byg

  1. Gem.ioc-konfigurationen med Ctrl-S. Når du bliver spurgt, om du vil generere kode, skal du vælge Ja (og markere Husk min beslutning, så du ikke bliver spurgt hver gang). Du kan lukke.ioc -filen.
  2. Lav nu en build fra menuen Projekt | Byg projekt.

Trin 5: Tilføjelse af kode

Tilføjelse af noget kode
Tilføjelse af noget kode
Tilføjelse af noget kode
Tilføjelse af noget kode

Nu tilføjer vi noget kode for at bruge den serielle port, vi konfigurerede.

  1. Åbn Core / Src i Project Explorer, og dobbeltklik på main.c for at redigere den.
  2. Rul ned, indtil du finder hovedfunktionen (), og tilføj koden vist nedenfor lige under kommentaren / * BRUGERKODE BEGYNGER 3 * / og lav derefter en build igen.

HAL_UART_Transmit (& huart2, (uint8_t *) "Hej, verden! / R / n", 15U, 100U);

Dernæst forbinder du op -hardware og prøver det.

Trin 6: Tilslutning af hardwaren

Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware
Tilslutning af hardware

Tilslutning af ST-LINK v2

ST-LINK v2 skulle have været med et 4-leder hun-til-kvindelig header-båndkabel. Du skal lave følgende forbindelser:

Blå pille til ST-LINK v2

GND til GND

CLK til SWCLK

DIO til SWDIO

3,3 til 3,3V

Se det første billede ovenfor.

Tilslutning af seriekablet

Hvis du går tilbage til.ioc -filen og ser på chipdiagrammet til højre, vil du se, at UART2s Tx -linje er på pin PA2. Tilslut derfor stiften mærket PA2 på Blue Pill -kortet til forbindelsen med den gule ledning på FTDI Serial -kablet. Tilslut også en af Blue Pills jordstifter (mærket G) til den sorte ledning på FTDI -seriekablet.

Se det andet billede ovenfor.

Trin 7: Debugging

Debugging
Debugging
Debugging
Debugging

Tilslut FTDI -seriekablet, og start en seriel terminal på 115200 baud. Tilslut derefter din ST-LINK v2, og du er klar til at gå.

  1. Vælg Kør | Debug fra STM32CubeIDE. Når en Debug som dialog dukker op, skal du vælge STM32 Cortex-M C/C ++ Application og OK.
  2. Når en dialogboks til redigering af konfiguration dukker op, skal du bare trykke på OK.
  3. Debuggeren brydes på den første linje i main (). Vælg Kør | Genoptag i menuen, og søg efter meddelelser i den serielle terminal.

Trin 8: Gør mere

Det er det, din første STM32CubeIDE -applikation er konfigureret og kører. Dette eksempel gør ikke meget - sender bare nogle data ud af den serielle port.

Hvis du vil bruge andre eksterne enheder og skrive drivere til eksterne enheder, skal du klare den skræmmende konfigurationseditor igen! For at hjælpe har jeg produceret en række STM32CubeIDE -eksempelprojekter, der konfigurerer og udøver alle eksterne enheder på Blue Pills processor i små letforståelige projekter. De er alle open source, og du kan frit gøre, hvad du vil med dem. Hvert periferiudstyr er konfigureret og har derefter prøvekode til at udøve det isoleret (næsten!), Så du kan koncentrere dig om at få kun en perifer enhed til at køre ad gangen.

Der er også drivere til eksterne enheder fra enkle EEPROM -chips til trykfølere, tekst og grafiske LCD'er, SIM800 -modem til TCP, HTTP og MQTT, tastaturer, radiomoduler, USB og også integration med FatFS, SD -kort og FreeRTOS.

De kan alle findes i Github her …

github.com/miniwinwm/BluePillDemo

Anbefalede: