¿Cómo encontrar la relación de trabajo de un PWM utilizando la captura de entrada?

1

Tengo un controlador PIC18F y es compatible con periféricos de captura de entrada. Entiendo que se puede usar para encontrar la frecuencia de la señal entrante. ¿Cómo puede obtenerse la relación de trabajo de PWM a partir de los siguientes detalles en hoja de datos ? ¿Hay alguna forma de hacerlo?

> bit 3-0 
 CCPxM<3:0>: CCPx Module Mode Select bits 0000 =
> Capture/Compare/PWM disabled (resets CCPx module) 0001 = Reserved 0010
> = Compare mode, toggle output on match (CCPxIF bit is set) 0011 = Reserved 0100 =    
  Capture mode:
  every falling edge 0101 = 
  Capture mode:
> every rising edge 0110 = 
  Capture mode: every 4th rising edge 0111 =
> Capture mode: every 16th rising edge 1000 = Compare mode: initialize
> CCPx pin low; on compare match, force CCPx pin high (CCPxIF bit is
> set) 1001 = Compare mode: initialize CCPx pin high; on compare match,
> force CCPx pin low (CCPxIF bit is set) 1010 = Compare mode: generate
> software interrupt on compare match (CCPxIF bit is set, CCPx pin
> reflects I/O state) 1011 = Compare mode: Special Event Trigger; reset
> timer on CCPx match (CCPxIF bit is set) 11xx = PWM mode
> 
  

hoja de datos página 257. PIC18F46J53.

¿Hay alguna forma de calcular la proporción de derechos? Confío en que de esta única frecuencia se puede obtener.

    
pregunta Rookie91

2 respuestas

2

Entiendo que un módulo de PCC puede capturar cualquiera un ascendente, o un borde descendente, pero no ambos.

Para obtener el ciclo de trabajo, deberá capturar los bordes ascendentes y descendentes para luego comparar los tiempos de ambos y establecer la relación. Eso no se puede hacer con un solo módulo.

Sin embargo, no hay nada que le impida enviar la señal a dos módulos CCP separados, uno configurado para el flanco ascendente y otro para el flanco descendente, y usar los dos para calcular la diferencia entre el ascenso y la caída.

Básicamente, terminarías con dos períodos, que deberían ser los mismos, pero una diferencia de fase entre ellos, y esa diferencia de fase sería igual al ciclo de trabajo.

    
respondido por el Majenko
1

Para responder a su pregunta sobre otros métodos, algunos PICS tienen una compuerta de temporizador muy conveniente que actúa independientemente del módulo CCP. Si puede usar uno de estos, es MUY conveniente para este cálculo. Cuente mientras la señal es alta, use la puerta y obtenga su período con el PCC.

Una búsqueda rápida muestra PIC18 (L) F2X / 4XK22 (enlace a la hoja de datos en pdf) ) parece tener esta característica (ver sección 12)

    
respondido por el Scott Seidman

Lea otras preguntas en las etiquetas