- STM32 Nucleo 64 Development Board Hardware Forklaring
- Programmering av STM32 Nucleo 64 utviklingstavler
- Komme i gang med STM32F401
- Konklusjon
- Video
For de fleste der ute ville det første innebygde utviklingskortet de ville ha jobbet med, sannsynligvis være et Arduino Board. Men som alle kan være enige om, kan Arduino ta deg bare så langt, og en dag må du flytte til en innfødt mikrokontrollerplattform. Denne prosessen kan gjøres mye enklere med dette STM32-utviklingskortet, da det kan støtte alle Arduino-skjold for å hjelpe deg på maskinvaresiden, og har også mange innebygde biblioteker og funksjoner som hjelper deg på programvaresiden. Å bli kjent med en STM32 mikrokontrollere vil hjelpe deg med å enkelt utforske andre utviklingsmoduler fra ST som SensorTile.Box som vi gjennomgikk tidligere. Så i denne artikkelen, la oss ta en fullstendig titt på disse STM32 Nucleo-64 utviklingstavlene og lære hvordan du bruker dem.
Nå er det mange versjoner av STM32-kort tilgjengelig, og denne spesielle i min hånd heter STM32F401 Nucleo-64. Navnet STM32 representerer at vi har en 32-biters mikrokontroller på utviklingskortet vårt, og navnet Nucleo-64 representerer at mikrokontrolleren har 64 pins. På samme måte er det mange andre versjoner av Nucleo 64-kort som STM32F103, STM32F303, etc, men når du lærer om ett brett, er alle de andre like.
STM32 Nucleo 64 Development Board Hardware Forklaring
La oss begynne med å fjerne unboxing av utviklingsstyret vårt. Som du ser, består hele pakken bare av vårt utviklingskort og et instruksjonskort. Instruksjonskortet nevner spesifikasjonene til kontrolleren, dens pinouts, og på baksiden har vi litt informasjon om hvordan du kommer i gang og tilgjengelige alternativer for verktøykjede.
Når vi ser nærmere på styret, kan vi finne at styret er delt inn i to regioner. Den øverste delen er ST-Link / V2 feilsøkingsprogram og programmerer, mens den nederste delen er ditt faktiske utviklingskort. På denne måten kan du enkelt programmere og feilsøke kortet ditt ut av esken bare med en ekstra USB-kabel som kan kobles til USB-miniporten på kortet.
Ved første blikk kan det hende at brettet ser ut til å ha mange hoppere og komponenter, men de er alle der for å gjøre det enkelt for oss. De to hopperne som du finner på hver side av brettet CN11 og CN12, er faktisk dummyjumper. Disse hopperne kan brukes til andre formål om nødvendig i fremtiden. De to hopperne på CN2 brukes til å koble programmerings- og feilsøkingsseksjonen til vårt utviklingskort. I fremtiden kan du fjerne disse hopperne for å bruke programmereren til andre ST-mikrokontrollere gjennom disse pinnene. Og denne kontakttappen JP1 kan lukkes for å begrense USB-strømmen til 100mA, hvis den er åpen, vil den maksimale strømmen være 300mA. Her har vi en Tricolor LED (LD1) som lyser rødt når kortet er strømdrevet og blir grønt når kortet er vellykket programmert og blir oransje når det er en kommunikasjonsfeil.
Når vi går ned til utviklingsseksjonen, har vi vår viktigste komponent her, STM32F401RET6 Microcontroller. Dette er en 64-pinners 32-biters mikrokontroller med en ARM Cortex M4- prosessor som opererer på 84MHz. Den har også 512 Kb Flash og 96 KB SRAM. Microcontroller har 10 tidtakere på 16-biters og 32-biters og en enkelt 12-biters ADC. Den har også tre USART, tre I2C, fire SPI og en USB 2.0 for ekstern kommunikasjon. Du kan sjekke STM32F401-databladet for å få mer teknisk informasjon.
Nå kommer den interessante delen, som jeg fortalte deg tidligere, støtter styret alle Arduino-skjold. Brettet har to sett med kontakter, hunpinnene er for Arduino-skjold som passer perfekt til vårt ESP8266 Wi-Fi-skjold og vårt Semtech Arduino LoRa-skjold, som du kan se på bildet nedenfor.
De andre hannene kalles ST morpho pins som kan brukes til å bruke reaming pins på vår 64-pin mikrocontroller. Så har vi en reset-knapp her og en brukerkonfigurerbar knapp som er koblet til pin PC13 og også en LED her som er koblet til pin D13 akkurat som Arduino. For å drive kortet kan vi enten bruke USB-porten eller direkte gi regulert 5V til E5V eller til 5V-pin her. Husk å skifte denne genseren for å indikere hvordan du driver tavlen. U5V indikerer at kortet er drevet av USB. Vi har også en annen interessant jumperpinne her, kalt IDD, som kan brukes til å måle hvor mye strøm mikrokontrolleren bruker ved å koble et amperemeter til disse pinnene.
Programmering av STM32 Nucleo 64 utviklingstavler
Kommer til programvareseksjonen, har styret et stort bibliotek og programmeringsstøtte og kan programmeres ved hjelp av Keil, IAR-arbeidsbenk og mange andre IDEer. Men det interessante er at det støtter ARM Mbed og STM32Cube utviklingsmiljø. Av hensyn til denne artikkelen bestemte jeg meg for å bruke ARM Mbed-plattformen fordi den er et online verktøy, og jeg syntes det var veldig interessant fordi du ikke bare kan bruke ST-kortene dine, men mange andre utviklingskort som bruker ARM-mikrokontrolleren.
For de som er nye, er ARM MBED en online utviklingsplattform som leveres av ARM selv, og den gir deg et innebygd operativsystem, skytjenester og sikkerhetsfunksjoner for enkelt å lage IoT-baserte innebygde løsninger. Det er et stort open source-fellesskap, og det vil kreve en egen artikkel å komme i detalj om det.
Komme i gang med STM32F401
Men for å komme i gang, bruk en USB-minikabel for å koble STM32-utviklingskortet til datamaskinen. Når strømmen er slått på, bør du legge merke til at LD1 og LD3 LED lyser rødt, og den programmerbare LED LD2 vil blinke i grønn farge som denne.
Du vil også legge merke til en ny flash-stasjon på datamaskinen din som heter “NODE_F401RE”. Åpne den, og du finner to filer, nemlig details.txt og mbed.htm som vist nedenfor.
Du kan starte Mbed.htm-filen for å begynne å programmere tavlen direkte med arm Mbed. Men før vi kommer dit, har vi installert de nødvendige driverne og registreringen for Mbed. Søk etter driverprogramvaren STSW-link009 og last den ned direkte fra ST-nettstedet, installer driveren og sørg for at enheten blir oppdaget riktig i enhetsadministratoren din, som vist her.
Gå tilbake til mbed-plattformen din for å registrere deg på MBED.com med din legitimasjon. Klikk deretter på MBED.HTM-filen, så blir du møtt med neste side.
Rull ned og klikk på “ Open Mbed compiler ”. Som du ser har kompilatoren allerede anerkjent plattformen vår som Nucleo-F401RE og gir oss mange grunnleggende eksempelprogrammer. For nå, la meg velge “ LED Blinky code ” og endre den slik at LED-en slukker når jeg trykker på trykknappen.
Når koden er klar som vist nedenfor, kan du klikke på kompileringsknappen, som gir deg en bin-fil, bare kopier bin-filen og lim den inn i flash-stasjonen for å programmere brettet. Du vil merke at LD1-lysdioden blir grønn når programmeringen er fullført. Trykk nå på den blå knappen og du vil merke at den grønne LED-lampen slukker. Slik kan du prøve noen av eksemplene på programmer for å lære forskjellige funksjoner på tavlen. Du kan også gå tilbake til hovedsiden for å få andre tekniske dokumenter og fellestøtte.
Du kan også se videoen som er lenket nederst på denne siden, for å se hele gjennomgangen på dette tavlen.
Konklusjon
Totalt sett tror jeg at disse tavlene er gode valg hvis du prøver å øke ferdighetene dine og utvikle avanserte applikasjoner. Med sin praktiske maskinvarestøtte og nettsamfunn er læringskurven til disse kortene også ganske enkel, så det kan være lurt å prøve. Jeg håper du likte artikkelen og lærte noe nyttig av den. Hvis du har spørsmål, kan du legge dem i kommentarfeltet nedenfor eller bruke forumene våre for andre tekniske spørsmål.