Arduino ville ha vært det første styret for mange hobbyister (inkludert meg) og ingeniører der ute da de startet med elektronikk. Når vi begynner å bygge mer og grave dypt, vil vi imidlertid snart innse at Arduino ikke er bransjeklar og dens 8-biters CPU med en latterlig treg klokke, det gir deg ikke nok juice til prosjektene dine. Forhåpentligvis har vi de nye STM32F103C8T6 STM32 Development Boards (Blue Pill) i markedet nå, som lett kan overgå Arduino med sin 32-biters CPU og ARM Cortex M3-arkitektur. En annen honningpotte her er at vi kan bruke den samme gamle Arduino IDE til å programmere STM32-kortene. Så i denne opplæringen, la oss komme i gang med STM32 å vite litt grunnleggende om dette kortet og blinke den innebygde LED-en ved hjelp av Arduino IDE.
Bortsett fra STM32 Blue pilletavle som brukes i denne opplæringen, er det mange andre populære STM32-kort som STM32 Nucleo Development-kortet. Hvis du er interessert, kan du også sjekke gjennomgangen på STM32 Nucleo 64-tavler, og hvis du vil lære hvordan du bruker dem og programmere dem ved hjelp av STM32 CubeMX og True studio, kan du sjekke ut veiledningen for å komme i gang med STM32 Nucelo64.
Nødvendig materiale
- STM32 - (BluePill) Development Board (STM32F103C8T6)
- FTDI programmerer
- Brettbrett
- Koble ledninger
- Bærbar PC med Internett
Introduksjon til STM32 (Blue Pill) Board
Den STM32 styret aka blå pillen er en utvikling bord for ARM Cortex M3 mikrokontroller. Det ser veldig ut som Arduino Nano, men det pakker inn ganske slag. Utviklingsstyret er vist nedenfor.
Disse kortene er ekstremt billige sammenlignet med de offisielle Arduino-kortene, og også maskinvaren er åpen kildekode. Mikrokontrolleren på toppen av den er STM32F103C8T6 fra STMicroelectronics. Bortsett fra mikrokontrolleren, har kortet også to krystalloscillatorer, den ene er en 8MHz krystall, og den andre er en 32 KHz krystall, som kan brukes til å drive den interne RTC (Real Time Clock). På grunn av dette kan MCU operere i dyp søvnmodus, noe som gjør den ideell for batteridrevne applikasjoner.
Siden MCU fungerer med 3,3 V, huser styret også en 5V til 3,3V spenningsregulator IC for å drive MCU. Selv om MCU opererer på 3,3 V, er de fleste GPIO-pinner 5 V tolerante. Pinnen til MCU er pent trukket ut og merket som topptekster. Det er også to innebygde lysdioder, en (rød farge) brukes til strømindikasjon, og den andre (grønn farge) er koblet til GPIO-pinnen PC13. Den har også to topptekster som kan brukes til å veksle MCU-oppstartsmodus mellom programmeringsmodus og driftsmodus, vi vil lære mer om disse senere i denne opplæringen.
Nå er det få som lurer på hvorfor dette brettet kalles "Blue Pill", vel seriøst vet jeg ikke. Kan være siden tavlen er blå i fargen og kan gi en forbedret ytelse til prosjektene dine, noen kom opp med dette navnet i det bare ble. Dette er bare en antagelse, og jeg har ingen kilde til å sikkerhetskopiere det.
STM32F103C8T6 Spesifikasjoner
Den ARM Cortex M3 STM32F103C8 mikrokontroller blir brukt i den blå pille brettet. I motsetning til navnet “Blue Pill” har mikrokontrollerenavnet STM32F103C8T6 en betydning bak seg.
- STM »står for produsentens navn STMicroelectronics
- 32 »står for 32-bit ARM-arkitektur
- F103 »står for å indikere at arkitekturen ARM Cortex M3
- C »48-pinners
- 8 »64KB Flash-minne
- T »-pakketypen er LQFP
- 6 »driftstemperatur -40 ° C til + 85 ° C
La oss nå se på spesifikasjonene til denne mikrokontrolleren.
Arkitektur: 32-bit ARM Cortex M3
Driftsspenning: 2,7V til 3,6V
CPU-frekvens: 72 MHz
Antall GPIO-pinner: 37
Antall PWM-pinner: 12
Analoge inngangspinner: 10 (12-bit)
USART periferiutstyr: 3
I2C periferiutstyr: 2
SPI-periferiutstyr: 2
Can 2.0 Perifer: 1
Timere: 3 (16-bit), 1 (PWM)
Flash-minne: 64 KB
RAM: 20 kB
Hvis du vil vite det