<?xml version="1.0"?>
<AVRPART>
  <MODULE_LIST>[ADMIN:MEMORY:PACKAGE:POWER:FUSE:LOCKBIT:PROGRAMMING:CORE:IO_MODULE:ICE_SETTINGS:INTERRUPT_VECTOR]</MODULE_LIST>
  <ADMIN>
    <PART_NAME>ATmega8HVA</PART_NAME>
    <SPEED>4MHZ</SPEED>
    <BUILD>1</BUILD>
    <RELEASE_STATUS>RELEASED</RELEASE_STATUS>
    <SIGNATURE>
      <ADDR000>$1E</ADDR000>
      <ADDR001>$93</ADDR001>
      <ADDR002>$10</ADDR002>
    </SIGNATURE>
    <OCD_PARAMETERS>
      <OCD_REVISION>1</OCD_REVISION>
      <OCD_REGISTER_ADDRESS>0x31</OCD_REGISTER_ADDRESS>
      <CACHE_TYPE>0</CACHE_TYPE>
      <USE_JTAGID>0</USE_JTAGID>
      <DW_BASE_PC>0x00</DW_BASE_PC>
    </OCD_PARAMETERS>
  </ADMIN>
  <MEMORY>
    <PROG_FLASH>8192</PROG_FLASH>
    <EEPROM>256</EEPROM>
    <INT_SRAM>
      <SIZE>512</SIZE>
      <START_ADDR>$100</START_ADDR>
    </INT_SRAM>
    <EXT_SRAM>
      <SIZE>NA</SIZE>
      <START_ADDR>NA</START_ADDR>
    </EXT_SRAM>
    <IO_MEMORY>
      <IO_START_ADDR>$00</IO_START_ADDR>
      <IO_STOP_ADDR>$3F</IO_STOP_ADDR>
      <EXT_IO_START_ADDR>$60</EXT_IO_START_ADDR>
      <EXT_IO_STOP_ADDR>$FF</EXT_IO_STOP_ADDR>
      <MEM_START_ADDR>$20</MEM_START_ADDR>
      <MEM_STOP_ADDR>$FF</MEM_STOP_ADDR>
      <BPPLR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFE</MEM_ADDR>
        <BPPL_MASK>0x01</BPPL_MASK>
        <BPPLE_MASK>0x02</BPPLE_MASK>
      </BPPLR>
      <BPCR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFD</MEM_ADDR>
        <CHCD_MASK>0x01</CHCD_MASK>
        <DHCD_MASK>0x02</DHCD_MASK>
        <COCD_MASK>0x04</COCD_MASK>
        <DOCD_MASK>0x08</DOCD_MASK>
        <SCD_MASK>0x10</SCD_MASK>
      </BPCR>
      <BPHCTR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFC</MEM_ADDR>
        <HCPT0_MASK>0x01</HCPT0_MASK>
        <HCPT1_MASK>0x02</HCPT1_MASK>
        <HCPT2_MASK>0x04</HCPT2_MASK>
        <HCPT3_MASK>0x08</HCPT3_MASK>
        <HCPT4_MASK>0x10</HCPT4_MASK>
        <HCPT5_MASK>0x20</HCPT5_MASK>
      </BPHCTR>
      <BPOCTR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFB</MEM_ADDR>
        <OCPT0_MASK>0x01</OCPT0_MASK>
        <OCPT1_MASK>0x02</OCPT1_MASK>
        <OCPT2_MASK>0x04</OCPT2_MASK>
        <OCPT3_MASK>0x08</OCPT3_MASK>
        <OCPT4_MASK>0x10</OCPT4_MASK>
        <OCPT5_MASK>0x20</OCPT5_MASK>
      </BPOCTR>
      <BPSCTR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFA</MEM_ADDR>
        <SCPT0_MASK>0x01</SCPT0_MASK>
        <SCPT1_MASK>0x02</SCPT1_MASK>
        <SCPT2_MASK>0x04</SCPT2_MASK>
        <SCPT3_MASK>0x08</SCPT3_MASK>
        <SCPT4_MASK>0x10</SCPT4_MASK>
        <SCPT5_MASK>0x20</SCPT5_MASK>
        <SCPT6_MASK>0x40</SCPT6_MASK>
      </BPSCTR>
      <BPCHCD>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF9</MEM_ADDR>
        <CHCDL0_MASK>0x01</CHCDL0_MASK>
        <CHCDL1_MASK>0x02</CHCDL1_MASK>
        <CHCDL2_MASK>0x04</CHCDL2_MASK>
        <CHCDL3_MASK>0x08</CHCDL3_MASK>
        <CHCDL4_MASK>0x10</CHCDL4_MASK>
        <CHCDL5_MASK>0x20</CHCDL5_MASK>
        <CHCDL6_MASK>0x40</CHCDL6_MASK>
        <CHCDL7_MASK>0x80</CHCDL7_MASK>
      </BPCHCD>
      <BPDHCD>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF8</MEM_ADDR>
        <DHCDL0_MASK>0x01</DHCDL0_MASK>
        <DHCDL1_MASK>0x02</DHCDL1_MASK>
        <DHCDL2_MASK>0x04</DHCDL2_MASK>
        <DHCDL3_MASK>0x08</DHCDL3_MASK>
        <DHCDL4_MASK>0x10</DHCDL4_MASK>
        <DHCDL5_MASK>0x20</DHCDL5_MASK>
        <DHCDL6_MASK>0x40</DHCDL6_MASK>
        <DHCDL7_MASK>0x80</DHCDL7_MASK>
      </BPDHCD>
      <BPCOCD>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF7</MEM_ADDR>
        <COCDL0_MASK>0x01</COCDL0_MASK>
        <COCDL1_MASK>0x02</COCDL1_MASK>
        <COCDL2_MASK>0x04</COCDL2_MASK>
        <COCDL3_MASK>0x08</COCDL3_MASK>
        <COCDL4_MASK>0x10</COCDL4_MASK>
        <COCDL5_MASK>0x20</COCDL5_MASK>
        <COCDL6_MASK>0x40</COCDL6_MASK>
        <COCDL7_MASK>0x80</COCDL7_MASK>
      </BPCOCD>
      <BPDOCD>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF6</MEM_ADDR>
        <DOCDL0_MASK>0x01</DOCDL0_MASK>
        <DOCDL1_MASK>0x02</DOCDL1_MASK>
        <DOCDL2_MASK>0x04</DOCDL2_MASK>
        <DOCDL3_MASK>0x08</DOCDL3_MASK>
        <DOCDL4_MASK>0x10</DOCDL4_MASK>
        <DOCDL5_MASK>0x20</DOCDL5_MASK>
        <DOCDL6_MASK>0x40</DOCDL6_MASK>
        <DOCDL7_MASK>0x80</DOCDL7_MASK>
      </BPDOCD>
      <BPSCD>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF5</MEM_ADDR>
        <SCDL0_MASK>0x01</SCDL0_MASK>
        <SCDL1_MASK>0x02</SCDL1_MASK>
        <SCDL2_MASK>0x04</SCDL2_MASK>
        <SCDL3_MASK>0x08</SCDL3_MASK>
        <SCDL4_MASK>0x10</SCDL4_MASK>
        <SCDL5_MASK>0x20</SCDL5_MASK>
        <SCDL6_MASK>0x40</SCDL6_MASK>
        <SCDL7_MASK>0x80</SCDL7_MASK>
      </BPSCD>
      <BPIFR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF3</MEM_ADDR>
        <CHCIF_MASK>0x01</CHCIF_MASK>
        <DHCIF_MASK>0x02</DHCIF_MASK>
        <COCIF_MASK>0x04</COCIF_MASK>
        <DOCIF_MASK>0x08</DOCIF_MASK>
        <SCIF_MASK>0x10</SCIF_MASK>
      </BPIFR>
      <BPIMSK>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF2</MEM_ADDR>
        <CHCIE_MASK>0x01</CHCIE_MASK>
        <DHCIE_MASK>0x02</DHCIE_MASK>
        <COCIE_MASK>0x04</COCIE_MASK>
        <DOCIE_MASK>0x08</DOCIE_MASK>
        <SCIE_MASK>0x10</SCIE_MASK>
      </BPIMSK>
      <FCSR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF0</MEM_ADDR>
        <CFE_MASK>0x01</CFE_MASK>
        <DFE_MASK>0x02</DFE_MASK>
        <CPS_MASK>0x04</CPS_MASK>
        <DUVRD_MASK>0x08</DUVRD_MASK>
      </FCSR>
      <CADICH>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE9</MEM_ADDR>
        <CADICH0_MASK>0x01</CADICH0_MASK>
        <CADICH1_MASK>0x02</CADICH1_MASK>
        <CADICH2_MASK>0x04</CADICH2_MASK>
        <CADICH3_MASK>0x08</CADICH3_MASK>
        <CADICH4_MASK>0x10</CADICH4_MASK>
        <CADICH5_MASK>0x20</CADICH5_MASK>
        <CADICH6_MASK>0x40</CADICH6_MASK>
        <CADICH7_MASK>0x80</CADICH7_MASK>
      </CADICH>
      <CADICL>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE8</MEM_ADDR>
        <CADICL0_MASK>0x01</CADICL0_MASK>
        <CADICL1_MASK>0x02</CADICL1_MASK>
        <CADICL2_MASK>0x04</CADICL2_MASK>
        <CADICL3_MASK>0x08</CADICL3_MASK>
        <CADICL4_MASK>0x10</CADICL4_MASK>
        <CADICL5_MASK>0x20</CADICL5_MASK>
        <CADICL6_MASK>0x40</CADICL6_MASK>
        <CADICL7_MASK>0x80</CADICL7_MASK>
      </CADICL>
      <CADRC>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE6</MEM_ADDR>
        <CADRC0_MASK>0x01</CADRC0_MASK>
        <CADRC1_MASK>0x02</CADRC1_MASK>
        <CADRC2_MASK>0x04</CADRC2_MASK>
        <CADRC3_MASK>0x08</CADRC3_MASK>
        <CADRC4_MASK>0x10</CADRC4_MASK>
        <CADRC5_MASK>0x20</CADRC5_MASK>
        <CADRC6_MASK>0x40</CADRC6_MASK>
        <CADRC7_MASK>0x80</CADRC7_MASK>
      </CADRC>
      <CADCSRB>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE5</MEM_ADDR>
        <CADICIF_MASK>0x01</CADICIF_MASK>
        <CADRCIF_MASK>0x02</CADRCIF_MASK>
        <CADACIF_MASK>0x04</CADACIF_MASK>
        <CADICIE_MASK>0x10</CADICIE_MASK>
        <CADRCIE_MASK>0x20</CADRCIE_MASK>
        <CADACIE_MASK>0x40</CADACIE_MASK>
      </CADCSRB>
      <CADCSRA>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE4</MEM_ADDR>
        <CADSE_MASK>0x01</CADSE_MASK>
        <CADSI0_MASK>0x02</CADSI0_MASK>
        <CADSI1_MASK>0x04</CADSI1_MASK>
        <CADAS0_MASK>0x08</CADAS0_MASK>
        <CADAS1_MASK>0x10</CADAS1_MASK>
        <CADUB_MASK>0x20</CADUB_MASK>
        <CADPOL_MASK>0x40</CADPOL_MASK>
        <CADEN_MASK>0x80</CADEN_MASK>
      </CADCSRA>
      <CADAC3>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE3</MEM_ADDR>
        <CADAC24_MASK>0x01</CADAC24_MASK>
        <CADAC25_MASK>0x02</CADAC25_MASK>
        <CADAC26_MASK>0x04</CADAC26_MASK>
        <CADAC27_MASK>0x08</CADAC27_MASK>
        <CADAC28_MASK>0x10</CADAC28_MASK>
        <CADAC29_MASK>0x20</CADAC29_MASK>
        <CADAC30_MASK>0x40</CADAC30_MASK>
        <CADAC31_MASK>0x80</CADAC31_MASK>
      </CADAC3>
      <CADAC2>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE2</MEM_ADDR>
        <CADAC16_MASK>0x01</CADAC16_MASK>
        <CADAC17_MASK>0x02</CADAC17_MASK>
        <CADAC18_MASK>0x04</CADAC18_MASK>
        <CADAC19_MASK>0x08</CADAC19_MASK>
        <CADAC20_MASK>0x10</CADAC20_MASK>
        <CADAC21_MASK>0x20</CADAC21_MASK>
        <CADAC22_MASK>0x40</CADAC22_MASK>
        <CADAC23_MASK>0x80</CADAC23_MASK>
      </CADAC2>
      <CADAC1>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE1</MEM_ADDR>
        <CADAC08_MASK>0x01</CADAC08_MASK>
        <CADAC09_MASK>0x02</CADAC09_MASK>
        <CADAC10_MASK>0x04</CADAC10_MASK>
        <CADAC11_MASK>0x08</CADAC11_MASK>
        <CADAC12_MASK>0x10</CADAC12_MASK>
        <CADAC13_MASK>0x20</CADAC13_MASK>
        <CADAC14_MASK>0x40</CADAC14_MASK>
        <CADAC15_MASK>0x80</CADAC15_MASK>
      </CADAC1>
      <CADAC0>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE0</MEM_ADDR>
        <CADAC00_MASK>0x01</CADAC00_MASK>
        <CADAC01_MASK>0x02</CADAC01_MASK>
        <CADAC02_MASK>0x04</CADAC02_MASK>
        <CADAC03_MASK>0x08</CADAC03_MASK>
        <CADAC04_MASK>0x10</CADAC04_MASK>
        <CADAC05_MASK>0x20</CADAC05_MASK>
        <CADAC06_MASK>0x40</CADAC06_MASK>
        <CADAC07_MASK>0x80</CADAC07_MASK>
      </CADAC0>
      <BGCRR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xD1</MEM_ADDR>
        <BGCR0_MASK>0x01</BGCR0_MASK>
        <BGCR1_MASK>0x02</BGCR1_MASK>
        <BGCR2_MASK>0x04</BGCR2_MASK>
        <BGCR3_MASK>0x08</BGCR3_MASK>
        <BGCR4_MASK>0x10</BGCR4_MASK>
        <BGCR5_MASK>0x20</BGCR5_MASK>
        <BGCR6_MASK>0x40</BGCR6_MASK>
        <BGCR7_MASK>0x80</BGCR7_MASK>
      </BGCRR>
      <BGCCR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xD0</MEM_ADDR>
        <BGCC0_MASK>0x01</BGCC0_MASK>
        <BGCC1_MASK>0x02</BGCC1_MASK>
        <BGCC2_MASK>0x04</BGCC2_MASK>
        <BGCC3_MASK>0x08</BGCC3_MASK>
        <BGCC4_MASK>0x10</BGCC4_MASK>
        <BGCC5_MASK>0x20</BGCC5_MASK>
        <BGD_MASK>0x80</BGD_MASK>
      </BGCCR>
      <ROCR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xC8</MEM_ADDR>
        <ROCWIE_MASK>0x01</ROCWIE_MASK>
        <ROCWIF_MASK>0x02</ROCWIF_MASK>
        <ROCS_MASK>0x80</ROCS_MASK>
      </ROCR>
      <OCR1B>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x89</MEM_ADDR>
        <OCR1B0_MASK>0x01</OCR1B0_MASK>
        <OCR1B1_MASK>0x02</OCR1B1_MASK>
        <OCR1B2_MASK>0x04</OCR1B2_MASK>
        <OCR1B3_MASK>0x08</OCR1B3_MASK>
        <OCR1B4_MASK>0x10</OCR1B4_MASK>
        <OCR1B5_MASK>0x20</OCR1B5_MASK>
        <OCR1B6_MASK>0x40</OCR1B6_MASK>
        <OCR1B7_MASK>0x80</OCR1B7_MASK>
      </OCR1B>
      <OCR1A>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x88</MEM_ADDR>
        <OCR1A0_MASK>0x01</OCR1A0_MASK>
        <OCR1A1_MASK>0x02</OCR1A1_MASK>
        <OCR1A2_MASK>0x04</OCR1A2_MASK>
        <OCR1A3_MASK>0x08</OCR1A3_MASK>
        <OCR1A4_MASK>0x10</OCR1A4_MASK>
        <OCR1A5_MASK>0x20</OCR1A5_MASK>
        <OCR1A6_MASK>0x40</OCR1A6_MASK>
        <OCR1A7_MASK>0x80</OCR1A7_MASK>
      </OCR1A>
      <TCNT1H>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x85</MEM_ADDR>
        <TCNT1H0_MASK>0x01</TCNT1H0_MASK>
        <TCNT1H1_MASK>0x02</TCNT1H1_MASK>
        <TCNT1H2_MASK>0x04</TCNT1H2_MASK>
        <TCNT1H3_MASK>0x08</TCNT1H3_MASK>
        <TCNT1H4_MASK>0x10</TCNT1H4_MASK>
        <TCNT1H5_MASK>0x20</TCNT1H5_MASK>
        <TCNT1H6_MASK>0x40</TCNT1H6_MASK>
        <TCNT1H7_MASK>0x80</TCNT1H7_MASK>
      </TCNT1H>
      <TCNT1L>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x84</MEM_ADDR>
        <TCNT1L0_MASK>0x01</TCNT1L0_MASK>
        <TCNT1L1_MASK>0x02</TCNT1L1_MASK>
        <TCNT1L2_MASK>0x04</TCNT1L2_MASK>
        <TCNT1L3_MASK>0x08</TCNT1L3_MASK>
        <TCNT1L4_MASK>0x10</TCNT1L4_MASK>
        <TCNT1L5_MASK>0x20</TCNT1L5_MASK>
        <TCNT1L6_MASK>0x40</TCNT1L6_MASK>
        <TCNT1L7_MASK>0x80</TCNT1L7_MASK>
      </TCNT1L>
      <TCCR1B>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x81</MEM_ADDR>
        <CS10_MASK>0x01</CS10_MASK>
        <CS11_MASK>0x02</CS11_MASK>
        <CS12_MASK>0x04</CS12_MASK>
      </TCCR1B>
      <TCCR1A>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x80</MEM_ADDR>
        <WGM10_MASK>0x01</WGM10_MASK>
        <ICS1_MASK>0x08</ICS1_MASK>
        <ICES1_MASK>0x10</ICES1_MASK>
        <ICNC1_MASK>0x20</ICNC1_MASK>
        <ICEN1_MASK>0x40</ICEN1_MASK>
        <TCW1_MASK>0x80</TCW1_MASK>
      </TCCR1A>
      <DIDR0>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7E</MEM_ADDR>
        <PA0DID_MASK>0x01</PA0DID_MASK>
        <PA1DID_MASK>0x02</PA1DID_MASK>
      </DIDR0>
      <VADMUX>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7C</MEM_ADDR>
        <VADMUX0_MASK>0x01</VADMUX0_MASK>
        <VADMUX1_MASK>0x02</VADMUX1_MASK>
        <VADMUX2_MASK>0x04</VADMUX2_MASK>
        <VADMUX3_MASK>0x08</VADMUX3_MASK>
      </VADMUX>
      <VADCSR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7A</MEM_ADDR>
        <VADCCIE_MASK>0x01</VADCCIE_MASK>
        <VADCCIF_MASK>0x02</VADCCIF_MASK>
        <VADSC_MASK>0x04</VADSC_MASK>
        <VADEN_MASK>0x08</VADEN_MASK>
      </VADCSR>
      <VADCH>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x79</MEM_ADDR>
        <VADC8_MASK>0x01</VADC8_MASK>
        <VADC9_MASK>0x02</VADC9_MASK>
        <VADC10_MASK>0x04</VADC10_MASK>
        <VADC11_MASK>0x08</VADC11_MASK>
      </VADCH>
      <VADCL>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x78</MEM_ADDR>
        <VADC0_MASK>0x01</VADC0_MASK>
        <VADC1_MASK>0x02</VADC1_MASK>
        <VADC2_MASK>0x04</VADC2_MASK>
        <VADC3_MASK>0x08</VADC3_MASK>
        <VADC4_MASK>0x10</VADC4_MASK>
        <VADC5_MASK>0x20</VADC5_MASK>
        <VADC6_MASK>0x40</VADC6_MASK>
        <VADC7_MASK>0x80</VADC7_MASK>
      </VADCL>
      <TIMSK1>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x6F</MEM_ADDR>
        <TOIE1_MASK>0x01</TOIE1_MASK>
        <OCIE1A_MASK>0x02</OCIE1A_MASK>
        <OCIE1B_MASK>0x04</OCIE1B_MASK>
        <ICIE1_MASK>0x08</ICIE1_MASK>
      </TIMSK1>
      <TIMSK0>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x6E</MEM_ADDR>
        <TOIE0_MASK>0x01</TOIE0_MASK>
        <OCIE0A_MASK>0x02</OCIE0A_MASK>
        <OCIE0B_MASK>0x04</OCIE0B_MASK>
        <ICIE0_MASK>0x08</ICIE0_MASK>
      </TIMSK0>
      <EICRA>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x69</MEM_ADDR>
        <ISC00_MASK>0x01</ISC00_MASK>
        <ISC01_MASK>0x02</ISC01_MASK>
        <ISC10_MASK>0x04</ISC10_MASK>
        <ISC11_MASK>0x08</ISC11_MASK>
        <ISC20_MASK>0x10</ISC20_MASK>
        <ISC21_MASK>0x20</ISC21_MASK>
      </EICRA>
      <FOSCCAL>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x66</MEM_ADDR>
        <FCAL0_MASK>0x01</FCAL0_MASK>
        <FCAL1_MASK>0x02</FCAL1_MASK>
        <FCAL2_MASK>0x04</FCAL2_MASK>
        <FCAL3_MASK>0x08</FCAL3_MASK>
        <FCAL4_MASK>0x10</FCAL4_MASK>
        <FCAL5_MASK>0x20</FCAL5_MASK>
        <FCAL6_MASK>0x40</FCAL6_MASK>
        <FCAL7_MASK>0x80</FCAL7_MASK>
      </FOSCCAL>
      <PRR0>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x64</MEM_ADDR>
        <PRVADC_MASK>0x01</PRVADC_MASK>
        <PRTIM0_MASK>0x02</PRTIM0_MASK>
        <PRTIM1_MASK>0x04</PRTIM1_MASK>
        <PRSPI_MASK>0x08</PRSPI_MASK>
        <PRVRM_MASK>0x20</PRVRM_MASK>
      </PRR0>
      <CLKPR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x61</MEM_ADDR>
        <CLKPS0_MASK>0x01</CLKPS0_MASK>
        <CLKPS1_MASK>0x02</CLKPS1_MASK>
        <CLKPCE_MASK>0x80</CLKPCE_MASK>
      </CLKPR>
      <WDTCSR>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x60</MEM_ADDR>
        <WDP0_MASK>0x01</WDP0_MASK>
        <WDP1_MASK>0x02</WDP1_MASK>
        <WDP2_MASK>0x04</WDP2_MASK>
        <WDE_MASK>0x08</WDE_MASK>
        <WDCE_MASK>0x10</WDCE_MASK>
        <WDP3_MASK>0x20</WDP3_MASK>
        <WDIE_MASK>0x40</WDIE_MASK>
        <WDIF_MASK>0x80</WDIF_MASK>
      </WDTCSR>
      <SREG>
        <IO_ADDR>0x3F</IO_ADDR>
        <MEM_ADDR>0x5F</MEM_ADDR>
        <C_MASK>0x01</C_MASK>
        <Z_MASK>0x02</Z_MASK>
        <N_MASK>0x04</N_MASK>
        <V_MASK>0x08</V_MASK>
        <S_MASK>0x10</S_MASK>
        <H_MASK>0x20</H_MASK>
        <T_MASK>0x40</T_MASK>
        <I_MASK>0x80</I_MASK>
      </SREG>
      <SPH>
        <IO_ADDR>0x3E</IO_ADDR>
        <MEM_ADDR>0x5E</MEM_ADDR>
        <SP8_MASK>0x01</SP8_MASK>
        <SP9_MASK>0x02</SP9_MASK>
      </SPH>
      <SPL>
        <IO_ADDR>0x3D</IO_ADDR>
        <MEM_ADDR>0x5D</MEM_ADDR>
        <SP0_MASK>0x01</SP0_MASK>
        <SP1_MASK>0x02</SP1_MASK>
        <SP2_MASK>0x04</SP2_MASK>
        <SP3_MASK>0x08</SP3_MASK>
        <SP4_MASK>0x10</SP4_MASK>
        <SP5_MASK>0x20</SP5_MASK>
        <SP6_MASK>0x40</SP6_MASK>
        <SP7_MASK>0x80</SP7_MASK>
      </SPL>
      <SPMCSR>
        <IO_ADDR>0x37</IO_ADDR>
        <MEM_ADDR>0x57</MEM_ADDR>
        <SPMEN_MASK>0x01</SPMEN_MASK>
        <PGERS_MASK>0x02</PGERS_MASK>
        <PGWRT_MASK>0x04</PGWRT_MASK>
        <RFLB_MASK>0x08</RFLB_MASK>
        <CTPB_MASK>0x10</CTPB_MASK>
        <SIGRD_MASK>0x20</SIGRD_MASK>
      </SPMCSR>
      <MCUCR>
        <IO_ADDR>0x35</IO_ADDR>
        <MEM_ADDR>0x55</MEM_ADDR>
        <PUD_MASK>0x10</PUD_MASK>
        <CKOE_MASK>0x20</CKOE_MASK>
      </MCUCR>
      <MCUSR>
        <IO_ADDR>0x34</IO_ADDR>
        <MEM_ADDR>0x54</MEM_ADDR>
        <PORF_MASK>0x01</PORF_MASK>
        <EXTRF_MASK>0x02</EXTRF_MASK>
        <BODRF_MASK>0x04</BODRF_MASK>
        <WDRF_MASK>0x08</WDRF_MASK>
        <OCDRF_MASK>0x10</OCDRF_MASK>
      </MCUSR>
      <SMCR>
        <IO_ADDR>0x33</IO_ADDR>
        <MEM_ADDR>0x53</MEM_ADDR>
        <SE_MASK>0x01</SE_MASK>
        <SM0_MASK>0x02</SM0_MASK>
        <SM1_MASK>0x04</SM1_MASK>
        <SM2_MASK>0x08</SM2_MASK>
      </SMCR>
      <DWDR>
        <IO_ADDR>0x31</IO_ADDR>
        <MEM_ADDR>0x51</MEM_ADDR>
      </DWDR>
      <SPDR>
        <IO_ADDR>0x2e</IO_ADDR>
        <MEM_ADDR>0x4e</MEM_ADDR>
        <SPDR0_MASK>0x01</SPDR0_MASK>
        <SPDR1_MASK>0x02</SPDR1_MASK>
        <SPDR2_MASK>0x04</SPDR2_MASK>
        <SPDR3_MASK>0x08</SPDR3_MASK>
        <SPDR4_MASK>0x10</SPDR4_MASK>
        <SPDR5_MASK>0x20</SPDR5_MASK>
        <SPDR6_MASK>0x40</SPDR6_MASK>
        <SPDR7_MASK>0x80</SPDR7_MASK>
      </SPDR>
      <SPSR>
        <IO_ADDR>0x2d</IO_ADDR>
        <MEM_ADDR>0x4d</MEM_ADDR>
        <SPI2X_MASK>0x01</SPI2X_MASK>
        <WCOL_MASK>0x40</WCOL_MASK>
        <SPIF_MASK>0x80</SPIF_MASK>
      </SPSR>
      <SPCR>
        <IO_ADDR>0x2c</IO_ADDR>
        <MEM_ADDR>0x4c</MEM_ADDR>
        <SPR0_MASK>0x01</SPR0_MASK>
        <SPR1_MASK>0x02</SPR1_MASK>
        <CPHA_MASK>0x04</CPHA_MASK>
        <CPOL_MASK>0x08</CPOL_MASK>
        <MSTR_MASK>0x10</MSTR_MASK>
        <DORD_MASK>0x20</DORD_MASK>
        <SPE_MASK>0x40</SPE_MASK>
        <SPIE_MASK>0x80</SPIE_MASK>
      </SPCR>
      <GPIOR2>
        <IO_ADDR>0x2B</IO_ADDR>
        <MEM_ADDR>0x4B</MEM_ADDR>
        <GPIOR20_MASK>0x01</GPIOR20_MASK>
        <GPIOR21_MASK>0x02</GPIOR21_MASK>
        <GPIOR22_MASK>0x04</GPIOR22_MASK>
        <GPIOR23_MASK>0x08</GPIOR23_MASK>
        <GPIOR24_MASK>0x10</GPIOR24_MASK>
        <GPIOR25_MASK>0x20</GPIOR25_MASK>
        <GPIOR26_MASK>0x40</GPIOR26_MASK>
        <GPIOR27_MASK>0x80</GPIOR27_MASK>
      </GPIOR2>
      <GPIOR1>
        <IO_ADDR>0x2A</IO_ADDR>
        <MEM_ADDR>0x4A</MEM_ADDR>
        <GPIOR10_MASK>0x01</GPIOR10_MASK>
        <GPIOR11_MASK>0x02</GPIOR11_MASK>
        <GPIOR12_MASK>0x04</GPIOR12_MASK>
        <GPIOR13_MASK>0x08</GPIOR13_MASK>
        <GPIOR14_MASK>0x10</GPIOR14_MASK>
        <GPIOR15_MASK>0x20</GPIOR15_MASK>
        <GPIOR16_MASK>0x40</GPIOR16_MASK>
        <GPIOR17_MASK>0x80</GPIOR17_MASK>
      </GPIOR1>
      <OCR0B>
        <IO_ADDR>0x29</IO_ADDR>
        <MEM_ADDR>0x49</MEM_ADDR>
        <OCR0B0_MASK>0x01</OCR0B0_MASK>
        <OCR0B1_MASK>0x02</OCR0B1_MASK>
        <OCR0B2_MASK>0x04</OCR0B2_MASK>
        <OCR0B3_MASK>0x08</OCR0B3_MASK>
        <OCR0B4_MASK>0x10</OCR0B4_MASK>
        <OCR0B5_MASK>0x20</OCR0B5_MASK>
        <OCR0B6_MASK>0x40</OCR0B6_MASK>
        <OCR0B7_MASK>0x80</OCR0B7_MASK>
      </OCR0B>
      <OCR0A>
        <IO_ADDR>0x28</IO_ADDR>
        <MEM_ADDR>0x48</MEM_ADDR>
        <OCR0A0_MASK>0x01</OCR0A0_MASK>
        <OCR0A1_MASK>0x02</OCR0A1_MASK>
        <OCR0A2_MASK>0x04</OCR0A2_MASK>
        <OCR0A3_MASK>0x08</OCR0A3_MASK>
        <OCR0A4_MASK>0x10</OCR0A4_MASK>
        <OCR0A5_MASK>0x20</OCR0A5_MASK>
        <OCR0A6_MASK>0x40</OCR0A6_MASK>
        <OCR0A7_MASK>0x80</OCR0A7_MASK>
      </OCR0A>
      <TCNT0H>
        <IO_ADDR>0x27</IO_ADDR>
        <MEM_ADDR>0x47</MEM_ADDR>
        <TCNT0H0_MASK>0x01</TCNT0H0_MASK>
        <TCNT0H1_MASK>0x02</TCNT0H1_MASK>
        <TCNT0H2_MASK>0x04</TCNT0H2_MASK>
        <TCNT0H3_MASK>0x08</TCNT0H3_MASK>
        <TCNT0H4_MASK>0x10</TCNT0H4_MASK>
        <TCNT0H5_MASK>0x20</TCNT0H5_MASK>
        <TCNT0H6_MASK>0x40</TCNT0H6_MASK>
        <TCNT0H7_MASK>0x80</TCNT0H7_MASK>
      </TCNT0H>
      <TCNT0L>
        <IO_ADDR>0x26</IO_ADDR>
        <MEM_ADDR>0x46</MEM_ADDR>
        <TCNT0L0_MASK>0x01</TCNT0L0_MASK>
        <TCNT0L1_MASK>0x02</TCNT0L1_MASK>
        <TCNT0L2_MASK>0x04</TCNT0L2_MASK>
        <TCNT0L3_MASK>0x08</TCNT0L3_MASK>
        <TCNT0L4_MASK>0x10</TCNT0L4_MASK>
        <TCNT0L5_MASK>0x20</TCNT0L5_MASK>
        <TCNT0L6_MASK>0x40</TCNT0L6_MASK>
        <TCNT0L7_MASK>0x80</TCNT0L7_MASK>
      </TCNT0L>
      <TCCR0B>
        <IO_ADDR>0x25</IO_ADDR>
        <MEM_ADDR>0x45</MEM_ADDR>
        <CS00_MASK>0x01</CS00_MASK>
        <CS01_MASK>0x02</CS01_MASK>
        <CS02_MASK>0x04</CS02_MASK>
      </TCCR0B>
      <TCCR0A>
        <IO_ADDR>0x24</IO_ADDR>
        <MEM_ADDR>0x44</MEM_ADDR>
        <WGM00_MASK>0x01</WGM00_MASK>
        <ICS0_MASK>0x08</ICS0_MASK>
        <ICES0_MASK>0x10</ICES0_MASK>
        <ICNC0_MASK>0x20</ICNC0_MASK>
        <ICEN0_MASK>0x40</ICEN0_MASK>
        <TCW0_MASK>0x80</TCW0_MASK>
      </TCCR0A>
      <GTCCR>
        <IO_ADDR>0x23</IO_ADDR>
        <MEM_ADDR>0x43</MEM_ADDR>
        <PSRSYNC_MASK>0x01</PSRSYNC_MASK>
        <TSM_MASK>0x80</TSM_MASK>
      </GTCCR>
      <EEAR>
        <IO_ADDR>0x21</IO_ADDR>
        <MEM_ADDR>0x41</MEM_ADDR>
        <EEAR0_MASK>0x01</EEAR0_MASK>
        <EEAR1_MASK>0x02</EEAR1_MASK>
        <EEAR2_MASK>0x04</EEAR2_MASK>
        <EEAR3_MASK>0x08</EEAR3_MASK>
        <EEAR4_MASK>0x10</EEAR4_MASK>
        <EEAR5_MASK>0x20</EEAR5_MASK>
        <EEAR6_MASK>0x40</EEAR6_MASK>
        <EEAR7_MASK>0x80</EEAR7_MASK>
      </EEAR>
      <EEDR>
        <IO_ADDR>0x20</IO_ADDR>
        <MEM_ADDR>0x40</MEM_ADDR>
        <EEDR0_MASK>0x01</EEDR0_MASK>
        <EEDR1_MASK>0x02</EEDR1_MASK>
        <EEDR2_MASK>0x04</EEDR2_MASK>
        <EEDR3_MASK>0x08</EEDR3_MASK>
        <EEDR4_MASK>0x10</EEDR4_MASK>
        <EEDR5_MASK>0x20</EEDR5_MASK>
        <EEDR6_MASK>0x40</EEDR6_MASK>
        <EEDR7_MASK>0x80</EEDR7_MASK>
      </EEDR>
      <EECR>
        <IO_ADDR>0x1F</IO_ADDR>
        <MEM_ADDR>0x3F</MEM_ADDR>
        <EERE_MASK>0x01</EERE_MASK>
        <EEPE_MASK>0x02</EEPE_MASK>
        <EEMPE_MASK>0x04</EEMPE_MASK>
        <EERIE_MASK>0x08</EERIE_MASK>
        <EEPM0_MASK>0x10</EEPM0_MASK>
        <EEPM1_MASK>0x20</EEPM1_MASK>
      </EECR>
      <GPIOR0>
        <IO_ADDR>0x1E</IO_ADDR>
        <MEM_ADDR>0x3E</MEM_ADDR>
        <GPIOR00_MASK>0x01</GPIOR00_MASK>
        <GPIOR01_MASK>0x02</GPIOR01_MASK>
        <GPIOR02_MASK>0x04</GPIOR02_MASK>
        <GPIOR03_MASK>0x08</GPIOR03_MASK>
        <GPIOR04_MASK>0x10</GPIOR04_MASK>
        <GPIOR05_MASK>0x20</GPIOR05_MASK>
        <GPIOR06_MASK>0x40</GPIOR06_MASK>
        <GPIOR07_MASK>0x80</GPIOR07_MASK>
      </GPIOR0>
      <EIMSK>
        <IO_ADDR>0x1D</IO_ADDR>
        <MEM_ADDR>0x3D</MEM_ADDR>
        <INT0_MASK>0x01</INT0_MASK>
        <INT1_MASK>0x02</INT1_MASK>
        <INT2_MASK>0x04</INT2_MASK>
      </EIMSK>
      <EIFR>
        <IO_ADDR>0x1C</IO_ADDR>
        <MEM_ADDR>0x3C</MEM_ADDR>
        <INTF0_MASK>0x01</INTF0_MASK>
        <INTF1_MASK>0x02</INTF1_MASK>
        <INTF2_MASK>0x04</INTF2_MASK>
      </EIFR>
      <OSICSR>
        <IO_ADDR>0x17</IO_ADDR>
        <MEM_ADDR>0x37</MEM_ADDR>
        <OSIEN_MASK>0x01</OSIEN_MASK>
        <OSIST_MASK>0x02</OSIST_MASK>
        <OSISEL0_MASK>0x10</OSISEL0_MASK>
      </OSICSR>
      <TIFR1>
        <IO_ADDR>0x16</IO_ADDR>
        <MEM_ADDR>0x36</MEM_ADDR>
        <TOV1_MASK>0x01</TOV1_MASK>
        <OCF1A_MASK>0x02</OCF1A_MASK>
        <OCF1B_MASK>0x04</OCF1B_MASK>
        <ICF1_MASK>0x08</ICF1_MASK>
      </TIFR1>
      <TIFR0>
        <IO_ADDR>0x15</IO_ADDR>
        <MEM_ADDR>0x35</MEM_ADDR>
        <TOV0_MASK>0x01</TOV0_MASK>
        <OCF0A_MASK>0x02</OCF0A_MASK>
        <OCF0B_MASK>0x04</OCF0B_MASK>
        <ICF0_MASK>0x08</ICF0_MASK>
      </TIFR0>
      <PORTC>
        <IO_ADDR>0x08</IO_ADDR>
        <MEM_ADDR>0x28</MEM_ADDR>
        <PORTC0_MASK>0x01</PORTC0_MASK>
      </PORTC>
      <PINC>
        <IO_ADDR>0x06</IO_ADDR>
        <MEM_ADDR>0x26</MEM_ADDR>
        <PINC0_MASK>0x01</PINC0_MASK>
      </PINC>
      <PORTB>
        <IO_ADDR>0x05</IO_ADDR>
        <MEM_ADDR>0x25</MEM_ADDR>
        <PORTB0_MASK>0x01</PORTB0_MASK>
        <PORTB1_MASK>0x02</PORTB1_MASK>
        <PORTB2_MASK>0x04</PORTB2_MASK>
        <PORTB3_MASK>0x08</PORTB3_MASK>
      </PORTB>
      <DDRB>
        <IO_ADDR>0x04</IO_ADDR>
        <MEM_ADDR>0x24</MEM_ADDR>
        <DDB0_MASK>0x01</DDB0_MASK>
        <DDB1_MASK>0x02</DDB1_MASK>
        <DDB2_MASK>0x04</DDB2_MASK>
        <DDB3_MASK>0x08</DDB3_MASK>
      </DDRB>
      <PINB>
        <IO_ADDR>0x03</IO_ADDR>
        <MEM_ADDR>0x23</MEM_ADDR>
        <PINB0_MASK>0x01</PINB0_MASK>
        <PINB1_MASK>0x02</PINB1_MASK>
        <PINB2_MASK>0x04</PINB2_MASK>
        <PINB3_MASK>0x08</PINB3_MASK>
      </PINB>
      <PORTA>
        <IO_ADDR>0x02</IO_ADDR>
        <MEM_ADDR>0x22</MEM_ADDR>
        <PORTA0_MASK>0x01</PORTA0_MASK>
        <PORTA1_MASK>0x02</PORTA1_MASK>
      </PORTA>
      <DDRA>
        <IO_ADDR>0x01</IO_ADDR>
        <MEM_ADDR>0x21</MEM_ADDR>
        <DDA0_MASK>0x01</DDA0_MASK>
        <DDA1_MASK>0x02</DDA1_MASK>
      </DDRA>
      <PINA>
        <IO_ADDR>0x00</IO_ADDR>
        <MEM_ADDR>0x20</MEM_ADDR>
        <PINA0_MASK>0x01</PINA0_MASK>
        <PINA1_MASK>0x02</PINA1_MASK>
      </PINA>
    </IO_MEMORY>
    <BOOT_CONFIG>
      <NRWW_START_ADDR>0</NRWW_START_ADDR>
      <NRWW_STOP_ADDR>0</NRWW_STOP_ADDR>
      <RWW_START_ADDR>0</RWW_START_ADDR>
      <RWW_STOP_ADDR>0</RWW_STOP_ADDR>
      <PAGESIZE>64</PAGESIZE>
    </BOOT_CONFIG>
  </MEMORY>
  <PACKAGE>
    <PACKAGES>[TSOP;LGA]</PACKAGES>
    <TSOP>
      <NMB_PIN>28</NMB_PIN>
      <PIN1>
        <NAME>[PV2]</NAME>
        <TEXT/>
      </PIN1>
      <PIN2>
        <NAME>[PV1]</NAME>
        <TEXT/>
      </PIN2>
      <PIN3>
        <NAME>[NV]</NAME>
        <TEXT/>
      </PIN3>
      <PIN4>
        <NAME>[GND]</NAME>
        <TEXT/>
      </PIN4>
      <PIN5>
        <NAME>[VFET]</NAME>
        <TEXT/>
      </PIN5>
      <PIN6>
        <NAME>[CF1P]</NAME>
        <TEXT/>
      </PIN6>
      <PIN7>
        <NAME>[CF1N]</NAME>
        <TEXT/>
      </PIN7>
      <PIN8>
        <NAME>[CF2P]</NAME>
        <TEXT/>
      </PIN8>
      <PIN9>
        <NAME>[CF2N]</NAME>
        <TEXT/>
      </PIN9>
      <PIN10>
        <NAME>[VREG]</NAME>
        <TEXT/>
      </PIN10>
      <PIN11>
        <NAME>[VREF]</NAME>
        <TEXT/>
      </PIN11>
      <PIN12>
        <NAME>[VREFGND]</NAME>
        <TEXT/>
      </PIN12>
      <PIN13>
        <NAME>[PI]</NAME>
        <TEXT/>
      </PIN13>
      <PIN14>
        <NAME>[NI]</NAME>
        <TEXT/>
      </PIN14>
      <PIN15>
        <NAME>[PA0]</NAME>
        <TEXT/>
      </PIN15>
      <PIN16>
        <NAME>[PA1]</NAME>
        <TEXT/>
      </PIN16>
      <PIN17>
        <NAME>[PA2]</NAME>
        <TEXT/>
      </PIN17>
      <PIN18>
        <NAME>[PB0]</NAME>
        <TEXT/>
      </PIN18>
      <PIN19>
        <NAME>[PB1]</NAME>
        <TEXT/>
      </PIN19>
      <PIN20>
        <NAME>[PB2]</NAME>
        <TEXT/>
      </PIN20>
      <PIN21>
        <NAME>[PB3]</NAME>
        <TEXT/>
      </PIN21>
      <PIN22>
        <NAME>[GND]</NAME>
        <TEXT/>
      </PIN22>
      <PIN23>
        <NAME>[VCC]</NAME>
        <TEXT/>
      </PIN23>
      <PIN24>
        <NAME>[PC0]</NAME>
        <TEXT/>
      </PIN24>
      <PIN25>
        <NAME>[BATT]</NAME>
        <TEXT/>
      </PIN25>
      <PIN26>
        <NAME>[GND]</NAME>
        <TEXT/>
      </PIN26>
      <PIN27>
        <NAME>[NC]</NAME>
        <TEXT/>
      </PIN27>
      <PIN28>
        <NAME>[OC]</NAME>
        <TEXT/>
      </PIN28>
    </TSOP>
  </PACKAGE>
  <POWER>
    <CLOCK>4MHz</CLOCK>
    <TEMP>70C</TEMP>
    <ACTIVE>TBD mA</ACTIVE>
    <IDLE>TBD mA</IDLE>
    <POWER_DOWN>TBD uA</POWER_DOWN>
  </POWER>
  <FUSE>
    <LIST>[LOW]</LIST>
    <ID/>
    <ICON/>
    <TEXT/>
    <LOW>
      <NMB_FUSE_BITS>8</NMB_FUSE_BITS>
      <FUSE7>
        <NAME>WDTON</NAME>
        <TEXT>Watchdog Timer Always On</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE7>
      <FUSE6>
        <NAME>EESAVE</NAME>
        <TEXT>EEPROM memory is preserved through chip erase</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE6>
      <FUSE5>
        <NAME>SPIEN</NAME>
        <TEXT>Enable Serial programming and Data Downloading</TEXT>
        <DEFAULT>0</DEFAULT>
      </FUSE5>
      <FUSE4>
        <NAME>DWEN</NAME>
        <TEXT>Enable debugWIRE</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE4>
      <FUSE3>
        <NAME>SELFPRGEN</NAME>
        <TEXT>Enable self programming</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE3>
      <FUSE2>
        <NAME>SUT2</NAME>
        <TEXT>Select start-up time</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE2>
      <FUSE1>
        <NAME>SUT1</NAME>
        <TEXT>Select start-up time</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE1>
      <FUSE0>
        <NAME>SUT0</NAME>
        <TEXT>Select start-up time</TEXT>
        <DEFAULT>1</DEFAULT>
      </FUSE0>
      <NMB_TEXT>13</NMB_TEXT>
      <TEXT1>
        <MASK>0x80</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Watch-dog Timer always on; [WDTON=0]</TEXT>
      </TEXT1>
      <TEXT2>
        <MASK>0x40</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Preserve EEPROM memory through the Chip Erase cycle; [EESAVE=0]</TEXT>
      </TEXT2>
      <TEXT3>
        <MASK>0x20</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Serial program downloading (SPI) enabled; [SPIEN=0]</TEXT>
      </TEXT3>
      <TEXT4>
        <MASK>0x10</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Debug Wire enable; [DWEN=0]</TEXT>
      </TEXT4>
      <TEXT5>
        <MASK>0x08</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Self Programming enable; [SELFPRGEN=0]</TEXT>
      </TEXT5>
      <TEXT6>
        <MASK>0x07</MASK>
        <VALUE>0x00</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 4 ms;   [SUT=000]</TEXT>
      </TEXT6>
      <TEXT7>
        <MASK>0x07</MASK>
        <VALUE>0x01</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 8 ms;   [SUT=001]</TEXT>
      </TEXT7>
      <TEXT8>
        <MASK>0x07</MASK>
        <VALUE>0x02</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 16 ms;  [SUT=010]</TEXT>
      </TEXT8>
      <TEXT9>
        <MASK>0x07</MASK>
        <VALUE>0x03</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 32 ms;  [SUT=011]</TEXT>
      </TEXT9>
      <TEXT10>
        <MASK>0x07</MASK>
        <VALUE>0x04</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 64 ms;  [SUT=100]</TEXT>
      </TEXT10>
      <TEXT11>
        <MASK>0x07</MASK>
        <VALUE>0x05</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 128 ms; [SUT=101]</TEXT>
      </TEXT11>
      <TEXT12>
        <MASK>0x07</MASK>
        <VALUE>0x06</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 256 ms; [SUT=110]</TEXT>
      </TEXT12>
      <TEXT13>
        <MASK>0x07</MASK>
        <VALUE>0x07</VALUE>
        <TEXT>Start-up time 6 CK/14 CK + 512 ms; [SUT=111]; default value</TEXT>
      </TEXT13>
    </LOW>
  </FUSE>
  <LOCKBIT>
    <ICON/>
    <ID/>
    <TEXT>[LB1 = 1 :  LB2 = 1] No memory lock features enabled. [LB1 = 0 :  LB2 = 1] Further programming of Flash and EEPROM is enabled. [LB1 = 0 :  LB2 = 0] Same as previous, but verify is also disabled</TEXT>
    <NMB_TEXT>3</NMB_TEXT>
    <NMB_LOCK_BITS>2</NMB_LOCK_BITS>
    <TEXT1>
      <MASK>0x03</MASK>
      <VALUE>0x03</VALUE>
      <TEXT>Mode 1: No memory lock features enabled</TEXT>
    </TEXT1>
    <TEXT2>
      <MASK>0x03</MASK>
      <VALUE>0x02</VALUE>
      <TEXT>Mode 2: Further programming disabled</TEXT>
    </TEXT2>
    <TEXT3>
      <MASK>0x03</MASK>
      <VALUE>0x00</VALUE>
      <TEXT>Mode 3: Further programming and verification disabled</TEXT>
    </TEXT3>
    <LOCKBIT0>
      <NAME>LB1</NAME>
      <TEXT>Lockbit</TEXT>
    </LOCKBIT0>
    <LOCKBIT1>
      <NAME>LB2</NAME>
      <TEXT>Lockbit</TEXT>
    </LOCKBIT1>
  </LOCKBIT>
  <PROGRAMMING>
    <ISPInterface>
      <FuseReadMask>0xdf</FuseReadMask>
      <FuseProgMask>0xdf</FuseProgMask>
      <FuseWarning>0,0x20,0x00,WARNING! These fuse settings will disable the ISP interface!</FuseWarning>
      <FuseWarning>0,0x10,0x00,WARNING! Enabling DEBUGWIRE will make the ISP interface inaccessible!</FuseWarning>
    </ISPInterface>
    <HVInterface>
      <FuseWarning>0,0x20,0x20,WARNING! These fuse settings will disable the ISP interface!</FuseWarning>
    </HVInterface>
    <OscCal>
      <OCEntry>0x01,8 MHz</OCEntry>
    </OscCal>
    <FlashPageSize>128</FlashPageSize>
    <EepromPageSize>4</EepromPageSize>
  </PROGRAMMING>
  <CORE>
    <CORE_VERSION>V2E</CORE_VERSION>
    <ID>AVRSimCoreV2.SimCoreV2</ID>
    <NEW_INSTRUCTIONS>[]</NEW_INSTRUCTIONS>
    <INSTRUCTIONS_NOT_SUPPORTED>[]</INSTRUCTIONS_NOT_SUPPORTED>
    <RAMP_REGISTERS>[]</RAMP_REGISTERS>
    <GP_REG_FILE>
      <NMB_REG>32</NMB_REG>
      <START_ADDR>$00</START_ADDR>
      <X_REG_HIGH>$1B</X_REG_HIGH>
      <X_REG_LOW>$1A</X_REG_LOW>
      <Y_REG_HIGH>$1D</Y_REG_HIGH>
      <Y_REG_LOW>$1C</Y_REG_LOW>
      <Z_REG_HIGH>$1F</Z_REG_HIGH>
      <Z_REG_LOW>$1E</Z_REG_LOW>
    </GP_REG_FILE>
  </CORE>
  <INTERRUPT_VECTOR>
    <NMB_VECTORS>21</NMB_VECTORS>
    <VECTOR1>
      <PROGRAM_ADDRESS>$0000</PROGRAM_ADDRESS>
      <SOURCE>RESET</SOURCE>
      <DEFINITION>External Pin, Power-on Reset, Brown-out Reset and Watchdog Reset</DEFINITION>
    </VECTOR1>
    <VECTOR2>
      <PROGRAM_ADDRESS>$0001</PROGRAM_ADDRESS>
      <SOURCE>BPINT</SOURCE>
      <DEFINITION>Battery Protection Interrupt</DEFINITION>
    </VECTOR2>
    <VECTOR3>
      <PROGRAM_ADDRESS>$0002</PROGRAM_ADDRESS>
      <SOURCE>VREGMON</SOURCE>
      <DEFINITION>Voltage regulator monitor interrupt</DEFINITION>
    </VECTOR3>
    <VECTOR4>
      <PROGRAM_ADDRESS>$0003</PROGRAM_ADDRESS>
      <SOURCE>INT0</SOURCE>
      <DEFINITION>External Interrupt Request 0</DEFINITION>
    </VECTOR4>
    <VECTOR5>
      <PROGRAM_ADDRESS>$0004</PROGRAM_ADDRESS>
      <SOURCE>INT1</SOURCE>
      <DEFINITION>External Interrupt Request 1</DEFINITION>
    </VECTOR5>
    <VECTOR6>
      <PROGRAM_ADDRESS>$0005</PROGRAM_ADDRESS>
      <SOURCE>INT2</SOURCE>
      <DEFINITION>External Interrupt Request 2</DEFINITION>
    </VECTOR6>
    <VECTOR7>
      <PROGRAM_ADDRESS>$0006</PROGRAM_ADDRESS>
      <SOURCE>WDT</SOURCE>
      <DEFINITION>Watchdog Timeout Interrupt</DEFINITION>
    </VECTOR7>
    <VECTOR8>
      <PROGRAM_ADDRESS>$0007</PROGRAM_ADDRESS>
      <SOURCE>TIMER1_IC</SOURCE>
      <DEFINITION>Timer 1 Input capture</DEFINITION>
    </VECTOR8>
    <VECTOR9>
      <PROGRAM_ADDRESS>$0008</PROGRAM_ADDRESS>
      <SOURCE>TIMER1_COMPA</SOURCE>
      <DEFINITION>Timer 1 Compare Match A</DEFINITION>
    </VECTOR9>
    <VECTOR10>
      <PROGRAM_ADDRESS>$0009</PROGRAM_ADDRESS>
      <SOURCE>TIMER1_COMPB</SOURCE>
      <DEFINITION>Timer 1 Compare Match B</DEFINITION>
    </VECTOR10>
    <VECTOR11>
      <PROGRAM_ADDRESS>$000A</PROGRAM_ADDRESS>
      <SOURCE>TIMER1_OVF</SOURCE>
      <DEFINITION>Timer 1 overflow</DEFINITION>
    </VECTOR11>
    <VECTOR12>
      <PROGRAM_ADDRESS>$000B</PROGRAM_ADDRESS>
      <SOURCE>TIMER0_IC</SOURCE>
      <DEFINITION>Timer 0 Input Capture</DEFINITION>
    </VECTOR12>
    <VECTOR13>
      <PROGRAM_ADDRESS>$000C</PROGRAM_ADDRESS>
      <SOURCE>TIMER0_COMPA</SOURCE>
      <DEFINITION>Timer 0 Comapre Match A</DEFINITION>
    </VECTOR13>
    <VECTOR14>
      <PROGRAM_ADDRESS>$000D</PROGRAM_ADDRESS>
      <SOURCE>TIMER0_COMPB</SOURCE>
      <DEFINITION>Timer 0 Compare Match B</DEFINITION>
    </VECTOR14>
    <VECTOR15>
      <PROGRAM_ADDRESS>$000E</PROGRAM_ADDRESS>
      <SOURCE>TIMER0_OVF</SOURCE>
      <DEFINITION>Timer 0 Overflow</DEFINITION>
    </VECTOR15>
    <VECTOR16>
      <PROGRAM_ADDRESS>$000F</PROGRAM_ADDRESS>
      <SOURCE>SPI;STC</SOURCE>
      <DEFINITION>SPI Serial transfer complete</DEFINITION>
    </VECTOR16>
    <VECTOR17>
      <PROGRAM_ADDRESS>$0010</PROGRAM_ADDRESS>
      <SOURCE>VADC</SOURCE>
      <DEFINITION>Voltage ADC Conversion Complete</DEFINITION>
    </VECTOR17>
    <VECTOR18>
      <PROGRAM_ADDRESS>$0011</PROGRAM_ADDRESS>
      <SOURCE>CCADC_CONV</SOURCE>
      <DEFINITION>Coulomb Counter ADC Conversion Complete</DEFINITION>
    </VECTOR18>
    <VECTOR19>
      <PROGRAM_ADDRESS>$0012</PROGRAM_ADDRESS>
      <SOURCE>CCADC_REG_CUR</SOURCE>
      <DEFINITION>Coloumb Counter ADC Regular Current</DEFINITION>
    </VECTOR19>
    <VECTOR20>
      <PROGRAM_ADDRESS>$0013</PROGRAM_ADDRESS>
      <SOURCE>CCADC_ACC</SOURCE>
      <DEFINITION>Coloumb Counter ADC Accumulator</DEFINITION>
    </VECTOR20>
    <VECTOR21>
      <PROGRAM_ADDRESS>$014</PROGRAM_ADDRESS>
      <SOURCE>EE READY</SOURCE>
      <DEFINITION>EEPROM Ready</DEFINITION>
    </VECTOR21>
  </INTERRUPT_VECTOR>
  <IO_MODULE>
    <MODULE_LIST>[AD_CONVERTER:WATCHDOG:BANDGAP:EXTERNAL_INTERRUPT:PORTC:PORTA:FET:SPI:BOOT_LOAD:PORTB:CPU:BATTERY_PROTECTION:EEPROM:TIMER_COUNTER_1:COULOMB_COUNTER:TIMER_COUNTER_0:VOLTAGE_REGULATOR]</MODULE_LIST>
    <AD_CONVERTER>
      <LIST>[VADMUX:VADCH:VADCL:VADCSR]</LIST>
      <LINK>[VADCH:VADCL]</LINK>
      <ICON>io_analo.bmp</ICON>
      <ID/>
      <TEXT>12-bit resolution Sigmal-Delta ADC with +/-1 LSB Accuracy. 512 us conversion time.</TEXT>
      <VADMUX>
        <NAME>VADMUX</NAME>
        <DESCRIPTION>The VADC multiplexer Selection Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7C</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>VADMUX3</NAME>
          <DESCRIPTION>Analog Channel and Gain Selection Bits</DESCRIPTION>
          <TEXT>The value of these bits selects which combination of analog inputs are connected to the ADC. These bits also select the gain for the differential channels. See Table 92 for details. If these bits are changed during a conversion, the change will not go in effect until this conversion is complete (ADIF in ADCSR is set).</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>VADMUX2</NAME>
          <DESCRIPTION>Analog Channel and Gain Selection Bits</DESCRIPTION>
          <TEXT>The value of these bits selects which combination of analog inputs are connected to the ADC. These bits also select the gain for the differential channels. See Table 92 for details. If these bits are changed during a conversion, the change will not go in effect until this conversion is complete (ADIF in ADCSR is set).</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>VADMUX1</NAME>
          <DESCRIPTION>Analog Channel and Gain Selection Bits</DESCRIPTION>
          <TEXT>The value of these bits selects which combination of analog inputs are connected to the ADC. These bits also select the gain for the differential channels. See Table 92 for details. If these bits are changed during a conversion, the change will not go in effect until this conversion is complete (ADIF in ADCSR is set).</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>VADMUX0</NAME>
          <DESCRIPTION>Analog Channel and Gain Selection Bits</DESCRIPTION>
          <TEXT>The value of these bits selects which combination of analog inputs are connected to the ADC. These bits also select the gain for the differential channels. See Table 92 for details. If these bits are changed during a conversion, the change will not go in effect until this conversion is complete (ADIF in ADCSR is set).</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </VADMUX>
      <VADCH>
        <NAME>VADCH</NAME>
        <DESCRIPTION>VADC Data Register High Byte</DESCRIPTION>
        <TEXT>When VADCL is read, the Voltage ADC Data Register is not updated until VADCH is read. Consequently if no more than 8-bit precision is required, it is sufficient to read VADCH. Otherwise, VADCL must be read first, then VADCH.</TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x79</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT3>
          <NAME>VADC11</NAME>
          <DESCRIPTION>ADC Data Register High Byte Bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>VADC10</NAME>
          <DESCRIPTION>ADC Data Register High Byte Bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>VADC9</NAME>
          <DESCRIPTION>ADC Data Register High Byte Bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>VADC8</NAME>
          <DESCRIPTION>ADC Data Register High Byte Bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </VADCH>
      <VADCL>
        <NAME>VADCL</NAME>
        <DESCRIPTION>VADC Data Register Low Byte</DESCRIPTION>
        <TEXT>When VADCL is read, the Voltage ADC Data Register is not updated until VADCH is read. Consequently if no more than 8-bit precision is required, it is sufficient to read VADCH. Otherwise, VADCL must be read first, then VADCH.</TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x78</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>VADC7</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>VADC6</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>VADC5</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>VADC4</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>VADC3</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>VADC2</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>VADC1</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>VADC0</NAME>
          <DESCRIPTION>ADC Data Register Low Byte Bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </VADCL>
      <VADCSR>
        <NAME>VADCSR</NAME>
        <DESCRIPTION>The VADC Control and Status register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7A</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>VADEN</NAME>
          <DESCRIPTION>VADC Enable</DESCRIPTION>
          <TEXT>Writing this bit to one enables V-ADC Conversion. By writing it to zero, the V-ADC is turned off. Turning the V-ADC off while a conversion is in progress will terminate this conversion</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>VADSC</NAME>
          <DESCRIPTION>VADC Satrt Conversion</DESCRIPTION>
          <TEXT>Write this bit to one to start a new conversion of the selected channel. VADSC will read as one as long as the conversion is not finished. When the conversion is complete, it returns to zero. Writing zero to this bit has no effect.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>VADCCIF</NAME>
          <DESCRIPTION>VADC Conversion Complete Interrupt Flag</DESCRIPTION>
          <TEXT>This bit is set when a V-ADC conversion completes and the data registers are updated.V-ADC Conversion complete Interrupt is executed if the VADCCIE bit and the I-bit in S-REG are set. VADCCIF is cleared by hardware when executing the corresponding interrupt handling vector. Alternatively, VADCCIF is cleared by writing a logical one to the flag. Beware that if doing a Read-Modify-Write on VADCSR, a pending interrupt can be disabled.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>VADCCIE</NAME>
          <DESCRIPTION>VADC Conversion Complete Interrupt Enable</DESCRIPTION>
          <TEXT>When this bit is written to one and the I-Bit in SREG is set, the V-ADC Conversion Complete Interrupt is activated</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </VADCSR>
    </AD_CONVERTER>
    <WATCHDOG>
      <LIST>[WDTCSR]</LIST>
      <LINK/>
      <ICON>io_watch.bmp</ICON>
      <ID/>
      <TEXT/>
      <WDTCSR>
        <NAME>WDTCSR</NAME>
        <DESCRIPTION>Watchdog Timer Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x60</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>WDIF</NAME>
          <DESCRIPTION>Watchdog Timeout Interrupt Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>WDIE</NAME>
          <DESCRIPTION>Watchdog Timeout Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>WDP3</NAME>
          <DESCRIPTION>Watchdog Timer Prescaler Bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>WDCE</NAME>
          <DESCRIPTION>Watchdog Change Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>WDE</NAME>
          <DESCRIPTION>Watch Dog Enable</DESCRIPTION>
          <TEXT>When the WDE is set (one) the Watchdog Timer is enabled, and if the WDE is cleared (zero) the Watchdog Timer function is disabled. WDE can only be cleared if the WDTOE bit is set(one). To disable an enabled watchdog timer, the following procedure must be followed: 1. In the same operation, write a logical one to WDTOE and WDE. A logical one must be written to WDE even though it is set to one before the disable operation starts. 2. Within the next four clock cycles, write a logical 0 to WDE. This disables the watchdog</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>WDP2</NAME>
          <DESCRIPTION>Watch Dog Timer Prescaler bit 2</DESCRIPTION>
          <TEXT/>
          <ENUM>WDOG_TIMER_PRESCALE_4BITS</ENUM>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>WDP1</NAME>
          <DESCRIPTION>Watch Dog Timer Prescaler bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>WDP0</NAME>
          <DESCRIPTION>Watch Dog Timer Prescaler bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </WDTCSR>
    </WATCHDOG>
    <BANDGAP>
      <LIST>[BGCRR:BGCCR]</LIST>
      <LINK/>
      <ICON>io_analo.bmp</ICON>
      <ID/>
      <TEXT/>
      <BGCRR>
        <NAME>BGCRR</NAME>
        <DESCRIPTION>Bandgap Calibration of Resistor Ladder</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xD1</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>BGCR7</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>BGCR6</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>BGCR5</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>BGCR4</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>BGCR3</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>BGCR2</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>BGCR1</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>BGCR0</NAME>
          <DESCRIPTION>Bandgap Calibration of Resistor Ladder Bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BGCRR>
      <BGCCR>
        <NAME>BGCCR</NAME>
        <DESCRIPTION>Bandgap Calibration Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xD0</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>BGD</NAME>
          <DESCRIPTION>Setting the BGD bit to one will disable the bandgap voltage reference. This bit must be cleared before enabling CC-ADC or V-ADC, and must remain unset while either ADC is enabled.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT5>
          <NAME>BGCC5</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>BGCC4</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 4</DESCRIPTION>
          <TEXT>These bits are used for trimming of the nominal value of the bandgap reference voltage. These bits are binary caoded, step size is approximately 2mV.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>BGCC3</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 3</DESCRIPTION>
          <TEXT>These bits are used for trimming of the nominal value of the bandgap reference voltage. These bits are binary caoded, step size is approximately 2mV.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>BGCC2</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 2</DESCRIPTION>
          <TEXT>These bits are used for trimming of the nominal value of the bandgap reference voltage. These bits are binary caoded, step size is approximately 2mV.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>BGCC1</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 1</DESCRIPTION>
          <TEXT>These bits are used for trimming of the nominal value of the bandgap reference voltage. These bits are binary caoded, step size is approximately 2mV.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>BGCC0</NAME>
          <DESCRIPTION>BG Calibration of PTAT Current Bit 0</DESCRIPTION>
          <TEXT>These bits are used for trimming of the nominal value of the bandgap reference voltage. These bits are binary caoded, step size is approximately 2mV.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BGCCR>
    </BANDGAP>
    <EXTERNAL_INTERRUPT>
      <LIST>[EICRA:EIMSK:EIFR]</LIST>
      <LINK/>
      <ICON>io_ext.bmp</ICON>
      <ID/>
      <TEXT>The external interrupts are triggered by the INT7:0 pins. Observe that, if enabled, the interrupts will trigger even if the INT7:0 pins are configured as outputs. This feature provides a way of generating a software interrupt. The external inter-rupts can be triggered by a falling or rising edge or a low level. This is set up as indicated in the specification for the Exter-nal Interrupt Control Registers - EICRA (INT3:0) and EICRB (INT7:4). When the external interrupt is enabled and is configured as level triggered, the interrupt will trigger as long as the pin is held low. Note that recognition of falling or rising edge interrupts on INT7:4 requires the presence of an I/O clock, described in &#x201C;Clock Systems and their Distribution&#x201D; on page 29. Low level interrupts and the edge interrupt on INT3:0 are detected asynchronously. This implies that these inter-rupts can be used for waking the part also from sleep modes other than Idle mode. The I/O clock is halted in all sleep modes except Idle mode. Note that if a level triggered interrupt is used for wake-up from Power Down Mode, the changed level must be held for some time to wake up the MCU. This makes the MCU less sensitive to noise. The changed level is sampled twice by the watchdog oscillator clock. The period of the watchdog oscillator is 1 &#xB5;s (nominal) at 5.0V and 25&#xB0;C. The frequency of the watchdog oscillator is voltage dependent as shown in the Electrical Characteristics section. The MCU will wake up if the input has the required level during this sampling or if it is held until the end of the start-up time. The start-up time is defined by the SUT fuses as described in &#x201C;Clock Systems and their Distribution&#x201D; on page 29. If the level is sampled twice by the watchdog oscillator clock but disappears before the end of the start-up time, the MCU will still wake up, but no interrupt will be generated. The required level must be held long enough for the MCU to complete the wake up to trigger the level inte</TEXT>
      <EICRA>
        <NAME>EICRA</NAME>
        <DESCRIPTION>External Interrupt Control Register </DESCRIPTION>
        <TEXT>The External Interrupt Control Register A contains control bits for interrupt sense control.</TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x69</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT5>
          <NAME>ISC21</NAME>
          <DESCRIPTION>External Interrupt Sense Control 2 Bit 1</DESCRIPTION>
          <TEXT>The External Interrupt 1 is activated by the external pin INT1 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT1 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>ISC20</NAME>
          <DESCRIPTION>External Interrupt Sense Control 2 Bit 0</DESCRIPTION>
          <TEXT>The External Interrupt 1 is activated by the external pin INT1 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT1 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <ENUM>INTERRUPT_SENSE_CONTROL</ENUM>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>ISC11</NAME>
          <DESCRIPTION>External Interrupt Sense Control 1 Bit 1 </DESCRIPTION>
          <TEXT>The External Interrupt 1 is activated by the external pin INT1 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT1 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>ISC10</NAME>
          <DESCRIPTION>External Interrupt Sense Control 1 Bit 0</DESCRIPTION>
          <TEXT>The External Interrupt 1 is activated by the external pin INT1 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT1 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <ENUM>INTERRUPT_SENSE_CONTROL</ENUM>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>ISC01</NAME>
          <DESCRIPTION>External Interrupt Sense Control 0 Bit 1 </DESCRIPTION>
          <TEXT>The External Interrupt 0 is activated by the external pin INT0 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT0 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>ISC00</NAME>
          <DESCRIPTION>External Interrupt Sense Control 0 Bit 0</DESCRIPTION>
          <TEXT>The External Interrupt 0 is activated by the external pin INT0 if the SREG I-flag and the corresponding interrupt mask are set.The value on the INT0 pin is sampled before detecting edges.If edge or toggle interrupt is selected,pulses that last longer than one clock period will generate an interrupt.Shorter pulses are not guaranteed to generate an interrupt.If low level interrupt is selected,the lowlevel must be held until the completion of the currently executing instruction to generate an interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <ENUM>INTERRUPT_SENSE_CONTROL</ENUM>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EICRA>
      <EIMSK>
        <NAME>EIMSK</NAME>
        <DESCRIPTION>External Interrupt Mask Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x1D</IO_ADDR>
        <MEM_ADDR>0x3D</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT2>
          <NAME>INT2</NAME>
          <DESCRIPTION>External Interrupt Request 2 Enable</DESCRIPTION>
          <TEXT>When the INT2 bit is set (one)and the I-bit in the Status Register (SREG)is set (one),the external pin interrupt is enabled. The Interrupt Sense Control1 bits 1/0 (ISC11 and ISC10)in the External Interrupt Control Register A (EICRA)define whether the external interrupt is activated on rising and/or falling edge of the INT1 pin or level sensed.Activity on the pin will cause an interrupt request even if INT1 is configured as an output.The corresponding interrupt of External Interrupt Request 1 is executed from the INT1 interrupt vector. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>INT1</NAME>
          <DESCRIPTION>External Interrupt Request 1 Enable</DESCRIPTION>
          <TEXT>When the INT1 bit is set (one)and the I-bit in the Status Register (SREG)is set (one),the external pin interrupt is enabled. The Interrupt Sense Control1 bits 1/0 (ISC11 and ISC10)in the External Interrupt Control Register A (EICRA)define whether the external interrupt is activated on rising and/or falling edge of the INT1 pin or level sensed.Activity on the pin will cause an interrupt request even if INT1 is configured as an output.The corresponding interrupt of External Interrupt Request 1 is executed from the INT1 interrupt vector.  </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>INT0</NAME>
          <DESCRIPTION>External Interrupt Request 0 Enable</DESCRIPTION>
          <TEXT>When the INT0 bit is set (one)and the I-bit in the Status Register (SREG)is set (one),the external pin interrupt is enabled. The Interrupt Sense Control0 bits 1/0 (ISC01 and ISC00)in the External Interrupt Control Register A (EICRA)define whether the external interrupt is activated on rising and/or falling edge of the INT0 pin or level sensed.Activity on the pin will cause an interrupt request even if INT0 is configured as an output.The corresponding interrupt of External Interrupt Request 0 is executed from the INT0 interrupt vector. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EIMSK>
      <EIFR>
        <NAME>EIFR</NAME>
        <DESCRIPTION>External Interrupt Flag Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x1C</IO_ADDR>
        <MEM_ADDR>0x3C</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT2>
          <NAME>INTF2</NAME>
          <DESCRIPTION>External Interrupt Flag 2</DESCRIPTION>
          <TEXT>When an edge or logic change on the INT1 pin triggers an interrupt request,INTF1 becomes set (one).If the I-bit in SREG and the INT1 bit in EIMSK are set (one),the MCU will jump to the corresponding interrupt vector.The flag is cleared when the interrupt routine is executed.Alternatively,the flag can be cleared by writing a logical one to it.This flag is always cleared when INT0 is configured as a level interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>INTF1</NAME>
          <DESCRIPTION>External Interrupt Flag 1</DESCRIPTION>
          <TEXT>When an edge or logic change on the INT1 pin triggers an interrupt request,INTF1 becomes set (one).If the I-bit in SREG and the INT1 bit in EIMSK are set (one),the MCU will jump to the corresponding interrupt vector.The flag is cleared when the interrupt routine is executed.Alternatively,the flag can be cleared by writing a logical one to it.This flag is always cleared when INT0 is configured as a level interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>INTF0</NAME>
          <DESCRIPTION>External Interrupt Flag 0</DESCRIPTION>
          <TEXT>When an edge or logic change on the INT0 pin triggers an interrupt request,INTF0 becomes set (one).If the I-bit in SREG and the INT0 bit in EIMSK are set (one),the MCU will jump to the corresponding interrupt vector.The flag is cleared when the interrupt routine is executed.Alternatively,the flag can be cleared by writing a logical one to it.This flag is always cleared when INT0 is configured as a level interrupt.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EIFR>
    </EXTERNAL_INTERRUPT>
    <PORTC>
      <LIST>[PORTC:PINC]</LIST>
      <LINK/>
      <ICON>io_port.bmp</ICON>
      <ID>AVRSimIOPort.SimIOPort</ID>
      <TEXT/>
      <PORTC>
        <NAME>PORTC</NAME>
        <DESCRIPTION>Port C Data Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x08</IO_ADDR>
        <MEM_ADDR>0x28</MEM_ADDR>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT0>
          <NAME>PORTC0</NAME>
          <DESCRIPTION>Port C Data Register bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PORTC>
      <PINC>
        <NAME>PINC</NAME>
        <DESCRIPTION>Port C Input Pins</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x06</IO_ADDR>
        <MEM_ADDR>0x26</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT0>
          <NAME>PINC0</NAME>
          <DESCRIPTION>Port C Input pin 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PINC>
    </PORTC>
    <PORTA>
      <LIST>[PORTA:DDRA:PINA]</LIST>
      <LINK/>
      <ICON>io_port.bmp</ICON>
      <ID>AVRSimIOPort.SimIOPort</ID>
      <TEXT/>
      <PORTA>
        <NAME>PORTA</NAME>
        <DESCRIPTION>Port A Data Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x02</IO_ADDR>
        <MEM_ADDR>0x22</MEM_ADDR>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT1>
          <NAME>PORTA1</NAME>
          <DESCRIPTION>Port A Data Register bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PORTA0</NAME>
          <DESCRIPTION>Port A Data Register bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PORTA>
      <DDRA>
        <NAME>DDRA</NAME>
        <DESCRIPTION>Port A Data Direction Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x01</IO_ADDR>
        <MEM_ADDR>0x21</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT1>
          <NAME>DDA1</NAME>
          <DESCRIPTION>Data Direction Register, Port A, bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>DDA0</NAME>
          <DESCRIPTION>Data Direction Register, Port A, bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </DDRA>
      <PINA>
        <NAME>PINA</NAME>
        <DESCRIPTION>Port A Input Pins</DESCRIPTION>
        <TEXT>The Port A Input Pins address - PINA - is not a register, and this address enables access to the physical value on each Port A pin. When reading PORTA the Port A Data Latch is read, and when reading PINA, the logical values present on the pins are read.</TEXT>
        <IO_ADDR>0x00</IO_ADDR>
        <MEM_ADDR>0x20</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT1>
          <NAME>PINA1</NAME>
          <DESCRIPTION>Input Pins, Port A bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>Hi-Z</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PINA0</NAME>
          <DESCRIPTION>Input Pins, Port A bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>Hi-Z</INIT_VAL>
        </BIT0>
      </PINA>
    </PORTA>
    <FET>
      <LIST>[FCSR]</LIST>
      <LINK/>
      <ICON>io_analo.bmp</ICON>
      <ID/>
      <TEXT/>
      <FCSR>
        <NAME>FCSR</NAME>
        <DESCRIPTION>FET Control and Status Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF0</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>DUVRD</NAME>
          <DESCRIPTION>Deep Under-Voltage Recovery Disable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CPS</NAME>
          <DESCRIPTION>Current Protection Status</DESCRIPTION>
          <TEXT>The CPTS bit shows the status of the Current Protection. This bit is set (one) when the Current Protection Timer is activated, and is cleared (zero) when the hold-off time has elapsed. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DFE</NAME>
          <DESCRIPTION>Discharge FET Enable</DESCRIPTION>
          <TEXT>When the DFE bit is cleared (zero), the Discharge FET will be disabled regardless of the state of the Battery Protection circuitry. When this bit is set (one), the Discharge FET state is determined by the Battery Protection circuitry. This bit will be cleared when CURRENT_PROTECTION is set (one). </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CFE</NAME>
          <DESCRIPTION>Charge FET Enable</DESCRIPTION>
          <TEXT>When the CFE bit is cleared (zero), the Charge FET will be disabled regardless of the state of the Battery Protection circuitry. When this bit is set (one), the Charge FET state is determined by the Battery Protection circuitry. This bit will be cleared when CURRENT_PROTECTION is set (one). </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </FCSR>
    </FET>
    <SPI>
      <LIST>[SPDR:SPSR:SPCR]</LIST>
      <LINK/>
      <ICON>io_com.bmp</ICON>
      <ID/>
      <TEXT>The Serial Peripheral Interface(SPI) allows high-speed synchronous data transfer between the AT90S4414/8515 and peripheral devices or between several AVR devices. The AT90S4414/8515 SPI features include the following: &#x2022; Full-duplex, 3-wire Synchronous Data Transfer &#x2022; Master or Slave Operation &#x2022; LSB First or MSB First Data Transfer &#x2022; Four Programmable Bit Rates &#x2022; End of Transmission Interrupt Flag &#x2022; Write Collision Flag Protection &#x2022; Wakeup from Idle Mode (Slave Mode Only)</TEXT>
      <SPCR>
        <NAME>SPCR</NAME>
        <DESCRIPTION>SPI Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x2c</IO_ADDR>
        <MEM_ADDR>0x4c</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>SPIE</NAME>
          <DESCRIPTION>SPI Interrupt Enable</DESCRIPTION>
          <TEXT>This bit causes the SPI interrupt to be executed if SPIF bit in the SPSR register is set and the global interrupts are enabled.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>SPE</NAME>
          <DESCRIPTION>SPI Enable</DESCRIPTION>
          <TEXT>When the SPE bit is set (one), the SPI is enabled. This bit must be set to enable any SPI operations.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>DORD</NAME>
          <DESCRIPTION>Data Order</DESCRIPTION>
          <TEXT>When the DORD bit is set (one), the LSB of the data word is transmitted first. When the DORD bit is cleared (zero), the MSB of the data word is transmitted first.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>MSTR</NAME>
          <DESCRIPTION>Master/Slave Select</DESCRIPTION>
          <TEXT>This bit selects Master SPI mode when set (one), and Slave SPI mode when cleared (zero). If SS is configured as an input and is driven low while MSTR is set, MSTR will be cleared, and SPIF in SPSR will become set. The user will then have to set MSTR to re-enable SPI master mode.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CPOL</NAME>
          <DESCRIPTION>Clock polarity</DESCRIPTION>
          <TEXT>When this bit is set (one), SCK is high when idle. When CPOL is cleared (zero), SCK is low when idle. Refer to Figure 36 and Figure 37 for additional information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CPHA</NAME>
          <DESCRIPTION>Clock Phase</DESCRIPTION>
          <TEXT>Refer to Figure 36 or Figure 37 for the functionality of this bit.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SPR1</NAME>
          <DESCRIPTION>SPI Clock Rate Select 1</DESCRIPTION>
          <TEXT>These two bits control the SCK rate of the device configured as a master. SPR1 and SPR0 have no effect on the slave.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SPR0</NAME>
          <DESCRIPTION>SPI Clock Rate Select 0</DESCRIPTION>
          <TEXT>These two bits control the SCK rate of the device configured as a master. SPR1 and SPR0 have no effect on the slave.</TEXT>
          <ACCESS>RW</ACCESS>
          <ENUM>COMM_SCK_RATE_3BIT</ENUM>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPCR>
      <SPSR>
        <NAME>SPSR</NAME>
        <DESCRIPTION>SPI Status Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x2d</IO_ADDR>
        <MEM_ADDR>0x4d</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>SPIF</NAME>
          <DESCRIPTION>SPI Interrupt Flag</DESCRIPTION>
          <TEXT>When a serial transfer is complete, the SPIF bit is set (one) and an interrupt is generated if SPIE in SPCR is set (one) and global interrupts are enabled. If SS is an input and is driven low when the SPI is in master mode, this will also set the SPIF flag. SPIF is cleared by hardware when executing the corresponding interrupt handling vector. Alternatively, the SPIF bit is cleared by first reading the SPI status register when SPIF is set (one), then accessing the SPI Data Register (SPDR).</TEXT>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>WCOL</NAME>
          <DESCRIPTION>Write Collision Flag</DESCRIPTION>
          <TEXT>The WCOL bit is set if the SPI data register (SPDR) is written during a data transfer. The WCOL bit (and the SPIF bit) are cleared (zero) by first reading the SPI Status Register when WCOL is set (one), and then accessing the SPI Data Register.</TEXT>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT0>
          <NAME>SPI2X</NAME>
          <DESCRIPTION>Double SPI Speed Bit</DESCRIPTION>
          <TEXT>When this bit is written logic one the SPI speed (SCK Frequency)will be doubled when the SPI is in master mode .This means that the minimum SCK period will be 2 CPU clock periods.When the SPI is configured as Slave,the SPI is only guaranteed to work at f osc /4orlower. The SPI interface on the ATmega162 is also used for program memory and EEPROM downloading or uploading.     </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPSR>
      <SPDR>
        <NAME>SPDR</NAME>
        <DESCRIPTION>SPI Data Register</DESCRIPTION>
        <TEXT>The SPI Data Register is a read/write register used for data transfer between the register file and the SPI Shift register. Writing to the register initiates data transmission. Reading the register causes the Shift Register Receive buffer to be read.</TEXT>
        <IO_ADDR>0x2e</IO_ADDR>
        <MEM_ADDR>0x4e</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <READ_INTRUSIVE/>
        <ICON>io_com.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>SPDR7</NAME>
          <DESCRIPTION>SPI Data Register bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>SPDR6</NAME>
          <DESCRIPTION>SPI Data Register bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>SPDR5</NAME>
          <DESCRIPTION>SPI Data Register bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>SPDR4</NAME>
          <DESCRIPTION>SPI Data Register bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>SPDR3</NAME>
          <DESCRIPTION>SPI Data Register bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>SPDR2</NAME>
          <DESCRIPTION>SPI Data Register bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>X</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SPDR1</NAME>
          <DESCRIPTION>SPI Data Register bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SPDR0</NAME>
          <DESCRIPTION>SPI Data Register bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPDR>
    </SPI>
    <BOOT_LOAD>
      <LIST>[SPMCSR]</LIST>
      <LINK/>
      <RULES/>
      <ICON>io_cpu.bmp</ICON>
      <ID>AVRSimIOSPM.SimIOSPM</ID>
      <TEXT>The Boot Loader Support provides a real Read While Write self-programming mechanism for downloading and uploading program code by the MCU itself. This feature allows flexible application software updates controlled by the MCU using a Flash-resident Boot Loader program. The Boot Loader program can use any available data interface and associated proto-col to read code and write (program) that code into the Flash memory, or read the code from the program memory. The program code within the Boot Loader section has the capability to write into the entire Flash, including the Boot Loader Memory. The Boot Loader can thus even modify itself, and it can also erase itself from the code if the feature is not needed anymore. The size of the Boot Loader Memory is configurable with fuses and the Boot Loader has two separate sets of Boot Lock Bits which can be set independently. This gives the user a unique flexibility to select different levels of protection. Boot Loader Features: Read While Write self-programming. Flexibl Boot Memory size. High security (separate Boot Lock bits for a flexible protection).  Separate fuse to select reset vector Optimized page (1) size. Code efficient algorithm Efficient read-modify-write suppor</TEXT>
      <SPMCSR>
        <NAME>SPMCSR</NAME>
        <DESCRIPTION>Store Program Memory Control and Status Register</DESCRIPTION>
        <TEXT>The Store Program Memory Control Register contains the control bits needed to control the Boot Loader operations.</TEXT>
        <IO_ADDR>0x37</IO_ADDR>
        <MEM_ADDR>0x57</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT5>
          <NAME>SIGRD</NAME>
          <DESCRIPTION>Signature Row Read</DESCRIPTION>
          <TEXT>If this bit is written to one at the same time as SPMEN, the next LPM instruction within three clock cycles will read a byte from the signature row into the destination register. see &#x201C;Reading the Signature Row from Software&#x201D; in the datasheet for details. An SPM instruction within four cycles after SIGRD and SPMEN are set will have no effect. This operation is reserved for future use and should not be used.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CTPB</NAME>
          <DESCRIPTION>Clear Temporary Page Buffer</DESCRIPTION>
          <TEXT>When programming (page erase or page write) to the RWW section, the RWW section is blocked for reading (the RWWSB will be set by hardware). To re-enable the RWW section, the user software must wait until the programming is completed (SPMEN will be cleared). Then, if the RWWSRE bit is written to one at the same time as SPMEN, the next SPM instruction within four clock cycles re-enables the RWW section. The RWW section cannot be re-enabled while Flash is busy with a page erase or a page write (SPMEN is set). If the RWWSRE bit is written while the Flash is being loaded, the Flash load operation will abort and the data loaded will be </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>RFLB</NAME>
          <DESCRIPTION>Read Fuse and Lock Bits</DESCRIPTION>
          <TEXT>If this bit is written to one at the same time as SPMEN, the next SPM instruction within four clock cycles sets Boot Lock bits, according to the data in R0. The data in R1 and the address in the Z pointer are ignored. The BLBSET bit will automatically be cleared upon completion of the lock bit set, or if no SPM instruction is executed within four clock cycles. An LPM instruction within three cycles after BLBSET and SPMEN are set in the SPMCR register, will read either the Lock-bits or the Fuse bits (depending on Z0 in the Z pointer) into the destination register. See &#x201C;Reading the Fuse and Lock Bits from Software&#x201D; on page 235 for detail</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>PGWRT</NAME>
          <DESCRIPTION>Page Write</DESCRIPTION>
          <TEXT>If this bit is written to one at the same time as SPMEN, the next SPM instruction within four clock cycles executes page write, with the data stored in the temporary buffer. The page address is taken from the high part of the Z pointer. The data in R1 and R0 are ignored. The PGWRT bit will auto-clear upon completion of a page write, or if no SPM instruction is exe-cuted within four clock cycles. The CPU is halted during the entire page write operation if the NRWW section is addressed.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>PGERS</NAME>
          <DESCRIPTION>Page Erase</DESCRIPTION>
          <TEXT>If this bit is written to one at the same time as SPMEN, the next SPM instruction within four clock cycles executes page erase. The page address is taken from the high part of the Z pointer. The data in R1 and R0 are ignored. The PGERS bit will auto-clear upon completion of a page erase, or if no SPM instruction is executed within four clock cycles. The CPU is halted during the entire page write operation if the NRWW section is addressed.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SPMEN</NAME>
          <DESCRIPTION>Store Program Memory Enable</DESCRIPTION>
          <TEXT>This bit enables the SPM instruction for the next four clock cycles. If written to one together with either RWWSRE, BLB-SET, PGWRT or PGERS, the following SPM instruction will have a special meaning, see description above. If only SPMEN is written, the following SPM instruction will store the value in R1:R0 in the temporary page buffer addressed by the Z pointer. The LSB of the Z pointer is ignored. The SPMEN bit will auto-clear upon completion of an SPM instruction, or if no SPM instruction is executed within four clock cycles. During page erase and page write, the SPMEN bit remain high until the operation is completed. Writing any other combination than &#x201C;10001&#x201D;, "01001", "00101", "00011" or "00001" in the lower five bits will have no effec</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPMCSR>
    </BOOT_LOAD>
    <PORTB>
      <LIST>[PORTB:DDRB:PINB]</LIST>
      <LINK/>
      <ICON>io_port.bmp</ICON>
      <ID>AVRSimIOPort.SimIOPort</ID>
      <TEXT/>
      <PORTB>
        <NAME>PORTB</NAME>
        <DESCRIPTION>Data Register, Port B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x05</IO_ADDR>
        <MEM_ADDR>0x25</MEM_ADDR>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT3>
          <NAME>PORTB3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>PORTB2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>PORTB1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PORTB0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PORTB>
      <DDRB>
        <NAME>DDRB</NAME>
        <DESCRIPTION>Data Direction Register, Port B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x04</IO_ADDR>
        <MEM_ADDR>0x24</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT3>
          <NAME>DDB3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>DDB2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DDB1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>DDB0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </DDRB>
      <PINB>
        <NAME>PINB</NAME>
        <DESCRIPTION>Input Pins, Port B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x03</IO_ADDR>
        <MEM_ADDR>0x23</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_port.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT3>
          <NAME>PINB3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>PINB2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>PINB1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PINB0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PINB>
    </PORTB>
    <CPU>
      <LIST>[SREG:SPH:SPL:MCUCR:MCUSR:FOSCCAL:OSICSR:SMCR:GPIOR2:GPIOR1:GPIOR0:DIDR0:PRR0:CLKPR]</LIST>
      <LINK>[SPH:SPL]</LINK>
      <ICON>io_cpu.bmp</ICON>
      <ID/>
      <TEXT/>
      <SREG>
        <NAME>SREG</NAME>
        <DESCRIPTION>Status Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x3F</IO_ADDR>
        <MEM_ADDR>0x5F</MEM_ADDR>
        <ICON>io_sreg.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>I</NAME>
          <DESCRIPTION>Global Interrupt Enable</DESCRIPTION>
          <TEXT>The global interrupt enable bit must be set (one) for the interrupts to be enabled. The individual interrupt enable control is then performed in separate control registers. If the global interrupt enable bit is cleared (zero), none of the interrupts are enabled independent of the individual interrupt enable settings. The I-bit is cleared by hardware after an interrupt has occurred, and is set by the RETI instruction to enable subsequent interrupts.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>T</NAME>
          <DESCRIPTION>Bit Copy Storage</DESCRIPTION>
          <TEXT>The bit copy instructions BLD (Bit LoaD) and BST (Bit STore) use the T bit as source and destination for the operated bit. A bit from a register in the register file can be copied into T by the BST instruction, and a bit in T can be copied into a bit in a register in the register file by the BLD instruction.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>H</NAME>
          <DESCRIPTION>Half Carry Flag</DESCRIPTION>
          <TEXT>The half carry flag H indicates a half carry in some arithmetic operations. See the Instruction Set Description for detailed information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>S</NAME>
          <DESCRIPTION>Sign Bit</DESCRIPTION>
          <TEXT>The S-bit is always an exclusive or between the negative flag N and the two&#x2019;s complement overflow flag V. See the Instruc-tion Set Description for detailed information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>V</NAME>
          <DESCRIPTION>Two's Complement Overflow Flag</DESCRIPTION>
          <TEXT>The two&#x2019;s complement overflow flag V supports two&#x2019;s complement arithmetics. See the Instruction Set Description for detailed information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>N</NAME>
          <DESCRIPTION>Negative Flag</DESCRIPTION>
          <TEXT>The negative flag N indicates a negative result after the different arithmetic and logic operations. See the Instruction Set Description for detailed information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>Z</NAME>
          <DESCRIPTION>Zero Flag</DESCRIPTION>
          <TEXT>The zero flag Z indicates a zero result after the different arithmetic and logic operations. See the Instruction Set Description for detailed information.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>C</NAME>
          <DESCRIPTION>Carry Flag</DESCRIPTION>
          <TEXT>The carry flag C indicates a carry in an arithmetic or logic operation. See the Instruction Set Description for detailed information. Note that the status register is not automatically stored when entering an interrupt routine and restored when returning from an interrupt routine. This must be handled by software.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SREG>
      <SPH>
        <NAME>SPH</NAME>
        <DESCRIPTION>Stack Pointer High</DESCRIPTION>
        <TEXT>The general AVR 16-bit Stack Pointer is effectively built up of two 8-bit registers in the I/O space locations $3E ($5E) and $3D ($5D). As the AT90S4414/8515 supports up to 64 kB external SRAM, all 16-bits are used. The Stack Pointer points to the data SRAM stack area where the Subroutine and Interrupt Stacks are located. This Stack space in the data SRAM must be defined by the program before any subroutine calls are executed or interrupts are enabled. The stack pointer must be set to point above $60. The Stack Pointer is decremented by one when data is pushed onto the Stack with the PUSH instruction, and it is decremented by two when an address is pushed onto the Stack with subroutine calls and interrupts. The Stack Pointer is incremented by one when data is popped from the Stack with the POP instruction, and it is incremented by two when an address is popped from the Stack with return from subroutine RET or return from interrupt R</TEXT>
        <IO_ADDR>0x3E</IO_ADDR>
        <MEM_ADDR>0x5E</MEM_ADDR>
        <ICON>io_sph.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT1>
          <NAME>SP9</NAME>
          <DESCRIPTION>Stack pointer bit 9</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SP8</NAME>
          <DESCRIPTION>Stack pointer bit 8</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPH>
      <SPL>
        <NAME>SPL</NAME>
        <DESCRIPTION>Stack Pointer Low</DESCRIPTION>
        <TEXT>The general AVR 16-bit Stack Pointer is effectively built up of two 8-bit registers in the I/O space locations $3E ($5E) and $3D ($5D). As the AT90S4414/8515 supports up to 64 kB external SRAM, all 16-bits are used. The Stack Pointer points to the data SRAM stack area where the Subroutine and Interrupt Stacks are located. This Stack space in the data SRAM must be defined by the program before any subroutine calls are executed or interrupts are enabled. The stack pointer must be set to point above $60. The Stack Pointer is decremented by one when data is pushed onto the Stack with the PUSH instruction, and it is decremented by two when an address is pushed onto the Stack with subroutine calls and interrupts. The Stack Pointer is incremented by one when data is popped from the Stack with the POP instruction, and it is incremented by two when an address is popped from the Stack with return from subroutine RET or return from interrupt </TEXT>
        <IO_ADDR>0x3D</IO_ADDR>
        <MEM_ADDR>0x5D</MEM_ADDR>
        <ICON>io_sph.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>SP7</NAME>
          <DESCRIPTION>Stack pointer bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>SP6</NAME>
          <DESCRIPTION>Stack pointer bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>SP5</NAME>
          <DESCRIPTION>Stack pointer bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>SP4</NAME>
          <DESCRIPTION>Stack pointer bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>SP3</NAME>
          <DESCRIPTION>Stack pointer bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>SP2</NAME>
          <DESCRIPTION>Stack pointer bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SP1</NAME>
          <DESCRIPTION>Stack pointer bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SP0</NAME>
          <DESCRIPTION>Stack pointer bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SPL>
      <MCUCR>
        <NAME>MCUCR</NAME>
        <DESCRIPTION>MCU Control Register</DESCRIPTION>
        <TEXT>The MCU Control Register contains control bits for general MCU functions.</TEXT>
        <IO_ADDR>0x35</IO_ADDR>
        <MEM_ADDR>0x55</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT5>
          <NAME>CKOE</NAME>
          <DESCRIPTION>Clock Output Enable</DESCRIPTION>
          <TEXT>When this bit is written to one, the CPU clock divided by 4 is output on the CKOUT pin. The CKOUT pin will be tri-stated when this bit is zero.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>PUD</NAME>
          <DESCRIPTION>Pull-up disable</DESCRIPTION>
          <TEXT>When this bit is written to one,the pull-ups in the I/O ports are disabled even if the DDxn and PORTxn registers are configured to enable the pull-ups ({DDxn,PORTxn}=0b01).      </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
      </MCUCR>
      <MCUSR>
        <NAME>MCUSR</NAME>
        <DESCRIPTION>MCU Status Register</DESCRIPTION>
        <TEXT>The MCU Status Register provides information on which reset source caused an MCU reset.</TEXT>
        <IO_ADDR>0x34</IO_ADDR>
        <MEM_ADDR>0x54</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT4>
          <NAME>OCDRF</NAME>
          <DESCRIPTION>OCD Reset Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>WDRF</NAME>
          <DESCRIPTION>Watchdog Reset Flag</DESCRIPTION>
          <TEXT>This bit is set if a watchdog reset occurs. The bit is reset by a power-on reset, or by writing a logic zero to the flag.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>BODRF</NAME>
          <DESCRIPTION>Brown-out Reset Flag</DESCRIPTION>
          <TEXT>This bit is set if a Brown-out Reset occurs. This bit is reset by a Power-on Reset, or by writing a logic zero to the flag.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>EXTRF</NAME>
          <DESCRIPTION>External Reset Flag</DESCRIPTION>
          <TEXT>This bit is set if an external reset occurs. The bit is reset by a power-on reset, or by writing a logic zero to the flag.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PORF</NAME>
          <DESCRIPTION>Power-on reset flag</DESCRIPTION>
          <TEXT>This bit is set if a power-on reset occurs. The bit is reset only by writing a logic zero to the flag. To make use of the reset flags to identify a reset condition, the user should read and then reset the MCUCSR as early as possible in the program. If the register is cleared before another reset occurs, the source of the reset can be found by examining the reset flags.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </MCUSR>
      <FOSCCAL>
        <NAME>FOSCCAL</NAME>
        <DESCRIPTION>Fast Oscillator Calibration Value</DESCRIPTION>
        <TEXT>Writing the calibration byte to this address will trim the internal oscillator to remove process variations from the oscillator frequency. This is done automatically during chip reset. When OSCCAL is zero, the lowest available frequency is chosen. Writing non-zero values to this register will increase the frequency of the internal oscillator. Writing $FF to the register gives the highest available frequency. The calibrated oscillator is used to time EEPROM and Flash access. If EEPROM or Flash is written, do not calibrate to more than 10% above the nominal frequency. Otherwise, the EEPROM or Flash write may fail. Note that the Oscillator is intended for calibration to 1.0 MHz, 2.0 MHz, 4.0 MHz, or 8.0MHz. Tuning to other values is not guaranteed, as indicated in Table </TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x66</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>FCAL7</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>FCAL6</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>FCAL5</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>FCAL4</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>FCAL3</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>FCAL2</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>FCAL1</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>FCAL0</NAME>
          <DESCRIPTION>Oscillator Calibration Value Bit0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </FOSCCAL>
      <OSICSR>
        <NAME>OSICSR</NAME>
        <DESCRIPTION>Oscillator Sampling Interface Control and Status Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x17</IO_ADDR>
        <MEM_ADDR>0x37</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT4>
          <NAME>OSISEL0</NAME>
          <DESCRIPTION>Oscillator Sampling Interface Select 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT1>
          <NAME>OSIST</NAME>
          <DESCRIPTION>Oscillator Sampling Interface Status</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OSIEN</NAME>
          <DESCRIPTION>Oscillator Sampling Interface Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </OSICSR>
      <SMCR>
        <NAME>SMCR</NAME>
        <DESCRIPTION>Sleep Mode Control Register</DESCRIPTION>
        <TEXT>The Sleep Mode Control Register contains control bits for power management.</TEXT>
        <IO_ADDR>0x33</IO_ADDR>
        <MEM_ADDR>0x53</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>SM2</NAME>
          <DESCRIPTION>Sleep Mode Select bit 2</DESCRIPTION>
          <TEXT>These bits select between the five available sleep modes.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>SM1</NAME>
          <DESCRIPTION>Sleep Mode Select bit 1</DESCRIPTION>
          <TEXT>These bits select between the five available sleep modes.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SM0</NAME>
          <DESCRIPTION>Sleep Mode Select bit 0</DESCRIPTION>
          <TEXT>These bits select between the five available sleep modes.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SE</NAME>
          <DESCRIPTION>Sleep Enable</DESCRIPTION>
          <TEXT>The SE bit must be written to logic one to make the MCU enter the sleep mode when the SLEEP instruction is executed.To</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </SMCR>
      <GPIOR2>
        <NAME>GPIOR2</NAME>
        <DESCRIPTION>General Purpose IO Register 2</DESCRIPTION>
        <TEXT>The ATmega169 contains three General Purpose I/O Registers.These registers can be used for storing any information, and they are particularly useful for storing global variables and status flags.General Purpose I/O Registers within the address range $00 -$1F are directly bit-accessible using the SBI,CBI,SBIS,and SBIC instructions.     </TEXT>
        <IO_ADDR>0x2B</IO_ADDR>
        <MEM_ADDR>0x4B</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>GPIOR27</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>GPIOR26</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>GPIOR25</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>GPIOR24</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>GPIOR23</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>GPIOR22</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>GPIOR21</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>GPIOR20</NAME>
          <DESCRIPTION>General Purpose IO Register 2 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </GPIOR2>
      <GPIOR1>
        <NAME>GPIOR1</NAME>
        <DESCRIPTION>General Purpose IO Register 1</DESCRIPTION>
        <TEXT>The ATmega169 contains three General Purpose I/O Registers.These registers can be used for storing any information, and they are particularly useful for storing global variables and status flags.General Purpose I/O Registers within the address range $00 -$1F are directly bit-accessible using the SBI,CBI,SBIS,and SBIC instructions.     </TEXT>
        <IO_ADDR>0x2A</IO_ADDR>
        <MEM_ADDR>0x4A</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>GPIOR17</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>GPIOR16</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>GPIOR15</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>GPIOR14</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>GPIOR13</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>GPIOR12</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>GPIOR11</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>GPIOR10</NAME>
          <DESCRIPTION>General Purpose IO Register 1 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </GPIOR1>
      <GPIOR0>
        <NAME>GPIOR0</NAME>
        <DESCRIPTION>General Purpose IO Register 0</DESCRIPTION>
        <TEXT>The ATmega169 contains three General Purpose I/O Registers.These registers can be used for storing any information, and they are particularly useful for storing global variables and status flags.General Purpose I/O Registers within the address range $00 -$1F are directly bit-accessible using the SBI,CBI,SBIS,and SBIC instructions.     </TEXT>
        <IO_ADDR>0x1E</IO_ADDR>
        <MEM_ADDR>0x3E</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>GPIOR07</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>GPIOR06</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>GPIOR05</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>GPIOR04</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>GPIOR03</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>GPIOR02</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>GPIOR01</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>GPIOR00</NAME>
          <DESCRIPTION>General Purpose IO Register 0 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </GPIOR0>
      <DIDR0>
        <NAME>DIDR0</NAME>
        <DESCRIPTION>Digital Input Disable Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x7E</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT1>
          <NAME>PA1DID</NAME>
          <DESCRIPTION>When this bit is written logic one, the digital input buffer of the corresponding V_ADC pin is disabled.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PA0DID</NAME>
          <DESCRIPTION>When this bit is written logic one, the digital input buffer of the corresponding V_ADC pin is disabled.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </DIDR0>
      <PRR0>
        <NAME>PRR0</NAME>
        <DESCRIPTION>Power Reduction Register 0</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x64</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT5>
          <NAME>PRVRM</NAME>
          <DESCRIPTION>Power Reduction Voltage Regulator Monitor</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT3>
          <NAME>PRSPI</NAME>
          <DESCRIPTION>Power reduction SPI</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>PRTIM1</NAME>
          <DESCRIPTION>Power Reduction Timer/Counter1</DESCRIPTION>
          <TEXT>Writing a logic one to this bit shuts down the Timer/Counter1 module. When the, Timer/Counter1 is enabled, operation will continue like before the shutdown.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>PRTIM0</NAME>
          <DESCRIPTION>Power Reduction Timer/Counter0</DESCRIPTION>
          <TEXT>Writing a logic one to this bit shuts down the Timer/Counter0 module. When the Timer/Counter0 is enabled, operation will continue like before the shutdown.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>PRVADC</NAME>
          <DESCRIPTION>Power Reduction V-ADC</DESCRIPTION>
          <TEXT>Writing a logic one to this bit shuts down the V-ADC. The V-ADC must be disabled before shut down.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </PRR0>
      <CLKPR>
        <NAME>CLKPR</NAME>
        <DESCRIPTION>Clock Prescale Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x61</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>CLKPCE</NAME>
          <DESCRIPTION>Clock Prescaler Change Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT1>
          <NAME>CLKPS1</NAME>
          <DESCRIPTION>Clock Prescaler Select Bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CLKPS0</NAME>
          <DESCRIPTION>Clock Prescaler Select Bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT0>
      </CLKPR>
    </CPU>
    <BATTERY_PROTECTION>
      <LIST>[BPPLR:BPCR:BPHCTR:BPOCTR:BPSCTR:BPCHCD:BPDHCD:BPCOCD:BPDOCD:BPSCD:BPIFR:BPIMSK]</LIST>
      <LINK/>
      <ICON>io_analo.bmp</ICON>
      <ID/>
      <TEXT/>
      <BPPLR>
        <NAME>BPPLR</NAME>
        <DESCRIPTION>Battery Protection Parameter Lock Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFE</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT1>
          <NAME>BPPLE</NAME>
          <DESCRIPTION>Battery Protection Parameter Lock Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>BPPL</NAME>
          <DESCRIPTION>Battery Protection Parameter Lock</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPPLR>
      <BPCR>
        <NAME>BPCR</NAME>
        <DESCRIPTION>Battery Protection Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFD</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT4>
          <NAME>SCD</NAME>
          <DESCRIPTION>Short Circuit Protection Disabled</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>DOCD</NAME>
          <DESCRIPTION>Discharge Over-current Protection Disabled</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>COCD</NAME>
          <DESCRIPTION>Charge Over-current Protection Disabled</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DHCD</NAME>
          <DESCRIPTION>Discharge High-current Protection Disable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CHCD</NAME>
          <DESCRIPTION>Charge High-current Protection Disable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPCR>
      <BPHCTR>
        <NAME>BPHCTR</NAME>
        <DESCRIPTION>Battery Protection Short-current Timing Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFC</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT5>
          <NAME>HCPT5</NAME>
          <DESCRIPTION>High-current Protection Timing bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>HCPT4</NAME>
          <DESCRIPTION>High-current Protection Timing bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>HCPT3</NAME>
          <DESCRIPTION>High-current Protection Timing bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>HCPT2</NAME>
          <DESCRIPTION>High-current Protection Timing bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>HCPT1</NAME>
          <DESCRIPTION>High-current Protection Timing bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>HCPT0</NAME>
          <DESCRIPTION>High-current Protection Timing bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPHCTR>
      <BPOCTR>
        <NAME>BPOCTR</NAME>
        <DESCRIPTION>Battery Protection Over-current Timing Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFB</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT5>
          <NAME>OCPT5</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 5</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>OCPT4</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 4</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>OCPT3</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 3</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCPT2</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 2</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCPT1</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 1</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OCPT0</NAME>
          <DESCRIPTION>Over-current Protection Timing bit 0</DESCRIPTION>
          <TEXT>These bits control the delay of the Over-circuit Protection. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPOCTR>
      <BPSCTR>
        <NAME>BPSCTR</NAME>
        <DESCRIPTION>Battery Protection Short-current Timing Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xFA</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT6>
          <NAME>SCPT6</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>SCPT5</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>SCPT4</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>SCPT3</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>SCPT2</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SCPT1</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SCPT0</NAME>
          <DESCRIPTION>Short-current Protection Timing</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPSCTR>
      <BPCHCD>
        <NAME>BPCHCD</NAME>
        <DESCRIPTION>Battery Protection Charge-High-current Detection Level Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF9</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CHCDL7</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CHCDL6</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CHCDL5</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CHCDL4</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CHCDL3</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CHCDL2</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CHCDL1</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CHCDL0</NAME>
          <DESCRIPTION>Charge High-current Detection Level</DESCRIPTION>
          <TEXT>These bits sets the RSENSE voltage level for detection of Charge High-current</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT0>
      </BPCHCD>
      <BPDHCD>
        <NAME>BPDHCD</NAME>
        <DESCRIPTION>Battery Protection Discharge-High-current Detection Level Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF8</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>DHCDL7</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>DHCDL6</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>DHCDL5</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>DHCDL4</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>DHCDL3</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>DHCDL2</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DHCDL1</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>DHCDL0</NAME>
          <DESCRIPTION>Discharge High-current Detection Level bit 0</DESCRIPTION>
          <TEXT>1</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL/>
        </BIT0>
      </BPDHCD>
      <BPCOCD>
        <NAME>BPCOCD</NAME>
        <DESCRIPTION>Battery Protection Charge-Over-current Detection Level Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF7</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>COCDL7</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>COCDL6</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>COCDL5</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>COCDL4</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>COCDL3</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>COCDL2</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>COCDL1</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>COCDL0</NAME>
          <DESCRIPTION>Charge Over-current Detection Level</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT0>
      </BPCOCD>
      <BPDOCD>
        <NAME>BPDOCD</NAME>
        <DESCRIPTION>Battery Protection Discharge-Over-current Detection Level Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF6</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>DOCDL7</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>DOCDL6</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>DOCDL5</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>DOCDL4</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>DOCDL3</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>DOCDL2</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DOCDL1</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>DOCDL0</NAME>
          <DESCRIPTION>Discharge Over-current Detection Level bit0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT0>
      </BPDOCD>
      <BPSCD>
        <NAME>BPSCD</NAME>
        <DESCRIPTION>Battery Protection Short-Circuit Detection Level Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF5</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>SCDL7</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>SCDL6</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>SCDL5</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>SCDL4</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>SCDL3</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>SCDL2</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>SCDL1</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>SCDL0</NAME>
          <DESCRIPTION>Short-circuit Detection Level bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>1</INIT_VAL>
        </BIT0>
      </BPSCD>
      <BPIFR>
        <NAME>BPIFR</NAME>
        <DESCRIPTION>Battery Protection Interrupt Flag Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF3</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT4>
          <NAME>SCIF</NAME>
          <DESCRIPTION>Short-circuit Protection Activated Interrupt Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>DOCIF</NAME>
          <DESCRIPTION>Discharge Over-current Protection Activated Interrupt Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>COCIF</NAME>
          <DESCRIPTION>Charge Over-current Protection Activated Interrupt Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DHCIF</NAME>
          <DESCRIPTION>Disharge High-current Protection Activated Interrupt</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CHCIF</NAME>
          <DESCRIPTION>Charge High-current Protection Activated Interrupt</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPIFR>
      <BPIMSK>
        <NAME>BPIMSK</NAME>
        <DESCRIPTION>Battery Protection Interrupt Mask Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xF2</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT4>
          <NAME>SCIE</NAME>
          <DESCRIPTION>Short-circuit Protection Activated Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>DOCIE</NAME>
          <DESCRIPTION>Discharge Over-current Protection Activated Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>COCIE</NAME>
          <DESCRIPTION>Charge Over-current Protection Activated Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>DHCIE</NAME>
          <DESCRIPTION>Discharger High-current Protection Activated Interrupt</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CHCIE</NAME>
          <DESCRIPTION>Charger High-current Protection Activated Interrupt</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </BPIMSK>
    </BATTERY_PROTECTION>
    <EEPROM>
      <LIST>[EEAR:EEDR:EECR]</LIST>
      <LINK/>
      <ICON>io_cpu.bmp</ICON>
      <ID>EEPROM_02.xml</ID>
      <TEXT/>
      <EEAR>
        <NAME>EEAR</NAME>
        <ALIAS>EEARL</ALIAS>
        <DESCRIPTION>EEPROM Read/Write Access</DESCRIPTION>
        <TEXT>The EEPROM access register is accessible in the I/O space. The write access time is in the range of 2.5 - 4ms, depending on the V CC voltages. A self-timing function, however, lets the user software detect when the next byte can be written. If the user code contains code that writes the EEPROM, some pre-caution must be taken. In heavily filtered power supplies, V CC is likely to rise or fall slowly on power-up/down. This causes the device for some period of time to run at a voltage lower than specified as minimum for the clock frequency used. CPU operation under these conditions is likely cause the program counter to perform unintentional jumps and eventually execute the EEPROM write code. To secure EEPROM integrity, the user is advised to use an external under-voltage reset circuit in this case. In order to prevent unintentional EEPROM writes, a specific write procedure must be followed. Refer to the description of the EEPROM Control Register for details on this. When the EEPROM is written, the CPU is halted for two clock cycles before the next instruction is executed. When the EEPROM is read, the CPU is halted for four clock cycles before the next instruction</TEXT>
        <IO_ADDR>0x21</IO_ADDR>
        <MEM_ADDR>0x41</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>EEAR7</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>EEAR6</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>EEAR5</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>EEAR4</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>EEAR3</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>EEAR2</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>EEAR1</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>EEAR0</NAME>
          <DESCRIPTION>EEPROM Read/Write Access bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EEAR>
      <EEDR>
        <NAME>EEDR</NAME>
        <DESCRIPTION>EEPROM Data Register</DESCRIPTION>
        <TEXT>For the EEPROM write operation, the EEDR register contains the data to be written to the EEPROM in the address given by the EEAR register. For the EEPROM read operation, the EEDR contains the data read out from the EEPROM at the address given by EEAR.</TEXT>
        <IO_ADDR>0x20</IO_ADDR>
        <MEM_ADDR>0x40</MEM_ADDR>
        <ICON>io_cpu.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>EEDR7</NAME>
          <DESCRIPTION>EEPROM Data Register bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>EEDR6</NAME>
          <DESCRIPTION>EEPROM Data Register bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>EEDR5</NAME>
          <DESCRIPTION>EEPROM Data Register bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>EEDR4</NAME>
          <DESCRIPTION>EEPROM Data Register bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>EEDR3</NAME>
          <DESCRIPTION>EEPROM Data Register bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>EEDR2</NAME>
          <DESCRIPTION>EEPROM Data Register bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>EEDR1</NAME>
          <DESCRIPTION>EEPROM Data Register bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>EEDR0</NAME>
          <DESCRIPTION>EEPROM Data Register bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EEDR>
      <EECR>
        <NAME>EECR</NAME>
        <DESCRIPTION>EEPROM Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x1F</IO_ADDR>
        <MEM_ADDR>0x3F</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT5>
          <NAME>EEPM1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>EEPM0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <ENUM>EEP_MODE</ENUM>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>EERIE</NAME>
          <DESCRIPTION>EEProm Ready Interrupt Enable</DESCRIPTION>
          <TEXT>When the I-bit in SREG and EERIE are set (one), the EEPROM Ready Interrupt is enabled. When cleared (zero), the interrupt is disabled. The EEPROM Ready Interrupt generates a constant interrupt when EEWE is cleared (zero).</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>EEMPE</NAME>
          <ALIAS>EEMWE</ALIAS>
          <DESCRIPTION>EEPROM Master Write Enable</DESCRIPTION>
          <TEXT>The EEMWE bit determines whether setting EEWE to one causes the EEPROM to be written. When EEMWE is set(one) setting EEWE will write data to the EEPROM at the selected address If EEMWE is zero, setting EEWE will have no effect. When EEMWE has been set (one) by software, hardware clears the bit to zero after four clock cycles. See the description of the EEWE bit for a EEPROM write procedure.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>EEPE</NAME>
          <ALIAS>EEWE</ALIAS>
          <DESCRIPTION>EEPROM Write Enable</DESCRIPTION>
          <TEXT>The EEPROM Write Enable Signal EEWE is the write strobe to the EEPROM. When address and data are correctly set up, the EEWE bit must be set to write the value into the EEPROM. The EEMWE bit must be set when the logical one is written to EEWE, otherwise no EEPROM write takes place. The following procedure should be followed when writing the EEPROM (the order of steps 2 and 3 is unessential): 1. Wait until EEWE becomes zero. 2. Write new EEPROM address to EEARL and EEARH (optional). 3. Write new EEPROM data to EEDR (optional). 4. Write a logical one to the EEMWE bit in EECR (to be able to write a logical one to the EEMWE bit, the EEWE bit mustbewritten to zero in thesamecycle). 5. Within four clock cycles after setting EEMWE, write a logical one to EEWE. When the write access time (typically 2.5 ms at V CC =5Vor 4msatV CC = 2.7V) has elapsed, the EEWE bit is cleared (zero) by hardware. The user software can poll this bit and wait for a zero before writing the next byte. When EEWE has been set, the CPU is halted or two cycles before the next instruction is executed. Caution: An interrupt between step 4 and step 5 will make the write cycle fail, since the EEPROM Master Write Enable will time-out. If an interrupt routine accessing the EEPROM is interrupting another EEPROM access, the EEAR or EEDR regis-ter will be modified, causing the interrupted EEPROM access to fail. It is recommended to have the global interrupt flag cleared during the 4 last steps to avoid these problems.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>EERE</NAME>
          <DESCRIPTION>EEPROM Read Enable</DESCRIPTION>
          <TEXT>The EEPROM Read Enable Signal EERE is the read strobe to the EEPROM. When the correct address is set up in the EEAR register, the EERE bit must be set. When the EERE bit is cleared (zero) by hardware, requested data is found in the EEDR register. The EEPROM read access takes one instruction and there is no need to poll the EERE bit. When EERE has been set, the CPU is halted for four cycles before the next instruction is executed. The user should poll the EEWE bit before starting the read operation. If a write operation is in progress when new data or address is written to the EEPROM I/O registers, the write operation will be interrupted, and the result is undefined.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </EECR>
    </EEPROM>
    <TIMER_COUNTER_1>
      <LIST>[TCCR1A:TCCR1B:TCNT1H:TCNT1L:OCR1A:OCR1B:TIMSK1:TIFR1:GTCCR]</LIST>
      <LINK>[TCNT1H:TCNT1L];[OCR1AH:OCR1AL]</LINK>
      <ICON>io_timer.bmp</ICON>
      <ID/>
      <TEXT/>
      <TCCR1B>
        <NAME>TCCR1B</NAME>
        <DESCRIPTION>Timer/Counter1 Control Register B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x81</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT2>
          <NAME>CS12</NAME>
          <DESCRIPTION>Clock Select1 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CS11</NAME>
          <DESCRIPTION>Clock Select1 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CS10</NAME>
          <DESCRIPTION>Clock Select1 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCCR1B>
      <TCCR1A>
        <NAME>TCCR1A</NAME>
        <DESCRIPTION>Timer/Counter 1 Control Register A</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x80</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>TCW1</NAME>
          <DESCRIPTION>Timer/Counter Width</DESCRIPTION>
          <TEXT>When this bit is written to one 16-bit mode is selected. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>ICEN1</NAME>
          <DESCRIPTION>Input Capture Mode Enable</DESCRIPTION>
          <TEXT>The Input Capture Mode is enabled when this bit is written to one.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>ICNC1</NAME>
          <DESCRIPTION>Input Capture Noise Canceler</DESCRIPTION>
          <TEXT>Setting this bit activates the Input Capture Noise Canceler. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>ICES1</NAME>
          <DESCRIPTION>Input Capture Edge Select</DESCRIPTION>
          <TEXT>This bit selects which edge on the Input Capture Source that is used to trigger a capture event.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>ICS1</NAME>
          <DESCRIPTION>Input Capture Select</DESCRIPTION>
          <TEXT>When written logic one, this bit enables the input capture function in Timer/Counter to be triggered by the alternative Input Capture Source.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT0>
          <NAME>WGM10</NAME>
          <DESCRIPTION>Waveform Generation Mode</DESCRIPTION>
          <TEXT>This bit controls the counting sequence of the counter</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCCR1A>
      <TCNT1H>
        <NAME>TCNT1H</NAME>
        <DESCRIPTION>Timer Counter 1 High Byte</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x85</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>TCNT1H7</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>TCNT1H6</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>TCNT1H5</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>TCNT1H4</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>TCNT1H3</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>TCNT1H2</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>TCNT1H1</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TCNT1H0</NAME>
          <DESCRIPTION>Timer Counter 1 High Byte bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCNT1H>
      <TCNT1L>
        <NAME>TCNT1L</NAME>
        <DESCRIPTION>Timer Counter 1 Low Byte</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x84</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>TCNT1L7</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>TCNT1L6</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>TCNT1L5</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>TCNT1L4</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>TCNT1L3</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>TCNT1L2</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>TCNT1L1</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TCNT1L0</NAME>
          <DESCRIPTION>Timer Counter 1 Low Byte bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCNT1L>
      <OCR1A>
        <NAME>OCR1A</NAME>
        <DESCRIPTION>Output Compare Register 1A </DESCRIPTION>
        <TEXT>The Output Compare Register A contains an 8-bit value that is continuously compared with the</TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x88</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>OCR1A7</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>OCR1A6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>OCR1A5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>OCR1A4</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>OCR1A3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCR1A2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCR1A1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OCR1A0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </OCR1A>
      <OCR1B>
        <NAME>OCR1B</NAME>
        <DESCRIPTION>Output Compare Register B </DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x89</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>OCR1B7</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>OCR1B6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>OCR1B5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>OCR1B4</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>OCR1B3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCR1B2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCR1B1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OCR1B0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </OCR1B>
      <TIMSK1>
        <NAME>TIMSK1</NAME>
        <DESCRIPTION>Timer/Counter Interrupt Mask Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x6F</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>ICIE1</NAME>
          <DESCRIPTION>Timer/Counter n Input Capture Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCIE1B</NAME>
          <DESCRIPTION>Timer/Counter1 Output Compare B Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCIE1A</NAME>
          <DESCRIPTION>Timer/Counter1 Output Compare A Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TOIE1</NAME>
          <DESCRIPTION>Timer/Counter1 Overflow Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TIMSK1>
      <TIFR1>
        <NAME>TIFR1</NAME>
        <DESCRIPTION>Timer/Counter Interrupt Flag register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x16</IO_ADDR>
        <MEM_ADDR>0x36</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>ICF1</NAME>
          <DESCRIPTION>Timer/Counter 1 Input Capture Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCF1B</NAME>
          <DESCRIPTION>Timer/Counter1 Output Compare Flag B</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCF1A</NAME>
          <DESCRIPTION>Timer/Counter1 Output Compare Flag A</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TOV1</NAME>
          <DESCRIPTION>Timer/Counter1 Overflow Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TIFR1>
      <GTCCR>
        <NAME>GTCCR</NAME>
        <DESCRIPTION>General Timer/Counter Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x23</IO_ADDR>
        <MEM_ADDR>0x43</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>TSM</NAME>
          <DESCRIPTION>Timer/Counter Synchronization Mode</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT0>
          <NAME>PSRSYNC</NAME>
          <DESCRIPTION>Prescaler Reset</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </GTCCR>
    </TIMER_COUNTER_1>
    <COULOMB_COUNTER>
      <LIST>[CADCSRA:CADCSRB:CADICH:CADICL:CADAC3:CADAC2:CADAC1:CADAC0:CADRC]</LIST>
      <LINK>[CADICH:CADICL];[CADAC3:CADAC2:CADAC1:CADAC0]</LINK>
      <ICON>io_analo.bmp</ICON>
      <ID>CoulombCounter_m406</ID>
      <TEXT/>
      <CADCSRA>
        <NAME>CADCSRA</NAME>
        <DESCRIPTION>CC-ADC Control and Status Register A</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE4</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>CADEN</NAME>
          <DESCRIPTION>When the CADEN bit is cleared (zero), the CC-ADC is disabled. When the CADEN bit is set (one), the CC-ADC will continuously measure the voltage drop over the external sense resistor RSENSE. In Power-down, only the Regular Current detection is active. In Power-off, the CC-ADC is always disabled. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADPOL</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADUB</NAME>
          <DESCRIPTION>CC_ADC Update Busy</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADAS1</NAME>
          <DESCRIPTION>CC_ADC Accumulate Current Select Bit 1</DESCRIPTION>
          <TEXT>The CADAS bits select the conversion time for the Accumulate Current output. Please refer to table 45 in the manual.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADAS0</NAME>
          <DESCRIPTION>CC_ADC Accumulate Current Select Bit 0</DESCRIPTION>
          <TEXT>The CADAS bits select the conversion time for the Accumulate Current output. Please refer to table 45 in the manual.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADSI1</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADSI0</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADSE</NAME>
          <DESCRIPTION>When the CADSE bit is written to one, the ongoing CC-ADC conversion is aborted, and the CC-ADC enters Regular Current detection mode.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADCSRA>
      <CADCSRB>
        <NAME>CADCSRB</NAME>
        <DESCRIPTION>CC-ADC Control and Status Register B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE5</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT6>
          <NAME>CADACIE</NAME>
          <DESCRIPTION/>
          <TEXT>CC-ADC Accumulate Current Interrupt Enable </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADRCIE</NAME>
          <DESCRIPTION>Regular Current Interrupt Enable</DESCRIPTION>
          <TEXT>When the CADACIE bit is set (one), and the I-bit in the Status Register is set (one), the CC-ADC Accumulate Current Interrupt is enabled. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADICIE</NAME>
          <DESCRIPTION>CAD Instantenous Current Interrupt Enable</DESCRIPTION>
          <TEXT>The CADACT bits determine the conversion time for the Accumulate Current output as shown in Table 43. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT2>
          <NAME>CADACIF</NAME>
          <DESCRIPTION>CC-ADC Accumulate Current Interrupt Flag</DESCRIPTION>
          <TEXT>The CADACIF bit is set (one) after the Accumulate Current conversion has completed. The CC-ADC Accumulate Current Interrupt is executed if the CADAIE bit and the I-bit in SREG are set (one). CADACIF is cleared by hardware when executing the corresponding Interrupt Handling Vector. Alternatively, CADACIF is cleared by writing a logic one to the flag. he CADRCIF bit is set (one) when the absolute value of the result of the last CC-ADC conversion is greater than, or equal to, the compare values set by the CC-ADC Regular Charge/Discharge Current Level Registers. A positive value is compared to the Regular Charge Current Level, and a negative value is compared to the Regular Discharge Current Level. The CC-ADC Regular Current Interrupt is executed if the CADRCIE bit and the I-bit in SREG are set (one). CADRCIF is cleared by hardware when executing the corresponding Interrupt Handling vector. Alternatively, CADRCIF is cleared by writing a logic one to the flag.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADRCIF</NAME>
          <DESCRIPTION>CC-ADC Accumulate Current Interrupt Flag</DESCRIPTION>
          <TEXT>The CADACIF bit is set (one) after the Accumulate Current conversion has completed. The CC-ADC Accumulate Current Interrupt is executed if the CADAIE bit and the I-bit in SREG are set (one). CADACIF is cleared by hardware when executing the corresponding Interrupt Handling Vector. Alternatively, CADACIF is cleared by writing a logic one to the flag. he CADRCIF bit is set (one) when the absolute value of the result of the last CC-ADC conversion is greater than, or equal to, the compare values set by the CC-ADC Regular Charge/Discharge Current Level Registers. A positive value is compared to the Regular Charge Current Level, and a negative value is compared to the Regular Discharge Current Level. The CC-ADC Regular Current Interrupt is executed if the CADRCIE bit and the I-bit in SREG are set (one). CADRCIF is cleared by hardware when executing the corresponding Interrupt Handling vector. Alternatively, CADRCIF is cleared by writing a logic one to the flag.</TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADICIF</NAME>
          <DESCRIPTION>CC-ADC Instantaneous Current Interrupt Flag </DESCRIPTION>
          <TEXT>The CADICIF bit is set (one) when a CC-ADC Instantaneous Current conversion is completed. The CC-ADC Instantaneous Current Interrupt is executed if the CADICIE bit and the I-bit in SREG are set (one). CADICIF is cleared by hardware when executing the corresponding Interrupt Handling vector. Alternatively, CADICIF is cleared by writing a  logic one to the flag. </TEXT>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADCSRB>
      <CADICH>
        <NAME>CADICH</NAME>
        <DESCRIPTION>CC-ADC Instantaneous Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE9</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADICH7</NAME>
          <DESCRIPTION>When the CADEN bit is cleared (zero), the CC-ADC is disabled. When the CADEN bit is set (one), the CC-ADC will continuously measure the voltage drop over the external sense resistor RSENSE. In Power-down, only the Regular Current detection is active. In Power-off, the CC-ADC is always disabled. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADICH6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADICH5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADICH4</NAME>
          <DESCRIPTION>The CADACT bits determine the conversion time for the Accumulate Current output as shown in Table 43. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADICH3</NAME>
          <DESCRIPTION>The CADACT bits determine the conversion time for the Accumulate Current output as shown in Table 43. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADICH2</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADICH1</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADICH0</NAME>
          <DESCRIPTION>When the CADSE bit is written to one, the ongoing CC-ADC conversion is aborted, and the CC-ADC enters Regular Current detection mode.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADICH>
      <CADICL>
        <NAME>CADICL</NAME>
        <DESCRIPTION>CC-ADC Instantaneous Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE8</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADICL7</NAME>
          <DESCRIPTION>When the CADEN bit is cleared (zero), the CC-ADC is disabled. When the CADEN bit is set (one), the CC-ADC will continuously measure the voltage drop over the external sense resistor RSENSE. In Power-down, only the Regular Current detection is active. In Power-off, the CC-ADC is always disabled. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADICL6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADICL5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADICL4</NAME>
          <DESCRIPTION>The CADACT bits determine the conversion time for the Accumulate Current output as shown in Table 43. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADICL3</NAME>
          <DESCRIPTION>The CADACT bits determine the conversion time for the Accumulate Current output as shown in Table 43. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADICL2</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADICL1</NAME>
          <DESCRIPTION>The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined. </DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADICL0</NAME>
          <DESCRIPTION>When the CADSE bit is written to one, the ongoing CC-ADC conversion is aborted, and the CC-ADC enters Regular Current detection mode.</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADICL>
      <CADAC3>
        <NAME>CADAC3</NAME>
        <DESCRIPTION>ADC Accumulate Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE3</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADAC31</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADAC30</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADAC29</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADAC28</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADAC27</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADAC26</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADAC25</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADAC24</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADAC3>
      <CADAC2>
        <NAME>CADAC2</NAME>
        <DESCRIPTION>ADC Accumulate Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE2</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADAC23</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADAC22</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADAC21</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADAC20</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADAC19</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADAC18</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADAC17</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADAC16</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADAC2>
      <CADAC1>
        <NAME>CADAC1</NAME>
        <DESCRIPTION>ADC Accumulate Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE1</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADAC15</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADAC14</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADAC13</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADAC12</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADAC11</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADAC10</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADAC09</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADAC08</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADAC1>
      <CADAC0>
        <NAME>CADAC0</NAME>
        <DESCRIPTION>ADC Accumulate Current</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE0</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADAC07</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADAC06</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADAC05</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADAC04</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADAC03</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADAC02</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADAC01</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADAC00</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADAC0>
      <CADRC>
        <NAME>CADRC</NAME>
        <DESCRIPTION>CC-ADC Regular Current</DESCRIPTION>
        <TEXT>he CC-ADC Regular Current Register determines the threshold level for the Regular Current</TEXT>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xE6</MEM_ADDR>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>CADRC7</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>CADRC6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>CADRC5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>CADRC4</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>CADRC3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>CADRC2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CADRC1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CADRC0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </CADRC>
    </COULOMB_COUNTER>
    <TIMER_COUNTER_0>
      <LIST>[TCCR0A:TCCR0B:TCNT0H:TCNT0L:OCR0A:OCR0B:TIMSK0:TIFR0]</LIST>
      <LINK>[TCNT0H:TCNT0L]</LINK>
      <ICON>io_timer.bmp</ICON>
      <ID>timer8_megaD</ID>
      <TEXT/>
      <TCCR0A>
        <NAME>TCCR0A</NAME>
        <DESCRIPTION>Timer/Counter0 Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x24</IO_ADDR>
        <MEM_ADDR>0x44</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>TCW0</NAME>
          <DESCRIPTION>Timer/Counter Width</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>ICEN0</NAME>
          <DESCRIPTION>Input Capture Mode Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>ICNC0</NAME>
          <DESCRIPTION>Input Capture Noise Canceler</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>ICES0</NAME>
          <DESCRIPTION>Input Capture Edge Select</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>ICS0</NAME>
          <DESCRIPTION>Input Capture Select</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT0>
          <NAME>WGM00</NAME>
          <DESCRIPTION>Clock Select0 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCCR0A>
      <TCCR0B>
        <NAME>TCCR0B</NAME>
        <DESCRIPTION>Timer/Counter0 Control Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x25</IO_ADDR>
        <MEM_ADDR>0x45</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT2>
          <NAME>CS02</NAME>
          <DESCRIPTION>Clock Select0 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>CS01</NAME>
          <DESCRIPTION>Clock Select0 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>CS00</NAME>
          <DESCRIPTION>Clock Select0 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCCR0B>
      <TCNT0H>
        <NAME>TCNT0H</NAME>
        <DESCRIPTION>Timer Counter 0 High Byte</DESCRIPTION>
        <TEXT>The Timer/Counter0 is realized as an up-counter with read and write access. If the Timer/Counter0 is written and a clock source is present, the Timer/Counter0 continues counting in the clock cycle following the write operation.</TEXT>
        <IO_ADDR>0x27</IO_ADDR>
        <MEM_ADDR>0x47</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>TCNT0H7</NAME>
          <DESCRIPTION>Timer Counter 0 bit 7</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>TCNT0H6</NAME>
          <DESCRIPTION>Timer Counter 0 bit 6</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>TCNT0H5</NAME>
          <DESCRIPTION>Timer Counter 0 bit 5</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>TCNT0H4</NAME>
          <DESCRIPTION>Timer Counter 0 bit 4</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>TCNT0H3</NAME>
          <DESCRIPTION>Timer Counter 0 bit 3</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>TCNT0H2</NAME>
          <DESCRIPTION>Timer Counter 0 bit 2</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>TCNT0H1</NAME>
          <DESCRIPTION>Timer Counter 0 bit 1</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TCNT0H0</NAME>
          <DESCRIPTION>Timer Counter 0 bit 0</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCNT0H>
      <TCNT0L>
        <NAME>TCNT0L</NAME>
        <DESCRIPTION>Timer Counter 0 Low Byte</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x26</IO_ADDR>
        <MEM_ADDR>0x46</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>TCNT0L7</NAME>
          <DESCRIPTION>Timer Counter 0 bit 6 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>TCNT0L6</NAME>
          <DESCRIPTION>Timer Counter 0 bit 6 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>TCNT0L5</NAME>
          <DESCRIPTION>Timer Counter 0 bit 5 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>TCNT0L4</NAME>
          <DESCRIPTION>Timer Counter 0 bit 4 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>TCNT0L3</NAME>
          <DESCRIPTION>Timer Counter 0 bit 3 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>TCNT0L2</NAME>
          <DESCRIPTION>Timer Counter 0 bit 2 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>TCNT0L1</NAME>
          <DESCRIPTION>Timer Counter 0 bit 1 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TCNT0L0</NAME>
          <DESCRIPTION>Timer Counter 0 bit 0 Low byte</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TCNT0L>
      <OCR0A>
        <NAME>OCR0A</NAME>
        <DESCRIPTION>Output compare Register A</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x28</IO_ADDR>
        <MEM_ADDR>0x48</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>OCR0A7</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>OCR0A6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>OCR0A5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>OCR0A4</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>OCR0A3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCR0A2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCR0A1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OCR0A0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </OCR0A>
      <OCR0B>
        <NAME>OCR0B</NAME>
        <DESCRIPTION>Output compare Register B</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x29</IO_ADDR>
        <MEM_ADDR>0x49</MEM_ADDR>
        <ICON>io_timer.bmp</ICON>
        <DISPLAY_BITS>N</DISPLAY_BITS>
        <BIT7>
          <NAME>OCR0B7</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT6>
          <NAME>OCR0B6</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT6>
        <BIT5>
          <NAME>OCR0B5</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT5>
        <BIT4>
          <NAME>OCR0B4</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT4>
        <BIT3>
          <NAME>OCR0B3</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCR0B2</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCR0B1</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>OCR0B0</NAME>
          <DESCRIPTION/>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </OCR0B>
      <TIMSK0>
        <NAME>TIMSK0</NAME>
        <DESCRIPTION>Timer/Counter Interrupt Mask Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0x6E</MEM_ADDR>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>ICIE0</NAME>
          <DESCRIPTION>Timer/Counter n Input Capture Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCIE0B</NAME>
          <DESCRIPTION>Output Compare Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCIE0A</NAME>
          <DESCRIPTION>Output Compare Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TOIE0</NAME>
          <DESCRIPTION>Overflow Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TIMSK0>
      <TIFR0>
        <NAME>TIFR0</NAME>
        <DESCRIPTION>Timer/Counter Interrupt Flag register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>0x15</IO_ADDR>
        <MEM_ADDR>0x35</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_flag.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT3>
          <NAME>ICF0</NAME>
          <DESCRIPTION>Timer/Counter Interrupt Flag Register</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT3>
        <BIT2>
          <NAME>OCF0B</NAME>
          <DESCRIPTION>Output Compare Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT2>
        <BIT1>
          <NAME>OCF0A</NAME>
          <DESCRIPTION>Output Compare Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>TOV0</NAME>
          <DESCRIPTION>Overflow Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </TIFR0>
    </TIMER_COUNTER_0>
    <VOLTAGE_REGULATOR>
      <LIST>[ROCR]</LIST>
      <LINK/>
      <ICON>io_analo.bmp</ICON>
      <ID/>
      <TEXT/>
      <ROCR>
        <NAME>ROCR</NAME>
        <DESCRIPTION>Regulator Operating Condition Register</DESCRIPTION>
        <TEXT/>
        <IO_ADDR>NA</IO_ADDR>
        <MEM_ADDR>0xC8</MEM_ADDR>
        <WRITE_INTRUSIVE/>
        <ICON>io_analo.bmp</ICON>
        <DISPLAY_BITS>Y</DISPLAY_BITS>
        <BIT7>
          <NAME>ROCS</NAME>
          <DESCRIPTION>ROC Status</DESCRIPTION>
          <TEXT/>
          <ACCESS>R</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT7>
        <BIT1>
          <NAME>ROCWIF</NAME>
          <DESCRIPTION>ROC Warning Interrupt Flag</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT1>
        <BIT0>
          <NAME>ROCWIE</NAME>
          <DESCRIPTION>ROC Warning Interrupt Enable</DESCRIPTION>
          <TEXT/>
          <ACCESS>RW</ACCESS>
          <INIT_VAL>0</INIT_VAL>
        </BIT0>
      </ROCR>
    </VOLTAGE_REGULATOR>
  </IO_MODULE>
  <ICE_SETTINGS>
    <MODULE_LIST>[JTAGICEmkII:STK500_2:AVRDragon:AVRISPmkII:SIMULATOR:AVRONE:SIMULATOR2]</MODULE_LIST>
    <JTAGICEmkII>
      <ID>0x9310</ID>
      <Interface>DebugWire</Interface>
<!--Bit 0 in byte 0 is I/O location, bit 7 in byte 7 is I/O location 63-->
      <ucRead>0x7F,0x01,0xE0,0xF0,0xFB,0x3F,0xB8,0xE0</ucRead>
      <ucWrite>0x37,0x01,0x00,0xE0,0xFB,0x1F,0xA8,0xE0</ucWrite>
      <ucReadShadow>0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00</ucReadShadow>
      <ucWriteShadow>0X00,0X00,0X00,0X00,0X00,0X00,0X00,0X00</ucWriteShadow>
<!--Bit 0 in byte 0 is extended I/O location, bit 7 in byte 7 is I/O location 63-->
      <ucExtRead>0x53,0xC2,0x00,0x57,0x33,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x03,0x00,0x7F,0x03,0xED,0x7F</ucExtRead>
      <ucExtWrite>0x50,0xC2,0x00,0x50,0x33,0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x70,0x00,0xED,0x3F</ucExtWrite>
      <ucExtReadShadow>0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00</ucExtReadShadow>
      <ucExtWriteShadow>0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00</ucExtWriteShadow>
<!--Register locations etc.-->
      <ucIDRAddress>0x00</ucIDRAddress>
      <ucSPMCAddress>0x57</ucSPMCAddress>
      <ucRAMPZAddress>0x00</ucRAMPZAddress>
      <ulFlashPageSize>0x80</ulFlashPageSize>
      <ulEepromPageSize>0x04</ulEepromPageSize>
      <ulBootAddress>0</ulBootAddress>
      <BootAddress11>0</BootAddress11>
      <BootAddress10>0</BootAddress10>
      <BootAddress01>0</BootAddress01>
      <BootAddress00>0</BootAddress00>
      <ucUpperExtIOLoc>0xFE</ucUpperExtIOLoc>
      <ulFlashSize>0x4000</ulFlashSize>
      <ulRegStart>0x00,32</ulRegStart>
      <ulIoStart>0x20,64</ulIoStart>
<!--Other stuff-->
      <DWENmaskExt>0x00</DWENmaskExt>
      <DWENmaskHigh>0x00</DWENmaskHigh>
      <DWENmaskLow>0x10</DWENmaskLow>
      <SPIENmaskExt>0x00</SPIENmaskExt>
      <SPIENmaskHigh>0x00</SPIENmaskHigh>
      <SPIENmaskLow>0x20</SPIENmaskLow>
      <ucEepromInst>0xBD,0xF2,0xBD,0xE1,0xBB,0xCF,0xB4,0x00,0xBE,0x01,0xB6,0x01,0xBC,0x00,0xBB,0xBF,0x99,0xF9,0xBB,0xAF</ucEepromInst>
      <ucFlashInst>0xB6,0x01,0x11</ucFlashInst>
      <ucSPHaddr>0x3E</ucSPHaddr>
      <ucSPLaddr>0x3D</ucSPLaddr>
      <DWdatareg>0x31</DWdatareg>
      <DWbasePC>0x00</DWbasePC>
      <Osccalshared>0x00</Osccalshared>
      <ucAllowFullPageBitstream>0x00</ucAllowFullPageBitstream>
      <uiStartSmallestBootLoaderSection>0x00</uiStartSmallestBootLoaderSection>
      <ucUseJTAGID>0x00</ucUseJTAGID>
      <EECRAddress>0x3F</EECRAddress>
    </JTAGICEmkII>
    <STK500_2>
      <IspEnterProgMode>
        <timeout>200</timeout>
        <stabDelay>100</stabDelay>
        <cmdexeDelay>25</cmdexeDelay>
        <synchLoops>32</synchLoops>
        <byteDelay>0</byteDelay>
        <pollIndex>3</pollIndex>
        <pollValue>0x53</pollValue>
      </IspEnterProgMode>
      <IspLeaveProgMode>
        <preDelay>1</preDelay>
        <postDelay>1</postDelay>
      </IspLeaveProgMode>
      <IspChipErase>
        <eraseDelay>20</eraseDelay>
        <pollMethod>1</pollMethod>
      </IspChipErase>
      <IspProgramFlash>
        <mode>0x41</mode>
        <blockSize>128</blockSize>
        <delay>10</delay>
        <cmd1>0x40</cmd1>
        <cmd2>0x4C</cmd2>
        <cmd3>0x00</cmd3>
        <pollVal1>0x00</pollVal1>
        <pollVal2>0x00</pollVal2>
      </IspProgramFlash>
      <IspProgramEeprom>
        <mode>0x41</mode>
        <blockSize>4</blockSize>
        <delay>20</delay>
        <cmd1>0xC1</cmd1>
        <cmd2>0xC2</cmd2>
        <cmd3>0x00</cmd3>
        <pollVal1>0x00</pollVal1>
        <pollVal2>0x00</pollVal2>
      </IspProgramEeprom>
      <IspReadFlash>
        <blockSize>256</blockSize>
      </IspReadFlash>
      <IspReadEeprom>
        <blockSize>256</blockSize>
      </IspReadEeprom>
      <IspReadFuse>
        <pollIndex>4</pollIndex>
      </IspReadFuse>
      <IspReadLock>
        <pollIndex>4</pollIndex>
      </IspReadLock>
      <IspReadSign>
        <pollIndex>4</pollIndex>
      </IspReadSign>
      <IspReadOsccal>
        <pollIndex>4</pollIndex>
      </IspReadOsccal>
      <HvspControlStack>0x4C 0x0C 0x1C 0x2C 0x3C 0x64 0x74 0x66 0x68 0x78 0x68 0x68 0x7A 0x6A 0x68 0x78 0x78 0x7D 0x6D 0x0C 0x80 0x40 0x20 0x10 0x11 0x08 0x04 0x02 0x03 0x08 0x04 0x0F</HvspControlStack>
      <HvspEnterProgMode>
        <stabDelay>100</stabDelay>
        <cmdexeDelay>0</cmdexeDelay>
        <synchCycles>6</synchCycles>
        <latchCycles>1</latchCycles>
        <toggleVtg>1</toggleVtg>
        <powoffDelay>25</powoffDelay>
        <resetDelay1>1</resetDelay1>
        <resetDelay2>70</resetDelay2>
      </HvspEnterProgMode>
      <HvspLeaveProgMode>
        <stabDelay>101</stabDelay>
        <resetDelay>26</resetDelay>
      </HvspLeaveProgMode>
      <HvspChipErase>
        <pollTimeout>40</pollTimeout>
        <eraseTime>1</eraseTime>
      </HvspChipErase>
      <HvspProgramFlash>
        <mode>0x0D</mode>
        <blockSize>256</blockSize>
        <pollTimeout>6</pollTimeout>
      </HvspProgramFlash>
      <HvspReadFlash>
        <blockSize>256</blockSize>
      </HvspReadFlash>
      <HvspProgramEeprom>
        <mode>0x05</mode>
        <blockSize>256</blockSize>
        <pollTimeout>5</pollTimeout>
      </HvspProgramEeprom>
      <HvspReadEeprom>
        <blockSize>256</blockSize>
      </HvspReadEeprom>
      <HvspProgramFuse>
        <pollTimeout>25</pollTimeout>
      </HvspProgramFuse>
      <HvspProgramLock>
        <pollTimeout>25</pollTimeout>
      </HvspProgramLock>
    </STK500_2>
    <AVRDragon/>
    <AVRISPmkII/>
    <SIMULATOR>
      <CoreID>AVRSimCoreV2.SimCoreV2</CoreID>
      <MemoryID>AVRSimMemory8bit.SimMemory8bit</MemoryID>
      <InterruptID>AVRSimInterrupt.SimInterrupt</InterruptID>
      <NmbIOModules>13</NmbIOModules>
      <EEINTERRUPT>0x28</EEINTERRUPT>
      <EEAR_EXTRA_BIT>0</EEAR_EXTRA_BIT>
      <PORTA>
        <ID>AVRSimIOPort.SimIOPort</ID>
        <TOGGLE_PIN>Y</TOGGLE_PIN>
      </PORTA>
      <PORTB>
        <ID>AVRSimIOPort.SimIOPort</ID>
        <TOGGLE_PIN>Y</TOGGLE_PIN>
      </PORTB>
      <PORTC>
        <ID>AVRSimIOPort.SimIOPort</ID>
        <TOGGLE_PIN>N</TOGGLE_PIN>
      </PORTC>
      <EXTINT0>
        <ID>AVRSimIOExtInterrupt.SimIOExtInterrupt</ID>
        <IntVector>0x0006</IntVector>
        <EnableIOAdr>0x1D</EnableIOAdr>
        <EnableMask>0x01</EnableMask>
        <FlagIOAdr>0x1c</FlagIOAdr>
        <FlagMask>0x01</FlagMask>
        <ExtPinIOAdr>0x00</ExtPinIOAdr>
        <ExtPinMask>0x01</ExtPinMask>
        <SenseIOAdr>0x69</SenseIOAdr>
        <SenseMask>0x03</SenseMask>
      </EXTINT0>
      <EXTINT1>
        <ID>AVRSimIOExtInterrupt.SimIOExtInterrupt</ID>
        <IntVector>0x0008</IntVector>
        <EnableIOAdr>0x1D</EnableIOAdr>
        <EnableMask>0x02</EnableMask>
        <FlagIOAdr>0x1C</FlagIOAdr>
        <FlagMask>0x02</FlagMask>
        <ExtPinIOAdr>0x03</ExtPinIOAdr>
        <ExtPinMask>0x04</ExtPinMask>
        <SenseIOAdr>0x69</SenseIOAdr>
        <SenseMask>0x0c</SenseMask>
      </EXTINT1>
      <EXTINT2>
        <ID>AVRSimIOExtInterrupt.SimIOExtInterrupt</ID>
        <IntVector>0x000a</IntVector>
        <EnableIOAdr>0x1D</EnableIOAdr>
        <EnableMask>0x04</EnableMask>
        <FlagIOAdr>0x1C</FlagIOAdr>
        <FlagMask>0x04</FlagMask>
        <ExtPinIOAdr>0x03</ExtPinIOAdr>
        <ExtPinMask>0x08</ExtPinMask>
        <SenseIOAdr>0x69</SenseIOAdr>
        <SenseMask>0x30</SenseMask>
      </EXTINT2>
      <SPM>
        <ID>AVRSimIOSPM.SimIOSPM</ID>
        <IntVector>N/A</IntVector>
      </SPM>
      <DEFAULT_SETTINGS>
        <HighFuse>0xFD</HighFuse>
        <ExtendedFuse>0xff</ExtendedFuse>
        <LowFuse>0xDF</LowFuse>
        <Lockbit>0xff</Lockbit>
      </DEFAULT_SETTINGS>
      <TIMER0>
        <ID>AvrMasterTimer.MasterTimer</ID>
<!--Experimental basic support. Need a new combi 8/16 bit timer here.-->
        <OvfVector>0x1c</OvfVector>
        <CompAVector>0x18</CompAVector>
        <CompBVector>0x1a</CompBVector>
        <IcpVector>0x16</IcpVector>
        <IcPinAdr>0x08</IcPinAdr>
        <IcPinMask>0x01</IcPinMask>
        <Prescaler>1:8:64:256:1024</Prescaler>
      </TIMER0>
      <TIMER1>
        <ID>AvrMasterTimer.MasterTimer</ID>
<!--Experimental basic support. Need a new combi 8/16 bit timer here.-->
        <OvfVector>0x14</OvfVector>
        <CompAVector>0x10</CompAVector>
        <CompBVector>0x12</CompBVector>
        <IcpVector>0x0e</IcpVector>
        <IcPinAdr>0xf3</IcPinAdr>
        <IcPinMask>0x1f</IcPinMask>
        <Prescaler>1:8:64:256:1024</Prescaler>
      </TIMER1>
      <SPI>
        <ID>AVRSimIOSpi.SimIOSpi</ID>
        <IntVector>0x1e</IntVector>
        <SCKAddress>0x03</SCKAddress>
        <SCKMask>0x02</SCKMask>
        <MISOAddress>0x03</MISOAddress>
        <MISOMask>0x08</MISOMask>
        <MOSIAddress>0x03</MOSIAddress>
        <MOSIMask>0x04</MOSIMask>
        <SSAddress>0x03</SSAddress>
        <DIRAddress>0x04</DIRAddress>
        <SSMask>0x01</SSMask>
      </SPI>
      <ADC>
        <ID>AVRSimADC.SimADC</ID>
        <IntVector>0x20</IntVector>
      </ADC>
    </SIMULATOR>
    <AVRONE>
      <ID>0x9310</ID>
      <Interface>DebugWire</Interface>
    </AVRONE>
    <SIMULATOR2>
      <MODEL>libATmega16HVA2.dll</MODEL>
    </SIMULATOR2>
  </ICE_SETTINGS>
  <V2>
    <templates>
      <module class="FUSE">
        <registers name="FUSE" memspace="FUSE">
          <reg size="1" name="LOW" offset="0x00">
            <bitfield name="WDTON" mask="0x80" text="Watch-dog Timer always on" icon=""/>
            <bitfield name="EESAVE" mask="0x40" text="Preserve EEPROM through the Chip Erase cycle" icon=""/>
            <bitfield name="SPIEN" mask="0x20" text="Serial program downloading (SPI) enabled" icon=""/>
            <bitfield name="DWEN" mask="0x10" text="Debug Wire enable" icon=""/>
            <bitfield name="SELFPRGEN" mask="0x08" text="Self Programming enable" icon=""/>
            <bitfield name="SUT" mask="0x07" text="Select start-up time" icon="" enum="ENUM_SUT"/>
          </reg>
        </registers>
        <enumerator name="ENUM_SUT">
          <enum val="0x00" text="Start-up time 6 CK/14 CK + 4 ms"/>
          <enum val="0x01" text="Start-up time 6 CK/14 CK + 8 ms"/>
          <enum val="0x02" text="Start-up time 6 CK/14 CK + 16 ms"/>
          <enum val="0x03" text="Start-up time 6 CK/14 CK + 32 ms"/>
          <enum val="0x04" text="Start-up time 6 CK/14 CK + 64 ms"/>
          <enum val="0x05" text="Start-up time 6 CK/14 CK + 128 ms"/>
          <enum val="0x06" text="Start-up time 6 CK/14 CK + 256 ms"/>
          <enum val="0x07" text="Start-up time 6 CK/14 CK + 512 ms"/>
        </enumerator>
      </module>
      <module class="LOCKBIT">
        <registers name="LOCKBIT" memspace="LOCKBIT">
          <reg size="1" name="LOCKBIT" offset="0x00">
            <bitfield name="LB" mask="0x03" text="Memory Lock" icon="" enum="ENUM_LB"/>
          </reg>
        </registers>
        <enumerator name="ENUM_LB">
          <enum val="0x00" text="Further programming and verification disabled"/>
          <enum val="0x02" text="Further programming disabled"/>
          <enum val="0x03" text="No memory lock features enabled"/>
        </enumerator>
      </module>
      <module class="AD_CONVERTER" text="">
        <registers name="AD_CONVERTER" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="VADMUX" offset="0x7C" text="The VADC multiplexer Selection Register" icon="io_analo.bmp">
            <bitfield name="VADMUX" mask="0x0F" text="Analog Channel and Gain Selection Bits" icon=""/>
          </reg>
          <reg size="2" name="VADC" offset="0x78" text="VADC Data Register  Bytes" icon="io_analo.bmp" mask="0x0FFF"/>
          <reg size="1" name="VADCSR" offset="0x7A" text="The VADC Control and Status register" icon="io_flag.bmp">
            <bitfield name="VADEN" mask="0x08" text="VADC Enable" icon=""/>
            <bitfield name="VADSC" mask="0x04" text="VADC Satrt Conversion" icon=""/>
            <bitfield name="VADCCIF" mask="0x02" text="VADC Conversion Complete Interrupt Flag" icon=""/>
            <bitfield name="VADCCIE" mask="0x01" text="VADC Conversion Complete Interrupt Enable" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="WATCHDOG" text="">
        <registers name="WATCHDOG" memspace="DATAMEM" text="" icon="io_watch.bmp">
          <reg size="1" name="WDTCSR" offset="0x60" text="Watchdog Timer Control Register" icon="io_flag.bmp">
            <bitfield name="WDIF" mask="0x80" text="Watchdog Timeout Interrupt Flag" icon=""/>
            <bitfield name="WDIE" mask="0x40" text="Watchdog Timeout Interrupt Enable" icon=""/>
            <bitfield name="WDP" mask="0x27" text="Watchdog Timer Prescaler Bits" icon="" enum="WDOG_TIMER_PRESCALE_4BITS"/>
            <bitfield name="WDCE" mask="0x10" text="Watchdog Change Enable" icon=""/>
            <bitfield name="WDE" mask="0x08" text="Watch Dog Enable" icon=""/>
          </reg>
        </registers>
        <enumerator name="WDOG_TIMER_PRESCALE_4BITS">
          <enum val="0x00" text="Oscillator Cycles 2K"/>
          <enum val="0x01" text="Oscillator Cycles 4K"/>
          <enum val="0x02" text="Oscillator Cycles 8K"/>
          <enum val="0x03" text="Oscillator Cycles 16K"/>
          <enum val="0x04" text="Oscillator Cycles 32K"/>
          <enum val="0x05" text="Oscillator Cycles 64K"/>
          <enum val="0x06" text="Oscillator Cycles 128K"/>
          <enum val="0x07" text="Oscillator Cycles 256K"/>
          <enum val="0x08" text="Oscillator Cycles 512K"/>
          <enum val="0x09" text="Oscillator Cycles 1024K"/>
        </enumerator>
      </module>
      <module class="BANDGAP" text="">
        <registers name="BANDGAP" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="BGCRR" offset="0xD1" text="Bandgap Calibration of Resistor Ladder" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BGCCR" offset="0xD0" text="Bandgap Calibration Register" icon="io_analo.bmp">
            <bitfield name="BGD" mask="0x80" text="Setting the BGD bit to one will disable the bandgap voltage reference. This bit must be cleared before enabling CC-ADC or V-ADC, and must remain unset while either ADC is enabled." icon=""/>
            <bitfield name="BGCC" mask="0x3F" text="BG Calibration of PTAT Current Bits" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="EXTERNAL_INTERRUPT" text="">
        <registers name="EXTERNAL_INTERRUPT" memspace="DATAMEM" text="" icon="io_ext.bmp">
          <reg size="1" name="EICRA" offset="0x69" text="External Interrupt Control Register" icon="io_flag.bmp">
            <bitfield name="ISC2" mask="0x30" text="External Interrupt Sense Control 2 Bits" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
            <bitfield name="ISC1" mask="0x0C" text="External Interrupt Sense Control 1 Bits" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
            <bitfield name="ISC0" mask="0x03" text="External Interrupt Sense Control 0 Bits" icon="" enum="INTERRUPT_SENSE_CONTROL"/>
          </reg>
          <reg size="1" name="EIMSK" offset="0x3D" text="External Interrupt Mask Register" icon="io_flag.bmp">
            <bitfield name="INT" mask="0x07" text="External Interrupt Request 2 Enable" icon=""/>
          </reg>
          <reg size="1" name="EIFR" offset="0x3C" text="External Interrupt Flag Register" icon="io_flag.bmp">
            <bitfield name="INTF" mask="0x07" text="External Interrupt Flags" icon=""/>
          </reg>
        </registers>
        <enumerator name="INTERRUPT_SENSE_CONTROL">
          <enum val="0x00" text="Low Level of INTX"/>
          <enum val="0x01" text="Reserved"/>
          <enum val="0x02" text="Falling Edge of INTX"/>
          <enum val="0x03" text="Rising Edge of INTX"/>
        </enumerator>
      </module>
      <module class="PORTC" text="">
        <registers name="PORTC" memspace="DATAMEM" text="" icon="io_port.bmp">
          <reg size="1" name="PORTC" offset="0x28" text="Port C Data Register" icon="io_port.bmp" mask="0x01"/>
          <reg size="1" name="PINC" offset="0x26" text="Port C Input Pins" icon="io_port.bmp" mask="0x01"/>
        </registers>
      </module>
      <module class="PORTA" text="">
        <registers name="PORTA" memspace="DATAMEM" text="" icon="io_port.bmp">
          <reg size="1" name="PORTA" offset="0x22" text="Port A Data Register" icon="io_port.bmp" mask="0x03"/>
          <reg size="1" name="DDRA" offset="0x21" text="Port A Data Direction Register" icon="io_flag.bmp" mask="0x03"/>
          <reg size="1" name="PINA" offset="0x20" text="Port A Input Pins" icon="io_port.bmp" mask="0x03"/>
        </registers>
      </module>
      <module class="FET" text="">
        <registers name="FET" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="FCSR" offset="0xF0" text="FET Control and Status Register" icon="io_analo.bmp">
            <bitfield name="DUVRD" mask="0x08" text="Deep Under-Voltage Recovery Disable" icon=""/>
            <bitfield name="CPS" mask="0x04" text="Current Protection Status" icon=""/>
            <bitfield name="DFE" mask="0x02" text="Discharge FET Enable" icon=""/>
            <bitfield name="CFE" mask="0x01" text="Charge FET Enable" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="SPI" text="">
        <registers name="SPI" memspace="DATAMEM" text="" icon="io_com.bmp">
          <reg size="1" name="SPCR" offset="0x4c" text="SPI Control Register" icon="io_flag.bmp">
            <bitfield name="SPIE" mask="0x80" text="SPI Interrupt Enable" icon=""/>
            <bitfield name="SPE" mask="0x40" text="SPI Enable" icon=""/>
            <bitfield name="DORD" mask="0x20" text="Data Order" icon=""/>
            <bitfield name="MSTR" mask="0x10" text="Master/Slave Select" icon=""/>
            <bitfield name="CPOL" mask="0x08" text="Clock polarity" icon=""/>
            <bitfield name="CPHA" mask="0x04" text="Clock Phase" icon=""/>
            <bitfield name="SPR" mask="0x03" text="SPI Clock Rate Selects" icon="" enum="COMM_SCK_RATE_3BIT"/>
          </reg>
          <reg size="1" name="SPSR" offset="0x4d" text="SPI Status Register" icon="io_flag.bmp">
            <bitfield name="SPIF" mask="0x80" text="SPI Interrupt Flag" icon=""/>
            <bitfield name="WCOL" mask="0x40" text="Write Collision Flag" icon=""/>
            <bitfield name="SPI2X" mask="0x01" text="Double SPI Speed Bit" icon=""/>
          </reg>
          <reg size="1" name="SPDR" offset="0x4e" text="SPI Data Register" icon="io_com.bmp" mask="0xFF"/>
        </registers>
        <enumerator name="COMM_SCK_RATE_3BIT">
          <enum val="0x00" text="fosc/4"/>
          <enum val="0x01" text="fosc/16"/>
          <enum val="0x02" text="fosc/64"/>
          <enum val="0x03" text="fosc/128"/>
          <enum val="0x04" text="fosc/2"/>
          <enum val="0x05" text="fosc/8"/>
          <enum val="0x06" text="fosc/32"/>
          <enum val="0x07" text="fosc/64"/>
        </enumerator>
      </module>
      <module class="BOOT_LOAD" text="">
        <registers name="BOOT_LOAD" memspace="DATAMEM" text="" icon="io_cpu.bmp">
          <reg size="1" name="SPMCSR" offset="0x57" text="Store Program Memory Control and Status Register" icon="io_flag.bmp">
            <bitfield name="SIGRD" mask="0x20" text="Signature Row Read" icon=""/>
            <bitfield name="CTPB" mask="0x10" text="Clear Temporary Page Buffer" icon=""/>
            <bitfield name="RFLB" mask="0x08" text="Read Fuse and Lock Bits" icon=""/>
            <bitfield name="PGWRT" mask="0x04" text="Page Write" icon=""/>
            <bitfield name="PGERS" mask="0x02" text="Page Erase" icon=""/>
            <bitfield name="SPMEN" mask="0x01" text="Store Program Memory Enable" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="PORTB" text="">
        <registers name="PORTB" memspace="DATAMEM" text="" icon="io_port.bmp">
          <reg size="1" name="PORTB" offset="0x25" text="Data Register, Port B" icon="io_port.bmp" mask="0x0F"/>
          <reg size="1" name="DDRB" offset="0x24" text="Data Direction Register, Port B" icon="io_flag.bmp" mask="0x0F"/>
          <reg size="1" name="PINB" offset="0x23" text="Input Pins, Port B" icon="io_port.bmp" mask="0x0F"/>
        </registers>
      </module>
      <module class="CPU" text="">
        <registers name="CPU" memspace="DATAMEM" text="" icon="io_cpu.bmp">
          <reg size="1" name="SREG" offset="0x5F" text="Status Register" icon="io_sreg.bmp">
            <bitfield name="I" mask="0x80" text="Global Interrupt Enable" icon=""/>
            <bitfield name="T" mask="0x40" text="Bit Copy Storage" icon=""/>
            <bitfield name="H" mask="0x20" text="Half Carry Flag" icon=""/>
            <bitfield name="S" mask="0x10" text="Sign Bit" icon=""/>
            <bitfield name="V" mask="0x08" text="Two's Complement Overflow Flag" icon=""/>
            <bitfield name="N" mask="0x04" text="Negative Flag" icon=""/>
            <bitfield name="Z" mask="0x02" text="Zero Flag" icon=""/>
            <bitfield name="C" mask="0x01" text="Carry Flag" icon=""/>
          </reg>
          <reg size="2" name="SP" offset="0x5D" text="Stack Pointer " icon="io_sph.bmp" mask="0x03FF"/>
          <reg size="1" name="MCUCR" offset="0x55" text="MCU Control Register" icon="io_flag.bmp">
            <bitfield name="CKOE" mask="0x20" text="Clock Output Enable" icon=""/>
            <bitfield name="PUD" mask="0x10" text="Pull-up disable" icon=""/>
          </reg>
          <reg size="1" name="MCUSR" offset="0x54" text="MCU Status Register" icon="io_flag.bmp">
            <bitfield name="OCDRF" mask="0x10" text="OCD Reset Flag" icon=""/>
            <bitfield name="WDRF" mask="0x08" text="Watchdog Reset Flag" icon=""/>
            <bitfield name="BODRF" mask="0x04" text="Brown-out Reset Flag" icon=""/>
            <bitfield name="EXTRF" mask="0x02" text="External Reset Flag" icon=""/>
            <bitfield name="PORF" mask="0x01" text="Power-on reset flag" icon=""/>
          </reg>
          <reg size="1" name="FOSCCAL" offset="0x66" text="Fast Oscillator Calibration Value" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="OSICSR" offset="0x37" text="Oscillator Sampling Interface Control and Status Register" icon="io_cpu.bmp">
            <bitfield name="OSISEL0" mask="0x10" text="Oscillator Sampling Interface Select 0" icon=""/>
            <bitfield name="OSIST" mask="0x02" text="Oscillator Sampling Interface Status" icon=""/>
            <bitfield name="OSIEN" mask="0x01" text="Oscillator Sampling Interface Enable" icon=""/>
          </reg>
          <reg size="1" name="SMCR" offset="0x53" text="Sleep Mode Control Register" icon="io_cpu.bmp">
            <bitfield name="SM" mask="0x0E" text="Sleep Mode Select bits" icon=""/>
            <bitfield name="SE" mask="0x01" text="Sleep Enable" icon=""/>
          </reg>
          <reg size="1" name="GPIOR2" offset="0x4B" text="General Purpose IO Register 2" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="GPIOR1" offset="0x4A" text="General Purpose IO Register 1" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="GPIOR0" offset="0x3E" text="General Purpose IO Register 0" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="DIDR0" offset="0x7E" text="Digital Input Disable Register" icon="io_cpu.bmp">
            <bitfield name="PA1DID" mask="0x02" text="When this bit is written logic one, the digital input buffer of the corresponding V_ADC pin is disabled." icon=""/>
            <bitfield name="PA0DID" mask="0x01" text="When this bit is written logic one, the digital input buffer of the corresponding V_ADC pin is disabled." icon=""/>
          </reg>
          <reg size="1" name="PRR0" offset="0x64" text="Power Reduction Register 0" icon="io_cpu.bmp">
            <bitfield name="PRVRM" mask="0x20" text="Power Reduction Voltage Regulator Monitor" icon=""/>
            <bitfield name="PRSPI" mask="0x08" text="Power reduction SPI" icon=""/>
            <bitfield name="PRTIM1" mask="0x04" text="Power Reduction Timer/Counter1" icon=""/>
            <bitfield name="PRTIM0" mask="0x02" text="Power Reduction Timer/Counter0" icon=""/>
            <bitfield name="PRVADC" mask="0x01" text="Power Reduction V-ADC" icon=""/>
          </reg>
          <reg size="1" name="CLKPR" offset="0x61" text="Clock Prescale Register" icon="io_cpu.bmp">
            <bitfield name="CLKPCE" mask="0x80" text="Clock Prescaler Change Enable" icon=""/>
            <bitfield name="CLKPS" mask="0x03" text="Clock Prescaler Select Bits" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="BATTERY_PROTECTION" text="">
        <registers name="BATTERY_PROTECTION" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="BPPLR" offset="0xFE" text="Battery Protection Parameter Lock Register" icon="io_analo.bmp">
            <bitfield name="BPPLE" mask="0x02" text="Battery Protection Parameter Lock Enable" icon=""/>
            <bitfield name="BPPL" mask="0x01" text="Battery Protection Parameter Lock" icon=""/>
          </reg>
          <reg size="1" name="BPCR" offset="0xFD" text="Battery Protection Control Register" icon="io_analo.bmp">
            <bitfield name="SCD" mask="0x10" text="Short Circuit Protection Disabled" icon=""/>
            <bitfield name="DOCD" mask="0x08" text="Discharge Over-current Protection Disabled" icon=""/>
            <bitfield name="COCD" mask="0x04" text="Charge Over-current Protection Disabled" icon=""/>
            <bitfield name="DHCD" mask="0x02" text="Discharge High-current Protection Disable" icon=""/>
            <bitfield name="CHCD" mask="0x01" text="Charge High-current Protection Disable" icon=""/>
          </reg>
          <reg size="1" name="BPHCTR" offset="0xFC" text="Battery Protection Short-current Timing Register" icon="io_analo.bmp" mask="0x3F"/>
          <reg size="1" name="BPOCTR" offset="0xFB" text="Battery Protection Over-current Timing Register" icon="io_analo.bmp" mask="0x3F"/>
          <reg size="1" name="BPSCTR" offset="0xFA" text="Battery Protection Short-current Timing Register" icon="io_analo.bmp" mask="0x7F"/>
          <reg size="1" name="BPCHCD" offset="0xF9" text="Battery Protection Charge-High-current Detection Level Register" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BPDHCD" offset="0xF8" text="Battery Protection Discharge-High-current Detection Level Register" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BPCOCD" offset="0xF7" text="Battery Protection Charge-Over-current Detection Level Register" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BPDOCD" offset="0xF6" text="Battery Protection Discharge-Over-current Detection Level Register" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BPSCD" offset="0xF5" text="Battery Protection Short-Circuit Detection Level Register" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="BPIFR" offset="0xF3" text="Battery Protection Interrupt Flag Register" icon="io_analo.bmp">
            <bitfield name="SCIF" mask="0x10" text="Short-circuit Protection Activated Interrupt Flag" icon=""/>
            <bitfield name="DOCIF" mask="0x08" text="Discharge Over-current Protection Activated Interrupt Flag" icon=""/>
            <bitfield name="COCIF" mask="0x04" text="Charge Over-current Protection Activated Interrupt Flag" icon=""/>
            <bitfield name="DHCIF" mask="0x02" text="Disharge High-current Protection Activated Interrupt" icon=""/>
            <bitfield name="CHCIF" mask="0x01" text="Charge High-current Protection Activated Interrupt" icon=""/>
          </reg>
          <reg size="1" name="BPIMSK" offset="0xF2" text="Battery Protection Interrupt Mask Register" icon="io_analo.bmp">
            <bitfield name="SCIE" mask="0x10" text="Short-circuit Protection Activated Interrupt Enable" icon=""/>
            <bitfield name="DOCIE" mask="0x08" text="Discharge Over-current Protection Activated Interrupt Enable" icon=""/>
            <bitfield name="COCIE" mask="0x04" text="Charge Over-current Protection Activated Interrupt Enable" icon=""/>
            <bitfield name="DHCIE" mask="0x02" text="Discharger High-current Protection Activated Interrupt" icon=""/>
            <bitfield name="CHCIE" mask="0x01" text="Charger High-current Protection Activated Interrupt" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="EEPROM" text="">
        <registers name="EEPROM" memspace="DATAMEM" text="" icon="io_cpu.bmp">
          <reg size="1" name="EEAR" offset="0x41" text="EEPROM Read/Write Access" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="EEDR" offset="0x40" text="EEPROM Data Register" icon="io_cpu.bmp" mask="0xFF"/>
          <reg size="1" name="EECR" offset="0x3F" text="EEPROM Control Register" icon="io_flag.bmp">
            <bitfield name="EEPM" mask="0x30" text="" icon="" enum="EEP_MODE"/>
            <bitfield name="EERIE" mask="0x08" text="EEProm Ready Interrupt Enable" icon=""/>
            <bitfield name="EEMPE" mask="0x04" text="EEPROM Master Write Enable" icon=""/>
            <bitfield name="EEPE" mask="0x02" text="EEPROM Write Enable" icon=""/>
            <bitfield name="EERE" mask="0x01" text="EEPROM Read Enable" icon=""/>
          </reg>
        </registers>
        <enumerator name="EEP_MODE">
          <enum val="0x00" text="Erase and Write in one operation"/>
          <enum val="0x01" text="Erase Only"/>
          <enum val="0x02" text="Write Only"/>
        </enumerator>
      </module>
      <module class="TIMER_COUNTER_1" text="">
        <registers name="TIMER_COUNTER_1" memspace="DATAMEM" text="" icon="io_timer.bmp">
          <reg size="1" name="TCCR1B" offset="0x81" text="Timer/Counter1 Control Register B" icon="io_flag.bmp">
            <bitfield name="CS" mask="0x07" text="Clock Select1 bis" icon="" lsb="10"/>
          </reg>
          <reg size="1" name="TCCR1A" offset="0x80" text="Timer/Counter 1 Control Register A" icon="io_flag.bmp">
            <bitfield name="TCW1" mask="0x80" text="Timer/Counter Width" icon=""/>
            <bitfield name="ICEN1" mask="0x40" text="Input Capture Mode Enable" icon=""/>
            <bitfield name="ICNC1" mask="0x20" text="Input Capture Noise Canceler" icon=""/>
            <bitfield name="ICES1" mask="0x10" text="Input Capture Edge Select" icon=""/>
            <bitfield name="ICS1" mask="0x08" text="Input Capture Select" icon=""/>
            <bitfield name="WGM10" mask="0x01" text="Waveform Generation Mode" icon=""/>
          </reg>
          <reg size="2" name="TCNT1" offset="0x84" text="Timer Counter 1  Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
          <reg size="1" name="OCR1A" offset="0x88" text="Output Compare Register 1A" icon="io_timer.bmp" mask="0xFF"/>
          <reg size="1" name="OCR1B" offset="0x89" text="Output Compare Register B" icon="io_timer.bmp" mask="0xFF"/>
          <reg size="1" name="TIMSK1" offset="0x6F" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
            <bitfield name="ICIE1" mask="0x08" text="Timer/Counter n Input Capture Interrupt Enable" icon=""/>
            <bitfield name="OCIE1B" mask="0x04" text="Timer/Counter1 Output Compare B Interrupt Enable" icon=""/>
            <bitfield name="OCIE1A" mask="0x02" text="Timer/Counter1 Output Compare A Interrupt Enable" icon=""/>
            <bitfield name="TOIE1" mask="0x01" text="Timer/Counter1 Overflow Interrupt Enable" icon=""/>
          </reg>
          <reg size="1" name="TIFR1" offset="0x36" text="Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
            <bitfield name="ICF1" mask="0x08" text="Timer/Counter 1 Input Capture Flag" icon=""/>
            <bitfield name="OCF1B" mask="0x04" text="Timer/Counter1 Output Compare Flag B" icon=""/>
            <bitfield name="OCF1A" mask="0x02" text="Timer/Counter1 Output Compare Flag A" icon=""/>
            <bitfield name="TOV1" mask="0x01" text="Timer/Counter1 Overflow Flag" icon=""/>
          </reg>
          <reg size="1" name="GTCCR" offset="0x43" text="General Timer/Counter Control Register" icon="io_flag.bmp">
            <bitfield name="TSM" mask="0x80" text="Timer/Counter Synchronization Mode" icon=""/>
            <bitfield name="PSRSYNC" mask="0x01" text="Prescaler Reset" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="COULOMB_COUNTER" text="">
        <registers name="COULOMB_COUNTER" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="CADCSRA" offset="0xE4" text="CC-ADC Control and Status Register A" icon="io_analo.bmp">
            <bitfield name="CADEN" mask="0x80" text="When the CADEN bit is cleared (zero), the CC-ADC is disabled. When the CADEN bit is set (one), the CC-ADC will continuously measure the voltage drop over the external sense resistor RSENSE. In Power-down, only the Regular Current detection is active. In Power-off, the CC-ADC is always disabled." icon=""/>
            <bitfield name="CADPOL" mask="0x40" text="" icon=""/>
            <bitfield name="CADUB" mask="0x20" text="CC_ADC Update Busy" icon=""/>
            <bitfield name="CADAS" mask="0x18" text="CC_ADC Accumulate Current Select Bits" icon=""/>
            <bitfield name="CADSI" mask="0x06" text="The CADSI bits determine the current sampling interval for the Regular Current detection in Power-down mode. The actual settings remain to be determined." icon=""/>
            <bitfield name="CADSE" mask="0x01" text="When the CADSE bit is written to one, the ongoing CC-ADC conversion is aborted, and the CC-ADC enters Regular Current detection mode." icon=""/>
          </reg>
          <reg size="1" name="CADCSRB" offset="0xE5" text="CC-ADC Control and Status Register B" icon="io_analo.bmp">
            <bitfield name="CADACIE" mask="0x40" text="" icon=""/>
            <bitfield name="CADRCIE" mask="0x20" text="Regular Current Interrupt Enable" icon=""/>
            <bitfield name="CADICIE" mask="0x10" text="CAD Instantenous Current Interrupt Enable" icon=""/>
            <bitfield name="CADACIF" mask="0x04" text="CC-ADC Accumulate Current Interrupt Flag" icon=""/>
            <bitfield name="CADRCIF" mask="0x02" text="CC-ADC Accumulate Current Interrupt Flag" icon=""/>
            <bitfield name="CADICIF" mask="0x01" text="CC-ADC Instantaneous Current Interrupt Flag" icon=""/>
          </reg>
          <reg size="2" name="CADIC" offset="0xE8" text="CC-ADC Instantaneous Current" icon="io_analo.bmp" mask="0xFFFF"/>
          <reg size="1" name="CADAC3" offset="0xE3" text="ADC Accumulate Current" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="CADAC2" offset="0xE2" text="ADC Accumulate Current" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="CADAC1" offset="0xE1" text="ADC Accumulate Current" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="CADAC0" offset="0xE0" text="ADC Accumulate Current" icon="io_analo.bmp" mask="0xFF"/>
          <reg size="1" name="CADRC" offset="0xE6" text="CC-ADC Regular Current" icon="io_analo.bmp" mask="0xFF"/>
        </registers>
      </module>
      <module class="TIMER_COUNTER_0" text="">
        <registers name="TIMER_COUNTER_0" memspace="DATAMEM" text="" icon="io_timer.bmp">
          <reg size="1" name="TCCR0A" offset="0x44" text="Timer/Counter0 Control Register" icon="io_flag.bmp">
            <bitfield name="TCW0" mask="0x80" text="Timer/Counter Width" icon=""/>
            <bitfield name="ICEN0" mask="0x40" text="Input Capture Mode Enable" icon=""/>
            <bitfield name="ICNC0" mask="0x20" text="Input Capture Noise Canceler" icon=""/>
            <bitfield name="ICES0" mask="0x10" text="Input Capture Edge Select" icon=""/>
            <bitfield name="ICS0" mask="0x08" text="Input Capture Select" icon=""/>
            <bitfield name="WGM00" mask="0x01" text="Clock Select0 bit 0" icon=""/>
          </reg>
          <reg size="1" name="TCCR0B" offset="0x45" text="Timer/Counter0 Control Register" icon="io_flag.bmp">
            <bitfield name="CS02" mask="0x04" text="Clock Select0 bit 2" icon=""/>
            <bitfield name="CS01" mask="0x02" text="Clock Select0 bit 1" icon=""/>
            <bitfield name="CS00" mask="0x01" text="Clock Select0 bit 0" icon=""/>
          </reg>
          <reg size="2" name="TCNT0" offset="0x46" text="Timer Counter 0  Bytes" icon="io_timer.bmp" mask="0xFFFF"/>
          <reg size="1" name="OCR0A" offset="0x48" text="Output compare Register A" icon="io_timer.bmp" mask="0xFF"/>
          <reg size="1" name="OCR0B" offset="0x49" text="Output compare Register B" icon="io_timer.bmp" mask="0xFF"/>
          <reg size="1" name="TIMSK0" offset="0x6E" text="Timer/Counter Interrupt Mask Register" icon="io_flag.bmp">
            <bitfield name="ICIE0" mask="0x08" text="Timer/Counter n Input Capture Interrupt Enable" icon=""/>
            <bitfield name="OCIE0B" mask="0x04" text="Output Compare Interrupt Enable" icon=""/>
            <bitfield name="OCIE0A" mask="0x02" text="Output Compare Interrupt Enable" icon=""/>
            <bitfield name="TOIE0" mask="0x01" text="Overflow Interrupt Enable" icon=""/>
          </reg>
          <reg size="1" name="TIFR0" offset="0x35" text="Timer/Counter Interrupt Flag register" icon="io_flag.bmp">
            <bitfield name="ICF0" mask="0x08" text="Timer/Counter Interrupt Flag Register" icon=""/>
            <bitfield name="OCF0B" mask="0x04" text="Output Compare Flag" icon=""/>
            <bitfield name="OCF0A" mask="0x02" text="Output Compare Flag" icon=""/>
            <bitfield name="TOV0" mask="0x01" text="Overflow Flag" icon=""/>
          </reg>
        </registers>
      </module>
      <module class="VOLTAGE_REGULATOR" text="">
        <registers name="VOLTAGE_REGULATOR" memspace="DATAMEM" text="" icon="io_analo.bmp">
          <reg size="1" name="ROCR" offset="0xC8" text="Regulator Operating Condition Register" icon="io_analo.bmp">
            <bitfield name="ROCS" mask="0x80" text="ROC Status" icon=""/>
            <bitfield name="ROCWIF" mask="0x02" text="ROC Warning Interrupt Flag" icon=""/>
            <bitfield name="ROCWIE" mask="0x01" text="ROC Warning Interrupt Enable" icon=""/>
          </reg>
        </registers>
      </module>
    </templates>
    <modules>
      <module implements="AD_CONVERTER" name="AD_CONVERTER">
        <registers implements="AD_CONVERTER" name="AD_CONVERTER" offset="0x00" text=""/>
      </module>
      <module implements="WATCHDOG" name="WATCHDOG">
        <registers implements="WATCHDOG" name="WATCHDOG" offset="0x00" text=""/>
      </module>
      <module implements="BANDGAP" name="BANDGAP">
        <registers implements="BANDGAP" name="BANDGAP" offset="0x00" text=""/>
      </module>
      <module implements="EXTERNAL_INTERRUPT" name="EXTERNAL_INTERRUPT">
        <registers implements="EXTERNAL_INTERRUPT" name="EXTERNAL_INTERRUPT" offset="0x00" text=""/>
      </module>
      <module implements="PORTC" name="PORTC">
        <registers implements="PORTC" name="PORTC" offset="0x00" text=""/>
      </module>
      <module implements="PORTA" name="PORTA">
        <registers implements="PORTA" name="PORTA" offset="0x00" text=""/>
      </module>
      <module implements="FET" name="FET">
        <registers implements="FET" name="FET" offset="0x00" text=""/>
      </module>
      <module implements="SPI" name="SPI">
        <registers implements="SPI" name="SPI" offset="0x00" text=""/>
      </module>
      <module implements="BOOT_LOAD" name="BOOT_LOAD">
        <registers implements="BOOT_LOAD" name="BOOT_LOAD" offset="0x00" text=""/>
      </module>
      <module implements="PORTB" name="PORTB">
        <registers implements="PORTB" name="PORTB" offset="0x00" text=""/>
      </module>
      <module implements="CPU" name="CPU">
        <registers implements="CPU" name="CPU" offset="0x00" text=""/>
      </module>
      <module implements="BATTERY_PROTECTION" name="BATTERY_PROTECTION">
        <registers implements="BATTERY_PROTECTION" name="BATTERY_PROTECTION" offset="0x00" text=""/>
      </module>
      <module implements="EEPROM" name="EEPROM">
        <registers implements="EEPROM" name="EEPROM" offset="0x00" text=""/>
      </module>
      <module implements="TIMER_COUNTER_1" name="TIMER_COUNTER_1">
        <registers implements="TIMER_COUNTER_1" name="TIMER_COUNTER_1" offset="0x00" text=""/>
      </module>
      <module implements="COULOMB_COUNTER" name="COULOMB_COUNTER">
        <registers implements="COULOMB_COUNTER" name="COULOMB_COUNTER" offset="0x00" text=""/>
      </module>
      <module implements="TIMER_COUNTER_0" name="TIMER_COUNTER_0">
        <registers implements="TIMER_COUNTER_0" name="TIMER_COUNTER_0" offset="0x00" text=""/>
      </module>
      <module implements="VOLTAGE_REGULATOR" name="VOLTAGE_REGULATOR">
        <registers implements="VOLTAGE_REGULATOR" name="VOLTAGE_REGULATOR" offset="0x00" text=""/>
      </module>
    </modules>
    <fuses>
      <fuse implements="FUSE" name="FUSE">
        <registers implements="FUSE" name="FUSE"/>
      </fuse>
    </fuses>
    <lockbits>
      <lockbit implements="LOCKBIT" name="LOCKBIT">
        <registers implements="LOCKBIT" name="LOCKBIT"/>
      </lockbit>
    </lockbits>
  </V2>
</AVRPART>

