Innehållsförteckning:
- Steg 1: Installera STM32CUBEMX och Keil med paket för STM32L476
- Steg 2: Gör elektronikgränssnitt för ditt projekt
- Steg 3: Välja mikrokontroller i STM32CUBEMX
- Steg 4: Gör nödvändiga val i STM32cubemx enligt bilder som visas i denna handledning
- Steg 5: Generera kod för UVision Keil
- Steg 6: Skriv kod för LCD i Main.c -filen. Använd det här steget endast för STM32L4 och STM32L0 mikrokontroller. För andra mikrokontroller använd din egen kod
- Steg 7: Skriv koden i While Loop Inside Main.c -filen. Se den bifogade filen
- Steg 8: Skriv kod i filen STM32L4xx_it.c i Keil
- Steg 9: Lägg till variabler i båda filerna
- Steg 10: Från projektmenyn i Uvision Keil Gå till undermenyapplikation/användare
- Steg 11: Kompilera din kod
- Steg 12: Programmera kortet med mikrokontroller
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Detta är självstudier för att få position för Rotary Encoder, som är en inkrementell typ av encoder. Encoders är i allmänhet av två typer:- den ena är inkrementell den andra är absolut. Denna kod kan användas för STM32L476 och STM32L0 mikrokontroller. Men om du har din egen lcd -bibliotek eller kod för LCD fungerar detta för alla STM32 -mikrokontroller.
Jag använder STM32L476 nukleokort för denna handledning.
Du kan styra motorer som STEPPER -motor eller servomotor genom att skriva en kod enligt rörelse för pulsgivaren. Jag har redan skrivit en sådan kod. Fortsätt titta på mina självstudier för ytterligare.
Steg 1: Installera STM32CUBEMX och Keil med paket för STM32L476
Steg 2: Gör elektronikgränssnitt för ditt projekt
Elektronikkomponenter som behövs för detta projekt är:-
1) 16x2 alfanumerisk LCD 2) STM32L476 nukleokort. 3) Brödbräda 4) Bygeltrådar. 5) En bärbar dator med installerade fönster (6) Rotary Encoder. Anslutning av LCD och STM32L476-kort nämns nedan:-
STM32L476 - LCD
GND - PIN1
5V - PIN2
NA - 2.2K motstånd anslutet till GND
PB10 - RS
PB11 - RW
PB2 - SV
PB12 - D4
PB13 - D5
PB14 - D6
PB15 - D7
5V - PIN15
GND - PIN16
Anslutning av Rotary Encoder och STM32 finns nedan
Rotary Encoder-STM BOARD
Strömstift-3,3 V
GND-GND
CLK-PC1
DT-PC0
Steg 3: Välja mikrokontroller i STM32CUBEMX
Öppna cubemx och välj nucleo64 -kort med mikrokontroller som STM32L476
Steg 4: Gör nödvändiga val i STM32cubemx enligt bilder som visas i denna handledning
Använd stegen ovan för att göra nödvändiga val i STM32Cubemx och välj maximal klocka för den mikrokontroller du använder (STM32L476 jag använder i den här självstudien)
Steg 5: Generera kod för UVision Keil
Steg 6: Skriv kod för LCD i Main.c -filen. Använd det här steget endast för STM32L4 och STM32L0 mikrokontroller. För andra mikrokontroller använd din egen kod
Öppna main.c -filen från projekten, Keils meny och skriv kod för initialisering av LCD innan huvudslingan. Se figuren bifogad.
Steg 7: Skriv koden i While Loop Inside Main.c -filen. Se den bifogade filen
Steg 8: Skriv kod i filen STM32L4xx_it.c i Keil
Skriv kod i filen STM32L4xx_it.c i Keil. Se koden i den bifogade filen.
Steg 9: Lägg till variabler i båda filerna
Lägg till variabler i båda filerna. Se bifogad fil.
Steg 10: Från projektmenyn i Uvision Keil Gå till undermenyapplikation/användare
Från projektmenyn i uvision Keil går du till undermenyn Applikation/användare. Bifoga lcd_hd44780_stml4xx.c -filen (Högerklicka på undermenyn och gå till bläddringsalternativet och bifoga filen efter att du har kopierat tre LCD -filer till källkatalogen.)
Steg 11: Kompilera din kod
Kompilera koden och felsöka om det uppstår några fel.
Steg 12: Programmera kortet med mikrokontroller
Programmera kortet med mikrokontroller. Kommer att få ut som i den här videon.