Ну так момент включения тиристора (или что там у Вас?) все равно задается таймером, кто мешает добавить эти 500 мкс? Обычно делаю привязку к сети с помощью программной PLL, которая синхронизирует с сетью один из таймеров. Там вообще можно ввести произвольный фазовый сдвиг.