(nivel lógico) Control de la salida de un oscilador de 900 hz (5v p2p)

2

Parece un problema bastante simple, y quizás todo lo que se necesita es una confirmación del enfoque (aunque siempre se agradece una mejor solución). Así que el problema:

  1. Tengo un oscilador basado en onda cuadrada basado en 555 (con una velocidad de reloj de aproximadamente 900 hz 5v p2p) el cual necesito conectar la salida para habilitar / inhibir la sección de amplificación de potencia del diseño (solo para audio). No puedo usar un pin de salida PWM sincronizado específicamente en mcu (todo en uso para otras necesidades).

  2. Realmente no tengo espacio para empujar una compuerta AND a la salida (en el PCB de destino), por lo que estaba pensando en un seguidor de emisores clásico (npn) con el "colector" alimentado por la salida de el 555, la 'base' accionada por un pin lógico de salida mcu (arduino 5v), y la salida al amplificador de potencia tomada a través del emisor y la resistencia del emisor. En mi opinión, en el nivel bajo (desde el 555) alimentado al colector, el transistor estará apagado y el emisor bajará a través de la resistencia del emisor o la salida baja del oscilador (dependiendo del nivel lógico Vb del mcu).

No es espectacularmente entusiasmado con la caída de Vbe, pero puede vivir con ella (si es alrededor de los 0.6v esperados).

De todos modos la (s) pregunta (s) a) es la forma correcta de proceder o hay una mejor solución (¿teniendo en cuenta el pequeño espacio de PCB disponible y mi renuencia a crear espacio para una compuerta lógica estándar de 8 pines o de 14 pps?

b) ¿existe un enfoque diferente para generar un tono de audio de 900 hz habilitado para lógica? (Descubrí que el uso de un oscilador nand con habilitación alimentado a la primera nand no era confiable para el cambio lógico rápido desde el mcu (sospecho que se debe a la interrupción de la carga / descarga de la red RC en la puerta 2) / p>

Espero que todo esto tenga algún tipo de sentido, ten un mal presentimiento. Me estoy perdiendo una solución obvia para esto.

    
pregunta user183705

5 respuestas

2

Si tiene un temporizador que ya está siendo usado por otra cosa y puede activar una interrupción a un múltiplo par de 900Hz, entonces use una interrupción para girar un pin para generar su señal.

Otra opción es conectar la salida del 555 a una entrada y copiarla a la salida del microcontrolador con una interrupción de cambio de pin, que se puede habilitar o deshabilitar.

De lo contrario, usaría la solución de Andy, pero sin el FET: ya que usa un arduino que es tolerante a 5V, puede configurar un pin para generar un nivel lógico o una alta impedancia (entrada). Ahora conecte este pin al condensador "C" del 555. Configúrelo para generar un 0 lógico para deshabilitar la oscilación y ajústelo a Z alto para habilitarlo. ¡Solución gratis sin partes!

    
respondido por el peufeu
6

Solo usa el pin de reinicio en el 555.

    
respondido por el RoyC
6

Creo que solo responderé b):

  

¿Existe un enfoque diferente para generar un tono de audio de 900 hz habilitado para lógica? (... para la lógica de conmutación rápida desde el mcu )

Ya tienes un MCU. Prácticamente todas las MCU que conozco contienen al menos una, unidades PWM independientes, generalmente múltiples. Estos están diseñados para proporcionar ondas rectangulares de ciclo de trabajo de frecuencia ajustable.

En otras palabras: elimine el maldito 555 y solo use su MCU existente para generar un tono de 900Hz, o reemplace el 555 con un MCU realmente barato y el filtro de paso bajo de manera apropiada para convertir la onda cuadrada en onda sinusoidal.

Tenga en cuenta que 900Hz es realmente lento, desde la perspectiva de una MCU. Podría hacerlo, especialmente si tiene otros temporizadores / contadores de sobra, simplemente haga esto en el software MCU. El jitter potencial no importará, ya que de todos modos sería un componente de alta frecuencia que se filtraría.

    
respondido por el Marcus Müller
1
  

por lo que estaba pensando en un seguidor de emisor clásico (npn) con el   'colector' alimentado por la salida del 555, la 'base' accionada por un mcu   (arduino 5v) pin lógico de salida

Un 555 utilizado como un auto-restablecimiento astable a través del pin de descarga como tal: -

Entonces,coloqueunpequeñoMOSFETenelcondensador(queserestableceatravésdeR2yelpin7)yactiveestodesdelaMCU.OconectedirectamenteelMOSFETalpin7ytierra.

Tenga en cuenta que el transistor interno dentro del 555 conectado al pin 7: el uso de un transistor externo le brindará la funcionalidad que necesita sin distorsionar la tensión de salida.

    
respondido por el Andy aka
1

No he diseñado con un 555 por un tiempo, así que aquí va.

En mi opinión, el enfoque más simple es el que da @RoyC: use el pin de reinicio. Hay otros enfoques; por ejemplo, alimente la salida a un diodo / resistencia Y compuerta Y use esa salida para conducir lo que sea que esté manejando, es decir, tres partes: un par de diodos de conmutación (por ejemplo, 1N4148s y una resistencia pull-up). Algunas notas sobre el 555:

Nunca obtendrás una onda cuadrada (con un desplazamiento) incluso si utilizas diodos de dirección para controlar la carga / descarga del condensador. Si realmente desea algo con exactamente un ciclo de trabajo del 50%, debe enviar la señal a un flip-flop y dividir la frecuencia entre 2. Y luego, dependiendo de la tecnología que esté utilizando, es posible que tenga que pasar por alto los 555 Salida a tierra con un pequeño capacitor (utilicé disco cerámico); de lo contrario, puede terminar con una activación de flip-flop espuria (escuela de golpes fuertes aquí). En el arranque, el capacitor tiene que cargarse a algo así como 2/3 Vcc; luego se descarga a algo como 1/3 Vcc, de vuelta a 2/3 Vcc, abajo, etc.

Todo esto está documentado en los manuales de datos originales.

    
respondido por el eipi-1

Lea otras preguntas en las etiquetas