Innehållsförteckning:

Installera Blue Pill Board i STM32CubeIDE: 8 steg
Installera Blue Pill Board i STM32CubeIDE: 8 steg

Video: Installera Blue Pill Board i STM32CubeIDE: 8 steg

Video: Installera Blue Pill Board i STM32CubeIDE: 8 steg
Video: STM32 - программирование для начинающих. Пошагово. CubeMX CubeIDE 2024, November
Anonim
Installera Blue Pill Board i STM32CubeIDE
Installera Blue Pill Board i STM32CubeIDE
Installera Blue Pill Board i STM32CubeIDE
Installera Blue Pill Board i STM32CubeIDE

The Blue Pill är en mycket billig ARM -utvecklingsbräda för bara ben. Den har en STM32F103C8 som processor som har 64 kbyte flash och 20 kbyte RAM -minne. Den går upp till 72 MHz och är det billigaste sättet att komma in i ARM inbäddad mjukvaruutveckling.

De flesta exempelprojekt och hur man beskriver hur man programmerar Blue Pill -kortet med Auduino -miljön. Även om detta fungerar och är ett sätt att komma igång har det sina begränsningar. Arduino -miljön skyddar dig lite från den underliggande hårdvaran - det är dess designmål. På grund av detta kommer du inte att kunna dra nytta av alla funktioner som processorn erbjuder, och integrering av ett realtidsoperativsystem stöds inte riktigt. Detta innebär att Arduino -miljön inte används i stor utsträckning inom industrin. Om du vill göra karriär inom inbyggd mjukvaruutveckling är Arduino en bra utgångspunkt, men du måste gå vidare och använda en utvecklingsmiljö som används industriellt. ST tillhandahåller hjälpsamt en helt gratis utvecklingsmiljö för sina processorer som heter STM32CubeIDE. Detta används ofta i industrin, så det är bra att gå vidare till.

Men det här är det stora, STM32CubeIDE är fruktansvärt komplicerat och är en skrämmande programvara att använda. Den stöder alla funktioner i alla ST: s processorer och låter dem konfigureras intimt, vilket du inte stöter på i Arduino IDE eftersom allt är gjort för dig.

Du måste konfigurera din bräda som ett första steg i STM32CubeIDE. IDE känner till ST: s egna utvecklingsbrädor och ställer upp dem åt dig, men Blue Pill, medan du använder en ST -processor, är det inte en ST -produkt, så du är på egen hand här.

Denna instruerbara tar dig igenom processen att konfigurera ditt Blue Pill -kort, aktivera en seriell port och skriva ut lite text. Det är inte mycket, men det är ett viktigt första steg.

Tillbehör

STM32CubeIDE - ladda ner från ST: s webbplats. Du måste registrera dig och det tar ett tag att ladda ner.

En blå pillretavla. Du kan få dem från ebay. Du behöver en som har en äkta ST -processor på som vissa inte gör. Zooma in på ebay på bilden och leta efter ST -logotypen på processorn.

En ST-LINK v2 debugger/programmerare tillgänglig från ebay för några kilo.

En FTDI TTL till USB 3.3V seriell kabel för utgång och 2 manliga till kvinnliga huvudtrådar för att ansluta den.

Ett seriellt terminalprogram som PuTTY.

Steg 1: Skapa ett nytt projekt

Skapa ett nytt projekt
Skapa ett nytt projekt
Skapa ett nytt projekt
Skapa ett nytt projekt
  1. Starta STM32CubeIDE och välj sedan Arkiv | Nytt | STM32 -projekt från menyn.
  2. Ange STM32F103C8 i rutan Sök efter artikelnummer.
  3. I MCU-/MPU -listan bör du se STM32F103C8. Välj den här raden som på bilden ovan.
  4. Klicka på Nästa.
  5. Ge dig ett projekt i dialogrutan Projektinställningar.
  6. Lämna allt annat som det är och klicka på Slutför. Ditt projekt visas till vänster i fönstret Projektutforskare.

Steg 2: Konfigurera processorn

Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
Konfigurera processorn
  1. Öppna projektet i fönstret Projektutforskare och dubbelklicka på.ioc -filen.
  2. På fliken Projekt och konfiguration expanderar du System Core och väljer sedan SYS.
  3. Under Serialäge och konfiguration i listrutan Felsökning väljer du Seriell tråd.
  4. Välj nu RCC i listan System Core precis ovanför SYS du valde ovan.
  5. Välj Crystal/Ceramic Resonator under RCC Mode & Configuration från rullgardinsmenyn High Speed Clock (HSE).
  6. Nu under Kategorier igen, öppna upp Connectivity och välj USART2.
  7. Välj Asynkron under USART2-läge och konfiguration från rullgardinsmenyn Läge.
  8. Välj nu fliken Clock Configuration och gå till nästa steg.

Steg 3: Konfigurera klockorna

Konfigurera klockorna
Konfigurera klockorna

Du kan nu se ett ganska skrämmande klockdiagram, men det behöver bara ställas in en gång. Detta är det svåraste att beskriva här eftersom diagrammet är komplext. Alla saker du behöver ändra markeras i bilden ovan.

  1. Blue Pill -kortet levereras med en 8 MHz kristall på kortet och det är vad klockans konfigurationsdiagram ställer in som standard, så vi behöver inte ändra det.
  2. Under PLL Source Mux väljer du det lägre valet, HSE.
  3. Precis till höger ställ PLLMul till X9.
  4. Till höger igen under System Clock Mux välj PLLCLK.
  5. Till höger igen under APB1 Prescalar välj /2.
  6. Det är allt. Om du ser några delar av diagrammet markerade med lila har du gjort något fel.

Steg 4: Spara och bygg

  1. Spara.ioc-konfigurationen med Ctrl-S. När du blir tillfrågad om du vill generera kod, välj Ja (och markera Kom ihåg mitt beslut så att du inte blir ombedd varje gång). Du kan stänga.ioc -filen.
  2. Gör nu ett bygge från menyn Projekt | Bygg projekt.

Steg 5: Lägga till lite kod

Lägger till lite kod
Lägger till lite kod
Lägger till lite kod
Lägger till lite kod

Nu lägger vi till lite kod för att använda den seriella porten vi konfigurerade.

  1. I Project Explorer öppnar du Core / Src och dubbelklickar på main.c för att redigera den.
  2. Rulla ner tills du hittar huvudfunktionen () och lägg till koden som visas nedan strax under kommentaren / * ANVÄNDARKOD BÖRJAR 3 * / gör sedan en ombyggnad igen.

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

Anslut sedan hårdvaran och prova.

Steg 6: Ansluta hårdvaran

Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran

Ansluta ST-LINK v2

ST-LINK v2 borde ha levererats med en 4-trådig hona till hona-bandkabel. Du måste göra följande anslutningar:

Blue Pill till ST-LINK v2

GND till GND

CLK till SWCLK

DIO till SWDIO

3.3 till 3.3V

Se första bilden ovan.

Ansluta seriekabeln

Om du går tillbaka till.ioc -filen och tittar på chipschemat till höger ser du att UART2s Tx -linje finns på stift PA2. Anslut därför stiften märkt PA2 på Blue Pill -kortet till anslutningen med den gula ledningen på FTDI -seriekabeln. Anslut också en av Blue Pills jordstift (märkt G) till den svarta ledningen på FTDI -seriekabeln.

Se den andra bilden ovan.

Steg 7: Felsökning

Felsökning
Felsökning
Felsökning
Felsökning

Anslut din FTDI -seriekabel och starta en seriell terminal på 115200 baud. Anslut sedan din ST-LINK v2 och du är redo att gå.

  1. Från STM32CubeIDE väljer du Kör | Felsökning. När en felsökning som dialogruta dyker upp väljer du STM32 Cortex-M C/C ++ Application och OK.
  2. När en dialogrutan Redigera konfiguration dyker upp trycker du bara på OK.
  3. Felsökaren går sönder på den första raden i main (). Välj Kör | Återuppta på menyn och leta efter meddelanden i den seriella terminalen.

Steg 8: Gör mer

Det är det, din första STM32CubeIDE -applikation är konfigurerad och körs. Det här exemplet gör inte mycket - skickar bara ut lite data från serieporten.

För att använda andra kringutrustning och skriva drivrutiner för externa enheter måste du ta itu med den skrämmande konfigurationsredigeraren igen! Till hjälp har jag tagit fram en serie STM32CubeIDE -exempelprojekt som konfigurerar och utövar alla kringutrustning på Blue Pill -processorn i små lättöverskådliga projekt. De är alla öppen källkod och du är fri att göra vad du vill med dem. Varje kringutrustning är konfigurerad och har sedan provkod för att utöva den isolerat (nästan!) Så att du kan koncentrera dig på att få igång bara en kringutrustning i taget.

Det finns också drivrutiner för externa enheter från enkla EEPROM -chips till trycksensorer, text och grafiska LCD -skärmar, SIM800 -modem för TCP, HTTP och MQTT, knappsatser, radiomoduler, USB och även integration med FatFS, SD -kort och FreeRTOS.

De finns alla i Github här …

github.com/miniwinwm/BluePillDemo

Rekommenderad: