Generador de tensión con arduino

Hola buenos días!

Soy nuevo en este campo y quisiera sacarme una duda,
Necesito realizar un generador de tensión de onda cuadrada con control de pulsos quisiera saber si podre reemplazar el funcionamiento de un multivibrador astable (LM555 ), con un arduino UNO.

el esquema es el siguiente:

FUENTE DE POTENCIA ( TRAFO ) --------> LM555 --------> CIRCUITO INVERSOR

ò

FUENTE DE POTENCIA ( TRAFO ) --------> ARDUINO UNO --------> CIRCUITO INVERSOR

ò

FUENTE DE POTENCIA ( TRAFO ) --------> LM555 ---------> ARDUINO UNO ----> CIRCUITO INVERSOR

No logro entender muy bien lo que deseas, pero por lo que entiendo lo que quieres es un simple PWM, lo puedes hacer utilizando la instrucción analogWrite(); Esto te dará un tren de pulsos por cualquier pin que tenga salida PWM (pines 3, 5, 6, 9, 10 y 11 en arduino UNO) el cual varía su ancho de pulso en un rango de valores de 0 - 255.

En Arduino UNO con PWM los pines 5 y 6 genera una salida de 980 Hz el resto de pines 490 Hz. Lo que modificas con analogWrite() es el ciclo de trabajo (DUTY CYCLE).

Mas bien es con la función tone() que generas una onda cuadrada de una frecuencia especificada entre 31~65535 Hz, pero en un solo pin a la vez.

El quiere generar una SPWM (sinusoidal PWM) y para eso hace falta algo mas que analogWrite

Muchas gracias a todo, si mi idea es a través de una fuente de tensión continua, conectada a un circuito electrónico generar una tensión pulsante de onda cuadrada . Para con ello la generación de un campo magnético en una bobina.

Mi pregunta es donde debe ir conectado el arduino para poder controlar el tiempo de funcionamiento y también la variación de ese campo magnético.

La verdad les agradezco a todos por el aporte.

Ya te ha respondido @ Kike_gl

Mas bien es con la función tone() que generas una onda cuadrada de una frecuencia especificada entre 31~65535 Hz, pero en un solo pin a la vez.

o si el arduino no va realizar ninguna otra operacion puedes hacerlo con un simple

digitalWrite(pin, HIGH);
delay(tiempo); //el tiempo es determinado por la frecuencia que quieras obtener
digitalWrite(pin,LOW);
delay(tiempo);

Solo ten en cuenta que el arduino no debe ir conectado directo a la bobina, necesitas un circuito para el control de potencia.
Al parecer quieres hacer un inversor de DC a AC, si estoy en lo correcto, solo busca en google inversor con arduino y te saldran muchos ejemplos, si no es así, proporciona mas datos de lo que pretendes hacer

Así es tenes razón el circuito esta conformada por una fuente de tensión (trafo) conectada a un multibibrador astable con el LM555 para el control de pulsos de esa onda luego este ultimo a un circuito inversor, luego a continuacion un diodo de carga descarga en paralelo con la bobina que ESTA EN SERIE CON UNA RESISTENCIA.
Lo que me queres decir vos es conectar el arduino directamente después de la fuente de tensión para tener el control del circuito electrónico y este ultimo de la bobina?.

el tema es que NO se si el arduino le proporcionara la mayor tensión y corriente al circuito electrónico para poder generar los 50hz de frecuencia y así producir en la bobina una intensidad de campo magnético de 200 gauss.

Muchisimas gracias a todos.

Simple: busca en google esto: inversor Arduino, vas a imagenes y te topas con este simple

Inversor Arduino

Esquema

esto es lo que buscas?

Muchas gracias a todos por su aporte, ya me las voy a ingeniar gracias.