|
для 16ти битного таймера обработчик прирывания начинается сразу после перехода по вектору. Для псевдо-16-битного он начнется только после проверки условия. Если этого неучесть в предидущем цикле то несинхронность одновременно запущенных таймеров будет минимум 2 такта если переменная регистровая. Если она в озу то еше 3 цикла. А если регистры X Y Z заняты и их надо стековать- еше 2 цикла. Кругом бешлм набегает до 7 циклов. Их надо учесть в предидушем такте и тогда обработчик события переполнения псевдо-16-битного таймера будет ровно через 0xFFFF циклов после его запуска.
if (RotationCounter)
{//счетчик непереполнен
RotationCounter++;
}
else
{//счетчик переполнен
//вот отсюда и начинается обработчик события
// "переполнение псевдо-16-битного таймера".
}
E-mail: info@telesys.ru