Цитата(Саша Z @ Mar 21 2009, 21:03)

Есть задача реализации PWM, т.е считывание PWM при сохранении достаточно высокой точности.
На входе контроллера - PWM датчика, нулевой показатель - 50% (с допуском), весь range +/- 12.5% вокруг 50%.
Требуемая точность считывания контроллером: 0.04375% или лучше.
Полный период длится 10 msec.
Подаете на вход таймера (внешнюю) опору с частотой и (кратковременной) стабильностью, удовлетворяющими требованиям по точности измерения. Для упрощения жизни удобнее (но необязательно, если период PWM не плавает в разы), чтобы за период PWM счетчик не переполнялся более 1 раза.
Фиксируете по прерыванию от каждого фронта PWM состояние счетчика.
Остается несложная арифметика типа (a-b )/(a+b ), которая должна выполниться за <10 мс. Если период PWM равен 10 msec с точностью 0.04375% или лучше, то арифметика упрощается за счет обходимости деления.
Нутряные RC-генераторы что у ПИКов, что у АВРов в качестве опоры заявленные требования по точности по-любому не удовлетворят.
Посмотрите какой-то аппнот AD по обработке акселерометров с выходом в PWM - там все это расписано.