Skip to content

knowit/stm32-bare-metal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

stm32-bare-metal

A repo which contains the material for a bare metal programming workshop on stm32 microcontrollers!

STM32 Bare Metal Programmering med STM32CubeIDE

Om kurset

Dette kurset er ment som en introduksjon til STM32 ARM baserte microcontrollere og hvordan man kan gjøre utvikling på disse ved å bruke STM32CubeIDE miljøet. Dette er et mer profesjonelt miljø enn for eksempel Arduino og man har tilgang til full hardware debugging med tracing og breakpoints. En av de fine fordelene med dette miljøet er at den har et grafisk konfigurasjons grensesnitt som gjør det enkelt å sette opp hardware ressursene visuelt og så lage all nødvendig skjelett kode som kan brukes direkte i kode prosjektet ditt.

Utstyr

For å delta trenger du en datamaskin med en USB-A-kontakt. Kurset har blitt testet på Windows/macOS, men skal i teorien fungere på alle operativsystemer.

Som en del av kurset, så vil du få låne et utviklingskort og et eget designet ekspansjonskort med knapper, led og en piezo basert høytalermodul. Noen kort har også en 3.5mm hodetelefonkontakt som kan drives av en PWM utgang fra mikrokontrolleren. Denne funksjonaliteten utforskes ikke som en del av denne workshoppen i utgangspunktet, men er en bonus leksjon som er inkludert hvis du ønsker å teste ut denne funksjonaliteten.

Utviklingskortet er fra ST Electronics og heter Nucleo-64 STM32G0B1 og er basert på en STM32G0B1 microcontroller. Denne består av en Arm Cortex M0+ kjerne med 512KB Flash(program minne) og 128KB SRAM(arbeidsminne). Mere informasjon om microcontrolleren kan du finne her.

Mer informasjon om utviklingskortet kan du finne her.

Forkunnskaper

Fokuset for kurset er å få opp et miljø for utvikling og debugging. Eksemplene som vi vil gå igjennom begynner med en enkel blinky applikasjon og påfølgende moduler vil øke i kompleksitet slik at man til slutt sitter igjen med en applikasjon som kan spille av rtttl sanger, dvs enkle sanger med et format som ble mye brukt på gamle Nokia mobil telefoner.

Det forventes at du kan grunnleggende C programming og en overflatisk forståelse av hva en microcontroller er.

Innhold

Setup

  1. Installasjon av STM32CubeIDE Gå til ST's webside og last ned installasjonsfilen for IDE. Velg installasjonsfil basert på ditt OS miljø. Du må mest sannsynligvis lage en profil for å få tilgang til installasjonsfilen. Per nå, så finnes det ikke en native STM32CubeMX installasjon for nye Macs med Apple silikon. Så her må man bruke en x86 versjon med Rosetta.

Se her for litt mere informasjon om hvordan dette kan gjøres.

  1. Installasjon av en serie terminal klient CoolTerm er en enkel klient som er tilgjengelig for de fleste platformer og støtter bruk av makroer. Last ned og installer.

  2. Plugg inn USB ledningene til utviklingskortet og til en ledig port på din PC.

Du er nå klar til å begynne første leksjon!

Leksjoner

About

A repo which contains the material for a bare metal programming workshop on stm32 microcontrollers!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published