<root>
<device name='24FJ128GA202' product='PIC16' family='24F' bits='16' >
    <clock max_speed='32000000' master_divider='2' default='12000000' />
    <memory >
        <flash bytes='131072' />
        <ram bytes='16384' />
    </memory>
    <configuration address='0x157F0' mult='2' >
        <format >
            <word address='_CONFIG1' value='0xFFEF' />
            <word address='_CONFIG2' value='0xFFFF' />
            <word address='_CONFIG3' value='0xFFFF' />
            <word address='_CONFIG4' value='0xFFFF' />
        </format>
        <setting />
        <settings >
            <setting name='WDTPS' offset='0' 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='FWPSA' offset='4' mask='1' bits='1' hint='Watchdog Prescaler' >
                <option name='1:128' value='1' />
                <option name='1:32' value='0' />
            </setting>
            <setting name='WINDIS' offset='5' mask='1' bits='1' hint='Watchdog Timer Window Enable bit' >
                <option name='Disabled - Standard Watchdog Timer' value='1' />
                <option name='Enabled - Windowed Watchdog Timer' value='0' />
            </setting>
            <setting name='FWDTEN' offset='6' mask='3' bits='2' hint='Watchdog Timer Enable bit' >
                <option name='Watchdog Always Enabled' value='3' />
                <option name='Watchdog Enabled controlled by SWDTEN' value='2' />
                <option name='Watchdog Enabled for runtime and disabled in sleep' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='ICS' offset='8' 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' />
            </setting>  
            <setting name='LPCFG' offset='10' mask='1' bits='1' hint='Low Voltage Regulator Config' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='GWRP' offset='12' mask='1' bits='1' hint='General Segment Flash Write Protect' >
                <option name='Disabled - writes to program memory are allowed' value='1' />
                <option name='Enabled - writes to program memory are not allowed' value='0' />
            </setting>
            <setting name='GCP' offset='13' mask='1' bits='1' hint='Code Protect' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='JTAGEN' offset='14' mask='1' bits='1' hint='JTAG Enable bit' >
                <option name='Enabled' value='1' />
                <option name='Disabled' value='0' />
            </setting>
            <setting name='POSCMD' offset='16' 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='POSCMD' offset='19' mask='3' bits='2' hint='WDT Clock Source' >
                <option name='LPRC' value='3' />
                <option name='31KHz FRC or LPRC' value='2' />
                <option name='SOSC' value='1' />
                <option name='System Clock' value='0' />
            </setting>
            <setting name='OSCIOFNC' offset='21' mask='1' bits='1' hint='OSC Pin Function bit' >
                <option name='ClockOut Enabled RA3 Disabled' value='1' />
                <option name='ClockOut Disabled RA3 Enabled' value='0' />
            </setting>
            <setting name='FCKSM' offset='22' mask='3' bits='2' hint='Clock Switching Mode bits' >
                <option name='Both Clock switching and Fail-safe Clock Monitor are disabled' value='3' />
                <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='24' 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='Secondary Oscillator (SOSC)' value='4' />
                <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='ALTCMPI' offset='28' mask='1' bits='1' hint='Comparator Input' >
                <option name='C1INC = RB13, C2INC = RB9, C3INC = RA0' value='1' />
                <option name='C1INC, C2INC, C3INC = RB9' value='0' />
            </setting>
            <setting name='WDTCMX' offset='29' mask='1' bits='1' hint='WDT Multiplex' >
                <option name='Determined by WDTCLK' value='1' />
                <option name='LPRC' value='0' />
            </setting>
            <setting name='IESO' offset='31' 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='WPFP' offset='32' mask='127' bits='7' hint='Write Protect Page Boundary' >
                <option name='0' value='0' />
                <option name='1' value='1' />
                <option name='2' value='2' />
                <option name='4' value='4' />
                <option name='8' value='8' />
                <option name='16' value='16' />
                <option name='32' value='32' />
                <option name='64' value='64' />
                <option name='127' value='127' />
            </setting>
            <setting name='SOSCSEL' offset='40' mask='1' bits='1' hint='SOSC Selection' >
                <option name='SOSC Circuit' value='1' />
                <option name='Digital SCLKI Mode' value='0' />
            </setting>
            <setting name='WDTWIN' offset='41' 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='PLLSS' offset='43' mask='1' bits='1' hint='PLL Secondary Selection' >
                <option name='PLL connected to Primary Osc' value='1' />
                <option name='PLL connected to FRC' value='0' />
            </setting>
            <setting name='BOREN' offset='44' mask='1' bits='1' hint='Brown Out Reset' >
                <option name='BOR Enabled' value='1' />
                <option name='BOR Disabled' value='0' />
            </setting>
            <setting name='WPDIS' offset='45' mask='1' bits='1' hint='Segment Write Protection' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='WPCFG' offset='46' mask='1' bits='1' hint='Configuration Write Protection' >
                <option name='Disabled' value='1' />
                <option name='Enabled' value='0' />
            </setting>
            <setting name='WPEND' offset='47' mask='1' bits='1' hint='Segment Write Protection End Page' >
                <option name='Upper Boundary' value='1' />
                <option name='Lower Boundary' value='0' />
            </setting>
            <setting name='DSWDTPS' offset='48' mask='31' bits='5' hint='Deep Sleep Watchdog Timer Postscaler' >
                <option name='1:32 (1 ms)' value='0' />
                <option name='1:64 (2.1 ms)' value='1' />
                <option name='1:128 (4.1 ms)' value='2' />
                <option name='1:256 (8.3 ms)' value='3' />
                <option name='1:512 (16.5 ms)' value='4' />
                <option name='1:1,024 (33 ms)' value='5' />
                <option name='1:2,048 (66.1 ms)' value='6' />
                <option name='1:4,096 (132.1 ms)' value='7' />
                <option name='1:8,192 (264.3 ms)' value='8' />
                <option name='1:16,384 (528.5 ms)' value='9' />
                <option name='1:32,768 (1.057s)' value='10' />
                <option name='1:65,536 (2.114s)' value='11' />
                <option name='1:131,072 (4.228s)' value='12' />
                <option name='1:262,114 (8.456s)' value='13' />
                <option name='1:524,288 (16.912s)' value='14' />
                <option name='1:1,048,576 (33.825s)' value='15' />
                <option name='1:2,097,152 (67.7s)' value='16' />
                <option name='1:4,194,304 (135.3s)' value='17' />
                <option name='1:8,388,608 (4.5 minutes)' value='18' />
                <option name='1:16,777,216 (9.0 minutes)' value='19' />
                <option name='1:33,554,432 (18.0 minutes)' value='20' />
                <option name='1:67,108,864 (36.1 minutes)' value='21' />
                <option name='1:134,217,728 (72.2 minutes)' value='22' />
                <option name='1:268,435,456 (2.4 hours)' value='23' />
                <option name='1:536,870,912 (4.8 hours)' value='24' />
                <option name='1:1,073,741,824 (9.6 hours)' value='25' />
                <option name='1:2,147,483,648 (19.2 hours)' value='26' />
                <option name='1:4,294,967,296 (38.5 hours)' value='27' />
                <option name='1:8,589,934592 (77.0 hours)' value='28' />
                <option name='1:17,179,869,184 (6.4 days)' value='29' />
                <option name='1:34,359,738,368(12.8 days)' value='30' />
                <option name='1:68,719,476,736 (25.7 days)' value='31' />
            </setting>
            <setting name='DSWDTOSC' offset='53' mask='1' bits='1' hint='Deep Sleep Watchdog Timer Clock' >
                <option name='Clock source is SOSC' value='0' />
                <option name='Clock source is LPRC' value='1' />
            </setting>
            <setting name='DSBOREN' offset='54' mask='1' bits='1' hint='Deep Sleep Brown-out Reset' >
                <option name='BOR is enabled in Deep Sleep' value='1' />
                <option name=' BOR is disabled in Deep Sleep' value='0' />
            </setting>
            <setting name='DSWDTEN' offset='55' mask='1' bits='1' hint='Deep Sleep Watchdog Timer' >
                <option name='Deep Sleep WDT is enabled' value='1' />
                <option name='Deep Sleep WDT is disabled' value='0' />
            </setting>
            <setting name='DSSWEN' offset='56' mask='1' bits='1' hint='Deep Sleep Software Control' >
                <option name='Deep Sleep operation is enabled' value='1' />
                <option name='Deep Sleep operation is disabled' value='0' />
            </setting>
            <setting name='PLLDIV' offset='58' mask='15' bits='4' hint='PLL Prescaler' >
                <option name='Disabled' value='15' />
                <option name='8x PLL' value='14' />
                <option name='6x PLL' value='13' />
                <option name='4x PLL' value='12' />
            </setting>
            <setting name='I2C1SEL' offset='62' mask='1' bits='1' hint='Alternate I2C1 pins' >
                <option name='I2C1 uses SDA1 and SCL1' value='1' />
                <option name='I2C1 uses ASDA1 and ASCL1' value='0' />
            </setting>
            <setting name='IOL1WAY' offset='63' mask='1' bits='1' hint='Peripheral pin select configuration' >
                <option name='Allow one reconfiguration' value='1' />
                <option name='Allow Multiple Reconfigurations' value='0' />
            </setting>
        </settings>
    </configuration>
    <pins sides='2' smd='0' >
        <pin name='MCLR' />
        <pin name='AN0 / VREF+ / RA0' port='0' bit='0' adc='0' />
        <pin name='AN1 / RA1' port='0' bit='1' adc='1' />
        <pin name='AN2 / RB0' port='1' bit='0' adc='2' rpreg='RPOR0bits.RP0R' rpnum='0' />
        <pin name='AN3 / RB1' port='1' bit='1' adc='3' rpreg='RPOR0bits.RP1R' rpnum='1' />
        <pin name='AN4 / RB2' port='1' bit='2' adc='4' rpreg='RPOR1bits.RP2R' rpnum='2' />
        <pin name='AN5 / RB3' port='1' bit='3' adc='5' rpreg='RPOR1bits.RP3R' rpnum='3' />
        <pin name='VSS' />
        <pin name='OSC1 / RA2' port='0' bit='2' />
        <pin name='OSC2 / RA3' port='0' bit='3' />
        <pin name='SOSCI / RB4' port='1' bit='4' rpnum='4' />
        <pin name='SOSCO / RA4' port='0' bit='4' />
        <pin name='VDD' />
        <pin name='RB5' port='1' bit='5' rpreg='RPOR2bits.RP5R' rpnum='5' />
        <pin name='RB6' port='1' bit='6' rpreg='RPOR3bits.RP6R' rpnum='6' />
        <pin name='RB7 / INT0' port='1' bit='7' rpreg='RPOR3bits.RP7R' rpnum='7' />
        <pin name='RB8' port='1' bit='8' rpreg='RPOR4bits.RP8R' rpnum='8' />
        <pin name='RB9' port='1' bit='9' rpreg='RPOR4bits.RP9R' rpnum='9' />
        <pin name='VBAT' />
        <pin name='VCAP / VDDCORE' />
        <pin name='RB10' port='1' bit='10' rpreg='RPOR5bits.RP10R' rpnum='10' />
        <pin name='RB11' port='1' bit='11' rpreg='RPOR5bits.RP11R' rpnum='11' />
        <pin name='RB12 / AN8' port='1' bit='12' adc='8' rpreg='RPOR6bits.RP12R' rpnum='12' />
        <pin name='RB13 / AN7' port='1' bit='13' adc='7' rpreg='RPOR6bits.RP13R' rpnum='13' />
        <pin name='RB14 / AN6' port='1' bit='14' adc='6' rpreg='RPOR7bits.RP14R' rpnum='14' />
        <pin name='RB15 / AN9' port='1' bit='15' adc='9' rpreg='RPOR7bits.RP15R' rpnum='15' />
        <pin name='VSS' />
        <pin name='VDD' />
    </pins>
    <adc type='7' bits='12' >
        <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>
    </adc>
    <spi >
        <miso rpreg='RPINR20bits.SDI1R' />
        <mosi rpnum='7' />
        <clk rpnum='8' />
    </spi>
    <spi remappable='1' >
        <miso rpreg='RPINR22bits.SDI2R' />
        <mosi rpnum='10' />
        <clk rpnum='11' />
    </spi>
    <spi remappable='1' >
        <miso rpreg='RPINR28bits.SDI3R' />
        <mosi rpnum='23' />
        <clk rpnum='24' />
    </spi>
    <uart remappable='1' >
        <tx rpnum='3' />
        <rx rpreg='RPINR18bits.U1RXR' />
    </uart>
    <uart remappable='1' >
        <tx rpnum='5' />
        <rx rpreg='RPINR19bits.U2RXR' />
    </uart>
    <uart remappable='1' >
        <tx rpnum='19' />
        <rx rpreg='RPINR17bits.U3RXR' />
    </uart>
    <uart remappable='1' >
        <tx rpnum='21' />
        <rx rpreg='RPINR27bits.U4RXR' />
    </uart>
    <i2c master='1' >
        <sda port='1' pin='9' />
        <scl port='1' pin='8' />
    </i2c>
    <i2c master='1' >
        <sda port='1' pin='2' />
        <scl port='1' pin='3' />
    </i2c>
    <pwm regset='1' remappable='1' >
    	<timer>
    	    <option name='Timer1' value='1' />
    	    <option name='Timer2' value='2' />
    	    <option name='Timer3' value='3' />
    	    <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='13' />
        <out rpnum='14' />
        <out rpnum='15' />
        <out rpnum='16' />
        <out rpnum='17' />
        <out rpnum='18' />
    </pwm>
    <rtcc type='1'>
    	<clock>
    	    <option name='External Secondary Oscillator (SOSC)' value='0' />
    	    <option name='Internal LPRC Oscillator' value='1' />
    	    <option name='External Power Line (50Hz)' value='2' />
    	    <option name='External Power Line (60Hz)' value='3' />
    	</clock>
    </rtcc>
    <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='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='RXINT2' type='comms' name='UART RXINT 3' handler='#ifndef MX_ISR_RX3\n#define MX_ISR_RX3\nvoid _ISR _U3RXInterrupt(void)\n{\n\tIFS5bits.U3RXIF = 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='IEC5bits.U3RXIE = 1;\n' disable='IEC5bits.U3RXIE = 0;\n' />
        <interrupt ident='RXINT3' type='comms' name='UART RXINT 4' handler='#ifndef MX_ISR_RX4\n#define MX_ISR_RX4\nvoid _ISR _U4RXInterrupt(void)\n{\n\tIFS5bits.U4RXIF = 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='IEC5bits.U4RXIE = 1;\n' disable='IEC5bits.U4RXIE = 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;\nIEC1bits.CNIE = 1;\n' disable='IEC1bits.CNIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='0' mask='0x001F' />
                <rising port='1' mask='0xFFFF' />
                <falling port='0' mask='0x001F' />
                <falling port='1' mask='0xFFFF' />
            </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;p24Fxxxx.h&quot;\n\n' />
    <main >
        <start code='int main()\n{\n' />
        <end code='\tmainendloop: goto mainendloop;\n\treturn 0;\n}\n\n' />
        <init code='ANSA = 0;\nANSB = 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>
