Smallest possible time UNO can switch 555 on and off

Hi there,

I'm looking to control a 555 timer in astable mode with the UNO, I want to turn the 555 on for 25uS. The reason I want to turn it on for 25uS is cause this is the amount of time needed for 8 cycles of my 555 timer. I'm not looking for someone to give me the code, I just want to know is this possible? Because I am really struggling so far.

Regards,

C

Can you tell us a bit more about the project ? The 555 is not a great timer and you already have better timers in the Arduino

The 555 is used to generate a 40KHz square wave to a ultrasonic transmitter. I want to use the Arduino to control the 555 to send bursts of 40KHz to the transmitter.

Eight cycles of 40Khz is not 25uS. You should be able to generate 8 cycles of 40Khz directly from the arduino, that is evenly divisible into the 16Mhz clock frequency.

Sorry, 200 uS I should have said, 25 uS was for one cycle. Also I am set on using the 555 due to the work I've already put into it, although I know there may/is better options out there!

It is straightforward to have the Arduino output a 200 usec pulse.

How would that be used to control a 555 timer?

As already pointed out, Arduino can do all this alone, and the code is freely available on line.

So the 5V from an Arduino digital pin would control the reset pin on the 555. Would a delay function be suitable?

Use micros(200) or something like that for the timing.

Edit - delayMicroseconds(200), it's really been a long time since I needed to use this.

Thanks for your help aarg. On a side note, I realise the 555 is not ideal but due to time constraints its something that I cant change now.

A delayMicroseconds(200) will do it.