| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096 |
- <?xml version="1.0" encoding="UTF-8"?>
- <Root xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="SCHVerif.xsd">
- <Device>
- <DeviceID>0x467</DeviceID>
- <Vendor>STMicroelectronics</Vendor>
- <Type>MCU</Type>
- <!-- cortex written in word file +mpu should it be written?? -->
- <CPU>Cortex-M0+</CPU>
- <Name>STM32G0B1xx/C1xx</Name>
- <Series>STM32G0</Series>
- <Description>ARM 32-bit Cortex-M0+ based device</Description>
- <Configurations>
- <!-- JTAG_SWD Interface -->
- <Interface name="JTAG_SWD"/>
- <!-- 512B Single Bank-->
- <Configuration number="0x0">
- <DualBank>
- <ReadRegister address="0x40023C14" mask="0x20000000" value="0x20000000"/>
- </DualBank>
- <FlashSize>
- <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="200"/>
- </FlashSize>
- </Configuration>
- <!-- 256 Single Bank-->
- <Configuration number="0x1">
- <DualBank>
- <ReadRegister address="0x40023C14" mask="0x20000000" value="0x20000000"/>
- </DualBank>
- <FlashSize>
- <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="100"/>
- </FlashSize>
- </Configuration>
- <!-- 128 Single Bank-->
- <Configuration number="0x2">
- <DualBank>
- <ReadRegister address="0x40023C14" mask="0x20000000" value="0x20000000"/>
- </DualBank>
- <FlashSize>
- <ReadRegister address="0x1FFF75E0" mask="0x0000FFFF" value="80"/>
- </FlashSize>
- </Configuration>
- <!-- Bootloader Interface -->
- <Interface name="Bootloader"/>
- </Configurations>
- <!-- Peripherals -->
- <Peripherals>
- <!-- Embedded SRAM -->
- <Peripheral>
- <Name>Embedded SRAM</Name>
- <Type>Storage</Type>
- <Description/>
- <ErasedValue>0x00</ErasedValue>
- <Access>RWE</Access>
- <!-- 128KB -->
- <Configuration>
- <Parameters address="0x20000000" name="SRAM" size="0x20000"/>
- <Description/>
- <Organization>Single</Organization>
- <Bank name="Bank 1">
- <Field>
- <Parameters address="0x20000000" name="SRAM" occurence="0x1" size="0x20000"/>
- </Field>
- </Bank>
- </Configuration>
- </Peripheral>
- <!-- Embedded Flash -->
- <Peripheral>
- <Name>Embedded Flash</Name>
- <Type>Storage</Type>
- <Description>The Flash memory interface manages CPU AHB I-Code and D-Code accesses to the Flash memory. It implements the erase and program Flash memory operations and the read and write protection mechanisms</Description>
- <ErasedValue>0xFF</ErasedValue>
- <Access>RWE</Access>
- <FlashSize address="0x1FFF75E0" default="0x80000"/>
- <!-- 512K dual Bank -->
- <Configuration config="0">
- <Parameters address="0x08000000" name=" 512 KB Embedded Flash" size="0x080000"/>
- <Description/>
- <Organization>Dual</Organization>
- <Allignement>0x8</Allignement>
- <Bank name="Bank 1">
- <Field>
- <Parameters address="0x08000000" name="sector0" occurence="0x80" size="0x800"/>
- </Field>
- </Bank>
- <Bank name="Bank 2">
- <Field>
- <Parameters address="0x08040000" name="sector128" occurence="0x80" size="0x800"/>
- </Field>
- </Bank>
- </Configuration>
- <!-- 256K single Bank-->
- <Configuration number="0x1">
- <Parameters address="0x08000000" name=" 256 KB Embedded Flash" size="0x040000"/>
- <Description/>
- <Organization>Dual</Organization>
- <Allignement>0x8</Allignement>
- <Bank name="Bank 1">
- <Field>
- <Parameters address="0x08000000" name="sector0" occurence="0x80" size="0x800"/>
- </Field>
- </Bank>
- </Configuration>
- <!-- 128K Single Bank-->
- <Configuration number="0x2">
- <Parameters address="0x08000000" name=" 128 KB Embedded Flash" size="0x020000"/>
- <Description/>
- <Organization>Dual</Organization>
- <Allignement>0x8</Allignement>
- <Bank name="Bank 1">
- <Field>
- <Parameters address="0x08000000" name="sector0" occurence="0x40" size="0x800"/>
- </Field>
- </Bank>
- </Configuration>
- </Peripheral>
- <!-- OTP -->
- <Peripheral>
- <Name>OTP</Name>
- <Type>Storage</Type>
- <Description>The Data OTP memory block. It contains the one time programmable bits.</Description>
- <ErasedValue>0xFF</ErasedValue>
- <Access>RW</Access>
- <!-- 1 KBytes single bank -->
- <Configuration>
- <Parameters address="0x1FFF7000" name=" 1 KBytes Data OTP" size="0x400"/>
- <Description/>
- <Organization>Single</Organization>
- <Allignement>0x4</Allignement>
- <Bank name="OTP">
- <Field>
- <Parameters address="0x1FFF7000" name="OTP" occurence="0x1" size="0x400"/>
- </Field>
- </Bank>
- </Configuration>
- </Peripheral>
- <!-- Mirror Option Bytes -->
- <Peripheral>
- <Name>MirrorOptionBytes</Name>
- <Type>Storage</Type>
- <Description>Mirror Option Bytes contains the extra area.</Description>
- <ErasedValue>0xFF</ErasedValue>
- <Access>RW</Access>
- <!-- 56 Bytes Dual bank -->
- <Configuration>
- <Parameters address="0x1FFF7800" name=" 56 Bytes Data MirrorOptionBytes" size="0x38"/>
- <Description/>
- <Organization>Dual</Organization>
- <Allignement>0x4</Allignement>
- <Bank name="Bank 1">
- <Field>
- <Parameters address="0x1FFF7800" name="Bank1" occurence="0x1" size="0x34"/>
- </Field>
- </Bank>
- <Bank name="Bank 2">
- <Field>
- <Parameters address="0x1FFF7870" name="Bank2" occurence="0x1" size="0x4"/>
- </Field>
- </Bank>
- </Configuration>
- </Peripheral>
- <!-- Option Bytes -->
- <Peripheral>
- <Name>Option Bytes</Name>
- <Type>Configuration</Type>
- <Description/>
- <Access>RW</Access>
- <Bank interface="JTAG_SWD">
- <Parameters address="0x40022020" name="Bank 1" size="0x40"/>
- <Category>
- <Name>Read Out Protection</Name>
- <Field>
- <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>RDP</Name>
- <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0xAA">Level 0, no protection</Val>
- <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
- <Val value="0xCC">Level 2, chip protection</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>BOR Level</Name>
- <Field>
- <Parameters name="FLASH_OPTR" size="0x4" address="0x40022020"/>
- <AssignedBits>
- <Bit>
- <Name>BOR_EN</Name>
- <Description/>
- <BitOffset>0x8</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Configurable brown out reset disabled, power-on reset defined by POR/PDR levels</Val>
- <Val value="0x1">Configurable brown out reset enabled, values of BORR_LEV and BORF_LEV taken into account</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>BORF_LEV</Name>
- <Description>These bits contain the supply level threshold that activates/releases the reset. They can be written to program a new BOR level value into Flash memory</Description>
- <BitOffset>0x9</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOR falling level 1 with threshold around 2.0 V</Val>
- <Val value="0x1">BOR falling level 2 with threshold around 2.2 V</Val>
- <Val value="0x2">BOR falling level 3 with threshold around 2.5 V</Val>
- <Val value="0x3">BOR falling level 4 with threshold around 2.8 V</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>BORR_LEV</Name>
- <Description>These bits contain the supply level threshold that activates/releases the reset. They can be written to program a new BOR level value into Flash memory</Description>
- <BitOffset>0xB</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOR rising level 1 with threshold around 2.1 V</Val>
- <Val value="0x1">BOR rising level 2 with threshold around 2.3 V</Val>
- <Val value="0x2">BOR rising level 3 with threshold around 2.6 V</Val>
- <Val value="0x3">BOR rising level 4 with threshold around 2.9 V</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>User Configuration</Name>
- <Field>
- <Parameters address="0x40022020" name="FLASH_OPTR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>nRST_STOP</Name>
- <Description/>
- <BitOffset>0xD</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering Stop mode</Val>
- <Val value="0x1">No reset generated when entering Stop mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nRST_STDBY</Name>
- <Description/>
- <BitOffset>0xE</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering Standby mode</Val>
- <Val value="0x1">No reset generated when entering Standby mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nRST_SHDW</Name>
- <Description/>
- <BitOffset>0xF</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
- <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_SW</Name>
- <Description/>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Hardware independant watchdog</Val>
- <Val value="0x1">Software independant watchdog</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_STOP</Name>
- <Description/>
- <BitOffset>0x11</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Freeze IWDG counter in stop mode</Val>
- <Val value="0x1">IWDG counter active in stop mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_STDBY</Name>
- <Description/>
- <BitOffset>0x12</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Freeze IWDG counter in standby mode</Val>
- <Val value="0x1">IWDG counter active in standby mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>WWDG_SW</Name>
- <Description/>
- <BitOffset>0x13</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Hardware window watchdog</Val>
- <Val value="0x1">Software window watchdog</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>RAM_PARITY_CHECK</Name>
- <Description/>
- <BitOffset>0x16</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">SRAM2 parity check enable</Val>
- <Val value="0x1">SRAM2 parity check disable</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT_SEL</Name>
- <Description/>
- <BitOffset>0x18</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOOT0 signal is defined by BOOT0 pin value (legacy mode)</Val>
- <Val value="0x1">BOOT0 signal is defined by nBOOT0 option bit</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT1</Name>
- <Description/>
- <BitOffset>0x19</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Boot from Flash if BOOT0 = 0, otherwise Embedded SRAM1</Val>
- <Val value="0x1">Boot from Flash if BOOT0 = 0, otherwise system memory</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT0</Name>
- <Description/>
- <BitOffset>0x1A</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">nBOOT0=0</Val>
- <Val value="0x1">nBOOT0=1</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>NRST_MODE</Name>
- <Description/>
- <BitOffset>0x1B</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reserved</Val>
- <Val value="0x1">Reset Input only: a low level on the NRST pin generates system reset, internal RESET not propagated to the NSRT pin</Val>
- <Val value="0x2">GPIO: standard GPIO pad functionality, only internal RESET possible</Val>
- <Val value="0x3">Bidirectional reset: NRST pin configured in reset input/output mode (legacy mode)</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IRHEN</Name>
- <Description>Internal reset holder enable bit</Description>
- <BitOffset>0x1D</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Internal resets are propagated as simple pulse on NRST pin</Val>
- <Val value="0x1">Internal resets drives NRST pin low until it is seen as low level</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>PCROP Protection</Name>
- <Field>
- <Parameters address="0x40022024" name="FLASH_PCROP1SR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1A_STRT</Name>
- <Description>Flash Area A PCROP start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022028" name="FLASH_PCROP1ER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1A_END</Name>
- <Description>Flash Area A PCROP End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- <Bit>
- <Name>PCROP_RDP</Name>
- <Description/>
- <BitOffset>0x1F</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
- <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022034" name="FLASH_PCROP1BSR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1B_STRT</Name>
- <Description>Flash Area B PCROP start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022038" name="FLASH_PCROP1BER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1B_END</Name>
- <Description>Flash Area B PCROP End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022044" name="FLASH_PCROP2SR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2A_STRT</Name>
- <Description>Flash Area A PCROP2 start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022048" name="FLASH_PCROP1ER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2A_END</Name>
- <Description>Flash Area A PCROP2 End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022054" name="FLASH_PCROP1BSR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2B_STRT</Name>
- <Description>Flash Area B PCROP2 start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022058" name="FLASH_PCROP1BER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2B_END</Name>
- <Description>Flash Area B PCROP2 End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>Write Protection</Name>
- <Field>
- <Parameters address="0x4002202C" name="FLASH_WRP1AR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP1A_STRT</Name>
- <Description>The address of the first page of the Bank 1 WRP first area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP1A_END</Name>
- <Description>The address of the last page of the Bank 1 WRP first area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022030" name="FLASH_WRP1BR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP1B_STRT</Name>
- <Description>The address of the first page of the Bank 1 WRP second area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP1B_END</Name>
- <Description>The address of the last page of the Bank 1 WRP second area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
-
- <Field>
- <Parameters address="0x4002204C" name="FLASH_WRP2AR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP2A_STRT</Name>
- <Description>The address of the first page of the Bank 2 WRP first area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP2A_END</Name>
- <Description>The address of the last page of the Bank 2 WRP first area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x40022050" name="FLASH_WRP2BR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP2B_STRT</Name>
- <Description>The address of the first page of the Bank 2 WRP second area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP2B_END</Name>
- <Description>The address of the last page of the Bank 2 WRP second area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- </Bank>
- <Bank interface="JTAG_SWD">
- <Parameters address="0x40022080" name="Bank 2" size="0x10"/>
- <Category>
- <Name>FLASH security</Name>
- <Field>
- <Parameters address="0x40022080" name="FLASH_SECR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>BOOT_LOCK</Name>
- <Description>used to force boot from user area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Boot based on the pad/option bit configuration</Val>
- <Val value="0x1">Boot forced from Main Flash memory</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>SEC_SIZE</Name>
- <Description>Securable memory for Bank 1 </Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- </Bit>
- <Bit>
- <Name>SEC_SIZE2</Name>
- <Description>Securable memory for Bank 2 On Dual Bank device,otherwise reserved </Description>
- <BitOffset>0x14</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- </Bank>
- <Bank interface="Bootloader">
- <Parameters address="0x1FFF7800" name="Bank 1" size="0x44"/>
- <Category>
- <Name>Read Out Protection</Name>
- <Field>
- <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>RDP</Name>
- <Description>Read protection option byte. The read protection is used to protect the software code stored in Flash memory.</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0xAA">Level 0, no protection</Val>
- <Val value="0xBB">or any value other than 0xAA and 0xCC: Level 1, read protection</Val>
- <Val value="0xCC">Level 2, chip protection</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>BOR Level</Name>
- <Field>
- <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>BOR_EN</Name>
- <Description/>
- <BitOffset>0x8</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Configurable brown out reset disabled, power-on reset defined by POR/PDR levels</Val>
- <Val value="0x1">Configurable brown out reset enabled, values of BORR_LEV and BORF_LEV taken into account</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>BORF_LEV</Name>
- <Description>These bits contain the supply level threshold that activates/releases the reset. They can be written to program a new BOR level value into Flash memory</Description>
- <BitOffset>0x9</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOR falling level 1 with threshold around 2.0 V</Val>
- <Val value="0x1">BOR falling level 2 with threshold around 2.2 V</Val>
- <Val value="0x2">BOR falling level 3 with threshold around 2.5 V</Val>
- <Val value="0x3">BOR falling level 4 with threshold around 2.8 V</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>BORR_LEV</Name>
- <Description>These bits contain the supply level threshold that activates/releases the reset. They can be written to program a new BOR level value into Flash memory</Description>
- <BitOffset>0xB</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOR rising level 1 with threshold around 2.1 V</Val>
- <Val value="0x1">BOR rising level 2 with threshold around 2.3 V</Val>
- <Val value="0x2">BOR rising level 3 with threshold around 2.6 V</Val>
- <Val value="0x3">BOR rising level 4 with threshold around 2.9 V</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>User Configuration</Name>
- <Field>
- <Parameters address="0x1FFF7800" name="FLASH_OPTR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>nRST_STOP</Name>
- <Description/>
- <BitOffset>0xD</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering Stop mode</Val>
- <Val value="0x1">No reset generated when entering Stop mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nRST_STDBY</Name>
- <Description/>
- <BitOffset>0xE</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering Standby mode</Val>
- <Val value="0x1">No reset generated when entering Standby mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nRST_SHDW</Name>
- <Description/>
- <BitOffset>0xF</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reset generated when entering the Shutdown mode</Val>
- <Val value="0x1">No reset generated when entering the Shutdown mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_SW</Name>
- <Description/>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Hardware independant watchdog</Val>
- <Val value="0x1">Software independant watchdog</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_STOP</Name>
- <Description/>
- <BitOffset>0x11</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Freeze IWDG counter in stop mode</Val>
- <Val value="0x1">IWDG counter active in stop mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IWDG_STDBY</Name>
- <Description/>
- <BitOffset>0x12</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Freeze IWDG counter in standby mode</Val>
- <Val value="0x1">IWDG counter active in standby mode</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>WWDG_SW</Name>
- <Description/>
- <BitOffset>0x13</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Hardware window watchdog</Val>
- <Val value="0x1">Software window watchdog</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>RAM_PARITY_CHECK</Name>
- <Description/>
- <BitOffset>0x16</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">SRAM2 parity check enable</Val>
- <Val value="0x1">SRAM2 parity check disable</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT_SEL</Name>
- <Description/>
- <BitOffset>0x18</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">BOOT0 signal is defined by BOOT0 pin value (legacy mode)</Val>
- <Val value="0x1">BOOT0 signal is defined by nBOOT0 option bit</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT1</Name>
- <Description/>
- <BitOffset>0x19</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Boot from Flash if BOOT0 = 0, otherwise Embedded SRAM1</Val>
- <Val value="0x1">Boot from Flash if BOOT0 = 0, otherwise system memory</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>nBOOT0</Name>
- <Description/>
- <BitOffset>0x1A</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">nBOOT0=0</Val>
- <Val value="0x1">nBOOT0=1</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>NRST_MODE</Name>
- <Description/>
- <BitOffset>0x1B</BitOffset>
- <BitWidth>0x2</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Reserved</Val>
- <Val value="0x1">Reset Input only: a low level on the NRST pin generates system reset, internal RESET not propagated to the NSRT pin</Val>
- <Val value="0x2">GPIO: standard GPIO pad functionality, only internal RESET possible</Val>
- <Val value="0x3">Bidirectional reset: NRST pin configured in reset input/output mode (legacy mode)</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>IRHEN</Name>
- <Description>Internal reset holder enable bit</Description>
- <BitOffset>0x1D</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Internal resets are propagated as simple pulse on NRST pin</Val>
- <Val value="0x1">Internal resets drives NRST pin low until it is seen as low level</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>PCROP Protection</Name>
- <Field>
- <Parameters address="0x1FFF7808" name="FLASH_PCROP1SR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1A_STRT</Name>
- <Description>Flash Area A PCROP start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7810" name="FLASH_PCROP1ER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1A_END</Name>
- <Description>Flash Area A PCROP End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- <Bit>
- <Name>PCROP_RDP</Name>
- <Description/>
- <BitOffset>0x1F</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">PCROP zone is kept when RDP is decreased</Val>
- <Val value="0x1">PCROP zone is erased when RDP is decreased</Val>
- </Values>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters name="PCROP1BSR" size="0x4" address="0x1FFF7828"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1B_STRT</Name>
- <Description>Flash Bank 2 PCROP start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x8" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters name="PCROP1BER" size="0x4" address="0x1FFF7830"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP1B_END</Name>
- <Description>Flash Bank 2 PCROP End address. Deactivation of PCROP can be done by enbaling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x8" offset="0x08000008"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7838" name="FLASH_PCROP2SR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2A_STRT</Name>
- <Description>Flash Area A PCROP2 start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7840" name="FLASH_PCROP1ER" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2A_END</Name>
- <Description>Flash Area A PCROP2 End address(excluded). Deactivation of PCROP can be done by enabling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x200" offset="0x08000200"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters name="PCROP2BSR" size="0x4" address="0x1FFF7858"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2B_STRT</Name>
- <Description>Flash Bank 2 PCROP2 start address</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x8" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters name="PCROP2BER" size="0x4" address="0x1FFF7860"/>
- <AssignedBits>
- <Bit>
- <Name>PCROP2B_END</Name>
- <Description>Flash Bank 2 PCROP2 End address. Deactivation of PCROP can be done by enbaling PCROP_RDP and changing RDP from level 1 to level 0</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x9</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x8" offset="0x08000008"/>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- <Category>
- <Name>Write Protection</Name>
- <Field>
- <Parameters address="0x1FFF7818" name="FLASH_WRP1AR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP1A_STRT</Name>
- <Description>The address of the first page of the Bank 1 WRP first area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP1A_END</Name>
- <Description>The address of the last page of the Bank 1 WRP first area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7820" name="FLASH_WRP1BR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP1B_STRT</Name>
- <Description>The address of the first page of the Bank 1 WRP second area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP1B_END</Name>
- <Description>The address of the last page of the Bank 1 WRP second area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7848" name="FLASH_WRP2AR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP2A_STRT</Name>
- <Description>The address of the first page of the Bank 2 WRP first area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP2A_END</Name>
- <Description>The address of the last page of the Bank 2 WRP first area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- <Field>
- <Parameters address="0x1FFF7850" name="FLASH_WRP1BR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>WRP2B_STRT</Name>
- <Description>The address of the first page of the Bank 2 WRP second area</Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- <Bit>
- <Name>WRP2B_END</Name>
- <Description>The address of the last page of the Bank 2 WRP second area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x7</BitWidth>
- <Access>RW</Access>
- <Equation multiplier="0x800" offset="0x08000000"/>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
-
- </Bank>
- <Bank interface="Bootloader">
- <Parameters address="0x1FFF7870" name="Bank 2" size="0x4"/>
- <Category>
- <Name>FLASH security</Name>
- <Field>
- <Parameters address="0x1FFF7870" name="FLASH_SECR" size="0x4"/>
- <AssignedBits>
- <Bit>
- <Name>BOOT_LOCK</Name>
- <Description>used to force boot from user area</Description>
- <BitOffset>0x10</BitOffset>
- <BitWidth>0x1</BitWidth>
- <Access>RW</Access>
- <Values>
- <Val value="0x0">Boot based on the pad/option bit configuration</Val>
- <Val value="0x1">Boot forced from Main Flash memory</Val>
- </Values>
- </Bit>
- <Bit>
- <Name>SEC_SIZE</Name>
- <Description>Securable memory for Bank 1 </Description>
- <BitOffset>0x0</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- </Bit>
- <Bit>
- <Name>SEC_SIZE2</Name>
- <Description>Securable memory for Bank 2 On Dual Bank device,otherwise reserved </Description>
- <BitOffset>0x14</BitOffset>
- <BitWidth>0x8</BitWidth>
- <Access>RW</Access>
- </Bit>
- </AssignedBits>
- </Field>
- </Category>
- </Bank>
- </Peripheral>
- </Peripherals>
- </Device>
- </Root>
|