AWOL:
, however you're implying using interrupts
No, I'm suggesting you live with the interrupts you already have, and use the hardware timers to generate your waveform.
The "glitch" you're seeing is caused by the timer used to generate the Arduino's software "micros" and "millis" clock.
If you have a dig around in the Playground, you should find tutorials and hints on how to user the timers to do what you want.
The Arduino timer code is is
hardware/arduino/cores/arduino/wiring.c
Yea thanks. I just got rid of that Timer0 interrupt in wiring.c for Timer0 and everything works perfect.
Thanks.