Hi tAhm1D,
From listed code is seemed that no visible error, except this:
OSCCON = 0x46; //
OSCCON = 0x57; // unlock writes to the RPINRx and RPORx registers
OSCCONbits.IOLOCK = 0; //
RPOR7bits.RP14R = 18; //RP14(RB14) connected to OC1
RPOR7bits.RP15R = 19; //RP15(RB15) connected to OC2
OSCCON = 0x46; //
OSCCON = 0x57; // lock writes to the RPINRx and RPORx registers
OSCCONbits.IOLOCK = 1; //
The problem maybe is in a Proteus, but if you want try to replace the initialization code from one my project with dsPIC33:
// Select Internal FRC at POR
//_FOSCSEL(FNOSC_FRC);
_FOSCSEL(FNOSC_PRI);
// Enable Clock Switching and Configure POSC in XT mode
_FOSC(FCKSM_CSECMD & OSCIOFNC_OFF & POSCMD_XT);
//WD_init
//TLPRC=31.125uS
//TWTO = (N1=128) * (N2=2048) * (TLPRC)=8.159s
_FWDT(FWDTEN_ON & WDTPRE_PR128 & WDTPOST_PS512);
int main(void) {
// Configure Oscillator to operate the device at 36.864Mhz
// Fosc= Fin*M/(N1*N2), Fcy=Fosc/2
// Fosc= 7.3728M*40(2*2)=73.728Mhz for 7.3728MHz input clock
// Configure PLL prescaler, PLL postscaler, PLL divisor
PLLFBD=38; // M = 40 for 7.3728MHz
CLKDIVbits.PLLPRE=0; // N1 = 2
CLKDIVbits.PLLPOST=0; //0 - N2=2; 1 - N2=4 ; 3 - N2=8
// Initiate Clock Switch to Primary Oscillator with PLL (NOSC = 0b011)
__builtin_write_OSCCONH(0x03);
__builtin_write_OSCCONL(0x01);
// Wait for Clock switch to occur
while (OSCCONbits.COSC != 0b011);
RCONbits.SWDTEN=1; //Enable Watch Dog Timer
// Wait for PLL to lock
while(OSCCONbits.LOCK!=1) {};
ClrWdt();
Ports_init();
while(1) {
}
return 0;
}