<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE deviceDefinitions SYSTEM "deviceDefinitions.dtd" >
<deviceDefinitions name="PIC24HJ32GP204" rev="A" type="16-bit MCU" family="GP">

<dynamicDutyMap file="dsPIC33/dsPIC33FJ16GP304 DynamicDutyMap.xml"/>

  <operatingTemperature>
    <temperature minmax="-40 degC, +85 degC">
      <voltage minmax="3.0V, 3.6V"><frequency minmax="0 MHz, 40 MHz"></frequency></voltage>      
    </temperature>
  </operatingTemperature>

  <memory RAM="2048" programFLASH="32768" EEPROM="0"></memory>

  <resources>
    <pinDefinitions name="dsPIC33/dsPIC33FJ16GP304 44-Pin TQFP PinsDefinitions"></pinDefinitions>
    <interrupts name="dsPIC33/dsPIC33FJ16GP304 Interrupts" IVTStart="" AIVTStart="" SFRAddressSize=""></interrupts>
    <configurationRegisters name="PIC24/PIC24HJ32GP204 ConfigurationRegisters"></configurationRegisters>
  </resources>

  <packageList>
    <type name="44-Pin TQFP"></type>
    <type name="44-Pin QFN"></type>
    <!-- <type name="40-Pin PDIP"></type> No available for production as of now! -->
  </packageList>

  <codeTemplate name="PIC24/PIC24HJ16GP304 CodeTemplate"></codeTemplate>
      
  <errata name="*80279*"></errata>
  <dataSheet name="*70165*"></dataSheet>
  <programRef name="dsPIC33F ProgrammersReferenceManual"></programRef>
  <familyRef name="dsPIC33F FamilyReferenceManual"></familyRef>

  <features type="required">
    <group name="integration" type="integration" caption="integration">
      <feature name="Oscillator1" oldinstance="1" caption="Oscillator" file="dsPIC33/Oscillator" feature="Oscillator" image="oscillator"></feature>
    </group>
    <group name="integration" type="integration" caption="integration">
      <feature name="Interrupts30" caption="Interrupts and Traps" file="dsPIC33/Interrupts dsPIC33FJ16GP304" feature="Interrupts30" image="Interrupts"></feature>
    </group>
  </features>
  <features type="optional">
    <!-- No RTCC -->    

    <group name="IOPort" type="IOPort" caption="I/O Ports">
      <feature name="IOPortA" oldinstance ="A" caption="Port A" file="dsPIC33/IOPort A dsPIC33FJ16GP304" feature="IOPortA" image="IOPort"></feature>
      <feature name="IOPortB" oldinstance ="B" caption="Port B" file="dsPIC33/IOPort B dsPIC33FJ16GP304" feature="IOPortB" image="IOPort"></feature>
      <feature name="IOPortC" oldinstance ="C" caption="Port C" file="dsPIC33/IOPort C dsPIC33FJ16GP304" feature="IOPortC" image="IOPort"></feature>
      <feature name="CN" instance="1" caption="CN" file="dsPIC30/CN" feature="CN dsPIC33FJ16GP304" image="IOPort"></feature>
    </group>
    
	<group name="timer" type="Timers" caption="Timers">
			<feature name="16bitTimer" instance="1" caption="16-bit Timer 1" file="dsPIC33/16bitTimer" feature="Timer1" image="TimerR"></feature>
			<feature name="16bitTimer" instance="2" caption="16-bit Timer 2" file="dsPIC33/16bitTimer" feature="Timer2" image="TimerR"></feature>
			<feature name="16bitTimer" instance="3" caption="16-bit Timer 3" file="dsPIC33/16bitTimer" feature="Timer3" image="TimerR"></feature>
			<feature name="32bitTimer" instance="2" caption="32-bit Timer 2/3" file="dsPIC33/32bitTimer" feature="Timer2,Timer3" image="TimerR"></feature>
	</group>
		
	<group name="counter" type="Counters" caption="Counters">
			<feature name="16bitAsyncCounter" instance="1" caption="Async Counter 1" file="dsPIC33/16bitAsyncCounter" feature="Timer1" image="Counter"></feature>
   			<feature name="16bitSyncCounter" instance="1" caption="Sync Counter 1" file="dsPIC33/16bitSyncCounter" feature="Timer1" image="Counter"></feature>
			<feature name="16bitSyncCounter" instance="2" caption="16-bit Counter 2" file="dsPIC33/16bitSyncCounter" feature="Timer2" image="Counter"></feature>
			<feature name="16bitSyncCounter" instance="3" caption="16-bit Counter 3" file="dsPIC33/16bitSyncCounter" feature="Timer3" image="Counter"></feature>
			<feature name="32bitSyncCounter" instance="2" caption="32-bit Counter 2" file="dsPIC33/32bitSyncCounter" feature="Timer2, Timer3" image="Counter"></feature>
	</group>

    <group name="IC" type="IC" caption="IC">
      <feature name="IC" instance="1" caption="IC 1" file="dsPIC33/IC dsPIC33FJ16GP304" feature="IC1" image="Compare"></feature>
    </group>
    <group name="OC" type="OC" caption="OC">
      <feature name="OC" instance="1" caption="OC 1" file="dsPIC33/OC dsPIC33FJ16GP304" feature="OC1" image="Capture"></feature>
    </group>
    
    <group name="SPI" type="SPI" caption="SPI">
      <feature name="SPI" instance="1" caption="SPI 1" file="dsPIC33/SPI" feature="SPI1" image="SPI"></feature>      
    </group>

    <group name="I2C" type="I2C" caption="I2C">
      <feature name="I2C" instance="1" caption="I2C 1" file="dsPIC33/I2C" feature="I2C1" image="I2C"></feature>
    </group>

    <group name="UART" type="UART" caption="UART">
      <feature name="UART" instance="1" caption="UART 1" file="dsPIC33/UART" feature="UART1" image="UART"></feature>
    </group>

    <group name="A2D" type="A2D" caption="A to D">
		  <feature name="A2D10bit" instance="1" caption="10-bit A to D 1" file="PIC24/A2D10bit13ch" feature="A2D10bit" image="ACD"></feature>
		  <feature name="A2D12bit" instance="1" caption="12-bit A to D 1" file="PIC24/A2D12bit13ch" feature="A2D12bit" image="ACD"></feature>
	</group>

    <group name="reset" type="Reset" caption="Reset">
      <feature name="BOR" oldinstance="1" caption="Reset" file="dsPIC33/BOR" feature="BOR" image="Brownout"></feature>
      <feature name="WDT" oldinstance="1" caption="WDT" file="dsPIC33/WDT" feature="WDT" image="WDT"></feature>
    </group>
    
  </features>

</deviceDefinitions>