PWM com NRF24LE1 (Parte 6/14)

PWM con NRF24LE1 (Parte 6/14)

PWM con NRF24LE1

¿Alguna vez has pensado que la luz de tu teléfono, cuando está encendida, no siempre permanece encendida? Fluctúa a una frecuencia para ahorrar energía que nuestros ojos no pueden percibir. Está bien ahorrar batería, pero ¿cómo se hace? La respuesta es PWM.
PWM es una técnica importante para producir voltajes analógicos utilizando voltajes digitales y controlar LED, CC, servomotor, etc.
En este artículo, discutiremos sobre la generación de señales PWM usando el módulo NRF.
Hay dos formas de generar señales PWM con NRF2LE1:
1. Utilice el retraso para generar pulsos del ancho deseado.
2. Utilice pines de hardware PWM integrados.
Protótipo de gerador PWM baseado em módulo NRF24LE1
Fig. 1: Prototipo de generador PWM basado en el módulo NRF24LE1
Cubriremos ambos métodos uno por uno.
Primer método:
Este método se centra en utilizar el retraso para controlar el ancho del pulso. Entendamos esto en simples pasos.
1) Primero, el pin de salida se establece en ALTO.
2) Luego se da un retraso para mantener la salida ALTA durante un tiempo específico. Esto se hace para generar un pulso ALTO.
3) El pin de salida está BAJO.
4) Se proporciona retraso para mantener la salida BAJA.
5) Se repiten los pasos 1 a 4.
El período de tiempo de la onda generada será la suma del retraso del pulso ALTO y el retraso del pulso BAJO. El recíproco del tiempo nos dará la frecuencia de la señal producida. Podemos cambiar el ciclo de trabajo cambiando el tiempo de retardo del pulso de ENCENDIDO y APAGADO. El retraso se puede crear usando temporizadores incorporados o podemos usar funciones de retraso ya definidas. Las funciones de retardo las proporcionan bibliotecas integradas.
Segundo método:
En este método utilizaremos la funcionalidad PWM incorporada del NRF24LE1 para producir señales. Este método es más conveniente que el otro ya que elimina la confiabilidad de las funciones de retardo. Una restricción de este método es que la salida de señal PWM solo se puede obtener en pines habilitados para PWM.
Algunas características del PWM integrado son:
• Salida de dos canales. PWM0 y PWM1
• Rango de frecuencia de 2 KHz a 254 KHz cuando la MCU tiene una frecuencia de 16 MHz.
En el NRF24LE1 hay dos pines dedicados para PWM, PWM0 y PWM1. PWM0 es el pin 3 del puerto 0 y PWM1 es el pin 4 del puerto 0.
PWM se controla a través de tres registros:
Tabela Listagem de Registros do NRF24LE1 usados ​​para Geração PWM
Fig. 2: Listado de tablas de registros NRF24LE1 utilizados para la generación de PWM
Se ha adjuntado una imagen para comprender la configuración del ciclo de trabajo y la frecuencia PWM.
Los pasos sencillos para crear señales PWM son:
1. Seleccione la duración del período escribiendo el bit 7:6 de PWMCON.
2. Elija el preescalador para la frecuencia PWM usando el bit 5:2 de PWMCON.
3. Habilite PWM0 o PWM1 usando bit1 y bit0 de PWMCON.
4. Seleccione Ciclo de trabajo usando PWMDC1 y PWMDC0.
Se escribió un código para comprender el proceso de creación de PWM.

Código fuente del proyecto

###

 //Programa para
#include"reg24le1.h" // Archivo de encabezado de E/S para NRF24LE1
#include"hal_delay.h" // archivo de encabezado que contiene funciones de retardo // función principal vacío principal { int yo = 0, j = 0; // variable de bucle P0DIR = 0; //Puerto 0 como salida PWMCON = 0xfe; //activar PWM1 // Bucle infinito mientras(1) { para(l= 0xff; l--; l> 0x00) { PWMDC1 = Yo; //cambiar el ciclo de trabajo retraso_ms(10); //retraso de 10 ms } } }

###

Diagramas de circuito

Diagrama de circuito-NRF24LE1-Módulo-Generador PWM

Vídeo del proyecto

Volver al blog

Deja un comentario

Los comentarios deben ser aprobados antes de su publicación.