<?xml version="1.0" encoding="utf-8" standalone="no"?>
<device schemaVersion="1.1" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" noNamespaceSchemaLocation="CMSIS-SVD.xsd">
  <vendor>Puya</vendor>
  <vendorID>Puya</vendorID>
  <name>PY32F040xx</name>
  <series>PY32F0</series>
  <version>1.0.0</version>
  <description>Arm 32-bit Cortex-M0+ Microcontroller based device, CPU clock up to 48 MHz.</description>
  <cpu>
    <name>CM0+</name>
    <revision>r0p1</revision>
    <endian>little</endian>
    <mpuPresent>false</mpuPresent>
    <fpuPresent>false</fpuPresent>
    <nvicPrioBits>4</nvicPrioBits>
    <vendorSystickConfig>false</vendorSystickConfig>
  </cpu>
  <addressUnitBits>8</addressUnitBits>
  <width>32</width>
  <size>32</size>
  <access>read-write</access>
  <resetValue>0x0</resetValue>
  <resetMask>0xFFFFFFFF</resetMask>
  <peripherals>
    <peripheral>
      <name>ADC</name>
      <description>Analog to Digital Converter</description>
      <groupName>ADC</groupName>
      <baseAddress>0x40012400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>ADC_COMP</name>
        <description>ADC and COMP Interrupt through EXTI Lines 17 and 18</description>
        <value>12</value>
      </interrupt>
      <registers>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>AWD</name>
              <description>desc AWD</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>EOC</name>
              <description>desc EOC</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>JEOC</name>
              <description>desc JEOC</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>JSTRT</name>
              <description>desc JSTRT</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>STRT</name>
              <description>desc STRT</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>OVER</name>
              <description>desc OVER</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>AWDCH</name>
              <description>desc AWDCH</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>EOCIE</name>
              <description>desc EOCIE</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>AWDIE</name>
              <description>desc AWDIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>JEOCIE</name>
              <description>desc JEOCIE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>SCAN</name>
              <description>desc SCAN</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>AWDSGL</name>
              <description>desc AWDSGL</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>JAUTO</name>
              <description>desc JAUTO</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>DISCEN</name>
              <description>desc DISCEN</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>JDISCEN</name>
              <description>desc JDISCEN</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>DISCNUM</name>
              <description>desc DISCNUM</description>
              <bitRange>[15:13]</bitRange>
            </field>
            <field>
              <name>JAWDEN</name>
              <description>desc JAWDEN</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>AWDEN</name>
              <description>desc AWDEN</description>
              <bitRange>[23:23]</bitRange>
            </field>
            <field>
              <name>RESSEL</name>
              <description>desc RESSEL</description>
              <bitRange>[25:24]</bitRange>
            </field>
            <field>
              <name>ADSTP</name>
              <description>desc ADSTP</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>OVETIE</name>
              <description>desc OVETIE</description>
              <bitRange>[29:29]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>ADON</name>
              <description>desc ADON</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CONT</name>
              <description>desc CONT</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CAL</name>
              <description>desc CAL</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>RSTCAL</name>
              <description>desc RSTCAL</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DMA</name>
              <description>desc DMA</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>ALIGN</name>
              <description>desc ALIGN</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>JEXTSEL</name>
              <description>desc JEXTSEL</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>JEXTTRIG</name>
              <description>desc JEXTTRIG</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>EXTSEL</name>
              <description>desc EXTSEL</description>
              <bitRange>[19:17]</bitRange>
            </field>
            <field>
              <name>EXTTRIG</name>
              <description>desc EXTTRIG</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>JSWSTART</name>
              <description>desc JSWSTART</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>SWSTART</name>
              <description>desc SWSTART</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>TSVREFE</name>
              <description>desc TSVREFE</description>
              <bitRange>[23:23]</bitRange>
            </field>
            <field>
              <name>VERFBUFFERE</name>
              <description>desc VERFBUFFERE</description>
              <bitRange>[25:25]</bitRange>
            </field>
            <field>
              <name>VERFBUFFERSEL</name>
              <description>desc VERFBUFFERSEL</description>
              <bitRange>[27:26]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMPR1</name>
          <description>desc SMPR1</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>SMP20</name>
              <description>desc SMP20</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>SMP21</name>
              <description>desc SMP21</description>
              <bitRange>[5:3]</bitRange>
            </field>
            <field>
              <name>SMP22</name>
              <description>desc SMP22</description>
              <bitRange>[8:6]</bitRange>
            </field>
            <field>
              <name>SMP23</name>
              <description>desc SMP23</description>
              <bitRange>[11:9]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMPR2</name>
          <description>desc SMPR2</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>SMP10</name>
              <description>desc SMP10</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>SMP11</name>
              <description>desc SMP11</description>
              <bitRange>[5:3]</bitRange>
            </field>
            <field>
              <name>SMP12</name>
              <description>desc SMP12</description>
              <bitRange>[8:6]</bitRange>
            </field>
            <field>
              <name>SMP13</name>
              <description>desc SMP13</description>
              <bitRange>[11:9]</bitRange>
            </field>
            <field>
              <name>SMP14</name>
              <description>desc SMP14</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>SMP15</name>
              <description>desc SMP15</description>
              <bitRange>[17:15]</bitRange>
            </field>
            <field>
              <name>SMP16</name>
              <description>desc SMP16</description>
              <bitRange>[20:18]</bitRange>
            </field>
            <field>
              <name>SMP17</name>
              <description>desc SMP17</description>
              <bitRange>[23:21]</bitRange>
            </field>
            <field>
              <name>SMP18</name>
              <description>desc SMP18</description>
              <bitRange>[26:24]</bitRange>
            </field>
            <field>
              <name>SMP19</name>
              <description>desc SMP19</description>
              <bitRange>[29:27]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMPR3</name>
          <description>desc SMPR2</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>SMP0</name>
              <description>desc SMP0</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>SMP1</name>
              <description>desc SMP1</description>
              <bitRange>[5:3]</bitRange>
            </field>
            <field>
              <name>SMP2</name>
              <description>desc SMP2</description>
              <bitRange>[8:6]</bitRange>
            </field>
            <field>
              <name>SMP3</name>
              <description>desc SMP3</description>
              <bitRange>[11:9]</bitRange>
            </field>
            <field>
              <name>SMP4</name>
              <description>desc SMP4</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>SMP5</name>
              <description>desc SMP5</description>
              <bitRange>[17:15]</bitRange>
            </field>
            <field>
              <name>SMP6</name>
              <description>desc SMP6</description>
              <bitRange>[20:18]</bitRange>
            </field>
            <field>
              <name>SMP7</name>
              <description>desc SMP7</description>
              <bitRange>[23:21]</bitRange>
            </field>
            <field>
              <name>SMP8</name>
              <description>desc SMP8</description>
              <bitRange>[26:24]</bitRange>
            </field>
            <field>
              <name>SMP9</name>
              <description>desc SMP9</description>
              <bitRange>[29:27]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JOFR1</name>
          <description>desc JOFR1</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>JOFFSET1</name>
              <description>desc JOFFSET1</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JOFR2</name>
          <description>desc JOFR2</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>JOFFSET2</name>
              <description>desc JOFFSET2</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JOFR3</name>
          <description>desc JOFR3</description>
          <addressOffset>0x20</addressOffset>
          <fields>
            <field>
              <name>JOFFSET3</name>
              <description>desc JOFFSET3</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JOFR4</name>
          <description>desc JOFR4</description>
          <addressOffset>0x24</addressOffset>
          <fields>
            <field>
              <name>JOFFSET4</name>
              <description>desc JOFFSET4</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>HTR</name>
          <description>desc HTR</description>
          <addressOffset>0x28</addressOffset>
          <fields>
            <field>
              <name>HT</name>
              <description>desc HT</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>LTR</name>
          <description>desc LTR</description>
          <addressOffset>0x2C</addressOffset>
          <fields>
            <field>
              <name>LT</name>
              <description>desc LT</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SQR1</name>
          <description>desc SQR1</description>
          <addressOffset>0x30</addressOffset>
          <fields>
            <field>
              <name>SQ13</name>
              <description>desc SQ13</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>SQ14</name>
              <description>desc SQ14</description>
              <bitRange>[9:5]</bitRange>
            </field>
            <field>
              <name>SQ15</name>
              <description>desc SQ15</description>
              <bitRange>[14:10]</bitRange>
            </field>
            <field>
              <name>SQ16</name>
              <description>desc SQ16</description>
              <bitRange>[19:15]</bitRange>
            </field>
            <field>
              <name>L</name>
              <description>desc L</description>
              <bitRange>[23:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SQR2</name>
          <description>desc SQR2</description>
          <addressOffset>0x34</addressOffset>
          <fields>
            <field>
              <name>SQ7</name>
              <description>desc SQ7</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>SQ8</name>
              <description>desc SQ8</description>
              <bitRange>[9:5]</bitRange>
            </field>
            <field>
              <name>SQ9</name>
              <description>desc SQ9</description>
              <bitRange>[14:10]</bitRange>
            </field>
            <field>
              <name>SQ10</name>
              <description>desc SQ10</description>
              <bitRange>[19:15]</bitRange>
            </field>
            <field>
              <name>SQ11</name>
              <description>desc SQ11</description>
              <bitRange>[24:20]</bitRange>
            </field>
            <field>
              <name>SQ12</name>
              <description>desc SQ12</description>
              <bitRange>[29:25]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SQR3</name>
          <description>desc SQR3</description>
          <addressOffset>0x38</addressOffset>
          <fields>
            <field>
              <name>SQ1</name>
              <description>desc SQ1</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>SQ2</name>
              <description>desc SQ2</description>
              <bitRange>[9:5]</bitRange>
            </field>
            <field>
              <name>SQ3</name>
              <description>desc SQ3</description>
              <bitRange>[14:10]</bitRange>
            </field>
            <field>
              <name>SQ4</name>
              <description>desc SQ4</description>
              <bitRange>[19:15]</bitRange>
            </field>
            <field>
              <name>SQ5</name>
              <description>desc SQ5</description>
              <bitRange>[24:20]</bitRange>
            </field>
            <field>
              <name>SQ6</name>
              <description>desc SQ6</description>
              <bitRange>[29:25]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JSQR</name>
          <description>desc JSQR</description>
          <addressOffset>0x3C</addressOffset>
          <fields>
            <field>
              <name>JSQ1</name>
              <description>desc JSQ1</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>JSQ2</name>
              <description>desc JSQ2</description>
              <bitRange>[9:5]</bitRange>
            </field>
            <field>
              <name>JSQ3</name>
              <description>desc JSQ3</description>
              <bitRange>[14:10]</bitRange>
            </field>
            <field>
              <name>JSQ4</name>
              <description>desc JSQ4</description>
              <bitRange>[19:15]</bitRange>
            </field>
            <field>
              <name>JL</name>
              <description>desc JL</description>
              <bitRange>[23:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>JDR1</name>
          <description>desc JDR1</description>
          <addressOffset>0x40</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>JDR1</name>
              <description>desc JDR1</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>JDR2</name>
          <description>desc JDR2</description>
          <addressOffset>0x44</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>JDR2</name>
              <description>desc JDR2</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>JDR3</name>
          <description>desc JDR3</description>
          <addressOffset>0x48</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>JDR3</name>
              <description>desc JDR3</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>JDR4</name>
          <description>desc JDR4</description>
          <addressOffset>0x4C</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>JDR4</name>
              <description>desc JDR4</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DR</name>
          <description>desc DR</description>
          <addressOffset>0x50</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>DATA</name>
              <description>desc DATA</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCSR</name>
          <description>desc CCSR</description>
          <addressOffset>0x54</addressOffset>
          <fields>
            <field>
              <name>CALSEL</name>
              <description>desc CALSEL</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CALSMP</name>
              <description>desc CALSMP</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>CALBYP</name>
              <description>desc CALBYP</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>CALSET</name>
              <description>desc CALSET</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>OFFSUC</name>
              <description>desc OFFSUC</description>
              <bitRange>[29:29]</bitRange>
            </field>
            <field>
              <name>CALFAIL</name>
              <description>desc CALFAIL</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>CALON</name>
              <description>desc CALON</description>
              <bitRange>[31:31]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>COMP1</name>
      <description>Comparator 1</description>
      <groupName>COMP</groupName>
      <baseAddress>0x40010200</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x10</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>ADC_COMP</name>
        <description>ADC and COMP Interrupt through EXTI Lines 17 and 18</description>
        <value>12</value>
      </interrupt>
      <registers>
        <register>
          <name>CSR</name>
          <displayName>CSR</displayName>
          <description>COMP control and status register</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>COMP enable bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>INMSEL</name>
              <description>Comparator signal selector for inverting input INM</description>
              <bitRange>[5:2]</bitRange>
            </field>
            <field>
              <name>INPSEL</name>
              <description>Comparator signal selector for non-inverting input</description>
              <bitRange>[9:6]</bitRange>
            </field>
            <field>
              <name>WINMODE</name>
              <description>Comparator non-inverting input selector for window mode</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>POLARITY</name>
              <description>Comparator polarity selector</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>HYST</name>
              <description>Comparator hysteresis enable selector</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>PWRMODE</name>
              <description>Comparator power mode selector</description>
              <bitRange>[19:18]</bitRange>
            </field>
            <field>
              <name>VCDIV</name>
              <description>VCDIV</description>
              <bitRange>[25:20]</bitRange>
            </field>
            <field>
              <name>VCDIV_EN</name>
              <description>VCDIV_EN</description>
              <bitRange>[26:26]</bitRange>
            </field>
            <field>
              <name>VCSEL</name>
              <description>VCSEL</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>COMP_OUT</name>
              <description>Comparator output status</description>
              <bitRange>[30:30]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>FR</name>
          <displayName>FR</displayName>
          <description>Comparator Filter register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>FLTEN1</name>
              <description>Filter enable bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>FLTCNT1</name>
              <description>Comparator filter and counter</description>
              <bitRange>[31:16]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>COMP2</name>
      <description>Comparator2</description>
      <groupName>COMP</groupName>
      <baseAddress>0x40010210</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x10</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>ADC_COMP</name>
        <description>ADC and COMP Interrupt through EXTI Lines 17 and 18</description>
        <value>12</value>
      </interrupt>
      <registers>
        <register>
          <name>CSR</name>
          <displayName>CSR</displayName>
          <description>COMP control and status register</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>COMP enable bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>HYST</name>
              <description>Comparator hysteresis enable selector</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>INMSEL</name>
              <description>Comparator signal selector for inverting input INM</description>
              <bitRange>[5:2]</bitRange>
            </field>
            <field>
              <name>INPSEL</name>
              <description>Comparator signal selector for non-inverting input</description>
              <bitRange>[9:6]</bitRange>
            </field>
            <field>
              <name>WINMODE</name>
              <description>Comparator non-inverting input selector for window mode</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>POLARITY</name>
              <description>Comparator polarity selector</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>PWRMODE</name>
              <description>Comparator power mode selector</description>
              <bitRange>[19:18]</bitRange>
            </field>
            <field>
              <name>COMP_OUT</name>
              <description>Comparator output status</description>
              <bitRange>[30:30]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>FR</name>
          <displayName>FR</displayName>
          <description>Comparator Filter register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>FLTEN2</name>
              <description>Filter enable bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>FLTCNT2</name>
              <description>Comparator filter and counter</description>
              <bitRange>[31:16]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>CRC</name>
      <description>CRC calculation unit</description>
      <groupName>CRC</groupName>
      <baseAddress>0x40023000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>DR</name>
          <displayName>DR</displayName>
          <description>Data register</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0xFFFFFFFF</resetValue>
          <fields>
            <field>
              <name>DR</name>
              <description>Data Register</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IDR</name>
          <displayName>IDR</displayName>
          <description>Independent Data register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>IDR</name>
              <description>Independent Data register</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR</name>
          <displayName>CR</displayName>
          <description>Control register</description>
          <addressOffset>0x8</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>RESET</name>
              <description>Reset bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>CTC</name>
      <description>desc CTC</description>
      <groupName>CTC</groupName>
      <baseAddress>0x40006C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>RCC_CTC</name>
        <description>RCC and CTC global Interrupts</description>
        <value>4</value>
      </interrupt>
      <registers>
        <register>
          <name>CTL0</name>
          <description>desc CTL0</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0x4000</resetValue>
          <fields>
            <field>
              <name>CKOKIE</name>
              <description>desc CKOKIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CKWARNIE</name>
              <description>desc CKWARNIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>ERRIE</name>
              <description>desc ERRIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>EREFIE</name>
              <description>desc EREFIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CNTEN</name>
              <description>desc CNTEN</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>AUTOTRIM</name>
              <description>desc AUTOTRIM</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>SWREFPUL</name>
              <description>desc SWREFPUL</description>
              <bitRange>[7:7]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TRIMVALUE</name>
              <description>desc TRIMVALUE</description>
              <bitRange>[14:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CTL1</name>
          <description>desc CTL1</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x2022BB7F</resetValue>
          <fields>
            <field>
              <name>RLVALUE</name>
              <description>desc RLVALUE</description>
              <bitRange>[15:0]</bitRange>
            </field>
            <field>
              <name>CKLIM</name>
              <description>desc CKLIM</description>
              <bitRange>[23:16]</bitRange>
            </field>
            <field>
              <name>REFPSC</name>
              <description>desc REFPSC</description>
              <bitRange>[26:24]</bitRange>
            </field>
            <field>
              <name>REFSEL</name>
              <description>desc REFSEL</description>
              <bitRange>[29:28]</bitRange>
            </field>
            <field>
              <name>REFPOL</name>
              <description>desc REFPOL</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x8</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>CKOKIF</name>
              <description>desc CKOKIF</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>CKWARNIF</name>
              <description>desc CKWARNIF</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ERRIF</name>
              <description>desc ERRIF</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>EREFIF</name>
              <description>desc EREFIF</description>
              <bitRange>[3:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>CKERR</name>
              <description>desc CKERR</description>
              <bitRange>[8:8]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>REFMISS</name>
              <description>desc REFMISS</description>
              <bitRange>[9:9]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TRIMERR</name>
              <description>desc TRIMERR</description>
              <bitRange>[10:10]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>REFDIR</name>
              <description>desc REFDIR</description>
              <bitRange>[15:15]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>REFCAP</name>
              <description>desc REFCAP</description>
              <bitRange>[31:16]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>INTC</name>
          <description>desc INTC</description>
          <addressOffset>0xC</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>CKOKIC</name>
              <description>desc CKOKIC</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CKWARNIC</name>
              <description>desc CKWARNIC</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>ERRIC</name>
              <description>desc ERRIC</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>EREFIC</name>
              <description>desc EREFIC</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>DBGMCU</name>
      <description>Debug support</description>
      <groupName>DBGMCU</groupName>
      <baseAddress>0x40015800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>IDCODE</name>
          <displayName>IDCODE</displayName>
          <description>MCU Device ID Code Register</description>
          <addressOffset>0x0</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>REV_ID</name>
              <description>REV_ID</description>
              <bitRange>[30:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR</name>
          <displayName>CR</displayName>
          <description>Debug MCU Configuration Register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>DBG_SLEEP</name>
              <description>Debug Sleep Mode</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>DBG_STOP</name>
              <description>Debug Stop Mode</description>
              <bitRange>[1:1]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APB_FZ1</name>
          <displayName>APB_FZ1</displayName>
          <description>APB Freeze Register1</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>DBG_TIMER2_STOP</name>
              <description>Debug Timer 2 stopped when Core is halted</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER3_STOP</name>
              <description>Debug Timer 3 stopped when Core is halted</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER6_STOP</name>
              <description>Debug Timer 6 stopped when Core is halted</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER7_STOP</name>
              <description>Debug Timer 7 stopped when Core is halted</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>DBG_RTC_STOP</name>
              <description>Debug RTC stopped when Core is halted</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>DBG_WWDG_STOP</name>
              <description>Debug Window Wachdog stopped when Core is halted</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>DBG_IWDG_STOP</name>
              <description>Debug Independent Wachdog stopped when Core is halted</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>DBG_I2C1_SMBUS_TIMEOUT</name>
              <description>DBG_I2C1_SMBUS_TIMEOUT</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>DBG_I2C2_SMBUS_TIMEOUT</name>
              <description>DBG_I2C2_SMBUS_TIMEOUT</description>
              <bitRange>[22:22]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>DBG_LPTIM_STOP</name>
              <description>Debug LPTIM stopped when Core is halted</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APB_FZ2</name>
          <displayName>APB_FZ2</displayName>
          <description>APB Freeze Register2</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>DBG_TIMER1_STOP</name>
              <description>Debug Timer 1 stopped when Core is halted</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER14_STOP</name>
              <description>Debug Timer 14 stopped when Core is halted</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER15_STOP</name>
              <description>Debug Timer 15 stopped when Core is halted</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER16_STOP</name>
              <description>Debug Timer 16 stopped when Core is halted</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>DBG_TIMER17_STOP</name>
              <description>Debug Timer 17 stopped when Core is halted</description>
              <bitRange>[18:18]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>DIV</name>
      <description>Hardware Divider</description>
      <groupName>DIV</groupName>
      <baseAddress>0x40023800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>DEND</name>
          <displayName>DEND</displayName>
          <description>Dividend</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>DEND</name>
              <description>Dividend</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SOR</name>
          <displayName>SOR</displayName>
          <description>Divisor</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>SOR</name>
              <description>Divisor</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>QUOT</name>
          <displayName>QUOT</displayName>
          <description>Quotient</description>
          <addressOffset>0x8</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>QUOT</name>
              <description>Quotient</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>REMA</name>
          <displayName>REMA</displayName>
          <description>Remainder</description>
          <addressOffset>0xC</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>REMA</name>
              <description>Remainder</description>
              <bitRange>[31:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>SIGN</name>
          <displayName>SIGN</displayName>
          <description>des SIGN</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>DIV_SIGN</name>
              <description>des DIV_SIGN</description>
              <bitRange>[0:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>STAT</name>
          <displayName>STAT</displayName>
          <description>des SIGN</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>DIV_END</name>
              <description>des DIV_END</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>DIV_ZERO</name>
              <description>des DIV_ZERO</description>
              <bitRange>[1:1]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>DMA</name>
      <description>Direct memory access</description>
      <groupName>DMA</groupName>
      <baseAddress>0x40020000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>DMA1_Channel1</name>
        <description>DMA1 Channel 1 Interrupt</description>
        <value>9</value>
      </interrupt>
      <interrupt>
        <name>DMA1_Channel2_3</name>
        <description>DMA1 Channel 2 and Channel 3 Interrupt</description>
        <value>10</value>
      </interrupt>
      <interrupt>
        <name>DMA1_Channel4_5_6_7</name>
        <description>DMA1 Channel 4, 5, 6, 7 Interrupts</description>
        <value>11</value>
      </interrupt>
      <registers>
        <register>
          <name>ISR</name>
          <description>desc ISR</description>
          <addressOffset>0x0</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>GIF1</name>
              <description>desc GIF1</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF1</name>
              <description>desc TCIF1</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF1</name>
              <description>desc HTIF1</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF1</name>
              <description>desc TEIF1</description>
              <bitRange>[3:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF2</name>
              <description>desc GIF2</description>
              <bitRange>[4:4]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF2</name>
              <description>desc TCIF2</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF2</name>
              <description>desc HTIF2</description>
              <bitRange>[6:6]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF2</name>
              <description>desc TEIF2</description>
              <bitRange>[7:7]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF3</name>
              <description>desc GIF3</description>
              <bitRange>[8:8]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF3</name>
              <description>desc TCIF3</description>
              <bitRange>[9:9]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF3</name>
              <description>desc HTIF3</description>
              <bitRange>[10:10]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF3</name>
              <description>desc TEIF3</description>
              <bitRange>[11:11]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF4</name>
              <description>desc GIF4</description>
              <bitRange>[12:12]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF4</name>
              <description>desc TCIF4</description>
              <bitRange>[13:13]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF4</name>
              <description>desc HTIF4</description>
              <bitRange>[14:14]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF4</name>
              <description>desc TEIF4</description>
              <bitRange>[15:15]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF5</name>
              <description>desc GIF5</description>
              <bitRange>[16:16]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF5</name>
              <description>desc TCIF5</description>
              <bitRange>[17:17]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF5</name>
              <description>desc HTIF5</description>
              <bitRange>[18:18]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF5</name>
              <description>desc TEIF5</description>
              <bitRange>[19:19]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF6</name>
              <description>desc GIF6</description>
              <bitRange>[20:20]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF6</name>
              <description>desc TCIF6</description>
              <bitRange>[21:21]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF6</name>
              <description>desc HTIF6</description>
              <bitRange>[22:22]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF6</name>
              <description>desc TEIF6</description>
              <bitRange>[23:23]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GIF7</name>
              <description>desc GIF7</description>
              <bitRange>[24:24]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TCIF7</name>
              <description>desc TCIF7</description>
              <bitRange>[25:25]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HTIF7</name>
              <description>desc HTIF7</description>
              <bitRange>[26:26]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TEIF7</name>
              <description>desc TEIF7</description>
              <bitRange>[27:27]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>IFCR</name>
          <description>desc IFCR</description>
          <addressOffset>0x4</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>CGIF1</name>
              <description>desc CGIF1</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF1</name>
              <description>desc CTCIF1</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF1</name>
              <description>desc CHTIF1</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF1</name>
              <description>desc CTEIF1</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF2</name>
              <description>desc CGIF2</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF2</name>
              <description>desc CTCIF2</description>
              <bitRange>[5:5]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF2</name>
              <description>desc CHTIF2</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF2</name>
              <description>desc CTEIF2</description>
              <bitRange>[7:7]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF3</name>
              <description>desc CGIF3</description>
              <bitRange>[8:8]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF3</name>
              <description>desc CTCIF3</description>
              <bitRange>[9:9]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF3</name>
              <description>desc CHTIF3</description>
              <bitRange>[10:10]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF3</name>
              <description>desc CTEIF3</description>
              <bitRange>[11:11]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF4</name>
              <description>desc CGIF4</description>
              <bitRange>[12:12]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF4</name>
              <description>desc CTCIF4</description>
              <bitRange>[13:13]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF4</name>
              <description>desc CHTIF4</description>
              <bitRange>[14:14]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF4</name>
              <description>desc CTEIF4</description>
              <bitRange>[15:15]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF5</name>
              <description>desc CGIF5</description>
              <bitRange>[16:16]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF5</name>
              <description>desc CTCIF5</description>
              <bitRange>[17:17]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF5</name>
              <description>desc CHTIF5</description>
              <bitRange>[18:18]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF5</name>
              <description>desc CTEIF5</description>
              <bitRange>[19:19]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF6</name>
              <description>desc CGIF6</description>
              <bitRange>[20:20]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF6</name>
              <description>desc CTCIF6</description>
              <bitRange>[21:21]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF6</name>
              <description>desc CHTIF6</description>
              <bitRange>[22:22]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF6</name>
              <description>desc CTEIF6</description>
              <bitRange>[23:23]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CGIF7</name>
              <description>desc CGIF7</description>
              <bitRange>[24:24]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTCIF7</name>
              <description>desc CTCIF7</description>
              <bitRange>[25:25]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CHTIF7</name>
              <description>desc CHTIF7</description>
              <bitRange>[26:26]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CTEIF7</name>
              <description>desc CTEIF7</description>
              <bitRange>[27:27]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR1</name>
          <description>desc CNDTR1</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR1</name>
          <description>desc CPAR1</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR1</name>
          <description>desc CMAR1</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR2</name>
          <description>desc CCR2</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR2</name>
          <description>desc CNDTR2</description>
          <addressOffset>0x20</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR2</name>
          <description>desc CPAR2</description>
          <addressOffset>0x24</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR2</name>
          <description>desc CMAR2</description>
          <addressOffset>0x28</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR3</name>
          <description>desc CCR3</description>
          <addressOffset>0x30</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR3</name>
          <description>desc CNDTR3</description>
          <addressOffset>0x34</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR3</name>
          <description>desc CPAR3</description>
          <addressOffset>0x38</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR3</name>
          <description>desc CMAR3</description>
          <addressOffset>0x3C</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR4</name>
          <description>desc CCR4</description>
          <addressOffset>0x44</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR4</name>
          <description>desc CNDTR4</description>
          <addressOffset>0x48</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR4</name>
          <description>desc CPAR4</description>
          <addressOffset>0x4C</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR4</name>
          <description>desc CMAR4</description>
          <addressOffset>0x50</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR5</name>
          <description>desc CCR5</description>
          <addressOffset>0x58</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR5</name>
          <description>desc CNDTR5</description>
          <addressOffset>0x5C</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR5</name>
          <description>desc CPAR5</description>
          <addressOffset>0x60</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR5</name>
          <description>desc CMAR5</description>
          <addressOffset>0x64</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR6</name>
          <description>desc CCR6</description>
          <addressOffset>0x6C</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR6</name>
          <description>desc CNDTR6</description>
          <addressOffset>0x70</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR6</name>
          <description>desc CPAR6</description>
          <addressOffset>0x74</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR6</name>
          <description>desc CMAR6</description>
          <addressOffset>0x78</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR7</name>
          <description>desc CCR7</description>
          <addressOffset>0x80</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>desc EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HTIE</name>
              <description>desc HTIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TEIE</name>
              <description>desc TEIE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CIRC</name>
              <description>desc CIRC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PINC</name>
              <description>desc PINC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MINC</name>
              <description>desc MINC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PSIZE</name>
              <description>desc PSIZE</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MSIZE</name>
              <description>desc MSIZE</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PL</name>
              <description>desc PL</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MEM2MEM</name>
              <description>desc MEM2MEM</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNDTR7</name>
          <description>desc CNDTR7</description>
          <addressOffset>0x84</addressOffset>
          <fields>
            <field>
              <name>NDT</name>
              <description>desc NDT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CPAR7</name>
          <description>desc CPAR7</description>
          <addressOffset>0x88</addressOffset>
          <fields>
            <field>
              <name>PA</name>
              <description>desc PA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CMAR7</name>
          <description>desc CMAR7</description>
          <addressOffset>0x8C</addressOffset>
          <fields>
            <field>
              <name>MA</name>
              <description>desc MA</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>EXTI</name>
      <description>External interrupt/event controller</description>
      <groupName>EXTI</groupName>
      <baseAddress>0x40021800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>PVD</name>
        <description>PVD Interrupt through EXTI Lines 16</description>
        <value>1</value>
      </interrupt>
      <interrupt>
        <name>EXTI0_1</name>
        <description>EXTI Line 0 and 1 Interrupt</description>
        <value>5</value>
      </interrupt>
      <interrupt>
        <name>EXTI2_3</name>
        <description>EXTI Line 2 and 3 Interrupt</description>
        <value>6</value>
      </interrupt>
      <interrupt>
        <name>EXTI4_15</name>
        <description>EXTI Line 4 to 15 Interrupt</description>
        <value>7</value>
      </interrupt>
      <registers>
        <register>
          <name>RTSR</name>
          <displayName>RTSR</displayName>
          <description>EXTI rising trigger selection register</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>RT0</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>RT1</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>RT2</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>RT3</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>RT4</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>RT5</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>RT6</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>RT7</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>RT8</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>RT9</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>RT10</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>RT11</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>RT12</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>RT13</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>RT14</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>RT15</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>RT16</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>RT17</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>RT18</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>RT20</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[20:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>FTSR</name>
          <displayName>FTSR</displayName>
          <description>EXTI falling trigger selection register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>FT0</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>FT1</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>FT2</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>FT3</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>FT4</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>FT5</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>FT6</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>FT7</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>FT8</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>FT9</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>FT10</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>FT11</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>FT12</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>FT13</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>FT14</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>FT15</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>FT16</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>FT17</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>FT18</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>FT20</name>
              <description>Falling trigger event configuration bit of Configurable Event input</description>
              <bitRange>[20:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SWIER</name>
          <displayName>SWIER</displayName>
          <description>EXTI software interrupt event register</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>SWI0</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>SWI1</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>SWI2</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>SWI3</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>SWI4</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>SWI5</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>SWI6</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>SWI7</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>SWI8</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>SWI9</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>SWI10</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>SWI11</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>SWI12</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>SWI13</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>SWI14</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>SWI15</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>SWI16</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>SWI17</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>SWI18</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>SWI20</name>
              <description>Rising trigger event configuration bit of Configurable Event input</description>
              <bitRange>[20:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PR</name>
          <displayName>PR</displayName>
          <description>EXTI pending register</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>PR0</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>PR1</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>PR2</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>PR3</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>PR4</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>PR5</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>PR6</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>PR7</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PR8</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>PR9</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>PR10</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>PR11</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>PR12</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>PR13</name>
              <description>configurable event inputs x rising edge Pending bit</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>PR14</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>PR15</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>PR16</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>PR17</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>PR18</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>PR20</name>
              <description>configurable event inputs x rising edge Pending bit.</description>
              <bitRange>[20:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTICR1</name>
          <displayName>EXTICR1</displayName>
          <description>EXTI external interrupt selection register</description>
          <addressOffset>0x60</addressOffset>
          <fields>
            <field>
              <name>EXTI0</name>
              <description>GPIO port selection</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>EXTI1</name>
              <description>GPIO port selection</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>EXTI2</name>
              <description>GPIO port selection</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>EXTI3</name>
              <description>GPIO port selection</description>
              <bitRange>[25:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTICR2</name>
          <displayName>EXTICR2</displayName>
          <description>EXTI external interrupt selection register</description>
          <addressOffset>0x64</addressOffset>
          <fields>
            <field>
              <name>EXTI4</name>
              <description>GPIO port selection</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>EXTI5</name>
              <description>GPIO port selection</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>EXTI6</name>
              <description>GPIO port selection</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>EXTI7</name>
              <description>GPIO port selection</description>
              <bitRange>[25:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTICR3</name>
          <displayName>EXTICR3</displayName>
          <description>EXTI external interrupt selection register</description>
          <addressOffset>0x68</addressOffset>
          <fields>
            <field>
              <name>EXTI8</name>
              <description>GPIO port selection</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>EXTI9</name>
              <description>GPIO port selection</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>EXTI10</name>
              <description>GPIO port selection</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>EXTI11</name>
              <description>GPIO port selection</description>
              <bitRange>[25:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EXTICR4</name>
          <displayName>EXTICR4</displayName>
          <description>EXTI external interrupt selection register</description>
          <addressOffset>0x6C</addressOffset>
          <fields>
            <field>
              <name>EXTI12</name>
              <description>GPIO port selection</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>EXTI13</name>
              <description>GPIO port selection</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>EXTI14</name>
              <description>GPIO port selection</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>EXTI15</name>
              <description>GPIO port selection</description>
              <bitRange>[25:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IMR</name>
          <displayName>IMR</displayName>
          <description>EXTI CPU wakeup with interrupt mask register</description>
          <addressOffset>0x80</addressOffset>
          <resetValue>0xFFF80000</resetValue>
          <fields>
            <field>
              <name>IM0</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>IM1</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>IM2</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>IM3</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>IM4</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>IM5</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>IM6</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>IM7</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>IM8</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>IM9</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>IM10</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>IM11</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>IM12</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IM13</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>IM14</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>IM15</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>IM16</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IM17</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IM18</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IM19</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IM20</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IM29</name>
              <description>CPU wakeup with interrupt mask on event input</description>
              <bitRange>[29:29]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EMR</name>
          <displayName>EMR</displayName>
          <description>EXTI CPU wakeup with event mask register</description>
          <addressOffset>0x84</addressOffset>
          <fields>
            <field>
              <name>EM0</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>EM1</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>EM2</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>EM3</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>EM4</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>EM5</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>EM6</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>EM7</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>EM8</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>EM9</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>EM10</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>EM11</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>EM12</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>EM13</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>EM14</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>EM15</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>EM16</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>EM17</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>EM18</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>EM19</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>EM20</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>EM29</name>
              <description>CPU wakeup with event mask on event input</description>
              <bitRange>[29:29]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>FLASH</name>
      <description>desc FLASH</description>
      <groupName>FLASH</groupName>
      <baseAddress>0x40022000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>FLASH</name>
        <description>FLASH global Interrupt</description>
        <value>3</value>
      </interrupt>
      <registers>
        <register>
          <name>ACR</name>
          <description>desc ACR</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0x500</resetValue>
          <fields>
            <field>
              <name>LATENCY</name>
              <description>desc LATENCY</description>
              <bitRange>[1:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>KEYR</name>
          <description>desc KEYR</description>
          <addressOffset>0x8</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>KEY</name>
              <description>desc KEY</description>
              <bitRange>[31:0]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>OPTKEYR</name>
          <description>desc OPTKEYR</description>
          <addressOffset>0xC</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>OPTKEY</name>
              <description>desc OPTKEY</description>
              <bitRange>[31:0]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>EOP</name>
              <description>desc EOP</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>WRPERR</name>
              <description>desc WRPERR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>OPTVERR</name>
              <description>desc OPTVERR</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>BSY</name>
              <description>desc BSY</description>
              <bitRange>[16:16]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CR</name>
          <description>desc CR</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>PG</name>
              <description>desc PG</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>PER</name>
              <description>desc PER</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>MER</name>
              <description>desc MER</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>SER</name>
              <description>desc SER</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OPTSTRT</name>
              <description>desc OPTSTRT</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>PGSTRT</name>
              <description>desc PGSTRT</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>EOPIE</name>
              <description>desc EOPIE</description>
              <bitRange>[24:24]</bitRange>
            </field>
            <field>
              <name>ERRIE</name>
              <description>desc ERRIE</description>
              <bitRange>[25:25]</bitRange>
            </field>
            <field>
              <name>OBL_LAUNCH</name>
              <description>desc OBL_LAUNCH</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>OPTLOCK</name>
              <description>desc OPTLOCK</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>LOCK</name>
              <description>desc LOCK</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OPTR</name>
          <description>desc OPTR</description>
          <addressOffset>0x20</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>RDP</name>
              <description>desc RDP</description>
              <bitRange>[7:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>IWDG_SW</name>
              <description>desc IWDG_SW</description>
              <bitRange>[11:11]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>WWDG_SW</name>
              <description>desc WWDG_SW</description>
              <bitRange>[12:12]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>NRST_MODE</name>
              <description>desc NRST_MODE</description>
              <bitRange>[13:13]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>NBOOT1</name>
              <description>desc nBOOT1</description>
              <bitRange>[14:14]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>IWDG_STOP</name>
              <description>desc IWDG_STOP</description>
              <bitRange>[15:15]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>SDKR</name>
          <description>desc SDKR</description>
          <addressOffset>0x24</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>SDK_STRT</name>
              <description>desc SDK_STRT</description>
              <bitRange>[4:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BOR_EN</name>
              <description>desc BOR_EN</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>SDK_END</name>
              <description>desc SDK_END</description>
              <bitRange>[12:8]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BOR_LEV</name>
              <description>desc BOR_LEV</description>
              <bitRange>[15:13]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>WRPR</name>
          <description>desc WRPR</description>
          <addressOffset>0x2C</addressOffset>
          <fields>
            <field>
              <name>WRP</name>
              <description>desc WRP</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>STCR</name>
          <description>desc STCR</description>
          <addressOffset>0x90</addressOffset>
          <resetValue>0x6400</resetValue>
          <fields>
            <field>
              <name>SLEEP_EN</name>
              <description>desc SLEEP_EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>SLEEP_TIME</name>
              <description>desc SLEEP_TIME</description>
              <bitRange>[15:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TS0</name>
          <description>desc TS0</description>
          <addressOffset>0x100</addressOffset>
          <resetValue>0xB4</resetValue>
          <fields>
            <field>
              <name>TS0</name>
              <description>desc TS0</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TS1</name>
          <description>desc TS1</description>
          <addressOffset>0x104</addressOffset>
          <resetValue>0x1B0</resetValue>
          <fields>
            <field>
              <name>TS1</name>
              <description>desc TS1</description>
              <bitRange>[8:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TS2P</name>
          <description>desc TS2P</description>
          <addressOffset>0x108</addressOffset>
          <resetValue>0xB4</resetValue>
          <fields>
            <field>
              <name>TS2P</name>
              <description>desc TS2P</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TPS3</name>
          <description>desc TPS3</description>
          <addressOffset>0x10C</addressOffset>
          <resetValue>0x6C0</resetValue>
          <fields>
            <field>
              <name>TPS3</name>
              <description>desc TPS3</description>
              <bitRange>[10:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TS3</name>
          <description>desc TS3</description>
          <addressOffset>0x110</addressOffset>
          <resetValue>0xB4</resetValue>
          <fields>
            <field>
              <name>TS3</name>
              <description>desc TS3</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PERTPE</name>
          <description>desc PERTPE</description>
          <addressOffset>0x114</addressOffset>
          <resetValue>0xEA60</resetValue>
          <fields>
            <field>
              <name>PERTPE</name>
              <description>desc PERTPE</description>
              <bitRange>[16:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMERTPE</name>
          <description>desc SMERTPE</description>
          <addressOffset>0x118</addressOffset>
          <resetValue>0xFD20</resetValue>
          <fields>
            <field>
              <name>SMERTPE</name>
              <description>desc SMERTPE</description>
              <bitRange>[16:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PRGTPE</name>
          <description>desc PRGTPE</description>
          <addressOffset>0x11C</addressOffset>
          <resetValue>0x8CA0</resetValue>
          <fields>
            <field>
              <name>PRGTPE</name>
              <description>desc PRGTPE</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PRETPE</name>
          <description>desc PRETPE</description>
          <addressOffset>0x120</addressOffset>
          <resetValue>0x12C0</resetValue>
          <fields>
            <field>
              <name>PRETPE</name>
              <description>desc PRETPE</description>
              <bitRange>[13:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>GPIOA</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x50000000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>MODER</name>
          <displayName>MODER</displayName>
          <description>GPIO port mode register</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0xEBFFFFFF</resetValue>
          <fields>
            <field>
              <name>MODE0</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>MODE1</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>MODE2</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[5:4]</bitRange>
            </field>
            <field>
              <name>MODE3</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[7:6]</bitRange>
            </field>
            <field>
              <name>MODE4</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>MODE5</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>MODE6</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>MODE7</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[15:14]</bitRange>
            </field>
            <field>
              <name>MODE8</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>MODE9</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[19:18]</bitRange>
            </field>
            <field>
              <name>MODE10</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[21:20]</bitRange>
            </field>
            <field>
              <name>MODE11</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[23:22]</bitRange>
            </field>
            <field>
              <name>MODE12</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[25:24]</bitRange>
            </field>
            <field>
              <name>MODE13</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[27:26]</bitRange>
            </field>
            <field>
              <name>MODE14</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[29:28]</bitRange>
            </field>
            <field>
              <name>MODE15</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[31:30]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OTYPER</name>
          <displayName>OTYPER</displayName>
          <description>GPIO port output type register</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>OT0</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>OT1</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>OT2</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OT3</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OT4</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>OT5</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>OT6</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>OT7</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>OT8</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>OT9</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>OT10</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OT11</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OT12</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>OT13</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>OT14</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>OT15</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OSPEEDR</name>
          <displayName>OSPEEDR</displayName>
          <description>GPIO port output speed register</description>
          <addressOffset>0x8</addressOffset>
          <resetValue>0xC000000</resetValue>
          <fields>
            <field>
              <name>OSPEED0</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OSPEED1</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>OSPEED2</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[5:4]</bitRange>
            </field>
            <field>
              <name>OSPEED3</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[7:6]</bitRange>
            </field>
            <field>
              <name>OSPEED4</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OSPEED5</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>OSPEED6</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>OSPEED7</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[15:14]</bitRange>
            </field>
            <field>
              <name>OSPEED8</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>OSPEED9</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[19:18]</bitRange>
            </field>
            <field>
              <name>OSPEED10</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[21:20]</bitRange>
            </field>
            <field>
              <name>OSPEED11</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[23:22]</bitRange>
            </field>
            <field>
              <name>OSPEED12</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[25:24]</bitRange>
            </field>
            <field>
              <name>OSPEED13</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[27:26]</bitRange>
            </field>
            <field>
              <name>OSPEED14</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[29:28]</bitRange>
            </field>
            <field>
              <name>OSPEED15</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[31:30]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PUPDR</name>
          <displayName>PUPDR</displayName>
          <description>GPIO port pull-up/pull-down register</description>
          <addressOffset>0xC</addressOffset>
          <resetValue>0x24000000</resetValue>
          <fields>
            <field>
              <name>PUPD0</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>PUPD1</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>PUPD2</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[5:4]</bitRange>
            </field>
            <field>
              <name>PUPD3</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[7:6]</bitRange>
            </field>
            <field>
              <name>PUPD4</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>PUPD5</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>PUPD6</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>PUPD7</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[15:14]</bitRange>
            </field>
            <field>
              <name>PUPD8</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>PUPD9</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[19:18]</bitRange>
            </field>
            <field>
              <name>PUPD10</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[21:20]</bitRange>
            </field>
            <field>
              <name>PUPD11</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[23:22]</bitRange>
            </field>
            <field>
              <name>PUPD12</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[25:24]</bitRange>
            </field>
            <field>
              <name>PUPD13</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[27:26]</bitRange>
            </field>
            <field>
              <name>PUPD14</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[29:28]</bitRange>
            </field>
            <field>
              <name>PUPD15</name>
              <description>Port x configuration bits (y=0-15)</description>
              <bitRange>[31:30]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IDR</name>
          <displayName>IDR</displayName>
          <description>GPIO port input data register</description>
          <addressOffset>0x10</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>ID0</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ID1</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>ID2</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>ID3</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>ID4</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>ID5</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>ID6</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>ID7</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ID8</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>ID9</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>ID10</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>ID11</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>ID12</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>ID13</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>ID14</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>ID15</name>
              <description>Port input data (y=0-15)</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ODR</name>
          <displayName>ODR</displayName>
          <description>GPIO port output data register</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>OD0</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>OD1</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>OD2</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OD3</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OD4</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>OD5</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>OD6</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>OD7</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>OD8</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>OD9</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>OD10</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OD11</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OD12</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>OD13</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>OD14</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>OD15</name>
              <description>Port output data (y=0-15)</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BSRR</name>
          <displayName>BSRR</displayName>
          <description>GPIO port bit set/reset register</description>
          <addressOffset>0x18</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>BS0</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>BS1</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>BS2</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>BS3</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>BS4</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>BS5</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>BS6</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BS7</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>BS8</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>BS9</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>BS10</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>BS11</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>BS12</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>BS13</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>BS14</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>BS15</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>BR0</name>
              <description>Port x set bit y (y=0-15)</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>BR1</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>BR2</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>BR3</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>BR4</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>BR5</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>BR6</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>BR7</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[23:23]</bitRange>
            </field>
            <field>
              <name>BR8</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[24:24]</bitRange>
            </field>
            <field>
              <name>BR9</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[25:25]</bitRange>
            </field>
            <field>
              <name>BR10</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[26:26]</bitRange>
            </field>
            <field>
              <name>BR11</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>BR12</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[28:28]</bitRange>
            </field>
            <field>
              <name>BR13</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[29:29]</bitRange>
            </field>
            <field>
              <name>BR14</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>BR15</name>
              <description>Port x reset bit y (y=0-15)</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>LCKR</name>
          <displayName>LCKR</displayName>
          <description>GPIO port configuration lock register</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>LCK0</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LCK1</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>LCK2</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>LCK3</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>LCK4</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>LCK5</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>LCK6</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>LCK7</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>LCK8</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>LCK9</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>LCK10</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>LCK11</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>LCK12</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>LCK13</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>LCK14</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>LCK15</name>
              <description>Port x lock bit y (y=0-15)</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>LCKK</name>
              <description>Port x lock (LCKK)</description>
              <bitRange>[16:16]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>AFRL</name>
          <displayName>AFRL</displayName>
          <description>GPIO alternate function low register</description>
          <addressOffset>0x20</addressOffset>
          <fields>
            <field>
              <name>AFSEL0</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[3:0]</bitRange>
            </field>
            <field>
              <name>AFSEL1</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>AFSEL2</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>AFSEL3</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[15:12]</bitRange>
            </field>
            <field>
              <name>AFSEL4</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[19:16]</bitRange>
            </field>
            <field>
              <name>AFSEL5</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[23:20]</bitRange>
            </field>
            <field>
              <name>AFSEL6</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[27:24]</bitRange>
            </field>
            <field>
              <name>AFSEL7</name>
              <description>Alternate function selection for port x bit y (y=0-7)</description>
              <bitRange>[31:28]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>AFRH</name>
          <displayName>AFRH</displayName>
          <description>GPIO alternate function high register</description>
          <addressOffset>0x24</addressOffset>
          <fields>
            <field>
              <name>AFSEL8</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[3:0]</bitRange>
            </field>
            <field>
              <name>AFSEL9</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>AFSEL10</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>AFSEL11</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[15:12]</bitRange>
            </field>
            <field>
              <name>AFSEL12</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[19:16]</bitRange>
            </field>
            <field>
              <name>AFSEL13</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[23:20]</bitRange>
            </field>
            <field>
              <name>AFSEL14</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[27:24]</bitRange>
            </field>
            <field>
              <name>AFSEL15</name>
              <description>Alternate function selection for port x bit y (y=8-15)</description>
              <bitRange>[31:28]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BRR</name>
          <displayName>BRR</displayName>
          <description>port bit reset register</description>
          <addressOffset>0x28</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>BR0</name>
              <description>Port Reset bit</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>BR1</name>
              <description>Port Reset bit</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>BR2</name>
              <description>Port Reset bit</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>BR3</name>
              <description>Port Reset bit</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>BR4</name>
              <description>Port Reset bit</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>BR5</name>
              <description>Port Reset bit</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>BR6</name>
              <description>Port Reset bit</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BR7</name>
              <description>Port Reset bit</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>BR8</name>
              <description>Port Reset bit</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>BR9</name>
              <description>Port Reset bit</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>BR10</name>
              <description>Port Reset bit</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>BR11</name>
              <description>Port Reset bit</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>BR12</name>
              <description>Port Reset bit</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>BR13</name>
              <description>Port Reset bit</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>BR14</name>
              <description>Port Reset bit</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>BR15</name>
              <description>Port Reset bit</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="GPIOA">
      <name>GPIOB</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x50000400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
    </peripheral>
    <peripheral derivedFrom="GPIOA">
      <name>GPIOC</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x50000800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
    </peripheral>
    <peripheral derivedFrom="GPIOA">
      <name>GPIOF</name>
      <description>General-purpose I/Os</description>
      <groupName>GPIO</groupName>
      <baseAddress>0x50001400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
    </peripheral>
    <peripheral>
      <name>I2C1</name>
      <description>Inter integrated circuit</description>
      <groupName>I2C</groupName>
      <baseAddress>0x40005400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>I2C1</name>
        <description>I2C1 global Interrupt</description>
        <value>23</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>PE</name>
              <description>desc PE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>SMBUS</name>
              <description>desc SMBUS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>SMBTYPE</name>
              <description>desc SMBTYPE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>ENARP</name>
              <description>desc ENARP</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>ENPEC</name>
              <description>desc ENPEC</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>ENGC</name>
              <description>desc ENGC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>NOSTRETCH</name>
              <description>desc NOSTRETCH</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>START</name>
              <description>desc START</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>STOP</name>
              <description>desc STOP</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>ACK</name>
              <description>desc ACK</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>POS</name>
              <description>desc POS</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>PEC</name>
              <description>desc PEC</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>ALERT</name>
              <description>desc ALERT</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>SWRST</name>
              <description>desc SWRST</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>FREQ</name>
              <description>desc FREQ</description>
              <bitRange>[5:0]</bitRange>
            </field>
            <field>
              <name>ITERREN</name>
              <description>desc ITERREN</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>ITEVTEN</name>
              <description>desc ITEVTEN</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>ITBUFEN</name>
              <description>desc ITBUFEN</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>DMAEN</name>
              <description>desc DMAEN</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>LAST</name>
              <description>desc LAST</description>
              <bitRange>[12:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OAR1</name>
          <description>desc OAR1</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>ADD0</name>
              <description>desc ADD0</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ADD1_7</name>
              <description>desc ADD1_7</description>
              <bitRange>[7:1]</bitRange>
            </field>
            <field>
              <name>ADD8_9</name>
              <description>desc ADD8_9</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>ADDMODE</name>
              <description>desc ADDMODE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OAR2</name>
          <description>desc OAR2</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>ENDUAL</name>
              <description>desc ENDUAL</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ADD2</name>
              <description>desc ADD2</description>
              <bitRange>[7:1]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DR</name>
          <description>desc DR</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>DR</name>
              <description>desc DR</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR1</name>
          <description>desc SR1</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>SB</name>
              <description>desc SB</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ADDR</name>
              <description>desc ADDR</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BTF</name>
              <description>desc BTF</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ADD10</name>
              <description>desc ADD10</description>
              <bitRange>[3:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>STOPF</name>
              <description>desc STOPF</description>
              <bitRange>[4:4]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>RXNE</name>
              <description>desc RXNE</description>
              <bitRange>[6:6]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TXE</name>
              <description>desc TXE</description>
              <bitRange>[7:7]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BERR</name>
              <description>desc BERR</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>ARLO</name>
              <description>desc ARLO</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>AF</name>
              <description>desc AF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OVR</name>
              <description>desc OVR</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>PECERR</name>
              <description>desc PECERR</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TIMEOUT</name>
              <description>desc TIMEOUT</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>SMBALERT</name>
              <description>desc SMBALERT</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR2</name>
          <description>desc SR2</description>
          <addressOffset>0x18</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>MSL</name>
              <description>desc MSL</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BUSY</name>
              <description>desc BUSY</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TRA</name>
              <description>desc TRA</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>GENCALL</name>
              <description>desc GENCALL</description>
              <bitRange>[4:4]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>SMBDEFAULT</name>
              <description>desc SMBDEFAULT</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>SMBHOST</name>
              <description>desc SMBHOST</description>
              <bitRange>[6:6]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>DUALF</name>
              <description>desc DUALF</description>
              <bitRange>[7:7]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>PEC</name>
              <description>desc PEC</description>
              <bitRange>[15:8]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR</name>
          <description>desc CCR</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>CCR</name>
              <description>desc CCR</description>
              <bitRange>[11:0]</bitRange>
            </field>
            <field>
              <name>DUTY</name>
              <description>desc DUTY</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>FS</name>
              <description>desc FS</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>TRISE</name>
          <description>desc TRISE</description>
          <addressOffset>0x20</addressOffset>
          <resetValue>0x2</resetValue>
          <fields>
            <field>
              <name>TRISE</name>
              <description>desc TRISE</description>
              <bitRange>[5:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="I2C1">
      <name>I2C2</name>
      <description>desc I2C</description>
      <groupName>I2C</groupName>
      <baseAddress>0x40005800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>I2C2</name>
        <description>I2C2 Event Interrupt</description>
        <value>24</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>IWDG</name>
      <description>Independent watchdog</description>
      <groupName>IWDG</groupName>
      <baseAddress>0x40003000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>KR</name>
          <displayName>KR</displayName>
          <description>Key register (IWDG_KR)</description>
          <addressOffset>0x0</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>KEY</name>
              <description>Key value</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PR</name>
          <displayName>PR</displayName>
          <description>Prescaler register (IWDG_PR)</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>PR</name>
              <description>Prescaler divider</description>
              <bitRange>[2:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RLR</name>
          <displayName>RLR</displayName>
          <description>Reload register (IWDG_RLR)</description>
          <addressOffset>0x8</addressOffset>
          <resetValue>0xFFF</resetValue>
          <fields>
            <field>
              <name>RL</name>
              <description>Watchdog counter reload value</description>
              <bitRange>[11:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <displayName>SR</displayName>
          <description>Status register (IWDG_SR)</description>
          <addressOffset>0xC</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>PVU</name>
              <description>Watchdog prescaler value update</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>RVU</name>
              <description>Watchdog counter reload value update</description>
              <bitRange>[1:1]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>LCD</name>
      <description>LCD CONTROLLER</description>
      <groupName>LCD</groupName>
      <baseAddress>0x40002400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>LCD</name>
        <description>LCD global Interrupt</description>
        <value>8</value>
      </interrupt>
      <registers>
        <register>
          <name>CR0</name>
          <displayName>CR0</displayName>
          <description>Control register</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>EN</name>
              <description>EN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LCDCLK</name>
              <description>LCDCLK</description>
              <bitRange>[2:1]</bitRange>
            </field>
            <field>
              <name>BIAS</name>
              <description>BIAS</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>DUTY</name>
              <description>DUTY</description>
              <bitRange>[8:6]</bitRange>
            </field>
            <field>
              <name>BSEL</name>
              <description>BSEL</description>
              <bitRange>[11:9]</bitRange>
            </field>
            <field>
              <name>CONTRAST</name>
              <description>CONTRAST</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR1</name>
          <displayName>CR1</displayName>
          <description>CR1</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>BLINKCNT</name>
              <description>BLINKCNT</description>
              <bitRange>[5:0]</bitRange>
            </field>
            <field>
              <name>BLINKEN</name>
              <description>BLINKEN</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>MODE</name>
              <description>MODE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>IE</name>
              <description>IE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>DMAEN</name>
              <description>DMAEN</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>INTF</name>
              <description>INTF</description>
              <bitRange>[11:11]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>INTCLR</name>
          <displayName>INTCLR</displayName>
          <description>INTCLR</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>INTF_CLR</name>
              <description>INTF_CLR</description>
              <bitRange>[10:10]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>POEN0</name>
          <displayName>POEN0</displayName>
          <description>POEN0</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>S0</name>
              <description>S0</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>S1</name>
              <description>S1</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>S2</name>
              <description>S2</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>S3</name>
              <description>S3</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>S4</name>
              <description>S4</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>S5</name>
              <description>S5</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>S6</name>
              <description>S6</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>S7</name>
              <description>S7</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>S8</name>
              <description>S8</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>S9</name>
              <description>S9</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>S10</name>
              <description>S10</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>S11</name>
              <description>S11</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>S12</name>
              <description>S12</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>S13</name>
              <description>S13</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>S14</name>
              <description>S14</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>S15</name>
              <description>S15</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>S16</name>
              <description>S16</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>S17</name>
              <description>S17</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>S18</name>
              <description>S18</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>S19</name>
              <description>S19</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>S20</name>
              <description>S20</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>S21</name>
              <description>S21</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>S22</name>
              <description>S22</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>S23</name>
              <description>S23</description>
              <bitRange>[23:23]</bitRange>
            </field>
            <field>
              <name>S24</name>
              <description>S24</description>
              <bitRange>[24:24]</bitRange>
            </field>
            <field>
              <name>S25</name>
              <description>S25</description>
              <bitRange>[25:25]</bitRange>
            </field>
            <field>
              <name>S26</name>
              <description>S26</description>
              <bitRange>[26:26]</bitRange>
            </field>
            <field>
              <name>S27</name>
              <description>S27</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>S28</name>
              <description>S28</description>
              <bitRange>[28:28]</bitRange>
            </field>
            <field>
              <name>S29</name>
              <description>S29</description>
              <bitRange>[29:29]</bitRange>
            </field>
            <field>
              <name>S30</name>
              <description>S30</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>S31</name>
              <description>S31</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>POEN1</name>
          <displayName>POEN1</displayName>
          <description>POEN1</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>S32</name>
              <description>S32</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>S33</name>
              <description>S33</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>S34</name>
              <description>S34</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>S35</name>
              <description>S35</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>S39C4</name>
              <description>S39</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>S38C5</name>
              <description>S38</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>S37C6</name>
              <description>S37</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>S36C7</name>
              <description>S36</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>C0</name>
              <description>C0</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>C1</name>
              <description>C1</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>C2</name>
              <description>C2</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>C3</name>
              <description>C3</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>MUX</name>
              <description>MUX</description>
              <bitRange>[12:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM0</name>
          <displayName>RAM0</displayName>
          <description>des RAM0</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM1</name>
          <displayName>RAM1</displayName>
          <description>des RAM1</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM2</name>
          <displayName>RAM2</displayName>
          <description>des RAM2</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM3</name>
          <displayName>RAM3</displayName>
          <description>des RAM3</description>
          <addressOffset>0x20</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM4</name>
          <displayName>RAM4</displayName>
          <description>des RAM4</description>
          <addressOffset>0x24</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM5</name>
          <displayName>RAM5</displayName>
          <description>des RAM5</description>
          <addressOffset>0x28</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM6</name>
          <displayName>RAM6</displayName>
          <description>des RAM6</description>
          <addressOffset>0x2C</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM7</name>
          <displayName>RAM7</displayName>
          <description>des RAM7</description>
          <addressOffset>0x30</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[31:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM8</name>
          <displayName>RAM8</displayName>
          <description>des RAM8</description>
          <addressOffset>0x34</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM9</name>
          <displayName>RAM9</displayName>
          <description>des RAM9</description>
          <addressOffset>0x38</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM10</name>
          <displayName>RAM10</displayName>
          <description>des RAM10</description>
          <addressOffset>0x3C</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM11</name>
          <displayName>RAM11</displayName>
          <description>des RAM11</description>
          <addressOffset>0x40</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM12</name>
          <displayName>RAM12</displayName>
          <description>des RAM12</description>
          <addressOffset>0x44</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM13</name>
          <displayName>RAM13</displayName>
          <description>des RAM13</description>
          <addressOffset>0x48</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM14</name>
          <displayName>RAM14</displayName>
          <description>des RAM14</description>
          <addressOffset>0x4C</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RAM15</name>
          <displayName>RAM15</displayName>
          <description>des RAM15</description>
          <addressOffset>0x50</addressOffset>
          <fields>
            <field>
              <name>D</name>
              <description>des D</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>LPTIM1</name>
      <description>Low power timer</description>
      <groupName>LPTIM1</groupName>
      <baseAddress>0x40007C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM6_LPTIM1</name>
        <description>TIM6, LPTIM1 global Interrupts</description>
        <value>17</value>
      </interrupt>
      <registers>
        <register>
          <name>ISR</name>
          <displayName>ISR</displayName>
          <description>Interrupt and Status Register</description>
          <addressOffset>0x0</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>ARRM</name>
              <description>Autoreload match</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>ARROK</name>
              <description>Autoreload match update OK</description>
              <bitRange>[4:4]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ICR</name>
          <displayName>ICR</displayName>
          <description>Interrupt Clear Register</description>
          <addressOffset>0x4</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>ARRMCF</name>
              <description>Autoreload match Clear Flag</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>ARROKCF</name>
              <description>Autoreload match update OK Clear Flag</description>
              <bitRange>[4:4]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IER</name>
          <displayName>IER</displayName>
          <description>Interrupt Enable Register</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>ARRMIE</name>
              <description>Autoreload matchInterrupt Enable</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>ARROKIE</name>
              <description>Autoreload match update OK Interrupt Enable</description>
              <bitRange>[4:4]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFGR</name>
          <displayName>CFGR</displayName>
          <description>Configuration Register</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>PRESC</name>
              <description>Clock prescaler</description>
              <bitRange>[11:9]</bitRange>
            </field>
            <field>
              <name>PRELOAD</name>
              <description>Registers update mode</description>
              <bitRange>[22:22]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR</name>
          <displayName>CR</displayName>
          <description>Control Register</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>ENABLE</name>
              <description>LPTIM Enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>SNGSTRT</name>
              <description>LPTIM start in single mode</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CNTSTRT</name>
              <description>CNTSTRT</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>COUNTRST</name>
              <description>LPTIM counter reset</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>RSTARE</name>
              <description>Reset after read enable</description>
              <bitRange>[4:4]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <displayName>ARR</displayName>
          <description>Autoreload Register</description>
          <addressOffset>0x18</addressOffset>
          <resetValue>0x1</resetValue>
          <fields>
            <field>
              <name>ARR</name>
              <description>Auto reload value</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <displayName>CNT</displayName>
          <description>Counter Register</description>
          <addressOffset>0x1C</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>CNT</name>
              <description>Counter value</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>OPA</name>
      <description>des OPA</description>
      <groupName>OPA</groupName>
      <baseAddress>0x40010300</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CR0</name>
          <displayName>CR0</displayName>
          <description>CR0 register</description>
          <addressOffset>0x30</addressOffset>
          <resetValue>0xFFFFFFFF</resetValue>
          <fields>
            <field>
              <name>OP1OEN1</name>
              <description>OP1OEN1</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>OP2OEN1</name>
              <description>OP2OEN1</description>
              <bitRange>[6:6]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR1</name>
          <displayName>CR1</displayName>
          <description>CR1 register</description>
          <addressOffset>0x34</addressOffset>
          <fields>
            <field>
              <name>EN1</name>
              <description>EN1</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>EN2</name>
              <description>EN2</description>
              <bitRange>[6:6]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>PWR</name>
      <description>Power control</description>
      <groupName>PWR</groupName>
      <baseAddress>0x40007000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CR1</name>
          <displayName>CR1</displayName>
          <description>Power control register 1</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0x30000</resetValue>
          <fields>
            <field>
              <name>BIAS_CR</name>
              <description>MR Bias current</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>BIAS_CR_SEL</name>
              <description>MR Bias current selection</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>DBP</name>
              <description>Disable backup domain write protection</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>VOS</name>
              <description>Voltage scaling range selection</description>
              <bitRange>[10:9]</bitRange>
            </field>
            <field>
              <name>FLS_SLPTIME</name>
              <description>Flash wait time after wakeup from the stop mode</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>LPR</name>
              <description>Low-power run</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>HSION_CTRL</name>
              <description>HSI open time control</description>
              <bitRange>[19:19]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <displayName>CR2</displayName>
          <description>Power control register 2</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x500</resetValue>
          <fields>
            <field>
              <name>PVDE</name>
              <description>Power voltage detector enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>SRCSEL</name>
              <description>Power voltage detector volatage selection</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>PVDT</name>
              <description>Power voltage detector threshold selection</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>FLTEN</name>
              <description>Digital filter enable</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>FLT_TIME</name>
              <description>Digital filter time configuration</description>
              <bitRange>[11:9]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <displayName>SR</displayName>
          <description>Power status register</description>
          <addressOffset>0x14</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>PVDO</name>
              <description>PVD output</description>
              <bitRange>[11:11]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>RCC</name>
      <description>Reset and clock control</description>
      <groupName>RCC</groupName>
      <baseAddress>0x40021000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>RCC_CTC</name>
        <description>RCC and CTC global Interrupts</description>
        <value>4</value>
      </interrupt>
      <registers>
        <register>
          <name>CR</name>
          <displayName>CR</displayName>
          <description>Clock control register</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0x100</resetValue>
          <fields>
            <field>
              <name>HSION</name>
              <description>HSI16 clock enable</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>HSIRDY</name>
              <description>HSI16 clock ready flag</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>HSIDIV</name>
              <description>HSI16 clock division factor</description>
              <bitRange>[13:11]</bitRange>
            </field>
            <field>
              <name>HSEON</name>
              <description>HSE clock enable</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>HSERDY</name>
              <description>HSE clock ready flag</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>HSEBYP</name>
              <description>HSE crystal oscillator bypass</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>CSSON</name>
              <description>Clock security system enable</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>ADC_DIV</name>
              <description>ADC Frequency Division</description>
              <bitRange>[22:21]</bitRange>
            </field>
            <field>
              <name>PLLON</name>
              <description>PLL enable</description>
              <bitRange>[24:24]</bitRange>
            </field>
            <field>
              <name>PLLRDY</name>
              <description>PLL clock ready flag</description>
              <bitRange>[25:25]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ICSCR</name>
          <displayName>ICSCR</displayName>
          <description>Internal clock sources calibration register</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x10000000</resetValue>
          <fields>
            <field>
              <name>HSI_TRIM</name>
              <description>HSI clock trimming</description>
              <bitRange>[12:0]</bitRange>
            </field>
            <field>
              <name>HSI_FS</name>
              <description>HSI frequency selection</description>
              <bitRange>[15:13]</bitRange>
            </field>
            <field>
              <name>LSI_TRIM</name>
              <description>LSI clock trimming</description>
              <bitRange>[24:16]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFGR</name>
          <displayName>CFGR</displayName>
          <description>Clock configuration register</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>SW</name>
              <description>System clock switch</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>SWS</name>
              <description>System clock switch status</description>
              <bitRange>[5:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>HPRE</name>
              <description>AHB prescaler</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>PPRE</name>
              <description>APB prescaler</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>MCOSEL</name>
              <description>Microcontroller clock output</description>
              <bitRange>[26:24]</bitRange>
            </field>
            <field>
              <name>MCOPRE</name>
              <description>Microcontroller clock output prescaler</description>
              <bitRange>[30:28]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PLLCFGR</name>
          <displayName>PLLCFGR</displayName>
          <description>PLL configuration register</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>PLLSRC</name>
              <description>PLL clock source selection</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>PLLMUL</name>
              <description>PLLMUL</description>
              <bitRange>[3:2]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ECSCR</name>
          <displayName>ECSCR</displayName>
          <description>External clock source control register</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>HSE_DRV</name>
              <description>HSE_DRV</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>HSE_STARTUP</name>
              <description>HSE_STARTUP</description>
              <bitRange>[4:3]</bitRange>
            </field>
            <field>
              <name>LSE_DRIVER</name>
              <description>LSE clock driver selection</description>
              <bitRange>[17:16]</bitRange>
            </field>
            <field>
              <name>LSE_STARTUP</name>
              <description>LSE_STARTUP</description>
              <bitRange>[21:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CIER</name>
          <displayName>CIER</displayName>
          <description>Clock interrupt enable register</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>LSIRDYIE</name>
              <description>LSI ready interrupt enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LSERDYIE</name>
              <description>LSE ready interrupt enable</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HSIRDYIE</name>
              <description>HSI ready interrupt enable</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>HSERDYIE</name>
              <description>HSE ready interrupt enable</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>PLLRDYIE</name>
              <description>PLL ready interrupt enable</description>
              <bitRange>[5:5]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CIFR</name>
          <displayName>CIFR</displayName>
          <description>Clock interrupt flag register</description>
          <addressOffset>0x1C</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>LSIRDYF</name>
              <description>LSI ready interrupt flag</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LSERDYF</name>
              <description>LSE ready interrupt flag</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HSIRDYF</name>
              <description>HSI ready interrupt flag</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>HSERDYF</name>
              <description>HSE ready interrupt flag</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>PLLRDYF</name>
              <description>PLL ready interrupt flag</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CSSF</name>
              <description>HSE clock secure system interrupt flag</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>LSECSSF</name>
              <description>LSE clock secure system interrupt flag</description>
              <bitRange>[9:9]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CICR</name>
          <displayName>CICR</displayName>
          <description>Clock interrupt clear register</description>
          <addressOffset>0x20</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>LSIRDYC</name>
              <description>LSI ready interrupt clear</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LSERDYC</name>
              <description>LSE ready interrupt clear</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>HSIRDYC</name>
              <description>HSI ready interrupt clear</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>HSERDYC</name>
              <description>HSE ready interrupt clear</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>PLLRDYC</name>
              <description>PLL ready interrupt clear</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CSSC</name>
              <description>clock secure system interrupt flag clear</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>LSECSSC</name>
              <description>LSE clock secure system interrupt flag clear</description>
              <bitRange>[9:9]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IOPRSTR</name>
          <displayName>IOPRSTR</displayName>
          <description>GPIO reset register</description>
          <addressOffset>0x24</addressOffset>
          <fields>
            <field>
              <name>GPIOARST</name>
              <description>I/O port A reset</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>GPIOBRST</name>
              <description>I/O port B reset</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>GPIOCRST</name>
              <description>I/O port F reset</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>GPIOFRST</name>
              <description>I/O port F reset</description>
              <bitRange>[5:5]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>AHBRSTR</name>
          <displayName>AHBRSTR</displayName>
          <description>AHB peripheral reset register</description>
          <addressOffset>0x28</addressOffset>
          <fields>
            <field>
              <name>DMARST</name>
              <description>DMA reset</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CRCRST</name>
              <description>CRC reset</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>DIVRST</name>
              <description>DIV reset</description>
              <bitRange>[24:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APBRSTR1</name>
          <displayName>APBRSTR1</displayName>
          <description>APB peripheral reset register 1</description>
          <addressOffset>0x2C</addressOffset>
          <fields>
            <field>
              <name>TIM2RST</name>
              <description>TIM2 timer reset</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TIM3RST</name>
              <description>TIM3 timer reset</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>TIM6RST</name>
              <description>TIM6 timer reset</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIM7RST</name>
              <description>TIM7 timer reset</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>RTCAPBRST</name>
              <description>RTCAPB reset</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>WWDGRST</name>
              <description>WWDG reset</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>SPI2RST</name>
              <description>SPI2 reset</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>USART2RST</name>
              <description>USART2 reset</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>USART3RST</name>
              <description>USART3 reset</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>USART4RST</name>
              <description>USART4 reset</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>I2C1RST</name>
              <description>I2C1 reset</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>I2C2RST</name>
              <description>I2C2 reset</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>CTCRST</name>
              <description>CTCRST</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>PWRRST</name>
              <description>Power interface reset</description>
              <bitRange>[28:28]</bitRange>
            </field>
            <field>
              <name>OPARST</name>
              <description>OPARST</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>LPTIMRST</name>
              <description>Low Power Timer reset</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APBRSTR2</name>
          <displayName>APBRSTR2</displayName>
          <description>APB peripheral reset register 2</description>
          <addressOffset>0x30</addressOffset>
          <fields>
            <field>
              <name>SYSCFGRST</name>
              <description>SYSCFG reset</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ADCRST</name>
              <description>ADC reset</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>DBGRST</name>
              <description>DBG reset</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>TIM1RST</name>
              <description>TIM1 reset</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>SPI1RST</name>
              <description>SPI1 reset</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>USART1RST</name>
              <description>USART1 reset</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>TIM14RST</name>
              <description>TIM14 reset</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>TIM15RST</name>
              <description>TIM15 reset</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>TIM16RST</name>
              <description>TIM16 reset</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>TIM17RST</name>
              <description>TIM17 reset</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>COMP1RST</name>
              <description>COMP1 reset</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>COMP2RST</name>
              <description>COMP2 reset</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>LCDRST</name>
              <description>LCD reset</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>IOPENR</name>
          <displayName>IOPENR</displayName>
          <description>GPIO clock enable register</description>
          <addressOffset>0x34</addressOffset>
          <fields>
            <field>
              <name>GPIOAEN</name>
              <description>I/O port A clock enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>GPIOBEN</name>
              <description>I/O port B clock enable</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>GPIOCEN</name>
              <description>I/O port C clock enable</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>GPIOFEN</name>
              <description>I/O port F clock enable</description>
              <bitRange>[5:5]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>AHBENR</name>
          <displayName>AHBENR</displayName>
          <description>AHB peripheral clock enable register</description>
          <addressOffset>0x38</addressOffset>
          <fields>
            <field>
              <name>DMAEN</name>
              <description>DMA clock enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>FLASHEN</name>
              <description>Flash memory interface clock enable</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>SRAMEN</name>
              <description>SRAM memory interface clock enable</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CRCEN</name>
              <description>CRC clock enable</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>DIVEN</name>
              <description>DIVEN</description>
              <bitRange>[24:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APBENR1</name>
          <displayName>APBENR1</displayName>
          <description>APB peripheral clock enable register 1</description>
          <addressOffset>0x3C</addressOffset>
          <fields>
            <field>
              <name>TIM2EN</name>
              <description>TIM2 timer clock enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TIM3EN</name>
              <description>TIM3 timer clock enable</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>TIM6EN</name>
              <description>TIM6 timer clock enable</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIM7EN</name>
              <description>TIM7 timer clock enable</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>RTCAPBEN</name>
              <description>RTC APB clock enable</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>WWDGEN</name>
              <description>WWDG clock enable</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>SPI2EN</name>
              <description>SPI2 clock enable</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>USART2EN</name>
              <description>USART2 clock enable</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>USART3EN</name>
              <description>USART3 clock enable</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>USART4EN</name>
              <description>USART4 clock enable</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>I2C1EN</name>
              <description>I2C1 clock enable</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>I2C2EN</name>
              <description>I2C2 clock enable</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>CTCEN</name>
              <description>CTC clock enable</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>PWREN</name>
              <description>Power interface clock enable</description>
              <bitRange>[28:28]</bitRange>
            </field>
            <field>
              <name>OPAEN</name>
              <description>OPA clock enable</description>
              <bitRange>[30:30]</bitRange>
            </field>
            <field>
              <name>LPTIMEN</name>
              <description>LPTIM clock enable</description>
              <bitRange>[31:31]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>APBENR2</name>
          <displayName>APBENR2</displayName>
          <description>APB peripheral clock enable register 2</description>
          <addressOffset>0x40</addressOffset>
          <fields>
            <field>
              <name>SYSCFGEN</name>
              <description>SYSCFG, COMP and VREFBUF clock enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ADCEN</name>
              <description>ADCEN clock enable</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>DBGEN</name>
              <description>DBG clock enable</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>TIM1EN</name>
              <description>TIM1 clock enable</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>SPI1EN</name>
              <description>SPI1 clock enable</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>USART1EN</name>
              <description>USART1 clock enable</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>TIM14EN</name>
              <description>TIM14 clock enable</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>TIM15EN</name>
              <description>TIM15 clock enable</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>TIM16EN</name>
              <description>TIM16 clock enable</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>TIM17EN</name>
              <description>TIM17 clock enable</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>COMP1EN</name>
              <description>COMP1 clock enable</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>COMP2EN</name>
              <description>COMP2 clock enable</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>LCDEN</name>
              <description>LCD clock enable</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCIPR</name>
          <displayName>CCIPR</displayName>
          <description>Peripherals independent clock configuration register</description>
          <addressOffset>0x54</addressOffset>
          <fields>
            <field>
              <name>PVDSEL</name>
              <description>PVD detect clock source selection</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>COMP1SEL</name>
              <description>COMP1 clock source selection</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>COMP2SEL</name>
              <description>COMP2 clock source selection</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>LPTIM1SEL</name>
              <description>LPTIM1 clock source selection</description>
              <bitRange>[19:18]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BDCR</name>
          <displayName>BDCR</displayName>
          <description>RTC domain control register</description>
          <addressOffset>0x5C</addressOffset>
          <fields>
            <field>
              <name>LSEON</name>
              <description>LSE oscillator enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LSERDY</name>
              <description>LSE oscillator ready</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>LSEBYP</name>
              <description>LSE oscillator bypass</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>LSECSSON</name>
              <description>LSE CSS enable</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>LSECSSD</name>
              <description>LSE CSS detect</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>RTCSEL</name>
              <description>RTC clock source selection</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>RTCEN</name>
              <description>RTC clock source enable</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>BDRST</name>
              <description>RTC domain software reset</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>LSCOEN</name>
              <description>Low-speed clock output (LSCO) enable</description>
              <bitRange>[24:24]</bitRange>
            </field>
            <field>
              <name>LSCOSEL</name>
              <description>Low-speed clock output selection</description>
              <bitRange>[25:25]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CSR</name>
          <displayName>CSR</displayName>
          <description>Control/status register</description>
          <addressOffset>0x60</addressOffset>
          <fields>
            <field>
              <name>LSION</name>
              <description>LSI oscillator enable</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>LSIRDY</name>
              <description>LSI oscillator ready</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>NRST_FLTDIS</name>
              <description>NRST_FLTDIS oscillator ready</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>RMVF</name>
              <description>Remove reset flags</description>
              <bitRange>[23:23]</bitRange>
            </field>
            <field>
              <name>OBLRSTF</name>
              <description>Option byte loader reset flag</description>
              <bitRange>[25:25]</bitRange>
            </field>
            <field>
              <name>PINRSTF</name>
              <description>Pin reset flag</description>
              <bitRange>[26:26]</bitRange>
            </field>
            <field>
              <name>PWRRSTF</name>
              <description>BOR or POR/PDR flag</description>
              <bitRange>[27:27]</bitRange>
            </field>
            <field>
              <name>SFTRSTF</name>
              <description>Software reset flag</description>
              <bitRange>[28:28]</bitRange>
            </field>
            <field>
              <name>IWDGRSTF</name>
              <description>Independent window watchdog reset flag</description>
              <bitRange>[29:29]</bitRange>
            </field>
            <field>
              <name>WWDGRSTF</name>
              <description>Window watchdog reset flag</description>
              <bitRange>[30:30]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>RTC</name>
      <description>desc RTC</description>
      <groupName>RTC</groupName>
      <baseAddress>0x40002800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>RTC</name>
        <description>RTC Interrupt through EXTI Lines 19</description>
        <value>2</value>
      </interrupt>
      <registers>
        <register>
          <name>CRH</name>
          <description>desc CRH</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>SECIE</name>
              <description>desc SECIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ALRIE</name>
              <description>desc ALRIE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>OWIE</name>
              <description>desc OWIE</description>
              <bitRange>[2:2]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CRL</name>
          <description>desc CRL</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x20</resetValue>
          <fields>
            <field>
              <name>SECF</name>
              <description>desc SECF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>ALRF</name>
              <description>desc ALRF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>OWF</name>
              <description>desc OWF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>RSF</name>
              <description>desc RSF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CNF</name>
              <description>desc CNF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>RTOFF</name>
              <description>desc RTOFF</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>PRLH</name>
          <description>desc PRLH</description>
          <addressOffset>0x8</addressOffset>
          <access>write-only</access>
          <fields>
            <field>
              <name>PRL</name>
              <description>desc PRL</description>
              <bitRange>[3:0]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>PRLL</name>
          <description>desc PRLL</description>
          <addressOffset>0xC</addressOffset>
          <access>write-only</access>
          <resetValue>0x8000</resetValue>
          <fields>
            <field>
              <name>PRL</name>
              <description>desc PRL</description>
              <bitRange>[15:0]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DIVH</name>
          <description>desc DIVH</description>
          <addressOffset>0x10</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>DIV</name>
              <description>desc DIV</description>
              <bitRange>[3:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DIVL</name>
          <description>desc DIVL</description>
          <addressOffset>0x14</addressOffset>
          <access>read-only</access>
          <resetValue>0x8000</resetValue>
          <fields>
            <field>
              <name>DIV</name>
              <description>desc DIV</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CNTH</name>
          <description>desc CNTH</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>RTC_CNT</name>
              <description>desc RTC_CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNTL</name>
          <description>desc CNTL</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>RTC_CNT</name>
              <description>desc RTC_CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ALRH</name>
          <description>desc ALRH</description>
          <addressOffset>0x20</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <fields>
            <field>
              <name>RTC_ALR</name>
              <description>desc RTC_ALR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ALRL</name>
          <description>desc ALRL</description>
          <addressOffset>0x24</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <fields>
            <field>
              <name>RTC_ALR</name>
              <description>desc RTC_ALR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BKP_RTCCR</name>
          <description>desc BKP_RTCCR</description>
          <addressOffset>0x2C</addressOffset>
          <fields>
            <field>
              <name>CAL</name>
              <description>desc CAL</description>
              <bitRange>[6:0]</bitRange>
            </field>
            <field>
              <name>CCO</name>
              <description>desc CCO</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ASOE</name>
              <description>desc ASOE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>ASOS</name>
              <description>desc ASOS</description>
              <bitRange>[9:9]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>SPI1</name>
      <description>Serial peripheral interface</description>
      <groupName>SPI</groupName>
      <baseAddress>0x40013000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>SPI1</name>
        <description>SPI1 global Interrupt</description>
        <value>25</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <fields>
            <field>
              <name>CPHA</name>
              <description>desc CPHA</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CPOL</name>
              <description>desc CPOL</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>MSTR</name>
              <description>desc MSTR</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>BR</name>
              <description>desc BR</description>
              <bitRange>[5:3]</bitRange>
            </field>
            <field>
              <name>SPE</name>
              <description>desc SPE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>LSBFIRST</name>
              <description>desc LSBFIRST</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>SSI</name>
              <description>desc SSI</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>SSM</name>
              <description>desc SSM</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>RXONLY</name>
              <description>desc RXONLY</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>DDF</name>
              <description>desc DDF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CRCNEXT</name>
              <description>desc CRCNEXT</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CRCEN</name>
              <description>desc CRCEN</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>BIDIOE</name>
              <description>desc BIDIOE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>BIDIMODE</name>
              <description>desc BIDIMODE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>RXDMAEN</name>
              <description>desc RXDMAEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>TXDMAEN</name>
              <description>desc TXDMAEN</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>SSOE</name>
              <description>desc SSOE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CLRTXFIFO</name>
              <description>desc CLRTXFIFO</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>ERRIE</name>
              <description>desc ERRIE</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>RXNEIE</name>
              <description>desc RXNEIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>TXEIE</name>
              <description>desc TXEIE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>FRXTH</name>
              <description>desc FRXTH</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>LDMA_RX</name>
              <description>desc LDMA_RX</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>LDMA_TX</name>
              <description>desc LDMA_TX</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x8</addressOffset>
          <resetValue>0x2</resetValue>
          <fields>
            <field>
              <name>RXNE</name>
              <description>desc RXNE</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>TXE</name>
              <description>desc TXE</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>CHSIDE</name>
              <description>desc CHSIDE</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>UDR</name>
              <description>desc UDR</description>
              <bitRange>[3:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>CRCERR</name>
              <description>desc CRCERR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>MODF</name>
              <description>desc MODF</description>
              <bitRange>[5:5]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>OVR</name>
              <description>desc OVR</description>
              <bitRange>[6:6]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>BSY</name>
              <description>desc BSY</description>
              <bitRange>[7:7]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>FRLVL</name>
              <description>desc FRLVL</description>
              <bitRange>[10:9]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>FTLVL</name>
              <description>desc FTLVL</description>
              <bitRange>[12:11]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DR</name>
          <description>desc DR</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>DR</name>
              <description>desc DR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CRCPR</name>
          <description>desc CRCPR</description>
          <addressOffset>0x10</addressOffset>
          <resetValue>0x7</resetValue>
          <fields>
            <field>
              <name>CRCPOLY</name>
              <description>desc CRCPOLY</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RXCRCR</name>
          <description>desc RXCRCR</description>
          <addressOffset>0x14</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>RXCRC</name>
              <description>desc RXCRC</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>TXCRCR</name>
          <description>desc TXCRCR</description>
          <addressOffset>0x18</addressOffset>
          <access>read-only</access>
          <fields>
            <field>
              <name>TXCRC</name>
              <description>desc TXCRC</description>
              <bitRange>[15:0]</bitRange>
              <access>read-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SCFGR</name>
          <description>desc I2SCFGR</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>CHLEN</name>
              <description>desc CHLEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>DATLEN</name>
              <description>desc DATLEN</description>
              <bitRange>[2:1]</bitRange>
            </field>
            <field>
              <name>CKPOL</name>
              <description>desc CKPOL</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>I2SSTD</name>
              <description>desc I2SSTD</description>
              <bitRange>[5:4]</bitRange>
            </field>
            <field>
              <name>PCMSYNC</name>
              <description>desc PCMSYNC</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>I2SCFG</name>
              <description>desc I2SCFG</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>I2SE</name>
              <description>desc I2SE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>I2SMOD</name>
              <description>desc I2SMOD</description>
              <bitRange>[11:11]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>I2SPR</name>
          <description>desc I2SPR</description>
          <addressOffset>0x20</addressOffset>
          <resetValue>0x2</resetValue>
          <fields>
            <field>
              <name>I2SDIV</name>
              <description>desc I2SDIV</description>
              <bitRange>[7:0]</bitRange>
            </field>
            <field>
              <name>ODD</name>
              <description>desc ODD</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>MCKOE</name>
              <description>desc MCKOE</description>
              <bitRange>[9:9]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="SPI1">
      <name>SPI2</name>
      <baseAddress>0x40003800</baseAddress>
      <interrupt>
        <name>SPI2</name>
        <description>SPI2 global Interrupt</description>
        <value>26</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>SYSCFG</name>
      <description>desc SYSCFG</description>
      <groupName>SYSCFG</groupName>
      <baseAddress>0x40010000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x200</size>
        <usage>registers</usage>
      </addressBlock>
      <registers>
        <register>
          <name>CFGR1</name>
          <description>desc CFGR1</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0xFF0000</resetValue>
          <fields>
            <field>
              <name>MEM_MODE</name>
              <description>desc MEM_MODE</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>TIM1_IC1_SRC</name>
              <description>desc TIM1_IC1_SRC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>TIM2_IC4_SRC</name>
              <description>desc TIM2_IC4_SRC</description>
              <bitRange>[5:4]</bitRange>
            </field>
            <field>
              <name>TIM3_IC1_SRC</name>
              <description>desc TIM3_IC1_SRC</description>
              <bitRange>[7:6]</bitRange>
            </field>
            <field>
              <name>ETR_SRC_TIM1</name>
              <description>desc ETR_SRC_TIM1</description>
              <bitRange>[10:8]</bitRange>
            </field>
            <field>
              <name>ETR_SRC_TIM2</name>
              <description>desc ETR_SRC_TIM2</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>ETR_SRC_TIM3</name>
              <description>desc ETR_SRC_TIM3</description>
              <bitRange>[18:16]</bitRange>
            </field>
            <field>
              <name>GPIO_AHB_SEL</name>
              <description>desc GPIO_AHB_SEL</description>
              <bitRange>[24:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFGR2</name>
          <description>desc CFGR2</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x4</resetValue>
          <fields>
            <field>
              <name>LOCKUP_LOCK</name>
              <description>desc LOCKUP_LOCK</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>PVD_LOCK</name>
              <description>desc PVD_LOCK</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>COMP1_BRK_TIM1</name>
              <description>desc COMP1_BRK_TIM1</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>COMP2_BRK_TIM1</name>
              <description>desc COMP2_BRK_TIM1</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMP1_BRK_TIM15</name>
              <description>desc COMP1_BRK_TIM15</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>COMP2_BRK_TIM15</name>
              <description>desc COMP2_BRK_TIM15</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>COMP1_BRK_TIM16</name>
              <description>desc COMP1_BRK_TIM16</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>COMP2_BRK_TIM16</name>
              <description>desc COMP2_BRK_TIM16</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>COMP1_BRK_TIM17</name>
              <description>desc COMP1_BRK_TIM17</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>COMP2_BRK_TIM17</name>
              <description>desc COMP2_BRK_TIM17</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>COMP1_OCREF_CLR_TIM1</name>
              <description>desc COMP1_OCREF_CLR_TIM1</description>
              <bitRange>[15:15]</bitRange>
            </field>
            <field>
              <name>COMP1_OCREF_CLR_TIM2</name>
              <description>desc COMP1_OCREF_CLR_TIM2</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>COMP1_OCREF_CLR_TIM3</name>
              <description>desc COMP1_OCREF_CLR_TIM3</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>COMP2_OCREF_CLR_TIM1</name>
              <description>desc COMP2_OCREF_CLR_TIM1</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>COMP2_OCREF_CLR_TIM2</name>
              <description>desc COMP2_OCREF_CLR_TIM2</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>COMP2_OCREF_CLR_TIM3</name>
              <description>desc COMP2_OCREF_CLR_TIM3</description>
              <bitRange>[20:20]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFGR3</name>
          <description>desc CFGR3</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>DMA1_MAP</name>
              <description>desc DMA1_MAP</description>
              <bitRange>[5:0]</bitRange>
            </field>
            <field>
              <name>DMA2_MAP</name>
              <description>desc DMA2_MAP</description>
              <bitRange>[13:8]</bitRange>
            </field>
            <field>
              <name>DMA3_MAP</name>
              <description>desc DMA3_MAP</description>
              <bitRange>[21:16]</bitRange>
            </field>
            <field>
              <name>DMA4_MAP</name>
              <description>desc DMA4_MAP</description>
              <bitRange>[29:24]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFGR4</name>
          <description>desc CFGR4</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>DMA5_MAP</name>
              <description>desc DMA5_MAP</description>
              <bitRange>[5:0]</bitRange>
            </field>
            <field>
              <name>DMA6_MAP</name>
              <description>desc DMA6_MAP</description>
              <bitRange>[13:8]</bitRange>
            </field>
            <field>
              <name>DMA7_MAP</name>
              <description>desc DMA7_MAP</description>
              <bitRange>[21:16]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PAENS</name>
          <description>desc PAENS</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>PA_ENS</name>
              <description>desc PA_ENS</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PBENS</name>
          <description>desc PBENS</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>PB_ENS</name>
              <description>desc PB_ENS</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PCENS</name>
          <description>desc PCENS</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>PC_ENS</name>
              <description>desc PC_ENS</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PFENS</name>
          <description>desc PFENS</description>
          <addressOffset>0x1C</addressOffset>
          <fields>
            <field>
              <name>PF_ENS</name>
              <description>desc PF_ENS</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EIIC</name>
          <description>desc EIIC</description>
          <addressOffset>0x20</addressOffset>
          <fields>
            <field>
              <name>PA_EIIC</name>
              <description>desc PA_EIIC</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>PB_EIIC</name>
              <description>desc PB_EIIC</description>
              <bitRange>[16:8]</bitRange>
            </field>
            <field>
              <name>PF_EIIC</name>
              <description>desc PF_EIIC</description>
              <bitRange>[25:24]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM1</name>
      <description>Advanced timer</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40012C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM1_BRK_UP_TRG_COM</name>
        <description>TIM1 Break, Update, Trigger and Commutation Interrupt</description>
        <value>13</value>
      </interrupt>
      <interrupt>
        <name>TIM1_CC</name>
        <description>TIM1 Capture Compare Interrupt</description>
        <value>14</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0x7FFD</resetMask>
          <fields>
            <field>
              <name>CCPC</name>
              <description>desc CCPC</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CCUS</name>
              <description>desc CCUS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>OIS1</name>
              <description>desc OIS1</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>OIS1N</name>
              <description>desc OIS1N</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>OIS2</name>
              <description>desc OIS2</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OIS2N</name>
              <description>desc OIS2N</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OIS3</name>
              <description>desc OIS3</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>OIS3N</name>
              <description>desc OIS3N</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>OIS4</name>
              <description>desc OIS4</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCR</name>
          <description>desc SMCR</description>
          <addressOffset>0x8</addressOffset>
          <resetMask>0xFFF7</resetMask>
          <fields>
            <field>
              <name>SMS</name>
              <description>desc SMS</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>OCCS</name>
              <description>desc OCCS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>TS</name>
              <description>desc TS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>MSM</name>
              <description>desc MSM</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ETF</name>
              <description>desc ETF</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>ETPS</name>
              <description>desc ETPS</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>ECE</name>
              <description>desc ECE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>ETP</name>
              <description>desc ETP</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_OUTPUT</name>
          <description>desc CCMR2:OUTPUT</description>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC3FE</name>
              <description>desc OC3FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC3PE</name>
              <description>desc OC3PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC3M</name>
              <description>desc OC3M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC3CE</name>
              <description>desc OC3CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC4FE</name>
              <description>desc OC4FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC4PE</name>
              <description>desc OC4PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC4M</name>
              <description>desc OC4M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC4CE</name>
              <description>desc OC4CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_INPUT</name>
          <description>desc CCMR2:INPUT</description>
          <alternateRegister>CCMR2_OUTPUT</alternateRegister>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC3PSC</name>
              <description>desc IC3PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC3F</name>
              <description>desc IC3F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC4PSC</name>
              <description>desc IC4PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC4F</name>
              <description>desc IC4F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RCR</name>
          <description>desc RCR</description>
          <addressOffset>0x30</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>REP</name>
              <description>desc REP</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR2</name>
          <description>desc CCR2</description>
          <addressOffset>0x38</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR2</name>
              <description>desc CCR2</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR3</name>
          <description>desc CCR3</description>
          <addressOffset>0x3C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR3</name>
              <description>desc CCR3</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR4</name>
          <description>desc CCR4</description>
          <addressOffset>0x40</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR4</name>
              <description>desc CCR4</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BDTR</name>
          <description>desc BDTR</description>
          <addressOffset>0x44</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DTG</name>
              <description>desc DTG</description>
              <bitRange>[7:0]</bitRange>
            </field>
            <field>
              <name>LOCK</name>
              <description>desc LOCK</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OSSI</name>
              <description>desc OSSI</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OSSR</name>
              <description>desc OSSR</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>BKE</name>
              <description>desc BKE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>BKP</name>
              <description>desc BKP</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>AOE</name>
              <description>desc AOE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>MOE</name>
              <description>desc MOE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DCR</name>
          <description>desc DCR</description>
          <addressOffset>0x48</addressOffset>
          <resetMask>0x1F1F</resetMask>
          <fields>
            <field>
              <name>DBA</name>
              <description>desc DBA</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>DBL</name>
              <description>desc DBL</description>
              <bitRange>[12:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAR</name>
          <description>desc DMAR</description>
          <addressOffset>0x4C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DMAB</name>
              <description>desc DMAB</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM2</name>
      <description>desc TIM</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40000000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM2</name>
        <description>TIM2 global Interrupt</description>
        <value>15</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0xF8</resetMask>
          <fields>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCR</name>
          <description>desc SMCR</description>
          <addressOffset>0x8</addressOffset>
          <resetMask>0xFFF7</resetMask>
          <fields>
            <field>
              <name>SMS</name>
              <description>desc SMS</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>TS</name>
              <description>desc TS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>MSM</name>
              <description>desc MSM</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ETF</name>
              <description>desc ETF</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>ETPS</name>
              <description>desc ETPS</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>ECE</name>
              <description>desc ECE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>ETP</name>
              <description>desc ETP</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_OUTPUT</name>
          <description>desc CCMR2:OUTPUT</description>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC3FE</name>
              <description>desc OC3FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC3PE</name>
              <description>desc OC3PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC3M</name>
              <description>desc OC3M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC3CE</name>
              <description>desc OC3CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC4FE</name>
              <description>desc OC4FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC4PE</name>
              <description>desc OC4PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC4M</name>
              <description>desc OC4M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC4CE</name>
              <description>desc OC4CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_INPUT</name>
          <description>desc CCMR2:INPUT</description>
          <alternateRegister>CCMR2_OUTPUT</alternateRegister>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC3PSC</name>
              <description>desc IC3PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC3F</name>
              <description>desc IC3F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC4PSC</name>
              <description>desc IC4PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC4F</name>
              <description>desc IC4F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR2</name>
          <description>desc CCR2</description>
          <addressOffset>0x38</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR2</name>
              <description>desc CCR2</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR3</name>
          <description>desc CCR3</description>
          <addressOffset>0x3C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR3</name>
              <description>desc CCR3</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR4</name>
          <description>desc CCR4</description>
          <addressOffset>0x40</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR4</name>
              <description>desc CCR4</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DCR</name>
          <description>desc DCR</description>
          <addressOffset>0x48</addressOffset>
          <resetMask>0x1F1F</resetMask>
          <fields>
            <field>
              <name>DBA</name>
              <description>desc DBA</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>DBL</name>
              <description>desc DBL</description>
              <bitRange>[12:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAR</name>
          <description>desc DMAR</description>
          <addressOffset>0x4C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DMAB</name>
              <description>desc DMAB</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM3</name>
      <description>General purpose timer</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40000400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM3</name>
        <description>TIM3 global Interrupt</description>
        <value>16</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0xF8</resetMask>
          <fields>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCR</name>
          <description>desc SMCR</description>
          <addressOffset>0x8</addressOffset>
          <resetMask>0xFFF7</resetMask>
          <fields>
            <field>
              <name>SMS</name>
              <description>desc SMS</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>TS</name>
              <description>desc TS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>MSM</name>
              <description>desc MSM</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ETF</name>
              <description>desc ETF</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>ETPS</name>
              <description>desc ETPS</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>ECE</name>
              <description>desc ECE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>ETP</name>
              <description>desc ETP</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_OUTPUT</name>
          <description>desc CCMR2:OUTPUT</description>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC3FE</name>
              <description>desc OC3FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC3PE</name>
              <description>desc OC3PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC3M</name>
              <description>desc OC3M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC3CE</name>
              <description>desc OC3CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC4FE</name>
              <description>desc OC4FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC4PE</name>
              <description>desc OC4PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC4M</name>
              <description>desc OC4M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC4CE</name>
              <description>desc OC4CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR2_INPUT</name>
          <description>desc CCMR2:INPUT</description>
          <alternateRegister>CCMR2_OUTPUT</alternateRegister>
          <addressOffset>0x1C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC3S</name>
              <description>desc CC3S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC3PSC</name>
              <description>desc IC3PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC3F</name>
              <description>desc IC3F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC4S</name>
              <description>desc CC4S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC4PSC</name>
              <description>desc IC4PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC4F</name>
              <description>desc IC4F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR2</name>
          <description>desc CCR2</description>
          <addressOffset>0x38</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR2</name>
              <description>desc CCR2</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR3</name>
          <description>desc CCR3</description>
          <addressOffset>0x3C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR3</name>
              <description>desc CCR3</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR4</name>
          <description>desc CCR4</description>
          <addressOffset>0x40</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR4</name>
              <description>desc CCR4</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DCR</name>
          <description>desc DCR</description>
          <addressOffset>0x48</addressOffset>
          <resetMask>0x1F1F</resetMask>
          <fields>
            <field>
              <name>DBA</name>
              <description>desc DBA</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>DBL</name>
              <description>desc DBL</description>
              <bitRange>[12:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAR</name>
          <description>desc DMAR</description>
          <addressOffset>0x4C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DMAB</name>
              <description>desc DMAB</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM6</name>
      <description>desc TIM</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40001000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM6_LPTIM1</name>
        <description>TIM6, LPTIM1 global Interrupts</description>
        <value>17</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0xF8</resetMask>
          <fields>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="TIM6">
      <name>TIM7</name>
      <description>desc TIM</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40001400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM7</name>
        <description>TIM7 global Interrupt</description>
        <value>18</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>TIM14</name>
      <description>General purpose timer</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40002000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM14</name>
        <description>TIM14 global Interrupt</description>
        <value>19</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>OR</name>
          <description>desc OR</description>
          <addressOffset>0x50</addressOffset>
          <fields>
            <field>
              <name>TI1_RMP</name>
              <description>desc TI1_RMP</description>
              <bitRange>[1:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM15</name>
      <baseAddress>0x40014000</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM15</name>
        <description>TIM15 global Interrupt</description>
        <value>20</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0xF8</resetMask>
          <fields>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SMCR</name>
          <description>desc SMCR</description>
          <addressOffset>0x8</addressOffset>
          <resetMask>0xFFF7</resetMask>
          <fields>
            <field>
              <name>SMS</name>
              <description>desc SMS</description>
              <bitRange>[2:0]</bitRange>
            </field>
            <field>
              <name>TS</name>
              <description>desc TS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>MSM</name>
              <description>desc MSM</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>ETF</name>
              <description>desc ETF</description>
              <bitRange>[11:8]</bitRange>
            </field>
            <field>
              <name>ETPS</name>
              <description>desc ETPS</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>ECE</name>
              <description>desc ECE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>ETP</name>
              <description>desc ETP</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RCR</name>
          <description>desc RCR</description>
          <addressOffset>0x30</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>REP</name>
              <description>desc REP</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR2</name>
          <description>desc CCR2</description>
          <addressOffset>0x38</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR2</name>
              <description>desc CCR2</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BDTR</name>
          <description>desc BDTR</description>
          <addressOffset>0x44</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DTG</name>
              <description>desc DTG</description>
              <bitRange>[7:0]</bitRange>
            </field>
            <field>
              <name>LOCK</name>
              <description>desc LOCK</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OSSI</name>
              <description>desc OSSI</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OSSR</name>
              <description>desc OSSR</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>BKE</name>
              <description>desc BKE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>BKP</name>
              <description>desc BKP</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>AOE</name>
              <description>desc AOE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>MOE</name>
              <description>desc MOE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DCR</name>
          <description>desc DCR</description>
          <addressOffset>0x48</addressOffset>
          <resetMask>0x1F1F</resetMask>
          <fields>
            <field>
              <name>DBA</name>
              <description>desc DBA</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>DBL</name>
              <description>desc DBL</description>
              <bitRange>[12:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAR</name>
          <description>desc DMAR</description>
          <addressOffset>0x4C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DMAB</name>
              <description>desc DMAB</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral>
      <name>TIM16</name>
      <description>General purpose timer</description>
      <groupName>TIM</groupName>
      <baseAddress>0x40014400</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>TIM16</name>
        <description>TIM16 global Interrupt</description>
        <value>21</value>
      </interrupt>
      <registers>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0x0</addressOffset>
          <resetMask>0x3FF</resetMask>
          <fields>
            <field>
              <name>CEN</name>
              <description>desc CEN</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>UDIS</name>
              <description>desc UDIS</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>URS</name>
              <description>desc URS</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OPM</name>
              <description>desc OPM</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>DIR</name>
              <description>desc DIR</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CMS</name>
              <description>desc CMS</description>
              <bitRange>[6:5]</bitRange>
            </field>
            <field>
              <name>ARPE</name>
              <description>desc ARPE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CKD</name>
              <description>desc CKD</description>
              <bitRange>[9:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x4</addressOffset>
          <resetMask>0xF8</resetMask>
          <fields>
            <field>
              <name>CCDS</name>
              <description>desc CCDS</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>MMS</name>
              <description>desc MMS</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>TI1S</name>
              <description>desc TI1S</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DIER</name>
          <description>desc DIER</description>
          <addressOffset>0xC</addressOffset>
          <resetMask>0x5F5F</resetMask>
          <fields>
            <field>
              <name>UIE</name>
              <description>desc UIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IE</name>
              <description>desc CC1IE</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IE</name>
              <description>desc CC2IE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IE</name>
              <description>desc CC3IE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IE</name>
              <description>desc CC4IE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>TIE</name>
              <description>desc TIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>UDE</name>
              <description>desc UDE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC1DE</name>
              <description>desc CC1DE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2DE</name>
              <description>desc CC2DE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3DE</name>
              <description>desc CC3DE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4DE</name>
              <description>desc CC4DE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>TDE</name>
              <description>desc TDE</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x10</addressOffset>
          <resetMask>0x1E5F</resetMask>
          <fields>
            <field>
              <name>UIF</name>
              <description>desc UIF</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1IF</name>
              <description>desc CC1IF</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2IF</name>
              <description>desc CC2IF</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>CC3IF</name>
              <description>desc CC3IF</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>CC4IF</name>
              <description>desc CC4IF</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>COMIF</name>
              <description>desc COMIF</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TIF</name>
              <description>desc TIF</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>BIF</name>
              <description>desc BIF</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC1OF</name>
              <description>desc CC1OF</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC2OF</name>
              <description>desc CC2OF</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CC3OF</name>
              <description>desc CC3OF</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>CC4OF</name>
              <description>desc CC4OF</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>IC1IR</name>
              <description>desc IC1IR</description>
              <bitRange>[16:16]</bitRange>
            </field>
            <field>
              <name>IC2IR</name>
              <description>desc IC2IR</description>
              <bitRange>[17:17]</bitRange>
            </field>
            <field>
              <name>IC3IR</name>
              <description>desc IC3IR</description>
              <bitRange>[18:18]</bitRange>
            </field>
            <field>
              <name>IC4IR</name>
              <description>desc IC3IR</description>
              <bitRange>[19:19]</bitRange>
            </field>
            <field>
              <name>IC1IF</name>
              <description>desc IC1IF</description>
              <bitRange>[20:20]</bitRange>
            </field>
            <field>
              <name>IC2IF</name>
              <description>desc IC2IF</description>
              <bitRange>[21:21]</bitRange>
            </field>
            <field>
              <name>IC3IF</name>
              <description>desc IC3IF</description>
              <bitRange>[22:22]</bitRange>
            </field>
            <field>
              <name>IC4IF</name>
              <description>desc IC3IF</description>
              <bitRange>[23:23]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>EGR</name>
          <description>desc EGR</description>
          <addressOffset>0x14</addressOffset>
          <access>write-only</access>
          <resetMask>0x5F</resetMask>
          <fields>
            <field>
              <name>UG</name>
              <description>desc UG</description>
              <bitRange>[0:0]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC1G</name>
              <description>Capture/Compare 1 Generation</description>
              <bitRange>[1:1]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC2G</name>
              <description>desc CC2G</description>
              <bitRange>[2:2]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC3G</name>
              <description>desc CC3G</description>
              <bitRange>[3:3]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>CC4G</name>
              <description>desc CC4G</description>
              <bitRange>[4:4]</bitRange>
              <access>write-only</access>
            </field>
            <field>
              <name>TG</name>
              <description>desc TG</description>
              <bitRange>[6:6]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_OUTPUT</name>
          <description>desc CCMR1:OUTPUT</description>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>OC1FE</name>
              <description>desc OC1FE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>OC1PE</name>
              <description>desc OC1PE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>OC1M</name>
              <description>desc OC1M</description>
              <bitRange>[6:4]</bitRange>
            </field>
            <field>
              <name>OC1CE</name>
              <description>desc OC1CE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OC2FE</name>
              <description>desc OC2FE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OC2PE</name>
              <description>desc OC2PE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>OC2M</name>
              <description>desc OC2M</description>
              <bitRange>[14:12]</bitRange>
            </field>
            <field>
              <name>OC2CE</name>
              <description>desc OC2CE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCMR1_INPUT</name>
          <description>desc CCMR1:INPUT</description>
          <alternateRegister>CCMR1_OUTPUT</alternateRegister>
          <addressOffset>0x18</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CC1S</name>
              <description>desc CC1S</description>
              <bitRange>[1:0]</bitRange>
            </field>
            <field>
              <name>IC1PSC</name>
              <description>desc IC1PSC</description>
              <bitRange>[3:2]</bitRange>
            </field>
            <field>
              <name>IC1F</name>
              <description>desc IC1F</description>
              <bitRange>[7:4]</bitRange>
            </field>
            <field>
              <name>CC2S</name>
              <description>desc CC2S</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>IC2PSC</name>
              <description>desc IC2PSC</description>
              <bitRange>[11:10]</bitRange>
            </field>
            <field>
              <name>IC2F</name>
              <description>desc IC2F</description>
              <bitRange>[15:12]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCER</name>
          <description>desc CCER</description>
          <addressOffset>0x20</addressOffset>
          <resetMask>0x3333</resetMask>
          <fields>
            <field>
              <name>CC1E</name>
              <description>desc CC1E</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>CC1P</name>
              <description>desc CC1P</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>CC2E</name>
              <description>desc CC2E</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>CC2P</name>
              <description>desc CC2P</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>CC3E</name>
              <description>desc CC3E</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CC3P</name>
              <description>desc CC3P</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CC4E</name>
              <description>desc CC4E</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>CC4P</name>
              <description>desc CC4P</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CNT</name>
          <description>desc CNT</description>
          <addressOffset>0x24</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CNT</name>
              <description>desc CNT</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>PSC</name>
          <description>desc PSC</description>
          <addressOffset>0x28</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>ARR</name>
          <description>desc ARR</description>
          <addressOffset>0x2C</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>ARR</name>
              <description>desc ARR</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>RCR</name>
          <description>desc RCR</description>
          <addressOffset>0x30</addressOffset>
          <resetValue>0xFFFF</resetValue>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>REP</name>
              <description>desc REP</description>
              <bitRange>[7:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CCR1</name>
          <description>desc CCR1</description>
          <addressOffset>0x34</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>CCR1</name>
              <description>desc CCR1</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BDTR</name>
          <description>desc BDTR</description>
          <addressOffset>0x44</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DTG</name>
              <description>desc DTG</description>
              <bitRange>[7:0]</bitRange>
            </field>
            <field>
              <name>LOCK</name>
              <description>desc LOCK</description>
              <bitRange>[9:8]</bitRange>
            </field>
            <field>
              <name>OSSI</name>
              <description>desc OSSI</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OSSR</name>
              <description>desc OSSR</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>BKE</name>
              <description>desc BKE</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>BKP</name>
              <description>desc BKP</description>
              <bitRange>[13:13]</bitRange>
            </field>
            <field>
              <name>AOE</name>
              <description>desc AOE</description>
              <bitRange>[14:14]</bitRange>
            </field>
            <field>
              <name>MOE</name>
              <description>desc MOE</description>
              <bitRange>[15:15]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DCR</name>
          <description>desc DCR</description>
          <addressOffset>0x48</addressOffset>
          <resetMask>0x1F1F</resetMask>
          <fields>
            <field>
              <name>DBA</name>
              <description>desc DBA</description>
              <bitRange>[4:0]</bitRange>
            </field>
            <field>
              <name>DBL</name>
              <description>desc DBL</description>
              <bitRange>[12:8]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>DMAR</name>
          <description>desc DMAR</description>
          <addressOffset>0x4C</addressOffset>
          <resetMask>0xFFFF</resetMask>
          <fields>
            <field>
              <name>DMAB</name>
              <description>desc DMAB</description>
              <bitRange>[15:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="TIM16">
      <name>TIM17</name>
      <baseAddress>0x40014800</baseAddress>
      <interrupt>
        <name>TIM17</name>
        <description>TIM17 global Interrupt</description>
        <value>22</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>USART1</name>
      <description>Universal synchronous asynchronous receiver transmitter</description>
      <groupName>USART</groupName>
      <baseAddress>0x40013800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>USART1</name>
        <description>USART1 global Interrupt</description>
        <value>27</value>
      </interrupt>
      <registers>
        <register>
          <name>SR</name>
          <description>desc SR</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0xC0</resetValue>
          <fields>
            <field>
              <name>PE</name>
              <description>desc PE</description>
              <bitRange>[0:0]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>FE</name>
              <description>desc FE</description>
              <bitRange>[1:1]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>NE</name>
              <description>desc NE</description>
              <bitRange>[2:2]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ORE</name>
              <description>desc ORE</description>
              <bitRange>[3:3]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>IDLE</name>
              <description>desc IDLE</description>
              <bitRange>[4:4]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>RXNE</name>
              <description>desc RXNE</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TC</name>
              <description>desc TC</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>TXE</name>
              <description>desc TXE</description>
              <bitRange>[7:7]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>LBD</name>
              <description>desc LBD</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CTS</name>
              <description>desc CTS</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>ABRF</name>
              <description>desc ABRF</description>
              <bitRange>[10:10]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ABRE</name>
              <description>desc ABRE</description>
              <bitRange>[11:11]</bitRange>
              <access>read-only</access>
            </field>
            <field>
              <name>ABRRQ</name>
              <description>desc ABRRQ</description>
              <bitRange>[12:12]</bitRange>
              <access>write-only</access>
            </field>
          </fields>
        </register>
        <register>
          <name>DR</name>
          <description>desc DR</description>
          <addressOffset>0x4</addressOffset>
          <fields>
            <field>
              <name>DR</name>
              <description>desc DR</description>
              <bitRange>[8:0]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>BRR</name>
          <description>desc BRR</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>DIV_FRACTION</name>
              <description>desc DIV_Fraction</description>
              <bitRange>[3:0]</bitRange>
            </field>
            <field>
              <name>DIV_MANTISSA</name>
              <description>desc DIV_Mantissa</description>
              <bitRange>[15:4]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR1</name>
          <description>desc CR1</description>
          <addressOffset>0xC</addressOffset>
          <fields>
            <field>
              <name>SBK</name>
              <description>desc SBK</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>RWU</name>
              <description>desc RWU</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>RE</name>
              <description>desc RE</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>TE</name>
              <description>desc TE</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>IDLEIE</name>
              <description>desc IDLEIE</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>RXNEIE</name>
              <description>desc RXNEIE</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>TCIE</name>
              <description>desc TCIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>TXEIE</name>
              <description>desc TXEIE</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>PEIE</name>
              <description>desc PEIE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>PS</name>
              <description>desc PS</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>PCE</name>
              <description>desc PCE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>WAKE</name>
              <description>desc WAKE</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>M</name>
              <description>desc M</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>UE</name>
              <description>desc UE</description>
              <bitRange>[13:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR2</name>
          <description>desc CR2</description>
          <addressOffset>0x10</addressOffset>
          <fields>
            <field>
              <name>ADD</name>
              <description>desc ADD</description>
              <bitRange>[3:0]</bitRange>
            </field>
            <field>
              <name>LBDL</name>
              <description>desc LBDL</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>LBDIE</name>
              <description>desc LBDIE</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>LBCL</name>
              <description>desc LBCL</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CPHA</name>
              <description>desc CPHA</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CPOL</name>
              <description>desc CPOL</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>CLKEN</name>
              <description>desc CLKEN</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>STOP</name>
              <description>desc STOP</description>
              <bitRange>[13:12]</bitRange>
            </field>
            <field>
              <name>LINEN</name>
              <description>desc LINEN</description>
              <bitRange>[14:14]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CR3</name>
          <description>desc CR3</description>
          <addressOffset>0x14</addressOffset>
          <fields>
            <field>
              <name>EIE</name>
              <description>desc EIE</description>
              <bitRange>[0:0]</bitRange>
            </field>
            <field>
              <name>IREN</name>
              <description>desc IREN</description>
              <bitRange>[1:1]</bitRange>
            </field>
            <field>
              <name>IRLP</name>
              <description>desc IRLP</description>
              <bitRange>[2:2]</bitRange>
            </field>
            <field>
              <name>HDSEL</name>
              <description>desc HDSEL</description>
              <bitRange>[3:3]</bitRange>
            </field>
            <field>
              <name>NACK</name>
              <description>desc NACK</description>
              <bitRange>[4:4]</bitRange>
            </field>
            <field>
              <name>SCEN</name>
              <description>desc SCEN</description>
              <bitRange>[5:5]</bitRange>
            </field>
            <field>
              <name>DMAR</name>
              <description>desc DMAR</description>
              <bitRange>[6:6]</bitRange>
            </field>
            <field>
              <name>DMAT</name>
              <description>desc DMAT</description>
              <bitRange>[7:7]</bitRange>
            </field>
            <field>
              <name>RTSE</name>
              <description>desc RTSE</description>
              <bitRange>[8:8]</bitRange>
            </field>
            <field>
              <name>CTSE</name>
              <description>desc CTSE</description>
              <bitRange>[9:9]</bitRange>
            </field>
            <field>
              <name>CTSIE</name>
              <description>desc CTSIE</description>
              <bitRange>[10:10]</bitRange>
            </field>
            <field>
              <name>OVER8</name>
              <description>desc OVER8</description>
              <bitRange>[11:11]</bitRange>
            </field>
            <field>
              <name>ABREN</name>
              <description>desc ABREN</description>
              <bitRange>[12:12]</bitRange>
            </field>
            <field>
              <name>ABRMODE</name>
              <description>desc ABRMODE</description>
              <bitRange>[14:13]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>GTPR</name>
          <description>desc GTPR</description>
          <addressOffset>0x18</addressOffset>
          <fields>
            <field>
              <name>PSC</name>
              <description>desc PSC</description>
              <bitRange>[7:0]</bitRange>
            </field>
            <field>
              <name>GT</name>
              <description>desc GT</description>
              <bitRange>[15:8]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
    <peripheral derivedFrom="USART1">
      <name>USART2</name>
      <baseAddress>0x40004400</baseAddress>
      <interrupt>
        <name>USART2</name>
        <description>USART2 global Interrupt</description>
        <value>28</value>
      </interrupt>
    </peripheral>
    <peripheral derivedFrom="USART1">
      <name>USART3</name>
      <description>desc USART</description>
      <groupName>USART</groupName>
      <baseAddress>0x40004800</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>USART3_4</name>
        <description>USART3, 4 global Interrupts</description>
        <value>29</value>
      </interrupt>
    </peripheral>
    <peripheral derivedFrom="USART1">
      <name>USART4</name>
      <description>desc USART</description>
      <groupName>USART</groupName>
      <baseAddress>0x40004C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>USART3_4</name>
        <description>USART3, 4 global Interrupts</description>
        <value>29</value>
      </interrupt>
    </peripheral>
    <peripheral>
      <name>WWDG</name>
      <description>Window watchdog</description>
      <groupName>WWDG</groupName>
      <baseAddress>0x40002C00</baseAddress>
      <addressBlock>
        <offset>0x0</offset>
        <size>0x400</size>
        <usage>registers</usage>
      </addressBlock>
      <interrupt>
        <name>WWDG</name>
        <description>Window WatchDog Interrupt</description>
        <value>0</value>
      </interrupt>
      <registers>
        <register>
          <name>CR</name>
          <displayName>CR</displayName>
          <description>Control register (WWDG_CR)</description>
          <addressOffset>0x0</addressOffset>
          <resetValue>0x7F</resetValue>
          <fields>
            <field>
              <name>T</name>
              <description>7-bit counter (MSB to LSB)</description>
              <bitRange>[6:0]</bitRange>
            </field>
            <field>
              <name>WDGA</name>
              <description>Activation bit</description>
              <bitRange>[7:7]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>CFR</name>
          <displayName>CFR</displayName>
          <description>Configuration register (WWDG_CFR)</description>
          <addressOffset>0x4</addressOffset>
          <resetValue>0x7F</resetValue>
          <fields>
            <field>
              <name>W</name>
              <description>7-bit window value</description>
              <bitRange>[6:0]</bitRange>
            </field>
            <field>
              <name>WDGTB</name>
              <description>Timer Base</description>
              <bitRange>[8:7]</bitRange>
            </field>
            <field>
              <name>EWI</name>
              <description>Early Wakeup Interrupt</description>
              <bitRange>[9:9]</bitRange>
            </field>
          </fields>
        </register>
        <register>
          <name>SR</name>
          <displayName>SR</displayName>
          <description>Status register (WWDG_SR)</description>
          <addressOffset>0x8</addressOffset>
          <fields>
            <field>
              <name>EWIF</name>
              <description>Early Wakeup Interrupt flag</description>
              <bitRange>[0:0]</bitRange>
            </field>
          </fields>
        </register>
      </registers>
    </peripheral>
  </peripherals>
</device>