Try to use
DispatcherTimer { Interval = TimeSpan.FromMilliseconds(0.01) }
may be suitable. Make a double break based on the number of intervals. You can also link to the system time and set the necessary entry points for your pulse. There are many options.