<!-- CRC: 54CD51B8F484283E91B3AD9DE6F4F50CD737CAD667ACC1D9A8DCC3CA81AE80DDD27EC89EFA455D5952565B6139E80F2BF8B48017CEA9C3F928FAD4357B6CF5FF26EAE3D586E01570DBDCC8ACFA74A10290EE07411E03407AB4F8D1B630E46D2EA8FF44FB1582E41C7EE0DC66825101D9554EA0798318418438C05D51707231EE7C0FD8E9F2AB79BAE50A242D0272FD00FAAC4E6B89EE5F2E6A72982F55AEA9DDE0D81DD2907BEF06CEC6543E252211652D8A5F0DD8264171086944AE325796A67AAEB51CD5B5CE250EE91BA330BE264EFA79F9A8B3960EA459A43852AB18B119835CEFDAC0E534C9 -->
<!-- REVISION: 2.0 -->
<!-- GUID: 0C176BE8-F82A-48C0-859D-B74D00B7255F -->
<!-- DATE: 07\07\2020 -->
<!-- DIR: FCD\PIC16\33EP32GP504.fcdx -->
<root>
<device name='33EP32GP504' product='PIC16' cal='PIC16BIT' family='33E' bits='16' >
    <clock max_speed='140000000' master_divider='2' default='12000000' />
    <memory >
        <flash bytes='32768' />
        <ram bytes='4096' />
    </memory>
    <configuration address='0x057FFE' mult='2' >
        <format >
            <word address='_FICD' value='0xFFEF' />
            <word address='_FPOR' value='0xFFFF' />
            <word address='_FWDT' value='0xFFFF' />
            <word address='_FOSC' value='0xFFBF' />
            <word address='_FOSCSEL' value='0xFFFF' />
            <word address='_FGS' value='0xFFFF' />
        </format>
        <setting />
        <settings >
            <setting name='ICS' offset='0' mask='3' bits='2' hint='ICD Communication Channel Select bits' >
                <option name='Communicate on PGEC1 and PGED1' value='3' />
                <option name='Communicate on PGEC2 and PGED2' value='2' />
                <option name='Communicate on PGEC3 and PGED3' value='1' />
                <option name='Reserved, do not use' value='0' />
            </setting>
            <setting name='SIGN' offset='4' mask='1' bits='1' hint='Signature Bit' >
                <option name='Correct' value='0' />
            </setting>
            <setting name='JTAGEN' offset='5' mask='1' bits='1' hint='JTAG Enable bit' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='ALTI2C1' offset='20' mask='1' bits='1' hint='Alternate I2C1 pins' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='ALTI2C2' offset='21' mask='1' bits='1' hint='Alternate I2C2 pins' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='WDTWIN' offset='22' mask='3' bits='2' hint='Watchdog Window Select bits' >
                <option name='WDT Window is 25% of WDT period' value='3' />
                <option name='WDT Window is 37.5% of WDT period' value='2' />
                <option name='WDT Window is 50% of WDT period' value='1' />
                <option name='WDT Window is 75% of WDT period' value='0' />
            </setting>
            <setting name='WDTPOST' offset='32' mask='15' bits='4' hint='Watchdog Timer Postscaler bits' >
                <option name='1:32,768' value='15' />
                <option name='1:16,384' value='14' />
                <option name='1:8,192' value='13' />
                <option name='1:4,096' value='12' />
                <option name='1:2,048' value='11' />
                <option name='1:1,024' value='10' />
                <option name='1:512' value='9' />
                <option name='1:256' value='8' />
                <option name='1:128' value='7' />
                <option name='1:64' value='6' />
                <option name='1:32' value='5' />
                <option name='1:16' value='4' />
                <option name='1:8' value='3' />
                <option name='1:4' value='2' />
                <option name='1:2' value='1' />
                <option name='1:1' value='0' />
            </setting>
            <setting name='WDTPRE' offset='36' mask='1' bits='1' hint='Watchdog Timer Prescaler bit' >
                <option name='1:128' value='1' />
                <option name='1:32' value='0' />
            </setting>
            <setting name='PLLKEN' offset='37' mask='1' bits='1' hint='PLL Lock Enable bit' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='WINDIS' offset='38' mask='1' bits='1' hint='Watchdog Timer Window Enable bit' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='FWDTEN' offset='39' mask='1' bits='1' hint='Watchdog Timer Enable bit' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='POSCMD' offset='48' mask='3' bits='2' hint='Primary Oscillator Mode Select bits' >
                <option name='Primary Oscillator disabled' value='3' />
                <option name='HS Crystal Oscillator Mode' value='2' />
                <option name='XT Crystal Oscillator Mode' value='1' />
                <option name='EC (External Clock) Mode' value='0' />
            </setting>
            <setting name='OSCIOFNC' offset='50' mask='1' bits='1' hint='OSC2 Pin Function bit' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='IOL1WAY' offset='53' mask='1' bits='1' hint='Peripheral pin select configuration' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='FCKSM' offset='54' mask='3' bits='2' hint='Clock Switching Mode bits' >
                <option name='Both Clock switching and Fail-safe Clock Monitor are disabled' value='2' />
                <option name='Clock switching is enabled,Fail-safe Clock Monitor is disabled' value='1' />
                <option name='Both Clock switching and Fail-safe Clock Monitor are enabled' value='0' />
            </setting>
            <setting name='FNOSC' offset='64' mask='7' bits='3' hint='Oscillator Source Selection' >
                <option name='Internal Fast RC (FRC) Oscillator with postscaler' value='7' />
                <option name='Low-Power RC Oscillator (LPRC)' value='5' />
                <option name='Primary Oscillator with PLL module (XT + PLL, HS + PLL, EC + PLL)' value='3' />
                <option name='Primary Oscillator (XT, HS, EC)' value='2' />
                <option name='Fast RC Oscillator with divide-by-N with PLL module (FRCPLL)' value='1' />
                <option name='Internal Fast RC (FRC)' value='0' />
            </setting>
            <setting name='IESO' offset='71' mask='1' bits='1' hint='Two-speed Oscillator Start-up Enable bit' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='GWRP' offset='80' mask='1' bits='1' hint='General Segment Write-Protect bit' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='GCP' offset='81' mask='1' bits='1' hint='General Segment Code-Protect bit' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
        </settings>
    </configuration>
    <pins sides='4' smd='1' >
        <pin name='RP41 / RB9' port='1' bit='9' rpreg='RPOR3bits.RP41R' rpnum='41' />
        <pin name='RP54 / RC6' port='2' bit='6' rpreg='RPOR5bits.RP54R' rpnum='54' />
        <pin name='RP55 / RC7' port='2' bit='7' rpreg='RPOR5bits.RP55R' rpnum='55' />
        <pin name='RP56 / RC8' port='2' bit='8' rpreg='RPOR6bits.RP56R' rpnum='56' />
        <pin name='RP57 / RC9' port='2' bit='9' rpreg='RPOR6bits.RP57R' rpnum='57' />
        <pin name='VSS' />
        <pin name='VCAP' />
        <pin name='RP42 / RB10' port='1' bit='10' rpreg='RPOR4bits.RP42R' rpnum='42' />
        <pin name='RP43 / RB11' port='1' bit='11' rpreg='RPOR4bits.RP43R' rpnum='43' />
        <pin name='RB12' port='1' bit='12' rpnum='44' />
        <pin name='RB13' port='1' bit='13' rpnum='45' />
        <pin name='RA10' port='0' bit='10' />
        <pin name='RA7' port='0' bit='7' />
        <pin name='RB14' port='1' bit='14' rpnum='46' />
        <pin name='RB15' port='1' bit='15' rpnum='47' />
        <pin name='AVSS' />
        <pin name='AVDD' />
        <pin name='MCLR' />
        <pin name='AN0 / RA0' port='0' bit='0' adc='0' />
        <pin name='AN1 / RA1' port='0' bit='1' adc='1' />
        <pin name='AN2 / SS1 / RB0' port='1' bit='0' adc='2' rpnum='32' />
        <pin name='VREF+ / AN3 / RB1' port='1' bit='1' adc='3' rpnum='33' />
        <pin name='AN4 / RB2' port='1' bit='2' adc='4' rpnum='34' />
        <pin name='AN5 / RP35 / RB3' port='1' bit='3' adc='5' rpreg='RPOR0bits.RP35R' rpnum='35' />
        <pin name='AN6 / RC0' port='2' bit='0' adc='6' />
        <pin name='AN7 / RC1' port='2' bit='1' adc='7' />
        <pin name='AN8 / RC2' port='2' bit='2' adc='8' />
        <pin name='VDD' />
        <pin name='VSS' />
        <pin name='OSC1 / RA2' port='0' bit='2' />
        <pin name='OSC2 / RA3' port='0' bit='3' />
        <pin name='SDA2 / RA8' port='0' bit='8' rpnum='24' />
        <pin name='SCL2 / RP36 / RB4' port='1' bit='4' rpreg='RPOR1bits.RP36R' rpnum='36' />
        <pin name='SDO1 / RP20 / RA4' port='0' bit='4' rpreg='RPOR0bits.RP20R' rpnum='20' />
        <pin name='SDI1 / RA9' port='0' bit='9' rpnum='25' />
        <pin name='SCK1 / RC3' port='2' bit='3' rpnum='51' />
        <pin name='SDA1 / RC4' port='2' bit='4' rpnum='52' />
        <pin name='SCL1 / RC5' port='2' bit='5' rpnum='53' />
        <pin name='VSS' />
        <pin name='VDD' />
        <pin name='RP37 / RB5' port='1' bit='5' rpreg='RPOR1bits.RP37R' rpnum='37' />
        <pin name='RP38 / RB6' port='1' bit='6' rpreg='RPOR2bits.RP38R' rpnum='38' />
        <pin name='RP39 / INT0 / RB7' port='1' bit='7' rpreg='RPOR2bits.RP39R' rpnum='39' />
        <pin name='RP40 / RB8' port='1' bit='8' rpreg='RPOR3bits.RP40R' rpnum='40' />
    </pins>
    <adc type='7' bits='12' scanning='1' dma='1' >
        <speed >
            <option name='FRC' value='64' />
            <option name='Tcy' value='0' />
            <option name='Tcy * 2' value='1' />
            <option name='Tcy * 4' value='3' />
            <option name='Tcy * 8' value='7' />
            <option name='Tcy * 16' value='15' />
            <option name='Tcy * 32' value='31' />
            <option name='Tcy * 64' value='63' />
        </speed>
        <sampletrigger>
            <option name='Manual' value='0' />
            <option name='INT0' value='1' />
            <option name='Timer 3' value='2' />
            <option name='Timer 5' value='4' />
            <option name='Automatic' value='7' />
        </sampletrigger>
    </adc>
    <flash enabled='1' type='1' >
    	<info startaddress='0' bitsperinst='24' bitsperval='16' minwriteinstcount='2' rowinstcount='0' pageinstcount='512' pcincrement='2' />
    </flash>
    <dma channels='4' firstchannel='0' >
    	<adc adc1='13' rxreg1='ADC1BUF0' />
    	<uart rx1='11' rxreg1='U1RXREG' tx1='12' txreg1='U1TXREG' rx2='30' rxreg2='U2RXREG' tx2='31' txreg2='U2TXREG' />
    	<can rx1='34' rxreg1='C1RXD' tx1='70' txreg1='C1TXD' />
    	<spi spi1='10' rxreg1='SPI1BUF' txreg1='SPI1BUF' spi2='33' rxreg2='SPI2BUF' txreg2='SPI2BUF' />
    </dma>
    <spi >
        <miso port='1' pin='9' />
        <mosi port='1' pin='8' />
        <clk port='1' pin='7' />
        <ss port='1' pin='0' />
    </spi>
    <spi remappable='1' >
        <miso rpreg='RPINR22bits.SDI2R' />
        <mosi rpnum='8' />
        <clk rpreg='RPINR22bits.SCK2R' rpnum='9' />
        <ss rpreg='RPINR23bits.SS2R' />
    </spi>
    <uart remappable='1' >
        <tx rpnum='1' />
        <rx rpreg='RPINR18bits.U1RXR' />
    </uart>
    <uart remappable='1' >
        <tx rpnum='3' />
        <rx rpreg='RPINR19bits.U2RXR' />
    </uart>
    <i2c master='1' >
        <sda port='2' pin='4' />
        <scl port='2' pin='5' />
    </i2c>
    <i2c master='1' >
        <sda port='0' pin='8' />
        <scl port='1' pin='4' />
    </i2c>
    <pwm regset='1' remappable='1' >
    	<timer>
    	    <option name='Timer1' value='1' />
    	    <option name='Timer2' value='2' />
    	    <option name='Timer3' value='3' />
    	    <option name='Timer4' value='4' />
    	    <option name='Timer5' value='5' />
    	</timer>
        <prescaler >
            <option name='1' value='0' />
            <option name='8' value='1' />
            <option name='64' value='2' />
            <option name='256' value='3' />
        </prescaler>
        <out rpnum='16' />
        <out rpnum='17' />
        <out rpnum='18' />
        <out rpnum='19' />
    </pwm>
    <can remappable='1' >
        <tx rpnum='14' />
        <rx rpreg='RPINR26bits.C1RXR' />
    </can>
    <interrupts >
        <interrupt ident='TMR1' reg='TMR1' type='timer16' name='Timer 1' handler='#ifndef MX_ISR_T1\n#define MX_ISR_T1\nvoid _ISR _T1Interrupt(void)\n{\n\tIFS0bits.T1IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.T1IE = 1;\n' disable='IEC0bits.T1IE = 0;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='Internal (Fosc / 2)' clkdiv='2' value='T1CON = ((T1CON &amp; 0xfffd) | 0x8000);\n' />
                    <entry name='External' clkdiv='0' value='T1CON |= 0x8002;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='T1CON &amp;= 0xff0f;\n' />
                    <entry name='1:8' value='T1CON = ((T1CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:64' value='T1CON = ((T1CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:256' value='T1CON = ((T1CON &amp; 0xff0f) | 0x0030);\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='PR1=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='TMR2' reg='TMR2' type='timer16' name='Timer 2' handler='#ifndef MX_ISR_T2\n#define MX_ISR_T2\nvoid _ISR _T2Interrupt(void)\n{\n\tIFS0bits.T2IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.T2IE = 1;\n' disable='IEC0bits.T2IE = 0;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='Internal (Fosc / 2)' clkdiv='2' value='T2CON = ((T2CON &amp; 0xfffd) | 0x8000);\n' />
                    <entry name='External' clkdiv='0' value='T2CON |= 0x8002;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='T2CON &amp;= 0xff0f;\n' />
                    <entry name='1:8' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:64' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:256' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0030);\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='PR2=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='TMR3' reg='TMR3' type='timer16' name='Timer 3' handler='#ifndef MX_ISR_T3\n#define MX_ISR_T3\nvoid _ISR _T3Interrupt(void)\n{\n\tIFS0bits.T3IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.T3IE = 1;\n' disable='IEC0bits.T3IE = 0;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='Internal (Fosc / 2)' clkdiv='2' value='T3CON = ((T3CON &amp; 0xfffd) | 0x8000);\n' />
                    <entry name='External' clkdiv='0' value='T3CON |= 0x8002;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='T3CON &amp;= 0xff0f;\n' />
                    <entry name='1:8' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:64' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:256' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0030);\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='PR3=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='TMR4' reg='TMR4' type='timer16' name='Timer 4' handler='#ifndef MX_ISR_T4\n#define MX_ISR_T4\nvoid _ISR _T4Interrupt(void)\n{\n\tIFS1bits.T4IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.T4IE = 1;\n' disable='IEC1bits.T4IE = 0;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='Internal (Fosc / 2)' clkdiv='2' value='T4CON = ((T4CON &amp; 0xfffd) | 0x8000);\n' />
                    <entry name='External' clkdiv='0' value='T4CON |= 0x8002;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='T4CON &amp;= 0xff0f;\n' />
                    <entry name='1:8' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:64' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:256' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0030);\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='PR4=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='TMR5' reg='TMR5' type='timer16' name='Timer 5' handler='#ifndef MX_ISR_T5\n#define MX_ISR_T5\nvoid _ISR _T5Interrupt(void)\n{\n\tIFS1bits.T5IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.T5IE = 1;\n' disable='IEC1bits.T5IE = 0;\n' >
            <timer overflow='65536' extrange='0' />
            <options >
                <option name='Clock Source Select' >
                    <entry name='Internal (Fosc / 2)' clkdiv='2' value='T5CON = ((T5CON &amp; 0xfffd) | 0x8000);\n' />
                    <entry name='External' clkdiv='0' value='T5CON |= 0x8002;\n' />
                </option>
                <prescale name='Prescaler Rate' >
                    <entry name='1:1' value='T5CON &amp;= 0xff0f;\n' />
                    <entry name='1:8' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:64' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:256' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0030);\n' />
                </prescale>
                <rollover name='Rollover Value' >
                    <entry name='65536' min='1' max='65536' value='PR5=%d-1;\n' />
                </rollover>
            </options>
        </interrupt>
        <interrupt ident='INT0' type='pin' name='INT0/RB7' handler='#ifndef MX_ISR_I0\n#define MX_ISR_I0\nvoid _ISR _INT0Interrupt(void)\n{\n\tIFS0bits.INT0IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.INT0IE = 1;' disable='IEC0bits.INT0IE = 0;' >
            <ioc config='3' >
                <rising port='1' mask='0x80' />
                <falling port='1' mask='0x80' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCON2bits.INT0EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCON2bits.INT0EP = 1;\n' />
                </edge>
            </options>
        </interrupt>
        <interrupt ident='INT1' type='pin' name='INT1/REMAP' handler='#ifndef MX_ISR_I1\n#define MX_ISR_I1\nvoid _ISR _INT1Interrupt(void)\n{\n\tIFS1bits.INT1IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.INT1IE = 1;' disable='IEC1bits.INT1IE = 0;' >
            <ioc config='3' >
                <rising port='1' mask='0x02' />
                <falling port='1' mask='0x02' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCON2bits.INT1EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCON2bits.INT1EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
                    <entry name='A4' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x1400;\n' />
                    <entry name='A8' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x1800;\n' />
                    <entry name='A9' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x1900;\n' />
                    <entry name='A11' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x1B00;\n' />
                    <entry name='A12' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x1C00;\n' />
                    <entry name='B0' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2000;\n' />
                    <entry name='B1' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2100;\n' />
                    <entry name='B2' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2200;\n' />
                    <entry name='B3' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2300;\n' />
                    <entry name='B4' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2400;\n' />
                    <entry name='B5' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2500;\n' />
                    <entry name='B6' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2600;\n' />
                    <entry name='B7' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2700;\n' />
		    <entry name='B8' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2800;\n' />
		    <entry name='B9' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2900;\n' />
		    <entry name='B10' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2A00;\n' />
		    <entry name='B11' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2B00;\n' />
                    <entry name='B12' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2C00;\n' />
                    <entry name='B13' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2D00;\n' />
                    <entry name='B14' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2E00;\n' />
                    <entry name='B15' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x2F00;\n' />
                    <entry name='C3' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3300;\n' />
                    <entry name='C4' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3400;\n' />
                    <entry name='C5' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3500;\n' />
                    <entry name='C6' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3600;\n' />
                    <entry name='C7' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3700;\n' />
                    <entry name='C8' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3800;\n' />
                    <entry name='C9' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3900;\n' />
                    <entry name='C10' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x3A00;\n' />
                    <entry name='E14' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x5E00;\n' />
                    <entry name='E15' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x5F00;\n' />
                    <entry name='F0' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x6000;\n' />
                    <entry name='F1' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x6100;\n' />
                    <entry name='G6' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x7600;\n' />
                    <entry name='G7' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x7700;\n' />
                    <entry name='G8' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x7800;\n' />
                    <entry name='G9' value='RPINR0 = (RPINR0 &amp; 0x00FF) | 0x7900;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RB1' value='' />
                </option>
            </options>
        </interrupt>
        <interrupt ident='INT2' type='pin' name='INT2/REMAP' handler='#ifndef MX_ISR_I2\n#define MX_ISR_I2\nvoid _ISR _INT2Interrupt(void)\n{\n\tIFS1bits.INT2IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.INT2IE = 1;' disable='IEC1bits.INT2IE = 0;' >
            <ioc config='3' >
                <rising port='1' mask='0x04' />
                <falling port='1' mask='0x04' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCON2bits.INT2EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCON2bits.INT2EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
                    <entry name='A4' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x14;\n' />
                    <entry name='A8' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x18;\n' />
                    <entry name='A9' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x19;\n' />
                    <entry name='A11' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x1B;\n' />
                    <entry name='A12' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x1C;\n' />
                    <entry name='B0' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x20;\n' />
                    <entry name='B1' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x21;\n' />
                    <entry name='B2' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x22;\n' />
                    <entry name='B3' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x23;\n' />
                    <entry name='B4' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x24;\n' />
                    <entry name='B5' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x25;\n' />
                    <entry name='B6' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x26;\n' />
                    <entry name='B7' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x27;\n' />
		    <entry name='B8' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x28;\n' />
		    <entry name='B9' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x29;\n' />
		    <entry name='B10' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2A;\n' />
		    <entry name='B11' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2B;\n' />
                    <entry name='B12' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2C;\n' />
                    <entry name='B13' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2D;\n' />
                    <entry name='B14' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2E;\n' />
                    <entry name='B15' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x2F;\n' />
                    <entry name='C3' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x33;\n' />
                    <entry name='C4' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x34;\n' />
                    <entry name='C5' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x35;\n' />
                    <entry name='C6' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x36;\n' />
                    <entry name='C7' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x37;\n' />
                    <entry name='C8' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x38;\n' />
                    <entry name='C9' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x39;\n' />
                    <entry name='C10' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x3A;\n' />
                    <entry name='E14' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x5E;\n' />
                    <entry name='E15' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x5F;\n' />
                    <entry name='F0' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x60;\n' />
                    <entry name='F1' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x61;\n' />
                    <entry name='G6' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x76;\n' />
                    <entry name='G7' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x77;\n' />
                    <entry name='G8' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x78;\n' />
                    <entry name='G9' value='RPINR1 = (RPINR1 &amp; 0xFF00) | 0x79;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RB2' value='' />
                </option>
            </options>
        </interrupt>
        <interrupt ident='RXINT0' type='comms' name='UART RXINT 1' handler='#ifndef MX_ISR_RX1\n#define MX_ISR_RX1\nvoid _ISR _U1RXInterrupt(void)\n{\n\tIFS0bits.U1RXIF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.U1RXIE = 1;\n' disable='IEC0bits.U1RXIE = 0;\n' />
        <interrupt ident='TXINT0' type='comms' name='UART TXINT 1' handler='#ifndef MX_ISR_TX1\n#define MX_ISR_TX1\nvoid _ISR _U1TXInterrupt(void)\n{\n\tIFS0bits.U1TXIF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.U1TXIE = 1;\n' disable='IEC0bits.U1TXIE = 0;\n' />
        <interrupt ident='RXINT1' type='comms' name='UART RXINT 2' handler='#ifndef MX_ISR_RX2\n#define MX_ISR_RX2\nvoid _ISR _U2RXInterrupt(void)\n{\n\tIFS1bits.U2RXIF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.U2RXIE = 1;\n' disable='IEC1bits.U2RXIE = 0;\n' />
        <interrupt ident='TXINT1' type='comms' name='UART TXINT 2' handler='#ifndef MX_ISR_TX2\n#define MX_ISR_TX2\nvoid _ISR _U2TXInterrupt(void)\n{\n\tIFS1bits.U2TXIF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.U2TXIE = 1;\n' disable='IEC1bits.U2TXIE = 0;\n' />
        <interrupt ident='MI2C0' type='comms' name='Master I2C 1' handler='#ifndef MX_ISR_MI2C1\n#define MX_ISR_MI2C1\nvoid _ISR _MI2C1Interrupt(void)\n{\n\tIFS1bits.MI2C1IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.MI2C1IE = 1;\n' disable='IEC1bits.MI2C1IE = 0;\n' />
        <interrupt ident='SI2C0' type='comms' name='Slave I2C 1' handler='#ifndef MX_ISR_SI2C1\n#define MX_ISR_SI2C1\nvoid _ISR _SI2C1Interrupt(void)\n{\n\tIFS1bits.SI2C1IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC1bits.SI2C1IE = 1;\n' disable='IEC1bits.SI2C1IE = 0;\n' />
        <interrupt ident='MI2C1' type='comms' name='Master I2C 2' handler='#ifndef MX_ISR_MI2C2\n#define MX_ISR_MI2C2\nvoid _ISR _MI2C2Interrupt(void)\n{\n\tIFS3bits.MI2C2IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC3bits.MI2C2IE = 1;\n' disable='IEC3bits.MI2C2IE = 0;\n' />
        <interrupt ident='SI2C1' type='comms' name='Slave I2C 2' handler='#ifndef MX_ISR_SI2C2\n#define MX_ISR_SI2C2\nvoid _ISR _SI2C2Interrupt(void)\n{\n\tIFS3bits.SI2C2IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC3bits.SI2C2IE = 1;\n' disable='IEC3bits.SI2C2IE = 0;\n' />
        <interrupt ident='SPI0' type='comms' name='SPI 1' handler='#ifndef MX_ISR_SPI1\n#define MX_ISR_SPI1\nvoid _ISR _SPI1Interrupt(void)\n{\n\tIFS0bits.SPI1IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC0bits.SPI1IE = 1;\n' disable='IEC0bits.SPI1IE = 0;\n' />
        <interrupt ident='SPI1' type='comms' name='SPI 2' handler='#ifndef MX_ISR_SPI2\n#define MX_ISR_SPI2\nvoid _ISR _SPI2Interrupt(void)\n{\n\tIFS2bits.SPI2IF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='IEC2bits.SPI2IE = 1;\n' disable='IEC2bits.SPI2IE = 0;\n' />
        <interrupt ident='IOC0' type='multipin' name='IOC PORT' handler='#ifndef MX_ISR_CN\n#define MX_ISR_CN\nvoid _ISR _CNInterrupt(void)\n{\n\tIFS1bits.CNIF = 0;\n\tFCM_%n();\n}\n#else\n#warning &quot;This interrupt has previously been enabled, so the macro &lt;%n&gt; may never get called.&quot;\n#endif\n' enable='CNENA = %pA*v;\nCNENB = %pB*v;\nCNENC = %pC*v;\nIEC1bits.CNIE = 1;\n' disable='IEC1bits.CNIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='0' mask='0x049F' />
                <rising port='1' mask='0xFFFF' />
                <rising port='2' mask='0x03FF' />
                <falling port='0' mask='0x049F' />
                <falling port='1' mask='0xFFFF' />
                <falling port='2' mask='0x03FF' />
            </ioc>
        </interrupt>
    </interrupts>
</device>
<inline >
    <defines code='' />
    <directives code='#include &lt;xc.h&gt;\n#include &lt;math.h&gt;\n#include &lt;stdlib.h&gt;\n#include &quot;p33Exxxx.h&quot;\n\n' />
    <main >
        <start code='int main()\n{\n' />
        <end code='\tmainendloop: goto mainendloop;\n\treturn 0;\n}\n\n' />
        <init code='ANSELA = 0;\nANSELB = 0;\nANSELC = 0;\n' />
    </main>
    <interrupt >
        <enable code='' />
        <start code='' />
        <end code='' />
        <init code='' />
    </interrupt>
    <config >
        <start code='//Configuration Start\n' />
        <body code='$(address)($(value));\n' />
        <end code='//Configuration End\n\n' />
    </config>
</inline>
<test >
    <icd >
        <clock port='1' pin='1' />
        <data port='1' pin='0' />
    </icd>
</test>
</root>
