Tabla de contenido:

Codificador rotatorio con placa STM32 Nucleo: 12 pasos
Codificador rotatorio con placa STM32 Nucleo: 12 pasos

Video: Codificador rotatorio con placa STM32 Nucleo: 12 pasos

Video: Codificador rotatorio con placa STM32 Nucleo: 12 pasos
Video: Incremental Encoder via TimerCounter 2024, Noviembre
Anonim
Codificador rotatorio con placa STM32 Nucleo
Codificador rotatorio con placa STM32 Nucleo

Este es el tutorial para obtener la posición del codificador rotatorio, que es un tipo de codificador incremental. Los codificadores son de dos tipos generalmente: uno es incremental y otro es absoluto, este código se puede usar para los microcontroladores STM32L476 y STM32L0. biblioteca lcd o código para LCD esto funcionará para cualquier microcontrolador STM32.

Estoy usando la placa de núcleo STM32L476 para este tutorial.

Puede controlar motores como el motor PASO a PASO o el servomotor escribiendo un código de acuerdo con el movimiento del codificador. Ya escribí un código de este tipo. Por favor, siga viendo mis tutoriales para más información.

Paso 1: Instale STM32CUBEMX y Keil con paquetes para STM32L476

Paso 2: cree una interfaz electrónica para su proyecto

Los componentes electrónicos necesarios para este proyecto son: -

1) LCD alfanumérico de 16x2 2) Placa de nucleo STM32L476. 3) Tablero de pan 4) Cables de puente. 5) Una computadora portátil con Windows instalado (6) Codificador rotatorio. La conexión de la placa LCD y STM32L476 se menciona a continuación: -

STM32L476 - LCD

TIERRA - PIN1

5V - PIN2

NA - Resistencia de 2.2K conectada a GND

PB10 - RS

PB11 - RW

PB2 - ES

PB12 - D4

PB13 - D5

PB14 - D6

PB15 - D7

5V - PIN15

TIERRA - PIN16

La conexión del codificador rotatorio y STM32 se muestra a continuación

PLACA Codificador Rotatorio-STM

Clavija de alimentación: 3.3 V

GND-GND

CLK-PC1

DT-PC0

Paso 3: Selección del microcontrolador en STM32CUBEMX

Abra cubemx y seleccione la placa nucleo64 con microcontrolador como STM32L476

Paso 4: Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial

Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial
Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial
Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial
Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial
Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial
Realice las selecciones necesarias en STM32cubemx de acuerdo con las imágenes que se muestran en este tutorial

Use los pasos anteriores para realizar las selecciones necesarias en STM32Cubemx y seleccione el reloj máximo para ese microcontrolador que está usando (STM32L476 que estoy usando en este tutorial)

Paso 5: Genere el código para UVision Keil

Paso 6: Escriba el código para la pantalla LCD en el archivo Main.c Utilice este paso solo para los microcontroladores STM32L4 y STM32L0. Para otros microcontroladores, utilice su propio código

Escriba el código para LCD en el archivo Main.c. Utilice este paso solo para los microcontroladores STM32L4 y STM32L0. Para otros microcontroladores, utilice su propio código
Escriba el código para LCD en el archivo Main.c. Utilice este paso solo para los microcontroladores STM32L4 y STM32L0. Para otros microcontroladores, utilice su propio código

Abra el archivo main.c de los proyectos, menú de Keil y escriba el código para la inicialización de la pantalla LCD antes del bucle while de main. Consulte la figura adjunta.

Paso 7: Escriba el código en el archivo While Loop Inside Main.c. Consulte el archivo adjunto

Escriba el código en el archivo While Loop Inside Main.c. Consulte el archivo adjunto
Escriba el código en el archivo While Loop Inside Main.c. Consulte el archivo adjunto

Paso 8: Escriba el código en el archivo STM32L4xx_it.c en Keil

Escriba el código en el archivo STM32L4xx_it.c en Keil
Escriba el código en el archivo STM32L4xx_it.c en Keil

Escriba el código en el archivo STM32L4xx_it.c en Keil. Ver el código en el archivo adjunto.

Paso 9: agregue variables en ambos archivos

Agregue variables en ambos archivos
Agregue variables en ambos archivos
Agregue variables en ambos archivos
Agregue variables en ambos archivos

Agregue variables en ambos archivos Ver archivo adjunto.

Paso 10: Desde el menú Proyecto en Uvision Keil, vaya al submenú Aplicación / Usuarios

Desde el menú Proyecto en uvision Keil, vaya al submenú Aplicación / Usuarios. Adjunte el archivo lcd_hd44780_stml4xx.c (haga clic con el botón derecho en el submenú y vaya a la opción de exploración y adjunte el archivo después de copiar tres archivos lcd a la carpeta de origen de keil).

Paso 11: compile su código

Compile el código y depure si se produce algún error.

Paso 12: Programe la placa con microcontrolador

Programe la placa con el microcontrolador. Obtendrá una salida como en este video.

Recomendado: