что значит не запускается?
если вообще не генерит, смотрите железо, ресет, так как от программы это не зависит, прописано в конфигурации. Посмотрите осциллогрфом что на выходе OSCO - должна быть частота деленная на 4.
А если не на той частоте работает, типа 31кгц, то последовательность конфигурации осциллятора, ее надо соблюдать.
для пик16 не знаю, давно с ними не работал, да и то были 628. для пик18ф4520 на 32мгц было так:
Код
main()
{
GIE = 0;
CLRWDT();
// сконфигурирован от внутреннего RC-генератора на частоту 32МГц
OSCCON = 0b01110000;
OSCTUNE = 0b11000000;
...
ЗЫ pwrtimer все таки рекомендуется включать, если это не режим отладки