Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Opprette et nytt prosjekt
- Trinn 2: Konfigurere prosessoren
- Trinn 3: Konfigurere klokkene
- Trinn 4: Lagre og bygg
- Trinn 5: Legge til litt kode
- Trinn 6: Koble til maskinvaren
- Trinn 7: Feilsøking
- Trinn 8: Gjør mer
Video: Sette opp Blue Pill Board i STM32CubeIDE: 8 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
The Blue Pill er et veldig billig ARM utviklingstavle for bare bein. Den har en STM32F103C8 som prosessor som har 64 kbyte flash og 20 kbyte RAM -minner. Den går opp til 72 MHz og er den billigste måten å komme inn på ARM innebygd programvareutvikling.
De fleste eksempelprosjekter og hvordan du beskriver programmering av Blue Pill -kortet ved hjelp av Auduino -miljøet. Selv om dette fungerer og er en måte å komme i gang, har det sine begrensninger. Arduino -miljøet beskytter deg litt fra den underliggende maskinvaren - det er designmålet. På grunn av dette vil du ikke kunne dra nytte av alle funksjonene prosessoren tilbyr, og integrering av et sanntids operativsystem støttes egentlig ikke. Dette betyr at Arduino -miljøet ikke er mye brukt i industrien. Hvis du ønsker å gjøre en karriere innen innebygd programvareutvikling, er Arduino et godt utgangspunkt, men du må gå videre og bruke et utviklingsmiljø som brukes industrielt. ST tilbyr nyttig en helt gratis utviklingsmiljøpakke for prosessorene deres, kalt STM32CubeIDE. Dette er mye brukt i industrien, så det er bra å gå videre til.
Imidlertid, og dette er den store, STM32CubeIDE er fryktelig komplisert og er en skremmende programvare å bruke. Den støtter alle funksjonene til alle STs prosessorer og lar dem bli intimt konfigurert, som du ikke kommer over i Arduino IDE fordi alt er gjort for deg.
Du må sette opp brettet ditt som et første trinn i STM32CubeIDE. IDE vet om STs egne utviklingstavler og setter dem opp for deg, men Blue Pill, mens du bruker en ST -prosessor, er det ikke et ST -produkt, så du er alene her.
Denne instruksen tar deg gjennom prosessen med å sette opp Blue Pill -kortet, aktivere en seriell port og skrive ut litt tekst. Det er ikke mye, men det er et viktig første skritt.
Rekvisita
STM32CubeIDE - last ned fra STs nettsted. Du må registrere deg, og det tar en stund å laste ned.
Et blått pillebrett. Du kan få dem fra ebay. Du trenger en som har en ekte ST -prosessor, som noen ikke gjør. Zoom inn på ebay på bildet og se etter ST -logoen på prosessoren.
En ST-LINK v2 debugger/programmerer tilgjengelig fra ebay for noen få pund.
En FTDI TTL til USB 3.3V seriell kabel for utgang og 2 mannlige til kvinnelige toppledninger for å koble den til.
Et serielt terminalprogram som PuTTY.
Trinn 1: Opprette et nytt prosjekt
- Start STM32CubeIDE og velg deretter Fil | Ny | STM32 -prosjekt fra menyen.
- Skriv inn STM32F103C8 i boksen Søk etter delenummer.
- I MCU/MPU -listen bør du se STM32F103C8. Velg denne linjen som på bildet ovenfor.
- Klikk Neste.
- Gi prosjektet et navn i dialogboksen Prosjektoppsett.
- La alt annet være som det er, og klikk på Fullfør. Prosjektet ditt vises til venstre i Project Explorer -ruten.
Trinn 2: Konfigurere prosessoren
- Åpne prosjektet i ruten Prosjektutforsker, og dobbeltklikk på.ioc -filen.
- I kategorien Prosjekt og konfigurasjon utvider du System Core, og deretter velger du SYS.
- Velg Serial Wire under SYS-modus og -konfigurasjon i Debug-rullegardinmenyen.
- Velg nå RCC i System Core -listen like over SYS du valgte ovenfor.
- Velg Crystal/Ceramic Resonator under RCC Mode & Configuration fra rullegardinmenyen High Speed Clock (HSE).
- Nå under Kategorier igjen, åpne opp Tilkobling og velg USART2.
- Velg Asynkron under USART2-modus og konfigurasjon fra rullegardinmenyen Modus.
- Velg nå kategorien Klokkekonfigurasjon og gå til neste trinn.
Trinn 3: Konfigurere klokkene
Du kan nå se et ganske skremmende klokkediagram, men det trenger bare å konfigureres en gang. Dette er det vanskeligste å beskrive her som diagrammet er komplekst. Alle tingene du trenger å endre er uthevet i bildet ovenfor.
- Blue Pill -brettet kommer med en 8 MHz krystall på brettet, og det er det klokkekonfigurasjonsdiagrammet som standard er, så vi trenger ikke å endre det.
- Under PLL Source Mux velger du det lavere valget, HMS.
- Bare til høyre sett PLLMul til X9.
- Til høyre igjen under System Clock Mux, velg PLLCLK.
- Til høyre igjen under APB1 Prescalar velg /2.
- Det er det. Hvis du ser noen deler av diagrammet markert med lilla, har du gjort noe galt.
Trinn 4: Lagre og bygg
- Lagre.ioc-konfigurasjonen med Ctrl-S. Når du blir spurt om du vil generere kode, velg Ja (og merk av for Husk beslutningen min, slik at du ikke blir spurt hver gang). Du kan lukke.ioc -filen.
- Gjør nå en build fra menyen Project | Build Project.
Trinn 5: Legge til litt kode
Nå legger vi til noen kode for å bruke den serielle porten vi konfigurerte.
- Åpne Core / Src i Project Explorer og dobbeltklikk på main.c for å redigere den.
- Rull ned til du finner hovedfunksjonen () og legg til koden som vises nedenfor like under kommentaren / * BRUKERKODE BEGIN 3 * / og bygg deretter på nytt.
HAL_UART_Transmit (& huart2, (uint8_t *) "Hei, verden! / R / n", 15U, 100U);
Deretter kobler du opp maskinvaren og prøver.
Trinn 6: Koble til maskinvaren
Koble til ST-LINK v2
ST-LINK v2 burde ha kommet med en 4-leder båndkabel til hun. Du må gjøre følgende tilkoblinger:
Blå pille til ST-LINK v2
GND til GND
CLK til SWCLK
DIO til SWDIO
3,3 til 3,3V
Se det første bildet ovenfor.
Koble til seriekabelen
Hvis du går tilbake til.ioc -filen og ser på brikkediagrammet til høyre, vil du se at UART2s Tx -linje er på pin PA2. Koble derfor pinnen merket PA2 på Blue Pill -kortet til forbindelsen med den gule ledningen på FTDI -seriekabelen. Koble også en av Blue Pills jordpinner (merket G) til den svarte ledningen på FTDI -seriekabelen.
Se det andre bildet ovenfor.
Trinn 7: Feilsøking
Koble til FTDI -seriekabelen og fyr opp en seriell terminal på 115200 baud. Deretter kobler du til ST-LINK v2, og du er klar til å gå.
- Velg Kjør | Debug fra STM32CubeIDE. Når en Debug som dialog dukker opp, velg STM32 Cortex-M C/C ++ Application og OK.
- Når en dialogboks for redigering av konfigurasjon dukker opp, trykker du bare på OK.
- Debugger vil bryte på den første linjen med main (). Velg Kjør | Fortsett fra menyen og se etter meldinger i den serielle terminalen.
Trinn 8: Gjør mer
Det er det, din første STM32CubeIDE -applikasjon er konfigurert og kjører. Dette eksemplet gjør ikke så mye - sender bare noen data ut av serieporten.
For å bruke andre eksterne enheter og skrive drivere for eksterne enheter må du takle den skremmende konfigurasjonsredigereren igjen! For å hjelpe har jeg produsert en serie STM32CubeIDE -eksempelprosjekter som konfigurerer og utøver alle eksterne enheter på Blue Pill -prosessoren i små lettfattelige prosjekter. De er alle åpen kildekode, og du kan gjøre hva du vil med dem. Hver perifer enhet er konfigurert og har deretter prøvekode for å utøve den isolert (nesten!), Slik at du kan konsentrere deg om å få bare en perifer enhet til å gå om gangen.
Det er også drivere for eksterne enheter fra enkle EEPROM -brikker til trykksensorer, tekst og grafiske LCD -er, SIM800 -modem for TCP, HTTP og MQTT, tastaturer, radiomoduler, USB og også integrasjon med FatFS, SD -kort og FreeRTOS.
De kan alle bli funnet i Github her …
github.com/miniwinwm/BluePillDemo
Anbefalt:
Hvordan sette opp en Raspberry Pi og begynne å bruke den: 4 trinn
Hvordan sette opp en Raspberry Pi og begynne å bruke den: For fremtidens lesere er vi i 2020. Året hvor du, hvis du er heldig som er frisk og ikke er smittet av Covid-19, plutselig har mye mer fritid enn du noen gang hadde forestilt deg. Så hvordan kan jeg okkupere meg selv på en ikke for dum måte? Å ja
Hvordan sette opp OSMC med Hyperion på Raspberry Pi med WS2812b Led Strip: 8 trinn
Hvordan sette opp OSMC med Hyperion på Raspberry Pi med WS2812b Led Strip: Noen ganger er jeg veldig godt engelsk, noen ganger nei … Første ting først. Dette er min første instruerbare og engelsk er ikke morsmålet mitt, så vær så snill, ikke vær for hard mot meg. Dette handler ikke om hvordan du bygger rammen, det er enkelt. Det handler om installasjon
Hvordan sette opp vin på Raspberry Pi: 8 trinn
Slik konfigurerer du vin på Raspberry Pi: Wine er et flott verktøy som hjelper til med å starte Windows -apper på Linux, Ubuntu -systemer etc. For å lære alle detaljer, gå til www.winehq.org (dette er ikke en tilknyttet lenke) Saken er at alle applikasjonene for Windows er bygget for prosessorer med s
Sette opp MotionEye OS på Raspberry Pi Zero W: 5 trinn
Sette opp MotionEye OS på Raspberry Pi Zero W: Etter å ha testet ESP32-CAM-kortet i de forrige videoene, er det trygt å si at videokvaliteten ikke akkurat er strålende. Det er et kompakt og ekstremt kostnadseffektivt brett som også er enkelt å bruke, og dette gjør det perfekt for nybegynnere. Men
Sette opp en signatur på en mobil Outlook -app: 5 trinn
Sette opp en signatur på en mobil Outlook -app: Hvis du jobber i næringslivet, har du mer enn sannsynlig blitt godt kjent med skrivebordsversjonen av Microsoft Outlook. Outlook er et flott verktøy som lar deg sende e -post, lagre filer, planlegge møter og tilpasse på en hvilken som helst måte du