<?xml version='1.0' encoding='UTF-8'?>
<avr-tools-device-file xmlns:xalan="http://xml.apache.org/xalan" xmlns:NumHelper="NumHelper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" schema-version="0.3" xsi:noNamespaceSchemaLocation="../../schema/avr_tools_device_file.xsd">
  <variants>
    <variant tempmin="0" tempmax="0" speedmax="0" package="" ordercode="standard" vccmin="1.9" vccmax="3.6"/>
  </variants>
  <devices>
    <device name="ATA5791" architecture="AVR8" family="megaAVR">
      <address-spaces>
        <address-space endianness="little" name="prog" id="prog" start="0x0000" size="0x4000">
          <memory-segment start="0x0000" size="0x4000" type="flash" rw="RW" exec="1" name="FLASH" pagesize="0x80"/>
          <memory-segment start="0x3800" size="0x0800" type="flash" rw="RW" exec="1" name="BOOT_SECTION_1" pagesize="0x80"/>
        </address-space>
        <address-space endianness="little" name="signatures" id="signatures" start="0" size="3">
          <memory-segment start="0" size="3" type="signatures" rw="R" exec="0" name="SIGNATURES"/>
        </address-space>
        <address-space endianness="little" name="fuses" id="fuses" start="0" size="0x0001">
          <memory-segment start="0" size="0x0001" type="fuses" rw="RW" exec="0" name="FUSES"/>
        </address-space>
        <address-space endianness="little" name="lockbits" id="lockbits" start="0" size="0x0001">
          <memory-segment start="0" size="0x0001" type="lockbits" rw="RW" exec="0" name="LOCKBITS"/>
        </address-space>
        <address-space endianness="little" name="data" id="data" start="0x0000" size="0x0300">
          <memory-segment external="false" type="regs" size="0x0020" start="0x0000" name="REGISTERS"/>
          <memory-segment name="MAPPED_IO" start="0x0020" size="0x00e0" type="io" external="false"/>
          <memory-segment name="IRAM" start="0x0100" size="0x0200" type="ram" external="false"/>
        </address-space>
        <address-space endianness="little" name="eeprom" id="eeprom" start="0x0000" size="0x0800">
          <memory-segment start="0x0000" size="0x0800" type="eeprom" rw="RW" exec="0" name="EEPROM" pagesize="0x10"/>
        </address-space>
        <address-space size="0x40" start="0x00" endianness="little" name="io" id="io"/>
      </address-spaces>
      <peripherals>
        <module name="SPI">
          <instance name="SPI">
            <register-group name="SPI" name-in-module="SPI" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="CPU">
          <instance name="CPU">
            <register-group name="CPU" name-in-module="CPU" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="AFE">
          <instance name="AFE">
            <register-group name="AFE" name-in-module="AFE" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="DDDLFRX">
          <instance name="DDDLFRX">
            <register-group name="DDDLFRX" name-in-module="DDDLFRX" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="IRLED">
          <instance name="IRLED">
            <register-group name="IRLED" name-in-module="IRLED" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="AES">
          <instance name="AES">
            <register-group name="AES" name-in-module="AES" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="MOD">
          <instance name="MOD">
            <register-group name="MOD" name-in-module="MOD" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="VMON">
          <instance name="VMON">
            <register-group name="VMON" name-in-module="VMON" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="EXTERNAL_INTERRUPT">
          <instance name="EXTERNAL_INTERRUPT">
            <register-group name="EXTERNAL_INTERRUPT" name-in-module="EXTERNAL_INTERRUPT" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="EEPROM">
          <instance name="EEPROM">
            <register-group name="EEPROM" name-in-module="EEPROM" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="PORTB">
          <instance name="PORTB">
            <register-group name="PORTB" name-in-module="PORTB" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="PORTD">
          <instance name="PORTD">
            <register-group name="PORTD" name-in-module="PORTD" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="TIMER_COUNTER_0">
          <instance name="TIMER_COUNTER_0">
            <register-group name="TIMER_COUNTER_0" name-in-module="TIMER_COUNTER_0" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="TIMER_COUNTER_1">
          <instance name="TIMER_COUNTER_1">
            <register-group name="TIMER_COUNTER_1" name-in-module="TIMER_COUNTER_1" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="TIMER_COUNTER_2">
          <instance name="TIMER_COUNTER_2">
            <register-group name="TIMER_COUNTER_2" name-in-module="TIMER_COUNTER_2" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="TIMER_COUNTER_3">
          <instance name="TIMER_COUNTER_3">
            <register-group name="TIMER_COUNTER_3" name-in-module="TIMER_COUNTER_3" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="RTC_TIMER">
          <instance name="RTC_TIMER">
            <register-group name="RTC_TIMER" name-in-module="RTC_TIMER" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="WDT">
          <instance name="WDT" caption="Watchdog Timer">
            <register-group name="WDT" name-in-module="WDT" offset="0x00" address-space="data" caption="Watchdog Timer"/>
          </instance>
        </module>
        <module name="CRC">
          <instance name="CRC">
            <register-group name="CRC" name-in-module="CRC" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="PORTC">
          <instance name="PORTC">
            <register-group name="PORTC" name-in-module="PORTC" offset="0x00" address-space="data"/>
          </instance>
        </module>
        <module name="FUSE">
          <instance name="FUSE">
            <register-group name="FUSE" name-in-module="FUSE" offset="0" address-space="fuses"/>
          </instance>
        </module>
        <module name="LOCKBIT">
          <instance name="LOCKBIT">
            <register-group name="LOCKBIT" name-in-module="LOCKBIT" offset="0" address-space="lockbits"/>
          </instance>
        </module>
      </peripherals>


      <interrupts>
        <interrupt index="0" name="RESET" caption="External Pin, Power-on Reset, Brown-out Reset, Watchdog Reset and Transponder Reset"/>
        <interrupt index="1" name="TPINT" caption="Transponder Mode Interrupt"/>
        <interrupt index="2" name="INT0" caption="External Interrupt Request 0"/>
        <interrupt index="3" name="PCINT0" caption="Pin Change Interrupt Request 0"/>
        <interrupt index="4" name="PCINT1" caption="Pin Change Interrupt Request 1"/>
        <interrupt index="5" name="VMINT" caption="Voltage Monitoring Interrupt"/>
        <interrupt index="6" name="T0INT" caption="Timer0 Interval Interrupt"/>
        <interrupt index="7" name="LFID0INT" caption="LF-Receiver Identifier 0 Interrupt"/>
        <interrupt index="8" name="LFID1INT" caption="LF-Receiver Identifier 1 Interrupt"/>
        <interrupt index="9" name="LFFEINT" caption="LF-Receiver Frame End Interrupt"/>
        <interrupt index="10" name="LFDBINT" caption="LF-Receiver Data Buffer full Interrupt"/>
        <interrupt index="11" name="T3CAPINT" caption="Timer/Counter3 Capture Event Interrupt"/>
        <interrupt index="12" name="T3COMINT" caption="Timer/Counter3 Compare Match Interrupt"/>
        <interrupt index="13" name="T3OVFINT" caption="Timer/Counter3 Overflow Interrupt"/>
        <interrupt index="14" name="T3COM2INT" caption="Timer/Counter3 Compare Match 2 Interrupt"/>
        <interrupt index="15" name="T2COMINT" caption="Timer/Counter2 Compare Match Interrupt"/>
        <interrupt index="16" name="T2OVFINT" caption="Timer/Counter2 Overflow Interrupt"/>
        <interrupt index="17" name="T1INT" caption="Timer 1 Interval Interrupt"/>
        <interrupt index="18" name="SPISTC" caption="SPI Serial Transfer Complete Interrupt"/>
        <interrupt index="19" name="TMRXBINT" caption="Timer Modulator SSI Receive Buffer Interrupt"/>
        <interrupt index="20" name="TMTXBINT" caption="Timer Modulator SSI Transmit Buffer Interrupt"/>
        <interrupt index="21" name="TMTXCINT" caption="Timer Modulator Transmit Complete Interrupt"/>
        <interrupt index="22" name="AESINT" caption="AES Interrupt"/>
        <interrupt index="23" name="LFRSSINT" caption="LF-Receiver RSSi measurement Interrupt"/>
        <interrupt index="24" name="LFSDINT" caption="LF-Receiver Signal Detect Interrupt"/>
        <interrupt index="25" name="LFMDINT" caption="LF-Receiver Manchester Decoder error Interrupt "/>
        <interrupt index="26" name="EXCMINT" caption="External Input Clock Monitoring Interrupt"/>
        <interrupt index="27" name="EXXMINT" caption="External XTAL Oscillator Break Down Interrupt"/>
        <interrupt index="28" name="RTCINT" caption="Real Time Clock Interrupt"/>
        <interrupt index="29" name="EEREADY" caption="EEPROM Ready Interrupt"/>
        <interrupt index="30" name="SPMREADY" caption="Store Program Memory Ready "/>
      </interrupts>
      <interfaces>
        <interface name="ISP" type="isp"/>
        <interface name="HVPP" type="hvpp"/>
        <interface name="debugWIRE" type="dw"/>
      </interfaces>
      <property-groups>
        <property-group name="SIGNATURES">
          <property name="JTAGID" value="0x9462"/>
          <property name="SIGNATURE0" value="0x1e"/>
          <property name="SIGNATURE1" value="0x94"/>
          <property name="SIGNATURE2" value="0x62"/>
        </property-group>
        <property-group name="OCD">
          <property name="OCD_REVISION" value="1"/>
          <property name="OCD_DATAREG" value="0x31"/>
          <property name="PROGBASE" value="0x0000"/>
        </property-group>
        <property-group name="JTAG_INTERFACE">
          <property name="ALLOWFULLPAGESTREAM" value="0x00"/>
        </property-group>
        <property-group name="ISP_INTERFACE">
          <property name="IspEnterProgMode_timeout" value="200"/>
          <property name="IspEnterProgMode_stabDelay" value="100"/>
          <property name="IspEnterProgMode_cmdexeDelay" value="25"/>
          <property name="IspEnterProgMode_synchLoops" value="32"/>
          <property name="IspEnterProgMode_byteDelay" value="0"/>
          <property name="IspEnterProgMode_pollIndex" value="3"/>
          <property name="IspEnterProgMode_pollValue" value="0x53"/>
          <property name="IspLeaveProgMode_preDelay" value="1"/>
          <property name="IspLeaveProgMode_postDelay" value="1"/>
          <property name="IspChipErase_eraseDelay" value="45"/>
          <property name="IspChipErase_pollMethod" value="1"/>
          <property name="IspProgramFlash_mode" value="0x41"/>
          <property name="IspProgramFlash_blockSize" value="128"/>
          <property name="IspProgramFlash_delay" value="6"/>
          <property name="IspProgramFlash_cmd1" value="0x40"/>
          <property name="IspProgramFlash_cmd2" value="0x4C"/>
          <property name="IspProgramFlash_cmd3" value="0x00"/>
          <property name="IspProgramFlash_pollVal1" value="0x00"/>
          <property name="IspProgramFlash_pollVal2" value="0x00"/>
          <property name="IspProgramEeprom_mode" value="0x41"/>
          <property name="IspProgramEeprom_blockSize" value="16"/>
          <property name="IspProgramEeprom_delay" value="10"/>
          <property name="IspProgramEeprom_cmd1" value="0xC1"/>
          <property name="IspProgramEeprom_cmd2" value="0xC2"/>
          <property name="IspProgramEeprom_cmd3" value="0x00"/>
          <property name="IspProgramEeprom_pollVal1" value="0x00"/>
          <property name="IspProgramEeprom_pollVal2" value="0x00"/>
          <property name="IspReadFlash_blockSize" value="256"/>
          <property name="IspReadEeprom_blockSize" value="256"/>
          <property name="IspReadFuse_pollIndex" value="4"/>
          <property name="IspReadLock_pollIndex" value="4"/>
          <property name="IspReadSign_pollIndex" value="4"/>
          <property name="IspReadOsccal_pollIndex" value="4"/>
        </property-group>
        <property-group name="PP_INTERFACE">
          <property name="PpControlStack" value="0x0E 0x1E 0x0F 0x1F 0x2E 0x3E 0x2F 0x3F 0x4E 0x5E 0x4F 0x5F 0x6E 0x7E 0x6F 0x7F 0x66 0x76 0x67 0x77 0x6A 0x7A 0x6B 0x7B 0xBE 0xFD 0x00 0x01 0x00 0x00 0x00 0x00"/>
          <property name="PpEnterProgMode_stabDelay" value="100"/>
          <property name="PpEnterProgMode_progModeDelay" value="0"/>
          <property name="PpEnterProgMode_latchCycles" value="5"/>
          <property name="PpEnterProgMode_toggleVtg" value="1"/>
          <property name="PpEnterProgMode_powerOffDelay" value="15"/>
          <property name="PpEnterProgMode_resetDelayMs" value="1"/>
          <property name="PpEnterProgMode_resetDelayUs" value="0"/>
          <property name="PpLeaveProgMode_stabDelay" value="15"/>
          <property name="PpLeaveProgMode_resetDelay" value="15"/>
          <property name="PpChipErase_pulseWidth" value="0"/>
          <property name="PpChipErase_pollTimeout" value="10"/>
          <property name="PpProgramFlash_pollTimeout" value="5"/>
          <property name="PpProgramFlash_mode" value="0x0F"/>
          <property name="PpProgramFlash_blockSize" value="128"/>
          <property name="PpReadFlash_blockSize" value="256"/>
          <property name="PpProgramEeprom_pollTimeout" value="5"/>
          <property name="PpProgramEeprom_mode" value="0x05"/>
          <property name="PpProgramEeprom_blockSize" value="256"/>
          <property name="PpReadEeprom_blockSize" value="256"/>
          <property name="PpProgramFuse_pulseWidth" value="0"/>
          <property name="PpProgramFuse_pollTimeout" value="5"/>
          <property name="PpProgramLock_pulseWidth" value="0"/>
          <property name="PpProgramLock_pollTimeout" value="5"/>
        </property-group>
        <property-group name="ISP_INTERFACE_STK600">
          <property name="IspEnterProgMode_timeout" value="200"/>
          <property name="IspEnterProgMode_stabDelay" value="100"/>
          <property name="IspEnterProgMode_cmdexeDelay" value="25"/>
          <property name="IspEnterProgMode_synchLoops" value="32"/>
          <property name="IspEnterProgMode_byteDelay" value="0"/>
          <property name="IspEnterProgMode_pollIndex" value="3"/>
          <property name="IspEnterProgMode_pollValue" value="0x53"/>
          <property name="IspLeaveProgMode_preDelay" value="1"/>
          <property name="IspLeaveProgMode_postDelay" value="1"/>
          <property name="IspChipErase_eraseDelay" value="45"/>
          <property name="IspChipErase_pollMethod" value="1"/>
          <property name="IspProgramFlash_mode" value="0x41"/>
          <property name="IspProgramFlash_blockSize" value="128"/>
          <property name="IspProgramFlash_delay" value="6"/>
          <property name="IspProgramFlash_cmd1" value="0x40"/>
          <property name="IspProgramFlash_cmd2" value="0x4C"/>
          <property name="IspProgramFlash_cmd3" value="0x00"/>
          <property name="IspProgramFlash_pollVal1" value="0x00"/>
          <property name="IspProgramFlash_pollVal2" value="0x00"/>
          <property name="IspProgramEeprom_mode" value="0x41"/>
          <property name="IspProgramEeprom_blockSize" value="16"/>
          <property name="IspProgramEeprom_delay" value="10"/>
          <property name="IspProgramEeprom_cmd1" value="0xC1"/>
          <property name="IspProgramEeprom_cmd2" value="0xC2"/>
          <property name="IspProgramEeprom_cmd3" value="0x00"/>
          <property name="IspProgramEeprom_pollVal1" value="0x00"/>
          <property name="IspProgramEeprom_pollVal2" value="0x00"/>
          <property name="IspReadFlash_blockSize" value="256"/>
          <property name="IspReadEeprom_blockSize" value="256"/>
          <property name="IspReadFuse_pollIndex" value="4"/>
          <property name="IspReadLock_pollIndex" value="4"/>
          <property name="IspReadSign_pollIndex" value="4"/>
          <property name="IspReadOsccal_pollIndex" value="4"/>
        </property-group>
        <property-group name="PP_INTERFACE_STK600">
          <property name="PpControlStack" value="0x0E 0x1E 0x0F 0x1F 0x2E 0x3E 0x2F 0x3F 0x4E 0x5E 0x4F 0x5F 0x6E 0x7E 0x6F 0x7F 0x66 0x76 0x67 0x77 0x6A 0x7A 0x6B 0x7B 0xBE 0xFD 0x00 0x01 0x00 0x00 0x00 0x00"/>
          <property name="PpEnterProgMode_stabDelay" value="100"/>
          <property name="PpEnterProgMode_progModeDelay" value="0"/>
          <property name="PpEnterProgMode_latchCycles" value="5"/>
          <property name="PpEnterProgMode_toggleVtg" value="1"/>
          <property name="PpEnterProgMode_powerOffDelay" value="15"/>
          <property name="PpEnterProgMode_resetDelayMs" value="1"/>
          <property name="PpEnterProgMode_resetDelayUs" value="0"/>
          <property name="PpLeaveProgMode_stabDelay" value="15"/>
          <property name="PpLeaveProgMode_resetDelay" value="15"/>
          <property name="PpChipErase_pulseWidth" value="0"/>
          <property name="PpChipErase_pollTimeout" value="10"/>
          <property name="PpProgramFlash_pollTimeout" value="5"/>
          <property name="PpProgramFlash_mode" value="0x0F"/>
          <property name="PpProgramFlash_blockSize" value="128"/>
          <property name="PpReadFlash_blockSize" value="256"/>
          <property name="PpProgramEeprom_pollTimeout" value="5"/>
          <property name="PpProgramEeprom_mode" value="0x05"/>
          <property name="PpProgramEeprom_blockSize" value="256"/>
          <property name="PpReadEeprom_blockSize" value="256"/>
          <property name="PpProgramFuse_pulseWidth" value="0"/>
          <property name="PpProgramFuse_pollTimeout" value="5"/>
          <property name="PpProgramLock_pulseWidth" value="0"/>
          <property name="PpProgramLock_pollTimeout" value="5"/>
        </property-group>
      </property-groups>
    </device>
  </devices>
  <modules>
    <module caption="" name="FUSE">
      <register-group caption="" name="FUSE">
        <register caption="" name="LOW" offset="0x00" size="1" initval="0x49">
          <bitfield caption="Divide clock by 8 internally" mask="0x80" name="CKDIV8"/>
          <bitfield caption="DebugWIRE Enable" mask="0x40" name="DWEN"/>
          <bitfield caption="SPI Enable" mask="0x20" name="SPIEN"/>
          <bitfield caption="Enable Watchdog Timer" mask="0x10" name="WDTON"/>
          <bitfield caption="Preserve EEPROM through the Chip Erase cycle" mask="0x08" name="EESAVE"/>
          <bitfield caption="This fuse bit must be set. " mask="0x04" name="Reserved"/>
          <bitfield caption="Enables the 32 kHz oscillator." mask="0x02" name="_32OEN"/>
          <bitfield caption="External Clock enable" mask="0x01" name="EXTCLKEN"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="LOCKBIT">
      <register-group caption="" name="LOCKBIT">
        <register caption="" name="LOCKBIT" offset="0x00" size="1">
          <bitfield caption="Memory Lock" mask="0x03" name="LB" values="ENUM_LB"/>
          <bitfield caption="Boot Loader Protection Mode" mask="0x0C" name="BLB0" values="ENUM_BLB"/>
          <bitfield caption="Boot Loader Protection Mode" mask="0x30" name="BLB1" values="ENUM_BLB2"/>
        </register>
      </register-group>
      <value-group caption="" name="ENUM_LB">
        <value caption="Further programming and verification disabled" name="VAL_0x00" value="0x00"/>
        <value caption="Further programming disabled" name="VAL_0x02" value="0x02"/>
        <value caption="No memory lock features enabled" name="VAL_0x03" value="0x03"/>
      </value-group>
      <value-group caption="" name="ENUM_BLB">
        <value caption="LPM and SPM prohibited in Application Section" name="VAL_0x00" value="0x00"/>
        <value caption="LPM prohibited in Application Section" name="VAL_0x01" value="0x01"/>
        <value caption="SPM prohibited in Application Section" name="VAL_0x02" value="0x02"/>
        <value caption="No lock on SPM and LPM in Application Section" name="VAL_0x03" value="0x03"/>
      </value-group>
      <value-group caption="" name="ENUM_BLB2">
        <value caption="LPM and SPM prohibited in Boot Section" name="VAL_0x00" value="0x00"/>
        <value caption="LPM prohibited in Boot Section" name="VAL_0x01" value="0x01"/>
        <value caption="SPM prohibited in Boot Section" name="VAL_0x02" value="0x02"/>
        <value caption="No lock on SPM and LPM in Boot Section" name="VAL_0x03" value="0x03"/>
      </value-group>
    </module>
    <module caption="" name="SPI">
      <register-group caption="" name="SPI">
        <register caption="SPI Data Register" name="SPDR" offset="0x4E" size="1" mask="0xFF" ocd-rw=""/>
        <register caption="SPI Status Register" name="SPSR" offset="0x4D" size="1" ocd-rw="R">
          <bitfield caption="SPI Interrupt Flag" mask="0x80" name="SPIF"/>
          <bitfield caption="Write Collision Flag" mask="0x40" name="WCOL"/>
          <bitfield caption="Double SPI Speed Bit" mask="0x01" name="SPI2X"/>
        </register>
        <register caption="SPI Control Register" name="SPCR" offset="0x4C" size="1">
          <bitfield caption="SPI Interrupt Enable" mask="0x80" name="SPIE"/>
          <bitfield caption="SPI Enable" mask="0x40" name="SPE"/>
          <bitfield caption="Data Order" mask="0x20" name="DORD"/>
          <bitfield caption="Master/Slave Select" mask="0x10" name="MSTR"/>
          <bitfield caption="Clock polarity" mask="0x08" name="CPOL"/>
          <bitfield caption="Clock Phase" mask="0x04" name="CPHA"/>
          <bitfield caption="SPI Clock Rate Selects" mask="0x03" name="SPR" values="COMM_SCK_RATE_3BIT"/>
        </register>
      </register-group>
      <value-group caption="" name="COMM_SCK_RATE_3BIT">
        <value caption="fosc/4" name="VAL_0x00" value="0x00"/>
        <value caption="fosc/16" name="VAL_0x01" value="0x01"/>
        <value caption="fosc/64" name="VAL_0x02" value="0x02"/>
        <value caption="fosc/128" name="VAL_0x03" value="0x03"/>
        <value caption="fosc/2" name="VAL_0x04" value="0x04"/>
        <value caption="fosc/8" name="VAL_0x05" value="0x05"/>
        <value caption="fosc/32" name="VAL_0x06" value="0x06"/>
        <value caption="fosc/64" name="VAL_0x07" value="0x07"/>
      </value-group>
    </module>
    <module caption="" name="CPU">
      <register-group caption="" name="CPU">
        <register caption="Clock Prescaler Register" name="CLKPR" offset="0x5C" size="1">
          <bitfield caption="Clock Prescaler Change Enable Bit" mask="0x80" name="CLKPCE"/>
          <bitfield caption="Clock Timer Prescaler Select Bits" mask="0x38" name="CLTPS"/>
          <bitfield caption="Clock system Prescaler Select Bits" mask="0x07" name="CLKPS"/>
        </register>
        <register caption="Clock Management Control Register" name="CMCR" offset="0x2F" size="1">
          <bitfield caption="Clock Management Control Change Enable Bit" mask="0x80" name="CMCCE"/>
          <bitfield caption="Clock Monitoring Enable Bit" mask="0x40" name="CMONEN"/>
          <bitfield caption="External Clock Input Select Bit" mask="0x20" name="ECINS"/>
          <bitfield caption="Core Clock Select Bit" mask="0x10" name="CCS"/>
          <bitfield caption="Crystal Oscillator 32 kHz Disable Bit" mask="0x08" name="CO32D"/>
          <bitfield caption="Slow RC-oscillator Disable Bit" mask="0x04" name="SRCD"/>
          <bitfield caption="Clock Management Mode Bitss" mask="0x03" name="CMM"/>
        </register>
        <register caption="Clock Management Status Register" name="CMSR" offset="0x30" size="1">
          <bitfield caption="Real-Time Clock Flag" mask="0x04" name="RTCF"/>
          <bitfield caption="Slow Crystal Oscillator Flag" mask="0x02" name="SXF"/>
          <bitfield caption="External Clock input Flag Bit" mask="0x01" name="ECF"/>
        </register>
        <register caption="Clock Management Interrupt Mask Register" name="CMIMR" offset="0x5B" size="1">
          <bitfield caption="Real-Time Clock Interrupt Enable Bit" mask="0x04" name="RTCIE"/>
          <bitfield caption="Slow Crystal Oscillator Interrupt Enable Bit" mask="0x02" name="SXIE"/>
          <bitfield caption="External Clock input Interrupt Enable Bit" mask="0x01" name="ECIE"/>
        </register>
        <register caption="FRC-Oscillator Calibration Register" name="FRCCAL" offset="0x66" size="1" mask="0x3F"/>
        <register caption="SRC-Oscillator Calibration Register" name="SRCCAL" offset="0x65" size="1" mask="0xFF"/>
        <register caption="Voltage Monitor Control Register" name="VMCR" offset="0x4B" size="1">
          <bitfield caption="Brown-Out Detection Level Select Bit" mask="0x80" name="BODLS"/>
          <bitfield caption="Brown-Out Detection on Power-Down Bit" mask="0x40" name="BODPD"/>
          <bitfield caption="Voltage Monitor Power supply Select Bit" mask="0x20" name="VMPS"/>
          <bitfield caption="Voltage Monitor Interrupt Mask Bit" mask="0x10" name="VMIM"/>
          <bitfield caption="Voltage Monitor Level Select Bits" mask="0x0F" name="VMLS"/>
        </register>
        <register caption="Voltage Monitor Status Register" name="VMSR" offset="0x36" size="1">
          <bitfield caption="Voltage Monitor Flag" mask="0x01" name="VMF"/>
        </register>
        <register caption="Status Register" name="SREG" offset="0x5F" size="1">
          <bitfield caption="Global Interrupt Enable" mask="0x80" name="I"/>
          <bitfield caption="Bit Copy Storage" mask="0x40" name="T"/>
          <bitfield caption="Half Carry Flag" mask="0x20" name="H"/>
          <bitfield caption="Sign Bit" mask="0x10" name="S"/>
          <bitfield caption="Two's Complement Overflow Flag" mask="0x08" name="V"/>
          <bitfield caption="Negative Flag" mask="0x04" name="N"/>
          <bitfield caption="Zero Flag" mask="0x02" name="Z"/>
          <bitfield caption="Carry Flag" mask="0x01" name="C"/>
        </register>
        <register caption="Stack Pointer " name="SP" offset="0x5D" size="2" mask="0xFFFF"/>
        <register caption="Store Program Memory Control Register" name="SPMCSR" offset="0x57" size="1">
          <bitfield caption="SPM Interrupt Enable" mask="0x80" name="SPMIE"/>
          <bitfield caption="Read-While-Write Section Busy" mask="0x40" name="RWWSB"/>
          <bitfield caption="Signature Row Read Bit" mask="0x20" name="SIGRD"/>
          <bitfield caption="Read-While-Write section read enable" mask="0x10" name="RWWSRE"/>
          <bitfield caption="Boot Lock Bit Set" mask="0x08" name="BLBSET"/>
          <bitfield caption="Page Write" mask="0x04" name="PGWRT"/>
          <bitfield caption="Page Erase" mask="0x02" name="PGERS"/>
          <bitfield caption="Self Programming Enable" mask="0x01" name="SPMEN"/>
        </register>
        <register caption="MCU Control Register" name="MCUCR" offset="0x55" size="1">
          <bitfield caption="Pull-up Disable Flag" mask="0x10" name="PUD"/>
          <bitfield caption="Interrupt Vector Select" mask="0x02" name="IVSEL"/>
          <bitfield caption="Interrupt Vector Change Enable" mask="0x01" name="IVCE"/>
        </register>
        <register caption="MCU Status Register" name="MCUSR" offset="0x54" size="1">
          <bitfield caption="TransPonder Reset Flag" mask="0x20" name="TPRF"/>
          <bitfield caption="Watchdog Reset Flag" mask="0x08" name="WDRF"/>
          <bitfield caption="Brown-out Reset Flag" mask="0x04" name="BORF"/>
          <bitfield caption="External Reset Flag" mask="0x02" name="EXTRF"/>
          <bitfield caption="Power-on reset flag" mask="0x01" name="PORF"/>
        </register>
        <register caption="Sleep Mode Control Register" name="SMCR" offset="0x53" size="1">
          <bitfield caption="Sleep Mode Select Bit2" mask="0x0E" name="SM" values="CPU_SLEEP_MODE_3BITS2"/>
          <bitfield caption="Sleep Enable Bit" mask="0x01" name="SE"/>
        </register>
        <register caption="Power Reduction Register" name="PRR0" offset="0x63" size="1">
          <bitfield caption="Power Reduction Voltage Monitor" mask="0x80" name="PRVM"/>
          <bitfield caption="Power Reduction IR Driver Stage" mask="0x40" name="PRDS"/>
          <bitfield caption="Power Reduction Crypto Unit" mask="0x20" name="PRCU"/>
          <bitfield caption="Power Reduction Timer Modulator" mask="0x10" name="PRTM"/>
          <bitfield caption="Power Reduction Timer3" mask="0x08" name="PRT3"/>
          <bitfield caption="Power Reduction Timer2" mask="0x04" name="PRT2"/>
          <bitfield caption="Power Reduction Timer1" mask="0x02" name="PRT1"/>
          <bitfield caption="Power Reduction LF-Receiver Interface" mask="0x01" name="PRLFR"/>
        </register>
        <register caption="Power Reduction Register" name="PRR1" offset="0x64" size="1">
          <bitfield caption="Power Reduction Serial Peripheral Interface" mask="0x02" name="PRSPI"/>
          <bitfield caption="Power Reduction Contactless Interface" mask="0x01" name="PRCI"/>
        </register>
        <register caption="General Purpose I/O Register 0" name="GPIOR" offset="0x3E" size="1" mask="0xFF"/>
      </register-group>
      <value-group caption="" name="CPU_SLEEP_MODE_3BITS2">
        <value caption="Idle" name="IDLE" value="0x00"/>
        <value caption="Extended power-save" name="EPSAVE" value="0x01"/>
        <value caption="Power Down" name="PDOWN" value="0x02"/>
        <value caption="Power Save" name="PSAVE" value="0x03"/>
        <value caption="Reserved" name="VAL_0x04" value="0x04"/>
        <value caption="Reserved" name="VAL_0x05" value="0x05"/>
        <value caption="Reserved" name="VAL_0x06" value="0x06"/>
        <value caption="Reserved" name="VAL_0x07" value="0x07"/>
      </value-group>
    <parameters><param name="CORE_VERSION" value="V2E"/></parameters></module>
    <module caption="" name="AFE">
      <register-group caption="" name="AFE">
        <register caption="Transponder Control Register" name="TPCR" offset="0x2D" size="1">
          <bitfield caption="Transponder Disable Bit" mask="0x80" name="TPD"/>
          <bitfield caption="Transponder Power Switch Disable Bit" mask="0x40" name="TPPSD"/>
          <bitfield caption="Transponder Modulation Damping level select Bit1" mask="0x30" name="TPMD"/>
          <bitfield caption="Transponder Modulation Select Bits" mask="0x0C" name="TPMS"/>
          <bitfield caption="Transponder Modulator Bit" mask="0x02" name="TPMOD"/>
          <bitfield caption="Transponder Mode Acknowledgment Bit" mask="0x01" name="TPMA"/>
        </register>
        <register caption="Transponder Interrupt Mask Register" name="TPIMR" offset="0x9C" size="1">
          <bitfield caption="Transponder Interrupt Mask Bit" mask="0x01" name="TPIM"/>
        </register>
        <register caption="Transponder Status &amp; Flag Register" name="TPFR" offset="0x2E" size="1" ocd-rw="R">
          <bitfield caption="Transponder Power Switch Bit" mask="0x08" name="TPPSW"/>
          <bitfield caption="Transponder Gap Signal Bit" mask="0x04" name="TPGAP"/>
          <bitfield caption="Transponder Active Bit" mask="0x02" name="TPA"/>
          <bitfield caption="Transponder Flag" mask="0x01" name="TPF"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="DDDLFRX">
      <register-group caption="" name="DDDLFRX">
        <register caption="Low Frequency Receiver Quality Controll Register" name="LFQCR" offset="0x99" size="1">
          <bitfield caption="LF Receiver Quality ?????" mask="0x01" name="LFQCLL"/>
        </register>
        <register caption="Low Frequency Receiver Control Register 0" name="LFCR0" offset="0x4F" size="1">
          <bitfield caption="LF Receiver Velocity Control Bits" mask="0xC0" name="LFVC"/>
          <bitfield caption="LF receiver Max Gain Bit" mask="0x20" name="LFMG"/>
          <bitfield caption="LF Receiver Buffer Data Frame Select Bit" mask="0x10" name="LFRBS"/>
          <bitfield caption="LF receiver Baud Rate Select Bit" mask="0x08" name="LFBRS"/>
          <bitfield caption="LF receiver Channel Enable Bits" mask="0x07" name="LFCE" lsb="1"/>
        </register>
        <register caption="LF receiver Control Register 1" name="LFCR1" offset="0x50" size="1">
          <bitfield caption="LF Receiver Enable Bit" mask="0x80" name="LFRE"/>
          <bitfield caption="LF Receiver Quality Check Bit" mask="0x40" name="LFQCE"/>
          <bitfield caption="LF receiver Rssi Measurement Start Additional Bit" mask="0x20" name="LFRMSA"/>
          <bitfield caption="LF receiver RSSI Measurement Start Bit" mask="0x10" name="LFRMS"/>
          <bitfield caption="LF Function Mode Bits" mask="0x0C" name="LFFM"/>
          <bitfield caption="LF Mode Bits" mask="0x03" name="LFM"/>
        </register>
        <register caption="Low Frequency Channel Capacity select register 1" name="LFCC1" offset="0x96" size="1" mask="0x0F"/>
        <register caption="Low Frequency Channel Capacity select register 2" name="LFCC2" offset="0x97" size="1" mask="0x0F"/>
        <register caption="Low Frequency Channel Capacity select register 3" name="LFCC3" offset="0x98" size="1" mask="0x0F"/>
        <register caption="LF Receiver Data Buffer" name="LFRDB" offset="0x52" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF RSSI Data Register 1" name="LFRSD1" offset="0x93" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF RSSI Data Register 2" name="LFRSD2" offset="0x94" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF RSSI Data Register 3" name="LFRSD3" offset="0x95" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF Clock Adjustment Data Register" name="LFCAD" offset="0x83" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF ID 0 Data Register Byte 3" name="LFID03" offset="0x87" size="1" mask="0xFF"/>
        <register caption="LF ID 0 Data Register Byte 2" name="LFID02" offset="0x86" size="1" mask="0xFF"/>
        <register caption="LF ID 0 Data Register Byte 1" name="LFID01" offset="0x85" size="1" mask="0xFF"/>
        <register caption="LF ID 0 Data Register Byte 0" name="LFID00" offset="0x84" size="1" mask="0xFF"/>
        <register caption="LF ID 1 Data Register Byte 3" name="LFID13" offset="0x8B" size="1" mask="0xFF"/>
        <register caption="LF ID 1 Data Register Byte 2" name="LFID12" offset="0x8A" size="1" mask="0xFF"/>
        <register caption="LF ID 1 Data Register Byte 1" name="LFID11" offset="0x89" size="1" mask="0xFF"/>
        <register caption="LF ID 1 Data Register Byte 0" name="LFID10" offset="0x88" size="1" mask="0xFF"/>
        <register caption="LF Receive Data Register Byte 3" name="LFRD3" offset="0x8F" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF Receive Data Register Byte 2" name="LFRD2" offset="0x8E" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF Receive Data Register Byte 1" name="LFRD1" offset="0x8D" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF Receive Data Register Byte 0" name="LFRD0" offset="0x8C" size="1" mask="0xFF" ocd-rw="R"/>
        <register caption="LF Identifier 0 Mask Register" name="LFID0M" offset="0x90" size="1">
          <bitfield caption="Identifier 0 Enable Bit" mask="0x80" name="ID0E"/>
          <bitfield caption="Identifier 0 Frame Select Bits" mask="0x1F" name="ID0FS"/>
        </register>
        <register caption="LF Identifier 1 Mask Register" name="LFID1M" offset="0x91" size="1">
          <bitfield caption="Identifier 1 Enable Bit" mask="0x80" name="ID1E"/>
          <bitfield caption="Identifier 1 Frame Select Bits" mask="0x1F" name="ID1FS"/>
        </register>
        <register caption="LF Receive Data Frame Register" name="LFRDF" offset="0x92" size="1">
          <bitfield caption="Receive Data Frame Enable Bit" mask="0x80" name="RDFE"/>
          <bitfield caption="Receive Data Frame Select Bits" mask="0x1F" name="RDFS"/>
        </register>
        <register caption="LF Interrupt Mask Register" name="LFIMR" offset="0x82" size="1">
          <bitfield caption="LF Manchester Decoder Error Interrupt Mask Bit" mask="0x40" name="LFMDIM"/>
          <bitfield caption="LF Signal Detected Interrupt Mask Bit" mask="0x20" name="LFSDIM"/>
          <bitfield caption="LF RSSI Data Interrupt Mask Bit" mask="0x10" name="LFRSIM"/>
          <bitfield caption="LF Receiver Data Buffer Interrupt Mask Bit" mask="0x08" name="LFDBIM"/>
          <bitfield caption="LF Receiver Frame End Interrupt Mask Bit" mask="0x04" name="LFFEIM"/>
          <bitfield caption="LF Identifier 1 Interrupt Mask Bit" mask="0x02" name="LFID1IM"/>
          <bitfield caption="LF Identifier 0 Interrupt Mask Bit" mask="0x01" name="LFID0IM"/>
        </register>
        <register caption="LF Flag Register" name="LFFR" offset="0x38" size="1" ocd-rw="R">
          <bitfield caption="LF Clock Adjustment Flag" mask="0x80" name="LFCAF"/>
          <bitfield caption="LF Manchester Decoder Error Flag" mask="0x40" name="LFMDF"/>
          <bitfield caption="LF Signal Detect Flag" mask="0x20" name="LFSDF"/>
          <bitfield caption="LF RSSI Data Flag" mask="0x10" name="LFRSF"/>
          <bitfield caption="LF Data Buffer Full Flag" mask="0x08" name="LFDBF"/>
          <bitfield caption="LF Frame End Flag" mask="0x04" name="LFFEF"/>
          <bitfield caption="LF Identifier 1 Flag" mask="0x02" name="LFID1F"/>
          <bitfield caption="LF Identifier 0 Flag" mask="0x01" name="LFID0F"/>
        </register>
        <register caption="LF Status Register" name="LFSR" offset="0x56" size="1">
          <bitfield caption="LF Signal Data Bit" mask="0x02" name="LFSD"/>
          <bitfield caption="LF Envelope Signal Bit" mask="0x01" name="LFES"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="IRLED">
      <register-group caption="" name="IRLED">
        <register caption="LED Driver Control Register" name="LDCR" offset="0x6D" size="1">
          <bitfield caption="LED Driver Current Select Bits" mask="0x06" name="LDCS"/>
          <bitfield caption="LED Driver Enable Bit" mask="0x01" name="LDE"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="AES">
      <register-group caption="" name="AES">
        <register caption="AES Control Register" name="AESCR" offset="0x33" size="1" ocd-rw="R">
          <bitfield caption="AES Enable Bit" mask="0x80" name="AESE"/>
          <bitfield caption="AES Reset Bit" mask="0x20" name="AESRES"/>
          <bitfield caption="AES State XOR load bit" mask="0x10" name="AESXOR"/>
          <bitfield caption="AES Direction Bit" mask="0x08" name="AESD"/>
          <bitfield caption="AES Interrupt Mask Bit" mask="0x04" name="AESIM"/>
          <bitfield caption="AES Write Data Bit" mask="0x02" name="AESWD"/>
          <bitfield caption="AES Write Key Bit" mask="0x01" name="AESWK"/>
        </register>
        <register caption="AES Status Register" name="AESSR" offset="0x34" size="1" ocd-rw="R">
          <bitfield caption="AES Error Flag Bit" mask="0x80" name="AESERF"/>
          <bitfield caption="AES Ready Flag Bit" mask="0x01" name="AESRF"/>
        </register>
        <register caption="AES Data Register" name="AESDR" offset="0x49" size="1" mask="0xFF"/>
        <register caption="AES Key Register" name="AESKR" offset="0x4A" size="1">
          <bitfield caption="AES Key Register Bits" mask="0xFF" name="AESKR"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="MOD">
      <register-group caption="" name="MOD">
        <register caption="Timer Modulator Control Register" name="TMCR" offset="0x7D" size="1">
          <bitfield caption="Timer Modulator SSI Enable Bit" mask="0x80" name="TMSSIE"/>
          <bitfield caption="Timer Modulator Clock Polarity for SSI shift clock" mask="0x40" name="TMCPOL"/>
          <bitfield caption="Modulator Interface 4 Select Bits" mask="0x30" name="MI4S"/>
          <bitfield caption="Modulator Interface 2 Select Bits" mask="0x0C" name="MI2S"/>
          <bitfield caption="Modulator Interface 1 Select Bits" mask="0x03" name="MI1S"/>
        </register>
        <register caption="Timer Modulator Mode Register" name="TMMR" offset="0x7E" size="1">
          <bitfield caption="Timer Modulator 1/2 output Select bit" mask="0x80" name="TM12S"/>
          <bitfield caption="Timer Modulator Mode Select Bits" mask="0x60" name="TMMS"/>
          <bitfield caption="Modulator OUT signal Complement Bit" mask="0x10" name="MOUTC"/>
          <bitfield caption="Modulator Shift Clock Select Bits" mask="0x0C" name="MSCS"/>
          <bitfield caption="Modulator Output Select Bits" mask="0x03" name="MOS"/>
        </register>
        <register caption="Timer Modulator Data Register" name="TMDR" offset="0x48" size="1" mask="0xFF"/>
        <register caption="Timer Modulator Transmit Data Register" name="TMTDR" offset="0xAA" size="1" mask="0xFF"/>
        <register caption="Timer Modulator Shift Register" name="TMSR" offset="0xAB" size="1" mask="0xFF"/>
        <register caption="Timer Modulator Manchester Data Register" name="TMMDR" offset="0xA8" size="1" mask="0x0F"/>
        <register caption="Timer Modulator Biphase Data Register" name="TMBDR" offset="0xA9" size="1" mask="0x0F"/>
        <register caption="Timer Modulator Interrupt Flag Register" name="TMIFR" offset="0x35" size="1">
          <bitfield caption="Timer Modulator SSI Transmit Status Bit" mask="0x10" name="TMTXS"/>
          <bitfield caption="Timer Modulator SSI Receive Status Bit" mask="0x08" name="TMRXS"/>
          <bitfield caption="Timer Modulator SSI Transmit Complete Flag Bit" mask="0x04" name="TMTCF"/>
          <bitfield caption="Timer Modulator SSI Transmit Flag Bit" mask="0x02" name="TMTXF"/>
          <bitfield caption="Timer Modulator SSI Receive Flag Bit" mask="0x01" name="TMRXF"/>
        </register>
        <register caption="Timer Modulator Interrupt Mask Register" name="TMIMR" offset="0x7F" size="1">
          <bitfield caption="Timer Modulator SSI Transmit Complete Interrupt Mask Bit" mask="0x04" name="TMTCIM"/>
          <bitfield caption="Timer Modulator SSI Transmit Interrupt Mask Bit" mask="0x02" name="TMTXIM"/>
          <bitfield caption="Timer Modulator SSI Receive Interrupt Mask Bit" mask="0x01" name="TMRXIM"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="VMON">
      <register-group caption="" name="VMON">
        <register caption="Voltage Monitor Control Register" name="VMCR" offset="0x4B" size="1">
          <bitfield caption="Brown-Out Detection Level Bit" mask="0x80" name="BODLS"/>
          <bitfield caption="Brown-Out Detection on Power-Down Bit" mask="0x40" name="BODPD"/>
          <bitfield caption="Voltage Monitor Power Supply Voltage Select Bit" mask="0x20" name="VMPS"/>
          <bitfield caption="Voltag Monitor Interrupt Mask bit" mask="0x10" name="VMIM"/>
          <bitfield caption="Voltage Monitor Level Select Bits" mask="0x0F" name="VMLS"/>
        </register>
        <register caption="Voltage Monitor Status Register" name="VMSR" offset="0x36" size="1" ocd-rw="R">
          <bitfield caption="Voltage Monitor Flag" mask="0x01" name="VMF"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="EXTERNAL_INTERRUPT">
      <register-group caption="" name="EXTERNAL_INTERRUPT">
        <register caption="External Interrupt Control Register" name="EICRA" offset="0x69" size="1">
          <bitfield caption="External Interrupt Sense Control 0 Bit 1" mask="0x02" name="ISC01"/>
          <bitfield caption="External Interrupt Sense Control 0 Bit 0" mask="0x01" name="ISC00"/>
        </register>
        <register caption="External Interrupt Mask Register" name="EIMSK" offset="0x47" size="1">
          <bitfield caption="External Interrupt Request 0 Enable" mask="0x01" name="INT0"/>
        </register>
        <register caption="External Interrupt Flag Register" name="EIFR" offset="0x3D" size="1" ocd-rw="R">
          <bitfield caption="External Interrupt Flag 0" mask="0x01" name="INTF0"/>
        </register>
        <register caption="Pin Change Mask Register 0" name="PCMSK0" offset="0x6A" size="1">
          <bitfield caption="Pin Change Enable Masks" mask="0xFF" name="PCINT"/>
        </register>
        <register caption="Pin Change Mask Register 1" name="PCMSK1" offset="0x6B" size="1">
          <bitfield caption="Pin Change Enable Masks" mask="0xFF" name="PCINT" lsb="8"/>
        </register>
        <register caption="Pin Change Interrupt Flag Register" name="PCIFR" offset="0x37" size="1" ocd-rw="R">
          <bitfield caption="Pin Change Interrupt Flags" mask="0x03" name="PCIF"/>
        </register>
        <register caption="Pin Change Interrupt Control Register" name="PCICR" offset="0x46" size="1">
          <bitfield caption="Pin Change Interrupt Enables" mask="0x03" name="PCIE"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="EEPROM">
      <register-group caption="" name="EEPROM">
        <register caption="EEPROM Address Register  Bytes" name="EEAR" offset="0x41" size="2" mask="0x0FFF"/>
        <register caption="EEPROM Data Register" name="EEDR" offset="0x40" size="1" mask="0xFF"/>
        <register caption="EEPROM Error Correction Code Register" name="EECCR" offset="0x44" size="1">
          <bitfield caption="EEPROM Lookup Table Data Bits" mask="0x0F" name="EEL"/>
        </register>
        <register caption="EEPROM Protect Register" name="EEPR" offset="0x43" size="1">
          <bitfield caption="EEPROM Access Protect Bits" mask="0x0F" name="EEAP"/>
        </register>
        <register caption="EEPROM Control Register" name="EECR" offset="0x3F" size="1">
          <bitfield caption="Non-volatile memory busy" mask="0x80" name="NVMBSY"/>
          <bitfield caption="EEPROM Low Power Pump Enable Bit" mask="0x40" name="EELP"/>
          <bitfield caption="EEPROM Programming Mode Bits" mask="0x30" name="EEPM"/>
          <bitfield caption="EEPROM Ready Interrupt Enable" mask="0x08" name="EERIE"/>
          <bitfield caption="EEPROM Master Write Enable" mask="0x04" name="EEMWE"/>
          <bitfield caption="EEPROM Write Enable" mask="0x02" name="EEWE"/>
          <bitfield caption="EEPROM Read Enable" mask="0x01" name="EERE"/>
        </register>
        <register caption="EEPROM Control Register 2" name="EECR2" offset="0x45" size="1">
          <bitfield caption="EEPROM Page Access" mask="0x02" name="EEPAGE"/>
          <bitfield caption="EEPROM Burst Read Enable bit" mask="0x01" name="EEBRE"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="PORTB">
      <register-group caption="" name="PORTB">
        <register caption="Port B Data Register" name="PORTB" offset="0x25" size="1" mask="0xFF"/>
        <register caption="Port B Data Direction Register" name="DDRB" offset="0x24" size="1" mask="0xFF"/>
        <register caption="Port B Input Pins" name="PINB" offset="0x23" size="1" mask="0xFF" ocd-rw="R"/>
      </register-group>
    </module>
    <module caption="" name="PORTD">
      <register-group caption="" name="PORTD">
        <register caption="Port D Data Register" name="PORTD" offset="0x2B" size="1" mask="0xFF"/>
        <register caption="Port D Data Direction Register" name="DDRD" offset="0x2A" size="1" mask="0xFF"/>
        <register caption="Port D Input Pins" name="PIND" offset="0x29" size="1" mask="0xFF" ocd-rw="R"/>
      </register-group>
    </module>
    <module caption="" name="TIMER_COUNTER_0">
      <register-group caption="" name="TIMER_COUNTER_0">
        <register caption="Timer 0 Control Register" name="T0CR" offset="0x59" size="1">
          <bitfield caption="Timer 0 Prescaler Reset Bit" mask="0x10" name="T0PR"/>
          <bitfield caption="Timer 0 Interrupt Enable Bit" mask="0x08" name="T0IE"/>
          <bitfield caption="Timer 0 Prescaler Select Bits" mask="0x07" name="T0PS"/>
        </register>
        <register caption="Timer0 Interrupt Flag Register" name="T0IFR" offset="0x39" size="1" ocd-rw="R">
          <bitfield caption="Timer 0 Flag Bit" mask="0x01" name="T0F"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="TIMER_COUNTER_1">
      <register-group caption="" name="TIMER_COUNTER_1">
        <register caption="Timer 1 Control Register" name="T1CR" offset="0x58" size="1">
          <bitfield caption="Timer 1 Enable Bit" mask="0x80" name="T1E"/>
          <bitfield caption="Timer 1 Clock Select Bits" mask="0x18" name="T1CS"/>
          <bitfield caption="Timer 1 Interrupt Enable Bit" mask="0x04" name="T1IE"/>
          <bitfield caption="Timer 1 Prescaler Select Bits" mask="0x03" name="T1PS"/>
        </register>
        <register caption="Timer1 Interrupt Flag Register" name="T1IFR" offset="0x3A" size="1" ocd-rw="R">
          <bitfield caption="Timer 1 Flag Bit" mask="0x01" name="T1F"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="TIMER_COUNTER_2">
      <register-group caption="" name="TIMER_COUNTER_2">
        <register caption="Timer 2 Control Register" name="T2CR" offset="0x31" size="1">
          <bitfield caption="Timer 2 Enable Bit" mask="0x80" name="T2E"/>
          <bitfield caption="Timer 2 Toggle with Start Bit" mask="0x40" name="T2TS"/>
          <bitfield caption="Timer 2 Reset Bit" mask="0x20" name="T2RES"/>
          <bitfield caption="Toggle Output Preset Bit" mask="0x10" name="T2TOP"/>
          <bitfield caption="Timer 2 Gap Reset Mask Bit" mask="0x08" name="T2GRM"/>
          <bitfield caption="Timer2 Compare Reset Mask Bit" mask="0x04" name="T2CRM"/>
          <bitfield caption="Timer 2 Compare Toggle Mask Bit" mask="0x02" name="T2CTM"/>
          <bitfield caption="Timer 2 Overflow Toggle Mask Bit" mask="0x01" name="T2OTM"/>
        </register>
        <register caption="Timer 2 Counter Register" name="T2CNT" offset="0x70" size="1" mask="0xFF"/>
        <register caption="Timer2 Compare Register" name="T2COR" offset="0x71" size="1" mask="0xFF"/>
        <register caption="Timer2 Interrupt Flag Register" name="T2IFR" offset="0x3B" size="1">
          <bitfield caption="Timer 2 Compare Flag Bit" mask="0x02" name="T2COF"/>
          <bitfield caption="Timer 2 Overflow Flag Bit" mask="0x01" name="T2OFF"/>
        </register>
        <register caption="Timer 2 Interrupt Mask Register" name="T2IMR" offset="0x74" size="1" ocd-rw="R">
          <bitfield caption="Timer 2 Compare Interrupt Mask Bit" mask="0x02" name="T2CIM"/>
          <bitfield caption="Timer 2 Overflow Interrupt Mask Bit" mask="0x01" name="T2OIM"/>
        </register>
        <register caption="Timer 2 Mode Register" name="T2MR" offset="0x73" size="1">
          <bitfield caption="Timer 2 Duty Cycle Bits" mask="0xC0" name="T2D"/>
          <bitfield caption="Timer 2 Prescaler Select Bits" mask="0x38" name="T2PS"/>
          <bitfield caption="Timer 2 Clock Select Bits" mask="0x07" name="T2CS"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="TIMER_COUNTER_3">
      <register-group caption="" name="TIMER_COUNTER_3">
        <register caption="Timer 3 Control Register" name="T3CR" offset="0x32" size="1">
          <bitfield caption="Timer 3 Enable Bit" mask="0x80" name="T3E"/>
          <bitfield caption="Timer 3 Capture Toggle Mask Bit" mask="0x40" name="T3CPTM"/>
          <bitfield caption="Timer 3 Reset Bit" mask="0x20" name="T3RES"/>
          <bitfield caption="Timer 3 Toggle Output Preset Bit" mask="0x10" name="T3TOP"/>
          <bitfield caption="Timer 3 Capture Reset Mask Bit" mask="0x08" name="T3CPRM"/>
          <bitfield caption="Timer3 Compare Reset Mask Bit" mask="0x04" name="T3CRM"/>
          <bitfield caption="Timer 3 Compare Toggle Mask Bit" mask="0x02" name="T3CTM"/>
          <bitfield caption="Timer 3 Overflow Toggle Mask Bit" mask="0x01" name="T3OTM"/>
        </register>
        <register caption="Timer3 Control Register 2" name="T3CR2" offset="0x2C" size="1">
          <bitfield caption="Timer 3 Compare 2 Reset Mask bit" mask="0x04" name="T3C2RM"/>
          <bitfield caption="Timer 3 Compare 2 Toggle Mask bit" mask="0x02" name="T3C2TM"/>
          <bitfield caption="Timer 3 Global Reset Bit" mask="0x01" name="T3GRES"/>
        </register>
        <register caption="Timer 3 Mode Register A" name="T3MRA" offset="0x79" size="1">
          <bitfield caption="Timer 3 Input Capture Select Bits" mask="0xC0" name="T3ICS"/>
          <bitfield caption="Timer 3 Input Capture Noise Canceler Bit" mask="0x20" name="T3CNC"/>
          <bitfield caption="Timer 3 Capture Edge select Bits" mask="0x18" name="T3CE"/>
          <bitfield caption="Timer 3 Software Capture Enable Bit" mask="0x04" name="T3SCE"/>
          <bitfield caption="Timer 3 Clock Select Bits" mask="0x03" name="T3CS"/>
        </register>
        <register caption="Timer 3 Mode Register B" name="T3MRB" offset="0x7A" size="1">
          <bitfield caption="Timer 3 Prescaler Select Bits" mask="0x07" name="T3PS"/>
        </register>
        <register caption="Timer3 Interrupt Flag Register" name="T3IFR" offset="0x3C" size="1" ocd-rw="R">
          <bitfield caption="Timer3 Compare 2 Flag bit" mask="0x08" name="T3CO2F"/>
          <bitfield caption="Timer3 Input Capture Flag bit" mask="0x04" name="T3ICF"/>
          <bitfield caption="Timer3 Compare Flag bit" mask="0x02" name="T3COF"/>
          <bitfield caption="Timer3 OverFlow Flag bit" mask="0x01" name="T3OFF"/>
        </register>
        <register caption="Timer3 Interrupt Mask Register" name="T3IMR" offset="0x7B" size="1">
          <bitfield caption="Timer3 Compare 2 Interrupt Mask bit" mask="0x08" name="T3C2IM"/>
          <bitfield caption="Timer3 Capture Interrupt Mask bit" mask="0x04" name="T3CPIM"/>
          <bitfield caption="Timer3 Compare Interrupt Mask bit" mask="0x02" name="T3CIM"/>
          <bitfield caption="Timer3 Overflow Interrupt Mask bit" mask="0x01" name="T3OIM"/>
        </register>
        <register caption="Timer3 Input Capture Register" name="T3ICR" offset="0x78" size="1" mask="0xFF"/>
        <register caption="Timer3 COmpare Register" name="T3COR" offset="0x77" size="1" mask="0xFF"/>
        <register caption="Timer3 COmpare2 Register" name="T3CO2R" offset="0x75" size="1" mask="0xFF"/>
        <register caption="Timer3 Counter Register" name="T3CNT" offset="0x76" size="1" mask="0xFF"/>
      </register-group>
    </module>
    <module caption="" name="RTC_TIMER">
      <register-group caption="" name="RTC_TIMER">
        <register caption="Real-Time Clock Control Register" name="RTCCR" offset="0x9E" size="1" ocd-rw="R">
          <bitfield caption="Real-Time Counter Reset Bit" mask="0x01" name="RTCR"/>
        </register>
        <register caption="Real Time Clock Data Register" name="RTCDR" offset="0x9F" size="1" mask="0xFF"/>
      </register-group>
    </module>
    <module caption="Watchdog Timer" name="WDT">
      <register-group caption="Watchdog Timer" name="WDT">
        <register caption="Watchdog Timer Control Register" name="WDTCR" offset="0x60" size="1" ocd-rw="R">
          <bitfield caption="Watchdog Change Enable" mask="0x10" name="WDCE"/>
          <bitfield caption="Watch Dog Enable" mask="0x08" name="WDE"/>
          <bitfield caption="Watch Dog Timer Prescaler Select bits" mask="0x07" name="WDPS"/>
        </register>
      </register-group>
    </module>
    <module caption="" name="CRC">
      <register-group caption="" name="CRC">
        <register caption="CRC Data Register" name="CRCDR" offset="0xAD" size="1" mask="0xFF" ocd-rw=""/>
        <register caption="CRC Control Register" name="CRCCR" offset="0xAE" size="1" ocd-rw="R">
          <bitfield caption="CRC Reset Bit" mask="0x80" name="CRCRS"/>
          <bitfield caption="Start VALue Bit" mask="0x40" name="STVAL"/>
          <bitfield caption="Reflect Output Data Bit" mask="0x20" name="REFLO"/>
          <bitfield caption="Reflect Input Data Bit" mask="0x10" name="REFLI"/>
          <bitfield caption="CRC Mode Select Bit" mask="0x08" name="CRCSEL"/>
          <bitfield caption="Partial CRC Computation Bits" mask="0x07" name="CRCN"/>
        </register>
        <register caption="CRC Status Register" name="CRCSR" offset="0xAF" size="1">
          <bitfield caption="CRC Busy Flag" mask="0x01" name="CRCBF"/>
        </register>
        <register caption="CRC Polynomial Data Register" name="CRCPOL" offset="0xAC" size="1" mask="0xFF"/>
      </register-group>
    </module>
    <module caption="" name="PORTC">
      <register-group caption="" name="PORTC">
        <register caption="Port C Data Register" name="PORTC" offset="0x28" size="1" mask="0xFF"/>
        <register caption="Port C Data Direction Register" name="DDRC" offset="0x27" size="1" mask="0xFF"/>
        <register caption="Port C Input Pins" name="PINC" offset="0x26" size="1" mask="0xFF" ocd-rw="R"/>
      </register-group>
    </module>
  </modules>
</avr-tools-device-file>
