Inhoudsopgave:

Roterende encoder met STM32 Nucleo Board - Ajarnpa
Roterende encoder met STM32 Nucleo Board - Ajarnpa

Video: Roterende encoder met STM32 Nucleo Board - Ajarnpa

Video: Roterende encoder met STM32 Nucleo Board - Ajarnpa
Video: Interfacing Rotary Encoder With Arduino Uno Using ChatGPT Generated Arduino Code | Coders Cafe 2024, November
Anonim
Roterende encoder met STM32 Nucleo-kaart
Roterende encoder met STM32 Nucleo-kaart

Dit is een handleiding voor het verkrijgen van de positie van Rotary Encoder, wat een incrementeel type encoder is. Encoders zijn over het algemeen van twee typen: - de ene is incrementeel en de andere is absoluut. Deze code kan worden gebruikt voor STM32L476- en STM32L0-microcontrollers. Maar als u uw eigen lcd-bibliotheek of code voor LCD dit werkt voor elke STM32-microcontroller.

Ik gebruik STM32L476 nucleo board voor deze tutorial.

Je kunt motoren zoals STEPPER-motor of servomotor besturen door een code te schrijven volgens de beweging van de encoder. Ik heb al zo'n code geschreven. Blijf mijn tutorials volgen voor verder.

Stap 1: Installeer STM32CUBEMX en Keil With Packages voor STM32L476

Stap 2: Maak elektronische interfaces voor uw project

Elektronische componenten die nodig zijn voor dit project zijn: -

1) 16x2 alfanumeriek LCD 2) STM32L476 nucleo-kaart. 3) Broodplank 4) Jumperdraden. 5) Eén laptop met Windows geïnstalleerd (6) Roterende encoder. Aansluiting van LCD en STM32L476 board zijn hieronder vermeld:-

STM32L476 - LCD

GND - PIN1

5V - PIN2

NA - 2.2K weerstand aangesloten op GND

PB10 - RS

PB11 - RW

PB2 - EN

PB12 - D4

PB13 - D5

PB14 - D6

PB15 - D7

5V - PIN15

GND - PIN16

Aansluiting van Rotary Encoder en STM32 zijn hieronder:

Roterende encoder-STM BOARD

Voedingspin-3,3 V

GND-GND

CLK-PC1

DT-PC0

Stap 3: Microcontroller selecteren in STM32CUBEMX

Open cubemx en selecteer nucleo64-bord met microcontroller als STM32L476

Stap 4: Maak de nodige selecties in STM32cubemx volgens de afbeeldingen in deze zelfstudie

Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond
Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond
Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond
Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond
Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond
Maak de nodige selecties in STM32cubemx volgens de afbeeldingen die in deze zelfstudie worden getoond

Gebruik bovenstaande stappen om de nodige selecties te maken in STM32Cubemx en selecteer de maximale klok voor die microcontroller die u gebruikt (STM32L476 die ik in deze tutorial gebruik)

Stap 5: Genereer code voor UVision Keil

Stap 6: Schrijf code voor LCD in Main.c-bestand. Gebruik deze stap alleen voor STM32L4- en STM32L0-microcontrollers. Gebruik voor andere microcontrollers uw eigen code

Schrijf code voor LCD in Main.c File. Gebruik deze stap alleen voor STM32L4- en STM32L0-microcontrollers. Gebruik voor andere microcontrollers uw eigen code
Schrijf code voor LCD in Main.c File. Gebruik deze stap alleen voor STM32L4- en STM32L0-microcontrollers. Gebruik voor andere microcontrollers uw eigen code

Open het main.c-bestand vanuit de projecten, het menu van Keil en schrijf de code voor de LCD-initialisatie vóór de while-lus van de main. Zie de bijgevoegde afbeelding.

Stap 7: Schrijf de code in While Loop Inside Main.c File. Raadpleeg het bijgevoegde bestand

Schrijf de code in While Loop Inside Main.c File. Raadpleeg het bijgevoegde bestand
Schrijf de code in While Loop Inside Main.c File. Raadpleeg het bijgevoegde bestand

Stap 8: Schrijf code in STM32L4xx_it.c bestand in Keil

Schrijf code in STM32L4xx_it.c bestand in Keil
Schrijf code in STM32L4xx_it.c bestand in Keil

Schrijf code in STM32L4xx_it.c bestand in Keil.see code in bijgevoegd bestand.

Stap 9: Variabelen toevoegen in beide bestanden

Variabelen toevoegen in beide bestanden
Variabelen toevoegen in beide bestanden
Variabelen toevoegen in beide bestanden
Variabelen toevoegen in beide bestanden

Voeg variabelen toe in beide bestanden. Zie bijgevoegd bestand.

Stap 10: Vanuit het Projectmenu in Uvision Keil Ga naar het submenu Toepassing/Gebruikers

Ga vanuit het Project-menu in uvision Keil naar het submenu Toepassing/Gebruikers. Voeg het bestand lcd_hd44780_stml4xx.c toe (Klik met de rechtermuisknop op het submenu en ga naar de bladeroptie en voeg het bestand toe na het kopiëren van drie lcd-bestanden naar de bronmap van keil.)

Stap 11: Stel uw code samen

Compileer de code en debug als er fouten optreden.

Stap 12: Programmeer het bord met microcontroller

Programmeer het bord met een microcontroller. Krijg output zoals in deze video.

Aanbevolen: