Tiempo de configuración de salida para el registro de desplazamiento (74HC595)

0

Hoja de datos de 74HC595 aquí

Quiero implementar el control de fase de CA en muchos canales (20-25) usando el módulo esp8266. Ya que no tiene tantos GPIOs, quiero usar el registro de desplazamiento en serie a paralelo. Dado que el control de fase requiere una conmutación precisa y rápida (rápido en comparación con la frecuencia de línea de CA), quiero evaluar si el registro de desplazamiento es una buena opción o no.

Para esto, quiero calcular el tiempo total requerido para configurar la salida de un pin en ALTO o BAJO. MCU funcionando a 80 MHz.

Hay un diagrama de tiempo en la hoja de datos:

Estoy teniendo dificultades para relacionar estas cosas entre sí y con la frecuencia de reloj de la MCU. Cualquier indicador sobre cómo calcular será realmente útil.

Gracias

    
pregunta Whiskeyjack

1 respuesta

0

Para desplazar 3 bytes con un reloj SPI de 1MHz se necesitarían 24usegundos. Digamos que tiene una granularidad general de 50 usec en su tiempo, incluida la configuración y la sincronización de los datos a la salida.

Eso significa que su error podría ser tanto como +/- 25usec de un medio ciclo de 1/120 segundos para una red eléctrica de 60Hz o aproximadamente 0.3%. El error en términos de potencia será diferente dependiendo de dónde ocurra el ciclo de "encendido", pero no mucho.

Me parece factible, tal vez. Es posible que tenga problemas para cambiar los datos cada 50 segundos sin pausas debido a otras cosas relacionadas con el firmware (como el mantenimiento de la pila), pero eso no es directamente relevante para su pregunta. Es probable que tenga que establecer una interrupción del temporizador de prioridad alta (est) y realizar el servicio con su propio ISR personalizado haciendo la sincronización (contando algunos registros y bits de configuración) y cambiando los datos.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas