1. Если использовать 10-битный шим 512 элементов хватит с лихвой. Хотя конечно можно и меньше, все зависит от допустимых шумов квантования. Но чем больше элементов тем ниже требования к фильтру на выходе. Я табличку к примеру считал на старом добром QBasic - на выходе готовый Сишный массив. 2. Настраиваем модуль CCP на режим PWM. 3. Считаем период обновления периода ШИМ. При периоде 16.66 милисекунд (60 герц) и количестве отсчетов 1024 получаем период 16.27 микросекунды. Округляем до 16 микросекунд и пересчитываем количество отсчетов - получается 1042. Считаем таблицу половину периода синуса, задавшись соответственным количеством отсчетов (521). Настраиваем прерывание от таймера 0 каждые 16 микросекунд. На основании этого выбираем тактовую частоту контроллера. 16 микросекунд время достаточно маленькое - лучше по максимуму - 20МГц. Дальше все просто - каждое прерывание берем очередной элемент массива синуса и пишем в регистр периода ШИМ-а.