[uquote="BOB51",url="/forum/viewtopic.php?p=4679296#p4679296"][uquote="Вячеслав М.",url="/forum/viewtopic.php?p=4679266#p4679266"]В основном цикле очень удобно временные задержки делать, ведь известно что следующий раз программа здесь будет через 1 ms, ...[/uquote]
Не факт, что основной цикл может иметь строго фиксированную длительность, скорее наоборот.

[/uquote]
Можно временные коды в начале цикла ставить, тогда джиттер будет совсем незначительный, но это большая натяжка, обычно не нужно точность больше чем 1 ms, это время для обработки всей программы, в тысячи задач, и точней не надо, так же нужно иметь ввиду что программа занимается вводом/выводом в строгом времени и никакого джиттера вообще нет, разумней в начале цикла. Это реализация программы реального времени, с множеством задач. Основная программа в главном цикле не занимается вводом/выводом, она лишь собирает таблицу, а далее по событию от прерывания ввод/вывод, каждую 1 ms.
Добавлено after 21 minute 59 seconds:
[uquote="shonty",url="/forum/viewtopic.php?p=4679330#p4679330"]LDIW удачный макрос. И мнемоника удачная.

[/uquote]
У меня подобных удачных макросов несколько десятков, например есть регистры с защитной предустановкой, вот на них есть макросы, для разных процев IF стоит, включая xmega, ну естественно все словные макросы как в вашем случае, так же в макрос передаётся оперативный регистр который можно использовать в данном участке программы, и прочее. Это вы откликнулись на предложение обменяться макросами?))) Так много макросов я у DI Halt _а стащил, потом немножко подправил.