<root>
<device name='32MZ2048ECM064' product='PIC32' family='32MZ' bits='32' >

    <clock max_speed='200000000' master_divider='2' default='80000000' />
    
    <memory >
        <flash bytes='2097152' />
        <ram bytes='524288' />
    </memory>

    <configuration address='0' mult='1' >
        <format >
            <dword address='FMIIEN' value='0x00000000' />
            <dword address='FETHIO' value='0x00000000' />
            <dword address='PGL1WAY' value='0x00000000' />
            <dword address='PMDL1WAY' value='0x00000000' />
            <dword address='IOL1WAY' value='0x00000000' />
            <dword address='FUSBIDIO' value='0x00000000' />
            <dword address='FPLLIDIV' value='0x00000000' />
            <dword address='FPLLRNG' value='0x00000000' />
            <dword address='FPLLICLK' value='0x00000000' />
            <dword address='FPLLMULT' value='0x00000000' />
            <dword address='FPLLODIV' value='0x00000000' />
            <dword address='UPLLFSEL' value='0x00000000' />
            <dword address='UPLLEN' value='0x00000000' />
            <dword address='FNOSC' value='0x00000000' />
            <dword address='DMTINTV' value='0x00000000' />
            <dword address='FSOSCEN' value='0x00000000' />
            <dword address='IESO' value='0x00000000' />
            <dword address='POSCMOD' value='0x00000000' />
            <dword address='OSCIOFNC' value='0x00000000' />
            <dword address='FCKSM' value='0x00000000' />
            <dword address='WDTPS' value='0x00000000' />
            <dword address='WDTSPGM' value='0x00000000' />
            <dword address='WINDIS' value='0x00000000' />
            <dword address='FWDTEN' value='0x00000000' />
            <dword address='FWDTWINSZ' value='0x00000000' />
            <dword address='DMTCNT' value='0x00000000' />
            <dword address='FDMTEN' value='0x00000000' />
            <dword address='DEBUG' value='0x00000000' />
            <dword address='JTAGEN' value='0x00000000' />
            <dword address='ICESEL' value='0x00000000' />
            <dword address='TRCEN' value='0x00000000' />
            <dword address='BOOTISA' value='0x00000000' />
            <dword address='FECCCON' value='0x00000000' />
            <dword address='FSLEEP' value='0x00000000' />
            <dword address='DBGPER' value='0x00000000' />
            <dword address='EJTAGBEN' value='0x00000000' />
            <dword address='CP' value='0x00000000' />
        </format>
        <setting />
        <settings >
            <setting name='FMIIEN' offset='0' mask='0xFFFFFFFF' bits='32' hint='Ethernet RMII/MII Enable' >
                <option name='RMII Enabled' value='0x0' />
                <option name='MII Enabled' value='0x1' />
            </setting>
            <setting name='FETHIO' offset='32' mask='0xFFFFFFFF' bits='32' hint='Ethernet I/O Pin Select' >
                <option name='Alternate Ethernet I/O' value='0x0' />
                <option name='Default Ethernet I/O' value='0x1' />
            </setting>
            <setting name='PGL1WAY' offset='64' mask='0xFFFFFFFF' bits='32' hint='Permission Group Lock One Way Configuration' >
                <option name='Allow multiple reconfigurations' value='0x0' />
                <option name='Allow only one reconfiguration' value='0x1' />
            </setting>
            <setting name='PMDL1WAY' offset='96' mask='0xFFFFFFFF' bits='32' hint='Peripheral Module Disable Configuration' >
                <option name='Allow multiple reconfigurations' value='0x0' />
                <option name='Allow only one reconfiguration' value='0x1' />
            </setting>
            <setting name='IOL1WAY' offset='128' mask='0xFFFFFFFF' bits='32' hint='Peripheral Pin Select Configuration' >
                <option name='Allow multiple reconfigurations' value='0x0' />
                <option name='Allow only one reconfiguration' value='0x1' />
            </setting>
            <setting name='FUSBIDIO' offset='160' mask='0xFFFFFFFF' bits='32' hint='USB USBID Selection' >
                <option name='Controlled by Port Function' value='0x0' />
                <option name='Controlled by the USB Module' value='0x1' />
            </setting>
            <setting name='FPLLIDIV' offset='192' mask='0xFFFFFFFF' bits='32' hint='System PLL Input Divider' >
                <option name='1x Divider' value='0x0' />
                <option name='2x Divider' value='0x1' />
                <option name='3x Divider' value='0x2' />
                <option name='4x Divider' value='0x3' />
                <option name='5x Divider' value='0x4' />
                <option name='6x Divider' value='0x5' />
                <option name='7x Divider' value='0x6' />
                <option name='8x Divider' value='0x7' />
            </setting>
            <setting name='FPLLRNG' offset='224' mask='0xFFFFFFFF' bits='32' hint='System PLL Input Range' >
                <option name='Bypass' value='0x0' />
                <option name='5-10 MHz Input' value='0x1' />
                <option name='8-16 MHz Input' value='0x2' />
                <option name='13-26 MHz Input' value='0x3' />
                <option name='21-42 MHz Input' value='0x4' />
                <option name='34-68 MHz Input' value='0x5' />
            </setting>
            <setting name='FPLLICLK' offset='256' mask='0xFFFFFFFF' bits='32' hint='System PLL Input Clock Selection' >
                <option name='POSC is input to the System PLL' value='0x0' />
                <option name='FRC is input to the System PLL' value='0x1' />
            </setting>
            <setting name='FPLLMULT' offset='288' mask='0xFFFFFFFF' bits='32' hint='System PLL Multiplier' >
                <option name='PLL Multiply by 1' value='0x0' />
                <option name='PLL Multiply by 2' value='0x1' />
                <option name='PLL Multiply by 3' value='0x2' />
                <option name='PLL Multiply by 4' value='0x3' />
                <option name='PLL Multiply by 5' value='0x4' />
                <option name='PLL Multiply by 6' value='0x5' />
                <option name='PLL Multiply by 7' value='0x6' />
                <option name='PLL Multiply by 8' value='0x7' />
                <option name='PLL Multiply by 9' value='0x8' />
                <option name='PLL Multiply by 10' value='0x9' />
                <option name='PLL Multiply by 11' value='0xa' />
                <option name='PLL Multiply by 12' value='0xb' />
                <option name='PLL Multiply by 13' value='0xc' />
                <option name='PLL Multiply by 14' value='0xd' />
                <option name='PLL Multiply by 15' value='0xe' />
                <option name='PLL Multiply by 16' value='0xf' />
                <option name='PLL Multiply by 17' value='0x10' />
                <option name='PLL Multiply by 18' value='0x11' />
                <option name='PLL Multiply by 19' value='0x12' />
                <option name='PLL Multiply by 20' value='0x13' />
                <option name='PLL Multiply by 21' value='0x14' />
                <option name='PLL Multiply by 22' value='0x15' />
                <option name='PLL Multiply by 23' value='0x16' />
                <option name='PLL Multiply by 24' value='0x17' />
                <option name='PLL Multiply by 25' value='0x18' />
                <option name='PLL Multiply by 26' value='0x19' />
                <option name='PLL Multiply by 27' value='0x1a' />
                <option name='PLL Multiply by 28' value='0x1b' />
                <option name='PLL Multiply by 29' value='0x1c' />
                <option name='PLL Multiply by 30' value='0x1d' />
                <option name='PLL Multiply by 31' value='0x1e' />
                <option name='PLL Multiply by 32' value='0x1f' />
                <option name='PLL Multiply by 33' value='0x20' />
                <option name='PLL Multiply by 34' value='0x21' />
                <option name='PLL Multiply by 35' value='0x22' />
                <option name='PLL Multiply by 36' value='0x23' />
                <option name='PLL Multiply by 37' value='0x24' />
                <option name='PLL Multiply by 38' value='0x25' />
                <option name='PLL Multiply by 39' value='0x26' />
                <option name='PLL Multiply by 40' value='0x27' />
                <option name='PLL Multiply by 41' value='0x28' />
                <option name='PLL Multiply by 42' value='0x29' />
                <option name='PLL Multiply by 43' value='0x2a' />
                <option name='PLL Multiply by 44' value='0x2b' />
                <option name='PLL Multiply by 45' value='0x2c' />
                <option name='PLL Multiply by 46' value='0x2d' />
                <option name='PLL Multiply by 47' value='0x2e' />
                <option name='PLL Multiply by 48' value='0x2f' />
                <option name='PLL Multiply by 49' value='0x30' />
                <option name='PLL Multiply by 50' value='0x31' />
                <option name='PLL Multiply by 51' value='0x32' />
                <option name='PLL Multiply by 52' value='0x33' />
                <option name='PLL Multiply by 53' value='0x34' />
                <option name='PLL Multiply by 54' value='0x35' />
                <option name='PLL Multiply by 55' value='0x36' />
                <option name='PLL Multiply by 56' value='0x37' />
                <option name='PLL Multiply by 57' value='0x38' />
                <option name='PLL Multiply by 58' value='0x39' />
                <option name='PLL Multiply by 59' value='0x3a' />
                <option name='PLL Multiply by 60' value='0x3b' />
                <option name='PLL Multiply by 61' value='0x3c' />
                <option name='PLL Multiply by 62' value='0x3d' />
                <option name='PLL Multiply by 63' value='0x3e' />
                <option name='PLL Multiply by 64' value='0x3f' />
                <option name='PLL Multiply by 65' value='0x40' />
                <option name='PLL Multiply by 66' value='0x41' />
                <option name='PLL Multiply by 67' value='0x42' />
                <option name='PLL Multiply by 68' value='0x43' />
                <option name='PLL Multiply by 69' value='0x44' />
                <option name='PLL Multiply by 70' value='0x45' />
                <option name='PLL Multiply by 71' value='0x46' />
                <option name='PLL Multiply by 72' value='0x47' />
                <option name='PLL Multiply by 73' value='0x48' />
                <option name='PLL Multiply by 74' value='0x49' />
                <option name='PLL Multiply by 75' value='0x4a' />
                <option name='PLL Multiply by 76' value='0x4b' />
                <option name='PLL Multiply by 77' value='0x4c' />
                <option name='PLL Multiply by 78' value='0x4d' />
                <option name='PLL Multiply by 79' value='0x4e' />
                <option name='PLL Multiply by 80' value='0x4f' />
                <option name='PLL Multiply by 81' value='0x50' />
                <option name='PLL Multiply by 82' value='0x51' />
                <option name='PLL Multiply by 83' value='0x52' />
                <option name='PLL Multiply by 84' value='0x53' />
                <option name='PLL Multiply by 85' value='0x54' />
                <option name='PLL Multiply by 86' value='0x55' />
                <option name='PLL Multiply by 87' value='0x56' />
                <option name='PLL Multiply by 88' value='0x57' />
                <option name='PLL Multiply by 89' value='0x58' />
                <option name='PLL Multiply by 90' value='0x59' />
                <option name='PLL Multiply by 91' value='0x5a' />
                <option name='PLL Multiply by 92' value='0x5b' />
                <option name='PLL Multiply by 93' value='0x5c' />
                <option name='PLL Multiply by 94' value='0x5d' />
                <option name='PLL Multiply by 95' value='0x5e' />
                <option name='PLL Multiply by 96' value='0x5f' />
                <option name='PLL Multiply by 97' value='0x60' />
                <option name='PLL Multiply by 98' value='0x61' />
                <option name='PLL Multiply by 99' value='0x62' />
                <option name='PLL Multiply by 100' value='0x63' />
                <option name='PLL Multiply by 101' value='0x64' />
                <option name='PLL Multiply by 102' value='0x65' />
                <option name='PLL Multiply by 103' value='0x66' />
                <option name='PLL Multiply by 104' value='0x67' />
                <option name='PLL Multiply by 105' value='0x68' />
                <option name='PLL Multiply by 106' value='0x69' />
                <option name='PLL Multiply by 107' value='0x6a' />
                <option name='PLL Multiply by 108' value='0x6b' />
                <option name='PLL Multiply by 109' value='0x6c' />
                <option name='PLL Multiply by 110' value='0x6d' />
                <option name='PLL Multiply by 111' value='0x6e' />
                <option name='PLL Multiply by 112' value='0x6f' />
                <option name='PLL Multiply by 113' value='0x70' />
                <option name='PLL Multiply by 114' value='0x71' />
                <option name='PLL Multiply by 115' value='0x72' />
                <option name='PLL Multiply by 116' value='0x73' />
                <option name='PLL Multiply by 117' value='0x74' />
                <option name='PLL Multiply by 118' value='0x75' />
                <option name='PLL Multiply by 119' value='0x76' />
                <option name='PLL Multiply by 120' value='0x77' />
                <option name='PLL Multiply by 121' value='0x78' />
                <option name='PLL Multiply by 122' value='0x79' />
                <option name='PLL Multiply by 123' value='0x7a' />
                <option name='PLL Multiply by 124' value='0x7b' />
                <option name='PLL Multiply by 125' value='0x7c' />
                <option name='PLL Multiply by 126' value='0x7d' />
                <option name='PLL Multiply by 127' value='0x7e' />
                <option name='PLL Multiply by 128' value='0x7f' />
            </setting>
            <setting name='FPLLODIV' offset='320' mask='0xFFFFFFFF' bits='32' hint='System PLL Output Clock Divider' >
                <option name='2x Divider' value='0x1' />
                <option name='4x Divider' value='0x2' />
                <option name='8x Divider' value='0x3' />
                <option name='16x Divider' value='0x4' />
                <option name='32x Divider' value='0x5' />
            </setting>
            <setting name='UPLLFSEL' offset='352' mask='0xFFFFFFFF' bits='32' hint='USB PLL Input Frequency Selection' >
                <option name='USB PLL input is 12 MHz' value='0x0' />
                <option name='USB PLL input is 24 MHz' value='0x1' />
            </setting>
            <setting name='UPLLEN' offset='384' mask='0xFFFFFFFF' bits='32' hint='USB PLL Enable' >
                <option name='USB PLL is disabled' value='0x0' />
                <option name='USB PLL is enabled' value='0xffffffff' />
            </setting>
            <setting name='FNOSC' offset='416' mask='0xFFFFFFFF' bits='32' hint='Oscillator Selection Bits' >
                <option name='System PLL' value='0x1' />
                <option name='Primary Osc (HS,EC)' value='0x2' />
                <option name='Low Power Secondary Osc (SOSC)' value='0x4' />
                <option name='Low Power RC Osc (LPRC)' value='0x5' />
                <option name='Fast RC Osc w/Div-by-N (FRCDIV)' value='0x7' />
            </setting>
            <setting name='DMTINTV' offset='448' mask='0xFFFFFFFF' bits='32' hint='DMT Count Window Interval' >
                <option name='Window/Interval value is zero' value='0x0' />
                <option name='Window/Interval value is 1/2 counter value' value='0x1' />
                <option name='Window/Interval value is 3/4 counter value' value='0x2' />
                <option name='Window/Interval value is 7/8 counter value' value='0x3' />
                <option name='Window/Interval value is 15/16 counter value' value='0x4' />
                <option name='Window/Interval value is 31/32 counter value' value='0x5' />
                <option name='Window/Interval value is 63/64 counter value' value='0x6' />
                <option name='Window/Interval value is 127/128 counter value' value='0x7' />
            </setting>
            <setting name='FSOSCEN' offset='480' mask='0xFFFFFFFF' bits='32' hint='Secondary Oscillator Enable' >
                <option name='Disable SOSC' value='0x0' />
                <option name='Enable SOSC' value='0x1' />
            </setting>
            <setting name='IESO' offset='512' mask='0xFFFFFFFF' bits='32' hint='Internal/External Switch Over' >
                <option name='Disabled' value='0x0' />
                <option name='Enabled' value='0x1' />
            </setting>
            <setting name='POSCMOD' offset='544' mask='0xFFFFFFFF' bits='32' hint='Primary Oscillator Configuration' >
                <option name='External clock mode' value='0x0' />
                <option name='HS osc mode' value='0x2' />
                <option name='Primary osc disabled' value='0x3' />
            </setting>
            <setting name='OSCIOFNC' offset='576' mask='0xFFFFFFFF' bits='32' hint='CLKO Output Signal Active on the OSCO Pin' >
                <option name='Enabled' value='0x0' />
                <option name='Disabled' value='0x1' />
            </setting>
            <setting name='FCKSM' offset='608' mask='0xFFFFFFFF' bits='32' hint='Clock Switching and Monitor Selection' >
                <option name='Clock Switch Disabled, FSCM Disabled' value='0x0' />
                <option name='Clock Switch Enabled, FSCM Disabled' value='0x1' />
                <option name='Clock Switch Disabled, FSCM Enabled' value='0x2' />
                <option name='Clock Switch Enabled, FSCM Enabled' value='0x3' />
            </setting>
            <setting name='WDTPS' offset='640' mask='0xFFFFFFFF' bits='32' hint='Watchdog Timer Postscaler' >
                <option name='1:1' value='0x0' />
                <option name='1:2' value='0x1' />
                <option name='1:4' value='0x2' />
                <option name='1:8' value='0x3' />
                <option name='1:16' value='0x4' />
                <option name='1:32' value='0x5' />
                <option name='1:64' value='0x6' />
                <option name='1:128' value='0x7' />
                <option name='1:256' value='0x8' />
                <option name='1:512' value='0x9' />
                <option name='1:1024' value='0xa' />
                <option name='1:2048' value='0xb' />
                <option name='1:4096' value='0xc' />
                <option name='1:8192' value='0xd' />
                <option name='1:16384' value='0xe' />
                <option name='1:32768' value='0xf' />
                <option name='1:65536' value='0x10' />
                <option name='1:131072' value='0x11' />
                <option name='1:262144' value='0x12' />
                <option name='1:524288' value='0x13' />
                <option name='1:1048576' value='0x14' />
            </setting>
            <setting name='WDTSPGM' offset='672' mask='0xFFFFFFFF' bits='32' hint='Watchdog Timer Stop During Flash Programming' >
                <option name='WDT runs during Flash programming' value='0x0' />
                <option name='WDT stops during Flash programming' value='0x1' />
            </setting>
            <setting name='WINDIS' offset='704' mask='0xFFFFFFFF' bits='32' hint='Watchdog Timer Window Mode' >
                <option name='Watchdog Timer is in Window mode' value='0x0' />
                <option name='Watchdog Timer is in non-Window mode' value='0x1' />
            </setting>
            <setting name='FWDTEN' offset='736' mask='0xFFFFFFFF' bits='32' hint='Watchdog Timer Enable' >
                <option name='WDT Disabled' value='0x0' />
                <option name='WDT Enabled' value='0x1' />
            </setting>
            <setting name='FWDTWINSZ' offset='768' mask='0xFFFFFFFF' bits='32' hint='Watchdog Timer Window Size' >
                <option name='Window size is 75%' value='0x0' />
                <option name='Window size is 50%' value='0x1' />
                <option name='Window size is 37.5%' value='0x2' />
                <option name='Window size is 25%' value='0x3' />
            </setting>
            <setting name='DMTCNT' offset='800' mask='0xFFFFFFFF' bits='32' hint='Deadman Timer Count Selection' >
                <option name='2^8 (256)' value='0x0' />
                <option name='2^9 (512)' value='0x1' />
                <option name='2^10 (1024)' value='0x2' />
                <option name='2^11 (2048)' value='0x3' />
                <option name='2^12 (4096)' value='0x4' />
                <option name='2^13 (8192)' value='0x5' />
                <option name='2^14 (16384)' value='0x6' />
                <option name='2^15 (32768)' value='0x7' />
                <option name='2^16 (65536)' value='0x8' />
                <option name='2^17 (131072)' value='0x9' />
                <option name='2^18 (262144)' value='0xa' />
                <option name='2^19 (524288)' value='0xb' />
                <option name='2^20 (1048576)' value='0xc' />
                <option name='2^21 (2097152)' value='0xd' />
                <option name='2^22 (4194304)' value='0xe' />
                <option name='2^23 (8388608)' value='0xf' />
                <option name='2^24 (16777216)' value='0x10' />
                <option name='2^25 (33554432)' value='0x11' />
                <option name='2^26 (67108864)' value='0x12' />
                <option name='2^27 (134217728)' value='0x13' />
                <option name='2^28 (268435456)' value='0x14' />
                <option name='2^29 (536870912)' value='0x15' />
                <option name='2^30 (1073741824)' value='0x16' />
                <option name='2^31 (2147483648)' value='0x17' />
            </setting>
            <setting name='FDMTEN' offset='832' mask='0xFFFFFFFF' bits='32' hint='Deadman Timer Enable' >
                <option name='Deadman Timer is disabled' value='0x0' />
                <option name='Deadman Timer is enabled' value='0xffffffff' />
            </setting>
            <setting name='DEBUG' offset='864' mask='0xFFFFFFFF' bits='32' hint='Background Debugger Enable' >
                <option name='Debugger is enabled' value='0x2' />
                <option name='Debugger is disabled' value='0x3' />
            </setting>
            <setting name='JTAGEN' offset='896' mask='0xFFFFFFFF' bits='32' hint='JTAG Enable' >
                <option name='JTAG Disabled' value='0x0' />
                <option name='JTAG Port Enabled' value='0x1' />
            </setting>
            <setting name='ICESEL' offset='928' mask='0xFFFFFFFF' bits='32' hint='ICE/ICD Comm Channel Select' >
                <option name='Communicate on PGEC2/PGED2' value='0x2' />
                <option name='Communicate on PGEC1/PGED1' value='0x3' />
            </setting>
            <setting name='TRCEN' offset='960' mask='0xFFFFFFFF' bits='32' hint='Trace Enable' >
                <option name='Trace features in the CPU are disabled' value='0x0' />
                <option name='Trace features in the CPU are enabled' value='0x1' />
            </setting>
            <setting name='BOOTISA' offset='992' mask='0xFFFFFFFF' bits='32' hint='Boot ISA Selection' >
                <option name='Boot code and Exception code is microMIPS' value='0x0' />
                <option name='Boot code and Exception code is MIPS32' value='0x1' />
            </setting>
            <setting name='FECCCON' offset='1024' mask='0xFFFFFFFF' bits='32' hint='Dynamic Flash ECC Configuration' >
                <option name='Flash ECC is enabled (ECCCON bits are locked)' value='0x0' />
                <option name='Dynamic Flash ECC is enabled (ECCCON bits are locked)' value='0x1' />
                <option name='ECC and Dynamic ECC are disabled (ECCCON bits are locked)' value='0x2' />
                <option name='ECC and Dynamic ECC are disabled (ECCCON bits are writable)' value='0x3' />
            </setting>
            <setting name='FSLEEP' offset='1056' mask='0xFFFFFFFF' bits='32' hint='Flash Sleep Mode' >
                <option name='Flash power down is controlled by the VREGS bit' value='0x0' />
                <option name='Flash is powered down when the device is in Sleep mode' value='0x1' />
            </setting>
            <setting name='DBGPER' offset='1088' mask='0xFFFFFFFF' bits='32' hint='Debug Mode CPU Access Permission' >
                <option name='Deny CPU access to Permission Group 0 permission regions' value='0x0' />
                <option name='Deny CPU access to Permission Group 1 permission regions' value='0x0' />
                <option name='Deny CPU access to Permission Group 2 permission regions' value='0x0' />
                <option name='Allow CPU access to Permission Group 0 permission regions' value='0x1' />
                <option name='Allow CPU access to Permission Group 1 permission regions' value='0x2' />
                <option name='Allow CPU access to Permission Group 2 permission regions' value='0x4' />
                <option name='PG0' value='0x6' />
                <option name='Allow CPU access to all permission regions' value='0x7' />
            </setting>
            <setting name='EJTAGBEN' offset='1120' mask='0xFFFFFFFF' bits='32' hint='EJTAG Boot' >
                <option name='Reduced EJTAG functionality' value='0x0' />
                <option name='Normal EJTAG functionality' value='0x1' />
            </setting>
            <setting name='CP' offset='1152' mask='0xFFFFFFFF' bits='32' hint='Code Protect' >
                <option name='Protection Enabled' value='0x0' />
                <option name='Protection Disabled' value='0x1' />
            </setting>
        </settings >
    </configuration>

    <pins sides='4' smd='1' >
        <pin name='AN17/RPE5/RE5' port='4' bit='5' adc='17' rpbank='b' rpnum='6' rpreg='RPE5R' />
        <pin name='AN16/RE6' port='4' bit='6' adc='16' />
        <pin name='AN15/RE7' port='4' bit='7' adc='15' />
        <pin name='AN14/RPG6/SCK2/RG6' port='6' bit='6' adc='14' rpbank='c' rpnum='1' rpreg='RPG6R' />
        <pin name='AN13/RPG7/SDA4/RG7' port='6' bit='7' adc='13' rpbank='b' rpnum='1' rpreg='RPG7R' />
        <pin name='AN12/RPG8/SCL4/RG8' port='6' bit='8' adc='12' rpbank='a' rpnum='1' rpreg='RPG8R' />
        <pin name='VSS' />
        <pin name='VDD' />
        <pin name='MCLR' />
        <pin name='AN11/RPG9/RG9' port='6' bit='9' adc='11' rpbank='d' rpnum='1' rpreg='RPG9R' />
        <pin name='AN45/RPB5/RB5' port='1' bit='5' adc='45' rpbank='a' rpnum='8' rpreg='RPB5R' />
        <pin name='AN4/RB4' port='1' bit='4' adc='4' />
        <pin name='AN3/RPB3/RB3' port='1' bit='3' adc='3' rpbank='b' rpnum='8' rpreg='RPB3R' />
        <pin name='AN2/RPB2/RB2' port='1' bit='2' adc='2' rpbank='d' rpnum='6'  rpreg='RPB2R' />
        <pin name='AN1/RPB1/RB1' port='1' bit='1' adc='1' rpbank='b' rpnum='5' rpreg='RPB1R' />
        <pin name='AN0/RPB0/RB0' port='1' bit='0' adc='0' rpbank='c' rpnum='5' rpreg='RPB0R' />
        <pin name='AN46/RPB6/RB6' port='1' bit='6' adc='46' rpbank='d' rpnum='4' rpreg='RPB6R' />
        <pin name='AN47/RPB7/RB7' port='1' bit='7' adc='47' rpbank='c' rpnum='7' rpreg='RPB7R' />
        <pin name='AVDD' />
        <pin name='AVSS' />
        <pin name='AN48/RPB8/RB8' port='1' bit='8' adc='48' rpbank='c' rpnum='2' rpreg='RPB8R' />
        <pin name='AN49/RPB9/RB9' port='1' bit='9' adc='49' rpbank='a' rpnum='5' rpreg='RPB9R' />
        <pin name='AN5/RPB10/RB10' port='1' bit='10' adc='5' rpbank='a' rpnum='6' rpreg='RPB10R' />
        <pin name='AN6/RB11' port='1' bit='11' adc='6' />
        <pin name='VSS' />
        <pin name='VDD' />
        <pin name='AN7/RB12' port='1' bit='12' adc='7' />
        <pin name='AN8/RB13' port='1' bit='13' adc='8' />
        <pin name='AN9/RPB14/SCK3/RB14' port='1' bit='14' adc='9' rpbank='d' rpnum='2' rpreg='RPB14R' />
        <pin name='AN10/RPB15/RB15' port='1' bit='15' adc='10' rpbank='c' rpnum='3' rpreg='RPB15R' />
        <pin name='OSC1/RC12' port='2' bit='12' />
        <pin name='OSC2/RC15' port='2' bit='15' />
        <pin name='VBUS' />
        <pin name='VUSB3V3' />
        <pin name='VSS' />
        <pin name='D-' />
        <pin name='D+' />
        <pin name='RPF3/RF3' port='5' bit='3' rpbank='d' rpnum='7' rpreg='RPF3R' />
        <pin name='VDD' />
        <pin name='VSS' />
        <pin name='RPF4/RF4' port='5' bit='4' rpbank='a' rpnum='2' rpreg='RPF4R' />
        <pin name='RPF5/RF5' port='5' bit='5' rpbank='b' rpnum='2' rpreg='RPF5R' />
        <pin name='RPD9/SDA1/RD9' port='3' bit='9' rpbank='c' rpnum='0' rpreg='RPD9R' />
        <pin name='RPD10/SCL1/SCK4/RD10' port='3' bit='10' rpbank='a' rpnum='3' rpreg='RPD10R' />
        <pin name='RPD11/RD11' port='3' bit='11' rpbank='b' rpnum='3' rpreg='RPD11R' />
        <pin name='RPD0/INT0/RD0' port='3' bit='0' rpbank='d' rpnum='3' rpreg='RPD0R' />
        <pin name='RPC13/RC13' port='2' bit='13' rpbank='b' rpnum='7' rpreg='RPC13R' />
        <pin name='RPC14/RC14' port='2' bit='14' rpbank='a' rpnum='7' rpreg='RPC14R' />
        <pin name='RPD1/SCK1/RD1' port='3' bit='1' rpbank='d' rpnum='0' rpreg='RPD1R' />
        <pin name='RPD2/SDA3/RD2' port='3' bit='2' rpbank='a' rpnum='0' rpreg='RPD2R' />
        <pin name='RPD3/SCL3/RD3' port='3' bit='3' rpbank='b' rpnum='0' rpreg='RPD3R' />
        <pin name='RPD4/RD4' port='3' bit='4' rpbank='c' rpnum='4' rpreg='RPD4R' />
        <pin name='RPD5/RD5' port='3' bit='5' rpbank='d' rpnum='5' rpreg='RPD5R' />
        <pin name='VDD' />
        <pin name='VSS' />
        <pin name='RF0/RPF0' port='5' bit='0' rpbank='b' rpnum='4' rpreg='RPF0R' />
        <pin name='RF1/RPF1' port='5' bit='1' rpbank='a' rpnum='4' rpreg='RPF1R' />
        <pin name='RE0' port='4' bit='0' />
        <pin name='VSS' />
        <pin name='VDD' />
        <pin name='RE1' port='4' bit='1' />
        <pin name='RE2' port='4' bit='2' />
        <pin name='RPE3/RE3' port='4' bit='3' rpbank='c' rpnum='6' rpreg='RPE3R' />
        <pin name='RE4/AN18' port='4' bit='4' adc='18' />
    </pins>
    
    <adc type='2' bits='12' >
        <speed >
            <option name='FRC' value='128' />
            <option name='Tcy' value='0' />
            <option name='Tcy * 2' value='1' />
            <option name='Tcy * 4' value='2' />
            <option name='Tcy * 8' value='4' />
            <option name='Tcy * 16' value='8' />
            <option name='Tcy * 32' value='16' />
            <option name='Tcy * 64' value='32' />
            <option name='Tcy * 128' value='64' />
            <option name='Tcy * 254' value='254' />
        </speed>
    </adc>
    
    <spi remappable='1' >
        <miso rpbank='a' rpreg='SDI1R' />
        <mosi rpbank='a' rpnum='5' arpbank='b' arpnum='5' />
        <clk port='3' pin='1' />
    </spi>
    
    <spi remappable='1' >
        <miso rpbank='b' rpreg='SDI2R' />
        <mosi rpbank='a' rpnum='6' arpbank='b' arpnum='6' />
        <clk port='6' pin='6' />
    </spi>

    <spi remappable='1' >
        <miso rpbank='a' rpreg='SDI3R' />
        <mosi rpbank='a' rpnum='7' arpbank='b' arpnum='7' />
        <clk port='1' pin='14' />
    </spi>
    
    <spi remappable='1' >
        <miso rpbank='b' rpreg='SDI4R' />
        <mosi rpbank='b' rpnum='8' arpbank='d' arpnum='8' />
        <clk port='3' pin='10' />
    </spi>
    
    <uart remappable='1' >
        <tx rpbank='b' rpnum='1' />
        <rx rpbank='a' rpreg='U1RXR' />
    </uart>
    
    <uart remappable='1' >
        <tx rpbank='d' rpnum='2' />
        <rx rpbank='c' rpreg='U2RXR' />
    </uart>
    
    <uart remappable='1' >
        <tx rpbank='a' rpnum='1' />
        <rx rpbank='b' rpreg='U3RXR' />
    </uart>   
    
    <uart remappable='1' >
        <tx rpbank='c' rpnum='2' />
        <rx rpbank='d' rpreg='U4RXR' />
    </uart>

    <uart remappable='1' >
        <tx rpbank='b' rpnum='3' />
        <rx rpbank='a' rpreg='U5RXR' />
    </uart>

    <uart remappable='1' >
        <tx rpbank='c' rpnum='4' arpbank='d' arpnum='4' />
        <rx rpbank='d' rpreg='U6RXR' />
    </uart>      
     
    <i2c master='1' >
        <sda port='3' pin='9' />
        <scl port='3' pin='10' />
    </i2c>
    
    <i2c master='1' missing = '1'>
    </i2c>

    <i2c master='1' >
        <sda port='3' pin='2' />
        <scl port='3' pin='3' />
    </i2c>

    <i2c master='1' >
        <sda port='6' pin='7' />
        <scl port='6' pin='8' />
    </i2c>
    
    <pwm regset='1' remappable='1' >
        <timer>
            <option name='Timer2' value='2' />
            <option name='Timer3' value='3' />
        </timer>
        <prescaler >
            <option name='1' value='0' />
            <option name='2' value='1' />
            <option name='4' value='2' />
            <option name='8' value='3' />
            <option name='16' value='4' />
            <option name='32' value='5' />
            <option name='64' value='6' />
            <option name='256' value='7' />
        </prescaler>
        <out rpbank='d' rpnum='12' />
        <out rpbank='d' rpnum='11' />
        <out rpbank='a' rpnum='11' />
        <out rpbank='b' rpnum='11' />
        <out rpbank='c' rpnum='11' />
        <out rpbank='a' rpnum='12' />
        <out rpbank='b' rpnum='12' />
        <out rpbank='c' rpnum='12' />
        <out rpbank='d' rpnum='13' />
    </pwm>
    
    <usb type='1' />
    
    <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:2' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:4' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:8' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0030);\n' />
                    <entry name='1:16' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0040);\n' />
                    <entry name='1:32' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0050);\n' />
                    <entry name='1:64' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0060);\n' />
                    <entry name='1:256' value='T2CON = ((T2CON &amp; 0xff0f) | 0x0070);\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:2' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:4' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:8' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0030);\n' />
                    <entry name='1:16' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0040);\n' />
                    <entry name='1:32' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0050);\n' />
                    <entry name='1:64' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0060);\n' />
                    <entry name='1:256' value='T3CON = ((T3CON &amp; 0xff0f) | 0x0070);\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:2' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:4' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:8' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0030);\n' />
                    <entry name='1:16' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0040);\n' />
                    <entry name='1:32' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0050);\n' />
                    <entry name='1:64' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0060);\n' />
                    <entry name='1:256' value='T4CON = ((T4CON &amp; 0xff0f) | 0x0070);\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:2' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0010);\n' />
                    <entry name='1:4' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0020);\n' />
                    <entry name='1:8' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0030);\n' />
                    <entry name='1:16' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0040);\n' />
                    <entry name='1:32' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0050);\n' />
                    <entry name='1:64' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0060);\n' />
                    <entry name='1:256' value='T5CON = ((T5CON &amp; 0xff0f) | 0x0070);\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='INTCONbits.INT0EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCONbits.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\tIFS0bits.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='IEC0bits.INT1IE = 1;' disable='IEC0bits.INT1IE = 0;' >
            <ioc config='3' >
                <rising port='3' mask='0x02' />
                <falling port='3' mask='0x02' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCONbits.INT1EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCONbits.INT1EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
                    <entry name='RPD1' value='INT1R = 0;\n' />
                    <entry name='RPG9' value='INT1R = 1;\n' />
                    <entry name='RPB14' value='INT1R = 2;\n' />
                    <entry name='RPD0' value='INT1R = 3;\n' />
                    <entry name='RPD8' value='INT1R = 4;\n' />
                    <entry name='RPB6' value='INT1R = 5;\n' />
                    <entry name='RPD5' value='INT1R = 6;\n' />
                    <entry name='RPB2' value='INT1R = 7;\n' />
                    <entry name='RPF3' value='INT1R = 8;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RD1' 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\tIFS0bits.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='IEC0bits.INT2IE = 1;' disable='IEC0bits.INT2IE = 0;' >
            <ioc config='3' >
                <rising port='3' mask='0x200' />
                <falling port='3' mask='0x200' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCONbits.INT2EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCONbits.INT2EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
            <entry name='RPD9' value='INT2R = 0;\n' />
            <entry name='RPG6' value='INT2R = 1;\n' />
            <entry name='RPB8' value='INT2R = 2;\n' />
            <entry name='RPB15' value='INT2R = 3;\n' />
            <entry name='RPD4' value='INT2R = 4;\n' />
            <entry name='RPB0' value='INT2R = 5;\n' />
            <entry name='RPE3' value='INT2R = 6;\n' />
            <entry name='RPB7' value='INT2R = 7;\n' />
            <entry name='RPB2' value='INT2R = 15;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RD9' value='' />
                </option>
            </options>
        </interrupt>
        <interrupt ident='INT3' type='pin' name='INT3/REMAP' handler='#ifndef MX_ISR_I3\n#define MX_ISR_I3\nvoid _ISR _INT3Interrupt(void)\n{\n\tIFS0bits.INT3IF = 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.INT3IE = 1;' disable='IEC0bits.INT3IE = 0;' >
            <ioc config='3' >
                <rising port='3' mask='0x04' />
                <falling port='3' mask='0x04' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCONbits.INT3EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCONbits.INT3EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
            <entry name='RPD2' value='INT3R = 0;\n' />
            <entry name='RPG8' value='INT3R = 1;\n' />
            <entry name='RPF4' value='INT3R = 2;\n' />
            <entry name='RPD10' value='INT3R = 3;\n' />
            <entry name='RPF1' value='INT3R = 4;\n' />
            <entry name='RPB9' value='INT3R = 5;\n' />
            <entry name='RPB10' value='INT3R = 6;\n' />
            <entry name='RPC14' value='INT3R = 7;\n' />
            <entry name='RPB5' value='INT3R = 8;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RD2' value='' />
                </option>
            </options>
        </interrupt>
        <interrupt ident='INT4' type='pin' name='INT4/REMAP' handler='#ifndef MX_ISR_I4\n#define MX_ISR_I4\nvoid _ISR _INT4Interrupt(void)\n{\n\tIFS0bits.INT4IF = 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.INT4IE = 1;' disable='IEC0bits.INT4IE = 0;' >
            <ioc config='3' >
                <rising port='3' mask='0x08' />
                <falling port='3' mask='0x08' />
            </ioc>
            <options >
                <edge name='Interrupt Edge Select' >
                    <entry name='Rising edge of INT' value='INTCONbits.INT4EP = 0;\n' />
                    <entry name='Falling edge of INT' value='INTCONbits.INT4EP = 1;\n' />
                </edge>
                <option name='Remapped Pin Selection' >
            <entry name='RPD3' value='INT4R = 0;\n' />
            <entry name='RPG7' value='INT4R = 1;\n' />
            <entry name='RPF5' value='INT4R = 2;\n' />
            <entry name='RPD11' value='INT4R = 3;\n' />
            <entry name='RPF0' value='INT4R = 4;\n' />
            <entry name='RPB1' value='INT4R = 5;\n' />
            <entry name='RPE5' value='INT4R = 6;\n' />
            <entry name='RPC13' value='INT4R = 7;\n' />
            <entry name='RPB3' value='INT4R = 8;\n' />
                </option>
                <option name='Simulation Pin' >
                    <entry name='RD3' 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\tIFS3bits.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='IEC3bits.U1RXIE = 1;\n' disable='IEC3bits.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\tIFS4bits.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='IEC4bits.U2RXIE = 1;\n' disable='IEC4bits.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\tIFS4bits.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='IEC4bits.U3RXIE = 1;\n' disable='IEC4bits.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='RXINT4' type='comms' name='UART RXINT 5' handler='#ifndef MX_ISR_RX5\n#define MX_ISR_RX5\nvoid _ISR _U5RXInterrupt(void)\n{\n\tIFS5bits.U5RXIF = 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.U5RXIE = 1;\n' disable='IEC5bits.U5RXIE = 0;\n' />
        <interrupt ident='RXINT5' type='comms' name='UART RXINT 6' handler='#ifndef MX_ISR_RX6\n#define MX_ISR_RX6\nvoid _ISR _U6RXInterrupt(void)\n{\n\tIFS5bits.U6RXIF = 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.U6RXIE = 1;\n' disable='IEC5bits.U6RXIE = 0;\n' />
        <interrupt ident='IOCB' type='multipin' name='IOC PORT B' handler='#ifndef MX_ISR_CNB\n#define MX_ISR_CNB\nvoid _ISR _CNBInterrupt(void)\n{\n\tIFS1bits.CNBIF = 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='CNENB = %pB*v;\nIEC1bits.CNBIE = 1;\n' disable='IEC1bits.CNBIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='1' mask='0xFFFF' />
                <falling port='1' mask='0xFFFF' />
            </ioc>
        </interrupt>
        <interrupt ident='IOCC' type='multipin' name='IOC PORT C' handler='#ifndef MX_ISR_CNC\n#define MX_ISR_CNC\nvoid _ISR _CNCInterrupt(void)\n{\n\tIFS1bits.CNCIF = 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='CNENC = %pC*v;\nIEC1bits.CNCIE = 1;\n' disable='IEC1bits.CNCIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='2' mask='0xF000' />
                <falling port='2' mask='0xF000' />
            </ioc>
        </interrupt>
        <interrupt ident='IOCD' type='multipin' name='IOC PORT D' handler='#ifndef MX_ISR_CND\n#define MX_ISR_CND\nvoid _ISR _CNDInterrupt(void)\n{\n\tIFS1bits.CNDIF = 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='CNEND = %pD*v;\nIEC1bits.CNDIE = 1;\n' disable='IEC1bits.CNDIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='3' mask='0x0FFF' />
                <falling port='3' mask='0x0FFF' />
            </ioc>
        </interrupt>
        <interrupt ident='IOCE' type='multipin' name='IOC PORT E' handler='#ifndef MX_ISR_CNE\n#define MX_ISR_CNE\nvoid _ISR _CNEInterrupt(void)\n{\n\tIFS1bits.CNEIF = 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='CNENE = %pE*v;\nIEC1bits.CNEIE = 1;\n' disable='IEC1bits.CNEIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='4' mask='0x00FF' />
                <falling port='4' mask='0x00FF' />
            </ioc>
        </interrupt>
        <interrupt ident='IOCF' type='multipin' name='IOC PORT F' handler='#ifndef MX_ISR_CNF\n#define MX_ISR_CNF\nvoid _ISR _CNFInterrupt(void)\n{\n\tIFS1bits.CNFIF = 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='CNENF = %pF*v;\nIEC1bits.CNFIE = 1;\n' disable='IEC1bits.CNFIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='5' mask='0x003B' />
                <falling port='5' mask='0x003B' />
            </ioc>
        </interrupt>
        <interrupt ident='IOCG' type='multipin' name='IOC PORT G' handler='#ifndef MX_ISR_CNG\n#define MX_ISR_CNG\nvoid _ISR _CNGInterrupt(void)\n{\n\tIFS1bits.CNGIF = 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='CNENG = %pG*v;\nIEC1bits.CNGIE = 1;\n' disable='IEC1bits.CNGIE = 0;\n' >
            <ioc config='0x0C' >
                <rising port='6' mask='0x03CC' />
                <falling port='6' mask='0x03CC' />
            </ioc>
        </interrupt>
    </interrupts>
</device>
<inline >
    <defines code='#define MX_PIC32_MZ\n#define MX_ALT_WATCHDOG\n#define MX_MZ_MODE\n#define MX_SPI_MZ_FAMILY\n\n' />
    <directives code='#include <xc.h>\n#include <math.h>\n#include <stdlib.h>\n#include <stdint.h>\n#include <stddef.h>\n#include <stdbool.h>\n#include <p32xxxx.h>\n#include <sys/attribs.h>\n\n' />
    <main >
        <start code='int main()\n{\n' />
        <end code='\tmainendloop: goto mainendloop;\n\treturn 0;\n}\n\n' />
        <init code='ANSELB = 0x0000;\nANSELE = 0x0000;\nANSELG = 0x0000;\n\n' />
    </main>
    <interrupt >
        <enable code='' />
        <start code='' />
        <end code='' />
        <init code='' />
    </interrupt>
    <config >
        <start code='//Configuration Start\n' />
        <body code='#pragma config $(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>