Uso de la salida PWM de ATMega para proporcionar un reloj externo a un dispositivo externo de 3.3V

2

Estoy creando un sistema de tiempo de vuelo de ultrasonido y actualmente estoy en la fase de prueba. Estoy utilizando una placa TDC1000-TDC7200EVM de TI para realizar pruebas.

Actualmente, tengo un transductor ultrasónico de 40 kHz. Mi tarjeta de prueba viene con un reloj de 8 MHz preinstalado. Dados los valores de divisor disponibles (potencias de 2), la frecuencia de salida más cercana que puedo obtener para el transductor es de 31.25 kHz.

Mi idea es usar la salida PWM del chip ATmega en un Arduino para generar una fuente de reloj externa para la placa TDC. Puedo generar PWM de 2.67 MHz, luego la placa de TI puede dividir eso por 64 para obtener una salida de 41.7 kHz.

Mi pregunta es: ¿Cómo puedo conectar el PWM al pin del reloj externo de la placa TI?

Dado que la ATMega funciona a 5V y los chips TI son 3.3V, intenté usar un divisor de voltaje para obtener una señal PWM de 3.3V. Sin embargo, esto se comporta de una manera inesperada. Estoy usando 330kΩ y 680kΩ en serie. Después de la resistencia de 330 kΩ, la señal cae a ~ 30 mV pico-pico.

Si utilizo resistencias más pequeñas, 3.3 kΩ y 6.8 kΩ, obtengo ~ 640 mV pico-pico, pero la señal parece una onda triangular en lugar de una onda cuadrada.

    
pregunta Alex K

1 respuesta

4

Si sigue su enlace TDC1000-TDC7200EVM, lo llevará a la Guía del usuario. p35 muestra el esquema para la entrada EXT_OSC. Verá que tiene una resistencia de carga de 51.1ohm a través de la entrada EXT_OSC y su conexión a tierra.

Entonces, su circuito de 5V a 3V3 tiene que ser capaz de conducir una carga de 51.1ohm. Esto descarta un divisor potencial. El chip ATmega no puede generar tanta corriente desde un pin de E / S en un divisor de este tipo.

Observe el uso de un circuito activo para hacer el trabajo, como un transistor BC107 o su transistor NPN equivalente más cercano a la mano. Si conecta el colector a 3V3, la base a su salida de ATmega a través de una resistencia de la serie 1K y el emisor a EXT_OSC, eso funcionaría. (Disculpas por ningún circuito mostrado.)

    
respondido por el TonyM

Lea otras preguntas en las etiquetas