Make my own ultrasonic sensor

Hi! First, sorry for my English.
I want to build my own ultrasonic sensor(not use an HC-SR04). I'm using an atmega328. I have found this circuit: A Cheap Ultrasonic Range Finder
The question is: Does it work?
and if it works: Is it better to generate the pulse with a 555 or with PWM?
Thank you.

The author claims it worked. Build it and let us know.

Why use an extra chip?

The circuit and software are for a PIC.

jremington:
The author claims it worked. Build it and let us know.

Why use an extra chip?

What do to mean with "Extra chip"? The ATMega328 or the 555?

AWOL:
The circuit and software are for a PIC.

So, are you saying it won't work with the ATMega328?

I'm saying the software certainly won't work with an AVR.

Yes, i know the software is for a PIC, then i will think that for an AVR.
In my question I was referring to hardware, sorry.
I forgot to say that my purpose for this sensor is only detect if something is within a range of +/-50cm

Is it better to generate the pulse with a 555 or with PWM?

The 555 would be an extra chip, plus another half-dozen components.

I forgot to say that my purpose for this sensor is only detect if something is within a range of +/-50cm

It won't detect anything behind it, so "-50cm" is extremely unlikely.