Oscilador programable DS1077: no se puede establecer el registro DIV

2

Estoy intentando ejecutar un oscilador programable DS1077 de Maxim a través del bus I2C desde un Arduino Plataforma de desarrollo uno. Soy capaz de ejecutar el oscilador en los diferentes valores de preescalado 1,2,4 y 8. Mi osciloscopio muestra que los cambios en Out 1 son apropiados. Sin embargo, no puedo establecer el divisor DIV registro. Siempre parece estar configurado en N = 1, es decir, es como si el divisor no estuviera allí en absoluto. Configuré el bit MUX para activar el divisor correctamente, tride ambas configuraciones, etc ... pero no sirvió para nada. Configuración del hardware: ambos puertos de control están vinculados a GND, las líneas de comunicación serie están vinculadas a 5V a través de 3.9kOhm, y tengo 0.1 y 0.01uF entre GND y Vcc. Las líneas serie están conectadas a los puertos analógicos 4 y 5 de Arduino, y estoy usando la biblioteca de cables. Creo que el hecho de poder configurar el prescaler muestra que el problema no es el I2C ... ¡cualquier consejo sería apreciado! Gracias!

    
pregunta BM8000

1 respuesta

2

Finalmente descubrí por qué no pude establecer el registro DIV. Me puse en contacto con Maxim y me dijeron que el bit de registro MUX para activar el DIV debe configurarse DESPUÉS de configurar el DIV. Lo tenía en el orden opuesto en mi programa inicial. Después de voltear los comandos, ¡todo funcionó!

    
respondido por el BM8000

Lea otras preguntas en las etiquetas