Índice:
- Etapa 1: Instale STM32CUBEMX e Keil com pacotes para STM32L476
- Etapa 2: Faça a interface eletrônica para o seu projeto
- Etapa 3: Selecionando Microcontrolador em STM32CUBEMX
- Etapa 4: Faça as seleções necessárias no STM32cubemx de acordo com as imagens mostradas neste tutorial
- Etapa 5: Gerar código para UVision Keil
- Etapa 6: Grave o código para LCD no arquivo Main.c. Use esta etapa apenas para microcontroladores STM32L4 e STM32L0. Para outros microcontroladores, use seu próprio código
- Etapa 7: Grave o código no arquivo While Loop Inside Main.c. Consulte o arquivo anexado
- Etapa 8: Grave o código no arquivo STM32L4xx_it.c no Keil
- Etapa 9: adicionar variáveis em ambos os arquivos
- Etapa 10: Do menu do projeto no Uvision Keil, vá para o submenu Aplicativo / usuários
- Etapa 11: Compile seu código
- Etapa 12: Programar a placa com microcontrolador
Vídeo: Codificador giratório com placa de núcleo STM32: 12 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:37
Este é o tutorial para obter a posição do codificador rotativo, que é um tipo de codificador incremental. Os codificadores geralmente são de dois tipos: - um é incremental, o outro é absoluto. Este código pode ser usado para microcontroladores STM32L476 e STM32L0. Mas se você tiver o seu próprio biblioteca lcd ou código para LCD funcionará com qualquer microcontrolador STM32.
Estou usando a placa de núcleo STM32L476 para este tutorial.
Você pode controlar motores como o motor STEPPER ou servo motor escrevendo um código de acordo com o movimento do codificador. Já escrevi esse código. Continue assistindo meus tutoriais para mais detalhes.
Etapa 1: Instale STM32CUBEMX e Keil com pacotes para STM32L476
Etapa 2: Faça a interface eletrônica para o seu projeto
Os componentes eletrônicos necessários para este projeto são: -
1) LCD alfanumérico 16x2 2) placa de núcleo STM32L476. 3) Placa de pão 4) Fios de ligação em ponte. 5) Um laptop com Windows instalado (6) Codificador Rotativo. A conexão da placa LCD e STM32L476 são mencionadas abaixo: -
STM32L476 - LCD
GND - PIN1
5V - PIN2
NA - resistor 2.2K conectado ao GND
PB10 - RS
PB11 - RW
PB2 - EN
PB12 - D4
PB13 - D5
PB14 - D6
PB15 - D7
5V - PIN15
GND - PIN16
A conexão do Codificador Rotativo e STM32 estão abaixo
PLACA Codificador Rotativo-STM
Pino de alimentação 3,3 V
GND-GND
CLK-PC1
DT-PC0
Etapa 3: Selecionando Microcontrolador em STM32CUBEMX
Abra o cubemx e selecione a placa nucleo64 com microcontrolador como STM32L476
Etapa 4: Faça as seleções necessárias no STM32cubemx de acordo com as imagens mostradas neste tutorial
Use as etapas acima para fazer as seleções necessárias no STM32Cubemx e selecione o clock máximo para o microcontrolador que você está usando (STM32L476 que estou usando neste tutorial)
Etapa 5: Gerar código para UVision Keil
Etapa 6: Grave o código para LCD no arquivo Main.c. Use esta etapa apenas para microcontroladores STM32L4 e STM32L0. Para outros microcontroladores, use seu próprio código
Abra o arquivo main.c a partir dos projetos, menu do Keil e escreva o código para a inicialização do LCD antes do loop while de main. Refer a figura em anexo.
Etapa 7: Grave o código no arquivo While Loop Inside Main.c. Consulte o arquivo anexado
Etapa 8: Grave o código no arquivo STM32L4xx_it.c no Keil
Escreva o código no arquivo STM32L4xx_it.c no código Keil.see no arquivo anexado.
Etapa 9: adicionar variáveis em ambos os arquivos
Adicione variáveis em ambos os arquivos. Veja o arquivo anexado.
Etapa 10: Do menu do projeto no Uvision Keil, vá para o submenu Aplicativo / usuários
Do menu Project no uvision Keil vá para o submenu Application / Users. Anexe o arquivo lcd_hd44780_stml4xx.c (clique com o botão direito no submenu e vá para a opção Browse e anexe o arquivo após copiar três arquivos lcd para a pasta de origem do keil.)
Etapa 11: Compile seu código
Compile o código e depure se ocorrer algum erro.
Etapa 12: Programar a placa com microcontrolador
Programe a placa com o microcontrolador. Obterá a saída como neste vídeo.
Recomendado:
Cronômetro com Arduino e codificador giratório: 5 etapas
Cronômetro com Arduino e Codificador Rotativo: O cronômetro é uma ferramenta muito utilizada tanto em atividades industriais quanto domésticas. Esta montagem é barata e fácil de fazer. Também é muito versátil, podendo carregar um programa escolhido de acordo com as necessidades. Existem vários programas escritos por mim, para Ardui
Botão de volume USB usando DigiSpark e codificador giratório: 3 etapas
Botão de volume USB usando DigiSpark e codificador giratório: Este é um botão de controle de volume USB super barato. Algumas vezes, os botões tradicionais são mais convenientes para controlar as coisas do que clicar com o mouse em todos os lugares. Este projeto usa DigiSpark, um Rotary Encoder e Adafruit Trinket USB Library (https: //github.c
Use um motor de passo como codificador giratório: 9 etapas (com imagens)
Use um motor de passo como um codificador rotativo: Os codificadores rotativos são ótimos para uso em projetos de microcontroladores como um dispositivo de entrada, mas seu desempenho não é muito bom e satisfatório. Além disso, tendo muitos motores de passo sobressalentes por perto, decidi dar a eles um propósito. Então, se você tiver algum stepper
Locomotiva modelo com motor de passo controlado - Motor de passo como codificador giratório: 11 etapas (com imagens)
Locomotiva modelo com motor de passo controlado | Motor de passo como codificador giratório: Em um dos instrutíveis anteriores, aprendemos como usar um motor de passo como codificador giratório. Neste projeto, agora usaremos aquele motor de passo girado em codificador rotativo para controlar um modelo de locomotiva usando um microcontrolador Arduino. Então, sem fu
Como usar o motor de passo como codificador giratório e display OLED para etapas: 6 etapas
Como usar o motor de passo como codificador giratório e display OLED para etapas: Neste tutorial, aprenderemos como rastrear as etapas do motor de passo no display OLED. Assista a um vídeo de demonstração. O crédito do tutorial original vai para o usuário do youtube " sky4fly "